Add UI finish gate rule#337
Conversation
|
No actionable comments were generated in the recent review. 🎉 ℹ️ Recent review info⚙️ Run configurationConfiguration used: defaults Review profile: CHILL Plan: Pro Run ID: 📒 Files selected for processing (1)
🚧 Files skipped from review as they are similar to previous changes (1)
📝 WalkthroughWalkthroughAdds a Cursor rule for UI completion, covering design evidence, implementation constraints, required states, responsive and accessibility checks, and blocker handling. The README rules catalog links to the new rule. ChangesUI Finish Gate
Estimated code review effort: 1 (Trivial) | ~3 minutes Suggested reviewers: 🚥 Pre-merge checks | ✅ 5✅ Passed checks (5 passed)
✨ Finishing Touches🧪 Generate unit tests (beta)
Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out. Comment |
There was a problem hiding this comment.
Actionable comments posted: 2
🤖 Prompt for all review comments with AI agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.
Inline comments:
In `@rules/ui-finish-gate.mdc`:
- Around line 42-45: Update the state matrix and rendered-state verification
checklist in the UI finish gate so they cover the same required states. Add
disabled to both the matrix and rendered verification steps, and add partial to
the rendered verification checklist while preserving its existing matrix entry.
Ensure loading, empty, partial, error, success, disabled, and permission-limited
coverage remains consistent across both sections.
- Around line 3-4: Update the frontmatter glob in the UI finish-gate rule to
include js and ts alongside the existing UI file extensions, ensuring the rule
also applies to plain JavaScript and TypeScript UI screens while preserving all
current extensions.
🪄 Autofix (Beta)
Fix all unresolved CodeRabbit comments on this PR:
- Push a commit to this branch (recommended)
- Create a new PR with the fixes
ℹ️ Review info
⚙️ Run configuration
Configuration used: defaults
Review profile: CHILL
Plan: Pro
Run ID: 6a100c28-adda-4460-a002-44f498f0f724
📒 Files selected for processing (2)
README.mdrules/ui-finish-gate.mdc
Summary
Adds a framework-agnostic Cursor Project Rule that makes UI work evidence-driven and blocks completion until product specificity, required states, responsive behavior, interactions, and accessibility have been verified.
Contribution Type
rules/*.mdcruleValue To Cursor Users
The rule provides a complete manual workflow rather than a product listing: inspect the existing product, build a reference brief, write a design contract, implement non-happy-path states, test the rendered interface, and rerun a blocking finish gate until every failure is fixed.
It is framework-agnostic and scoped to common web UI and Swift files. It explicitly rejects invented metrics, placeholder identities, decorative defaults, inert controls, and happy-path-only implementations.
Added Or Changed Files
rules/ui-finish-gate.mdc— the reusable reference-to-design-contract-to-finish-gate workflow.README.md— registers the local rule under CSS and Styling using the repository's canonical self-link format.Quality Checklist
react-typescript.mdc.rules/*.mdcfiles include frontmatter with a non-emptydescription, relevantglobs, andalwaysApply: falseunless the rule is universal.Notes For Maintainers
The workflow is adapted from the UIZZE anti-UI-slop process; I maintain UIZZE. The rule is complete and useful on its own.
https://uizze.comappears once as an optional public reference source, with an explicit untrusted-content guard, and is not required to use the rule.Near-duplicate check: the existing Toss rule and open StyleSeed PR #315 define visual/design-system choices. This rule instead governs the end-to-end decision and verification process: product inspection, evidence extraction, a design contract, state matrix, rendered checks, and a blocking finish gate.
Validation:
npm test— 84/84 passingnpm run check:awesome-listnpm run check:repo-hygienenpm run check:prompt-safetypnpm dlx awesome-lint@2.3.0using the upstream repository contextgit diff --checkSummary by CodeRabbit