agentic-qe 3.6.1 → 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 (517) 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-quality-criteria-recommender.md +2 -2
  27. package/.claude/agents/v3/qe-qx-partner.md +101 -14
  28. package/.claude/agents/v3/qe-regression-analyzer.md +14 -9
  29. package/.claude/agents/v3/qe-requirements-validator.md +14 -9
  30. package/.claude/agents/v3/qe-responsive-tester.md +14 -9
  31. package/.claude/agents/v3/qe-retry-handler.md +14 -9
  32. package/.claude/agents/v3/qe-risk-assessor.md +14 -9
  33. package/.claude/agents/v3/qe-root-cause-analyzer.md +14 -9
  34. package/.claude/agents/v3/qe-sap-idoc-tester.md +16 -11
  35. package/.claude/agents/v3/qe-sap-rfc-tester.md +15 -10
  36. package/.claude/agents/v3/qe-security-auditor.md +18 -9
  37. package/.claude/agents/v3/qe-security-scanner.md +15 -10
  38. package/.claude/agents/v3/qe-soap-tester.md +15 -10
  39. package/.claude/agents/v3/qe-sod-analyzer.md +17 -12
  40. package/.claude/agents/v3/qe-test-architect.md +14 -9
  41. package/.claude/agents/v3/qe-transfer-specialist.md +14 -9
  42. package/.claude/agents/v3/subagents/qe-code-reviewer.md +14 -9
  43. package/.claude/agents/v3/subagents/qe-integration-reviewer.md +14 -9
  44. package/.claude/agents/v3/subagents/qe-performance-reviewer.md +14 -9
  45. package/.claude/agents/v3/subagents/qe-security-reviewer.md +14 -9
  46. package/.claude/agents/v3/subagents/qe-tdd-green.md +14 -9
  47. package/.claude/agents/v3/subagents/qe-tdd-red.md +14 -9
  48. package/.claude/agents/v3/subagents/qe-tdd-refactor.md +14 -9
  49. package/.claude/agents/v3/templates/qx-report-template.html +26 -22
  50. package/.claude/skills/.validation/README.md +2 -2
  51. package/.claude/skills/.validation/skill-validation-mcp-integration.md +1 -1
  52. package/.claude/skills/.validation/templates/skill-frontmatter.example.yaml +1 -1
  53. package/.claude/skills/TRUST-TIERS.md +55 -55
  54. package/.claude/skills/a11y-ally/SKILL.md +1 -1
  55. package/.claude/skills/a11y-ally/evals/a11y-ally.yaml +1 -1
  56. package/.claude/skills/a11y-ally/scripts/validate-config.json +42 -0
  57. package/.claude/skills/accessibility-testing/SKILL.md +1 -1
  58. package/.claude/skills/accessibility-testing/scripts/validate-config.json +56 -0
  59. package/.claude/skills/api-testing-patterns/SKILL.md +1 -1
  60. package/.claude/skills/api-testing-patterns/scripts/validate-config.json +61 -0
  61. package/.claude/skills/brutal-honesty-review/SKILL.md +1 -1
  62. package/.claude/skills/brutal-honesty-review/scripts/validate-config.json +34 -0
  63. package/.claude/skills/bug-reporting-excellence/SKILL.md +1 -1
  64. package/.claude/skills/bug-reporting-excellence/scripts/validate-config.json +34 -0
  65. package/.claude/skills/chaos-engineering-resilience/SKILL.md +1 -1
  66. package/.claude/skills/chaos-engineering-resilience/evals/chaos-engineering-resilience.yaml +1 -1
  67. package/.claude/skills/chaos-engineering-resilience/scripts/validate-config.json +47 -0
  68. package/.claude/skills/cicd-pipeline-qe-orchestrator/SKILL.md +1 -1
  69. package/.claude/skills/cicd-pipeline-qe-orchestrator/scripts/validate-config.json +42 -0
  70. package/.claude/skills/code-review-quality/SKILL.md +1 -1
  71. package/.claude/skills/code-review-quality/scripts/validate-config.json +34 -0
  72. package/.claude/skills/compatibility-testing/SKILL.md +1 -1
  73. package/.claude/skills/compatibility-testing/scripts/validate-config.json +44 -0
  74. package/.claude/skills/compliance-testing/SKILL.md +1 -1
  75. package/.claude/skills/compliance-testing/scripts/validate-config.json +39 -0
  76. package/.claude/skills/contract-testing/SKILL.md +1 -1
  77. package/.claude/skills/contract-testing/scripts/validate-config.json +59 -0
  78. package/.claude/skills/database-testing/SKILL.md +1 -1
  79. package/.claude/skills/database-testing/evals/database-testing.yaml +1 -1
  80. package/.claude/skills/database-testing/scripts/validate-config.json +48 -0
  81. package/.claude/skills/enterprise-integration-testing/SKILL.md +1 -1
  82. package/.claude/skills/localization-testing/SKILL.md +1 -1
  83. package/.claude/skills/localization-testing/evals/localization-testing.yaml +1 -1
  84. package/.claude/skills/localization-testing/scripts/validate-config.json +42 -0
  85. package/.claude/skills/middleware-testing-patterns/SKILL.md +1 -1
  86. package/.claude/skills/mobile-testing/SKILL.md +1 -1
  87. package/.claude/skills/mobile-testing/evals/mobile-testing.yaml +1 -1
  88. package/.claude/skills/mobile-testing/scripts/validate-config.json +43 -0
  89. package/.claude/skills/mutation-testing/SKILL.md +1 -1
  90. package/.claude/skills/mutation-testing/scripts/validate-config.json +44 -0
  91. package/.claude/skills/n8n-expression-testing/SKILL.md +1 -1
  92. package/.claude/skills/n8n-expression-testing/evals/n8n-expression-testing.yaml +1 -1
  93. package/.claude/skills/n8n-expression-testing/scripts/validate-config.json +39 -0
  94. package/.claude/skills/n8n-integration-testing-patterns/SKILL.md +1 -1
  95. package/.claude/skills/n8n-integration-testing-patterns/evals/n8n-integration-testing-patterns.yaml +1 -1
  96. package/.claude/skills/n8n-integration-testing-patterns/scripts/validate-config.json +34 -0
  97. package/.claude/skills/n8n-security-testing/SKILL.md +1 -1
  98. package/.claude/skills/n8n-security-testing/evals/n8n-security-testing.yaml +1 -1
  99. package/.claude/skills/n8n-security-testing/scripts/validate-config.json +34 -0
  100. package/.claude/skills/n8n-trigger-testing-strategies/SKILL.md +1 -1
  101. package/.claude/skills/n8n-trigger-testing-strategies/evals/n8n-trigger-testing-strategies.yaml +1 -1
  102. package/.claude/skills/n8n-trigger-testing-strategies/scripts/validate-config.json +34 -0
  103. package/.claude/skills/n8n-workflow-testing-fundamentals/SKILL.md +1 -1
  104. package/.claude/skills/n8n-workflow-testing-fundamentals/evals/n8n-workflow-testing-fundamentals.yaml +1 -1
  105. package/.claude/skills/n8n-workflow-testing-fundamentals/scripts/validate-config.json +35 -0
  106. package/.claude/skills/observability-testing-patterns/SKILL.md +1 -1
  107. package/.claude/skills/pentest-validation/SKILL.md +1 -1
  108. package/.claude/skills/pentest-validation/evals/pentest-validation.yaml +1 -1
  109. package/.claude/skills/pentest-validation/scripts/validate-config.json +12 -0
  110. package/.claude/skills/performance-analysis/SKILL.md +1 -1
  111. package/.claude/skills/performance-analysis/scripts/validate-config.json +36 -0
  112. package/.claude/skills/performance-testing/SKILL.md +1 -1
  113. package/.claude/skills/performance-testing/evals/performance-testing.yaml +1 -1
  114. package/.claude/skills/performance-testing/scripts/validate-config.json +55 -0
  115. package/.claude/skills/qcsd-cicd-swarm/SKILL.md +1 -1
  116. package/.claude/skills/qcsd-development-swarm/SKILL.md +1 -1
  117. package/.claude/skills/qcsd-ideation-swarm/SKILL.md +1 -1
  118. package/.claude/skills/qcsd-ideation-swarm/scripts/validate-config.json +25 -0
  119. package/.claude/skills/qcsd-refinement-swarm/SKILL.md +1 -1
  120. package/.claude/skills/qcsd-refinement-swarm/scripts/validate-config.json +25 -0
  121. package/.claude/skills/qe-chaos-resilience/SKILL.md +1 -1
  122. package/.claude/skills/qe-chaos-resilience/evals/qe-chaos-resilience.yaml +1 -1
  123. package/.claude/skills/qe-chaos-resilience/scripts/validate-config.json +43 -0
  124. package/.claude/skills/qe-code-intelligence/SKILL.md +1 -1
  125. package/.claude/skills/qe-code-intelligence/evals/qe-code-intelligence.yaml +1 -1
  126. package/.claude/skills/qe-code-intelligence/scripts/validate-config.json +41 -0
  127. package/.claude/skills/qe-contract-testing/SKILL.md +1 -1
  128. package/.claude/skills/qe-contract-testing/evals/qe-contract-testing.yaml +1 -1
  129. package/.claude/skills/qe-contract-testing/scripts/validate-config.json +42 -0
  130. package/.claude/skills/qe-coverage-analysis/SKILL.md +1 -1
  131. package/.claude/skills/qe-coverage-analysis/evals/qe-coverage-analysis.yaml +1 -1
  132. package/.claude/skills/qe-coverage-analysis/scripts/validate-config.json +42 -0
  133. package/.claude/skills/qe-defect-intelligence/SKILL.md +1 -1
  134. package/.claude/skills/qe-defect-intelligence/evals/qe-defect-intelligence.yaml +1 -1
  135. package/.claude/skills/qe-defect-intelligence/scripts/validate-config.json +40 -0
  136. package/.claude/skills/qe-iterative-loop/SKILL.md +1 -1
  137. package/.claude/skills/qe-iterative-loop/scripts/validate-config.json +40 -0
  138. package/.claude/skills/qe-learning-optimization/SKILL.md +1 -1
  139. package/.claude/skills/qe-learning-optimization/scripts/validate-config.json +25 -0
  140. package/.claude/skills/qe-quality-assessment/SKILL.md +1 -1
  141. package/.claude/skills/qe-quality-assessment/evals/qe-quality-assessment.yaml +1 -1
  142. package/.claude/skills/qe-quality-assessment/scripts/validate-config.json +47 -0
  143. package/.claude/skills/qe-requirements-validation/SKILL.md +1 -1
  144. package/.claude/skills/qe-requirements-validation/evals/qe-requirements-validation.yaml +1 -1
  145. package/.claude/skills/qe-requirements-validation/scripts/validate-config.json +37 -0
  146. package/.claude/skills/qe-security-compliance/SKILL.md +1 -1
  147. package/.claude/skills/qe-security-compliance/evals/qe-security-compliance.yaml +1 -1
  148. package/.claude/skills/qe-security-compliance/scripts/validate-config.json +41 -0
  149. package/.claude/skills/qe-test-execution/SKILL.md +1 -1
  150. package/.claude/skills/qe-test-execution/evals/qe-test-execution.yaml +1 -1
  151. package/.claude/skills/qe-test-execution/scripts/validate-config.json +37 -0
  152. package/.claude/skills/qe-test-generation/SKILL.md +1 -1
  153. package/.claude/skills/qe-test-generation/scripts/validate-config.json +25 -0
  154. package/.claude/skills/qe-visual-accessibility/SKILL.md +1 -1
  155. package/.claude/skills/qe-visual-accessibility/scripts/validate-config.json +25 -0
  156. package/.claude/skills/quality-metrics/SKILL.md +1 -1
  157. package/.claude/skills/quality-metrics/evals/quality-metrics.yaml +1 -1
  158. package/.claude/skills/quality-metrics/scripts/validate-config.json +43 -0
  159. package/.claude/skills/refactoring-patterns/SKILL.md +1 -1
  160. package/.claude/skills/refactoring-patterns/scripts/validate-config.json +35 -0
  161. package/.claude/skills/regression-testing/SKILL.md +1 -1
  162. package/.claude/skills/regression-testing/evals/regression-testing.yaml +1 -1
  163. package/.claude/skills/regression-testing/scripts/validate-config.json +50 -0
  164. package/.claude/skills/risk-based-testing/SKILL.md +1 -1
  165. package/.claude/skills/risk-based-testing/scripts/validate-config.json +25 -0
  166. package/.claude/skills/security-testing/SKILL.md +1 -1
  167. package/.claude/skills/security-testing/evals/security-testing.yaml +1 -1
  168. package/.claude/skills/security-testing/scripts/validate-config.json +45 -0
  169. package/.claude/skills/security-visual-testing/SKILL.md +1 -1
  170. package/.claude/skills/security-visual-testing/scripts/validate-config.json +45 -0
  171. package/.claude/skills/sherlock-review/SKILL.md +1 -1
  172. package/.claude/skills/sherlock-review/scripts/validate-config.json +35 -0
  173. package/.claude/skills/shift-left-testing/SKILL.md +1 -1
  174. package/.claude/skills/shift-left-testing/scripts/validate-config.json +25 -0
  175. package/.claude/skills/shift-right-testing/SKILL.md +1 -1
  176. package/.claude/skills/shift-right-testing/scripts/validate-config.json +25 -0
  177. package/.claude/skills/skill-builder/SKILL.md +2 -2
  178. package/.claude/skills/skills-manifest.json +1 -1
  179. package/.claude/skills/tdd-london-chicago/SKILL.md +1 -1
  180. package/.claude/skills/tdd-london-chicago/scripts/validate-config.json +43 -0
  181. package/.claude/skills/test-automation-strategy/SKILL.md +1 -1
  182. package/.claude/skills/test-automation-strategy/scripts/validate-config.json +39 -0
  183. package/.claude/skills/test-data-management/SKILL.md +1 -1
  184. package/.claude/skills/test-data-management/evals/test-data-management.yaml +1 -1
  185. package/.claude/skills/test-data-management/scripts/validate-config.json +41 -0
  186. package/.claude/skills/test-design-techniques/SKILL.md +1 -1
  187. package/.claude/skills/test-design-techniques/scripts/validate-config.json +36 -0
  188. package/.claude/skills/test-reporting-analytics/SKILL.md +1 -1
  189. package/.claude/skills/test-reporting-analytics/scripts/validate-config.json +36 -0
  190. package/.claude/skills/testability-scoring/SKILL.md +1 -1
  191. package/.claude/skills/testability-scoring/scripts/validate-config.json +42 -0
  192. package/.claude/skills/trust-tier-manifest.json +106 -106
  193. package/.claude/skills/verification-quality/scripts/validate-config.json +36 -0
  194. package/.claude/skills/visual-testing-advanced/SKILL.md +1 -1
  195. package/.claude/skills/visual-testing-advanced/scripts/validate-config.json +38 -0
  196. package/.claude/skills/wms-testing-patterns/SKILL.md +1 -1
  197. package/.claude/skills/wms-testing-patterns/evals/wms-testing-patterns.yaml +165 -0
  198. package/.claude/skills/wms-testing-patterns/schemas/output.json +150 -0
  199. package/.claude/skills/wms-testing-patterns/scripts/validate-config.json +51 -0
  200. package/README.md +20 -20
  201. package/package.json +6 -6
  202. package/scripts/cloud-db-config.json +1 -1
  203. package/scripts/migrate-validators.cjs +171 -0
  204. package/scripts/postinstall.cjs +57 -0
  205. package/scripts/preinstall.cjs +28 -8
  206. package/scripts/test-schema-validation.js +2 -2
  207. package/scripts/update-skill-manifest.ts +3 -3
  208. package/scripts/validate-skill.cjs +384 -0
  209. package/scripts/validate-tier3.cjs +61 -0
  210. package/scripts/validator-lib.cjs +274 -0
  211. package/v3/CHANGELOG.md +32 -0
  212. package/v3/assets/agents/v3/qe-product-factors-assessor.md +19 -0
  213. package/v3/assets/agents/v3/qe-quality-criteria-recommender.md +2 -2
  214. package/v3/assets/agents/v3/qe-qx-partner.md +27 -0
  215. package/v3/assets/skills/.validation/README.md +1 -1
  216. package/v3/assets/skills/.validation/skill-validation-mcp-integration.md +1 -1
  217. package/v3/assets/skills/.validation/templates/skill-frontmatter.example.yaml +1 -1
  218. package/v3/assets/skills/accessibility-testing/SKILL.md +1 -1
  219. package/v3/assets/skills/accessibility-testing/scripts/validate-config.json +56 -0
  220. package/v3/assets/skills/api-testing-patterns/SKILL.md +1 -1
  221. package/v3/assets/skills/api-testing-patterns/scripts/validate-config.json +61 -0
  222. package/v3/assets/skills/bug-reporting-excellence/SKILL.md +1 -1
  223. package/v3/assets/skills/bug-reporting-excellence/scripts/validate-config.json +34 -0
  224. package/v3/assets/skills/chaos-engineering-resilience/SKILL.md +1 -1
  225. package/v3/assets/skills/chaos-engineering-resilience/evals/chaos-engineering-resilience.yaml +1 -1
  226. package/v3/assets/skills/chaos-engineering-resilience/scripts/validate-config.json +47 -0
  227. package/v3/assets/skills/code-review-quality/SKILL.md +1 -1
  228. package/v3/assets/skills/code-review-quality/scripts/validate-config.json +34 -0
  229. package/v3/assets/skills/compatibility-testing/SKILL.md +1 -1
  230. package/v3/assets/skills/compatibility-testing/scripts/validate-config.json +44 -0
  231. package/v3/assets/skills/compliance-testing/SKILL.md +1 -1
  232. package/v3/assets/skills/compliance-testing/scripts/validate-config.json +39 -0
  233. package/v3/assets/skills/contract-testing/SKILL.md +1 -1
  234. package/v3/assets/skills/contract-testing/scripts/validate-config.json +59 -0
  235. package/v3/assets/skills/database-testing/SKILL.md +1 -1
  236. package/v3/assets/skills/database-testing/evals/database-testing.yaml +1 -1
  237. package/v3/assets/skills/database-testing/scripts/validate-config.json +48 -0
  238. package/v3/assets/skills/enterprise-integration-testing/SKILL.md +1 -1
  239. package/v3/assets/skills/localization-testing/SKILL.md +1 -1
  240. package/v3/assets/skills/localization-testing/evals/localization-testing.yaml +1 -1
  241. package/v3/assets/skills/localization-testing/scripts/validate-config.json +42 -0
  242. package/v3/assets/skills/middleware-testing-patterns/SKILL.md +1 -1
  243. package/v3/assets/skills/mobile-testing/SKILL.md +1 -1
  244. package/v3/assets/skills/mobile-testing/evals/mobile-testing.yaml +1 -1
  245. package/v3/assets/skills/mobile-testing/scripts/validate-config.json +43 -0
  246. package/v3/assets/skills/mutation-testing/SKILL.md +1 -1
  247. package/v3/assets/skills/mutation-testing/scripts/validate-config.json +44 -0
  248. package/v3/assets/skills/observability-testing-patterns/SKILL.md +1 -1
  249. package/v3/assets/skills/pentest-validation/SKILL.md +1 -1
  250. package/v3/assets/skills/pentest-validation/evals/pentest-validation.yaml +1 -1
  251. package/v3/assets/skills/performance-testing/SKILL.md +1 -1
  252. package/v3/assets/skills/performance-testing/evals/performance-testing.yaml +1 -1
  253. package/v3/assets/skills/performance-testing/scripts/validate-config.json +55 -0
  254. package/v3/assets/skills/qcsd-cicd-swarm/SKILL.md +1 -1
  255. package/v3/assets/skills/qcsd-development-swarm/SKILL.md +1 -1
  256. package/v3/assets/skills/qcsd-ideation-swarm/SKILL.md +1 -1
  257. package/v3/assets/skills/qcsd-refinement-swarm/SKILL.md +1 -1
  258. package/v3/assets/skills/qe-chaos-resilience/SKILL.md +1 -1
  259. package/v3/assets/skills/qe-chaos-resilience/evals/qe-chaos-resilience.yaml +1 -1
  260. package/v3/assets/skills/qe-chaos-resilience/scripts/validate-config.json +43 -0
  261. package/v3/assets/skills/qe-code-intelligence/SKILL.md +1 -1
  262. package/v3/assets/skills/qe-code-intelligence/evals/qe-code-intelligence.yaml +1 -1
  263. package/v3/assets/skills/qe-code-intelligence/scripts/validate-config.json +41 -0
  264. package/v3/assets/skills/qe-contract-testing/SKILL.md +1 -1
  265. package/v3/assets/skills/qe-contract-testing/evals/qe-contract-testing.yaml +1 -1
  266. package/v3/assets/skills/qe-contract-testing/scripts/validate-config.json +42 -0
  267. package/v3/assets/skills/qe-coverage-analysis/SKILL.md +1 -1
  268. package/v3/assets/skills/qe-coverage-analysis/evals/qe-coverage-analysis.yaml +1 -1
  269. package/v3/assets/skills/qe-coverage-analysis/scripts/validate-config.json +42 -0
  270. package/v3/assets/skills/qe-defect-intelligence/SKILL.md +1 -1
  271. package/v3/assets/skills/qe-defect-intelligence/evals/qe-defect-intelligence.yaml +1 -1
  272. package/v3/assets/skills/qe-defect-intelligence/scripts/validate-config.json +40 -0
  273. package/v3/assets/skills/qe-iterative-loop/SKILL.md +1 -1
  274. package/v3/assets/skills/qe-iterative-loop/scripts/validate-config.json +40 -0
  275. package/v3/assets/skills/qe-learning-optimization/SKILL.md +1 -1
  276. package/v3/assets/skills/qe-learning-optimization/scripts/validate-config.json +25 -0
  277. package/v3/assets/skills/qe-quality-assessment/SKILL.md +1 -1
  278. package/v3/assets/skills/qe-quality-assessment/evals/qe-quality-assessment.yaml +1 -1
  279. package/v3/assets/skills/qe-quality-assessment/scripts/validate-config.json +47 -0
  280. package/v3/assets/skills/qe-requirements-validation/SKILL.md +1 -1
  281. package/v3/assets/skills/qe-requirements-validation/evals/qe-requirements-validation.yaml +1 -1
  282. package/v3/assets/skills/qe-requirements-validation/scripts/validate-config.json +37 -0
  283. package/v3/assets/skills/qe-security-compliance/SKILL.md +1 -1
  284. package/v3/assets/skills/qe-security-compliance/evals/qe-security-compliance.yaml +1 -1
  285. package/v3/assets/skills/qe-security-compliance/scripts/validate-config.json +41 -0
  286. package/v3/assets/skills/qe-test-execution/SKILL.md +1 -1
  287. package/v3/assets/skills/qe-test-execution/evals/qe-test-execution.yaml +1 -1
  288. package/v3/assets/skills/qe-test-execution/scripts/validate-config.json +37 -0
  289. package/v3/assets/skills/qe-test-generation/SKILL.md +1 -1
  290. package/v3/assets/skills/qe-test-generation/scripts/validate-config.json +25 -0
  291. package/v3/assets/skills/qe-visual-accessibility/SKILL.md +1 -1
  292. package/v3/assets/skills/qe-visual-accessibility/scripts/validate-config.json +25 -0
  293. package/v3/assets/skills/quality-metrics/SKILL.md +1 -1
  294. package/v3/assets/skills/quality-metrics/evals/quality-metrics.yaml +1 -1
  295. package/v3/assets/skills/quality-metrics/scripts/validate-config.json +43 -0
  296. package/v3/assets/skills/refactoring-patterns/SKILL.md +1 -1
  297. package/v3/assets/skills/refactoring-patterns/scripts/validate-config.json +35 -0
  298. package/v3/assets/skills/regression-testing/SKILL.md +1 -1
  299. package/v3/assets/skills/regression-testing/evals/regression-testing.yaml +1 -1
  300. package/v3/assets/skills/regression-testing/scripts/validate-config.json +50 -0
  301. package/v3/assets/skills/risk-based-testing/SKILL.md +1 -1
  302. package/v3/assets/skills/risk-based-testing/scripts/validate-config.json +25 -0
  303. package/v3/assets/skills/security-testing/SKILL.md +1 -1
  304. package/v3/assets/skills/security-testing/evals/security-testing.yaml +1 -1
  305. package/v3/assets/skills/security-testing/scripts/validate-config.json +45 -0
  306. package/v3/assets/skills/security-visual-testing/SKILL.md +1 -1
  307. package/v3/assets/skills/shift-left-testing/SKILL.md +1 -1
  308. package/v3/assets/skills/shift-left-testing/scripts/validate-config.json +25 -0
  309. package/v3/assets/skills/shift-right-testing/SKILL.md +1 -1
  310. package/v3/assets/skills/shift-right-testing/scripts/validate-config.json +25 -0
  311. package/v3/assets/skills/tdd-london-chicago/SKILL.md +1 -1
  312. package/v3/assets/skills/tdd-london-chicago/scripts/validate-config.json +43 -0
  313. package/v3/assets/skills/test-automation-strategy/SKILL.md +1 -1
  314. package/v3/assets/skills/test-automation-strategy/scripts/validate-config.json +39 -0
  315. package/v3/assets/skills/test-data-management/SKILL.md +1 -1
  316. package/v3/assets/skills/test-data-management/evals/test-data-management.yaml +1 -1
  317. package/v3/assets/skills/test-data-management/scripts/validate-config.json +41 -0
  318. package/v3/assets/skills/test-design-techniques/SKILL.md +1 -1
  319. package/v3/assets/skills/test-design-techniques/scripts/validate-config.json +36 -0
  320. package/v3/assets/skills/test-reporting-analytics/SKILL.md +1 -1
  321. package/v3/assets/skills/test-reporting-analytics/scripts/validate-config.json +36 -0
  322. package/v3/assets/skills/verification-quality/SKILL.md +0 -6
  323. package/v3/assets/skills/verification-quality/scripts/validate-config.json +36 -0
  324. package/v3/assets/skills/visual-testing-advanced/SKILL.md +1 -1
  325. package/v3/assets/skills/visual-testing-advanced/scripts/validate-config.json +38 -0
  326. package/v3/assets/skills/wms-testing-patterns/SKILL.md +1 -1
  327. package/v3/dist/adapters/claude-flow/model-router-bridge.js +3 -3
  328. package/v3/dist/adapters/claude-flow/model-router-bridge.js.map +1 -1
  329. package/v3/dist/adapters/claude-flow/pretrain-bridge.js +4 -4
  330. package/v3/dist/adapters/claude-flow/pretrain-bridge.js.map +1 -1
  331. package/v3/dist/adapters/claude-flow/trajectory-bridge.js +4 -4
  332. package/v3/dist/adapters/claude-flow/trajectory-bridge.js.map +1 -1
  333. package/v3/dist/cli/bundle.js +172 -159
  334. package/v3/dist/cli/commands/claude-flow-setup.js +3 -3
  335. package/v3/dist/cli/commands/claude-flow-setup.js.map +1 -1
  336. package/v3/dist/cli/commands/completions.d.ts.map +1 -1
  337. package/v3/dist/cli/commands/completions.js +2 -1
  338. package/v3/dist/cli/commands/completions.js.map +1 -1
  339. package/v3/dist/cli/commands/hooks.js +8 -8
  340. package/v3/dist/cli/commands/hooks.js.map +1 -1
  341. package/v3/dist/cli/completions/index.d.ts.map +1 -1
  342. package/v3/dist/cli/completions/index.js +4 -3
  343. package/v3/dist/cli/completions/index.js.map +1 -1
  344. package/v3/dist/domains/code-intelligence/services/metric-collector/test-counter.js +5 -5
  345. package/v3/dist/domains/code-intelligence/services/metric-collector/test-counter.js.map +1 -1
  346. package/v3/dist/domains/requirements-validation/services/quality-criteria/quality-criteria-service.js +1 -1
  347. package/v3/dist/domains/requirements-validation/services/quality-criteria/quality-criteria-service.js.map +1 -1
  348. package/v3/dist/init/agents-installer.d.ts +5 -1
  349. package/v3/dist/init/agents-installer.d.ts.map +1 -1
  350. package/v3/dist/init/agents-installer.js +13 -5
  351. package/v3/dist/init/agents-installer.js.map +1 -1
  352. package/v3/dist/init/enhancements/claude-flow-adapter.d.ts.map +1 -1
  353. package/v3/dist/init/enhancements/claude-flow-adapter.js +15 -12
  354. package/v3/dist/init/enhancements/claude-flow-adapter.js.map +1 -1
  355. package/v3/dist/init/enhancements/detector.js +2 -2
  356. package/v3/dist/init/enhancements/detector.js.map +1 -1
  357. package/v3/dist/init/init-wizard.d.ts.map +1 -1
  358. package/v3/dist/init/init-wizard.js +17 -33
  359. package/v3/dist/init/init-wizard.js.map +1 -1
  360. package/v3/dist/init/phases/07-hooks.js +9 -9
  361. package/v3/dist/init/phases/07-hooks.js.map +1 -1
  362. package/v3/dist/init/phases/10-workers.d.ts.map +1 -1
  363. package/v3/dist/init/phases/10-workers.js +74 -85
  364. package/v3/dist/init/phases/10-workers.js.map +1 -1
  365. package/v3/dist/init/phases/12-verification.d.ts.map +1 -1
  366. package/v3/dist/init/phases/12-verification.js +13 -1
  367. package/v3/dist/init/phases/12-verification.js.map +1 -1
  368. package/v3/dist/kernel/hybrid-backend.d.ts.map +1 -1
  369. package/v3/dist/kernel/hybrid-backend.js +4 -1
  370. package/v3/dist/kernel/hybrid-backend.js.map +1 -1
  371. package/v3/dist/kernel/memory-backend.d.ts.map +1 -1
  372. package/v3/dist/kernel/memory-backend.js +3 -0
  373. package/v3/dist/kernel/memory-backend.js.map +1 -1
  374. package/v3/dist/mcp/bundle.js +1340 -19
  375. package/v3/dist/mcp/tools/index.d.ts +2 -1
  376. package/v3/dist/mcp/tools/index.d.ts.map +1 -1
  377. package/v3/dist/mcp/tools/index.js +5 -1
  378. package/v3/dist/mcp/tools/index.js.map +1 -1
  379. package/v3/dist/mcp/tools/qx-analysis/analyze.d.ts +33 -0
  380. package/v3/dist/mcp/tools/qx-analysis/analyze.d.ts.map +1 -0
  381. package/v3/dist/mcp/tools/qx-analysis/analyze.js +679 -0
  382. package/v3/dist/mcp/tools/qx-analysis/analyze.js.map +1 -0
  383. package/v3/dist/mcp/tools/qx-analysis/heuristics-engine.d.ts +38 -0
  384. package/v3/dist/mcp/tools/qx-analysis/heuristics-engine.d.ts.map +1 -0
  385. package/v3/dist/mcp/tools/qx-analysis/heuristics-engine.js +458 -0
  386. package/v3/dist/mcp/tools/qx-analysis/heuristics-engine.js.map +1 -0
  387. package/v3/dist/mcp/tools/qx-analysis/impact-analyzer.d.ts +16 -0
  388. package/v3/dist/mcp/tools/qx-analysis/impact-analyzer.d.ts.map +1 -0
  389. package/v3/dist/mcp/tools/qx-analysis/impact-analyzer.js +175 -0
  390. package/v3/dist/mcp/tools/qx-analysis/impact-analyzer.js.map +1 -0
  391. package/v3/dist/mcp/tools/qx-analysis/index.d.ts +27 -0
  392. package/v3/dist/mcp/tools/qx-analysis/index.d.ts.map +1 -0
  393. package/v3/dist/mcp/tools/qx-analysis/index.js +34 -0
  394. package/v3/dist/mcp/tools/qx-analysis/index.js.map +1 -0
  395. package/v3/dist/mcp/tools/qx-analysis/oracle-detector.d.ts +22 -0
  396. package/v3/dist/mcp/tools/qx-analysis/oracle-detector.d.ts.map +1 -0
  397. package/v3/dist/mcp/tools/qx-analysis/oracle-detector.js +194 -0
  398. package/v3/dist/mcp/tools/qx-analysis/oracle-detector.js.map +1 -0
  399. package/v3/dist/mcp/tools/qx-analysis/types.d.ts +278 -0
  400. package/v3/dist/mcp/tools/qx-analysis/types.d.ts.map +1 -0
  401. package/v3/dist/mcp/tools/qx-analysis/types.js +46 -0
  402. package/v3/dist/mcp/tools/qx-analysis/types.js.map +1 -0
  403. package/v3/dist/mcp/tools/registry.d.ts +1 -0
  404. package/v3/dist/mcp/tools/registry.d.ts.map +1 -1
  405. package/v3/dist/mcp/tools/registry.js +5 -0
  406. package/v3/dist/mcp/tools/registry.js.map +1 -1
  407. package/v3/dist/sync/cloud/tunnel-manager.d.ts.map +1 -1
  408. package/v3/dist/sync/cloud/tunnel-manager.js +11 -0
  409. package/v3/dist/sync/cloud/tunnel-manager.js.map +1 -1
  410. package/v3/package.json +5 -5
  411. package/.claude/skills/.validation/templates/validate.template.sh +0 -1060
  412. package/.claude/skills/.validation/templates/validator-lib.sh +0 -1031
  413. package/.claude/skills/a11y-ally/scripts/validate.sh +0 -690
  414. package/.claude/skills/accessibility-testing/scripts/validate.sh +0 -943
  415. package/.claude/skills/api-testing-patterns/scripts/validate.sh +0 -931
  416. package/.claude/skills/brutal-honesty-review/scripts/validate.sh +0 -130
  417. package/.claude/skills/bug-reporting-excellence/scripts/validate.sh +0 -108
  418. package/.claude/skills/chaos-engineering-resilience/scripts/validate.sh +0 -1107
  419. package/.claude/skills/cicd-pipeline-qe-orchestrator/scripts/validate.sh +0 -310
  420. package/.claude/skills/code-review-quality/scripts/validate.sh +0 -113
  421. package/.claude/skills/compatibility-testing/scripts/validate.sh +0 -605
  422. package/.claude/skills/compliance-testing/scripts/validate.sh +0 -888
  423. package/.claude/skills/contract-testing/scripts/validate.sh +0 -1033
  424. package/.claude/skills/database-testing/scripts/validate.sh +0 -1099
  425. package/.claude/skills/localization-testing/scripts/validate.sh +0 -131
  426. package/.claude/skills/mobile-testing/scripts/validate.sh +0 -127
  427. package/.claude/skills/mutation-testing/scripts/validate.sh +0 -992
  428. package/.claude/skills/n8n-expression-testing/scripts/validate.sh +0 -162
  429. package/.claude/skills/n8n-integration-testing-patterns/scripts/validate.sh +0 -104
  430. package/.claude/skills/n8n-security-testing/scripts/validate.sh +0 -120
  431. package/.claude/skills/n8n-trigger-testing-strategies/scripts/validate.sh +0 -121
  432. package/.claude/skills/n8n-workflow-testing-fundamentals/scripts/validate.sh +0 -126
  433. package/.claude/skills/pentest-validation/scripts/validate.sh +0 -402
  434. package/.claude/skills/performance-analysis/scripts/validate.sh +0 -63
  435. package/.claude/skills/performance-testing/scripts/validate.sh +0 -1090
  436. package/.claude/skills/qcsd-ideation-swarm/scripts/validate.sh +0 -56
  437. package/.claude/skills/qcsd-refinement-swarm/scripts/validate.sh +0 -56
  438. package/.claude/skills/qe-chaos-resilience/scripts/validate.sh +0 -401
  439. package/.claude/skills/qe-code-intelligence/scripts/validate.sh +0 -408
  440. package/.claude/skills/qe-contract-testing/scripts/validate.sh +0 -421
  441. package/.claude/skills/qe-coverage-analysis/scripts/validate.sh +0 -453
  442. package/.claude/skills/qe-defect-intelligence/scripts/validate.sh +0 -466
  443. package/.claude/skills/qe-iterative-loop/scripts/validate.sh +0 -474
  444. package/.claude/skills/qe-learning-optimization/scripts/validate.sh +0 -56
  445. package/.claude/skills/qe-quality-assessment/scripts/validate.sh +0 -352
  446. package/.claude/skills/qe-requirements-validation/scripts/validate.sh +0 -275
  447. package/.claude/skills/qe-security-compliance/scripts/validate.sh +0 -305
  448. package/.claude/skills/qe-test-execution/scripts/validate.sh +0 -323
  449. package/.claude/skills/qe-test-generation/scripts/validate.sh +0 -56
  450. package/.claude/skills/qe-visual-accessibility/scripts/validate.sh +0 -56
  451. package/.claude/skills/quality-metrics/scripts/validate.sh +0 -434
  452. package/.claude/skills/refactoring-patterns/scripts/validate.sh +0 -241
  453. package/.claude/skills/regression-testing/scripts/validate.sh +0 -130
  454. package/.claude/skills/risk-based-testing/scripts/validate.sh +0 -56
  455. package/.claude/skills/security-testing/scripts/validate.sh +0 -967
  456. package/.claude/skills/security-visual-testing/scripts/validate.sh +0 -748
  457. package/.claude/skills/sherlock-review/scripts/validate.sh +0 -115
  458. package/.claude/skills/shift-left-testing/scripts/validate.sh +0 -56
  459. package/.claude/skills/shift-right-testing/scripts/validate.sh +0 -56
  460. package/.claude/skills/tdd-london-chicago/scripts/validate.sh +0 -214
  461. package/.claude/skills/test-automation-strategy/scripts/validate.sh +0 -195
  462. package/.claude/skills/test-data-management/scripts/validate.sh +0 -137
  463. package/.claude/skills/test-design-techniques/scripts/validate.sh +0 -91
  464. package/.claude/skills/test-reporting-analytics/scripts/validate.sh +0 -77
  465. package/.claude/skills/testability-scoring/scripts/validate.sh +0 -891
  466. package/.claude/skills/verification-quality/scripts/validate.sh +0 -77
  467. package/.claude/skills/visual-testing-advanced/scripts/validate.sh +0 -77
  468. package/v3/assets/skills/.validation/templates/validate.template.sh +0 -1060
  469. package/v3/assets/skills/.validation/templates/validator-lib.sh +0 -1031
  470. package/v3/assets/skills/accessibility-testing/scripts/validate.sh +0 -943
  471. package/v3/assets/skills/api-testing-patterns/scripts/validate.sh +0 -931
  472. package/v3/assets/skills/aqe-v2-v3-migration/skill.md +0 -326
  473. package/v3/assets/skills/bug-reporting-excellence/scripts/validate.sh +0 -108
  474. package/v3/assets/skills/chaos-engineering-resilience/scripts/validate.sh +0 -1107
  475. package/v3/assets/skills/code-review-quality/scripts/validate.sh +0 -113
  476. package/v3/assets/skills/compatibility-testing/scripts/validate.sh +0 -605
  477. package/v3/assets/skills/compliance-testing/scripts/validate.sh +0 -888
  478. package/v3/assets/skills/contract-testing/scripts/validate.sh +0 -1033
  479. package/v3/assets/skills/database-testing/scripts/validate.sh +0 -1099
  480. package/v3/assets/skills/localization-testing/scripts/validate.sh +0 -131
  481. package/v3/assets/skills/mobile-testing/scripts/validate.sh +0 -127
  482. package/v3/assets/skills/mutation-testing/scripts/validate.sh +0 -992
  483. package/v3/assets/skills/n8n-expression-testing/scripts/validate.sh +0 -162
  484. package/v3/assets/skills/n8n-integration-testing-patterns/scripts/validate.sh +0 -104
  485. package/v3/assets/skills/n8n-security-testing/scripts/validate.sh +0 -120
  486. package/v3/assets/skills/n8n-trigger-testing-strategies/scripts/validate.sh +0 -121
  487. package/v3/assets/skills/n8n-workflow-testing-fundamentals/scripts/validate.sh +0 -126
  488. package/v3/assets/skills/pentest-validation/scripts/validate.sh +0 -402
  489. package/v3/assets/skills/performance-testing/scripts/validate.sh +0 -1090
  490. package/v3/assets/skills/qe-chaos-resilience/scripts/validate.sh +0 -401
  491. package/v3/assets/skills/qe-code-intelligence/scripts/validate.sh +0 -408
  492. package/v3/assets/skills/qe-contract-testing/scripts/validate.sh +0 -421
  493. package/v3/assets/skills/qe-coverage-analysis/scripts/validate.sh +0 -453
  494. package/v3/assets/skills/qe-defect-intelligence/scripts/validate.sh +0 -466
  495. package/v3/assets/skills/qe-iterative-loop/scripts/validate.sh +0 -474
  496. package/v3/assets/skills/qe-learning-optimization/scripts/validate.sh +0 -56
  497. package/v3/assets/skills/qe-quality-assessment/scripts/validate.sh +0 -352
  498. package/v3/assets/skills/qe-requirements-validation/scripts/validate.sh +0 -275
  499. package/v3/assets/skills/qe-security-compliance/scripts/validate.sh +0 -305
  500. package/v3/assets/skills/qe-test-execution/scripts/validate.sh +0 -323
  501. package/v3/assets/skills/qe-test-generation/scripts/validate.sh +0 -56
  502. package/v3/assets/skills/qe-visual-accessibility/scripts/validate.sh +0 -56
  503. package/v3/assets/skills/quality-metrics/scripts/validate.sh +0 -434
  504. package/v3/assets/skills/refactoring-patterns/scripts/validate.sh +0 -241
  505. package/v3/assets/skills/regression-testing/scripts/validate.sh +0 -130
  506. package/v3/assets/skills/risk-based-testing/scripts/validate.sh +0 -56
  507. package/v3/assets/skills/security-testing/scripts/validate.sh +0 -967
  508. package/v3/assets/skills/security-visual-testing/scripts/validate.sh +0 -748
  509. package/v3/assets/skills/shift-left-testing/scripts/validate.sh +0 -56
  510. package/v3/assets/skills/shift-right-testing/scripts/validate.sh +0 -56
  511. package/v3/assets/skills/tdd-london-chicago/scripts/validate.sh +0 -214
  512. package/v3/assets/skills/test-automation-strategy/scripts/validate.sh +0 -195
  513. package/v3/assets/skills/test-data-management/scripts/validate.sh +0 -137
  514. package/v3/assets/skills/test-design-techniques/scripts/validate.sh +0 -91
  515. package/v3/assets/skills/test-reporting-analytics/scripts/validate.sh +0 -77
  516. package/v3/assets/skills/verification-quality/scripts/validate.sh +0 -77
  517. 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