Tracked by: #134 Related: #326
Evidence
CI run 29702521425 reached 34 successful jobs, then threadfuzz-midgc reported two helper-wait timeouts:
- seed 4:
finalization asyncJoin waiter result timed-out - seed 7:
waitAsync/finalization gate result timed-out
Both focused repros pass locally on eed1a550:
zig build threadfuzz-bin
zig-out/bin/threadfuzz midgcfinalasync 1 4
zig-out/bin/threadfuzz midgcwaitasyncfinal 1 7The two cases use randomized 1.2–2.3 second helper waits even though the main thread deliberately performs allocation pressure and a parallel collection. The same waits already receive 12 seconds under TSan, and the aggregate mid-GC runner has a 300-second seed watchdog for genuine hangs.
Acceptance
- Mid-GC variants use a load-tolerant helper-wait budget without changing the shorter non-mid-GC lifecycle profile.
- Focused seeds 4 and 7 pass.
- The descendant full
threadfuzz-midgc20-seed / 900-program job passes. - No semantic result, collection-attempt, collection-completion, finalization, or cleanup oracle is removed.