Conversation
…e runtime Turbo 2.x defaults to strict env mode, which only forwards variables listed in globalEnv to the task process. Every fork-added variable was missing, so the next-server process saw them as undefined even though docker exec printenv showed them set. That silently disabled DOS.Me SSO (the provider gate never passed), the Brevo and Crove CRM sync webhooks (isConfigured false), the dos-org-sync webhook (secret unset, so it failed closed), and made the new TLS and SSRF opt-out flags unreadable. Declares the OIDC, CROVE_, BREVO_, DOS_, webhook-secret, DATABASE_SSL_REJECT_UNAUTHORIZED, SSRF_ALLOW_PRIVATE_IPS and NEXT_PUBLIC_DOS_ID_LOGIN_ENABLED variables.
Bugbot couldn't run - usage limit reachedBugbot is counted against Cursor usage for this user or team, and this run hit a usage or spend limit. A user or team admin can review and increase usage limits in the Cursor dashboard. (requestId: serverGenReqId_c056b6f9-a942-459d-95dd-3b9212dff853) |
|
Caution Review failedThe pull request is closed. ℹ️ Recent review info⚙️ Run configurationConfiguration used: Organization UI Review profile: CHILL Plan: Advanced Run ID: 📒 Files selected for processing (1)
📝 WalkthroughWalkthroughThe Turbo configuration adds fifteen environment variable names to ChangesTurbo environment tracking
Estimated code review effort: 1 (Trivial) | ~5 minutes Change: Bug fix ✨ Finishing Touches🧪 Generate unit tests (beta)
Warning Some tools did not complete. Review the errors below. 🔧 Biome (2.5.10)turbo.jsonBiome could not lint this file: configuration resulted in errors. Check the repository's Biome configuration and plugins. Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out. Comment |
Turbo 2.x defaults to strict env mode and only forwards variables listed in globalEnv to the task process. Every fork-added variable was missing, so next-server saw them as undefined even though docker exec printenv showed them set inside the container. Confirmed on production: 9 of 10 container processes had OIDC_CLIENT_ID, and the one that did not was next-server - /api/auth/providers returned only credentials and email, with dos-id absent. This silently disabled DOS.Me SSO, the Brevo and Crove CRM sync webhooks, and the dos-org-sync webhook, and made the new DATABASE_SSL_REJECT_UNAUTHORIZED and SSRF_ALLOW_PRIVATE_IPS flags unreadable.
Note
Low Risk
Config-only change to Turbo env forwarding; no application logic is modified, but missing vars in this list would silently break auth and webhooks again.
Overview
Turbo 2.x only injects environment variables that appear in
globalEnv, so fork-specific secrets were present in the container but undefined inside the Next.js server process.This change registers fifteen missing variables in
turbo.jsonglobalEnv: OIDC/DOS.Me login (OIDC_*,NEXT_PUBLIC_DOS_ID_LOGIN_ENABLED), Brevo and Crove CRM/webhook credentials (BREVO_*,CROVE_*), org sync (DOS_SYNC_WEBHOOK_SECRET), plusDATABASE_SSL_REJECT_UNAUTHORIZEDandSSRF_ALLOW_PRIVATE_IPS. After the fix, build/runtime tasks can read them so DOS.Me SSO, signed webhook handlers, and DB/SSRF toggles behave as configured in production.Reviewed by Cursor Bugbot for commit ccf9b85. Configure here.
Summary by CodeRabbit