Second failure of the same assertion, and the first fix addressed a real but
different problem. This is the one that was actually producing the number.
The arrows scroll with `behavior: 'smooth'`. The test polled for "has it moved
at all" — satisfied 50ms in, at 13px of a 1300px journey — then recorded the
offset, clicked, and recorded again. The row was still travelling throughout,
so the delta it measured was the tail of the arrow's animation, not the effect
of the selection. Hence a deterministic 659, roughly half of the 1317 this
school's row scrolls.
Measured against staging rather than reasoned about: the animation runs about
700ms, and the samples are in the helper's comment.
settledScrollLeft waits for two identical readings before trusting one. The app
was never at fault — driving staging by hand, the offset holds at 1317 across
the selection, exactly as intended.
Verified against staging both ways: main's version of this test fails there,
this version passes, along with all three mobile widths.
Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>