ai-developer-skill-os 7.5.0 → 8.1.4

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 (377) hide show
  1. package/.agents/CHANGELOG.md +2 -1
  2. package/.agents/README.md +51 -10
  3. package/.agents/docs/ARCHITECTURE.md +156 -0
  4. package/.agents/docs/CHI_TIET_SKILLS.md +2 -1
  5. package/.agents/docs/MIGRATION-CLEANUP-V8.1.3.md +36 -0
  6. package/.agents/docs/MIGRATION-STATUS.md +35 -0
  7. package/.agents/docs/MIGRATION-V8.md +10 -0
  8. package/.agents/docs/ROADMAP-V8.2.md +78 -0
  9. package/.agents/docs/V8-CERTIFICATION.md +27 -0
  10. package/.agents/docs/VERSIONING.md +95 -0
  11. package/.agents/docs/decisions/ADR-001-v8-migration.md +58 -0
  12. package/.agents/docs/decisions/ADR-002-workflow-separation.md +50 -0
  13. package/.agents/docs/decisions/ADR-003-registry-generated.md +54 -0
  14. package/.agents/docs/decisions/ADR-008-skill-boundary-review.md +27 -0
  15. package/.agents/docs/schemas/learning.schema.yml +69 -0
  16. package/.agents/docs/schemas/skill.schema.yml +188 -0
  17. package/.agents/docs/schemas/workflow.schema.yml +33 -0
  18. package/.agents/knowledge/design-intelligence/industries/ecommerce.md +3 -0
  19. package/.agents/knowledge/design-intelligence/industries/fintech.md +3 -0
  20. package/.agents/knowledge/design-intelligence/industries/healthcare.md +3 -0
  21. package/.agents/learnings/draft/README.md +37 -0
  22. package/.agents/registry/capability-graph.yml +500 -0
  23. package/.agents/registry/skills-index.yml +525 -0
  24. package/.agents/reports/RELEASE-CHECKLIST.md +29 -0
  25. package/.agents/reports/architecture-audit.md +13 -0
  26. package/.agents/reports/graph-health.md +20 -0
  27. package/.agents/reports/skill-audit.md +215 -0
  28. package/.agents/rules/coding.md +102 -0
  29. package/.agents/rules/command-safety.md +21 -0
  30. package/.agents/rules/global.md +135 -0
  31. package/.agents/rules/priorities.yml +24 -0
  32. package/.agents/rules/safety.md +84 -0
  33. package/.agents/rules/security.md +13 -0
  34. package/.agents/rules/skill-quality.md +14 -0
  35. package/.agents/skills/_template/SKILL.md +132 -0
  36. package/.agents/skills/qk-access-policy/SKILL.md +61 -5
  37. package/.agents/skills/qk-agent-observability/SKILL.md +73 -0
  38. package/.agents/skills/qk-ai-builder/SKILL.md +62 -5
  39. package/.agents/skills/qk-api-lifecycle/SKILL.md +59 -6
  40. package/.agents/skills/qk-bug-resolution/SKILL.md +64 -6
  41. package/.agents/skills/qk-context-loader/SKILL.md +63 -11
  42. package/.agents/skills/qk-data-lifecycle/SKILL.md +61 -5
  43. package/.agents/skills/qk-db-optimizer/SKILL.md +61 -5
  44. package/.agents/skills/qk-design-system-engineering/SKILL.md +112 -0
  45. package/.agents/skills/qk-devops-platform/SKILL.md +117 -0
  46. package/.agents/skills/qk-docs/SKILL.md +62 -6
  47. package/.agents/skills/qk-engineering-standard/SKILL.md +62 -12
  48. package/.agents/skills/qk-fe-api-integration/SKILL.md +60 -6
  49. package/.agents/skills/qk-feature-delivery/SKILL.md +65 -6
  50. package/.agents/skills/qk-frontend-architecture/SKILL.md +134 -0
  51. package/.agents/skills/qk-help/SKILL.md +245 -193
  52. package/.agents/skills/qk-orchestrator/SKILL.md +67 -13
  53. package/.agents/skills/qk-orchestrator/references/routing-table.md +4 -3
  54. package/.agents/skills/qk-product-specification/SKILL.md +130 -0
  55. package/.agents/skills/qk-production-release/SKILL.md +59 -6
  56. package/.agents/skills/qk-project-bootstrap/SKILL.md +68 -7
  57. package/.agents/skills/qk-project-health/SKILL.md +63 -6
  58. package/.agents/skills/qk-project-memory/SKILL.md +109 -6
  59. package/.agents/skills/qk-security-audit/SKILL.md +135 -0
  60. package/.agents/skills/qk-system-evolution/SKILL.md +63 -12
  61. package/.agents/skills/qk-test-engineering/SKILL.md +139 -0
  62. package/.agents/skills/qk-ui-audit/SKILL.md +63 -8
  63. package/.agents/skills/qk-ui-builder/SKILL.md +509 -0
  64. package/.agents/skills/qk-ui-builder/references/anti-patterns.md +295 -0
  65. package/.agents/skills/qk-ui-builder/references/color.md +115 -0
  66. package/.agents/skills/qk-ui-builder/references/component-cookbook.md +1194 -0
  67. package/.agents/skills/qk-ui-builder/references/copy.md +250 -0
  68. package/.agents/skills/qk-ui-builder/references/interaction-and-states.md +115 -0
  69. package/.agents/skills/qk-ui-builder/references/layout-and-space.md +111 -0
  70. package/.agents/skills/qk-ui-builder/references/macrostructures/01-bento-grid.md +48 -0
  71. package/.agents/skills/qk-ui-builder/references/macrostructures/02-long-document.md +50 -0
  72. package/.agents/skills/qk-ui-builder/references/macrostructures/03-marquee-hero.md +51 -0
  73. package/.agents/skills/qk-ui-builder/references/macrostructures/04-stat-led.md +49 -0
  74. package/.agents/skills/qk-ui-builder/references/macrostructures/05-workbench.md +44 -0
  75. package/.agents/skills/qk-ui-builder/references/macrostructures/06-conversational-faq.md +50 -0
  76. package/.agents/skills/qk-ui-builder/references/macrostructures/07-manifesto.md +51 -0
  77. package/.agents/skills/qk-ui-builder/references/macrostructures/08-photographic.md +50 -0
  78. package/.agents/skills/qk-ui-builder/references/macrostructures/09-quote-led.md +50 -0
  79. package/.agents/skills/qk-ui-builder/references/macrostructures/11-catalogue.md +49 -0
  80. package/.agents/skills/qk-ui-builder/references/macrostructures/12-letter.md +49 -0
  81. package/.agents/skills/qk-ui-builder/references/macrostructures/13-index-first.md +49 -0
  82. package/.agents/skills/qk-ui-builder/references/macrostructures/14-narrative-workflow.md +48 -0
  83. package/.agents/skills/qk-ui-builder/references/macrostructures/15-split-studio.md +48 -0
  84. package/.agents/skills/qk-ui-builder/references/macrostructures/16-feature-stack.md +51 -0
  85. package/.agents/skills/qk-ui-builder/references/macrostructures/17-type-specimen.md +48 -0
  86. package/.agents/skills/qk-ui-builder/references/macrostructures/18-portfolio-grid.md +48 -0
  87. package/.agents/skills/qk-ui-builder/references/macrostructures/19-map-diagram.md +50 -0
  88. package/.agents/skills/qk-ui-builder/references/macrostructures/20-ecosystem-index.md +48 -0
  89. package/.agents/skills/qk-ui-builder/references/macrostructures/21-component-playground.md +45 -0
  90. package/.agents/skills/qk-ui-builder/references/macrostructures.md +38 -0
  91. package/.agents/skills/qk-ui-builder/references/motion.md +95 -0
  92. package/.agents/skills/qk-ui-builder/references/responsive.md +115 -0
  93. package/.agents/skills/qk-ui-builder/references/slop-test.md +135 -0
  94. package/.agents/skills/qk-ui-builder/references/structure.md +280 -0
  95. package/.agents/skills/qk-ui-builder/references/themes/atmospheric.md +53 -0
  96. package/.agents/skills/qk-ui-builder/references/themes/carnival.md +52 -0
  97. package/.agents/skills/qk-ui-builder/references/themes/cobalt.md +52 -0
  98. package/.agents/skills/qk-ui-builder/references/themes/editorial.md +52 -0
  99. package/.agents/skills/qk-ui-builder/references/themes/garden.md +52 -0
  100. package/.agents/skills/qk-ui-builder/references/themes/hum.md +52 -0
  101. package/.agents/skills/qk-ui-builder/references/themes/lumen.md +52 -0
  102. package/.agents/skills/qk-ui-builder/references/themes/midnight.md +52 -0
  103. package/.agents/skills/qk-ui-builder/references/themes/modern-minimal.md +52 -0
  104. package/.agents/skills/qk-ui-builder/references/themes/playful.md +52 -0
  105. package/.agents/skills/qk-ui-builder/references/themes/specimen.md +52 -0
  106. package/.agents/skills/qk-ui-builder/references/themes/terminal.md +52 -0
  107. package/.agents/skills/qk-ui-builder/references/typography.md +129 -0
  108. package/.agents/skills/qk-ui-system-builder/SKILL.md +61 -5
  109. package/.agents/skills/qk-validation-gate/SKILL.md +63 -11
  110. package/.agents/skills/qk-web-quality-gate/SKILL.md +114 -0
  111. package/.agents/workflows/_schema.yml +109 -0
  112. package/.agents/workflows/bug-resolution.yml +101 -0
  113. package/.agents/workflows/code-review.yml +77 -0
  114. package/.agents/workflows/documentation.yml +75 -0
  115. package/.agents/workflows/feature-delivery.yml +103 -0
  116. package/.agents/workflows/refactor.yml +81 -0
  117. package/.agents/workflows/research.yml +60 -0
  118. package/.agents/workflows/security-audit.yml +72 -0
  119. package/.agents/workflows/skill-evolution.yml +65 -0
  120. package/.agents/workflows/spec-driven-development.yml +57 -0
  121. package/CHANGELOG.md +91 -69
  122. package/README.md +50 -45
  123. package/bin/install.js +57 -309
  124. package/package.json +14 -3
  125. package/tooling/generate-evaluation-cases.cjs +44 -0
  126. package/tooling/generate-registry.js +157 -0
  127. package/tooling/run-aar.js +143 -0
  128. package/tooling/validate-graph.js +87 -0
  129. package/tooling/validate-skills.js +102 -0
  130. package/.agents/_template/BEHAVIOR_SPEC.md +0 -96
  131. package/.agents/_template/examples/example-en.md +0 -49
  132. package/.agents/_template/examples/example-vi.md +0 -49
  133. package/.agents/skills/qk-design-to-code/SKILL.md +0 -285
  134. package/.agents/skills.json +0 -819
  135. package/.github/workflows/ci.yml +0 -56
  136. package/.qk-ai-skill-os/CHANGELOG.md +0 -69
  137. package/.qk-ai-skill-os/LICENSE +0 -21
  138. package/.qk-ai-skill-os/README.md +0 -59
  139. package/.qk-ai-skill-os/_template/BEHAVIOR_SPEC.md +0 -96
  140. package/.qk-ai-skill-os/_template/examples/example-en.md +0 -49
  141. package/.qk-ai-skill-os/_template/examples/example-vi.md +0 -49
  142. package/.qk-ai-skill-os/docs/CHI_TIET_SKILLS.md +0 -125
  143. package/.qk-ai-skill-os/docs/GOVERNANCE.md +0 -40
  144. package/.qk-ai-skill-os/docs/HUONG_DAN_SU_DUNG.md +0 -120
  145. package/.qk-ai-skill-os/docs/SPEC.md +0 -87
  146. package/.qk-ai-skill-os/docs/adr/0001-intent-based-architecture.md +0 -19
  147. package/.qk-ai-skill-os/docs/adr/0002-kernel-freeze.md +0 -21
  148. package/.qk-ai-skill-os/docs/adr/0003-risk-based-verification.md +0 -20
  149. package/.qk-ai-skill-os/docs/adr/0004-progressive-evidence.md +0 -19
  150. package/.qk-ai-skill-os/docs/skill-classification.md +0 -25
  151. package/.qk-ai-skill-os/skills/_archive_old_skills/qk-accessibility-audit/SKILL.md +0 -121
  152. package/.qk-ai-skill-os/skills/_archive_old_skills/qk-agent-orchestrator/SKILL.md +0 -179
  153. package/.qk-ai-skill-os/skills/_archive_old_skills/qk-api-integration/SKILL.md +0 -389
  154. package/.qk-ai-skill-os/skills/_archive_old_skills/qk-auth-security/SKILL.md +0 -96
  155. package/.qk-ai-skill-os/skills/_archive_old_skills/qk-backend-architecture/SKILL.md +0 -125
  156. package/.qk-ai-skill-os/skills/_archive_old_skills/qk-bug-fix/SKILL.md +0 -213
  157. package/.qk-ai-skill-os/skills/_archive_old_skills/qk-component-generator/SKILL.md +0 -136
  158. package/.qk-ai-skill-os/skills/_archive_old_skills/qk-context-manager/SKILL.md +0 -175
  159. package/.qk-ai-skill-os/skills/_archive_old_skills/qk-database-engineer/SKILL.md +0 -104
  160. package/.qk-ai-skill-os/skills/_archive_old_skills/qk-deployment/SKILL.md +0 -96
  161. package/.qk-ai-skill-os/skills/_archive_old_skills/qk-design-system/SKILL.md +0 -137
  162. package/.qk-ai-skill-os/skills/_archive_old_skills/qk-form-builder/SKILL.md +0 -140
  163. package/.qk-ai-skill-os/skills/_archive_old_skills/qk-frontend-architecture/SKILL.md +0 -155
  164. package/.qk-ai-skill-os/skills/_archive_old_skills/qk-frontend-debug/SKILL.md +0 -133
  165. package/.qk-ai-skill-os/skills/_archive_old_skills/qk-frontend-performance/SKILL.md +0 -129
  166. package/.qk-ai-skill-os/skills/_archive_old_skills/qk-frontend-testing/SKILL.md +0 -146
  167. package/.qk-ai-skill-os/skills/_archive_old_skills/qk-git-engineer/SKILL.md +0 -304
  168. package/.qk-ai-skill-os/skills/_archive_old_skills/qk-help/SKILL.md +0 -68
  169. package/.qk-ai-skill-os/skills/_archive_old_skills/qk-migration/SKILL.md +0 -284
  170. package/.qk-ai-skill-os/skills/_archive_old_skills/qk-project-audit/SKILL.md +0 -280
  171. package/.qk-ai-skill-os/skills/_archive_old_skills/qk-refactor/SKILL.md +0 -222
  172. package/.qk-ai-skill-os/skills/_archive_old_skills/qk-state-management/SKILL.md +0 -140
  173. package/.qk-ai-skill-os/skills/_archive_old_skills/qk-table-crud-generator/SKILL.md +0 -127
  174. package/.qk-ai-skill-os/skills/_archive_old_skills/qk-ui-builder/SKILL.md +0 -152
  175. package/.qk-ai-skill-os/skills/_template/SKILL.md +0 -238
  176. package/.qk-ai-skill-os/skills/qk-access-policy/SKILL.md +0 -179
  177. package/.qk-ai-skill-os/skills/qk-ai-builder/SKILL.md +0 -221
  178. package/.qk-ai-skill-os/skills/qk-api-lifecycle/SKILL.md +0 -176
  179. package/.qk-ai-skill-os/skills/qk-bug-resolution/SKILL.md +0 -307
  180. package/.qk-ai-skill-os/skills/qk-context-loader/SKILL.md +0 -218
  181. package/.qk-ai-skill-os/skills/qk-data-lifecycle/SKILL.md +0 -192
  182. package/.qk-ai-skill-os/skills/qk-db-optimizer/SKILL.md +0 -196
  183. package/.qk-ai-skill-os/skills/qk-design-to-code/SKILL.md +0 -291
  184. package/.qk-ai-skill-os/skills/qk-docs/SKILL.md +0 -198
  185. package/.qk-ai-skill-os/skills/qk-engineering-standard/SKILL.md +0 -351
  186. package/.qk-ai-skill-os/skills/qk-engineering-standard/rules/backend.md +0 -122
  187. package/.qk-ai-skill-os/skills/qk-engineering-standard/rules/database.md +0 -3
  188. package/.qk-ai-skill-os/skills/qk-engineering-standard/rules/frontend.md +0 -152
  189. package/.qk-ai-skill-os/skills/qk-engineering-standard/rules/security.md +0 -3
  190. package/.qk-ai-skill-os/skills/qk-engineering-standard/rules/testing.md +0 -3
  191. package/.qk-ai-skill-os/skills/qk-fe-api-integration/SKILL.md +0 -326
  192. package/.qk-ai-skill-os/skills/qk-feature-delivery/SKILL.md +0 -305
  193. package/.qk-ai-skill-os/skills/qk-help/SKILL.md +0 -193
  194. package/.qk-ai-skill-os/skills/qk-orchestrator/SKILL.md +0 -277
  195. package/.qk-ai-skill-os/skills/qk-orchestrator/references/routing-table.md +0 -77
  196. package/.qk-ai-skill-os/skills/qk-production-release/SKILL.md +0 -290
  197. package/.qk-ai-skill-os/skills/qk-project-bootstrap/SKILL.md +0 -240
  198. package/.qk-ai-skill-os/skills/qk-project-health/SKILL.md +0 -199
  199. package/.qk-ai-skill-os/skills/qk-project-memory/SKILL.md +0 -172
  200. package/.qk-ai-skill-os/skills/qk-system-evolution/SKILL.md +0 -285
  201. package/.qk-ai-skill-os/skills/qk-ui-audit/SKILL.md +0 -314
  202. package/.qk-ai-skill-os/skills/qk-ui-audit/references/anti-slop-checklist.md +0 -136
  203. package/.qk-ai-skill-os/skills/qk-ui-system-builder/SKILL.md +0 -225
  204. package/.qk-ai-skill-os/skills/qk-validation-gate/SKILL.md +0 -361
  205. package/.qk-ai-skill-os/skills.json +0 -819
  206. package/CLAUDE.md +0 -110
  207. package/_template/BEHAVIOR_SPEC.md +0 -96
  208. package/_template/examples/example-en.md +0 -49
  209. package/_template/examples/example-vi.md +0 -49
  210. package/add_lang.js +0 -21
  211. package/add_lang.py +0 -25
  212. package/add_sections.py +0 -53
  213. package/bin/lint.js +0 -122
  214. package/docs/CHI_TIET_SKILLS.md +0 -125
  215. package/docs/GOVERNANCE.md +0 -40
  216. package/docs/HUONG_DAN_SU_DUNG.md +0 -120
  217. package/docs/SPEC.md +0 -87
  218. package/docs/adr/0001-intent-based-architecture.md +0 -19
  219. package/docs/adr/0002-kernel-freeze.md +0 -21
  220. package/docs/adr/0003-risk-based-verification.md +0 -20
  221. package/docs/adr/0004-progressive-evidence.md +0 -19
  222. package/docs/skill-classification.md +0 -25
  223. package/fix_seeds.js +0 -22
  224. package/framework/KERNEL.md +0 -83
  225. package/framework/bias-library/cosmetic-refactor.md +0 -21
  226. package/framework/bias-library/enterprise-crud.md +0 -21
  227. package/framework/bias-library/fake-ui-slop.md +0 -20
  228. package/framework/bias-library/hallucinated-tools.md +0 -20
  229. package/framework/bias-library/missing-ui-states.md +0 -19
  230. package/framework/bias-library/over-indexing.md +0 -20
  231. package/framework/bias-library/swallow-errors.md +0 -19
  232. package/framework/bias-library/ui-only-security.md +0 -17
  233. package/framework/decision-primitives.md +0 -47
  234. package/framework/dial-library/complexity-budget.md +0 -13
  235. package/framework/dial-library/granularity.md +0 -13
  236. package/framework/dial-library/optimization-strategy.md +0 -13
  237. package/framework/dial-library/strictness.md +0 -13
  238. package/framework/rule-library/delegation-only.md +0 -9
  239. package/framework/rule-library/minimal-diff.md +0 -9
  240. package/framework/skill-schema.md +0 -310
  241. package/knowledge/backend/nodejs.md +0 -52
  242. package/knowledge/frontend/react.md +0 -81
  243. package/migrate-to-v6.js +0 -130
  244. package/migrate.js +0 -147
  245. package/migrate.py +0 -133
  246. package/migrate_all.cjs +0 -96
  247. package/patch.js +0 -15
  248. package/patch.py +0 -89
  249. package/patch2.py +0 -83
  250. package/rename.js +0 -64
  251. package/skills/_archive_old_skills/qk-accessibility-audit/SKILL.md +0 -121
  252. package/skills/_archive_old_skills/qk-agent-orchestrator/SKILL.md +0 -179
  253. package/skills/_archive_old_skills/qk-api-integration/SKILL.md +0 -389
  254. package/skills/_archive_old_skills/qk-auth-security/SKILL.md +0 -96
  255. package/skills/_archive_old_skills/qk-backend-architecture/SKILL.md +0 -125
  256. package/skills/_archive_old_skills/qk-bug-fix/SKILL.md +0 -213
  257. package/skills/_archive_old_skills/qk-component-generator/SKILL.md +0 -136
  258. package/skills/_archive_old_skills/qk-context-manager/SKILL.md +0 -175
  259. package/skills/_archive_old_skills/qk-database-engineer/SKILL.md +0 -104
  260. package/skills/_archive_old_skills/qk-deployment/SKILL.md +0 -96
  261. package/skills/_archive_old_skills/qk-design-system/SKILL.md +0 -137
  262. package/skills/_archive_old_skills/qk-form-builder/SKILL.md +0 -140
  263. package/skills/_archive_old_skills/qk-frontend-architecture/SKILL.md +0 -155
  264. package/skills/_archive_old_skills/qk-frontend-debug/SKILL.md +0 -133
  265. package/skills/_archive_old_skills/qk-frontend-performance/SKILL.md +0 -129
  266. package/skills/_archive_old_skills/qk-frontend-testing/SKILL.md +0 -146
  267. package/skills/_archive_old_skills/qk-git-engineer/SKILL.md +0 -304
  268. package/skills/_archive_old_skills/qk-help/SKILL.md +0 -68
  269. package/skills/_archive_old_skills/qk-migration/SKILL.md +0 -284
  270. package/skills/_archive_old_skills/qk-project-audit/SKILL.md +0 -280
  271. package/skills/_archive_old_skills/qk-refactor/SKILL.md +0 -222
  272. package/skills/_archive_old_skills/qk-state-management/SKILL.md +0 -140
  273. package/skills/_archive_old_skills/qk-table-crud-generator/SKILL.md +0 -127
  274. package/skills/_archive_old_skills/qk-ui-builder/SKILL.md +0 -152
  275. package/skills/_template/SKILL.md +0 -238
  276. package/skills/qk-access-policy/SKILL.md +0 -179
  277. package/skills/qk-ai-builder/SKILL.md +0 -215
  278. package/skills/qk-api-lifecycle/SKILL.md +0 -176
  279. package/skills/qk-bug-resolution/SKILL.md +0 -307
  280. package/skills/qk-context-loader/SKILL.md +0 -218
  281. package/skills/qk-data-lifecycle/SKILL.md +0 -192
  282. package/skills/qk-db-optimizer/SKILL.md +0 -196
  283. package/skills/qk-design-to-code/SKILL.md +0 -285
  284. package/skills/qk-docs/SKILL.md +0 -198
  285. package/skills/qk-engineering-standard/SKILL.md +0 -351
  286. package/skills/qk-engineering-standard/rules/backend.md +0 -122
  287. package/skills/qk-engineering-standard/rules/database.md +0 -3
  288. package/skills/qk-engineering-standard/rules/frontend.md +0 -152
  289. package/skills/qk-engineering-standard/rules/security.md +0 -3
  290. package/skills/qk-engineering-standard/rules/testing.md +0 -3
  291. package/skills/qk-fe-api-integration/SKILL.md +0 -326
  292. package/skills/qk-feature-delivery/SKILL.md +0 -305
  293. package/skills/qk-help/SKILL.md +0 -193
  294. package/skills/qk-orchestrator/SKILL.md +0 -277
  295. package/skills/qk-orchestrator/references/routing-table.md +0 -77
  296. package/skills/qk-production-release/SKILL.md +0 -284
  297. package/skills/qk-project-bootstrap/SKILL.md +0 -234
  298. package/skills/qk-project-health/SKILL.md +0 -199
  299. package/skills/qk-project-memory/SKILL.md +0 -172
  300. package/skills/qk-system-evolution/SKILL.md +0 -281
  301. package/skills/qk-ui-audit/SKILL.md +0 -314
  302. package/skills/qk-ui-audit/references/anti-slop-checklist.md +0 -136
  303. package/skills/qk-ui-system-builder/SKILL.md +0 -221
  304. package/skills/qk-validation-gate/SKILL.md +0 -359
  305. package/skills.json +0 -819
  306. package/specs/contracts/behavior-contract.yaml +0 -40
  307. package/specs/expectations/qk-bug-resolution.yaml +0 -35
  308. package/specs/fixtures/user-payload.json +0 -12
  309. package/specs/regressions/api-integration-null-fields.yaml +0 -19
  310. package/specs/scenarios/fix-login-nullref.yaml +0 -3
  311. package/taste-skill/.claude-plugin/marketplace.json +0 -20
  312. package/taste-skill/.claude-plugin/plugin.json +0 -19
  313. package/taste-skill/.github/FUNDING.yml +0 -1
  314. package/taste-skill/.github/copilot-instructions.md +0 -11
  315. package/taste-skill/CHANGELOG.md +0 -111
  316. package/taste-skill/LICENSE +0 -21
  317. package/taste-skill/README.md +0 -212
  318. package/taste-skill/assets/.gitkeep +0 -0
  319. package/taste-skill/assets/readme-banner.webp +0 -0
  320. package/taste-skill/assets/readme-buttons/btn-agent-skills.webp +0 -0
  321. package/taste-skill/assets/readme-buttons/btn-changelog.webp +0 -0
  322. package/taste-skill/assets/readme-buttons/btn-mit.webp +0 -0
  323. package/taste-skill/assets/readme-buttons/btn-site.webp +0 -0
  324. package/taste-skill/assets/readme-buttons/btn-tools.webp +0 -0
  325. package/taste-skill/assets/readme-cta-tasteskill.svg +0 -5
  326. package/taste-skill/assets/sponsors/animations-dev.webp +0 -0
  327. package/taste-skill/assets/sponsors/emil-animations-dev.webp +0 -0
  328. package/taste-skill/assets/taste-skill-logo.png +0 -0
  329. package/taste-skill/assets/taste-skill-logo.webp +0 -0
  330. package/taste-skill/assets/vercel-oss-program-badge.svg +0 -44
  331. package/taste-skill/examples/floria-bottom.webp +0 -0
  332. package/taste-skill/examples/floria-full.webp +0 -0
  333. package/taste-skill/examples/floria-top.webp +0 -0
  334. package/taste-skill/research/README.md +0 -8
  335. package/taste-skill/research/laziness/README.md +0 -25
  336. package/taste-skill/research/laziness/findings/empirical-results.md +0 -58
  337. package/taste-skill/research/laziness/findings/references.md +0 -20
  338. package/taste-skill/research/laziness/remediation/architectural-patterns.md +0 -55
  339. package/taste-skill/research/laziness/remediation/parameter-tuning.md +0 -44
  340. package/taste-skill/research/laziness/remediation/prompt-engineering.md +0 -52
  341. package/taste-skill/research/laziness/remediation/reference-prompts.md +0 -79
  342. package/taste-skill/research/laziness/root-causes/cognitive-shortcuts.md +0 -23
  343. package/taste-skill/research/laziness/root-causes/output-limits.md +0 -39
  344. package/taste-skill/research/laziness/root-causes/rlhf-and-compute.md +0 -27
  345. package/taste-skill/research/laziness/root-causes/training-data-bias.md +0 -28
  346. package/taste-skill/scripts/build-emil-sponsor-row.mjs +0 -41
  347. package/taste-skill/scripts/convert-readme-assets-webp.mjs +0 -142
  348. package/taste-skill/scripts/process-readme-buttons.mjs +0 -108
  349. package/taste-skill/scripts/process-sponsor-badge.mjs +0 -83
  350. package/taste-skill/skill.sh +0 -25
  351. package/taste-skill/skills/brandkit/SKILL.md +0 -798
  352. package/taste-skill/skills/brutalist-skill/SKILL.md +0 -92
  353. package/taste-skill/skills/gpt-tasteskill/SKILL.md +0 -74
  354. package/taste-skill/skills/image-to-code-skill/SKILL.md +0 -1228
  355. package/taste-skill/skills/imagegen-frontend-mobile/SKILL.md +0 -1465
  356. package/taste-skill/skills/imagegen-frontend-web/SKILL.md +0 -987
  357. package/taste-skill/skills/llms.txt +0 -13
  358. package/taste-skill/skills/minimalist-skill/SKILL.md +0 -85
  359. package/taste-skill/skills/output-skill/SKILL.md +0 -49
  360. package/taste-skill/skills/redesign-skill/SKILL.md +0 -178
  361. package/taste-skill/skills/soft-skill/SKILL.md +0 -98
  362. package/taste-skill/skills/stitch-skill/DESIGN.md +0 -121
  363. package/taste-skill/skills/stitch-skill/SKILL.md +0 -184
  364. package/taste-skill/skills/taste-skill/SKILL.md +0 -1206
  365. package/taste-skill/skills/taste-skill-v1/SKILL.md +0 -226
  366. package/temp_fix.js +0 -61
  367. package/templates/DESIGN.md +0 -38
  368. package/templates/bug-report.md +0 -21
  369. package/templates/design-report.md +0 -21
  370. package/templates/feature-report.md +0 -20
  371. package/templates/review-report.md +0 -21
  372. package/templates/skill-template.md +0 -38
  373. package/tests/behavior-conformance.test.js +0 -154
  374. package/tests/install-script.test.js +0 -38
  375. package/tests/registry.test.js +0 -111
  376. package/update_template.js +0 -28
  377. package/vitest.config.js +0 -11
@@ -0,0 +1,48 @@
1
+ # 20 — Ecosystem Index
2
+
3
+ **Fingerprint:** integrations, partners, plugins directory, logo grid with search.
4
+
5
+ ## Structure
6
+
7
+ ```
8
+ +---------------------------+
9
+ | Search + category tabs |
10
+ +------+--------------------+
11
+ | Cat | [logo][logo] |
12
+ | nav | [logo][logo] |
13
+ | | [logo][logo] |
14
+ +------+--------------------+
15
+ | Featured / popular |
16
+ +---------------------------+
17
+ ```
18
+
19
+ ## Rules
20
+
21
+ - Logo grid: uniform tile size, grayscale → color on hover
22
+ - Categories: tab or sidebar filter
23
+ - Search: matches name and tags
24
+ - Featured row: highlights top integrations
25
+ - Each tile links to detail/install
26
+
27
+ ## Typography
28
+
29
+ - Heading: display for directory title
30
+ - Tile name: 13px medium under logo
31
+ - Category: 14px, active state bold
32
+
33
+ ## Spacing
34
+
35
+ - Grid gap: `--space-4` (16px)
36
+ - Tile padding: `--space-4` (16px)
37
+ - Cat nav width: 200px
38
+
39
+ ## Anti-Patterns
40
+
41
+ - ❌ Logos at inconsistent sizes
42
+ - ❌ No search on large directories
43
+ - ❌ Missing category organization
44
+
45
+ ## Theme Affinity
46
+
47
+ - ✅ Cobalt, Lumen
48
+ - ⚠️ Carnival (logos need neutral bg)
@@ -0,0 +1,45 @@
1
+ # 21 — Component Playground
2
+
3
+ **Fingerprint:** tabbed or sidebar navigation, live preview, code snippet, copy button.
4
+
5
+ ## Structure
6
+
7
+ ```
8
+ +---------+------------------+
9
+ | Nav | Preview |
10
+ | (tabs) | (live render) |
11
+ | | |
12
+ +---------+------------------+
13
+ | Code Snippet [Copy] |
14
+ +-----------------------------+
15
+ ```
16
+
17
+ ## Rules
18
+
19
+ - Nav: vertical tabs or horizontal pills
20
+ - Preview: sandboxed iframe or isolated render
21
+ - Code: syntax highlighted, copy button
22
+ - Tabs: at least 3 examples per component
23
+
24
+ ## Typography
25
+
26
+ - Heading: display style
27
+ - Code: mono, 13px
28
+ - Body: body font, 14px
29
+
30
+ ## Spacing
31
+
32
+ - Nav width: 200px
33
+ - Preview padding: `--space-6`
34
+ - Code padding: `--space-4`
35
+
36
+ ## Anti-Patterns
37
+
38
+ - ❌ Preview that doesn't update on tab switch
39
+ - ❌ Code snippets without syntax highlighting
40
+ - ❌ Missing copy button
41
+
42
+ ## Theme Affinity
43
+
44
+ - ✅ Lumen, Cobalt
45
+ - ❌ Hum, Carnival (too decorative)
@@ -0,0 +1,38 @@
1
+ # Macrostructure Index
2
+
3
+ Load this index first, then load ONLY the chosen macrostructure file.
4
+
5
+ | ID | Name | Best For |
6
+ |----|------|----------|
7
+ | 01 | Bento Grid | Feature dashboards, app shells |
8
+ | 02 | Long Document | Docs, blogs, legal |
9
+ | 03 | Marquee Hero | Marketing, campaigns |
10
+ | 04 | Stat-Led | Analytics, metrics |
11
+ | 05 | Workbench | Tools, editors, IDEs |
12
+ | 06 | Conversational FAQ | Support, onboarding |
13
+ | 07 | Manifesto | Brand, about, careers |
14
+ | 08 | Photographic | Portfolios, travel |
15
+ | 09 | Quote-Led | Testimonials, editorial |
16
+ | 10 | Specimen | Design systems, pattern libraries |
17
+ | 11 | Catalogue | E-commerce, listings |
18
+ | 12 | Letter | Newsletters, personal |
19
+ | 13 | Index-First | Wikis, knowledge bases |
20
+ | 14 | Narrative Workflow | Onboarding, wizards |
21
+ | 15 | Split Studio | Comparison, before/after |
22
+ | 16 | Feature Stack | Product pages, SaaS |
23
+ | 17 | Type Specimen | Typography showcases |
24
+ | 18 | Portfolio Grid | Creative portfolios |
25
+ | 19 | Map/Diagram | Architecture, org charts |
26
+ | 20 | Ecosystem Index | Integrations, partners |
27
+ | 21 | Component Playground | UI libraries, docs |
28
+
29
+ ## Load Rule
30
+
31
+ 1. Read this index only
32
+ 2. Pick ONE macrostructure based on brief
33
+ 3. Load ONLY `references/macrostructures/XX-<name>.md`
34
+ 4. Never load all 21 files
35
+
36
+ ## Diversification Rule
37
+
38
+ No two consecutive builds in the same project may share the same macrostructure.
@@ -0,0 +1,95 @@
1
+ # Motion
2
+
3
+ Foundational rules for animation. Motion must feel intentional, fast, and accessible — never decorative bounce or layout-shifting transitions.
4
+
5
+ ## Duration Scale
6
+
7
+ Use only these durations. Do not invent values like 250ms or 420ms.
8
+
9
+ ```
10
+ 100ms micro (hover, toggle, color)
11
+ 150ms quick state change
12
+ 200ms default UI transition
13
+ 300ms panel / menu enter-exit
14
+ 500ms large surface / page-level
15
+ ```
16
+
17
+ ```css
18
+ :root {
19
+ --dur-1: 100ms;
20
+ --dur-2: 150ms;
21
+ --dur-3: 200ms;
22
+ --dur-4: 300ms;
23
+ --dur-5: 500ms;
24
+ }
25
+ ```
26
+
27
+ ## Easing
28
+
29
+ Match easing to the direction of motion:
30
+
31
+ | Phase | Easing |
32
+ | --- | --- |
33
+ | Enter (appear) | `ease-out` |
34
+ | Exit (disappear) | `ease-in` |
35
+ | Continuous transition | `ease-in-out` |
36
+
37
+ ```css
38
+ .card { transition: transform var(--dur-3) ease-out, opacity var(--dur-3) ease-out; }
39
+ .menu-close { transition: opacity var(--dur-2) ease-in; }
40
+ .theme-switch { transition: background-color var(--dur-4) ease-in-out; }
41
+ ```
42
+
43
+ ## Ban List
44
+
45
+ - **No bounce / overshoot easing.** Never use `cubic-bezier(0.68, -0.55, 0.265, 1.55)` or any springy curve for UI elements. It reads as unprofessional and slows perceived performance.
46
+
47
+ ```css
48
+ /* BANNED */
49
+ transition: all 300ms cubic-bezier(0.68, -0.55, 0.265, 1.55);
50
+ ```
51
+
52
+ - **No infinite decorative animations** (marquee, pulsing glow) unless the user explicitly asks.
53
+ - **No `transition: all`** — name the specific properties.
54
+
55
+ ## prefers-reduced-motion
56
+
57
+ Respect the user's OS setting. Under `reduce`, disable transforms/opacity animations and drop durations to **0ms**.
58
+
59
+ ```css
60
+ @media (prefers-reduced-motion: reduce) {
61
+ *,
62
+ *::before,
63
+ *::after {
64
+ animation-duration: 0.01ms !important;
65
+ animation-iteration-count: 1 !important;
66
+ transition-duration: 0ms !important;
67
+ scroll-behavior: auto !important;
68
+ }
69
+ }
70
+ ```
71
+
72
+ Apply this once globally; do not re-introduce motion for individual elements.
73
+
74
+ ## No Animating Layout Properties
75
+
76
+ Never animate `width`, `height`, `padding`, `margin`, or `top/left`. These trigger layout/paint reflows and jank. Animate only **transform** and **opacity** (compositor-only).
77
+
78
+ ```css
79
+ /* Good: animate transform/opacity only */
80
+ .modal { opacity: 0; transform: translateY(8px); transition: opacity var(--dur-3) ease-out, transform var(--dur-3) ease-out; }
81
+ .modal.open { opacity: 1; transform: translateY(0); }
82
+
83
+ /* Bad: animates layout */
84
+ .panel { transition: height 300ms ease; } /* reflows, janky */
85
+ ```
86
+
87
+ For elements that change size (expand/collapse), use `transform: scaleY()` or animate `grid-template-rows: 0fr → 1fr` instead of height.
88
+
89
+ ## Practical Checklist
90
+
91
+ - [ ] Durations only from the 5-step scale.
92
+ - [ ] ease-out enter / ease-in exit / ease-in-out transition.
93
+ - [ ] No bounce bezier, no `transition: all`, no infinite decoration.
94
+ - [ ] `prefers-reduced-motion` zeroes all motion.
95
+ - [ ] Only `transform` / `opacity` are animated.
@@ -0,0 +1,115 @@
1
+ # Responsive
2
+
3
+ Foundational rules for building layouts that adapt across screen sizes without breaking, horizontal scroll, or un-tappable controls.
4
+
5
+ ## Breakpoints
6
+
7
+ Use this standard scale. Build **mobile-first** (base styles = small screens, then enhance upward).
8
+
9
+ ```
10
+ sm 640px
11
+ md 768px
12
+ lg 1024px
13
+ xl 1280px
14
+ ```
15
+
16
+ ```css
17
+ /* mobile-first: base = mobile, then min-width queries */
18
+ @media (min-width: 640px) { /* sm */ }
19
+ @media (min-width: 768px) { /* md */ }
20
+ @media (min-width: 1024px) { /* lg */ }
21
+ @media (min-width: 1280px) { /* xl */ }
22
+ ```
23
+
24
+ ## Mobile: Stack Vertically
25
+
26
+ On small screens, lay content out in a **single vertical column**. Never require horizontal scrolling for core content.
27
+
28
+ ```css
29
+ .layout {
30
+ display: grid;
31
+ grid-template-columns: 1fr; /* stacked on mobile */
32
+ gap: var(--space-6);
33
+ }
34
+ @media (min-width: 768px) {
35
+ .layout { grid-template-columns: 240px 1fr; } /* sidebar + content */
36
+ }
37
+ ```
38
+
39
+ ```css
40
+ /* Guard against accidental horizontal overflow */
41
+ html, body { overflow-x: hidden; max-width: 100%; }
42
+ img, video, table { max-width: 100%; }
43
+ ```
44
+
45
+ ## Touch Targets: Min 44×44px
46
+
47
+ Every interactive control must be at least **44×44px** to be comfortably tappable. Don't let padding shrink the hit area below this.
48
+
49
+ ```css
50
+ .btn, .nav-link, .icon-button {
51
+ min-height: 44px;
52
+ min-width: 44px;
53
+ display: inline-flex;
54
+ align-items: center;
55
+ justify-content: center;
56
+ padding: var(--space-2) var(--space-4);
57
+ }
58
+ ```
59
+
60
+ ## Fluid Typography with clamp()
61
+
62
+ Use `clamp()` for headings/hero text so type scales smoothly between breakpoints without abrupt jumps.
63
+
64
+ ```css
65
+ h1 {
66
+ /* min 32px, preferred 5vw, max 64px */
67
+ font-size: clamp(2rem, 5vw, 4rem); /* 32px → 64px */
68
+ }
69
+ h2 {
70
+ font-size: clamp(1.5rem, 3vw, 2rem); /* 24px → 32px */
71
+ }
72
+ ```
73
+
74
+ Keep body text near `--text-base` (16px) for readability; reserve clamp() for display sizes.
75
+
76
+ ## Image Grids: minmax(0, 1fr)
77
+
78
+ For responsive image/card grids, use `minmax(0, 1fr)` so items shrink properly and never overflow. Fixed-width columns break on mobile.
79
+
80
+ ```css
81
+ .gallery {
82
+ display: grid;
83
+ grid-template-columns: repeat(auto-fill, minmax(0, 1fr));
84
+ gap: var(--space-4);
85
+ }
86
+ @media (min-width: 640px) { .gallery { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
87
+ @media (min-width: 1024px) { .gallery { grid-template-columns: repeat(4, minmax(0, 1fr)); } }
88
+ ```
89
+
90
+ ```css
91
+ .gallery img { width: 100%; height: 100%; object-fit: cover; display: block; }
92
+ ```
93
+
94
+ ## Desktop Container
95
+
96
+ Cap desktop content at 1200px and center (see layout-and-space.md). On mobile it becomes 100% width with safe padding.
97
+
98
+ ```css
99
+ .container {
100
+ width: 100%;
101
+ max-width: 1200px;
102
+ margin-inline: auto;
103
+ padding-inline: var(--space-4);
104
+ }
105
+ @media (min-width: 768px) { .container { padding-inline: var(--space-6); } }
106
+ ```
107
+
108
+ ## Practical Checklist
109
+
110
+ - [ ] Mobile-first with sm/md/lg/xl breakpoints.
111
+ - [ ] Mobile stacks vertically; no horizontal scroll.
112
+ - [ ] All tap targets ≥ 44×44px.
113
+ - [ ] Display type uses `clamp()` for fluid scaling.
114
+ - [ ] Image/card grids use `minmax(0, 1fr)`.
115
+ - [ ] Desktop content capped at 1200px.
@@ -0,0 +1,135 @@
1
+ # Slop Test — 58 Anti-Slop Gates
2
+
3
+ Run this checklist AFTER every build. Every answer must be **NO**.
4
+
5
+ ## Pre-Emit Self-Critique (Score 1–5 on each axis)
6
+
7
+ | Axis | Question | Score |
8
+ |------|----------|-------|
9
+ | Philosophy | Does this serve the user, or just show off? | ___ |
10
+ | Hierarchy | Is the visual hierarchy clear within 3 seconds? | ___ |
11
+ | Execution | Is every interaction polished, not just present? | ___ |
12
+ | Specificity | Does this feel made for this brief, not generic? | ___ |
13
+ | Restraint | Could anything be removed without losing meaning? | ___ |
14
+ | Variety | Would a second page feel different, not a color-swap? | ___ |
15
+
16
+ **Rule:** Any axis < 3 → revise before continuing.
17
+
18
+ ---
19
+
20
+ ## Visual Gates (1–7)
21
+
22
+ - [ ] **1.** No banned fonts: Inter, Roboto, Arial, system-ui as primary identity font
23
+ - [ ] **2.** No purple-blue gradients (`linear-gradient(135deg, #a855f7, #3b82f6)`)
24
+ - [ ] **3.** No gradient text (`background-clip: text`)
25
+ - [ ] **4.** No 3-equal-column icon cards
26
+ - [ ] **5.** No card-in-card layouts (card inside card inside card)
27
+ - [ ] **6.** No side-stripe cards (left border accent only)
28
+ - [ ] **7.** No centred-everything hero (all content centered with max-width)
29
+
30
+ ## Structural Gates (8–9)
31
+
32
+ - [ ] **8.** No AI-template reuse (same fingerprint as prior build in project)
33
+ - [ ] **9.** Sections separated by more than whitespace (use dividers, headings, or background changes)
34
+
35
+ ## Microinteraction Gates (10–19)
36
+
37
+ - [ ] **10.** No `transition-all` on interactive elements
38
+ - [ ] **11.** No `hover:scale-105` without context
39
+ - [ ] **12.** No `cubic-bezier(0.68, -0.55, 0.265, 1.55)` (bounce easing)
40
+ - [ ] **13.** No more than 2 hover effects per element
41
+ - [ ] **14.** No animating layout props (width, height, padding)
42
+ - [ ] **15.** No animated focus ring (focus state must be instant)
43
+ - [ ] **16.** No celebratory toasts/confetti on load
44
+ - [ ] **17.** No equal hover/focus tooltip delay
45
+ - [ ] **18.** No auto-rotating carousel without pause-on-hover
46
+ - [ ] **19.** No placeholder names (John Doe, Jane Smith, etc.)
47
+
48
+ ## Variety Gates (20–21)
49
+
50
+ - [ ] **20.** Macrostructure stamp present in CSS comment
51
+ - [ ] **21.** Not Specimen fall-through (every brief needs a real macrostructure)
52
+
53
+ ## Implementation Gates (22–27)
54
+
55
+ - [ ] **22.** No zero-chroma neutrals (`hsl(0, 0%, X%)` as primary)
56
+ - [ ] **23.** Accent color footprint < 5% of viewport
57
+ - [ ] **24.** Spacing follows scale (no off-scale values like 13px, 27px)
58
+ - [ ] **25.** Prose measure between 45–75ch
59
+ - [ ] **26.** All interactive elements have focus, active, disabled states
60
+ - [ ] **27.** Motion has `prefers-reduced-motion` fallback
61
+
62
+ ## Hero Enrichment Gates (28–31)
63
+
64
+ - [ ] **28.** No autoplay-with-sound video
65
+ - [ ] **29.** No over-busy abstract background (more than 2 visual layers)
66
+ - [ ] **30.** No mixed icon libraries or emoji icons in professional UI
67
+ - [ ] **31.** No Lottie animation when CSS transition would suffice
68
+
69
+ ## Diversification Gates (32–33)
70
+
71
+ - [ ] **32.** Same archetype not repeated without varied knob (size, color, layout)
72
+ - [ ] **33.** Decorative SVG/figure has `aria-hidden="true"` or meaningful `role`
73
+
74
+ ## Layout-Safety Gates (34–36)
75
+
76
+ - [ ] **34.** No horizontal scroll (`overflow-x: clip` on html+body)
77
+ - [ ] **35.** No misplaced decorative text effects (text-shadow as decoration)
78
+ - [ ] **36.** Interactive bars centered (not left-aligned with unbalanced whitespace)
79
+
80
+ ## Typography Gates (37–38a)
81
+
82
+ - [ ] **37.** No more than 3 font families
83
+ - [ ] **38.** No outlier font used in > 2 slots
84
+ - [ ] **38a.** No italic headers (headers use weight, not style)
85
+
86
+ ## Input-State Gates (39)
87
+
88
+ - [ ] **39.** No border-width shift on focus, no border-built focus ring, no input/button height mismatch, no collapsed helper text, no opacity-only disabled
89
+
90
+ ## Contrast Gates (40–41)
91
+
92
+ - [ ] **40.** WCAG 2.1 AA contrast (4.5:1 for text, 3:1 for large text)
93
+ - [ ] **41.** No ink-on-ink (same color for text and background with only opacity difference)
94
+
95
+ ## Chrome Gates (42–45)
96
+
97
+ - [ ] **42.** No AI nav fingerprint (centered logo, pill nav, gradient CTA)
98
+ - [ ] **43.** No AI footer fingerprint (3 columns: Product, Company, Legal, social icons row)
99
+ - [ ] **44.** Hero fits viewport (no excessive height)
100
+ - [ ] **45.** Decorative elements have purpose or removed
101
+
102
+ ## Honest Copy Gate (46)
103
+
104
+ - [ ] **46.** No invented metrics ("10x faster", "100% secure", "trusted by 10,000+")
105
+
106
+ ## Re-Drawn Chrome Gate (47)
107
+
108
+ - [ ] **47.** No fake browser/phone/code/IDE chrome unless building a mockup tool
109
+
110
+ ## Token Discipline Gate (48)
111
+
112
+ - [ ] **48.** No mid-render token improvisation (all values from DESIGN.md or theme)
113
+
114
+ ## Responsive Clickable Gate (49)
115
+
116
+ - [ ] **49.** No two-line clickable text (buttons/links max 1 line)
117
+
118
+ ## Mobile Non-Negotiables (50–57)
119
+
120
+ - [ ] **50.** Image grids use `minmax(0, 1fr)` not fixed widths
121
+ - [ ] **51.** Long words wrap (`overflow-wrap: break-word`)
122
+ - [ ] **52.** Mobile section-head collapse (h1 reduces size on small screens)
123
+ - [ ] **53.** Radio-tab scroll-jump prevented
124
+ - [ ] **54.** No tag-beside-heading on mobile (stack vertically)
125
+ - [ ] **55.** All-caps line-height collision avoided (`letter-spacing: 0.05em` minimum)
126
+ - [ ] **56.** Sticky header doesn't bleed into content
127
+ - [ ] **57.** Studied DNA not discarded (if `--study` was used, its output must be referenced)
128
+
129
+ ---
130
+
131
+ ## Final Gate
132
+
133
+ - [ ] **58.** Pre-emit self-critique average ≥ 3.0 on all 6 axes
134
+
135
+ **Pass condition:** All 58 gates = NO. Any YES → fix before shipping.