Context
After the browser-input hardening cases are ported, the unchanged pinned bake/dev/esm.test.ts reaches 16 passed / 1 failed. The remaining case is cannot require a module with top level await.
Home correctly throws and logs:
Cannot require "esm.ts" because "dir/async.ts" uses top-level await, but 'require' is a synchronous operation.
However, the Bake browser error overlay does not become visible, so the harness reports Expected errors, but none found. Pinned Bun currently marks this case skip: ["ci"] due a related / _bun/report_error hang, but Home's parity inventory does not count skipped behavior as complete.
Scope
- Trace the initial client-module exception through the HMR runtime's
errorevent andonRuntimeErrorrequest. - Ensure the error-report response completes and the overlay mounts with the expected normalized message.
- Preserve ordinary browser error logging and fatal-error semantics.
Acceptance criteria
- The unchanged top-level-await test passes locally through Home's native VM.
- Complete
bake/dev/esm.test.tspasses with no Home-side skip. - A maintained regression covers initial-module runtime errors reaching the overlay.
- Existing Bake and runtime gates remain green.