ReviewOS

home-lang/home

Native bun:test: remove test.failing reporter suppressions

#602
Closed chris opened this 9 days ago ·
9 days ago

Scope

Remove Home's injected TODO/skip suppression for the unchanged Bun test.failing nested-runner suite, promote it through the production native test runner, and delete the stale async-iterator IPC suppression helper.

Parent parity tracker: #66 Suppression ledger: #202

Before

The routed Home corpus rewrote four test.failing groups into TODO/skip registrations:

  • expected failing subprocesses that throw or reject;
  • unexpected passing subprocess reporter output;
  • timeout reporting;
  • done-callback pass/fail reporting.

That produced 3 pass / 8 Home-injected TODOs even though the unchanged source already passed strictly through the production VM.

The async-iterator helper likewise encoded an IPC/header-continuation TODO, but its file had already moved to an unchanged native path, leaving the suppression helper dead.

Acceptance criteria

  • Delete both suppression helpers.
  • Route js/bun/test/test-failing.test.ts through the production native test runner.
  • Keep source bytes identical to pinned Bun.
  • Preserve all upstream assertions, subprocesses, timeout behavior, snapshots, and done callbacks.
  • Ratchet the native corpus inventory.
  • Pass Debug and ReleaseSafe with zero Home-injected TODOs.

Evidence

Source SHA-256 matches pinned Bun:

  • async iterator: 47d1b32187fd77a0438eb7c8aa2ff2875d7bd180059b8d680a920f5e9b2e9dd5
  • test.failing: 7ac035a83127cd9f0a8f7e0589a8d1501aafd48847404445f719413d4bf69b70

Pinned Bun 4982b91e3702094330f3be3883354c52b8c01323:

  • async iterator: 86 pass / 0 fail
  • test.failing: 8 pass / 0 fail

Home strict native before routing:

  • async iterator: 86 pass / 0 fail
  • test.failing: 8 pass / 0 fail

Home routed before:

  • test.failing: 3 pass / 8 injected TODO / 0 fail

Home routed after, in both Debug and ReleaseSafe:

  • async iterator: 86 pass / 0 fail / 0 TODO / 0 unsupported
  • test.failing: 8 pass / 0 fail / 0 TODO / 0 unsupported
9 days ago

Closed by 2d212a7d8.

What landed:

  • Deleted rewriteTestFailingCorpus, removing all four Home-injected TODO/skip groups for nested subprocess pass, failure, timeout, and done-callback reporting.
  • Routed the unchanged js/bun/test/test-failing.test.ts through the production native test runner.
  • Deleted the stale rewriteAsyncIteratorStreamCorpus helper; the unchanged async generator IPC/header-continuation case is already native and green.
  • Added an exact positive/negative routing predicate test.
  • Ratcheted the native corpus inventory from 279 to 280 files.

Evidence:

  • Both copied sources are byte-for-byte identical to pinned Bun.
  • Before: routed test-failing.test.ts reported 3 pass / 8 Home-injected TODO / 0 fail.
  • Debug after: async iterator 86/86; test.failing 8/8; 0 fail / 0 TODO / 0 unsupported.
  • ReleaseSafe after: async iterator 86/86; test.failing 8/8; 0 fail / 0 TODO / 0 unsupported.
  • Pinned Bun 4982b91e3702094330f3be3883354c52b8c01323: the same 86/86 and 8/8 totals.
  • Debug and ReleaseSafe builds passed for the exact corpus diff.
  • Zig formatting and diff checks passed.

No fixture, assertion, timeout, subprocess workload, snapshot, or done-callback behavior was changed.

Sign in to comment on this issue.