The check "the scheduler plans a looped bar" read the position and
the audio clock one after the other and compared them to 1 tick. In
Chrome the audio clock moves on by a render block even inside one
task, so now and then the two reads lay 2.9 ms (3.5 ticks) apart.
It was red in CI task 580 and in 2 of 5 runs during #351.
- The clock is now read before and after the position. The position
has to lie between the two, with 1 tick to spare, also across the
seam of the loop.
- The scheduler itself is unchanged, it was never wrong.
Tests:
- e2e 34 (melektaus-atx): ALL PASSED, 93 checks, 3 of 3 runs.
- Counter-probe with the position 10 ticks off: this check red.
- Only the e2e file changed. node --check, Prettier and ESLint are
clean on it, the gate did not run again.
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>