@appsforgood/next-supabase-kit 0.3.0 → 0.4.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (329) hide show
  1. package/CHANGELOG.md +19 -0
  2. package/README.md +22 -555
  3. package/UPGRADE.md +18 -73
  4. package/USER_GUIDE.html +808 -0
  5. package/USER_GUIDE.md +183 -0
  6. package/agents/app-engineer/agent.md +34 -0
  7. package/agents/copy/agent.md +40 -0
  8. package/agents/design/agent.md +33 -0
  9. package/agents/optional/deploy/agent.md +18 -0
  10. package/agents/optional/docs/agent.md +16 -0
  11. package/agents/optional/lead-architect/agent.md +20 -0
  12. package/agents/optional/research/agent.md +16 -0
  13. package/agents/planner/agent.md +37 -0
  14. package/agents/qa/agent.md +37 -0
  15. package/agents/security/agent.md +30 -0
  16. package/assistant-adapters/cursor-agent-kit.mdc +5 -26
  17. package/catalog.json +21 -0
  18. package/dist/index.js +931 -8227
  19. package/dist/index.js.map +1 -1
  20. package/examples/next-supabase-installed/.agent-kit/config.json +23 -26
  21. package/examples/next-supabase-installed/.agent-kit/manifest.json +83 -222
  22. package/examples/next-supabase-installed/.antigravity/agent-kit/commands/browser-qa.toml +6 -0
  23. package/examples/next-supabase-installed/.antigravity/agent-kit/commands/copy.toml +6 -0
  24. package/examples/next-supabase-installed/.antigravity/agent-kit/commands/frontend.toml +6 -0
  25. package/examples/next-supabase-installed/.antigravity/agent-kit/commands/plan.toml +6 -0
  26. package/examples/next-supabase-installed/.antigravity/agent-kit/commands/security.toml +6 -0
  27. package/examples/next-supabase-installed/.antigravity/agent-kit/commands/ship.toml +6 -0
  28. package/examples/next-supabase-installed/.antigravity/agent-kit/commands/test.toml +6 -0
  29. package/examples/next-supabase-installed/.antigravity/agent-kit/plugin.json +12 -0
  30. package/examples/next-supabase-installed/.antigravity/runtime-skills/accessibility-wcag/SKILL.md +26 -0
  31. package/examples/next-supabase-installed/.antigravity/runtime-skills/browser-qa/SKILL.md +67 -0
  32. package/examples/next-supabase-installed/.antigravity/runtime-skills/deslop/SKILL.md +62 -0
  33. package/examples/next-supabase-installed/.antigravity/runtime-skills/frontend-design/SKILL.md +107 -0
  34. package/examples/next-supabase-installed/.antigravity/runtime-skills/nextjs-app-router/SKILL.md +23 -0
  35. package/examples/next-supabase-installed/.antigravity/runtime-skills/owasp-security-review/SKILL.md +23 -0
  36. package/examples/next-supabase-installed/.antigravity/runtime-skills/planning/SKILL.md +25 -0
  37. package/examples/next-supabase-installed/.antigravity/runtime-skills/postgres-migrations/SKILL.md +21 -0
  38. package/examples/next-supabase-installed/.antigravity/runtime-skills/product-copy/SKILL.md +54 -0
  39. package/examples/next-supabase-installed/.antigravity/runtime-skills/ship/SKILL.md +22 -0
  40. package/examples/next-supabase-installed/.antigravity/runtime-skills/supabase-auth-rls/SKILL.md +23 -0
  41. package/examples/next-supabase-installed/.antigravity/runtime-skills/testing-qa/SKILL.md +27 -0
  42. package/examples/next-supabase-installed/.claude/agents/app-engineer.md +34 -0
  43. package/examples/next-supabase-installed/.claude/agents/copy.md +40 -0
  44. package/examples/next-supabase-installed/.claude/agents/design.md +33 -0
  45. package/examples/next-supabase-installed/.claude/agents/planner.md +37 -0
  46. package/examples/next-supabase-installed/.claude/agents/qa.md +37 -0
  47. package/examples/next-supabase-installed/.claude/agents/security.md +30 -0
  48. package/examples/next-supabase-installed/.codex/agents/app-engineer.toml +41 -0
  49. package/examples/next-supabase-installed/.codex/agents/copy.toml +47 -0
  50. package/examples/next-supabase-installed/.codex/agents/design.toml +40 -0
  51. package/examples/next-supabase-installed/.codex/agents/planner.toml +44 -0
  52. package/examples/next-supabase-installed/.codex/agents/qa.toml +44 -0
  53. package/examples/next-supabase-installed/.codex/agents/security.toml +37 -0
  54. package/examples/next-supabase-installed/.cursor/agents/app-engineer.md +34 -0
  55. package/examples/next-supabase-installed/.cursor/agents/copy.md +40 -0
  56. package/examples/next-supabase-installed/.cursor/agents/design.md +33 -0
  57. package/examples/next-supabase-installed/.cursor/agents/planner.md +37 -0
  58. package/examples/next-supabase-installed/.cursor/agents/qa.md +37 -0
  59. package/examples/next-supabase-installed/.cursor/agents/security.md +30 -0
  60. package/examples/next-supabase-installed/.cursor/rules/cursor-agent-kit.mdc +12 -0
  61. package/examples/next-supabase-installed/.cursor/skills/accessibility-wcag/SKILL.md +26 -0
  62. package/examples/next-supabase-installed/.cursor/skills/browser-qa/SKILL.md +67 -0
  63. package/examples/next-supabase-installed/.cursor/skills/deslop/SKILL.md +62 -0
  64. package/examples/next-supabase-installed/.cursor/skills/frontend-design/SKILL.md +107 -0
  65. package/examples/next-supabase-installed/.cursor/skills/nextjs-app-router/SKILL.md +23 -0
  66. package/examples/next-supabase-installed/.cursor/skills/owasp-security-review/SKILL.md +23 -0
  67. package/examples/next-supabase-installed/.cursor/skills/planning/SKILL.md +25 -0
  68. package/examples/next-supabase-installed/.cursor/skills/postgres-migrations/SKILL.md +21 -0
  69. package/examples/next-supabase-installed/.cursor/skills/product-copy/SKILL.md +54 -0
  70. package/examples/next-supabase-installed/.cursor/skills/ship/SKILL.md +22 -0
  71. package/examples/next-supabase-installed/.cursor/skills/supabase-auth-rls/SKILL.md +23 -0
  72. package/examples/next-supabase-installed/.cursor/skills/testing-qa/SKILL.md +27 -0
  73. package/examples/next-supabase-installed/.github/copilot-instructions.md +23 -0
  74. package/examples/next-supabase-installed/AGENTS.md +30 -0
  75. package/examples/next-supabase-installed/CLAUDE.md +7 -0
  76. package/examples/next-supabase-installed/README.md +2 -14
  77. package/examples/next-supabase-installed/USER_GUIDE.html +808 -0
  78. package/examples/next-supabase-installed/USER_GUIDE.md +183 -0
  79. package/examples/next-supabase-installed/skills/accessibility-wcag/SKILL.md +26 -0
  80. package/examples/next-supabase-installed/skills/browser-qa/SKILL.md +67 -0
  81. package/examples/next-supabase-installed/skills/deslop/SKILL.md +62 -0
  82. package/examples/next-supabase-installed/skills/frontend-design/SKILL.md +107 -0
  83. package/examples/next-supabase-installed/skills/nextjs-app-router/SKILL.md +23 -0
  84. package/examples/next-supabase-installed/skills/owasp-security-review/SKILL.md +23 -0
  85. package/examples/next-supabase-installed/skills/planning/SKILL.md +25 -0
  86. package/examples/next-supabase-installed/skills/postgres-migrations/SKILL.md +21 -0
  87. package/examples/next-supabase-installed/skills/product-copy/SKILL.md +54 -0
  88. package/examples/next-supabase-installed/skills/ship/SKILL.md +22 -0
  89. package/examples/next-supabase-installed/skills/supabase-auth-rls/SKILL.md +23 -0
  90. package/examples/next-supabase-installed/skills/testing-qa/SKILL.md +27 -0
  91. package/examples/next-supabase-installed/tree.txt +60 -42
  92. package/package.json +20 -46
  93. package/research/agent-skill-gap-report.md +133 -0
  94. package/skills/accessibility-wcag/SKILL.md +26 -0
  95. package/skills/browser-qa/SKILL.md +67 -0
  96. package/skills/deslop/SKILL.md +62 -0
  97. package/skills/frontend-design/SKILL.md +107 -0
  98. package/skills/nextjs-app-router/SKILL.md +23 -0
  99. package/skills/optional/debug/SKILL.md +11 -0
  100. package/skills/optional/docs/SKILL.md +10 -0
  101. package/skills/optional/ui-polish/SKILL.md +10 -0
  102. package/skills/optional/upgrade/SKILL.md +10 -0
  103. package/skills/owasp-security-review/SKILL.md +23 -0
  104. package/skills/planning/SKILL.md +25 -0
  105. package/skills/postgres-migrations/SKILL.md +21 -0
  106. package/skills/product-copy/SKILL.md +54 -0
  107. package/skills/ship/SKILL.md +22 -0
  108. package/skills/supabase-auth-rls/SKILL.md +23 -0
  109. package/skills/testing-qa/SKILL.md +27 -0
  110. package/templates/next-supabase/AGENTS.md +19 -129
  111. package/templates/next-supabase/CLAUDE.md +4 -36
  112. package/BEST_PRACTICE_EVIDENCE.md +0 -45
  113. package/DOGFOOD.md +0 -201
  114. package/GOVERNANCE.md +0 -45
  115. package/LOOP_CODING.md +0 -107
  116. package/MAINTAINER_RELEASE.md +0 -100
  117. package/REPOSITORY_SETTINGS.md +0 -83
  118. package/RESEARCH_CITATION_POLICY.md +0 -26
  119. package/SUPPLY_CHAIN.md +0 -57
  120. package/agents/deployment-observability-engineer.md +0 -13
  121. package/agents/docs-maintainer.md +0 -17
  122. package/agents/frontend-design-lead.md +0 -22
  123. package/agents/lead-architect.md +0 -25
  124. package/agents/marketing-copy-lead.md +0 -20
  125. package/agents/nextjs-engineer.md +0 -20
  126. package/agents/planner.md +0 -20
  127. package/agents/qa-engineer.md +0 -19
  128. package/agents/research-analyst.md +0 -13
  129. package/agents/security-reviewer.md +0 -16
  130. package/agents/supabase-postgres-engineer.md +0 -19
  131. package/antigravity/commands/accessibility-pass.toml +0 -16
  132. package/antigravity/commands/audit.toml +0 -16
  133. package/antigravity/commands/browser-qa.toml +0 -18
  134. package/antigravity/commands/copy.toml +0 -16
  135. package/antigravity/commands/distinctiveness-pass.toml +0 -16
  136. package/antigravity/commands/frontend.toml +0 -18
  137. package/antigravity/commands/handoff.toml +0 -16
  138. package/antigravity/commands/layout-cleanup.toml +0 -16
  139. package/antigravity/commands/plan.toml +0 -18
  140. package/antigravity/commands/responsive-cleanup.toml +0 -16
  141. package/antigravity/commands/review.toml +0 -16
  142. package/antigravity/commands/screenshot-critique.toml +0 -16
  143. package/antigravity/commands/security.toml +0 -16
  144. package/antigravity/commands/setup.toml +0 -16
  145. package/antigravity/commands/ship.toml +0 -17
  146. package/antigravity/commands/spec.toml +0 -17
  147. package/antigravity/commands/test.toml +0 -17
  148. package/antigravity/commands/ui-audit.toml +0 -17
  149. package/antigravity/commands/ui-polish.toml +0 -17
  150. package/antigravity/commands/upgrade.toml +0 -17
  151. package/antigravity/plugin.json +0 -70
  152. package/assistant-adapters/antigravity.md +0 -65
  153. package/assistant-adapters/claude-code-subagents.md +0 -38
  154. package/assistant-adapters/codex-agents.md +0 -53
  155. package/assistant-adapters/cursor-frontend.mdc +0 -16
  156. package/assistant-adapters/cursor-planner.mdc +0 -14
  157. package/assistant-adapters/cursor-security.mdc +0 -18
  158. package/assistant-adapters/github-copilot-instructions.md +0 -35
  159. package/assistant-adapters/github-next-supabase.instructions.md +0 -28
  160. package/assistant-adapters/model-selection/claude-code-subagents-with-models.md +0 -32
  161. package/assistant-adapters/model-selection/codex-config.example.toml +0 -32
  162. package/assistant-adapters/model-selection/cursor-model-selection.mdc +0 -24
  163. package/assistant-adapters/model-selection/github-copilot-model-selection.md +0 -20
  164. package/assistant-adapters/orchestrator-runtime.md +0 -39
  165. package/checklists/accessibility.md +0 -12
  166. package/checklists/agent-council.md +0 -13
  167. package/checklists/brand-content.md +0 -15
  168. package/checklists/deployment.md +0 -10
  169. package/checklists/design-critique.md +0 -13
  170. package/checklists/frontend-distinctiveness.md +0 -12
  171. package/checklists/frontend-product-quality.md +0 -13
  172. package/checklists/frontend-quality.md +0 -21
  173. package/checklists/marketing-copy.md +0 -11
  174. package/checklists/owasp.md +0 -12
  175. package/checklists/rls.md +0 -10
  176. package/checklists/testing.md +0 -12
  177. package/checklists/ui-acceptance-rubric.md +0 -58
  178. package/checklists/ui-detectors.md +0 -81
  179. package/checklists/upgrade.md +0 -13
  180. package/checklists/visual-regression.md +0 -11
  181. package/design-adapters/claude-design.prompt.md +0 -27
  182. package/design-adapters/figma.prompt.md +0 -18
  183. package/design-adapters/google-stitch.prompt.md +0 -36
  184. package/design-adapters/human-designer-brief.prompt.md +0 -36
  185. package/design-briefs/admin-dashboard.md +0 -21
  186. package/design-briefs/ai-workflow-product.md +0 -25
  187. package/design-briefs/community-social.md +0 -26
  188. package/design-briefs/content-app.md +0 -21
  189. package/design-briefs/ecommerce.md +0 -25
  190. package/design-briefs/education-course.md +0 -25
  191. package/design-briefs/marketplace.md +0 -21
  192. package/design-briefs/portfolio-venue.md +0 -25
  193. package/design-briefs/saas.md +0 -21
  194. package/design-briefs/tool.md +0 -21
  195. package/examples/next-supabase-installed/.agent-kit/agent-roster.json +0 -267
  196. package/examples/next-supabase-installed/.agent-kit/model-routing.json +0 -171
  197. package/examples/next-supabase-installed/.agent-kit/overrides.json +0 -3
  198. package/examples/next-supabase-installed/audit-output.json +0 -405
  199. package/model-routing/default-model-routing.json +0 -171
  200. package/profiles/admin-app.md +0 -17
  201. package/profiles/content-app.md +0 -17
  202. package/profiles/marketplace.md +0 -17
  203. package/profiles/saas.md +0 -17
  204. package/profiles/stack-next-firebase.md +0 -25
  205. package/profiles/stack-next-postgres.md +0 -24
  206. package/profiles/stack-remix-supabase.md +0 -24
  207. package/prompts/audit-project-setup.md +0 -28
  208. package/prompts/brand-content-intake.md +0 -17
  209. package/prompts/copy-review.md +0 -15
  210. package/prompts/council-session-review.md +0 -17
  211. package/prompts/creative-direction-matrix.md +0 -22
  212. package/prompts/design-critique-gate.md +0 -28
  213. package/prompts/docs-update.md +0 -16
  214. package/prompts/frontend-design-review.md +0 -35
  215. package/prompts/frontend-distinctiveness-benchmark.md +0 -32
  216. package/prompts/frontend-product-quality-scorecard.md +0 -35
  217. package/prompts/implement-feature.md +0 -14
  218. package/prompts/lifecycle-command-index.md +0 -180
  219. package/prompts/migration-review.md +0 -14
  220. package/prompts/screenshot-review.md +0 -28
  221. package/prompts/security-review.md +0 -17
  222. package/prompts/ui-command-index.md +0 -124
  223. package/prompts/upgrade-review.md +0 -18
  224. package/prompts/visual-qa-plan.md +0 -16
  225. package/research/proposed-updates.md +0 -70
  226. package/research/scan-config.json +0 -261
  227. package/research/scan-plan.md +0 -24
  228. package/research/summaries/.gitkeep +0 -1
  229. package/research/summaries/agent-workflow-patterns.md +0 -37
  230. package/research/summaries/agentic-engineering-maturity-levels.md +0 -54
  231. package/research/summaries/creative-design-patterns.md +0 -38
  232. package/research/summaries/design-critique-patterns.md +0 -34
  233. package/research/summaries/docs-and-agent-patterns.md +0 -64
  234. package/research/summaries/dogfood-adoption-patterns.md +0 -33
  235. package/research/summaries/frontend-design-patterns.md +0 -64
  236. package/research/summaries/frontend-distinctiveness-benchmark-patterns.md +0 -38
  237. package/research/summaries/frontend-product-quality-rubric-patterns.md +0 -37
  238. package/research/summaries/maturity-model-patterns.md +0 -29
  239. package/research/summaries/nextjs-patterns.md +0 -65
  240. package/research/summaries/repo-health-patterns.md +0 -41
  241. package/research/summaries/scan-overview.md +0 -46
  242. package/research/summaries/security-patterns.md +0 -64
  243. package/research/summaries/supabase-rls-patterns.md +0 -54
  244. package/research/summaries/supply-chain-patterns.md +0 -38
  245. package/research/summaries/testing-patterns.md +0 -63
  246. package/research/summaries/upgrade-lifecycle-patterns.md +0 -26
  247. package/research/summaries/visual-qa-patterns.md +0 -39
  248. package/rosters/next-supabase-default-council.json +0 -267
  249. package/runtime-skills/README.md +0 -7
  250. package/runtime-skills/accessibility-wcag/SKILL.md +0 -8
  251. package/runtime-skills/agent-handoff-tracing/SKILL.md +0 -8
  252. package/runtime-skills/best-practice-maturity-review/SKILL.md +0 -8
  253. package/runtime-skills/content-first-design/SKILL.md +0 -8
  254. package/runtime-skills/conversion-copywriting/SKILL.md +0 -8
  255. package/runtime-skills/deployment-observability/SKILL.md +0 -8
  256. package/runtime-skills/docs-maintainer/SKILL.md +0 -8
  257. package/runtime-skills/frontend-design-system/SKILL.md +0 -8
  258. package/runtime-skills/frontend-distinctiveness-benchmark/SKILL.md +0 -8
  259. package/runtime-skills/frontend-product-quality-rubric/SKILL.md +0 -8
  260. package/runtime-skills/landing-page-copy/SKILL.md +0 -8
  261. package/runtime-skills/nextjs-app-router/SKILL.md +0 -8
  262. package/runtime-skills/onboarding-empty-state-copy/SKILL.md +0 -8
  263. package/runtime-skills/owasp-security-review/SKILL.md +0 -8
  264. package/runtime-skills/planning-council/SKILL.md +0 -8
  265. package/runtime-skills/positioning-messaging/SKILL.md +0 -8
  266. package/runtime-skills/postgres-migrations/SKILL.md +0 -8
  267. package/runtime-skills/product-voice-tone/SKILL.md +0 -8
  268. package/runtime-skills/reference-led-design-critique/SKILL.md +0 -8
  269. package/runtime-skills/supabase-auth-rls/SKILL.md +0 -8
  270. package/runtime-skills/testing-qa/SKILL.md +0 -8
  271. package/runtime-skills/ui-improvement-harness/SKILL.md +0 -12
  272. package/runtime-skills/upgrade-maintenance/SKILL.md +0 -8
  273. package/runtime-skills/visual-regression-qa/SKILL.md +0 -8
  274. package/schemas/agent-roster.schema.json +0 -54
  275. package/schemas/agentic-level.schema.json +0 -47
  276. package/schemas/audit-report-v2.schema.json +0 -71
  277. package/schemas/audit-report.schema.json +0 -50
  278. package/schemas/correction-rules.schema.json +0 -32
  279. package/schemas/council-session.schema.json +0 -65
  280. package/schemas/model-routing.schema.json +0 -72
  281. package/schemas/onboarding-state.schema.json +0 -36
  282. package/schemas/orchestrator.schema.json +0 -167
  283. package/schemas/project-context.schema.json +0 -94
  284. package/schemas/runtime-event.schema.json +0 -66
  285. package/schemas/runtime-run.schema.json +0 -58
  286. package/schemas/session-event.schema.json +0 -48
  287. package/schemas/studio-session.schema.json +0 -48
  288. package/skills/accessibility-wcag.md +0 -15
  289. package/skills/agent-handoff-tracing.md +0 -44
  290. package/skills/best-practice-maturity-review.md +0 -26
  291. package/skills/content-first-design.md +0 -50
  292. package/skills/conversion-copywriting.md +0 -38
  293. package/skills/deployment-observability.md +0 -14
  294. package/skills/docs-maintainer.md +0 -19
  295. package/skills/frontend-design-system.md +0 -68
  296. package/skills/frontend-distinctiveness-benchmark.md +0 -40
  297. package/skills/frontend-product-quality-rubric.md +0 -59
  298. package/skills/landing-page-copy.md +0 -29
  299. package/skills/nextjs-app-router.md +0 -18
  300. package/skills/onboarding-empty-state-copy.md +0 -37
  301. package/skills/owasp-security-review.md +0 -19
  302. package/skills/planning-council.md +0 -21
  303. package/skills/positioning-messaging.md +0 -42
  304. package/skills/postgres-migrations.md +0 -14
  305. package/skills/product-voice-tone.md +0 -35
  306. package/skills/reference-led-design-critique.md +0 -48
  307. package/skills/supabase-auth-rls.md +0 -20
  308. package/skills/testing-qa.md +0 -15
  309. package/skills/ui-improvement-harness.md +0 -96
  310. package/skills/upgrade-maintenance.md +0 -32
  311. package/skills/visual-regression-qa.md +0 -42
  312. package/templates/next-supabase/.agent-kit/orchestrator.json +0 -48
  313. package/templates/next-supabase/.agent-kit/runtime/gitignore.template +0 -2
  314. package/templates/next-supabase/.github/workflows/agent-kit-audit.yml +0 -34
  315. package/templates/next-supabase/AGENT_ROSTER.md +0 -101
  316. package/templates/next-supabase/ASSISTANT_ADAPTERS.md +0 -146
  317. package/templates/next-supabase/COUNCIL.md +0 -54
  318. package/templates/next-supabase/DECISIONS.md +0 -87
  319. package/templates/next-supabase/DEPLOYMENT.md +0 -51
  320. package/templates/next-supabase/DESIGN.md +0 -180
  321. package/templates/next-supabase/DOCS.md +0 -80
  322. package/templates/next-supabase/LOOP_CODING.md +0 -98
  323. package/templates/next-supabase/MESSAGING.md +0 -81
  324. package/templates/next-supabase/MODEL_ROUTING.md +0 -130
  325. package/templates/next-supabase/QUALITY_GATES.md +0 -98
  326. package/templates/next-supabase/SKILLS.md +0 -235
  327. package/templates/next-supabase/SPEC.md +0 -122
  328. package/templates/next-supabase/STYLE_GUIDE.md +0 -121
  329. package/templates/next-supabase/TESTING.md +0 -107
@@ -1,58 +0,0 @@
1
- # UI Acceptance Rubric
2
-
3
- Use this rubric after the UI detector checklist, screenshot critique, accessibility pass, and browser QA loop.
4
-
5
- ## Pass/Fail
6
-
7
- | Verdict | Criteria |
8
- | --- | --- |
9
- | fail | Any blocker remains, required screenshot evidence is missing, or authenticated screens were not reviewed when auth is required |
10
- | conditional | No blockers remain, but major findings need documented owner, rationale, or follow-up before high-risk release |
11
- | pass | No blockers remain, major findings are fixed or explicitly accepted, and evidence covers viewports, states, and auth needs |
12
- | strong | Pass criteria plus clear product specificity, accessible keyboard flow, responsive resilience, and state coverage for the workflow |
13
-
14
- ## Required Evidence
15
-
16
- - Target surface: route, component, flow, or screenshot set.
17
- - Product context source: `DESIGN.md`, `STYLE_GUIDE.md`, design brief, or documented override.
18
- - Viewports: desktop and mobile dimensions.
19
- - Auth state: public, signed-in, role, tenant, permission, or explicit not-applicable.
20
- - Data state: realistic, empty, loading, error, or fixture notes.
21
- - Screenshots: first viewport, primary workflow, mobile, and highest-risk state.
22
- - Checks: detector checklist, accessibility pass, screenshot critique, and visual QA tier.
23
-
24
- ## Release Blocking Rules
25
-
26
- - Block release for any blocker detector.
27
- - Block high-risk UI release when desktop or mobile screenshot evidence is missing.
28
- - Block authenticated workflow release when no signed-in or permission-state evidence exists.
29
- - Block acceptance when loading, empty, error, disabled, success, permission, or focus states are relevant but omitted without rationale.
30
- - Block best-practice claims when product specificity, accessibility, or source safety is weak.
31
-
32
- ## Risk Tiers
33
-
34
- | Tier | Use When | Minimum Evidence |
35
- | --- | --- | --- |
36
- | low | Copy-only or isolated cosmetic change to a stable component | Targeted screenshot or component evidence plus detector review |
37
- | medium | Layout, responsive, or state changes on a user-facing surface | Desktop and mobile screenshots plus relevant state evidence |
38
- | high | Authenticated workflow, checkout, data mutation, admin, onboarding, or shared component system | Desktop, mobile, auth/permission, error/empty/loading, keyboard/focus, and smoke evidence |
39
-
40
- ## Exception Rules
41
-
42
- Exceptions are allowed only when:
43
-
44
- - The finding is not a blocker.
45
- - The rationale names product or technical constraints.
46
- - The owner and follow-up path are documented.
47
- - The exception does not weaken auth, accessibility, data integrity, or source safety.
48
-
49
- ## Output Format
50
-
51
- Return:
52
-
53
- 1. Verdict: fail, conditional, pass, or strong.
54
- 2. Risk tier and target surface.
55
- 3. Evidence reviewed.
56
- 4. Blockers, majors, minors, and accepted exceptions.
57
- 5. Required fixes before release.
58
- 6. Follow-up work after release.
@@ -1,81 +0,0 @@
1
- # UI Detector Checklist
2
-
3
- Use this deterministic checklist for UI audit, polish, layout cleanup, responsive cleanup, screenshot critique, and browser QA. Mark each item as `blocker`, `major`, `minor`, `pass`, or `not-applicable`.
4
-
5
- ## Severity
6
-
7
- | Severity | Meaning |
8
- | --- | --- |
9
- | blocker | Prevents release because a user cannot complete the workflow, the UI is inaccessible, or required evidence is missing |
10
- | major | Degrades comprehension, trust, responsiveness, or state handling enough that high-risk UI should not ship without a fix or accepted exception |
11
- | minor | Polish issue that should be fixed when nearby but does not block normal release |
12
- | pass | Checked and acceptable for the target surface |
13
- | not-applicable | The detector does not apply to this surface or state |
14
-
15
- ## Layout And Hierarchy
16
-
17
- | Detector | Blocker Signal | Major Signal |
18
- | --- | --- | --- |
19
- | Crowded layout | Primary workflow cannot be identified or completed | Too many competing sections, controls, badges, or panels |
20
- | Weak hierarchy | Primary action or current state is hidden | Headings, labels, and actions do not establish clear priority |
21
- | Inconsistent spacing | Spacing causes overlap or unusable controls | Density, gaps, padding, or alignment shift without system logic |
22
- | Card-within-card | Nested containers obscure the workflow or trap scroll | Decorative nested panels add visual noise without information value |
23
- | Poor grouping | Related controls are separated or unrelated items are grouped | Scan path is unclear or section boundaries are arbitrary |
24
-
25
- ## Responsive And Mobile
26
-
27
- | Detector | Blocker Signal | Major Signal |
28
- | --- | --- | --- |
29
- | Poor tap targets | Critical control is too small, overlapped, or unreachable | Repeated controls feel cramped or hard to tap |
30
- | Truncation or overflow | Text, inputs, tables, or controls clip essential content | Labels wrap badly, overflow horizontally, or push layout off-screen |
31
- | Mobile hierarchy | Mobile first screen hides the primary task or action | Desktop order collapses into a confusing mobile sequence |
32
- | Sticky or fixed UI | Fixed header/footer covers content or controls | Sticky UI consumes too much viewport or causes awkward scrolling |
33
- | Orientation and narrow widths | Page breaks at common mobile widths | Responsive behavior is untested below tablet width |
34
-
35
- ## States And Feedback
36
-
37
- | Detector | Blocker Signal | Major Signal |
38
- | --- | --- | --- |
39
- | Missing loading state | User can trigger duplicate or unsafe action while waiting | Loading state exists but does not preserve layout or context |
40
- | Missing empty state | Empty data leaves a dead end | Empty state lacks next action or domain-specific guidance |
41
- | Missing error state | Failure is silent or blocks recovery | Error is vague, unactionable, or visually disconnected |
42
- | Missing disabled state | Disabled action looks enabled or loses explanation | Disabled state lacks affordance, label, or contrast |
43
- | Missing success feedback | User cannot tell whether action completed | Success message is too subtle, transient, or ambiguous |
44
- | Missing permission state | Protected UI leaks actions or fails without explanation | Permission limitation is not clear to the affected role |
45
- | Weak interaction feedback | Focus, selected, hover, pressed, or active state is absent on critical controls | State feedback is inconsistent across similar controls |
46
-
47
- ## Accessibility
48
-
49
- | Detector | Blocker Signal | Major Signal |
50
- | --- | --- | --- |
51
- | Keyboard path | Critical workflow cannot be completed by keyboard | Tab order is confusing or focus moves unexpectedly |
52
- | Focus visibility | Focus indicator is absent on interactive controls | Focus is low contrast or inconsistent |
53
- | Semantic structure | Heading, landmark, form, table, or button semantics block assistive tech use | Semantics are mostly present but incomplete |
54
- | Labels and errors | Inputs or controls lack accessible names or error association | Labels exist but are vague, duplicate, or visually disconnected |
55
- | Contrast | Text or critical controls fail WCAG 2.1 AA contrast | Secondary text or state colors are borderline |
56
- | Motion | Motion prevents comprehension or ignores reduced-motion need | Motion distracts from workflow or feels inconsistent |
57
-
58
- ## Distinctiveness And Source Safety
59
-
60
- | Detector | Blocker Signal | Major Signal |
61
- | --- | --- | --- |
62
- | Generic SaaS styling | First screen could fit another product by changing logo and headline | Visual direction relies on common cards, gradients, fake dashboards, or vague claims |
63
- | Accent-border card styling | Cards, callouts, alerts, panels, or status messages rely on thick, high-contrast, one-sided colored borders, glow rails, neon strokes, or gradient borders as the main state cue | Accent borders add decoration where restrained 1px full-border surfaces, subtle background tint, clear labels, icons, and semantic state text would communicate better |
64
- | Gradient-as-design | Gradient hero, gradient text, abstract blobs, or glow backgrounds substitute for a product-specific first screen | Gradients are present without a tokenized role, brand rationale, or product-specific content support |
65
- | Card soup | The screen is mostly decorative cards and the primary workflow is unclear | Repeated cards could become a table, list, timeline, form, split pane, or workflow-specific grouped section |
66
- | Missing content fingerprint | UI hides missing product decisions behind placeholders | Real nouns, records, actions, or edge cases are too sparse |
67
- | Weak visual identity | No product-specific density, typography, imagery, or interaction point of view | Direction is coherent but category-generic |
68
- | Unsafe reference use | Copy, assets, layout signature, or brand identity appear copied | References are cited without lessons and anti-copy notes |
69
- | Fake or unsupported proof | Fake metrics or claims imply unavailable capability | Proof exists but is not tied to actual product behavior |
70
- | Vague SaaS sayings | Copy could apply to any product and hides what the user can actually do | Phrases like "supercharge your workflow", "unlock insights", "seamless collaboration", or "AI-powered productivity" are not grounded in concrete actions, nouns, constraints, or outcomes |
71
- | Decorative credibility | Badges, pills, stars, awards, or "trusted by" placeholders imply proof that does not exist | Credibility elements are decorative and should be replaced with real proof, integration names, security posture, support details, or removed |
72
- | Filler sections | Marketing sections replace the requested app or tool workflow on the first screen | "Features", "benefits", or "how it works" sections are generic and should be replaced with the actual usable workflow or domain-specific hierarchy |
73
-
74
- ## Evidence Requirements
75
-
76
- - Desktop screenshot reviewed.
77
- - Mobile screenshot reviewed.
78
- - Highest-risk state screenshot reviewed.
79
- - Authenticated or permission-state screenshot reviewed when applicable.
80
- - Browser route, viewport, data fixture, and user role named.
81
- - Detector exceptions documented with rationale and owner.
@@ -1,13 +0,0 @@
1
- # Upgrade Checklist
2
-
3
- - [ ] Branch created before upgrade work.
4
- - [ ] Release notes, changelog, or migration guide reviewed.
5
- - [ ] `agent-kit diff` reviewed before template updates.
6
- - [ ] `agent-kit update` run only after preserving local work.
7
- - [ ] `.agent-kit/conflicts/` reviewed.
8
- - [ ] `.agent-kit/overrides.json` updated for accepted local deviations.
9
- - [ ] Next.js codemods or manual upgrade steps reviewed when framework behavior changes.
10
- - [ ] Supabase migration history, RLS impact, generated types, and rollback risk reviewed when data/auth changes.
11
- - [ ] Tests, smoke checks, visual QA, or release checks run for affected areas.
12
- - [ ] `agent-kit audit --min-readiness baseline-setup` passes.
13
- - [ ] Upgrade evidence, rollback notes, owner, and date recorded in `UPGRADE.md`.
@@ -1,11 +0,0 @@
1
- # Visual Regression Checklist
2
-
3
- - Visual QA tier is documented: baseline screenshots, Playwright screenshots, Storybook visual tests, or visual-regression service.
4
- - Desktop and mobile screenshots exist for primary screens.
5
- - Reusable components have state stories or screenshot cases for default, loading, empty, error, disabled, success, permission-denied, and mobile states.
6
- - Dynamic or volatile regions are mocked, masked, frozen, or excluded with rationale.
7
- - Baseline updates require human review and a short rationale.
8
- - CI or review notes link to screenshot artifacts, Storybook, Chromatic, Argos, Playwright report, or equivalent evidence.
9
- - Visual checks cover at least one narrow/mobile viewport and one desktop viewport.
10
- - Visual checks do not replace accessibility, keyboard, semantic, auth, or data-boundary tests.
11
- - Known visual QA gaps are recorded in `TESTING.md` before release.
@@ -1,27 +0,0 @@
1
- # Claude Design Review Brief
2
-
3
- Review or generate UI direction for this product.
4
-
5
- Context:
6
-
7
- - DESIGN.md: `{{design_md}}`
8
- - Product: `{{product}}`
9
- - Users: `{{users}}`
10
- - Primary task: `{{primary_task}}`
11
- - Current risk: `{{design_risk}}`
12
-
13
- Output:
14
-
15
- - Design critique.
16
- - Brand/content gaps.
17
- - Creative-direction options or selected-direction critique.
18
- - Reference-set, anti-reference, and source-safety critique.
19
- - Frontend product-quality scorecard across user/task fit, content specificity, visual identity, information architecture, component states, accessibility and interaction, and source safety.
20
- - Improved information architecture.
21
- - Component inventory.
22
- - Mobile and desktop layout guidance.
23
- - Accessibility notes.
24
- - Copy improvements.
25
- - States for loading, empty, error, disabled, and success.
26
-
27
- Reject generic AI-site patterns and prefer product-specific workflow clarity.
@@ -1,18 +0,0 @@
1
- # Figma Design Brief
2
-
3
- Create a Figma-ready design direction.
4
-
5
- Include:
6
-
7
- - DESIGN.md brand/content inputs and creative-direction matrix.
8
- - Reference set, anti-references, and source-safety notes.
9
- - Product-quality scorecard requirements and acceptance threshold.
10
- - Page structure.
11
- - Component list.
12
- - Design tokens.
13
- - Responsive behavior.
14
- - Form and control states.
15
- - Accessibility requirements.
16
- - Notes for handoff to implementation.
17
-
18
- Avoid generic AI-site visual defaults and prioritize the real product workflow.
@@ -1,36 +0,0 @@
1
- # Google Stitch Design Brief
2
-
3
- Use this brief to generate distinct interface directions from real product content and brand constraints.
4
-
5
- DESIGN.md context:
6
- `{{design_md}}`
7
-
8
- Project type:
9
- `{{project_type}}`
10
-
11
- Audience:
12
- `{{audience}}`
13
-
14
- Primary workflow:
15
- `{{primary_workflow}}`
16
-
17
- Design requirements:
18
-
19
- - Create three distinct directions unless `DESIGN.md` already selects one.
20
- - Create mobile and desktop screens.
21
- - Show real workflow states.
22
- - Use domain-specific hierarchy.
23
- - Tie tokens, layout, copy, imagery, density, and interaction tone to the selected content and audience.
24
- - Use the reference set for learning only and respect all anti-references and source-safety notes.
25
- - Return a product-quality scorecard covering user/task fit, content specificity, visual identity, information architecture, component states, accessibility and interaction, and source safety.
26
- - Include design tokens.
27
- - Include empty, loading, error, disabled, and success states.
28
- - Meet WCAG 2.1 AA.
29
-
30
- Avoid:
31
-
32
- - Generic purple-blue gradients.
33
- - Abstract card dashboards.
34
- - Fake metrics.
35
- - Vague SaaS copy.
36
- - Placeholder landing pages.
@@ -1,36 +0,0 @@
1
- # Human Designer Brief
2
-
3
- ## Product
4
-
5
- `{{product}}`
6
-
7
- ## Audience
8
-
9
- `{{audience}}`
10
-
11
- ## Primary Workflow
12
-
13
- `{{primary_workflow}}`
14
-
15
- ## Design Context
16
-
17
- `{{design_md}}`
18
-
19
- ## What We Need
20
-
21
- - Domain-specific visual direction.
22
- - Brand/content gaps and creative-direction recommendation.
23
- - Reference-set critique, anti-references, and source-safety concerns.
24
- - Product-quality scorecard with acceptance verdict.
25
- - Mobile and desktop screens.
26
- - Design tokens.
27
- - Component states.
28
- - Accessibility review.
29
- - Notes for implementation.
30
-
31
- ## Avoid
32
-
33
- - Generic AI-generated SaaS visuals.
34
- - Placeholder copy.
35
- - Fake data.
36
- - Unclear primary action.
@@ -1,21 +0,0 @@
1
- # Admin Dashboard Design Brief
2
-
3
- Use this brief for internal tools, ops consoles, moderation queues, analytics, and support workflows.
4
-
5
- ## Product Signals
6
-
7
- - First screen should prioritize active work, exceptions, stale items, and operational health.
8
- - Avoid oversized hero copy, decorative gradients, and promotional layout patterns.
9
- - Show filters, saved views, bulk actions, and audit trails where relevant.
10
-
11
- ## Required States
12
-
13
- - Loading, empty, filtered-empty, error, partial-data, disabled, success, and permission-denied states.
14
- - Dense desktop workflow and usable mobile read/review mode.
15
- - Confirmation and undo patterns for destructive actions.
16
-
17
- ## Design Direction
18
-
19
- - Favor calm information density, sticky table affordances, visible status language, and predictable controls.
20
- - Use color sparingly for severity, freshness, ownership, and action state.
21
- - Every chart or metric needs a label, source, timestamp, and empty/error fallback.
@@ -1,25 +0,0 @@
1
- # AI Workflow Product Design Brief
2
-
3
- Use when designing AI assistants, automation tools, generation workflows, review queues, prompt tools, eval dashboards, agent consoles, or human-in-the-loop products.
4
-
5
- ## First Screen
6
-
7
- Show the real work loop: input, context, model/agent state, output, review, approval, correction, or history. Do not hide the product behind a generic "AI-powered" hero.
8
-
9
- ## Required Inputs
10
-
11
- - User role: operator, reviewer, creator, analyst, developer, admin, or end customer.
12
- - AI workflow: input sources, context, tools, model calls, outputs, approvals, retries, and audit trail.
13
- - Trust needs: citations, uncertainty, permissions, rate limits, cost, privacy, and rollback.
14
- - Human control points: edit, approve, reject, compare, regenerate, escalate, or export.
15
-
16
- ## Avoid
17
-
18
- - Chat box as the only interface when the workflow needs structure.
19
- - Fake model confidence or fake analytics.
20
- - Magical language that hides limitations, costs, or review responsibility.
21
- - Outputs without provenance, status, or recovery path.
22
-
23
- ## Required States
24
-
25
- Queued, streaming, partial output, failed tool call, hallucination report, needs review, approved, rejected, regenerated, rate limited, permission denied, audit trail, mobile review.
@@ -1,26 +0,0 @@
1
- # Community Or Social Design Brief
2
-
3
- Use when designing communities, forums, social feeds, member directories, messaging, comments, creator tools, clubs, or collaborative spaces.
4
-
5
- ## First Screen
6
-
7
- Show the community's real activity, topics, people, norms, or contribution path. Avoid generic feed layouts that could belong to any network.
8
-
9
- ## Required Inputs
10
-
11
- - Member types and participation goals.
12
- - Content types: posts, comments, events, projects, resources, profiles, messages, reactions.
13
- - Moderation and safety model.
14
- - Trust, reputation, privacy, consent, and notification rules.
15
- - Community tone: expert, casual, local, professional, creator-led, support-focused.
16
-
17
- ## Avoid
18
-
19
- - Fake engagement metrics.
20
- - Infinite feeds without prioritization or safety states.
21
- - Profile cards with no real identity or contribution signals.
22
- - Missing empty states for new or quiet communities.
23
-
24
- ## Required States
25
-
26
- New community empty state, muted/blocked/report states, moderation pending, deleted content, private content, notification overload, mobile composer, slow/offline posting.
@@ -1,21 +0,0 @@
1
- # Content App Design Brief
2
-
3
- Use this brief for publishing tools, editorial systems, knowledge bases, newsletters, and media products.
4
-
5
- ## Product Signals
6
-
7
- - First screen should show the reading, editing, curation, or review workflow.
8
- - Avoid generic blog landing pages unless the request is a public marketing surface.
9
- - Make authorship, freshness, source, status, and editorial workflow visible.
10
-
11
- ## Required States
12
-
13
- - Draft, scheduled, published, archived, review-needed, empty, loading, error, and success states.
14
- - Reader preferences, search, filtering, and mobile reading layout.
15
- - Source attribution and unavailable-media fallbacks.
16
-
17
- ## Design Direction
18
-
19
- - Typography and spacing carry the design; do not over-rely on cards.
20
- - Support scanning with summaries, metadata, sectioning, and predictable hierarchy.
21
- - Tokens must define body text, display text, captions, links, code, and focus states.
@@ -1,25 +0,0 @@
1
- # Ecommerce Design Brief
2
-
3
- Use when designing storefronts, product detail pages, carts, checkout flows, merchandising tools, subscriptions, or order-management screens.
4
-
5
- ## First Screen
6
-
7
- Show real product/category inventory, price or availability context, and the next buying or management action. Do not open with generic lifestyle marketing unless the request is explicitly a campaign page.
8
-
9
- ## Required Inputs
10
-
11
- - Product categories, product attributes, variants, inventory, and fulfillment constraints.
12
- - Buyer goal: browse, compare, buy, reorder, subscribe, gift, or manage orders.
13
- - Trust signals: returns, shipping, warranty, reviews, security, stock, seller credibility.
14
- - Asset rules for product photography, thumbnails, swatches, badges, and empty inventory.
15
-
16
- ## Avoid
17
-
18
- - Fake bestseller metrics.
19
- - Generic ecommerce grid with placeholder products.
20
- - Decorative hero sections that hide product inspection.
21
- - Checkout or cart states without error, unavailable, quantity, tax, shipping, and payment edge cases.
22
-
23
- ## Required States
24
-
25
- Loading, empty category, no search results, variant unavailable, out of stock, price changed, cart error, payment error, order success, return/refund state, mobile product inspection.
@@ -1,25 +0,0 @@
1
- # Education Or Course Design Brief
2
-
3
- Use when designing learning platforms, course pages, lesson players, cohort dashboards, school tools, tutorials, docs learning paths, or assessment flows.
4
-
5
- ## First Screen
6
-
7
- Show the learner's current path, next lesson, progress, assessment, or decision. Do not default to a generic inspirational landing page.
8
-
9
- ## Required Inputs
10
-
11
- - Learner level, goal, prior knowledge, and constraints.
12
- - Course structure: modules, lessons, exercises, assessments, resources, cohorts, deadlines.
13
- - Content types: text, video, code, quiz, project, downloadable material, instructor notes.
14
- - Success measures: completion, mastery, certification, practice, feedback, community support.
15
-
16
- ## Avoid
17
-
18
- - Progress bars without meaningful next action.
19
- - Generic course cards with no prerequisites or outcomes.
20
- - Overly decorative dashboards that obscure learning state.
21
- - Accessibility gaps in video, code, quizzes, or keyboard navigation.
22
-
23
- ## Required States
24
-
25
- Not started, in progress, blocked, overdue, completed, failed assessment, feedback pending, offline or slow media, mobile lesson view.
@@ -1,21 +0,0 @@
1
- # Marketplace Design Brief
2
-
3
- Use this brief for two-sided marketplaces, listings, booking flows, buyer portals, and seller dashboards.
4
-
5
- ## Product Signals
6
-
7
- - First screen should expose searchable supply, buyer intent, or seller fulfillment work.
8
- - Avoid fake metrics and placeholder listings.
9
- - Make trust, availability, pricing, location, eligibility, and next action clear.
10
-
11
- ## Required States
12
-
13
- - No results, filtered results, unavailable item, pending approval, sold/booked, dispute, loading, error, and success states.
14
- - Buyer and seller role differences.
15
- - Mobile search, compare, save, and contact flows.
16
-
17
- ## Design Direction
18
-
19
- - Use visual assets that reveal the actual product, place, or listing condition.
20
- - Prioritize comparison, sorting, saved items, trust signals, and clear transaction steps.
21
- - Tokens must include status colors for availability, verification, warnings, and completion.
@@ -1,25 +0,0 @@
1
- # Portfolio Or Venue Design Brief
2
-
3
- Use when designing portfolios, personal sites, studios, restaurants, hotels, venues, galleries, agencies, clinics, real-estate showcases, or object/place-focused pages.
4
-
5
- ## First Screen
6
-
7
- The person, place, brand, work, or object must be immediately visible through specific imagery, identity, or proof of work. Do not make the first screen a generic slogan with abstract decoration.
8
-
9
- ## Required Inputs
10
-
11
- - The thing being showcased: person, venue, product, project, place, or service.
12
- - Real assets: photos, case studies, menus, rooms, locations, artifacts, testimonials, availability, or press.
13
- - Visitor intent: book, enquire, inspect, compare, visit, hire, buy, or read.
14
- - Brand tone and sensory details: material, atmosphere, pace, craft, audience, locality.
15
-
16
- ## Avoid
17
-
18
- - Generic agency cards.
19
- - Dark blurred background photos that hide the actual subject.
20
- - Fake logos, fake awards, or vague testimonials.
21
- - Hero sections that do not reveal the real work or place.
22
-
23
- ## Required States
24
-
25
- Image loading, missing asset, enquiry error, booking unavailable, mobile gallery, map/location fallback, long-name wrapping, accessibility for media and carousels.
@@ -1,21 +0,0 @@
1
- # SaaS Design Brief
2
-
3
- Use this brief for subscription products, team workspaces, account portals, and workflow SaaS.
4
-
5
- ## Product Signals
6
-
7
- - First screen should show the core job: pipeline, inbox, workspace, editor, report, or operational queue.
8
- - Avoid generic hero-first pages unless the request is explicitly marketing.
9
- - Make plan, billing, team, permission, and usage states easy to scan.
10
-
11
- ## Required States
12
-
13
- - Trial, active, past due, canceled, and upgrade-required account states.
14
- - Empty workspace, no data yet, loading, error, disabled, and success states.
15
- - Mobile layout for the primary repeated workflow, not just the settings screen.
16
-
17
- ## Design Direction
18
-
19
- - Use restrained density, predictable navigation, and domain-specific labels.
20
- - Prefer tables, split panes, timelines, and command surfaces over decorative cards.
21
- - Tokens must define semantic status colors, spacing density, radius, and focus states.
@@ -1,21 +0,0 @@
1
- # Tool Design Brief
2
-
3
- Use this brief for calculators, generators, editors, workflow tools, dashboards, and focused utilities.
4
-
5
- ## Product Signals
6
-
7
- - First screen should be the usable tool, not a landing page explaining the tool.
8
- - Primary controls, current result, and next action should be visible without scrolling on common viewports.
9
- - Avoid decorative wrappers around the actual work surface.
10
-
11
- ## Required States
12
-
13
- - Ready, dirty, validating, loading, empty, error, disabled, success, export-ready, and mobile states.
14
- - Keyboard access for repeated actions.
15
- - Clear undo, reset, save, copy, download, and share behavior where relevant.
16
-
17
- ## Design Direction
18
-
19
- - Favor stable dimensions, direct manipulation, compact controls, and strong feedback.
20
- - Use icons for repeated tool actions when a familiar icon exists.
21
- - Tokens must cover control size, focus rings, surface contrast, and responsive constraints.