# Copy this file to .env and replace test-only values for non-test environments. NODE_ENV=production APP_ENV=production DEMO_SMS_CODE_ENABLED=false DATABASE_URL=postgresql://drift:drift_test_only@127.0.0.1:55432/drift_bottle_test?schema=public REDIS_URL=redis://127.0.0.1:56379 WEB_ORIGIN=http://localhost:3000 PHONE_ENCRYPTION_KEY= PHONE_HMAC_KEY= VERIFICATION_CODE_HMAC_KEY= REFRESH_TOKEN_HMAC_KEY= LEASE_TOKEN_HMAC_KEY= LEASE_TOKEN_ENCRYPTION_KEY= JWT_SECRET= JWT_ISSUER=drift-api JWT_AUDIENCE=drift-web ACCESS_TOKEN_TTL_SECONDS=900 REFRESH_TOKEN_TTL_SECONDS=2592000 REFRESH_ATTEMPT_IP_LIMIT=30 REFRESH_ATTEMPT_IP_WINDOW_SECONDS=60 REFRESH_RATE_LIMIT=60 SMS_CODE_TTL_SECONDS=300 REDIS_KEY_PREFIX=drift:auth: # Overall pick retry budget and attempt cap; keep bounded to protect API latency/DB load. MATCH_PICK_RETRY_BUDGET_MS=5000 MATCH_PICK_MAX_ATTEMPTS=64 # Each pick/winner-read transaction is capped and further reduced to its remaining budget. MATCH_PICK_TRANSACTION_MAX_WAIT_MS=1000 MATCH_PICK_TRANSACTION_TIMEOUT_MS=2000 TRUST_PROXY=false