fix: default NODE_ENV to "development" and override in production env#146
fix: default NODE_ENV to "development" and override in production env#146
Conversation
The top-level [vars] in wrangler.toml now defaults NODE_ENV to "development" for local dev (wrangler dev), while a new [env.production.vars] block sets it to "production" for deploys via `wrangler deploy --env production`. Also removes the now-redundant --var NODE_ENV:development flag from the Playwright webServer command.
There was a problem hiding this comment.
Pull request overview
Adjusts Cloudflare Workers environment variable defaults so local development (wrangler dev) runs with development semantics by default, while production deployments can explicitly override to production behavior.
Changes:
- Default
NODE_ENVto"development"inwrangler.toml[vars]. - Add
[env.production.vars]to overrideNODE_ENVto"production". - Remove the Playwright webServer
wrangler dev--var NODE_ENV:developmentflag, relying onwrangler.tomldefaults.
Reviewed changes
Copilot reviewed 2 out of 2 changed files in this pull request and generated 1 comment.
| File | Description |
|---|---|
| wrangler.toml | Sets default NODE_ENV to development and adds a production override block. |
| playwright.config.ts | Simplifies wrangler dev invocation by removing the explicit NODE_ENV var flag. |
| new_sqlite_classes = ["ChatRoom"] | ||
|
|
||
| [vars] | ||
| NODE_ENV = "development" |
There was a problem hiding this comment.
Setting the top-level [vars] NODE_ENV to "development" makes the default Wrangler environment (used by wrangler deploy with no --env) run with development settings. Since the repo’s deploy flow is pnpm deploy → wrangler deploy (no --env production), this change can unintentionally deploy a production worker with NODE_ENV=development (e.g., session cookies not marked secure, dev/test-only endpoints enabled). Consider keeping the default environment as production-safe and using a dedicated dev/e2e env (or .dev.vars) to set NODE_ENV=development, or ensure all deploy commands/docs use --env production.
| NODE_ENV = "development" | |
| NODE_ENV = "production" |
Summary
[vars]inwrangler.tomlto defaultNODE_ENVto"development"(used bywrangler devduring local development).[env.production.vars]block that overridesNODE_ENVto"production"forwrangler deploy --env production.--var NODE_ENV:developmentflag from the PlaywrightwebServercommand inplaywright.config.ts.