Add an optional EXECUTION_RATE_LIMIT_PER_HOUR override, parsed as a positive integer and falling back to the 1000/hour default when unset or unparseable. Production leaves it unset; it exists so e2e can drive the abuse backstop with a handful of real executions instead of a thousand. The e2e cloud dev server sets it to 3, reaching the worker the same way ALLOW_LOCAL_NETWORK does.
Unified · Split
| @@ -39,6 +39,13 @@ declare global { · 38 unmodified lines | ||
| 39 | 39 | // limiter degrades to disabled when absent. |
| 40 | 40 | EXECUTION_RATE_LIMITER?: import("@cloudflare/workers-types").DurableObjectNamespace; |
| 41 | 41 | |
| 42 | + // Optional per-org hourly execution rate-limit override, parsed as an | |
| 43 | + // integer (defaults to EXECUTIONS_PER_ORG_PER_HOUR = 1000 when unset or | |
| 44 | + // unparseable). Exists for e2e: the production cap of 1000/hour can't be | |
| 45 | + // exercised with real executions, so the e2e dev-server env sets a small | |
| 46 | + // number to drive the backstop. Production leaves it unset. | |
| 47 | + EXECUTION_RATE_LIMIT_PER_HOUR?: string; | |
| 48 | + | |
| 42 | 49 | // Billing |
| 43 | 50 | AUTUMN_SECRET_KEY?: string; |
| 44 | 51 | /** Optional Autumn base-URL override (Autumn emulator in tests/dev). */ |
| @@ -90,6 +90,11 @@ export const bootCloud = async (options: CloudBootOptions): Promise<CloudBooted> · 89 unmodified lines | ||
| 90 | 90 | MCP_AUTHKIT_DOMAIN: workosUrl, |
| 91 | 91 | MCP_RESOURCE_ORIGIN: options.publicUrl, |
| 92 | 92 | ALLOW_LOCAL_NETWORK: "true", |
| 93 | + // Shrink the per-org hourly execution cap (prod default 1000) to a number | |
| 94 | + // the rate-limit-backstop scenario can actually exhaust with real | |
| 95 | + // executions. Reaches the worker via CLOUDFLARE_INCLUDE_PROCESS_ENV, same | |
| 96 | + // as ALLOW_LOCAL_NETWORK. | |
| 97 | + EXECUTION_RATE_LIMIT_PER_HOUR: "3", | |
| 93 | 98 | // Throwaway PGlite on its own port + dir so it never fights `bun dev`. |
| 94 | 99 | DEV_DB_PORT: String(options.dbPort), |
| 95 | 100 | DEV_DB_PATH: dbPath, |