diff --git a/docs/ISSUES.md b/docs/ISSUES.md index d7522918..3a29bbbb 100644 --- a/docs/ISSUES.md +++ b/docs/ISSUES.md @@ -13454,3 +13454,35 @@ lines. Full analysis, with the headless test's structural immunity explained: [`2026-08-05-local-player-child-propagation.md`](research/2026-08-05-local-player-child-propagation.md) + +## #321 — `DatSoundCacheTests` concurrent-decode-dedup fails under full-suite load + +**Status:** OPEN +**Severity:** LOW (test-only so far; no production symptom observed) +**Filed:** 2026-08-05 +**Component:** content / audio cache + +Surfaced during C5a's commit-1 standalone verification: a concurrent +decode-dedup fact in `DatSoundCacheTests` failed once under full-suite load in +`AcDream.Core.Tests` and passed cleanly when re-run standalone. + +**Filed separately ON PURPOSE.** It is NOT #302 (`PortalProjectionTests` +GC-allocation assertion, App.Tests) and NOT #308 (`NakEmissionTests.LossSoak_…` +wall-clock deadline, Core.Net.Tests). The standing handoff rule is that those +two must never be conflated; a THIRD load-sensitive failure absorbed into "the +flake class" is exactly how a real intermittent defect gets dismissed as noise. + +**What is actually unknown:** whether this is a test-harness race (two threads +racing the dedup latch in the fixture) or a genuine thread-safety defect in the +decode cache itself. The distinction matters — `DatCollection` is already +recorded in project memory as NOT thread-safe, and an audio decode cache racing +under load would be the same family rather than a coincidence. + +**First step, before treating it as noise:** run `AcDream.Core.Tests` alone +under repeat/stress to see whether it reproduces without full-suite load. If it +only fails under load it is scheduling pressure; if it reproduces in isolation +under repetition, it is a real race and should be escalated out of LOW. + +Do not add a retry, a `Skip`, or a delay to make it green — this campaign's +standing rule is no workarounds without explicit approval, and a masked race is +strictly worse than a red test.