- Symptom
- require() of an ES module fails when it or its dependencies use top-level awaitinvalid import attributes are now rejected at loadrequest.signal abort listeners start firing and in-flight work gets cancelled on client disconnect
- Cause
- From 2026-11-17, JavaScript Workers with that compatibility date or later use the new module registry by default and receive client disconnect events through request.signal by default, with no flags needed. Existing Workers are unchanged until the date or flags change.
- Fix
- Before raising the date, test with new_module_registry and enable_request_signal flags on your current date. Fix invalid import attributes and top-level await in require() chains. To opt out, add legacy_module_registry and disable_request_signal. Pass request.signal explicitly to fetch, as request_signal_passthrough is not enabled.
- Apply
wrangler.jsonc: "compatibility_date": "2026-11-17", "compatibility_flags": ["legacy_module_registry", "disable_request_signal"]- Affected
- Workers with compatibility_date 2026-11-17 or later (JavaScript only; Python Workers keep legacy registry)
- Sources
Last verified 2026-11-06 · Confirmed by 0 builders