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,241 +0,0 @@
1
- #!/bin/bash
2
- # =============================================================================
3
- # AQE Skill Validator: refactoring-patterns v1.0.0
4
- # =============================================================================
5
- set -euo pipefail
6
-
7
- SCRIPT_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)"
8
- SKILL_DIR="$(cd "$SCRIPT_DIR/.." && pwd)"
9
- PROJECT_ROOT="$(cd "$SKILL_DIR/../../.." && pwd)"
10
-
11
- for lib_path in "$PROJECT_ROOT/.claude/skills/.validation/templates/validator-lib.sh" "$SKILL_DIR/scripts/validator-lib.sh"; do
12
- [[ -f "$lib_path" ]] && source "$lib_path" && break
13
- done
14
-
15
- SKILL_NAME="refactoring-patterns"
16
- SKILL_VERSION="1.0.0"
17
- REQUIRED_TOOLS=("jq")
18
- SCHEMA_PATH="$SKILL_DIR/schemas/output.json"
19
- REQUIRED_FIELDS=("skillName" "status" "output" "output.summary" "output.refactorings")
20
- MUST_CONTAIN_TERMS=("refactor" "pattern" "smell")
21
- MUST_NOT_CONTAIN_TERMS=("TODO" "FIXME" "placeholder")
22
- ENUM_VALIDATIONS=(
23
- ".status:success,partial,failed,skipped"
24
- )
25
-
26
- validate_skill_specific() {
27
- local output_file="$1"
28
- local has_errors=false
29
-
30
- # Validate refactorings array
31
- local refactoring_count
32
- refactoring_count=$(jq '.output.refactorings | length' "$output_file" 2>/dev/null || echo "0")
33
-
34
- if [[ "$refactoring_count" -gt 0 ]]; then
35
- # Validate each refactoring has required fields
36
- local invalid_refactorings
37
- invalid_refactorings=$(jq '[.output.refactorings[]? | select(.id == null or .name == null or .category == null or .status == null)] | length' "$output_file" 2>/dev/null || echo "0")
38
-
39
- if [[ "$invalid_refactorings" -gt 0 ]]; then
40
- warn "$invalid_refactorings refactoring(s) missing required fields (id, name, category, status)"
41
- fi
42
-
43
- # Validate refactoring ID pattern
44
- local invalid_ids
45
- invalid_ids=$(jq '[.output.refactorings[]?.id // empty | select(test("^REF-[0-9]{3,6}$") | not)] | length' "$output_file" 2>/dev/null || echo "0")
46
-
47
- if [[ "$invalid_ids" -gt 0 ]]; then
48
- warn "$invalid_ids refactoring(s) have invalid ID format (should be REF-NNN)"
49
- fi
50
-
51
- # Validate refactoring categories
52
- local invalid_categories
53
- invalid_categories=$(jq '[.output.refactorings[]?.category // empty | select(IN("composing-methods", "moving-features", "organizing-data", "simplifying-conditional", "simplifying-method-calls", "dealing-with-generalization", "encapsulation", "inline", "extract") | not)] | length' "$output_file" 2>/dev/null || echo "0")
54
-
55
- if [[ "$invalid_categories" -gt 0 ]]; then
56
- warn "$invalid_categories refactoring(s) have invalid category values"
57
- fi
58
-
59
- # Validate refactoring status
60
- local invalid_status
61
- invalid_status=$(jq '[.output.refactorings[]?.status // empty | select(IN("applied", "suggested", "rejected", "in-progress") | not)] | length' "$output_file" 2>/dev/null || echo "0")
62
-
63
- if [[ "$invalid_status" -gt 0 ]]; then
64
- warn "$invalid_status refactoring(s) have invalid status values"
65
- fi
66
-
67
- # Validate risk levels
68
- local invalid_risks
69
- invalid_risks=$(jq '[.output.refactorings[]?.risk // empty | select(IN("low", "medium", "high") | not)] | length' "$output_file" 2>/dev/null || echo "0")
70
-
71
- if [[ "$invalid_risks" -gt 0 ]]; then
72
- warn "$invalid_risks refactoring(s) have invalid risk values"
73
- fi
74
-
75
- # Validate effort levels
76
- local invalid_efforts
77
- invalid_efforts=$(jq '[.output.refactorings[]?.effort // empty | select(IN("trivial", "low", "medium", "high", "major") | not)] | length' "$output_file" 2>/dev/null || echo "0")
78
-
79
- if [[ "$invalid_efforts" -gt 0 ]]; then
80
- warn "$invalid_efforts refactoring(s) have invalid effort values"
81
- fi
82
-
83
- # Validate impact scores if present
84
- local invalid_impacts
85
- invalid_impacts=$(jq '[.output.refactorings[]?.impact // empty | select(
86
- (.readability and (.readability < -10 or .readability > 10)) or
87
- (.maintainability and (.maintainability < -10 or .maintainability > 10)) or
88
- (.performance and (.performance < -10 or .performance > 10)) or
89
- (.testability and (.testability < -10 or .testability > 10))
90
- )] | length' "$output_file" 2>/dev/null || echo "0")
91
-
92
- if [[ "$invalid_impacts" -gt 0 ]]; then
93
- warn "$invalid_impacts refactoring(s) have impact scores out of range (-10 to 10)"
94
- fi
95
- fi
96
-
97
- # Validate code smells
98
- local smell_count
99
- smell_count=$(jq '.output.codeSmells | length' "$output_file" 2>/dev/null || echo "0")
100
-
101
- if [[ "$smell_count" -gt 0 ]]; then
102
- # Validate each smell has required fields
103
- local invalid_smells
104
- invalid_smells=$(jq '[.output.codeSmells[]? | select(.id == null or .name == null or .severity == null)] | length' "$output_file" 2>/dev/null || echo "0")
105
-
106
- if [[ "$invalid_smells" -gt 0 ]]; then
107
- warn "$invalid_smells code smell(s) missing required fields (id, name, severity)"
108
- fi
109
-
110
- # Validate smell ID pattern
111
- local invalid_smell_ids
112
- invalid_smell_ids=$(jq '[.output.codeSmells[]?.id // empty | select(test("^SMELL-[0-9]{3,6}$") | not)] | length' "$output_file" 2>/dev/null || echo "0")
113
-
114
- if [[ "$invalid_smell_ids" -gt 0 ]]; then
115
- warn "$invalid_smell_ids code smell(s) have invalid ID format (should be SMELL-NNN)"
116
- fi
117
-
118
- # Validate smell severity
119
- local invalid_smell_severities
120
- invalid_smell_severities=$(jq '[.output.codeSmells[]?.severity // empty | select(IN("critical", "high", "medium", "low", "info") | not)] | length' "$output_file" 2>/dev/null || echo "0")
121
-
122
- if [[ "$invalid_smell_severities" -gt 0 ]]; then
123
- warn "$invalid_smell_severities code smell(s) have invalid severity values"
124
- fi
125
-
126
- # Validate smell category
127
- local invalid_smell_categories
128
- invalid_smell_categories=$(jq '[.output.codeSmells[]?.category // empty | select(IN("bloaters", "oo-abusers", "change-preventers", "dispensables", "couplers") | not)] | length' "$output_file" 2>/dev/null || echo "0")
129
-
130
- if [[ "$invalid_smell_categories" -gt 0 ]]; then
131
- warn "$invalid_smell_categories code smell(s) have invalid category values"
132
- fi
133
- fi
134
-
135
- # Validate transformation summary if present
136
- local has_summary
137
- has_summary=$(jq 'has("output") and (.output | has("transformationSummary"))' "$output_file" 2>/dev/null)
138
-
139
- if [[ "$has_summary" == "true" ]]; then
140
- local applied suggested resolved remaining
141
- applied=$(jq '.output.transformationSummary.appliedRefactorings // 0' "$output_file" 2>/dev/null || echo "0")
142
- suggested=$(jq '.output.transformationSummary.suggestedRefactorings // 0' "$output_file" 2>/dev/null || echo "0")
143
- resolved=$(jq '.output.transformationSummary.codeSmellsResolved // 0' "$output_file" 2>/dev/null || echo "0")
144
- remaining=$(jq '.output.transformationSummary.codeSmellsRemaining // 0' "$output_file" 2>/dev/null || echo "0")
145
-
146
- # Warn if summary numbers don't make logical sense
147
- if [[ "$applied" -gt 0 && "$suggested" -eq 0 ]]; then
148
- info "Applied refactorings without suggestions (pure remediation)"
149
- fi
150
-
151
- if [[ "$resolved" -gt 0 && "$remaining" -eq 0 ]]; then
152
- info "All code smells resolved"
153
- fi
154
-
155
- # Validate behavior preservation flags
156
- local tests_preserved behavior_preserved
157
- tests_preserved=$(jq '.output.transformationSummary.testsPreserved // null' "$output_file" 2>/dev/null)
158
- behavior_preserved=$(jq '.output.transformationSummary.behaviorPreserved // null' "$output_file" 2>/dev/null)
159
-
160
- if [[ "$tests_preserved" == "false" || "$behavior_preserved" == "false" ]]; then
161
- warn "Tests or behavior was not preserved - refactoring may be risky"
162
- fi
163
- fi
164
-
165
- # Validate quality metrics if present
166
- local has_metrics
167
- has_metrics=$(jq 'has("output") and (.output | has("qualityMetrics"))' "$output_file" 2>/dev/null)
168
-
169
- if [[ "$has_metrics" == "true" ]]; then
170
- local before_loc after_loc
171
- before_loc=$(jq '.output.qualityMetrics.beforeRefactoring.linesOfCode // null' "$output_file" 2>/dev/null)
172
- after_loc=$(jq '.output.qualityMetrics.afterRefactoring.linesOfCode // null' "$output_file" 2>/dev/null)
173
-
174
- if [[ "$before_loc" != "null" && "$after_loc" != "null" && -n "$before_loc" && -n "$after_loc" ]]; then
175
- if [[ "$after_loc" -gt "$before_loc" ]]; then
176
- warn "Lines of code increased after refactoring (before: $before_loc, after: $after_loc)"
177
- fi
178
- fi
179
- fi
180
-
181
- # Validate findings if present
182
- local finding_count
183
- finding_count=$(jq '.output.findings | length' "$output_file" 2>/dev/null || echo "0")
184
-
185
- if [[ "$finding_count" -gt 0 ]]; then
186
- local invalid_findings
187
- invalid_findings=$(jq '[.output.findings[]? | select(.id == null or .title == null or .severity == null or .category == null)] | length' "$output_file" 2>/dev/null || echo "0")
188
-
189
- if [[ "$invalid_findings" -gt 0 ]]; then
190
- warn "$invalid_findings finding(s) missing required fields (id, title, severity, category)"
191
- fi
192
-
193
- # Validate finding ID pattern
194
- local invalid_finding_ids
195
- invalid_finding_ids=$(jq '[.output.findings[]?.id // empty | select(test("^RFP-[0-9]{3,6}$") | not)] | length' "$output_file" 2>/dev/null || echo "0")
196
-
197
- if [[ "$invalid_finding_ids" -gt 0 ]]; then
198
- warn "$invalid_finding_ids finding(s) have invalid ID format (should be RFP-NNN)"
199
- fi
200
- fi
201
-
202
- # Validate recommendations if present
203
- local rec_count
204
- rec_count=$(jq '.output.recommendations | length' "$output_file" 2>/dev/null || echo "0")
205
-
206
- if [[ "$rec_count" -gt 0 ]]; then
207
- local invalid_recs
208
- invalid_recs=$(jq '[.output.recommendations[]? | select(.id == null or .title == null or .priority == null)] | length' "$output_file" 2>/dev/null || echo "0")
209
-
210
- if [[ "$invalid_recs" -gt 0 ]]; then
211
- warn "$invalid_recs recommendation(s) missing required fields (id, title, priority)"
212
- fi
213
-
214
- # Validate recommendation ID pattern
215
- local invalid_rec_ids
216
- invalid_rec_ids=$(jq '[.output.recommendations[]?.id // empty | select(test("^REC-[0-9]{3,6}$") | not)] | length' "$output_file" 2>/dev/null || echo "0")
217
-
218
- if [[ "$invalid_rec_ids" -gt 0 ]]; then
219
- warn "$invalid_rec_ids recommendation(s) have invalid ID format (should be REC-NNN)"
220
- fi
221
- fi
222
-
223
- if [[ "$has_errors" == "true" ]]; then return 1; fi
224
- success "Refactoring patterns validation passed"
225
- return 0
226
- }
227
-
228
- OUTPUT_FILE="${1:-}"
229
- [[ -z "$OUTPUT_FILE" ]] && { echo "Usage: $0 <output-file>"; exit 1; }
230
- [[ ! -f "$OUTPUT_FILE" ]] && { echo "ERROR: File not found: $OUTPUT_FILE"; exit 1; }
231
-
232
- echo "Validating $SKILL_NAME output..."
233
- jq empty "$OUTPUT_FILE" 2>/dev/null || { echo "ERROR: Invalid JSON"; exit 1; }
234
-
235
- if validate_skill_specific "$OUTPUT_FILE"; then
236
- echo "PASSED: $SKILL_NAME validation"
237
- exit 0
238
- else
239
- echo "FAILED: $SKILL_NAME validation"
240
- exit 1
241
- fi
@@ -1,130 +0,0 @@
1
- #!/bin/bash
2
- # =============================================================================
3
- # AQE Regression Testing Skill Validator v1.0.0
4
- # Validates regression testing output including test selection and impact analysis
5
- # =============================================================================
6
-
7
- set -euo pipefail
8
-
9
- SCRIPT_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)"
10
- SKILL_DIR="$(cd "$SCRIPT_DIR/.." && pwd)"
11
- PROJECT_ROOT="$(cd "$SKILL_DIR/../../.." && pwd)"
12
-
13
- for lib_path in \
14
- "$PROJECT_ROOT/.claude/skills/.validation/templates/validator-lib.sh" \
15
- "$SKILL_DIR/scripts/validator-lib.sh"; do
16
- if [[ -f "$lib_path" ]]; then
17
- source "$lib_path"
18
- break
19
- fi
20
- done
21
-
22
- SKILL_NAME="regression-testing"
23
- SKILL_VERSION="1.0.0"
24
- REQUIRED_TOOLS=("jq")
25
- OPTIONAL_TOOLS=("ajv" "jsonschema" "python3")
26
- SCHEMA_PATH="$SKILL_DIR/schemas/output.json"
27
-
28
- REQUIRED_FIELDS=("skillName" "status" "output" "output.testSelection" "output.impactAnalysis" "output.metrics")
29
- REQUIRED_NON_EMPTY_FIELDS=("output.summary" "output.testSelection")
30
- MUST_CONTAIN_TERMS=("regression" "test")
31
- MUST_NOT_CONTAIN_TERMS=("TODO" "placeholder" "FIXME")
32
- ENUM_VALIDATIONS=(".status:success,partial,failed,skipped" ".output.testSelection.strategy:change-based,risk-based,historical,time-budget,full,smoke")
33
-
34
- OUTPUT_FILE=""
35
- SELF_TEST=false
36
- VERBOSE=false
37
- JSON_ONLY=false
38
-
39
- while [[ $# -gt 0 ]]; do
40
- case "$1" in
41
- --self-test) SELF_TEST=true; shift ;;
42
- --verbose|-v) VERBOSE=true; export AQE_DEBUG=1; shift ;;
43
- --json) JSON_ONLY=true; shift ;;
44
- --list-tools)
45
- echo "Regression Testing Validator Tools"
46
- for tool in "${REQUIRED_TOOLS[@]}"; do
47
- command_exists "$tool" && echo " [OK] $tool" || echo " [MISSING] $tool"
48
- done
49
- exit 0 ;;
50
- -h|--help) echo "Usage: $0 <output-file> [--self-test] [--verbose] [--json]"; exit 0 ;;
51
- -*) error "Unknown option: $1"; exit 1 ;;
52
- *) OUTPUT_FILE="$1"; shift ;;
53
- esac
54
- done
55
-
56
- if [[ "$SELF_TEST" == "true" ]]; then
57
- echo "Running $SKILL_NAME Validator Self-Test..."
58
- for tool in "${REQUIRED_TOOLS[@]}"; do
59
- command_exists "$tool" && success "Tool: $tool" || error "Missing: $tool"
60
- done
61
- [[ -f "$SCHEMA_PATH" ]] && success "Schema exists" || error "Schema missing"
62
- exit 0
63
- fi
64
-
65
- validate_skill_specific() {
66
- local output_file="$1"
67
- local has_errors=false
68
-
69
- # Check test selection strategy
70
- local strategy
71
- strategy=$(json_get "$output_file" ".output.testSelection.strategy" 2>/dev/null)
72
- if [[ -n "$strategy" ]] && [[ "$strategy" != "null" ]]; then
73
- success "Test selection strategy: $strategy"
74
- else
75
- error "Test selection strategy required"
76
- has_errors=true
77
- fi
78
-
79
- # Check selected vs total tests
80
- local total selected
81
- total=$(json_get "$output_file" ".output.testSelection.totalTests" 2>/dev/null)
82
- selected=$(json_get "$output_file" ".output.testSelection.selectedTests" 2>/dev/null)
83
- if [[ -n "$total" ]] && [[ -n "$selected" ]] && [[ "$total" != "null" ]] && [[ "$selected" != "null" ]]; then
84
- success "Test selection: $selected of $total tests"
85
- fi
86
-
87
- # Check risk coverage
88
- local risk_coverage
89
- risk_coverage=$(json_get "$output_file" ".output.testSelection.riskCoverage" 2>/dev/null)
90
- [[ -n "$risk_coverage" ]] && [[ "$risk_coverage" != "null" ]] && success "Risk coverage: $risk_coverage"
91
-
92
- # Check impact analysis
93
- local changed_files
94
- changed_files=$(json_count "$output_file" ".output.impactAnalysis.changedFiles" 2>/dev/null)
95
- [[ -n "$changed_files" ]] && success "Changed files analyzed: $changed_files"
96
-
97
- # Check finding format
98
- local finding_count
99
- finding_count=$(json_count "$output_file" ".output.findings" 2>/dev/null)
100
- if [[ -n "$finding_count" ]] && [[ "$finding_count" -gt 0 ]]; then
101
- local first_id
102
- first_id=$(json_get "$output_file" ".output.findings[0].id" 2>/dev/null)
103
- [[ "$first_id" =~ ^REG-[0-9]+$ ]] && success "Finding ID format valid" || warn "Finding ID should match REG-XXX"
104
- fi
105
-
106
- [[ "$has_errors" == "true" ]] && return 1
107
- success "Regression-specific validation passed"
108
- return 0
109
- }
110
-
111
- # Main validation
112
- [[ -z "$OUTPUT_FILE" ]] && { error "No output file specified"; exit 1; }
113
- [[ ! -f "$OUTPUT_FILE" ]] && { error "File not found: $OUTPUT_FILE"; exit 1; }
114
-
115
- for tool in "${REQUIRED_TOOLS[@]}"; do
116
- command_exists "$tool" || { error "Missing tool: $tool"; exit 2; }
117
- done
118
-
119
- validate_json "$OUTPUT_FILE" || { error "Invalid JSON"; exit 1; }
120
- [[ -f "$SCHEMA_PATH" ]] && validate_json_schema "$SCHEMA_PATH" "$OUTPUT_FILE"
121
-
122
- for field in "${REQUIRED_FIELDS[@]}"; do
123
- value=$(json_get "$OUTPUT_FILE" ".$field" 2>/dev/null)
124
- [[ -z "$value" ]] || [[ "$value" == "null" ]] && { error "Missing field: $field"; exit 1; }
125
- done
126
-
127
- validate_skill_specific "$OUTPUT_FILE" || exit 1
128
-
129
- success "Validation PASSED"
130
- exit 0
@@ -1,56 +0,0 @@
1
- #!/bin/bash
2
- set -euo pipefail
3
- SCRIPT_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)"
4
- SKILL_DIR="$(cd "$SCRIPT_DIR/.." && pwd)"
5
- PROJECT_ROOT="$(cd "$SKILL_DIR/../../.." && pwd)"
6
-
7
- VALIDATOR_LIB=""
8
- for lib_path in "$PROJECT_ROOT/.claude/skills/.validation/templates/validator-lib.sh" "$SKILL_DIR/scripts/validator-lib.sh"; do
9
- [[ -f "$lib_path" ]] && VALIDATOR_LIB="$lib_path" && break
10
- done
11
- [[ -n "$VALIDATOR_LIB" ]] && source "$VALIDATOR_LIB" || { echo "ERROR: Validator library not found"; exit 1; }
12
-
13
- SKILL_NAME="risk-based-testing"
14
- SKILL_VERSION="1.0.0"
15
- REQUIRED_TOOLS=("jq")
16
- SCHEMA_PATH="$SKILL_DIR/schemas/output.json"
17
- REQUIRED_FIELDS=("skillName" "status" "output")
18
- ENUM_VALIDATIONS=(".status:success,partial,failed,skipped")
19
-
20
- OUTPUT_FILE=""
21
- SELF_TEST=false
22
-
23
- while [[ $# -gt 0 ]]; do
24
- case "$1" in
25
- --self-test) SELF_TEST=true; shift ;;
26
- --verbose|-v|--json|--list-tools|-h|--help) shift ;;
27
- -*) shift ;;
28
- *) OUTPUT_FILE="$1"; shift ;;
29
- esac
30
- done
31
-
32
- if [[ "$SELF_TEST" == "true" ]]; then
33
- echo "Self-test for $SKILL_NAME passed"
34
- exit 0
35
- fi
36
-
37
- validate_skill_specific() {
38
- return 0
39
- }
40
-
41
- validate_tools() {
42
- for tool in "${REQUIRED_TOOLS[@]}"; do
43
- command_exists "$tool" || return 1
44
- done
45
- return 0
46
- }
47
-
48
- main() {
49
- [[ -z "$OUTPUT_FILE" || ! -f "$OUTPUT_FILE" ]] && exit 1
50
- validate_tools || exit 2
51
- validate_json "$OUTPUT_FILE" || exit 1
52
- validate_skill_specific || exit 1
53
- exit 0
54
- }
55
-
56
- main