ReviewOS

zig-utils/zig-js

Wasm threads: merge nested evaluator reports without source-index crash

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

Parent: #268 Depends on: #320 Found by: CI run 29697384769, job 88220383132

Once the shared prelude reaches the threads corpus, wait appends the joined child thread's nested command records to the top-level evaluator report. The serial merge path incorrectly indexes those extra records through the shorter top-level source command list and crashes with IndexError, hiding all command results.

Acceptance:

  • Preserve every nested thread command record in evaluator order.
  • Assign stable flattened indexes to serial/nested reports without weakening sharded one-to-one validation.
  • Turn count mismatches into bounded runner records, never Python exceptions.
  • Add focused regressions for nested serial reports and sharded mismatches.
  • Pass the bounded Python suite and replacement Linux threads smokes.

Progress

Implemented on main in 7650986f. The merge path now deliberately distinguishes one-to-one shards from serial thread reports, flattens nested records in evaluator order, and converts unexpected ordinary/sharded count drift into runner records. Local Python suite: 14/14. Replacement run 29697559754 passed the Linux Threads smoke.

9 days ago

Linux Threads smoke passed in replacement run 29697559754 on 7650986f; nested child records are preserved and the runner no longer crashes during merge.

Sign in to comment on this issue.