ai-developer-skill-os 7.5.1 → 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 (300) hide show
  1. package/.agents/docs/ARCHITECTURE.md +156 -0
  2. package/.agents/docs/MIGRATION-CLEANUP-V8.1.3.md +36 -0
  3. package/.agents/docs/MIGRATION-STATUS.md +35 -0
  4. package/.agents/docs/MIGRATION-V8.md +10 -0
  5. package/.agents/docs/ROADMAP-V8.2.md +78 -0
  6. package/.agents/docs/V8-CERTIFICATION.md +27 -0
  7. package/.agents/docs/VERSIONING.md +95 -0
  8. package/.agents/docs/decisions/ADR-001-v8-migration.md +58 -0
  9. package/.agents/docs/decisions/ADR-002-workflow-separation.md +50 -0
  10. package/.agents/docs/decisions/ADR-003-registry-generated.md +54 -0
  11. package/.agents/docs/decisions/ADR-008-skill-boundary-review.md +27 -0
  12. package/.agents/docs/schemas/learning.schema.yml +69 -0
  13. package/.agents/docs/schemas/skill.schema.yml +188 -0
  14. package/.agents/docs/schemas/workflow.schema.yml +33 -0
  15. package/.agents/knowledge/design-intelligence/industries/ecommerce.md +3 -0
  16. package/.agents/knowledge/design-intelligence/industries/fintech.md +3 -0
  17. package/.agents/knowledge/design-intelligence/industries/healthcare.md +3 -0
  18. package/.agents/learnings/draft/README.md +37 -0
  19. package/.agents/registry/capability-graph.yml +500 -0
  20. package/.agents/registry/skills-index.yml +525 -0
  21. package/.agents/reports/RELEASE-CHECKLIST.md +29 -0
  22. package/.agents/reports/architecture-audit.md +13 -0
  23. package/.agents/reports/graph-health.md +20 -0
  24. package/.agents/reports/skill-audit.md +215 -0
  25. package/.agents/rules/coding.md +102 -0
  26. package/.agents/rules/command-safety.md +21 -0
  27. package/.agents/rules/global.md +135 -0
  28. package/.agents/rules/priorities.yml +24 -0
  29. package/.agents/rules/safety.md +84 -0
  30. package/.agents/rules/security.md +13 -0
  31. package/.agents/rules/skill-quality.md +14 -0
  32. package/.agents/skills/_template/SKILL.md +132 -0
  33. package/.agents/skills/qk-access-policy/SKILL.md +61 -5
  34. package/.agents/skills/qk-agent-observability/SKILL.md +73 -0
  35. package/.agents/skills/qk-ai-builder/SKILL.md +62 -5
  36. package/.agents/skills/qk-api-lifecycle/SKILL.md +59 -6
  37. package/.agents/skills/qk-bug-resolution/SKILL.md +64 -6
  38. package/.agents/skills/qk-context-loader/SKILL.md +63 -11
  39. package/.agents/skills/qk-data-lifecycle/SKILL.md +61 -5
  40. package/.agents/skills/qk-db-optimizer/SKILL.md +61 -5
  41. package/.agents/skills/qk-design-system-engineering/SKILL.md +112 -0
  42. package/.agents/skills/qk-devops-platform/SKILL.md +117 -0
  43. package/.agents/skills/qk-docs/SKILL.md +62 -6
  44. package/.agents/skills/qk-engineering-standard/SKILL.md +62 -12
  45. package/.agents/skills/qk-fe-api-integration/SKILL.md +60 -6
  46. package/.agents/skills/qk-feature-delivery/SKILL.md +65 -6
  47. package/.agents/skills/qk-frontend-architecture/SKILL.md +134 -0
  48. package/.agents/skills/qk-help/SKILL.md +245 -193
  49. package/.agents/skills/qk-orchestrator/SKILL.md +64 -11
  50. package/.agents/skills/qk-orchestrator/references/routing-table.md +1 -1
  51. package/.agents/skills/qk-product-specification/SKILL.md +130 -0
  52. package/.agents/skills/qk-production-release/SKILL.md +59 -6
  53. package/.agents/skills/qk-project-bootstrap/SKILL.md +66 -6
  54. package/.agents/skills/qk-project-health/SKILL.md +63 -6
  55. package/.agents/skills/qk-project-memory/SKILL.md +63 -6
  56. package/.agents/skills/qk-security-audit/SKILL.md +135 -0
  57. package/.agents/skills/qk-system-evolution/SKILL.md +63 -12
  58. package/.agents/skills/qk-test-engineering/SKILL.md +139 -0
  59. package/.agents/skills/qk-ui-audit/SKILL.md +60 -6
  60. package/.agents/skills/qk-ui-builder/SKILL.md +509 -446
  61. package/.agents/skills/qk-ui-system-builder/SKILL.md +61 -5
  62. package/.agents/skills/qk-validation-gate/SKILL.md +63 -11
  63. package/.agents/skills/qk-web-quality-gate/SKILL.md +114 -0
  64. package/.agents/workflows/_schema.yml +109 -0
  65. package/.agents/workflows/bug-resolution.yml +101 -0
  66. package/.agents/workflows/code-review.yml +77 -0
  67. package/.agents/workflows/documentation.yml +75 -0
  68. package/.agents/workflows/feature-delivery.yml +103 -0
  69. package/.agents/workflows/refactor.yml +81 -0
  70. package/.agents/workflows/research.yml +60 -0
  71. package/.agents/workflows/security-audit.yml +72 -0
  72. package/.agents/workflows/skill-evolution.yml +65 -0
  73. package/.agents/workflows/spec-driven-development.yml +57 -0
  74. package/CHANGELOG.md +91 -70
  75. package/README.md +44 -59
  76. package/bin/install.js +57 -309
  77. package/package.json +13 -2
  78. package/tooling/generate-evaluation-cases.cjs +44 -0
  79. package/tooling/generate-registry.js +157 -0
  80. package/tooling/run-aar.js +143 -0
  81. package/tooling/validate-graph.js +87 -0
  82. package/tooling/validate-skills.js +102 -0
  83. package/.agents/skills.json +0 -819
  84. package/.github/workflows/ci.yml +0 -56
  85. package/CLAUDE.md +0 -110
  86. package/_template/BEHAVIOR_SPEC.md +0 -96
  87. package/_template/examples/example-en.md +0 -49
  88. package/_template/examples/example-vi.md +0 -49
  89. package/add_lang.js +0 -21
  90. package/add_lang.py +0 -25
  91. package/add_sections.py +0 -53
  92. package/bin/lint.js +0 -123
  93. package/docs/CHI_TIET_SKILLS.md +0 -126
  94. package/docs/GOVERNANCE.md +0 -40
  95. package/docs/HUONG_DAN_SU_DUNG.md +0 -120
  96. package/docs/SPEC.md +0 -87
  97. package/docs/adr/0001-intent-based-architecture.md +0 -19
  98. package/docs/adr/0002-kernel-freeze.md +0 -21
  99. package/docs/adr/0003-risk-based-verification.md +0 -20
  100. package/docs/adr/0004-progressive-evidence.md +0 -19
  101. package/docs/skill-classification.md +0 -25
  102. package/fix_seeds.js +0 -22
  103. package/framework/KERNEL.md +0 -83
  104. package/framework/bias-library/cosmetic-refactor.md +0 -21
  105. package/framework/bias-library/enterprise-crud.md +0 -21
  106. package/framework/bias-library/fake-ui-slop.md +0 -20
  107. package/framework/bias-library/hallucinated-tools.md +0 -20
  108. package/framework/bias-library/missing-ui-states.md +0 -19
  109. package/framework/bias-library/over-indexing.md +0 -20
  110. package/framework/bias-library/swallow-errors.md +0 -19
  111. package/framework/bias-library/ui-only-security.md +0 -17
  112. package/framework/decision-primitives.md +0 -48
  113. package/framework/dial-library/complexity-budget.md +0 -13
  114. package/framework/dial-library/granularity.md +0 -13
  115. package/framework/dial-library/optimization-strategy.md +0 -13
  116. package/framework/dial-library/strictness.md +0 -13
  117. package/framework/rule-library/delegation-only.md +0 -9
  118. package/framework/rule-library/minimal-diff.md +0 -9
  119. package/framework/skill-schema.md +0 -310
  120. package/knowledge/backend/nodejs.md +0 -52
  121. package/knowledge/frontend/react.md +0 -81
  122. package/migrate-to-v6.js +0 -130
  123. package/migrate.js +0 -147
  124. package/migrate.py +0 -133
  125. package/migrate_all.cjs +0 -96
  126. package/patch.js +0 -15
  127. package/patch.py +0 -89
  128. package/patch2.py +0 -83
  129. package/rename.js +0 -64
  130. package/skills/_archive_old_skills/qk-accessibility-audit/SKILL.md +0 -121
  131. package/skills/_archive_old_skills/qk-agent-orchestrator/SKILL.md +0 -179
  132. package/skills/_archive_old_skills/qk-api-integration/SKILL.md +0 -389
  133. package/skills/_archive_old_skills/qk-auth-security/SKILL.md +0 -96
  134. package/skills/_archive_old_skills/qk-backend-architecture/SKILL.md +0 -125
  135. package/skills/_archive_old_skills/qk-bug-fix/SKILL.md +0 -213
  136. package/skills/_archive_old_skills/qk-component-generator/SKILL.md +0 -136
  137. package/skills/_archive_old_skills/qk-context-manager/SKILL.md +0 -175
  138. package/skills/_archive_old_skills/qk-database-engineer/SKILL.md +0 -104
  139. package/skills/_archive_old_skills/qk-deployment/SKILL.md +0 -96
  140. package/skills/_archive_old_skills/qk-design-system/SKILL.md +0 -137
  141. package/skills/_archive_old_skills/qk-form-builder/SKILL.md +0 -140
  142. package/skills/_archive_old_skills/qk-frontend-architecture/SKILL.md +0 -155
  143. package/skills/_archive_old_skills/qk-frontend-debug/SKILL.md +0 -133
  144. package/skills/_archive_old_skills/qk-frontend-performance/SKILL.md +0 -129
  145. package/skills/_archive_old_skills/qk-frontend-testing/SKILL.md +0 -146
  146. package/skills/_archive_old_skills/qk-git-engineer/SKILL.md +0 -304
  147. package/skills/_archive_old_skills/qk-help/SKILL.md +0 -68
  148. package/skills/_archive_old_skills/qk-migration/SKILL.md +0 -284
  149. package/skills/_archive_old_skills/qk-project-audit/SKILL.md +0 -280
  150. package/skills/_archive_old_skills/qk-refactor/SKILL.md +0 -222
  151. package/skills/_archive_old_skills/qk-state-management/SKILL.md +0 -140
  152. package/skills/_archive_old_skills/qk-table-crud-generator/SKILL.md +0 -127
  153. package/skills/_archive_old_skills/qk-ui-builder/SKILL.md +0 -152
  154. package/skills/_template/SKILL.md +0 -239
  155. package/skills/qk-access-policy/SKILL.md +0 -180
  156. package/skills/qk-ai-builder/SKILL.md +0 -216
  157. package/skills/qk-api-lifecycle/SKILL.md +0 -177
  158. package/skills/qk-bug-resolution/SKILL.md +0 -308
  159. package/skills/qk-context-loader/SKILL.md +0 -219
  160. package/skills/qk-data-lifecycle/SKILL.md +0 -193
  161. package/skills/qk-db-optimizer/SKILL.md +0 -197
  162. package/skills/qk-docs/SKILL.md +0 -199
  163. package/skills/qk-engineering-standard/SKILL.md +0 -352
  164. package/skills/qk-engineering-standard/rules/backend.md +0 -122
  165. package/skills/qk-engineering-standard/rules/database.md +0 -3
  166. package/skills/qk-engineering-standard/rules/frontend.md +0 -152
  167. package/skills/qk-engineering-standard/rules/security.md +0 -3
  168. package/skills/qk-engineering-standard/rules/testing.md +0 -3
  169. package/skills/qk-fe-api-integration/SKILL.md +0 -327
  170. package/skills/qk-feature-delivery/SKILL.md +0 -306
  171. package/skills/qk-help/SKILL.md +0 -194
  172. package/skills/qk-orchestrator/SKILL.md +0 -279
  173. package/skills/qk-orchestrator/references/routing-table.md +0 -78
  174. package/skills/qk-production-release/SKILL.md +0 -285
  175. package/skills/qk-project-bootstrap/SKILL.md +0 -236
  176. package/skills/qk-project-health/SKILL.md +0 -200
  177. package/skills/qk-project-memory/SKILL.md +0 -219
  178. package/skills/qk-system-evolution/SKILL.md +0 -282
  179. package/skills/qk-ui-audit/SKILL.md +0 -316
  180. package/skills/qk-ui-audit/references/anti-slop-checklist.md +0 -136
  181. package/skills/qk-ui-builder/SKILL.md +0 -447
  182. package/skills/qk-ui-builder/references/anti-patterns.md +0 -295
  183. package/skills/qk-ui-builder/references/color.md +0 -115
  184. package/skills/qk-ui-builder/references/component-cookbook.md +0 -1194
  185. package/skills/qk-ui-builder/references/copy.md +0 -250
  186. package/skills/qk-ui-builder/references/interaction-and-states.md +0 -115
  187. package/skills/qk-ui-builder/references/layout-and-space.md +0 -111
  188. package/skills/qk-ui-builder/references/macrostructures/01-bento-grid.md +0 -48
  189. package/skills/qk-ui-builder/references/macrostructures/02-long-document.md +0 -50
  190. package/skills/qk-ui-builder/references/macrostructures/03-marquee-hero.md +0 -51
  191. package/skills/qk-ui-builder/references/macrostructures/04-stat-led.md +0 -49
  192. package/skills/qk-ui-builder/references/macrostructures/05-workbench.md +0 -44
  193. package/skills/qk-ui-builder/references/macrostructures/06-conversational-faq.md +0 -50
  194. package/skills/qk-ui-builder/references/macrostructures/07-manifesto.md +0 -51
  195. package/skills/qk-ui-builder/references/macrostructures/08-photographic.md +0 -50
  196. package/skills/qk-ui-builder/references/macrostructures/09-quote-led.md +0 -50
  197. package/skills/qk-ui-builder/references/macrostructures/11-catalogue.md +0 -49
  198. package/skills/qk-ui-builder/references/macrostructures/12-letter.md +0 -49
  199. package/skills/qk-ui-builder/references/macrostructures/13-index-first.md +0 -49
  200. package/skills/qk-ui-builder/references/macrostructures/14-narrative-workflow.md +0 -48
  201. package/skills/qk-ui-builder/references/macrostructures/15-split-studio.md +0 -48
  202. package/skills/qk-ui-builder/references/macrostructures/16-feature-stack.md +0 -51
  203. package/skills/qk-ui-builder/references/macrostructures/17-type-specimen.md +0 -48
  204. package/skills/qk-ui-builder/references/macrostructures/18-portfolio-grid.md +0 -48
  205. package/skills/qk-ui-builder/references/macrostructures/19-map-diagram.md +0 -50
  206. package/skills/qk-ui-builder/references/macrostructures/20-ecosystem-index.md +0 -48
  207. package/skills/qk-ui-builder/references/macrostructures/21-component-playground.md +0 -45
  208. package/skills/qk-ui-builder/references/macrostructures.md +0 -38
  209. package/skills/qk-ui-builder/references/motion.md +0 -95
  210. package/skills/qk-ui-builder/references/responsive.md +0 -115
  211. package/skills/qk-ui-builder/references/slop-test.md +0 -135
  212. package/skills/qk-ui-builder/references/structure.md +0 -280
  213. package/skills/qk-ui-builder/references/themes/atmospheric.md +0 -53
  214. package/skills/qk-ui-builder/references/themes/carnival.md +0 -52
  215. package/skills/qk-ui-builder/references/themes/cobalt.md +0 -52
  216. package/skills/qk-ui-builder/references/themes/editorial.md +0 -52
  217. package/skills/qk-ui-builder/references/themes/garden.md +0 -52
  218. package/skills/qk-ui-builder/references/themes/hum.md +0 -52
  219. package/skills/qk-ui-builder/references/themes/lumen.md +0 -52
  220. package/skills/qk-ui-builder/references/themes/midnight.md +0 -52
  221. package/skills/qk-ui-builder/references/themes/modern-minimal.md +0 -52
  222. package/skills/qk-ui-builder/references/themes/playful.md +0 -52
  223. package/skills/qk-ui-builder/references/themes/specimen.md +0 -52
  224. package/skills/qk-ui-builder/references/themes/terminal.md +0 -52
  225. package/skills/qk-ui-builder/references/typography.md +0 -129
  226. package/skills/qk-ui-system-builder/SKILL.md +0 -222
  227. package/skills/qk-validation-gate/SKILL.md +0 -360
  228. package/skills.json +0 -820
  229. package/specs/contracts/behavior-contract.yaml +0 -40
  230. package/specs/expectations/qk-bug-resolution.yaml +0 -35
  231. package/specs/fixtures/user-payload.json +0 -12
  232. package/specs/regressions/api-integration-null-fields.yaml +0 -19
  233. package/specs/scenarios/fix-login-nullref.yaml +0 -3
  234. package/taste-skill/.claude-plugin/marketplace.json +0 -20
  235. package/taste-skill/.claude-plugin/plugin.json +0 -19
  236. package/taste-skill/.github/FUNDING.yml +0 -1
  237. package/taste-skill/.github/copilot-instructions.md +0 -11
  238. package/taste-skill/CHANGELOG.md +0 -111
  239. package/taste-skill/LICENSE +0 -21
  240. package/taste-skill/README.md +0 -212
  241. package/taste-skill/assets/.gitkeep +0 -0
  242. package/taste-skill/assets/readme-banner.webp +0 -0
  243. package/taste-skill/assets/readme-buttons/btn-agent-skills.webp +0 -0
  244. package/taste-skill/assets/readme-buttons/btn-changelog.webp +0 -0
  245. package/taste-skill/assets/readme-buttons/btn-mit.webp +0 -0
  246. package/taste-skill/assets/readme-buttons/btn-site.webp +0 -0
  247. package/taste-skill/assets/readme-buttons/btn-tools.webp +0 -0
  248. package/taste-skill/assets/readme-cta-tasteskill.svg +0 -5
  249. package/taste-skill/assets/sponsors/animations-dev.webp +0 -0
  250. package/taste-skill/assets/sponsors/emil-animations-dev.webp +0 -0
  251. package/taste-skill/assets/taste-skill-logo.png +0 -0
  252. package/taste-skill/assets/taste-skill-logo.webp +0 -0
  253. package/taste-skill/assets/vercel-oss-program-badge.svg +0 -44
  254. package/taste-skill/examples/floria-bottom.webp +0 -0
  255. package/taste-skill/examples/floria-full.webp +0 -0
  256. package/taste-skill/examples/floria-top.webp +0 -0
  257. package/taste-skill/research/README.md +0 -8
  258. package/taste-skill/research/laziness/README.md +0 -25
  259. package/taste-skill/research/laziness/findings/empirical-results.md +0 -58
  260. package/taste-skill/research/laziness/findings/references.md +0 -20
  261. package/taste-skill/research/laziness/remediation/architectural-patterns.md +0 -55
  262. package/taste-skill/research/laziness/remediation/parameter-tuning.md +0 -44
  263. package/taste-skill/research/laziness/remediation/prompt-engineering.md +0 -52
  264. package/taste-skill/research/laziness/remediation/reference-prompts.md +0 -79
  265. package/taste-skill/research/laziness/root-causes/cognitive-shortcuts.md +0 -23
  266. package/taste-skill/research/laziness/root-causes/output-limits.md +0 -39
  267. package/taste-skill/research/laziness/root-causes/rlhf-and-compute.md +0 -27
  268. package/taste-skill/research/laziness/root-causes/training-data-bias.md +0 -28
  269. package/taste-skill/scripts/build-emil-sponsor-row.mjs +0 -41
  270. package/taste-skill/scripts/convert-readme-assets-webp.mjs +0 -142
  271. package/taste-skill/scripts/process-readme-buttons.mjs +0 -108
  272. package/taste-skill/scripts/process-sponsor-badge.mjs +0 -83
  273. package/taste-skill/skill.sh +0 -25
  274. package/taste-skill/skills/brandkit/SKILL.md +0 -798
  275. package/taste-skill/skills/brutalist-skill/SKILL.md +0 -92
  276. package/taste-skill/skills/gpt-tasteskill/SKILL.md +0 -74
  277. package/taste-skill/skills/image-to-code-skill/SKILL.md +0 -1228
  278. package/taste-skill/skills/imagegen-frontend-mobile/SKILL.md +0 -1465
  279. package/taste-skill/skills/imagegen-frontend-web/SKILL.md +0 -987
  280. package/taste-skill/skills/llms.txt +0 -13
  281. package/taste-skill/skills/minimalist-skill/SKILL.md +0 -85
  282. package/taste-skill/skills/output-skill/SKILL.md +0 -49
  283. package/taste-skill/skills/redesign-skill/SKILL.md +0 -178
  284. package/taste-skill/skills/soft-skill/SKILL.md +0 -98
  285. package/taste-skill/skills/stitch-skill/DESIGN.md +0 -121
  286. package/taste-skill/skills/stitch-skill/SKILL.md +0 -184
  287. package/taste-skill/skills/taste-skill/SKILL.md +0 -1206
  288. package/taste-skill/skills/taste-skill-v1/SKILL.md +0 -226
  289. package/temp_fix.js +0 -61
  290. package/templates/DESIGN.md +0 -38
  291. package/templates/bug-report.md +0 -21
  292. package/templates/design-report.md +0 -21
  293. package/templates/feature-report.md +0 -20
  294. package/templates/review-report.md +0 -21
  295. package/templates/skill-template.md +0 -38
  296. package/tests/behavior-conformance.test.js +0 -154
  297. package/tests/install-script.test.js +0 -38
  298. package/tests/registry.test.js +0 -111
  299. package/update_template.js +0 -28
  300. package/vitest.config.js +0 -11
@@ -1,360 +0,0 @@
1
- ---
2
- name: qk-validation-gate
3
- category: qa
4
- version: 7.5.1
5
- description: "Cổng kiểm tra chất lượng bắt buộc với ngưỡng pass/fail cụ thể — chặn đứng mọi mã nguồn lỗi."
6
- platforms: [antigravity, claude-code, cursor, windsurf, kilo-code]
7
- execution_mode: deterministic
8
-
9
- cost: medium
10
- latency: medium
11
- risk: low
12
- side_effects: run_commands
13
- produces: [report]
14
- consumes: [source-code]
15
-
16
- token_budget:
17
- max_files_read: 3
18
- max_lines_per_read: 100
19
- max_shell_commands: 2
20
- stop_early: false # Must run all checks — cannot skip for token budget
21
-
22
- exit_codes: [SUCCESS, BLOCKED, FAILED, PARTIAL]
23
- skill_version: 7.5.1
24
- runtime_version: 1
25
- schema_version: 2
26
- ---
27
-
28
- # qk-validation-gate — Quality Gate
29
-
30
- > **Language rule:** Code, identifiers, file names ? English. Explanations, summaries ? Vietnamese.
31
-
32
- skill_version: 7.5.1
33
- runtime_version: 1
34
- schema_version: 2
35
- ---
36
-
37
- ## Preconditions
38
- - [ ] Project has `package.json` with lint/test scripts (or equivalent for other runtimes)
39
- - [ ] Target scope is specified (specific files, or whole project)
40
-
41
- ```
42
- On missing precondition:
43
- EXIT: BLOCKED
44
- Message: "Không tìm thấy script lint/test. Vui lòng chỉ định lệnh kiểm tra."
45
- ```
46
-
47
- skill_version: 7.5.1
48
- runtime_version: 1
49
- schema_version: 2
50
- ---
51
-
52
- ## Scope
53
- - ✅ Run lint, type-check, tests, security audit in sequence
54
- - ✅ Enforce pass/fail with concrete thresholds
55
- - ✅ Report results with structured Evidence Format
56
-
57
- ## Non-Goals
58
- - ❌ Fix failing tests or lint errors (fixes go to qk-bug-resolution)
59
- - ❌ Skip any gate check unless user explicitly allows
60
- - ❌ Override failing thresholds with "ignore" flags
61
-
62
- skill_version: 7.5.1
63
- runtime_version: 1
64
- schema_version: 2
65
- ---
66
-
67
- ## Pass/Fail Thresholds (Non-Negotiable)
68
-
69
- ```yaml
70
- lint:
71
- errors: 0 # Zero tolerance for lint errors
72
- warnings: allowed # Warnings do not block
73
-
74
- typescript:
75
- errors: 0 # Zero type errors
76
-
77
- tests:
78
- coverage_minimum: 80% # Overall coverage
79
- unit_test_pass_rate: 100% # All unit tests must pass
80
- integration_test_pass_rate: 100%
81
-
82
- security:
83
- critical_vulnerabilities: 0
84
- high_vulnerabilities: 0
85
- medium_vulnerabilities: 5 # Max allowed (review required)
86
-
87
- build:
88
- must_succeed: true
89
- max_warnings: 5
90
- bundle_size_limit: 500KB # Gzipped (if applicable)
91
- ```
92
-
93
- skill_version: 7.5.1
94
- runtime_version: 1
95
- schema_version: 2
96
- ---
97
-
98
- ## Priority Order
99
-
100
- | Priority | Gate | Fail = Block? | Skip Allowed? |
101
- |----------|------|---------------|---------------|
102
- | P1 | Security audit (`npm audit`) | YES | Never |
103
- | P2 | TypeScript / type check | YES | Never |
104
- | P3 | Lint (errors only) | YES | Never |
105
- | P4 | Unit tests | YES | Never |
106
- | P5 | Integration tests | YES | Only if no integration tests exist |
107
- | P6 | Coverage check | YES if < 80% | Never |
108
- | P7 | Build | YES | Never |
109
- | P8 | Bundle size | WARN only | Budget < 80% |
110
-
111
- skill_version: 7.5.1
112
- runtime_version: 1
113
- schema_version: 2
114
- ---
115
-
116
- ## Workflow
117
-
118
- ### Phase 1 — Security Gate (P1)
119
-
120
- **Steps:**
121
- 1. Run: `npm audit --audit-level=high` (or equivalent)
122
- 2. Parse output for CRITICAL and HIGH
123
-
124
- **Decision:**
125
- ```
126
- IF 0 critical + 0 high
127
- → PASS P1 → go to Phase 2
128
-
129
- ELSE IF critical or high found
130
- → EXIT: FAILED immediately
131
- → Report: exact package name, CVE, severity
132
- ```
133
-
134
- skill_version: 7.5.1
135
- runtime_version: 1
136
- schema_version: 2
137
- ---
138
-
139
- ### Phase 2 — Type & Lint Gate (P2+P3)
140
-
141
- **Steps:**
142
- 1. Run: `npm run typecheck` (or `tsc --noEmit`)
143
- 2. Run: `npm run lint`
144
- 3. Parse error counts
145
-
146
- **Decision:**
147
- ```
148
- IF 0 type errors AND 0 lint errors
149
- → PASS P2+P3 → go to Phase 3
150
-
151
- ELSE IF type errors > 0
152
- → EXIT: FAILED — list each error with file:line
153
-
154
- ELSE IF lint errors > 0 (warnings OK)
155
- → EXIT: FAILED — list errors
156
- ```
157
-
158
- skill_version: 7.5.1
159
- runtime_version: 1
160
- schema_version: 2
161
- ---
162
-
163
- ### Phase 3 — Test Gate (P4+P5+P6)
164
-
165
- **Steps:**
166
- 1. Run: `npm test -- --coverage` (or equivalent)
167
- 2. Parse: pass/fail counts, coverage percentage
168
-
169
- **Decision:**
170
- ```
171
- IF all tests pass AND coverage ≥ 80%
172
- → PASS P4+P5+P6 → go to Phase 4
173
-
174
- ELSE IF any test fails
175
- → EXIT: FAILED — list failing test names
176
-
177
- ELSE IF coverage < 80%
178
- → EXIT: FAILED — show coverage report (file-level)
179
- ```
180
-
181
- **Retry Policy:**
182
- ```
183
- Test fail
184
- └─ Check if it's a flaky test (run once more)
185
- ├─ PASS on retry → note "flaky test detected", continue
186
- └─ FAIL on retry → EXIT: FAILED — not flaky, real failure
187
- ```
188
-
189
- skill_version: 7.5.1
190
- runtime_version: 1
191
- schema_version: 2
192
- ---
193
-
194
- ### Phase 4 — Build Gate (P7)
195
-
196
- **Steps:**
197
- 1. Run: `npm run build`
198
- 2. Check exit code + warnings count
199
-
200
- **Decision:**
201
- ```
202
- IF build succeeds AND warnings ≤ 5
203
- → EXIT: SUCCESS
204
-
205
- ELSE IF build fails
206
- → EXIT: FAILED
207
-
208
- ELSE IF warnings > 5
209
- → EXIT: PARTIAL — list warnings, continue to release if user confirms
210
- ```
211
-
212
- skill_version: 7.5.1
213
- runtime_version: 1
214
- schema_version: 2
215
- ---
216
-
217
- ## Confidence Model
218
-
219
- | Level | Condition | Action |
220
- |-------|-----------|--------|
221
- | HIGH | Command exit code 0/non-0, numeric output | Report directly |
222
- | MEDIUM | Inferred from partial output (truncated logs) | Note potential missing info |
223
- | LOW | Script not found or output format unknown | EXIT: BLOCKED — clarify commands |
224
-
225
- skill_version: 7.5.1
226
- runtime_version: 1
227
- schema_version: 2
228
- ---
229
-
230
- ## Severity
231
-
232
- | Level | Definition | Example |
233
- |-------|-----------|---------|
234
- | CRITICAL | Security vulnerability in production dependency | CVE in auth library |
235
- | HIGH | Type error or failing test | `Cannot read property of undefined` |
236
- | MEDIUM | Coverage below threshold | 67% coverage (threshold 80%) |
237
- | LOW | Build warning | Unused export |
238
-
239
- skill_version: 7.5.1
240
- runtime_version: 1
241
- schema_version: 2
242
- ---
243
-
244
- ## Evidence Format
245
-
246
- ```
247
- [SEVERITY] Gate: [SECURITY|TYPE|LINT|TEST|COVERAGE|BUILD]
248
- Command: [command that was run]
249
- Result: [PASS | FAIL — exact output snippet]
250
- Threshold: [what the threshold is]
251
- Actual: [what was measured]
252
- Fix: [where to look for the fix]
253
- ```
254
-
255
- **Example:**
256
- ```
257
- [HIGH] Gate: TEST
258
- Command: npm test -- --coverage
259
- Result: FAIL — 3 tests failed
260
- Threshold: 100% pass rate
261
- Actual: 47/50 tests passed
262
- Fix: See failing tests: auth.test.ts:L45, user.test.ts:L23, order.test.ts:L89
263
- ```
264
-
265
- skill_version: 7.5.1
266
- runtime_version: 1
267
- schema_version: 2
268
- ---
269
-
270
- ## Escalation Rules
271
-
272
- ```
273
- BLOCKED: Cannot run validation
274
- Missing:
275
- - npm scripts (lint, test, build) in package.json
276
- - OR test framework setup
277
- Questions:
278
- 1. Dùng lệnh gì để chạy lint? (e.g., eslint, biome, oxlint)
279
- 2. Dùng lệnh gì để chạy test? (e.g., vitest, jest, playwright)
280
- 3. Coverage threshold dự án quy định là bao nhiêu?
281
- Recommended Assumptions:
282
- - Standard: npm run lint + npm test + npm run build
283
- ```
284
-
285
- skill_version: 7.5.1
286
- runtime_version: 1
287
- schema_version: 2
288
- ---
289
-
290
- ## Handoff Contract
291
-
292
- ### Consumes
293
- ```json
294
- {
295
- "from": "user or qk-orchestrator",
296
- "required_fields": ["project_root"],
297
- "optional_fields": ["custom_commands", "custom_thresholds", "scope_files"]
298
- }
299
- ```
300
-
301
- ### Produces
302
- ```json
303
- {
304
- "to": "qk-production-release (if all pass)",
305
- "output_fields": ["gate_results", "coverage_percent", "violations_list", "exit_code"]
306
- }
307
- ```
308
-
309
- skill_version: 7.5.1
310
- runtime_version: 1
311
- schema_version: 2
312
- ---
313
-
314
- ## Output Format
315
-
316
- ```
317
- 🔒 Validation Gate Report
318
- ─────────────────────────────────────────────────
319
- Project: [path]
320
-
321
- Gate Results:
322
- P1 Security: [✅ PASS | ❌ FAIL — N critical, N high]
323
- P2 TypeScript: [✅ PASS | ❌ FAIL — N errors]
324
- P3 Lint: [✅ PASS | ❌ FAIL — N errors (N warnings)]
325
- P4 Unit Tests: [✅ PASS | ❌ FAIL — N/N passed]
326
- P5 Integration: [✅ PASS | ❌ FAIL | ⏭️ SKIPPED]
327
- P6 Coverage: [✅ PASS (N%) | ❌ FAIL (N% < 80%)]
328
- P7 Build: [✅ PASS | ❌ FAIL]
329
-
330
- Failures (action required):
331
- [SEVERITY] Gate — detail — Fix hint
332
-
333
- Exit Code: [SUCCESS | PARTIAL | BLOCKED | FAILED]
334
- ```
335
-
336
- skill_version: 7.5.1
337
- runtime_version: 1
338
- schema_version: 2
339
- ---
340
-
341
-
342
- ---
343
-
344
- ## Retry Policy
345
-
346
-
347
- ---
348
- ## Exit Codes
349
-
350
- | Code | Meaning | When |
351
- |------|---------|------|
352
- | SUCCESS | All gates passed, thresholds met | Safe to proceed to release |
353
- | PARTIAL | Build pass, but warnings > 5 OR integration skipped | User confirmation required |
354
- | BLOCKED | Cannot run — missing scripts or config | Setup required |
355
- | FAILED | Any gate failed at threshold | Do NOT release — fix first |
356
-
357
- ---
358
-
359
-
360
-