fatmuh/agentic-workflow-skills@main
Motion quality is measurable, so it gets measured. This skill walks every animation a target repo's interface carries and grades it against the craft rules — which properties it drives, whether the reduced-motion preference touches it, how long it runs and on what curve. It runs in a fresh session and re-derives everything (ADR 0004): a review that trusted the Dev session's memory of what animates is a review of a memory.
One commitment holds absolutely: this skill writes exactly one artifact — its report. It never edits a stylesheet, a script, or a token to make a finding disappear. Fixing motion is a developer's move; measuring it is this one's.
Re-derive the context a fresh session owes itself, before any animation is judged:
docs/agentic-skills/ui-gates.md — the gates this run enforces and, above all, the gate exceptions section: the only place a gate break can be legitimate. An exception exists only where the record names the rule, the scope, and the rationale; anything less is not an exception, it is a missing gate. A repo without this file has no exceptions that can be claimed — run against the craft rules and record the absence.docs/agentic-skills/stack.md — how this repo names its style and script surfaces. Absent means derive the surfaces from the repo's own manifests and files, and say which evidence stood in.GLOSSARY.md when present: findings use its vocabulary. Absent means proceed silently.docs/adr/ for decisions touching motion — an animation that looks wrong is sometimes a recorded, deliberate call, and that distinction changes a finding's grade, never its truth.Find the motion the way the repo declares it, never by assuming a stack. Search the style sources for transition, animation, and @keyframes; search the script sources for per-frame drivers (requestAnimationFrame and whatever the environment calls it) and programmatic animation APIs; check the repo's manifests for a motion library and, where one is present, search its vocabulary too. The paths pinned on the repo's paths floor are the UI surfaces; anything else a user can see or feel joins them by judgment, and the report says what.