agentic-qe 3.6.2 → 3.6.3

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 (502) hide show
  1. package/.claude/agents/v3/qe-accessibility-auditor.md +14 -9
  2. package/.claude/agents/v3/qe-bdd-generator.md +14 -9
  3. package/.claude/agents/v3/qe-chaos-engineer.md +15 -10
  4. package/.claude/agents/v3/qe-code-complexity.md +14 -9
  5. package/.claude/agents/v3/qe-code-intelligence.md +14 -9
  6. package/.claude/agents/v3/qe-contract-validator.md +14 -9
  7. package/.claude/agents/v3/qe-coverage-specialist.md +14 -9
  8. package/.claude/agents/v3/qe-defect-predictor.md +14 -9
  9. package/.claude/agents/v3/qe-dependency-mapper.md +14 -9
  10. package/.claude/agents/v3/qe-deployment-advisor.md +14 -9
  11. package/.claude/agents/v3/qe-flaky-hunter.md +14 -9
  12. package/.claude/agents/v3/qe-fleet-commander.md +14 -9
  13. package/.claude/agents/v3/qe-gap-detector.md +14 -9
  14. package/.claude/agents/v3/qe-graphql-tester.md +14 -9
  15. package/.claude/agents/v3/qe-impact-analyzer.md +14 -9
  16. package/.claude/agents/v3/qe-kg-builder.md +14 -9
  17. package/.claude/agents/v3/qe-load-tester.md +14 -9
  18. package/.claude/agents/v3/qe-message-broker-tester.md +15 -10
  19. package/.claude/agents/v3/qe-metrics-optimizer.md +14 -9
  20. package/.claude/agents/v3/qe-middleware-validator.md +15 -10
  21. package/.claude/agents/v3/qe-mutation-tester.md +14 -9
  22. package/.claude/agents/v3/qe-odata-contract-tester.md +17 -12
  23. package/.claude/agents/v3/qe-performance-tester.md +14 -9
  24. package/.claude/agents/v3/qe-product-factors-assessor.md +19 -0
  25. package/.claude/agents/v3/qe-property-tester.md +14 -9
  26. package/.claude/agents/v3/qe-qx-partner.md +101 -14
  27. package/.claude/agents/v3/qe-regression-analyzer.md +14 -9
  28. package/.claude/agents/v3/qe-requirements-validator.md +14 -9
  29. package/.claude/agents/v3/qe-responsive-tester.md +14 -9
  30. package/.claude/agents/v3/qe-retry-handler.md +14 -9
  31. package/.claude/agents/v3/qe-risk-assessor.md +14 -9
  32. package/.claude/agents/v3/qe-root-cause-analyzer.md +14 -9
  33. package/.claude/agents/v3/qe-sap-idoc-tester.md +16 -11
  34. package/.claude/agents/v3/qe-sap-rfc-tester.md +15 -10
  35. package/.claude/agents/v3/qe-security-auditor.md +18 -9
  36. package/.claude/agents/v3/qe-security-scanner.md +15 -10
  37. package/.claude/agents/v3/qe-soap-tester.md +15 -10
  38. package/.claude/agents/v3/qe-sod-analyzer.md +17 -12
  39. package/.claude/agents/v3/qe-test-architect.md +14 -9
  40. package/.claude/agents/v3/qe-transfer-specialist.md +14 -9
  41. package/.claude/agents/v3/subagents/qe-code-reviewer.md +14 -9
  42. package/.claude/agents/v3/subagents/qe-integration-reviewer.md +14 -9
  43. package/.claude/agents/v3/subagents/qe-performance-reviewer.md +14 -9
  44. package/.claude/agents/v3/subagents/qe-security-reviewer.md +14 -9
  45. package/.claude/agents/v3/subagents/qe-tdd-green.md +14 -9
  46. package/.claude/agents/v3/subagents/qe-tdd-red.md +14 -9
  47. package/.claude/agents/v3/subagents/qe-tdd-refactor.md +14 -9
  48. package/.claude/agents/v3/templates/qx-report-template.html +26 -22
  49. package/.claude/skills/.validation/README.md +2 -2
  50. package/.claude/skills/.validation/skill-validation-mcp-integration.md +1 -1
  51. package/.claude/skills/.validation/templates/skill-frontmatter.example.yaml +1 -1
  52. package/.claude/skills/TRUST-TIERS.md +55 -55
  53. package/.claude/skills/a11y-ally/SKILL.md +1 -1
  54. package/.claude/skills/a11y-ally/evals/a11y-ally.yaml +1 -1
  55. package/.claude/skills/a11y-ally/scripts/validate-config.json +42 -0
  56. package/.claude/skills/accessibility-testing/SKILL.md +1 -1
  57. package/.claude/skills/accessibility-testing/scripts/validate-config.json +56 -0
  58. package/.claude/skills/api-testing-patterns/SKILL.md +1 -1
  59. package/.claude/skills/api-testing-patterns/scripts/validate-config.json +61 -0
  60. package/.claude/skills/brutal-honesty-review/SKILL.md +1 -1
  61. package/.claude/skills/brutal-honesty-review/scripts/validate-config.json +34 -0
  62. package/.claude/skills/bug-reporting-excellence/SKILL.md +1 -1
  63. package/.claude/skills/bug-reporting-excellence/scripts/validate-config.json +34 -0
  64. package/.claude/skills/chaos-engineering-resilience/SKILL.md +1 -1
  65. package/.claude/skills/chaos-engineering-resilience/evals/chaos-engineering-resilience.yaml +1 -1
  66. package/.claude/skills/chaos-engineering-resilience/scripts/validate-config.json +47 -0
  67. package/.claude/skills/cicd-pipeline-qe-orchestrator/SKILL.md +1 -1
  68. package/.claude/skills/cicd-pipeline-qe-orchestrator/scripts/validate-config.json +42 -0
  69. package/.claude/skills/code-review-quality/SKILL.md +1 -1
  70. package/.claude/skills/code-review-quality/scripts/validate-config.json +34 -0
  71. package/.claude/skills/compatibility-testing/SKILL.md +1 -1
  72. package/.claude/skills/compatibility-testing/scripts/validate-config.json +44 -0
  73. package/.claude/skills/compliance-testing/SKILL.md +1 -1
  74. package/.claude/skills/compliance-testing/scripts/validate-config.json +39 -0
  75. package/.claude/skills/contract-testing/SKILL.md +1 -1
  76. package/.claude/skills/contract-testing/scripts/validate-config.json +59 -0
  77. package/.claude/skills/database-testing/SKILL.md +1 -1
  78. package/.claude/skills/database-testing/evals/database-testing.yaml +1 -1
  79. package/.claude/skills/database-testing/scripts/validate-config.json +48 -0
  80. package/.claude/skills/enterprise-integration-testing/SKILL.md +1 -1
  81. package/.claude/skills/localization-testing/SKILL.md +1 -1
  82. package/.claude/skills/localization-testing/evals/localization-testing.yaml +1 -1
  83. package/.claude/skills/localization-testing/scripts/validate-config.json +42 -0
  84. package/.claude/skills/middleware-testing-patterns/SKILL.md +1 -1
  85. package/.claude/skills/mobile-testing/SKILL.md +1 -1
  86. package/.claude/skills/mobile-testing/evals/mobile-testing.yaml +1 -1
  87. package/.claude/skills/mobile-testing/scripts/validate-config.json +43 -0
  88. package/.claude/skills/mutation-testing/SKILL.md +1 -1
  89. package/.claude/skills/mutation-testing/scripts/validate-config.json +44 -0
  90. package/.claude/skills/n8n-expression-testing/SKILL.md +1 -1
  91. package/.claude/skills/n8n-expression-testing/evals/n8n-expression-testing.yaml +1 -1
  92. package/.claude/skills/n8n-expression-testing/scripts/validate-config.json +39 -0
  93. package/.claude/skills/n8n-integration-testing-patterns/SKILL.md +1 -1
  94. package/.claude/skills/n8n-integration-testing-patterns/evals/n8n-integration-testing-patterns.yaml +1 -1
  95. package/.claude/skills/n8n-integration-testing-patterns/scripts/validate-config.json +34 -0
  96. package/.claude/skills/n8n-security-testing/SKILL.md +1 -1
  97. package/.claude/skills/n8n-security-testing/evals/n8n-security-testing.yaml +1 -1
  98. package/.claude/skills/n8n-security-testing/scripts/validate-config.json +34 -0
  99. package/.claude/skills/n8n-trigger-testing-strategies/SKILL.md +1 -1
  100. package/.claude/skills/n8n-trigger-testing-strategies/evals/n8n-trigger-testing-strategies.yaml +1 -1
  101. package/.claude/skills/n8n-trigger-testing-strategies/scripts/validate-config.json +34 -0
  102. package/.claude/skills/n8n-workflow-testing-fundamentals/SKILL.md +1 -1
  103. package/.claude/skills/n8n-workflow-testing-fundamentals/evals/n8n-workflow-testing-fundamentals.yaml +1 -1
  104. package/.claude/skills/n8n-workflow-testing-fundamentals/scripts/validate-config.json +35 -0
  105. package/.claude/skills/observability-testing-patterns/SKILL.md +1 -1
  106. package/.claude/skills/pentest-validation/SKILL.md +1 -1
  107. package/.claude/skills/pentest-validation/evals/pentest-validation.yaml +1 -1
  108. package/.claude/skills/pentest-validation/scripts/validate-config.json +12 -0
  109. package/.claude/skills/performance-analysis/SKILL.md +1 -1
  110. package/.claude/skills/performance-analysis/scripts/validate-config.json +36 -0
  111. package/.claude/skills/performance-testing/SKILL.md +1 -1
  112. package/.claude/skills/performance-testing/evals/performance-testing.yaml +1 -1
  113. package/.claude/skills/performance-testing/scripts/validate-config.json +55 -0
  114. package/.claude/skills/qcsd-cicd-swarm/SKILL.md +1 -1
  115. package/.claude/skills/qcsd-development-swarm/SKILL.md +1 -1
  116. package/.claude/skills/qcsd-ideation-swarm/SKILL.md +1 -1
  117. package/.claude/skills/qcsd-ideation-swarm/scripts/validate-config.json +25 -0
  118. package/.claude/skills/qcsd-refinement-swarm/SKILL.md +1 -1
  119. package/.claude/skills/qcsd-refinement-swarm/scripts/validate-config.json +25 -0
  120. package/.claude/skills/qe-chaos-resilience/SKILL.md +1 -1
  121. package/.claude/skills/qe-chaos-resilience/evals/qe-chaos-resilience.yaml +1 -1
  122. package/.claude/skills/qe-chaos-resilience/scripts/validate-config.json +43 -0
  123. package/.claude/skills/qe-code-intelligence/SKILL.md +1 -1
  124. package/.claude/skills/qe-code-intelligence/evals/qe-code-intelligence.yaml +1 -1
  125. package/.claude/skills/qe-code-intelligence/scripts/validate-config.json +41 -0
  126. package/.claude/skills/qe-contract-testing/SKILL.md +1 -1
  127. package/.claude/skills/qe-contract-testing/evals/qe-contract-testing.yaml +1 -1
  128. package/.claude/skills/qe-contract-testing/scripts/validate-config.json +42 -0
  129. package/.claude/skills/qe-coverage-analysis/SKILL.md +1 -1
  130. package/.claude/skills/qe-coverage-analysis/evals/qe-coverage-analysis.yaml +1 -1
  131. package/.claude/skills/qe-coverage-analysis/scripts/validate-config.json +42 -0
  132. package/.claude/skills/qe-defect-intelligence/SKILL.md +1 -1
  133. package/.claude/skills/qe-defect-intelligence/evals/qe-defect-intelligence.yaml +1 -1
  134. package/.claude/skills/qe-defect-intelligence/scripts/validate-config.json +40 -0
  135. package/.claude/skills/qe-iterative-loop/SKILL.md +1 -1
  136. package/.claude/skills/qe-iterative-loop/scripts/validate-config.json +40 -0
  137. package/.claude/skills/qe-learning-optimization/SKILL.md +1 -1
  138. package/.claude/skills/qe-learning-optimization/scripts/validate-config.json +25 -0
  139. package/.claude/skills/qe-quality-assessment/SKILL.md +1 -1
  140. package/.claude/skills/qe-quality-assessment/evals/qe-quality-assessment.yaml +1 -1
  141. package/.claude/skills/qe-quality-assessment/scripts/validate-config.json +47 -0
  142. package/.claude/skills/qe-requirements-validation/SKILL.md +1 -1
  143. package/.claude/skills/qe-requirements-validation/evals/qe-requirements-validation.yaml +1 -1
  144. package/.claude/skills/qe-requirements-validation/scripts/validate-config.json +37 -0
  145. package/.claude/skills/qe-security-compliance/SKILL.md +1 -1
  146. package/.claude/skills/qe-security-compliance/evals/qe-security-compliance.yaml +1 -1
  147. package/.claude/skills/qe-security-compliance/scripts/validate-config.json +41 -0
  148. package/.claude/skills/qe-test-execution/SKILL.md +1 -1
  149. package/.claude/skills/qe-test-execution/evals/qe-test-execution.yaml +1 -1
  150. package/.claude/skills/qe-test-execution/scripts/validate-config.json +37 -0
  151. package/.claude/skills/qe-test-generation/SKILL.md +1 -1
  152. package/.claude/skills/qe-test-generation/scripts/validate-config.json +25 -0
  153. package/.claude/skills/qe-visual-accessibility/SKILL.md +1 -1
  154. package/.claude/skills/qe-visual-accessibility/scripts/validate-config.json +25 -0
  155. package/.claude/skills/quality-metrics/SKILL.md +1 -1
  156. package/.claude/skills/quality-metrics/evals/quality-metrics.yaml +1 -1
  157. package/.claude/skills/quality-metrics/scripts/validate-config.json +43 -0
  158. package/.claude/skills/refactoring-patterns/SKILL.md +1 -1
  159. package/.claude/skills/refactoring-patterns/scripts/validate-config.json +35 -0
  160. package/.claude/skills/regression-testing/SKILL.md +1 -1
  161. package/.claude/skills/regression-testing/evals/regression-testing.yaml +1 -1
  162. package/.claude/skills/regression-testing/scripts/validate-config.json +50 -0
  163. package/.claude/skills/risk-based-testing/SKILL.md +1 -1
  164. package/.claude/skills/risk-based-testing/scripts/validate-config.json +25 -0
  165. package/.claude/skills/security-testing/SKILL.md +1 -1
  166. package/.claude/skills/security-testing/evals/security-testing.yaml +1 -1
  167. package/.claude/skills/security-testing/scripts/validate-config.json +45 -0
  168. package/.claude/skills/security-visual-testing/SKILL.md +1 -1
  169. package/.claude/skills/security-visual-testing/scripts/validate-config.json +45 -0
  170. package/.claude/skills/sherlock-review/SKILL.md +1 -1
  171. package/.claude/skills/sherlock-review/scripts/validate-config.json +35 -0
  172. package/.claude/skills/shift-left-testing/SKILL.md +1 -1
  173. package/.claude/skills/shift-left-testing/scripts/validate-config.json +25 -0
  174. package/.claude/skills/shift-right-testing/SKILL.md +1 -1
  175. package/.claude/skills/shift-right-testing/scripts/validate-config.json +25 -0
  176. package/.claude/skills/skill-builder/SKILL.md +2 -2
  177. package/.claude/skills/skills-manifest.json +1 -1
  178. package/.claude/skills/tdd-london-chicago/SKILL.md +1 -1
  179. package/.claude/skills/tdd-london-chicago/scripts/validate-config.json +43 -0
  180. package/.claude/skills/test-automation-strategy/SKILL.md +1 -1
  181. package/.claude/skills/test-automation-strategy/scripts/validate-config.json +39 -0
  182. package/.claude/skills/test-data-management/SKILL.md +1 -1
  183. package/.claude/skills/test-data-management/evals/test-data-management.yaml +1 -1
  184. package/.claude/skills/test-data-management/scripts/validate-config.json +41 -0
  185. package/.claude/skills/test-design-techniques/SKILL.md +1 -1
  186. package/.claude/skills/test-design-techniques/scripts/validate-config.json +36 -0
  187. package/.claude/skills/test-reporting-analytics/SKILL.md +1 -1
  188. package/.claude/skills/test-reporting-analytics/scripts/validate-config.json +36 -0
  189. package/.claude/skills/testability-scoring/SKILL.md +1 -1
  190. package/.claude/skills/testability-scoring/scripts/validate-config.json +42 -0
  191. package/.claude/skills/trust-tier-manifest.json +106 -106
  192. package/.claude/skills/verification-quality/scripts/validate-config.json +36 -0
  193. package/.claude/skills/visual-testing-advanced/SKILL.md +1 -1
  194. package/.claude/skills/visual-testing-advanced/scripts/validate-config.json +38 -0
  195. package/.claude/skills/wms-testing-patterns/SKILL.md +1 -1
  196. package/.claude/skills/wms-testing-patterns/evals/wms-testing-patterns.yaml +165 -0
  197. package/.claude/skills/wms-testing-patterns/schemas/output.json +150 -0
  198. package/.claude/skills/wms-testing-patterns/scripts/validate-config.json +51 -0
  199. package/README.md +20 -20
  200. package/package.json +6 -6
  201. package/scripts/migrate-validators.cjs +171 -0
  202. package/scripts/postinstall.cjs +57 -0
  203. package/scripts/preinstall.cjs +28 -8
  204. package/scripts/test-schema-validation.js +2 -2
  205. package/scripts/update-skill-manifest.ts +3 -3
  206. package/scripts/validate-skill.cjs +384 -0
  207. package/scripts/validate-tier3.cjs +61 -0
  208. package/scripts/validator-lib.cjs +274 -0
  209. package/v3/CHANGELOG.md +21 -0
  210. package/v3/assets/agents/v3/qe-product-factors-assessor.md +19 -0
  211. package/v3/assets/agents/v3/qe-qx-partner.md +27 -0
  212. package/v3/assets/skills/.validation/README.md +1 -1
  213. package/v3/assets/skills/.validation/skill-validation-mcp-integration.md +1 -1
  214. package/v3/assets/skills/.validation/templates/skill-frontmatter.example.yaml +1 -1
  215. package/v3/assets/skills/accessibility-testing/SKILL.md +1 -1
  216. package/v3/assets/skills/accessibility-testing/scripts/validate-config.json +56 -0
  217. package/v3/assets/skills/api-testing-patterns/SKILL.md +1 -1
  218. package/v3/assets/skills/api-testing-patterns/scripts/validate-config.json +61 -0
  219. package/v3/assets/skills/bug-reporting-excellence/SKILL.md +1 -1
  220. package/v3/assets/skills/bug-reporting-excellence/scripts/validate-config.json +34 -0
  221. package/v3/assets/skills/chaos-engineering-resilience/SKILL.md +1 -1
  222. package/v3/assets/skills/chaos-engineering-resilience/evals/chaos-engineering-resilience.yaml +1 -1
  223. package/v3/assets/skills/chaos-engineering-resilience/scripts/validate-config.json +47 -0
  224. package/v3/assets/skills/code-review-quality/SKILL.md +1 -1
  225. package/v3/assets/skills/code-review-quality/scripts/validate-config.json +34 -0
  226. package/v3/assets/skills/compatibility-testing/SKILL.md +1 -1
  227. package/v3/assets/skills/compatibility-testing/scripts/validate-config.json +44 -0
  228. package/v3/assets/skills/compliance-testing/SKILL.md +1 -1
  229. package/v3/assets/skills/compliance-testing/scripts/validate-config.json +39 -0
  230. package/v3/assets/skills/contract-testing/SKILL.md +1 -1
  231. package/v3/assets/skills/contract-testing/scripts/validate-config.json +59 -0
  232. package/v3/assets/skills/database-testing/SKILL.md +1 -1
  233. package/v3/assets/skills/database-testing/evals/database-testing.yaml +1 -1
  234. package/v3/assets/skills/database-testing/scripts/validate-config.json +48 -0
  235. package/v3/assets/skills/enterprise-integration-testing/SKILL.md +1 -1
  236. package/v3/assets/skills/localization-testing/SKILL.md +1 -1
  237. package/v3/assets/skills/localization-testing/evals/localization-testing.yaml +1 -1
  238. package/v3/assets/skills/localization-testing/scripts/validate-config.json +42 -0
  239. package/v3/assets/skills/middleware-testing-patterns/SKILL.md +1 -1
  240. package/v3/assets/skills/mobile-testing/SKILL.md +1 -1
  241. package/v3/assets/skills/mobile-testing/evals/mobile-testing.yaml +1 -1
  242. package/v3/assets/skills/mobile-testing/scripts/validate-config.json +43 -0
  243. package/v3/assets/skills/mutation-testing/SKILL.md +1 -1
  244. package/v3/assets/skills/mutation-testing/scripts/validate-config.json +44 -0
  245. package/v3/assets/skills/observability-testing-patterns/SKILL.md +1 -1
  246. package/v3/assets/skills/pentest-validation/SKILL.md +1 -1
  247. package/v3/assets/skills/pentest-validation/evals/pentest-validation.yaml +1 -1
  248. package/v3/assets/skills/performance-testing/SKILL.md +1 -1
  249. package/v3/assets/skills/performance-testing/evals/performance-testing.yaml +1 -1
  250. package/v3/assets/skills/performance-testing/scripts/validate-config.json +55 -0
  251. package/v3/assets/skills/qcsd-cicd-swarm/SKILL.md +1 -1
  252. package/v3/assets/skills/qcsd-development-swarm/SKILL.md +1 -1
  253. package/v3/assets/skills/qcsd-ideation-swarm/SKILL.md +1 -1
  254. package/v3/assets/skills/qcsd-refinement-swarm/SKILL.md +1 -1
  255. package/v3/assets/skills/qe-chaos-resilience/SKILL.md +1 -1
  256. package/v3/assets/skills/qe-chaos-resilience/evals/qe-chaos-resilience.yaml +1 -1
  257. package/v3/assets/skills/qe-chaos-resilience/scripts/validate-config.json +43 -0
  258. package/v3/assets/skills/qe-code-intelligence/SKILL.md +1 -1
  259. package/v3/assets/skills/qe-code-intelligence/evals/qe-code-intelligence.yaml +1 -1
  260. package/v3/assets/skills/qe-code-intelligence/scripts/validate-config.json +41 -0
  261. package/v3/assets/skills/qe-contract-testing/SKILL.md +1 -1
  262. package/v3/assets/skills/qe-contract-testing/evals/qe-contract-testing.yaml +1 -1
  263. package/v3/assets/skills/qe-contract-testing/scripts/validate-config.json +42 -0
  264. package/v3/assets/skills/qe-coverage-analysis/SKILL.md +1 -1
  265. package/v3/assets/skills/qe-coverage-analysis/evals/qe-coverage-analysis.yaml +1 -1
  266. package/v3/assets/skills/qe-coverage-analysis/scripts/validate-config.json +42 -0
  267. package/v3/assets/skills/qe-defect-intelligence/SKILL.md +1 -1
  268. package/v3/assets/skills/qe-defect-intelligence/evals/qe-defect-intelligence.yaml +1 -1
  269. package/v3/assets/skills/qe-defect-intelligence/scripts/validate-config.json +40 -0
  270. package/v3/assets/skills/qe-iterative-loop/SKILL.md +1 -1
  271. package/v3/assets/skills/qe-iterative-loop/scripts/validate-config.json +40 -0
  272. package/v3/assets/skills/qe-learning-optimization/SKILL.md +1 -1
  273. package/v3/assets/skills/qe-learning-optimization/scripts/validate-config.json +25 -0
  274. package/v3/assets/skills/qe-quality-assessment/SKILL.md +1 -1
  275. package/v3/assets/skills/qe-quality-assessment/evals/qe-quality-assessment.yaml +1 -1
  276. package/v3/assets/skills/qe-quality-assessment/scripts/validate-config.json +47 -0
  277. package/v3/assets/skills/qe-requirements-validation/SKILL.md +1 -1
  278. package/v3/assets/skills/qe-requirements-validation/evals/qe-requirements-validation.yaml +1 -1
  279. package/v3/assets/skills/qe-requirements-validation/scripts/validate-config.json +37 -0
  280. package/v3/assets/skills/qe-security-compliance/SKILL.md +1 -1
  281. package/v3/assets/skills/qe-security-compliance/evals/qe-security-compliance.yaml +1 -1
  282. package/v3/assets/skills/qe-security-compliance/scripts/validate-config.json +41 -0
  283. package/v3/assets/skills/qe-test-execution/SKILL.md +1 -1
  284. package/v3/assets/skills/qe-test-execution/evals/qe-test-execution.yaml +1 -1
  285. package/v3/assets/skills/qe-test-execution/scripts/validate-config.json +37 -0
  286. package/v3/assets/skills/qe-test-generation/SKILL.md +1 -1
  287. package/v3/assets/skills/qe-test-generation/scripts/validate-config.json +25 -0
  288. package/v3/assets/skills/qe-visual-accessibility/SKILL.md +1 -1
  289. package/v3/assets/skills/qe-visual-accessibility/scripts/validate-config.json +25 -0
  290. package/v3/assets/skills/quality-metrics/SKILL.md +1 -1
  291. package/v3/assets/skills/quality-metrics/evals/quality-metrics.yaml +1 -1
  292. package/v3/assets/skills/quality-metrics/scripts/validate-config.json +43 -0
  293. package/v3/assets/skills/refactoring-patterns/SKILL.md +1 -1
  294. package/v3/assets/skills/refactoring-patterns/scripts/validate-config.json +35 -0
  295. package/v3/assets/skills/regression-testing/SKILL.md +1 -1
  296. package/v3/assets/skills/regression-testing/evals/regression-testing.yaml +1 -1
  297. package/v3/assets/skills/regression-testing/scripts/validate-config.json +50 -0
  298. package/v3/assets/skills/risk-based-testing/SKILL.md +1 -1
  299. package/v3/assets/skills/risk-based-testing/scripts/validate-config.json +25 -0
  300. package/v3/assets/skills/security-testing/SKILL.md +1 -1
  301. package/v3/assets/skills/security-testing/evals/security-testing.yaml +1 -1
  302. package/v3/assets/skills/security-testing/scripts/validate-config.json +45 -0
  303. package/v3/assets/skills/security-visual-testing/SKILL.md +1 -1
  304. package/v3/assets/skills/shift-left-testing/SKILL.md +1 -1
  305. package/v3/assets/skills/shift-left-testing/scripts/validate-config.json +25 -0
  306. package/v3/assets/skills/shift-right-testing/SKILL.md +1 -1
  307. package/v3/assets/skills/shift-right-testing/scripts/validate-config.json +25 -0
  308. package/v3/assets/skills/tdd-london-chicago/SKILL.md +1 -1
  309. package/v3/assets/skills/tdd-london-chicago/scripts/validate-config.json +43 -0
  310. package/v3/assets/skills/test-automation-strategy/SKILL.md +1 -1
  311. package/v3/assets/skills/test-automation-strategy/scripts/validate-config.json +39 -0
  312. package/v3/assets/skills/test-data-management/SKILL.md +1 -1
  313. package/v3/assets/skills/test-data-management/evals/test-data-management.yaml +1 -1
  314. package/v3/assets/skills/test-data-management/scripts/validate-config.json +41 -0
  315. package/v3/assets/skills/test-design-techniques/SKILL.md +1 -1
  316. package/v3/assets/skills/test-design-techniques/scripts/validate-config.json +36 -0
  317. package/v3/assets/skills/test-reporting-analytics/SKILL.md +1 -1
  318. package/v3/assets/skills/test-reporting-analytics/scripts/validate-config.json +36 -0
  319. package/v3/assets/skills/verification-quality/SKILL.md +0 -6
  320. package/v3/assets/skills/verification-quality/scripts/validate-config.json +36 -0
  321. package/v3/assets/skills/visual-testing-advanced/SKILL.md +1 -1
  322. package/v3/assets/skills/visual-testing-advanced/scripts/validate-config.json +38 -0
  323. package/v3/assets/skills/wms-testing-patterns/SKILL.md +1 -1
  324. package/v3/dist/adapters/claude-flow/model-router-bridge.js +3 -3
  325. package/v3/dist/adapters/claude-flow/model-router-bridge.js.map +1 -1
  326. package/v3/dist/adapters/claude-flow/pretrain-bridge.js +4 -4
  327. package/v3/dist/adapters/claude-flow/pretrain-bridge.js.map +1 -1
  328. package/v3/dist/adapters/claude-flow/trajectory-bridge.js +4 -4
  329. package/v3/dist/adapters/claude-flow/trajectory-bridge.js.map +1 -1
  330. package/v3/dist/cli/bundle.js +135 -153
  331. package/v3/dist/cli/commands/claude-flow-setup.js +3 -3
  332. package/v3/dist/cli/commands/claude-flow-setup.js.map +1 -1
  333. package/v3/dist/cli/commands/completions.d.ts.map +1 -1
  334. package/v3/dist/cli/commands/completions.js +2 -1
  335. package/v3/dist/cli/commands/completions.js.map +1 -1
  336. package/v3/dist/cli/commands/hooks.js +8 -8
  337. package/v3/dist/cli/commands/hooks.js.map +1 -1
  338. package/v3/dist/cli/completions/index.d.ts.map +1 -1
  339. package/v3/dist/cli/completions/index.js +4 -3
  340. package/v3/dist/cli/completions/index.js.map +1 -1
  341. package/v3/dist/domains/code-intelligence/services/metric-collector/test-counter.js +5 -5
  342. package/v3/dist/domains/code-intelligence/services/metric-collector/test-counter.js.map +1 -1
  343. package/v3/dist/init/enhancements/claude-flow-adapter.d.ts.map +1 -1
  344. package/v3/dist/init/enhancements/claude-flow-adapter.js +15 -12
  345. package/v3/dist/init/enhancements/claude-flow-adapter.js.map +1 -1
  346. package/v3/dist/init/enhancements/detector.js +2 -2
  347. package/v3/dist/init/enhancements/detector.js.map +1 -1
  348. package/v3/dist/init/init-wizard.d.ts.map +1 -1
  349. package/v3/dist/init/init-wizard.js +17 -33
  350. package/v3/dist/init/init-wizard.js.map +1 -1
  351. package/v3/dist/init/phases/07-hooks.js +9 -9
  352. package/v3/dist/init/phases/07-hooks.js.map +1 -1
  353. package/v3/dist/init/phases/10-workers.d.ts.map +1 -1
  354. package/v3/dist/init/phases/10-workers.js +74 -85
  355. package/v3/dist/init/phases/10-workers.js.map +1 -1
  356. package/v3/dist/kernel/hybrid-backend.d.ts.map +1 -1
  357. package/v3/dist/kernel/hybrid-backend.js +4 -1
  358. package/v3/dist/kernel/hybrid-backend.js.map +1 -1
  359. package/v3/dist/kernel/memory-backend.d.ts.map +1 -1
  360. package/v3/dist/kernel/memory-backend.js +3 -0
  361. package/v3/dist/kernel/memory-backend.js.map +1 -1
  362. package/v3/dist/mcp/bundle.js +1339 -18
  363. package/v3/dist/mcp/tools/index.d.ts +2 -1
  364. package/v3/dist/mcp/tools/index.d.ts.map +1 -1
  365. package/v3/dist/mcp/tools/index.js +5 -1
  366. package/v3/dist/mcp/tools/index.js.map +1 -1
  367. package/v3/dist/mcp/tools/qx-analysis/analyze.d.ts +33 -0
  368. package/v3/dist/mcp/tools/qx-analysis/analyze.d.ts.map +1 -0
  369. package/v3/dist/mcp/tools/qx-analysis/analyze.js +679 -0
  370. package/v3/dist/mcp/tools/qx-analysis/analyze.js.map +1 -0
  371. package/v3/dist/mcp/tools/qx-analysis/heuristics-engine.d.ts +38 -0
  372. package/v3/dist/mcp/tools/qx-analysis/heuristics-engine.d.ts.map +1 -0
  373. package/v3/dist/mcp/tools/qx-analysis/heuristics-engine.js +458 -0
  374. package/v3/dist/mcp/tools/qx-analysis/heuristics-engine.js.map +1 -0
  375. package/v3/dist/mcp/tools/qx-analysis/impact-analyzer.d.ts +16 -0
  376. package/v3/dist/mcp/tools/qx-analysis/impact-analyzer.d.ts.map +1 -0
  377. package/v3/dist/mcp/tools/qx-analysis/impact-analyzer.js +175 -0
  378. package/v3/dist/mcp/tools/qx-analysis/impact-analyzer.js.map +1 -0
  379. package/v3/dist/mcp/tools/qx-analysis/index.d.ts +27 -0
  380. package/v3/dist/mcp/tools/qx-analysis/index.d.ts.map +1 -0
  381. package/v3/dist/mcp/tools/qx-analysis/index.js +34 -0
  382. package/v3/dist/mcp/tools/qx-analysis/index.js.map +1 -0
  383. package/v3/dist/mcp/tools/qx-analysis/oracle-detector.d.ts +22 -0
  384. package/v3/dist/mcp/tools/qx-analysis/oracle-detector.d.ts.map +1 -0
  385. package/v3/dist/mcp/tools/qx-analysis/oracle-detector.js +194 -0
  386. package/v3/dist/mcp/tools/qx-analysis/oracle-detector.js.map +1 -0
  387. package/v3/dist/mcp/tools/qx-analysis/types.d.ts +278 -0
  388. package/v3/dist/mcp/tools/qx-analysis/types.d.ts.map +1 -0
  389. package/v3/dist/mcp/tools/qx-analysis/types.js +46 -0
  390. package/v3/dist/mcp/tools/qx-analysis/types.js.map +1 -0
  391. package/v3/dist/mcp/tools/registry.d.ts +1 -0
  392. package/v3/dist/mcp/tools/registry.d.ts.map +1 -1
  393. package/v3/dist/mcp/tools/registry.js +5 -0
  394. package/v3/dist/mcp/tools/registry.js.map +1 -1
  395. package/v3/package.json +5 -5
  396. package/.claude/skills/.validation/templates/validate.template.sh +0 -1060
  397. package/.claude/skills/.validation/templates/validator-lib.sh +0 -1031
  398. package/.claude/skills/a11y-ally/scripts/validate.sh +0 -690
  399. package/.claude/skills/accessibility-testing/scripts/validate.sh +0 -943
  400. package/.claude/skills/api-testing-patterns/scripts/validate.sh +0 -931
  401. package/.claude/skills/brutal-honesty-review/scripts/validate.sh +0 -130
  402. package/.claude/skills/bug-reporting-excellence/scripts/validate.sh +0 -108
  403. package/.claude/skills/chaos-engineering-resilience/scripts/validate.sh +0 -1107
  404. package/.claude/skills/cicd-pipeline-qe-orchestrator/scripts/validate.sh +0 -310
  405. package/.claude/skills/code-review-quality/scripts/validate.sh +0 -113
  406. package/.claude/skills/compatibility-testing/scripts/validate.sh +0 -605
  407. package/.claude/skills/compliance-testing/scripts/validate.sh +0 -888
  408. package/.claude/skills/contract-testing/scripts/validate.sh +0 -1033
  409. package/.claude/skills/database-testing/scripts/validate.sh +0 -1099
  410. package/.claude/skills/localization-testing/scripts/validate.sh +0 -131
  411. package/.claude/skills/mobile-testing/scripts/validate.sh +0 -127
  412. package/.claude/skills/mutation-testing/scripts/validate.sh +0 -992
  413. package/.claude/skills/n8n-expression-testing/scripts/validate.sh +0 -162
  414. package/.claude/skills/n8n-integration-testing-patterns/scripts/validate.sh +0 -104
  415. package/.claude/skills/n8n-security-testing/scripts/validate.sh +0 -120
  416. package/.claude/skills/n8n-trigger-testing-strategies/scripts/validate.sh +0 -121
  417. package/.claude/skills/n8n-workflow-testing-fundamentals/scripts/validate.sh +0 -126
  418. package/.claude/skills/pentest-validation/scripts/validate.sh +0 -402
  419. package/.claude/skills/performance-analysis/scripts/validate.sh +0 -63
  420. package/.claude/skills/performance-testing/scripts/validate.sh +0 -1090
  421. package/.claude/skills/qcsd-ideation-swarm/scripts/validate.sh +0 -56
  422. package/.claude/skills/qcsd-refinement-swarm/scripts/validate.sh +0 -56
  423. package/.claude/skills/qe-chaos-resilience/scripts/validate.sh +0 -401
  424. package/.claude/skills/qe-code-intelligence/scripts/validate.sh +0 -408
  425. package/.claude/skills/qe-contract-testing/scripts/validate.sh +0 -421
  426. package/.claude/skills/qe-coverage-analysis/scripts/validate.sh +0 -453
  427. package/.claude/skills/qe-defect-intelligence/scripts/validate.sh +0 -466
  428. package/.claude/skills/qe-iterative-loop/scripts/validate.sh +0 -474
  429. package/.claude/skills/qe-learning-optimization/scripts/validate.sh +0 -56
  430. package/.claude/skills/qe-quality-assessment/scripts/validate.sh +0 -352
  431. package/.claude/skills/qe-requirements-validation/scripts/validate.sh +0 -275
  432. package/.claude/skills/qe-security-compliance/scripts/validate.sh +0 -305
  433. package/.claude/skills/qe-test-execution/scripts/validate.sh +0 -323
  434. package/.claude/skills/qe-test-generation/scripts/validate.sh +0 -56
  435. package/.claude/skills/qe-visual-accessibility/scripts/validate.sh +0 -56
  436. package/.claude/skills/quality-metrics/scripts/validate.sh +0 -434
  437. package/.claude/skills/refactoring-patterns/scripts/validate.sh +0 -241
  438. package/.claude/skills/regression-testing/scripts/validate.sh +0 -130
  439. package/.claude/skills/risk-based-testing/scripts/validate.sh +0 -56
  440. package/.claude/skills/security-testing/scripts/validate.sh +0 -967
  441. package/.claude/skills/security-visual-testing/scripts/validate.sh +0 -748
  442. package/.claude/skills/sherlock-review/scripts/validate.sh +0 -115
  443. package/.claude/skills/shift-left-testing/scripts/validate.sh +0 -56
  444. package/.claude/skills/shift-right-testing/scripts/validate.sh +0 -56
  445. package/.claude/skills/tdd-london-chicago/scripts/validate.sh +0 -214
  446. package/.claude/skills/test-automation-strategy/scripts/validate.sh +0 -195
  447. package/.claude/skills/test-data-management/scripts/validate.sh +0 -137
  448. package/.claude/skills/test-design-techniques/scripts/validate.sh +0 -91
  449. package/.claude/skills/test-reporting-analytics/scripts/validate.sh +0 -77
  450. package/.claude/skills/testability-scoring/scripts/validate.sh +0 -891
  451. package/.claude/skills/verification-quality/scripts/validate.sh +0 -77
  452. package/.claude/skills/visual-testing-advanced/scripts/validate.sh +0 -77
  453. package/v3/assets/skills/.validation/templates/validate.template.sh +0 -1060
  454. package/v3/assets/skills/.validation/templates/validator-lib.sh +0 -1031
  455. package/v3/assets/skills/accessibility-testing/scripts/validate.sh +0 -943
  456. package/v3/assets/skills/api-testing-patterns/scripts/validate.sh +0 -931
  457. package/v3/assets/skills/aqe-v2-v3-migration/skill.md +0 -326
  458. package/v3/assets/skills/bug-reporting-excellence/scripts/validate.sh +0 -108
  459. package/v3/assets/skills/chaos-engineering-resilience/scripts/validate.sh +0 -1107
  460. package/v3/assets/skills/code-review-quality/scripts/validate.sh +0 -113
  461. package/v3/assets/skills/compatibility-testing/scripts/validate.sh +0 -605
  462. package/v3/assets/skills/compliance-testing/scripts/validate.sh +0 -888
  463. package/v3/assets/skills/contract-testing/scripts/validate.sh +0 -1033
  464. package/v3/assets/skills/database-testing/scripts/validate.sh +0 -1099
  465. package/v3/assets/skills/localization-testing/scripts/validate.sh +0 -131
  466. package/v3/assets/skills/mobile-testing/scripts/validate.sh +0 -127
  467. package/v3/assets/skills/mutation-testing/scripts/validate.sh +0 -992
  468. package/v3/assets/skills/n8n-expression-testing/scripts/validate.sh +0 -162
  469. package/v3/assets/skills/n8n-integration-testing-patterns/scripts/validate.sh +0 -104
  470. package/v3/assets/skills/n8n-security-testing/scripts/validate.sh +0 -120
  471. package/v3/assets/skills/n8n-trigger-testing-strategies/scripts/validate.sh +0 -121
  472. package/v3/assets/skills/n8n-workflow-testing-fundamentals/scripts/validate.sh +0 -126
  473. package/v3/assets/skills/pentest-validation/scripts/validate.sh +0 -402
  474. package/v3/assets/skills/performance-testing/scripts/validate.sh +0 -1090
  475. package/v3/assets/skills/qe-chaos-resilience/scripts/validate.sh +0 -401
  476. package/v3/assets/skills/qe-code-intelligence/scripts/validate.sh +0 -408
  477. package/v3/assets/skills/qe-contract-testing/scripts/validate.sh +0 -421
  478. package/v3/assets/skills/qe-coverage-analysis/scripts/validate.sh +0 -453
  479. package/v3/assets/skills/qe-defect-intelligence/scripts/validate.sh +0 -466
  480. package/v3/assets/skills/qe-iterative-loop/scripts/validate.sh +0 -474
  481. package/v3/assets/skills/qe-learning-optimization/scripts/validate.sh +0 -56
  482. package/v3/assets/skills/qe-quality-assessment/scripts/validate.sh +0 -352
  483. package/v3/assets/skills/qe-requirements-validation/scripts/validate.sh +0 -275
  484. package/v3/assets/skills/qe-security-compliance/scripts/validate.sh +0 -305
  485. package/v3/assets/skills/qe-test-execution/scripts/validate.sh +0 -323
  486. package/v3/assets/skills/qe-test-generation/scripts/validate.sh +0 -56
  487. package/v3/assets/skills/qe-visual-accessibility/scripts/validate.sh +0 -56
  488. package/v3/assets/skills/quality-metrics/scripts/validate.sh +0 -434
  489. package/v3/assets/skills/refactoring-patterns/scripts/validate.sh +0 -241
  490. package/v3/assets/skills/regression-testing/scripts/validate.sh +0 -130
  491. package/v3/assets/skills/risk-based-testing/scripts/validate.sh +0 -56
  492. package/v3/assets/skills/security-testing/scripts/validate.sh +0 -967
  493. package/v3/assets/skills/security-visual-testing/scripts/validate.sh +0 -748
  494. package/v3/assets/skills/shift-left-testing/scripts/validate.sh +0 -56
  495. package/v3/assets/skills/shift-right-testing/scripts/validate.sh +0 -56
  496. package/v3/assets/skills/tdd-london-chicago/scripts/validate.sh +0 -214
  497. package/v3/assets/skills/test-automation-strategy/scripts/validate.sh +0 -195
  498. package/v3/assets/skills/test-data-management/scripts/validate.sh +0 -137
  499. package/v3/assets/skills/test-design-techniques/scripts/validate.sh +0 -91
  500. package/v3/assets/skills/test-reporting-analytics/scripts/validate.sh +0 -77
  501. package/v3/assets/skills/verification-quality/scripts/validate.sh +0 -77
  502. package/v3/assets/skills/visual-testing-advanced/scripts/validate.sh +0 -77
@@ -1,352 +0,0 @@
1
- #!/bin/bash
2
- # =============================================================================
3
- # AQE Skill Validator: qe-quality-assessment v1.0.0
4
- # Validates quality assessment skill output per ADR-056
5
- # =============================================================================
6
- #
7
- # This validator checks:
8
- # 1. JSON schema compliance (quality gates, scores, trends, risk assessment)
9
- # 2. Quality gate structure and thresholds
10
- # 3. Score calculations and grade consistency
11
- # 4. Deployment readiness criteria
12
- #
13
- # Usage: ./validate.sh <output-file> [options]
14
- #
15
- # Exit Codes:
16
- # 0 - Validation passed
17
- # 1 - Validation failed
18
- # 2 - Validation skipped (missing required tools)
19
- #
20
- # =============================================================================
21
-
22
- set -euo pipefail
23
-
24
- SCRIPT_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)"
25
- SKILL_DIR="$(cd "$SCRIPT_DIR/.." && pwd)"
26
- PROJECT_ROOT="$(cd "$SKILL_DIR/../../.." && pwd)"
27
-
28
- # Source validator library
29
- VALIDATOR_LIB=""
30
- for lib_path in \
31
- "$PROJECT_ROOT/.claude/skills/.validation/templates/validator-lib.sh" \
32
- "$SKILL_DIR/scripts/validator-lib.sh" \
33
- "$SCRIPT_DIR/validator-lib.sh"; do
34
- if [[ -f "$lib_path" ]]; then
35
- VALIDATOR_LIB="$lib_path"
36
- break
37
- fi
38
- done
39
-
40
- if [[ -n "$VALIDATOR_LIB" ]]; then
41
- # shellcheck source=/dev/null
42
- source "$VALIDATOR_LIB"
43
- else
44
- echo "ERROR: Validator library not found"
45
- exit 1
46
- fi
47
-
48
- # =============================================================================
49
- # SKILL-SPECIFIC CONFIGURATION
50
- # =============================================================================
51
-
52
- SKILL_NAME="qe-quality-assessment"
53
- SKILL_VERSION="1.0.0"
54
- REQUIRED_TOOLS=("jq")
55
- OPTIONAL_TOOLS=("ajv" "jsonschema" "python3")
56
- SCHEMA_PATH="$SKILL_DIR/schemas/output.json"
57
-
58
- # Content validation
59
- REQUIRED_FIELDS=("skillName" "status" "output" "output.summary" "output.qualityGates" "output.scores")
60
- REQUIRED_NON_EMPTY_FIELDS=("output.summary")
61
- MUST_CONTAIN_TERMS=("quality" "score" "gate")
62
- MUST_NOT_CONTAIN_TERMS=("TODO" "placeholder" "FIXME")
63
- ENUM_VALIDATIONS=(
64
- ".status:success,partial,failed,skipped"
65
- ".output.qualityGates.overallStatus:pass,fail,warn"
66
- )
67
-
68
- # =============================================================================
69
- # Argument Parsing
70
- # =============================================================================
71
-
72
- OUTPUT_FILE=""
73
- SELF_TEST=false
74
- VERBOSE=false
75
- JSON_ONLY=false
76
-
77
- while [[ $# -gt 0 ]]; do
78
- case "$1" in
79
- --self-test) SELF_TEST=true; shift ;;
80
- --verbose|-v) VERBOSE=true; export AQE_DEBUG=1; shift ;;
81
- --json) JSON_ONLY=true; shift ;;
82
- -h|--help)
83
- echo "Usage: $0 <output-file> [--self-test] [--verbose] [--json]"
84
- exit 0
85
- ;;
86
- *) OUTPUT_FILE="$1"; shift ;;
87
- esac
88
- done
89
-
90
- # =============================================================================
91
- # Self-Test Mode
92
- # =============================================================================
93
-
94
- if [[ "$SELF_TEST" == "true" ]]; then
95
- echo "=============================================="
96
- info "Running $SKILL_NAME Validator Self-Test"
97
- echo "=============================================="
98
-
99
- self_test_passed=true
100
-
101
- # Check tools
102
- for tool in "${REQUIRED_TOOLS[@]}"; do
103
- if command_exists "$tool"; then
104
- success "Required tool available: $tool"
105
- else
106
- error "Required tool MISSING: $tool"
107
- self_test_passed=false
108
- fi
109
- done
110
-
111
- # Check schema
112
- if [[ -f "$SCHEMA_PATH" ]] && validate_json "$SCHEMA_PATH" 2>/dev/null; then
113
- success "Schema file valid"
114
- else
115
- error "Schema file invalid or missing"
116
- self_test_passed=false
117
- fi
118
-
119
- # Library self-test
120
- if run_self_test 2>/dev/null; then
121
- success "Library self-test passed"
122
- else
123
- error "Library self-test FAILED"
124
- self_test_passed=false
125
- fi
126
-
127
- [[ "$self_test_passed" == "true" ]] && { success "Self-test PASSED"; exit 0; } || { error "Self-test FAILED"; exit 1; }
128
- fi
129
-
130
- # =============================================================================
131
- # SKILL-SPECIFIC VALIDATION FUNCTIONS
132
- # =============================================================================
133
-
134
- validate_quality_gates() {
135
- local output_file="$1"
136
-
137
- # Check gates array exists
138
- local gates_count
139
- gates_count=$(json_count "$output_file" ".output.qualityGates.gates" 2>/dev/null)
140
-
141
- if [[ -z "$gates_count" ]] || [[ "$gates_count" -lt 1 ]]; then
142
- error "Quality gates array is empty or missing"
143
- return 1
144
- fi
145
-
146
- debug "Found $gates_count quality gates"
147
-
148
- # Validate first gate structure
149
- local first_name first_status first_value
150
- first_name=$(json_get "$output_file" ".output.qualityGates.gates[0].name" 2>/dev/null)
151
- first_status=$(json_get "$output_file" ".output.qualityGates.gates[0].status" 2>/dev/null)
152
- first_value=$(json_get "$output_file" ".output.qualityGates.gates[0].value" 2>/dev/null)
153
-
154
- if [[ -z "$first_name" ]] || [[ "$first_name" == "null" ]]; then
155
- error "Gate missing 'name' field"
156
- return 1
157
- fi
158
-
159
- if [[ -n "$first_status" ]] && ! validate_enum "$first_status" "pass" "fail" "warn" "skip"; then
160
- error "Invalid gate status: $first_status"
161
- return 1
162
- fi
163
-
164
- success "Quality gates structure valid"
165
- return 0
166
- }
167
-
168
- validate_scores() {
169
- local output_file="$1"
170
-
171
- # Check overall score exists
172
- local overall_value
173
- overall_value=$(json_get "$output_file" ".output.scores.overall.value" 2>/dev/null)
174
-
175
- if [[ -z "$overall_value" ]] || [[ "$overall_value" == "null" ]]; then
176
- error "Missing overall score"
177
- return 1
178
- fi
179
-
180
- # Validate score range
181
- if (( $(echo "$overall_value < 0 || $overall_value > 100" | bc -l 2>/dev/null || echo "0") )); then
182
- error "Overall score out of range: $overall_value"
183
- return 1
184
- fi
185
-
186
- debug "Overall score: $overall_value"
187
-
188
- # Check grade consistency if present
189
- local grade
190
- grade=$(json_get "$output_file" ".output.scores.overall.grade" 2>/dev/null)
191
- if [[ -n "$grade" ]] && [[ "$grade" != "null" ]]; then
192
- if ! [[ "$grade" =~ ^[A-F][+-]?$ ]]; then
193
- error "Invalid grade format: $grade"
194
- return 1
195
- fi
196
- fi
197
-
198
- success "Scores validation passed"
199
- return 0
200
- }
201
-
202
- validate_deployment_readiness() {
203
- local output_file="$1"
204
-
205
- local deployment_status
206
- deployment_status=$(json_get "$output_file" ".output.deploymentReadiness.status" 2>/dev/null)
207
-
208
- if [[ -n "$deployment_status" ]] && [[ "$deployment_status" != "null" ]]; then
209
- if ! validate_enum "$deployment_status" "go" "conditional" "no-go"; then
210
- error "Invalid deployment status: $deployment_status"
211
- return 1
212
- fi
213
- debug "Deployment status: $deployment_status"
214
- fi
215
-
216
- success "Deployment readiness validation passed"
217
- return 0
218
- }
219
-
220
- validate_skill_specific() {
221
- local output_file="$1"
222
- local has_errors=false
223
-
224
- debug "Running quality-assessment specific validations..."
225
-
226
- if ! validate_quality_gates "$output_file"; then
227
- has_errors=true
228
- fi
229
-
230
- if ! validate_scores "$output_file"; then
231
- has_errors=true
232
- fi
233
-
234
- if ! validate_deployment_readiness "$output_file"; then
235
- has_errors=true
236
- fi
237
-
238
- # Check for risk assessment if present
239
- local risk_level
240
- risk_level=$(json_get "$output_file" ".output.riskAssessment.level" 2>/dev/null)
241
- if [[ -n "$risk_level" ]] && [[ "$risk_level" != "null" ]]; then
242
- if ! validate_enum "$risk_level" "critical" "high" "medium" "low" "minimal"; then
243
- warn "Invalid risk level: $risk_level"
244
- else
245
- debug "Risk level: $risk_level"
246
- fi
247
- fi
248
-
249
- [[ "$has_errors" == "true" ]] && return 1
250
- return 0
251
- }
252
-
253
- # =============================================================================
254
- # Main Validation Flow
255
- # =============================================================================
256
-
257
- main() {
258
- if [[ -z "$OUTPUT_FILE" ]]; then
259
- error "No output file specified"
260
- exit 1
261
- fi
262
-
263
- if [[ ! -f "$OUTPUT_FILE" ]]; then
264
- error "Output file not found: $OUTPUT_FILE"
265
- exit 1
266
- fi
267
-
268
- [[ "$JSON_ONLY" != "true" ]] && {
269
- echo "=============================================="
270
- info "Validating $SKILL_NAME Output"
271
- echo "=============================================="
272
- }
273
-
274
- local error_count=0
275
-
276
- # Check tools
277
- for tool in "${REQUIRED_TOOLS[@]}"; do
278
- if ! command_exists "$tool"; then
279
- error "Missing required tool: $tool"
280
- exit $EXIT_SKIP
281
- fi
282
- done
283
-
284
- # Validate JSON syntax
285
- if ! validate_json "$OUTPUT_FILE"; then
286
- error "Invalid JSON"
287
- exit $EXIT_FAIL
288
- fi
289
- [[ "$JSON_ONLY" != "true" ]] && success "JSON syntax valid"
290
-
291
- # Schema validation
292
- if [[ -f "$SCHEMA_PATH" ]]; then
293
- validate_json_schema "$SCHEMA_PATH" "$OUTPUT_FILE" && \
294
- { [[ "$JSON_ONLY" != "true" ]] && success "Schema validation passed"; } || \
295
- { ((error_count++)) || true; }
296
- fi
297
-
298
- # Required fields
299
- local missing=()
300
- for field in "${REQUIRED_FIELDS[@]}"; do
301
- local value
302
- value=$(json_get "$OUTPUT_FILE" ".$field" 2>/dev/null)
303
- if [[ -z "$value" ]] || [[ "$value" == "null" ]]; then
304
- missing+=("$field")
305
- fi
306
- done
307
- if [[ ${#missing[@]} -gt 0 ]]; then
308
- error "Missing required fields: ${missing[*]}"
309
- ((error_count++)) || true
310
- else
311
- [[ "$JSON_ONLY" != "true" ]] && success "All required fields present"
312
- fi
313
-
314
- # Content terms
315
- local content
316
- content=$(cat "$OUTPUT_FILE")
317
- for term in "${MUST_CONTAIN_TERMS[@]}"; do
318
- if ! grep -qi "$term" <<< "$content"; then
319
- error "Missing required term: $term"
320
- ((error_count++)) || true
321
- fi
322
- done
323
-
324
- for term in "${MUST_NOT_CONTAIN_TERMS[@]}"; do
325
- if grep -qi "$term" <<< "$content"; then
326
- error "Found forbidden term: $term"
327
- ((error_count++)) || true
328
- fi
329
- done
330
-
331
- # Skill-specific validation
332
- if ! validate_skill_specific "$OUTPUT_FILE"; then
333
- ((error_count++)) || true
334
- fi
335
-
336
- # Result
337
- [[ "$JSON_ONLY" != "true" ]] && {
338
- echo "=============================================="
339
- echo " Errors: $error_count"
340
- echo "=============================================="
341
- }
342
-
343
- if [[ $error_count -gt 0 ]]; then
344
- [[ "$JSON_ONLY" != "true" ]] && error "Validation FAILED"
345
- exit $EXIT_FAIL
346
- fi
347
-
348
- [[ "$JSON_ONLY" != "true" ]] && success "Validation PASSED"
349
- exit $EXIT_PASS
350
- }
351
-
352
- main
@@ -1,275 +0,0 @@
1
- #!/bin/bash
2
- # =============================================================================
3
- # AQE Skill Validator: qe-requirements-validation v1.0.0
4
- # Validates requirements validation skill output per ADR-056
5
- # =============================================================================
6
- #
7
- # This validator checks:
8
- # 1. JSON schema compliance (requirements, traceability, coverage)
9
- # 2. Requirements structure and INVEST scoring
10
- # 3. Traceability matrix completeness
11
- # 4. Testability assessment principles
12
- #
13
- # Usage: ./validate.sh <output-file> [options]
14
- #
15
- # Exit Codes:
16
- # 0 - Validation passed
17
- # 1 - Validation failed
18
- # 2 - Validation skipped (missing required tools)
19
- #
20
- # =============================================================================
21
-
22
- set -euo pipefail
23
-
24
- SCRIPT_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)"
25
- SKILL_DIR="$(cd "$SCRIPT_DIR/.." && pwd)"
26
- PROJECT_ROOT="$(cd "$SKILL_DIR/../../.." && pwd)"
27
-
28
- # Source validator library
29
- VALIDATOR_LIB=""
30
- for lib_path in \
31
- "$PROJECT_ROOT/.claude/skills/.validation/templates/validator-lib.sh" \
32
- "$SKILL_DIR/scripts/validator-lib.sh"; do
33
- if [[ -f "$lib_path" ]]; then
34
- VALIDATOR_LIB="$lib_path"
35
- break
36
- fi
37
- done
38
-
39
- if [[ -n "$VALIDATOR_LIB" ]]; then
40
- source "$VALIDATOR_LIB"
41
- else
42
- echo "ERROR: Validator library not found"
43
- exit 1
44
- fi
45
-
46
- # =============================================================================
47
- # SKILL-SPECIFIC CONFIGURATION
48
- # =============================================================================
49
-
50
- SKILL_NAME="qe-requirements-validation"
51
- SKILL_VERSION="1.0.0"
52
- REQUIRED_TOOLS=("jq")
53
- SCHEMA_PATH="$SKILL_DIR/schemas/output.json"
54
-
55
- REQUIRED_FIELDS=("skillName" "status" "output" "output.summary" "output.requirements" "output.traceability")
56
- REQUIRED_NON_EMPTY_FIELDS=("output.summary")
57
- MUST_CONTAIN_TERMS=("requirement" "traceability")
58
- MUST_NOT_CONTAIN_TERMS=("TODO" "placeholder" "FIXME")
59
- ENUM_VALIDATIONS=(
60
- ".status:success,partial,failed,skipped"
61
- )
62
-
63
- # =============================================================================
64
- # Argument Parsing
65
- # =============================================================================
66
-
67
- OUTPUT_FILE=""
68
- SELF_TEST=false
69
- VERBOSE=false
70
- JSON_ONLY=false
71
-
72
- while [[ $# -gt 0 ]]; do
73
- case "$1" in
74
- --self-test) SELF_TEST=true; shift ;;
75
- --verbose|-v) VERBOSE=true; export AQE_DEBUG=1; shift ;;
76
- --json) JSON_ONLY=true; shift ;;
77
- -h|--help) echo "Usage: $0 <output-file> [--self-test] [--verbose] [--json]"; exit 0 ;;
78
- *) OUTPUT_FILE="$1"; shift ;;
79
- esac
80
- done
81
-
82
- # =============================================================================
83
- # Self-Test Mode
84
- # =============================================================================
85
-
86
- if [[ "$SELF_TEST" == "true" ]]; then
87
- info "Running $SKILL_NAME Validator Self-Test"
88
- self_test_passed=true
89
-
90
- for tool in "${REQUIRED_TOOLS[@]}"; do
91
- command_exists "$tool" && success "Tool: $tool" || { error "Missing: $tool"; self_test_passed=false; }
92
- done
93
-
94
- [[ -f "$SCHEMA_PATH" ]] && validate_json "$SCHEMA_PATH" 2>/dev/null && success "Schema valid" || self_test_passed=false
95
- run_self_test 2>/dev/null && success "Library OK" || self_test_passed=false
96
-
97
- [[ "$self_test_passed" == "true" ]] && { success "Self-test PASSED"; exit 0; } || { error "Self-test FAILED"; exit 1; }
98
- fi
99
-
100
- # =============================================================================
101
- # SKILL-SPECIFIC VALIDATION FUNCTIONS
102
- # =============================================================================
103
-
104
- validate_requirements_structure() {
105
- local output_file="$1"
106
-
107
- local total
108
- total=$(json_get "$output_file" ".output.requirements.total" 2>/dev/null)
109
-
110
- if [[ -z "$total" ]] || [[ "$total" == "null" ]]; then
111
- warn "Missing requirements.total"
112
- else
113
- debug "Total requirements: $total"
114
- fi
115
-
116
- # Check requirement items if present
117
- local items_count
118
- items_count=$(json_count "$output_file" ".output.requirements.items" 2>/dev/null)
119
-
120
- if [[ -n "$items_count" ]] && [[ "$items_count" -gt 0 ]]; then
121
- # Validate first item structure
122
- local first_id first_status
123
- first_id=$(json_get "$output_file" ".output.requirements.items[0].id" 2>/dev/null)
124
- first_status=$(json_get "$output_file" ".output.requirements.items[0].status" 2>/dev/null)
125
-
126
- if [[ -n "$first_status" ]] && [[ "$first_status" != "null" ]]; then
127
- if ! validate_enum "$first_status" "valid" "incomplete" "ambiguous" "untestable" "duplicate"; then
128
- warn "Invalid requirement status: $first_status"
129
- fi
130
- fi
131
-
132
- debug "Found $items_count requirement items"
133
- fi
134
-
135
- success "Requirements structure validation passed"
136
- return 0
137
- }
138
-
139
- validate_traceability() {
140
- local output_file="$1"
141
-
142
- local completeness
143
- completeness=$(json_get "$output_file" ".output.traceability.completeness" 2>/dev/null)
144
-
145
- if [[ -z "$completeness" ]] || [[ "$completeness" == "null" ]]; then
146
- error "Missing traceability completeness"
147
- return 1
148
- fi
149
-
150
- # Check range
151
- if (( $(echo "$completeness < 0 || $completeness > 100" | bc -l 2>/dev/null || echo "0") )); then
152
- error "Traceability completeness out of range: $completeness"
153
- return 1
154
- fi
155
-
156
- debug "Traceability completeness: $completeness%"
157
- success "Traceability validation passed"
158
- return 0
159
- }
160
-
161
- validate_testability() {
162
- local output_file="$1"
163
-
164
- local score
165
- score=$(json_get "$output_file" ".output.testability.score" 2>/dev/null)
166
-
167
- if [[ -n "$score" ]] && [[ "$score" != "null" ]]; then
168
- if (( $(echo "$score < 0 || $score > 100" | bc -l 2>/dev/null || echo "0") )); then
169
- error "Testability score out of range: $score"
170
- return 1
171
- fi
172
-
173
- debug "Testability score: $score"
174
-
175
- # Check principles if present
176
- local principles_count
177
- principles_count=$(json_count "$output_file" ".output.testability.principles" 2>/dev/null)
178
- if [[ -n "$principles_count" ]] && [[ "$principles_count" -gt 0 ]]; then
179
- debug "Found $principles_count testability principles"
180
- fi
181
- fi
182
-
183
- success "Testability validation passed"
184
- return 0
185
- }
186
-
187
- validate_coverage() {
188
- local output_file="$1"
189
-
190
- local percentage
191
- percentage=$(json_get "$output_file" ".output.coverage.percentage" 2>/dev/null)
192
-
193
- if [[ -n "$percentage" ]] && [[ "$percentage" != "null" ]]; then
194
- if (( $(echo "$percentage < 0 || $percentage > 100" | bc -l 2>/dev/null || echo "0") )); then
195
- warn "Coverage percentage out of range: $percentage"
196
- else
197
- debug "Requirements coverage: $percentage%"
198
- fi
199
- fi
200
-
201
- success "Coverage validation passed"
202
- return 0
203
- }
204
-
205
- validate_skill_specific() {
206
- local output_file="$1"
207
- local has_errors=false
208
-
209
- debug "Running requirements-validation specific validations..."
210
-
211
- validate_requirements_structure "$output_file" || has_errors=true
212
- validate_traceability "$output_file" || has_errors=true
213
- validate_testability "$output_file" || has_errors=true
214
- validate_coverage "$output_file" || has_errors=true
215
-
216
- # Check for gaps
217
- local gaps_count
218
- gaps_count=$(json_count "$output_file" ".output.gaps" 2>/dev/null)
219
- if [[ -n "$gaps_count" ]] && [[ "$gaps_count" -gt 0 ]]; then
220
- debug "Found $gaps_count requirement gaps"
221
- fi
222
-
223
- [[ "$has_errors" == "true" ]] && return 1
224
- return 0
225
- }
226
-
227
- # =============================================================================
228
- # Main Validation Flow
229
- # =============================================================================
230
-
231
- main() {
232
- [[ -z "$OUTPUT_FILE" ]] && { error "No output file specified"; exit 1; }
233
- [[ ! -f "$OUTPUT_FILE" ]] && { error "File not found: $OUTPUT_FILE"; exit 1; }
234
-
235
- [[ "$JSON_ONLY" != "true" ]] && info "Validating $SKILL_NAME Output"
236
-
237
- local error_count=0
238
-
239
- for tool in "${REQUIRED_TOOLS[@]}"; do
240
- command_exists "$tool" || { error "Missing: $tool"; exit $EXIT_SKIP; }
241
- done
242
-
243
- validate_json "$OUTPUT_FILE" || { error "Invalid JSON"; exit $EXIT_FAIL; }
244
- [[ "$JSON_ONLY" != "true" ]] && success "JSON syntax valid"
245
-
246
- # Schema validation
247
- [[ -f "$SCHEMA_PATH" ]] && { validate_json_schema "$SCHEMA_PATH" "$OUTPUT_FILE" || ((error_count++)) || true; }
248
-
249
- # Required fields
250
- for field in "${REQUIRED_FIELDS[@]}"; do
251
- local value
252
- value=$(json_get "$OUTPUT_FILE" ".$field" 2>/dev/null)
253
- [[ -z "$value" ]] || [[ "$value" == "null" ]] && { error "Missing: $field"; ((error_count++)) || true; }
254
- done
255
-
256
- # Content checks
257
- local content
258
- content=$(cat "$OUTPUT_FILE")
259
- for term in "${MUST_CONTAIN_TERMS[@]}"; do
260
- grep -qi "$term" <<< "$content" || { error "Missing term: $term"; ((error_count++)) || true; }
261
- done
262
-
263
- for term in "${MUST_NOT_CONTAIN_TERMS[@]}"; do
264
- grep -qi "$term" <<< "$content" && { error "Forbidden: $term"; ((error_count++)) || true; }
265
- done
266
-
267
- validate_skill_specific "$OUTPUT_FILE" || ((error_count++)) || true
268
-
269
- [[ $error_count -gt 0 ]] && { [[ "$JSON_ONLY" != "true" ]] && error "Validation FAILED ($error_count errors)"; exit $EXIT_FAIL; }
270
-
271
- [[ "$JSON_ONLY" != "true" ]] && success "Validation PASSED"
272
- exit $EXIT_PASS
273
- }
274
-
275
- main