π§ͺ The flake
FeederLoopCompletesEachTickWithinThreeSeconds β tests/GenWave.Host.Tests/Specs/Story012_AcceptanceGate01_RenderAheadGracefulSkip.cs:365 β asserts a hard 3-second wall-clock budget on a feeder tick. Under parallel-suite load (7 test assemblies + a full Docker stack on the same box) it fails ~1 run in 5 with e.g. took 5681 ms, expected < 3000 ms; it passes 3/3β5/5 in isolation, every time.
π Evidence trail (Dayparting build-loop, 2026-08-10/11)
Observed independently by three reviewer agents across the epic; each verified it pre-existing on clean HEAD trees (stash/worktree probes) and unrelated to the diffs under review. Never observed in CI β it is a loaded-dev-box artifact.
π§ The fix shape (suggested, not ruled)
The Story179 memo-window precedent (gh-#106): wall-clock budgets in specs deflake by injecting TimeProvider + a frozen FakeTimeProvider β but this fact's point is real elapsed time, so the honest options differ:
- mark it
[Trait("Category","Timing")] and exclude from parallel local runs (CI keeps it), or
- widen the budget with a loaded-box rationale comment, or
- measure the tick's own work via a stopwatch around the awaited call rather than the whole loop iteration (excludes scheduler starvation).
Whichever lands, the assert's failure message should name the parallel-load caveat so the next person doesn't chase a ghost.
π§ͺ The flake
FeederLoopCompletesEachTickWithinThreeSecondsβtests/GenWave.Host.Tests/Specs/Story012_AcceptanceGate01_RenderAheadGracefulSkip.cs:365β asserts a hard 3-second wall-clock budget on a feeder tick. Under parallel-suite load (7 test assemblies + a full Docker stack on the same box) it fails ~1 run in 5 with e.g.took 5681 ms, expected < 3000 ms; it passes 3/3β5/5 in isolation, every time.π Evidence trail (Dayparting build-loop, 2026-08-10/11)
Observed independently by three reviewer agents across the epic; each verified it pre-existing on clean HEAD trees (stash/worktree probes) and unrelated to the diffs under review. Never observed in CI β it is a loaded-dev-box artifact.
π§ The fix shape (suggested, not ruled)
The Story179 memo-window precedent (gh-#106): wall-clock budgets in specs deflake by injecting
TimeProvider+ a frozenFakeTimeProviderβ but this fact's point is real elapsed time, so the honest options differ:[Trait("Category","Timing")]and exclude from parallel local runs (CI keeps it), orWhichever lands, the assert's failure message should name the parallel-load caveat so the next person doesn't chase a ghost.