fix(ui): tokenise globals motion/z, Ward PRM, hash scroll clamp - #2428
Conversation
Remaining chrome still used raw duration, z-index, and radius literals, Ward motion ignored prefers-reduced-motion, and hash scroll could overshoot. Tokenise those values and clamp in-page scroll so reduced-motion and stacking stay on the documented ladder. Co-authored-by: Cursor <cursoragent@cursor.com>
You have reached your Codex usage limits for code reviews. You can see your limits in the Codex usage dashboard. |
Warning Review limit reachedNext included review available in 16 minutes. View limit detailsLimit details: You’ve used the included review currently available. Your 102 included PR review attempts over the past 7 days set your current allowance at 1 review per hour. Your organization has reached its usage spending cap. Adjust your spending cap in the billing tab. Review configuration: ⚙️ Run configurationConfiguration used: Path: .coderabbit.yaml Review profile: CHILL Plan: Pro Run ID: ⛔ Files ignored due to path filters (1)
📒 Files selected for processing (16)
Comment |
Bugbot couldn't run - usage limit reachedBugbot is counted against Cursor usage for this user or team, and this run hit a usage or spend limit. A user or team admin can review and increase usage limits in the Cursor dashboard. (requestId: serverGenReqId_aa75e12c-4a01-4deb-ab42-2098b8f23dc7) |
Bugbot couldn't run - usage limit reachedBugbot is counted against Cursor usage for this user or team, and this run hit a usage or spend limit. A user or team admin can review and increase usage limits in the Cursor dashboard. (requestId: serverGenReqId_bcfb8900-aac6-452f-9f3f-18fbc470e8cf) |
Bugbot couldn't run - usage limit reachedBugbot is counted against Cursor usage for this user or team, and this run hit a usage or spend limit. A user or team admin can review and increase usage limits in the Cursor dashboard. (requestId: serverGenReqId_f3ea2d80-4719-46a4-9434-3eeb52a95724) |
CI triageCI failed on this PR. Automated classification of the 4 failed job(s):
Compared with main CI run #14286 (failure). That run's conclusion is an aggregate and did not exercise Classification is evidence routing, not permission to ignore a failure. Exact quarantined Playwright identities remain governed by the flake ledger. |
Bugbot couldn't run - usage limit reachedBugbot is counted against Cursor usage for this user or team, and this run hit a usage or spend limit. A user or team admin can review and increase usage limits in the Cursor dashboard. (requestId: serverGenReqId_86aa9f62-6c16-470b-975c-a98b7d5ff139) |
Tokenising the globals.css stacking ladder onto --z-base/--z-raised/--z-chrome left only four documented raw z-index exceptions (-1, 2, 2, 30), so the two DS-P3-06 pins that asserted an exact count of 8 went red in Unit coverage and Production UI (3). Lower both pins and the GATES.md prose to 4 — a tightening of the ratchet, and the expansion probe still rejects a fifth. Co-Authored-By: Claude Opus 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01K2z2dWV4KAa2ryYkictVtC
Uh oh!
There was an error while loading. Please reload this page.
PR #2428 (E, globals motion/z + Ward reduced-motion + hash scroll clamp) landed on main, completing the A-E stack. Its version of the DS-P3-06 z-index pin is byte-identical to this branch's ratchet (8 -> 4, probe 9 -> 5), so take main and keep the file free of divergence. The branch now contributes exactly one file over main — the regenerated scripts/design-system-contract-baseline.json — which is what this PR is for. Regenerating against the merged tree produced no further change. Evidence: 898 test files / 10862 tests passed; check:design-system-contract, adoption and design-sync all clean.
Summary
Verification
pm run format on changed files (included in this commit)
pm run verify:pr-local
Verification not run: approved 6-PR split publication; local format applied to the replayed slice. �erify:pr-local, lint, typecheck, unit, and hosted CI were left unrun by request.
UI verification not run: �erify:ui left unrun by request.
pm run verify:ui when UI, routing, styling, browser behavior, reduced-motion, or forced-colors behavior changed
pm run verify:release before release or handoff confidence claims
For retrieval, ranking, selection, chunking, source/citation rendering, or answer-contract changes, �erify:pr-local runs eval:rag:offline automatically. Run the offline command directly during iteration before spending a live eval.
pm run eval:retrieval:quality (must stay 36/36) when retrieval, ranking, selection, chunking, or scoring behavior changed** — CI cannot run it (needs live keys), so run it locally and paste the summary. A metadata/governance-weighting change once buried correct docs (recall 1.0→0.76) and only this eval caught it.
pm run eval:rag -- --limit 15 +
pm run eval:quality -- --rag-only when answer generation, the synthesis prompt, or answer post-processing changed (grounded-supported must not drop; citation-failure 0)
pm run check:production-readiness when clinical workflow, privacy, environment, Supabase, source governance, or deployment behavior changed
pm run check:deployment-readiness when deployment startup, hosting, or rollout behavior changed
Risk and rollout
Complete this section for clinical, data, API, auth/privacy, workflow, dependency, build, or deployment changes.
Clinical Governance Preflight
N/A — design-system tap/chrome/tokens only; no ingestion, answer generation, search/ranking, source rendering, document access, privacy, production env, or clinical-output contract changes.
Notes
Note
Low Risk
CSS token aliases, shared Ward PRM, and scroll clamping only; no auth, data, or retrieval changes. Residual risk is visual/stacking or scroll-position edge cases on phone chrome and Ward surfaces.
Overview
Design tokens in
globals.css: Adds documented--z-base,--z-raised, and--z-chromeand wires footer/backdrop/FAB/PWA stacking to the ladder (overlay/popover/modal unchanged). Swaps many150ms/180ms/200mstransitions for--duration-quick/--duration-base/--duration-moderate, and a few radii for--radius-xl/--radius-pill. Literals that contracts forbid retokenising (160ms chips, 240ms dock hide delay,z-index2/30) stay with inline comments.Scroll behaviour:
scrollSurfaceand clinical dashboard hash navigation now clamp scroll targets to[0, maxScroll], including"end", so short#quotes/#imagessections do not overscroll and fight hide-on-scroll chrome.Ward reduced motion: New
ward-reduced-motion.module.csscentralisesprefers-reduced-motiontransition kills; ward shells composenamedKill/descendantKill/descendantKillWithScrolland drop duplicated per-module blocks.Minor UI: Calculator guided-flow progress uses
scaleXinstead of animatingwidth.Reviewed by Cursor Bugbot for commit 5e80f64. Configure here.