The motion guard matched a form, and longhand opted out of it

Testkamo-internal
Shipped
September 9, 2026 at 4:09 AM UTC
Author
Kamo
Commit
7984561

The reduced-motion walker scanned for the `animation:` shorthand. Writing the same animation as `animationName:` plus longhand properties — the first refactor anybody reaches for — matched nothing, so the element's missing reset went unreported. Found by a concurrent session reaching it on their first attempt at the next animation, knowing the guard existed. Both forms are matched now. Proved by mutation in both directions rather than assumed: rewriting the chip flight as longhand WITH its attribute passes, and removing the attribute fails with the sentence that names the real defect — "runs holdem-chip-fly on an element with no data-holdem-* attribute, so no reduced-motion reset can reach it". The interesting part is what the mutation showed BEFORE the fix. The longhand form did not ship silently: a use the walker cannot see makes its keyframe look unused, so "declares no keyframe that no component runs" failed instead. The animation was caught; only the message was wrong, and it pointed at the opposite problem — dead code rather than an unguarded animation. That backstop is now written down, because it is the thing that makes the remaining hole survivable: factoring the shorthand into a helper still leaves no tag to walk back to, and that case will surface as a keyframe nobody runs. A guard that recognises a FORM is opted out of by an equivalent form, silently and by accident. Worth knowing before writing the next one.

All changes

Like what you see shipping?

Every one of these updates lands in your workspace automatically. Start free and watch it grow week after week.

Start Free ForeverView Pricing