Parent: #476. Related: #502 and #792 (distinct failure signature).
Linux CI on f2340f2 failed the non-TSan
threadfuzz-midgc gate:
https://github.com/zig-utils/zig-js/actions/runs/33137549779/job/98740893155
Command: THREADFUZZ_SEED_TIMEOUT_MS=300000 zig build threadfuzz -Dfuzz-midgc=true -Dfuzz-iters=20.
Exact functional failures:
- seed 8:
midgc Atomics.Condition.wait did not finish a parallel collection
- seed 12:
ThreadLocal lifecycle did not finish a parallel collection
- seed 17:
midgc Atomics.Condition.wait did not finish a parallel collection
Final denominator: 900 programs from seed 1, 3 failures, wall-ms 931851.
This is a failed collection-completion witness, not a reported sanitizer race,
crash, or the condition completion-score assertion in #792. Root cause and
introducing revision have not been established; do not label it a regression
from parameter lowering without a before/after reproduction.
Reproduce the named seeds, inspect attempted/completed/aborted collection and
peer-publication/parking evidence, and correct ownership or progress at the
responsible boundary. Preserve the existing assertion and work budget: no
added sleeps, relaxed denominator, forced extra drain, suppressed/disabled GC,
or weakened collection requirement. Coordinate any native wait/job/lifecycle
change with the actor owning that work. Verify normal and unsuppressed TSan
mid-GC gates plus the full no-GIL integration checks.
Parent: #476. Related: #502 and #792 (distinct failure signature).
Linux CI on f2340f2 failed the non-TSan
threadfuzz-midgc gate:
https://github.com/zig-utils/zig-js/actions/runs/33137549779/job/98740893155
Command:
THREADFUZZ_SEED_TIMEOUT_MS=300000 zig build threadfuzz -Dfuzz-midgc=true -Dfuzz-iters=20.Exact functional failures:
midgc Atomics.Condition.wait did not finish a parallel collectionThreadLocal lifecycle did not finish a parallel collectionmidgc Atomics.Condition.wait did not finish a parallel collectionFinal denominator: 900 programs from seed 1, 3 failures, wall-ms 931851.
This is a failed collection-completion witness, not a reported sanitizer race,
crash, or the condition completion-score assertion in #792. Root cause and
introducing revision have not been established; do not label it a regression
from parameter lowering without a before/after reproduction.
Reproduce the named seeds, inspect attempted/completed/aborted collection and
peer-publication/parking evidence, and correct ownership or progress at the
responsible boundary. Preserve the existing assertion and work budget: no
added sleeps, relaxed denominator, forced extra drain, suppressed/disabled GC,
or weakened collection requirement. Coordinate any native wait/job/lifecycle
change with the actor owning that work. Verify normal and unsuppressed TSan
mid-GC gates plus the full no-GIL integration checks.