agentic-qe 1.4.4 → 1.5.1

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 (390) hide show
  1. package/.claude/agents/qe-api-contract-validator.md +133 -27
  2. package/.claude/agents/qe-api-contract-validator.md.backup +1148 -0
  3. package/.claude/agents/qe-api-contract-validator.md.backup-20251107-134747 +1148 -0
  4. package/.claude/agents/qe-api-contract-validator.md.backup-phase2-20251107-140039 +1123 -0
  5. package/.claude/agents/qe-chaos-engineer.md +142 -23
  6. package/.claude/agents/qe-chaos-engineer.md.backup +808 -0
  7. package/.claude/agents/qe-chaos-engineer.md.backup-20251107-134747 +808 -0
  8. package/.claude/agents/qe-chaos-engineer.md.backup-phase2-20251107-140039 +787 -0
  9. package/.claude/agents/qe-code-complexity.md +111 -23
  10. package/.claude/agents/qe-code-complexity.md.backup +291 -0
  11. package/.claude/agents/qe-code-complexity.md.backup-20251107-134747 +291 -0
  12. package/.claude/agents/qe-code-complexity.md.backup-phase2-20251107-140039 +286 -0
  13. package/.claude/agents/qe-coverage-analyzer.md +306 -30
  14. package/.claude/agents/qe-coverage-analyzer.md.backup +467 -0
  15. package/.claude/agents/qe-coverage-analyzer.md.backup-20251107-134747 +467 -0
  16. package/.claude/agents/qe-coverage-analyzer.md.backup-phase2-20251107-140039 +438 -0
  17. package/.claude/agents/qe-deployment-readiness.md +84 -28
  18. package/.claude/agents/qe-deployment-readiness.md.backup +1166 -0
  19. package/.claude/agents/qe-deployment-readiness.md.backup-20251107-134747 +1166 -0
  20. package/.claude/agents/qe-deployment-readiness.md.backup-phase2-20251107-140039 +1140 -0
  21. package/.claude/agents/qe-flaky-test-hunter.md +277 -35
  22. package/.claude/agents/qe-flaky-test-hunter.md.backup +1195 -0
  23. package/.claude/agents/qe-flaky-test-hunter.md.backup-20251107-134747 +1195 -0
  24. package/.claude/agents/qe-flaky-test-hunter.md.backup-phase2-20251107-140039 +1162 -0
  25. package/.claude/agents/qe-fleet-commander.md +126 -23
  26. package/.claude/agents/qe-fleet-commander.md.backup +718 -0
  27. package/.claude/agents/qe-fleet-commander.md.backup-20251107-134747 +718 -0
  28. package/.claude/agents/qe-fleet-commander.md.backup-phase2-20251107-140039 +697 -0
  29. package/.claude/agents/qe-performance-tester.md +314 -57
  30. package/.claude/agents/qe-performance-tester.md.backup +428 -0
  31. package/.claude/agents/qe-performance-tester.md.backup-20251107-134747 +428 -0
  32. package/.claude/agents/qe-performance-tester.md.backup-phase2-20251107-140039 +372 -0
  33. package/.claude/agents/qe-production-intelligence.md +126 -27
  34. package/.claude/agents/qe-production-intelligence.md.backup +1219 -0
  35. package/.claude/agents/qe-production-intelligence.md.backup-20251107-134747 +1219 -0
  36. package/.claude/agents/qe-production-intelligence.md.backup-phase2-20251107-140039 +1194 -0
  37. package/.claude/agents/qe-quality-analyzer.md +127 -32
  38. package/.claude/agents/qe-quality-analyzer.md.backup +425 -0
  39. package/.claude/agents/qe-quality-analyzer.md.backup-20251107-134747 +425 -0
  40. package/.claude/agents/qe-quality-analyzer.md.backup-phase2-20251107-140039 +394 -0
  41. package/.claude/agents/qe-quality-gate.md +148 -33
  42. package/.claude/agents/qe-quality-gate.md.backup +446 -0
  43. package/.claude/agents/qe-quality-gate.md.backup-20251107-134747 +446 -0
  44. package/.claude/agents/qe-quality-gate.md.backup-phase2-20251107-140039 +415 -0
  45. package/.claude/agents/qe-regression-risk-analyzer.md +78 -27
  46. package/.claude/agents/qe-regression-risk-analyzer.md.backup +1009 -0
  47. package/.claude/agents/qe-regression-risk-analyzer.md.backup-20251107-134747 +1009 -0
  48. package/.claude/agents/qe-regression-risk-analyzer.md.backup-phase2-20251107-140039 +984 -0
  49. package/.claude/agents/qe-requirements-validator.md +131 -27
  50. package/.claude/agents/qe-requirements-validator.md.backup +748 -0
  51. package/.claude/agents/qe-requirements-validator.md.backup-20251107-134747 +748 -0
  52. package/.claude/agents/qe-requirements-validator.md.backup-phase2-20251107-140039 +723 -0
  53. package/.claude/agents/qe-security-scanner.md +137 -62
  54. package/.claude/agents/qe-security-scanner.md.backup +634 -0
  55. package/.claude/agents/qe-security-scanner.md.backup-20251107-134747 +634 -0
  56. package/.claude/agents/qe-security-scanner.md.backup-phase2-20251107-140039 +573 -0
  57. package/.claude/agents/qe-test-data-architect.md +129 -26
  58. package/.claude/agents/qe-test-data-architect.md.backup +1064 -0
  59. package/.claude/agents/qe-test-data-architect.md.backup-20251107-134747 +1064 -0
  60. package/.claude/agents/qe-test-data-architect.md.backup-phase2-20251107-140039 +1040 -0
  61. package/.claude/agents/qe-test-executor.md +165 -21
  62. package/.claude/agents/qe-test-executor.md.backup +389 -0
  63. package/.claude/agents/qe-test-executor.md.backup-20251107-134747 +389 -0
  64. package/.claude/agents/qe-test-executor.md.backup-phase2-20251107-140039 +369 -0
  65. package/.claude/agents/qe-test-generator.md +379 -34
  66. package/.claude/agents/qe-test-generator.md.backup +997 -0
  67. package/.claude/agents/qe-test-generator.md.backup-20251107-134747 +997 -0
  68. package/.claude/agents/qe-visual-tester.md +236 -23
  69. package/.claude/agents/qe-visual-tester.md.backup +777 -0
  70. package/.claude/agents/qe-visual-tester.md.backup-20251107-134747 +777 -0
  71. package/.claude/agents/qe-visual-tester.md.backup-phase2-20251107-140039 +756 -0
  72. package/.claude/agents/subagents/qe-code-reviewer.md +59 -0
  73. package/.claude/agents/subagents/qe-data-generator.md +60 -0
  74. package/.claude/agents/subagents/qe-integration-tester.md +77 -0
  75. package/.claude/agents/subagents/qe-performance-validator.md +55 -0
  76. package/.claude/agents/subagents/qe-security-auditor.md +51 -0
  77. package/.claude/agents/subagents/qe-test-implementer.md +371 -0
  78. package/.claude/agents/subagents/qe-test-refactorer.md +510 -0
  79. package/.claude/agents/subagents/qe-test-writer.md +603 -0
  80. package/.claude/skills/accessibility-testing/SKILL.md +764 -777
  81. package/.claude/skills/agentic-quality-engineering/SKILL.md +0 -6
  82. package/.claude/skills/api-testing-patterns/SKILL.md +0 -12
  83. package/.claude/skills/bug-reporting-excellence/SKILL.md +0 -6
  84. package/.claude/skills/chaos-engineering-resilience/SKILL.md +0 -6
  85. package/.claude/skills/code-review-quality/SKILL.md +0 -6
  86. package/.claude/skills/compatibility-testing/SKILL.md +0 -6
  87. package/.claude/skills/compliance-testing/SKILL.md +0 -6
  88. package/.claude/skills/consultancy-practices/SKILL.md +0 -6
  89. package/.claude/skills/context-driven-testing/SKILL.md +0 -6
  90. package/.claude/skills/contract-testing/SKILL.md +0 -6
  91. package/.claude/skills/database-testing/SKILL.md +0 -6
  92. package/.claude/skills/exploratory-testing-advanced/SKILL.md +0 -6
  93. package/.claude/skills/holistic-testing-pact/SKILL.md +0 -6
  94. package/.claude/skills/localization-testing/SKILL.md +0 -6
  95. package/.claude/skills/mobile-testing/SKILL.md +535 -548
  96. package/.claude/skills/mutation-testing/SKILL.md +0 -6
  97. package/.claude/skills/performance-testing/SKILL.md +0 -6
  98. package/.claude/skills/quality-metrics/SKILL.md +0 -12
  99. package/.claude/skills/refactoring-patterns/SKILL.md +0 -6
  100. package/.claude/skills/regression-testing/SKILL.md +1033 -1045
  101. package/.claude/skills/risk-based-testing/SKILL.md +0 -12
  102. package/.claude/skills/security-testing/SKILL.md +0 -6
  103. package/.claude/skills/shift-left-testing/SKILL.md +529 -535
  104. package/.claude/skills/shift-right-testing/SKILL.md +585 -591
  105. package/.claude/skills/tdd-london-chicago/SKILL.md +0 -6
  106. package/.claude/skills/technical-writing/SKILL.md +0 -6
  107. package/.claude/skills/test-automation-strategy/SKILL.md +0 -6
  108. package/.claude/skills/test-data-management/SKILL.md +1054 -1067
  109. package/.claude/skills/test-design-techniques/SKILL.md +0 -6
  110. package/.claude/skills/test-environment-management/SKILL.md +0 -6
  111. package/.claude/skills/test-reporting-analytics/SKILL.md +0 -6
  112. package/.claude/skills/visual-testing-advanced/SKILL.md +0 -6
  113. package/.claude/skills/xp-practices/SKILL.md +0 -6
  114. package/CHANGELOG.md +426 -5
  115. package/README.md +24 -19
  116. package/dist/cli/commands/init.d.ts +4 -0
  117. package/dist/cli/commands/init.d.ts.map +1 -1
  118. package/dist/cli/commands/init.js +97 -44
  119. package/dist/cli/commands/init.js.map +1 -1
  120. package/dist/mcp/handlers/coordination/index.d.ts +14 -14
  121. package/dist/mcp/handlers/coordination/index.d.ts.map +1 -1
  122. package/dist/mcp/handlers/coordination/index.js +14 -14
  123. package/dist/mcp/handlers/coordination/index.js.map +1 -1
  124. package/dist/mcp/handlers/phase2/Phase2Tools.d.ts.map +1 -1
  125. package/dist/mcp/handlers/phase2/Phase2Tools.js +39 -10
  126. package/dist/mcp/handlers/phase2/Phase2Tools.js.map +1 -1
  127. package/dist/mcp/handlers/phase3/Phase3DomainTools.d.ts +63 -0
  128. package/dist/mcp/handlers/phase3/Phase3DomainTools.d.ts.map +1 -0
  129. package/dist/mcp/handlers/phase3/Phase3DomainTools.js +885 -0
  130. package/dist/mcp/handlers/phase3/Phase3DomainTools.js.map +1 -0
  131. package/dist/mcp/handlers/phase3/index.d.ts +6 -0
  132. package/dist/mcp/handlers/phase3/index.d.ts.map +1 -0
  133. package/dist/mcp/handlers/phase3/index.js +10 -0
  134. package/dist/mcp/handlers/phase3/index.js.map +1 -0
  135. package/dist/mcp/handlers/prediction/index.d.ts +10 -10
  136. package/dist/mcp/handlers/prediction/index.d.ts.map +1 -1
  137. package/dist/mcp/handlers/prediction/index.js +10 -10
  138. package/dist/mcp/handlers/prediction/index.js.map +1 -1
  139. package/dist/mcp/handlers/security/check-authz.d.ts +152 -0
  140. package/dist/mcp/handlers/security/check-authz.d.ts.map +1 -0
  141. package/dist/mcp/handlers/security/check-authz.js +434 -0
  142. package/dist/mcp/handlers/security/check-authz.js.map +1 -0
  143. package/dist/mcp/handlers/security/generate-report.d.ts +156 -0
  144. package/dist/mcp/handlers/security/generate-report.d.ts.map +1 -0
  145. package/dist/mcp/handlers/security/generate-report.js +469 -0
  146. package/dist/mcp/handlers/security/generate-report.js.map +1 -0
  147. package/dist/mcp/handlers/security/index.d.ts +80 -0
  148. package/dist/mcp/handlers/security/index.d.ts.map +1 -0
  149. package/dist/mcp/handlers/security/index.js +91 -0
  150. package/dist/mcp/handlers/security/index.js.map +1 -0
  151. package/dist/mcp/handlers/security/scan-comprehensive.d.ts +66 -0
  152. package/dist/mcp/handlers/security/scan-comprehensive.d.ts.map +1 -0
  153. package/dist/mcp/handlers/security/scan-comprehensive.js +296 -0
  154. package/dist/mcp/handlers/security/scan-comprehensive.js.map +1 -0
  155. package/dist/mcp/handlers/security/scan-dependencies.d.ts +148 -0
  156. package/dist/mcp/handlers/security/scan-dependencies.d.ts.map +1 -0
  157. package/dist/mcp/handlers/security/scan-dependencies.js +354 -0
  158. package/dist/mcp/handlers/security/scan-dependencies.js.map +1 -0
  159. package/dist/mcp/handlers/security/validate-auth.d.ts +128 -0
  160. package/dist/mcp/handlers/security/validate-auth.d.ts.map +1 -0
  161. package/dist/mcp/handlers/security/validate-auth.js +294 -0
  162. package/dist/mcp/handlers/security/validate-auth.js.map +1 -0
  163. package/dist/mcp/handlers/test/generate-integration-tests.d.ts +95 -0
  164. package/dist/mcp/handlers/test/generate-integration-tests.d.ts.map +1 -0
  165. package/dist/mcp/handlers/test/generate-integration-tests.js +286 -0
  166. package/dist/mcp/handlers/test/generate-integration-tests.js.map +1 -0
  167. package/dist/mcp/handlers/test/generate-unit-tests.d.ts +89 -0
  168. package/dist/mcp/handlers/test/generate-unit-tests.d.ts.map +1 -0
  169. package/dist/mcp/handlers/test/generate-unit-tests.js +273 -0
  170. package/dist/mcp/handlers/test/generate-unit-tests.js.map +1 -0
  171. package/dist/mcp/handlers/test/optimize-test-suite.d.ts +97 -0
  172. package/dist/mcp/handlers/test/optimize-test-suite.d.ts.map +1 -0
  173. package/dist/mcp/handlers/test/optimize-test-suite.js +282 -0
  174. package/dist/mcp/handlers/test/optimize-test-suite.js.map +1 -0
  175. package/dist/mcp/server.d.ts.map +1 -1
  176. package/dist/mcp/server.js +211 -0
  177. package/dist/mcp/server.js.map +1 -1
  178. package/dist/mcp/tools/deprecated.d.ts +1390 -0
  179. package/dist/mcp/tools/deprecated.d.ts.map +1 -0
  180. package/dist/mcp/tools/deprecated.js +859 -0
  181. package/dist/mcp/tools/deprecated.js.map +1 -0
  182. package/dist/mcp/tools/qe/api-contract/index.d.ts +138 -0
  183. package/dist/mcp/tools/qe/api-contract/index.d.ts.map +1 -0
  184. package/dist/mcp/tools/qe/api-contract/index.js +572 -0
  185. package/dist/mcp/tools/qe/api-contract/index.js.map +1 -0
  186. package/dist/mcp/tools/qe/code-quality/analyze-complexity.d.ts +110 -0
  187. package/dist/mcp/tools/qe/code-quality/analyze-complexity.d.ts.map +1 -0
  188. package/dist/mcp/tools/qe/code-quality/analyze-complexity.js +381 -0
  189. package/dist/mcp/tools/qe/code-quality/analyze-complexity.js.map +1 -0
  190. package/dist/mcp/tools/qe/code-quality/calculate-quality-metrics.d.ts +115 -0
  191. package/dist/mcp/tools/qe/code-quality/calculate-quality-metrics.d.ts.map +1 -0
  192. package/dist/mcp/tools/qe/code-quality/calculate-quality-metrics.js +461 -0
  193. package/dist/mcp/tools/qe/code-quality/calculate-quality-metrics.js.map +1 -0
  194. package/dist/mcp/tools/qe/code-quality/index.d.ts +12 -0
  195. package/dist/mcp/tools/qe/code-quality/index.d.ts.map +1 -0
  196. package/dist/mcp/tools/qe/code-quality/index.js +30 -0
  197. package/dist/mcp/tools/qe/code-quality/index.js.map +1 -0
  198. package/dist/mcp/tools/qe/coverage/analyze-with-risk-scoring.d.ts +58 -0
  199. package/dist/mcp/tools/qe/coverage/analyze-with-risk-scoring.d.ts.map +1 -0
  200. package/dist/mcp/tools/qe/coverage/analyze-with-risk-scoring.js +172 -0
  201. package/dist/mcp/tools/qe/coverage/analyze-with-risk-scoring.js.map +1 -0
  202. package/dist/mcp/tools/qe/coverage/calculate-trends.d.ts +73 -0
  203. package/dist/mcp/tools/qe/coverage/calculate-trends.d.ts.map +1 -0
  204. package/dist/mcp/tools/qe/coverage/calculate-trends.js +240 -0
  205. package/dist/mcp/tools/qe/coverage/calculate-trends.js.map +1 -0
  206. package/dist/mcp/tools/qe/coverage/detect-gaps-ml.d.ts +38 -0
  207. package/dist/mcp/tools/qe/coverage/detect-gaps-ml.d.ts.map +1 -0
  208. package/dist/mcp/tools/qe/coverage/detect-gaps-ml.js +204 -0
  209. package/dist/mcp/tools/qe/coverage/detect-gaps-ml.js.map +1 -0
  210. package/dist/mcp/tools/qe/coverage/index.d.ts +12 -0
  211. package/dist/mcp/tools/qe/coverage/index.d.ts.map +1 -0
  212. package/dist/mcp/tools/qe/coverage/index.js +23 -0
  213. package/dist/mcp/tools/qe/coverage/index.js.map +1 -0
  214. package/dist/mcp/tools/qe/coverage/recommend-tests.d.ts +46 -0
  215. package/dist/mcp/tools/qe/coverage/recommend-tests.d.ts.map +1 -0
  216. package/dist/mcp/tools/qe/coverage/recommend-tests.js +248 -0
  217. package/dist/mcp/tools/qe/coverage/recommend-tests.js.map +1 -0
  218. package/dist/mcp/tools/qe/flaky-detection/analyze-patterns.d.ts +179 -0
  219. package/dist/mcp/tools/qe/flaky-detection/analyze-patterns.d.ts.map +1 -0
  220. package/dist/mcp/tools/qe/flaky-detection/analyze-patterns.js +554 -0
  221. package/dist/mcp/tools/qe/flaky-detection/analyze-patterns.js.map +1 -0
  222. package/dist/mcp/tools/qe/flaky-detection/detect-statistical.d.ts +172 -0
  223. package/dist/mcp/tools/qe/flaky-detection/detect-statistical.d.ts.map +1 -0
  224. package/dist/mcp/tools/qe/flaky-detection/detect-statistical.js +498 -0
  225. package/dist/mcp/tools/qe/flaky-detection/detect-statistical.js.map +1 -0
  226. package/dist/mcp/tools/qe/flaky-detection/index.d.ts +35 -0
  227. package/dist/mcp/tools/qe/flaky-detection/index.d.ts.map +1 -0
  228. package/dist/mcp/tools/qe/flaky-detection/index.js +66 -0
  229. package/dist/mcp/tools/qe/flaky-detection/index.js.map +1 -0
  230. package/dist/mcp/tools/qe/flaky-detection/stabilize-auto.d.ts +159 -0
  231. package/dist/mcp/tools/qe/flaky-detection/stabilize-auto.d.ts.map +1 -0
  232. package/dist/mcp/tools/qe/flaky-detection/stabilize-auto.js +462 -0
  233. package/dist/mcp/tools/qe/flaky-detection/stabilize-auto.js.map +1 -0
  234. package/dist/mcp/tools/qe/fleet/index.d.ts +422 -0
  235. package/dist/mcp/tools/qe/fleet/index.d.ts.map +1 -0
  236. package/dist/mcp/tools/qe/fleet/index.js +652 -0
  237. package/dist/mcp/tools/qe/fleet/index.js.map +1 -0
  238. package/dist/mcp/tools/qe/performance/analyze-bottlenecks.d.ts +180 -0
  239. package/dist/mcp/tools/qe/performance/analyze-bottlenecks.d.ts.map +1 -0
  240. package/dist/mcp/tools/qe/performance/analyze-bottlenecks.js +347 -0
  241. package/dist/mcp/tools/qe/performance/analyze-bottlenecks.js.map +1 -0
  242. package/dist/mcp/tools/qe/performance/generate-report.d.ts +146 -0
  243. package/dist/mcp/tools/qe/performance/generate-report.d.ts.map +1 -0
  244. package/dist/mcp/tools/qe/performance/generate-report.js +354 -0
  245. package/dist/mcp/tools/qe/performance/generate-report.js.map +1 -0
  246. package/dist/mcp/tools/qe/performance/index.d.ts +13 -0
  247. package/dist/mcp/tools/qe/performance/index.d.ts.map +1 -0
  248. package/dist/mcp/tools/qe/performance/index.js +24 -0
  249. package/dist/mcp/tools/qe/performance/index.js.map +1 -0
  250. package/dist/mcp/tools/qe/performance/monitor-realtime.d.ts +120 -0
  251. package/dist/mcp/tools/qe/performance/monitor-realtime.d.ts.map +1 -0
  252. package/dist/mcp/tools/qe/performance/monitor-realtime.js +215 -0
  253. package/dist/mcp/tools/qe/performance/monitor-realtime.js.map +1 -0
  254. package/dist/mcp/tools/qe/performance/run-benchmark.d.ts +68 -0
  255. package/dist/mcp/tools/qe/performance/run-benchmark.d.ts.map +1 -0
  256. package/dist/mcp/tools/qe/performance/run-benchmark.js +120 -0
  257. package/dist/mcp/tools/qe/performance/run-benchmark.js.map +1 -0
  258. package/dist/mcp/tools/qe/quality-gates/assess-deployment-risk.d.ts +239 -0
  259. package/dist/mcp/tools/qe/quality-gates/assess-deployment-risk.d.ts.map +1 -0
  260. package/dist/mcp/tools/qe/quality-gates/assess-deployment-risk.js +671 -0
  261. package/dist/mcp/tools/qe/quality-gates/assess-deployment-risk.js.map +1 -0
  262. package/dist/mcp/tools/qe/quality-gates/evaluate-quality-gate.d.ts +219 -0
  263. package/dist/mcp/tools/qe/quality-gates/evaluate-quality-gate.d.ts.map +1 -0
  264. package/dist/mcp/tools/qe/quality-gates/evaluate-quality-gate.js +732 -0
  265. package/dist/mcp/tools/qe/quality-gates/evaluate-quality-gate.js.map +1 -0
  266. package/dist/mcp/tools/qe/quality-gates/generate-quality-report.d.ts +447 -0
  267. package/dist/mcp/tools/qe/quality-gates/generate-quality-report.d.ts.map +1 -0
  268. package/dist/mcp/tools/qe/quality-gates/generate-quality-report.js +551 -0
  269. package/dist/mcp/tools/qe/quality-gates/generate-quality-report.js.map +1 -0
  270. package/dist/mcp/tools/qe/quality-gates/index.d.ts +40 -0
  271. package/dist/mcp/tools/qe/quality-gates/index.d.ts.map +1 -0
  272. package/dist/mcp/tools/qe/quality-gates/index.js +56 -0
  273. package/dist/mcp/tools/qe/quality-gates/index.js.map +1 -0
  274. package/dist/mcp/tools/qe/quality-gates/validate-quality-metrics.d.ts +226 -0
  275. package/dist/mcp/tools/qe/quality-gates/validate-quality-metrics.d.ts.map +1 -0
  276. package/dist/mcp/tools/qe/quality-gates/validate-quality-metrics.js +603 -0
  277. package/dist/mcp/tools/qe/quality-gates/validate-quality-metrics.js.map +1 -0
  278. package/dist/mcp/tools/qe/regression/analyze-risk.d.ts +212 -0
  279. package/dist/mcp/tools/qe/regression/analyze-risk.d.ts.map +1 -0
  280. package/dist/mcp/tools/qe/regression/analyze-risk.js +617 -0
  281. package/dist/mcp/tools/qe/regression/analyze-risk.js.map +1 -0
  282. package/dist/mcp/tools/qe/regression/index.d.ts +36 -0
  283. package/dist/mcp/tools/qe/regression/index.d.ts.map +1 -0
  284. package/dist/mcp/tools/qe/regression/index.js +63 -0
  285. package/dist/mcp/tools/qe/regression/index.js.map +1 -0
  286. package/dist/mcp/tools/qe/regression/select-tests.d.ts +241 -0
  287. package/dist/mcp/tools/qe/regression/select-tests.d.ts.map +1 -0
  288. package/dist/mcp/tools/qe/regression/select-tests.js +601 -0
  289. package/dist/mcp/tools/qe/regression/select-tests.js.map +1 -0
  290. package/dist/mcp/tools/qe/requirements/generate-bdd-scenarios.d.ts +134 -0
  291. package/dist/mcp/tools/qe/requirements/generate-bdd-scenarios.d.ts.map +1 -0
  292. package/dist/mcp/tools/qe/requirements/generate-bdd-scenarios.js +737 -0
  293. package/dist/mcp/tools/qe/requirements/generate-bdd-scenarios.js.map +1 -0
  294. package/dist/mcp/tools/qe/requirements/index.d.ts +40 -0
  295. package/dist/mcp/tools/qe/requirements/index.d.ts.map +1 -0
  296. package/dist/mcp/tools/qe/requirements/index.js +84 -0
  297. package/dist/mcp/tools/qe/requirements/index.js.map +1 -0
  298. package/dist/mcp/tools/qe/requirements/validate-requirements.d.ts +196 -0
  299. package/dist/mcp/tools/qe/requirements/validate-requirements.d.ts.map +1 -0
  300. package/dist/mcp/tools/qe/requirements/validate-requirements.js +740 -0
  301. package/dist/mcp/tools/qe/requirements/validate-requirements.js.map +1 -0
  302. package/dist/mcp/tools/qe/security/detect-vulnerabilities.d.ts +300 -0
  303. package/dist/mcp/tools/qe/security/detect-vulnerabilities.d.ts.map +1 -0
  304. package/dist/mcp/tools/qe/security/detect-vulnerabilities.js +492 -0
  305. package/dist/mcp/tools/qe/security/detect-vulnerabilities.js.map +1 -0
  306. package/dist/mcp/tools/qe/security/index.d.ts +34 -0
  307. package/dist/mcp/tools/qe/security/index.d.ts.map +1 -0
  308. package/dist/mcp/tools/qe/security/index.js +44 -0
  309. package/dist/mcp/tools/qe/security/index.js.map +1 -0
  310. package/dist/mcp/tools/qe/security/scan-comprehensive.d.ts +240 -0
  311. package/dist/mcp/tools/qe/security/scan-comprehensive.d.ts.map +1 -0
  312. package/dist/mcp/tools/qe/security/scan-comprehensive.js +557 -0
  313. package/dist/mcp/tools/qe/security/scan-comprehensive.js.map +1 -0
  314. package/dist/mcp/tools/qe/security/validate-compliance.d.ts +299 -0
  315. package/dist/mcp/tools/qe/security/validate-compliance.d.ts.map +1 -0
  316. package/dist/mcp/tools/qe/security/validate-compliance.js +517 -0
  317. package/dist/mcp/tools/qe/security/validate-compliance.js.map +1 -0
  318. package/dist/mcp/tools/qe/shared/types.d.ts +840 -0
  319. package/dist/mcp/tools/qe/shared/types.d.ts.map +1 -0
  320. package/dist/mcp/tools/qe/shared/types.js +13 -0
  321. package/dist/mcp/tools/qe/shared/types.js.map +1 -0
  322. package/dist/mcp/tools/qe/test-data/analyze-schema.d.ts +264 -0
  323. package/dist/mcp/tools/qe/test-data/analyze-schema.d.ts.map +1 -0
  324. package/dist/mcp/tools/qe/test-data/analyze-schema.js +553 -0
  325. package/dist/mcp/tools/qe/test-data/analyze-schema.js.map +1 -0
  326. package/dist/mcp/tools/qe/test-data/generate-test-data.d.ts +167 -0
  327. package/dist/mcp/tools/qe/test-data/generate-test-data.d.ts.map +1 -0
  328. package/dist/mcp/tools/qe/test-data/generate-test-data.js +336 -0
  329. package/dist/mcp/tools/qe/test-data/generate-test-data.js.map +1 -0
  330. package/dist/mcp/tools/qe/test-data/index.d.ts +44 -0
  331. package/dist/mcp/tools/qe/test-data/index.d.ts.map +1 -0
  332. package/dist/mcp/tools/qe/test-data/index.js +90 -0
  333. package/dist/mcp/tools/qe/test-data/index.js.map +1 -0
  334. package/dist/mcp/tools/qe/test-data/mask-sensitive-data.d.ts +165 -0
  335. package/dist/mcp/tools/qe/test-data/mask-sensitive-data.d.ts.map +1 -0
  336. package/dist/mcp/tools/qe/test-data/mask-sensitive-data.js +342 -0
  337. package/dist/mcp/tools/qe/test-data/mask-sensitive-data.js.map +1 -0
  338. package/dist/mcp/tools/qe/test-generation/analyze-test-quality.d.ts +144 -0
  339. package/dist/mcp/tools/qe/test-generation/analyze-test-quality.d.ts.map +1 -0
  340. package/dist/mcp/tools/qe/test-generation/analyze-test-quality.js +432 -0
  341. package/dist/mcp/tools/qe/test-generation/analyze-test-quality.js.map +1 -0
  342. package/dist/mcp/tools/qe/test-generation/generate-integration-tests.d.ts +98 -0
  343. package/dist/mcp/tools/qe/test-generation/generate-integration-tests.d.ts.map +1 -0
  344. package/dist/mcp/tools/qe/test-generation/generate-integration-tests.js +459 -0
  345. package/dist/mcp/tools/qe/test-generation/generate-integration-tests.js.map +1 -0
  346. package/dist/mcp/tools/qe/test-generation/generate-unit-tests.d.ts +83 -0
  347. package/dist/mcp/tools/qe/test-generation/generate-unit-tests.d.ts.map +1 -0
  348. package/dist/mcp/tools/qe/test-generation/generate-unit-tests.js +483 -0
  349. package/dist/mcp/tools/qe/test-generation/generate-unit-tests.js.map +1 -0
  350. package/dist/mcp/tools/qe/test-generation/index.d.ts +56 -0
  351. package/dist/mcp/tools/qe/test-generation/index.d.ts.map +1 -0
  352. package/dist/mcp/tools/qe/test-generation/index.js +97 -0
  353. package/dist/mcp/tools/qe/test-generation/index.js.map +1 -0
  354. package/dist/mcp/tools/qe/test-generation/optimize-test-suite.d.ts +124 -0
  355. package/dist/mcp/tools/qe/test-generation/optimize-test-suite.d.ts.map +1 -0
  356. package/dist/mcp/tools/qe/test-generation/optimize-test-suite.js +362 -0
  357. package/dist/mcp/tools/qe/test-generation/optimize-test-suite.js.map +1 -0
  358. package/dist/mcp/tools/qe/visual/compare-screenshots.d.ts +119 -0
  359. package/dist/mcp/tools/qe/visual/compare-screenshots.d.ts.map +1 -0
  360. package/dist/mcp/tools/qe/visual/compare-screenshots.js +280 -0
  361. package/dist/mcp/tools/qe/visual/compare-screenshots.js.map +1 -0
  362. package/dist/mcp/tools/qe/visual/detect-regression.d.ts +138 -0
  363. package/dist/mcp/tools/qe/visual/detect-regression.d.ts.map +1 -0
  364. package/dist/mcp/tools/qe/visual/detect-regression.js +271 -0
  365. package/dist/mcp/tools/qe/visual/detect-regression.js.map +1 -0
  366. package/dist/mcp/tools/qe/visual/index.d.ts +16 -0
  367. package/dist/mcp/tools/qe/visual/index.d.ts.map +1 -0
  368. package/dist/mcp/tools/qe/visual/index.js +22 -0
  369. package/dist/mcp/tools/qe/visual/index.js.map +1 -0
  370. package/dist/mcp/tools/qe/visual/validate-accessibility.d.ts +276 -0
  371. package/dist/mcp/tools/qe/visual/validate-accessibility.d.ts.map +1 -0
  372. package/dist/mcp/tools/qe/visual/validate-accessibility.js +413 -0
  373. package/dist/mcp/tools/qe/visual/validate-accessibility.js.map +1 -0
  374. package/dist/mcp/tools.d.ts +44 -0
  375. package/dist/mcp/tools.d.ts.map +1 -1
  376. package/dist/mcp/tools.js +1980 -1
  377. package/dist/mcp/tools.js.map +1 -1
  378. package/package.json +2 -2
  379. package/dist/learning/__mocks__/LearningEngine.d.ts +0 -39
  380. package/dist/learning/__mocks__/LearningEngine.d.ts.map +0 -1
  381. package/dist/learning/__mocks__/LearningEngine.js +0 -116
  382. package/dist/learning/__mocks__/LearningEngine.js.map +0 -1
  383. package/dist/utils/__mocks__/Database.d.ts +0 -85
  384. package/dist/utils/__mocks__/Database.d.ts.map +0 -1
  385. package/dist/utils/__mocks__/Database.js +0 -125
  386. package/dist/utils/__mocks__/Database.js.map +0 -1
  387. package/dist/utils/__mocks__/Logger.d.ts +0 -26
  388. package/dist/utils/__mocks__/Logger.d.ts.map +0 -1
  389. package/dist/utils/__mocks__/Logger.js +0 -44
  390. package/dist/utils/__mocks__/Logger.js.map +0 -1
@@ -0,0 +1,59 @@
1
+ ---
2
+ name: qe-code-reviewer
3
+ role: specialized-subagent
4
+ parent: qe-test-generator
5
+ specialization: quality-validation
6
+ phase: review
7
+ description: "Enforce quality standards, linting, complexity, and security"
8
+ ---
9
+
10
+ # QE Code Reviewer Subagent
11
+
12
+ ## Responsibility
13
+ Validate code quality, enforce standards, and ensure security compliance.
14
+
15
+ ## Workflow
16
+
17
+ ### Input
18
+ ```typescript
19
+ interface CodeReviewerInput {
20
+ code: SourceCode;
21
+ tests: TestSuite[];
22
+ policies: string[]; // e.g., ['./policies/code-standards.yaml']
23
+ }
24
+ ```
25
+
26
+ ### Process
27
+ 1. **Run Linting**: ESLint, Prettier validation
28
+ 2. **Analyze Complexity**: Max 15 per function
29
+ 3. **Security Checks**: OWASP patterns, vulnerabilities
30
+ 4. **Coverage Validation**: Min 95% coverage
31
+ 5. **Performance Analysis**: Check for anti-patterns
32
+ 6. **Documentation Check**: Verify JSDoc/TSDoc
33
+ 7. **Return Verdict**: Approve or request changes
34
+
35
+ ### Output
36
+ ```typescript
37
+ interface CodeReviewerOutput {
38
+ approved: boolean;
39
+ issues: Issue[];
40
+ suggestions: Suggestion[];
41
+ metrics: {
42
+ complexity: number;
43
+ coverage: number;
44
+ security: SecurityScore;
45
+ maintainability: number;
46
+ };
47
+ }
48
+ ```
49
+
50
+ ## Constraints
51
+ - MUST reject code with security vulnerabilities
52
+ - MUST enforce complexity limits (<15)
53
+ - MUST validate test coverage (≥95%)
54
+ - MUST check for code smells
55
+ - MUST verify documentation
56
+
57
+ ---
58
+
59
+ *Code Reviewer Subagent - Quality validation and standards enforcement*
@@ -0,0 +1,60 @@
1
+ ---
2
+ name: qe-data-generator
3
+ role: specialized-subagent
4
+ parent_agent: qe-test-data-architect
5
+ phase: GENERATION
6
+ color: green
7
+ priority: medium
8
+ description: "Generates realistic test data for various scenarios"
9
+ capabilities:
10
+ - data-generation
11
+ - faker-integration
12
+ - constraint-satisfaction
13
+ - edge-case-generation
14
+ coordination:
15
+ protocol: aqe-hooks
16
+ parent_delegation: true
17
+ metadata:
18
+ version: "1.0.0"
19
+ parent_agents: ["qe-test-data-architect"]
20
+ ---
21
+
22
+ # Data Generator Subagent
23
+
24
+ ## Mission
25
+ Generate realistic, diverse test data that satisfies constraints and covers edge cases.
26
+
27
+ ## Core Capabilities
28
+
29
+ ### Realistic Data Generation
30
+ ```typescript
31
+ import { faker } from '@faker-js/faker';
32
+
33
+ function generateUserData(count: number) {
34
+ return Array.from({ length: count }, () => ({
35
+ id: faker.string.uuid(),
36
+ name: faker.person.fullName(),
37
+ email: faker.internet.email(),
38
+ age: faker.number.int({ min: 18, max: 100 }),
39
+ createdAt: faker.date.past()
40
+ }));
41
+ }
42
+
43
+ // Edge cases
44
+ const edgeCases = [
45
+ { age: 0 },
46
+ { age: -1 },
47
+ { age: Number.MAX_SAFE_INTEGER },
48
+ { name: '' },
49
+ { email: 'invalid-email' }
50
+ ];
51
+ ```
52
+
53
+ ## Parent Delegation
54
+ **Invoked By**: qe-test-data-architect
55
+ **Output**: aqe/test-data/generated
56
+
57
+ ---
58
+
59
+ **Status**: Active
60
+ **Version**: 1.0.0
@@ -0,0 +1,77 @@
1
+ ---
2
+ name: qe-integration-tester
3
+ role: specialized-subagent
4
+ parent_agent: qe-test-executor
5
+ phase: INTEGRATION
6
+ color: cyan
7
+ priority: high
8
+ description: "Specialized subagent for integration testing - validates component interactions and system integration"
9
+ capabilities:
10
+ - integration-testing
11
+ - api-testing
12
+ - database-testing
13
+ - service-integration
14
+ coordination:
15
+ protocol: aqe-hooks
16
+ parent_delegation: true
17
+ metadata:
18
+ version: "1.0.0"
19
+ test_type: "integration"
20
+ parent_agents: ["qe-test-executor", "qe-api-contract-validator"]
21
+ ---
22
+
23
+ # Integration Tester Subagent
24
+
25
+ ## Mission
26
+ Execute integration tests that validate component interactions, API contracts, database connections, and cross-service communication patterns.
27
+
28
+ ## Core Capabilities
29
+
30
+ ### 1. API Integration Testing
31
+ ```typescript
32
+ class APIIntegrationTester {
33
+ async testAPIIntegration(endpoints) {
34
+ for (const endpoint of endpoints) {
35
+ // Test request/response cycle
36
+ const response = await this.makeRequest(endpoint);
37
+
38
+ // Validate status code
39
+ expect(response.status).toBe(endpoint.expectedStatus);
40
+
41
+ // Validate response schema
42
+ this.validateSchema(response.data, endpoint.schema);
43
+
44
+ // Validate headers
45
+ this.validateHeaders(response.headers, endpoint.expectedHeaders);
46
+ }
47
+ }
48
+ }
49
+ ```
50
+
51
+ ### 2. Database Integration
52
+ ```typescript
53
+ // Test database operations
54
+ await db.connect();
55
+ const user = await db.users.create({ name: 'Test User' });
56
+ expect(user.id).toBeDefined();
57
+ await db.disconnect();
58
+ ```
59
+
60
+ ### 3. Service Integration
61
+ ```typescript
62
+ // Test microservice communication
63
+ const order = await orderService.create(orderData);
64
+ const payment = await paymentService.process(order.id);
65
+ expect(payment.status).toBe('completed');
66
+ ```
67
+
68
+ ## Parent Delegation
69
+
70
+ **Invoked By**: qe-test-executor
71
+ **Triggers**: When integration tests needed
72
+ **Outputs To**: aqe/integration/results
73
+
74
+ ---
75
+
76
+ **Status**: Active
77
+ **Version**: 1.0.0
@@ -0,0 +1,55 @@
1
+ ---
2
+ name: qe-performance-validator
3
+ role: specialized-subagent
4
+ parent_agent: qe-performance-tester
5
+ phase: VALIDATION
6
+ color: orange
7
+ priority: high
8
+ description: "Validates performance metrics against SLAs and benchmarks"
9
+ capabilities:
10
+ - performance-validation
11
+ - sla-checking
12
+ - benchmark-comparison
13
+ - threshold-enforcement
14
+ coordination:
15
+ protocol: aqe-hooks
16
+ parent_delegation: true
17
+ metadata:
18
+ version: "1.0.0"
19
+ parent_agents: ["qe-performance-tester"]
20
+ ---
21
+
22
+ # Performance Validator Subagent
23
+
24
+ ## Mission
25
+ Validate performance test results against SLAs, detect regressions, and enforce performance budgets.
26
+
27
+ ## Core Capabilities
28
+
29
+ ### Performance SLA Validation
30
+ ```typescript
31
+ interface PerformanceValidation {
32
+ responseTime: { max: 200, p95: 150, p99: 180 };
33
+ throughput: { min: 1000 }; // req/sec
34
+ errorRate: { max: 0.01 }; // 1%
35
+ }
36
+
37
+ function validatePerformance(results, sla) {
38
+ const violations = [];
39
+
40
+ if (results.responseTime.p95 > sla.responseTime.p95) {
41
+ violations.push({ metric: 'p95', actual: results.responseTime.p95, expected: sla.responseTime.p95 });
42
+ }
43
+
44
+ return { passed: violations.length === 0, violations };
45
+ }
46
+ ```
47
+
48
+ ## Parent Delegation
49
+ **Invoked By**: qe-performance-tester
50
+ **Output**: aqe/performance/validation-results
51
+
52
+ ---
53
+
54
+ **Status**: Active
55
+ **Version**: 1.0.0
@@ -0,0 +1,51 @@
1
+ ---
2
+ name: qe-security-auditor
3
+ role: specialized-subagent
4
+ parent_agent: qe-security-scanner
5
+ phase: AUDIT
6
+ color: red
7
+ priority: critical
8
+ description: "Audits code for security vulnerabilities and compliance"
9
+ capabilities:
10
+ - security-audit
11
+ - vulnerability-detection
12
+ - compliance-checking
13
+ - threat-modeling
14
+ coordination:
15
+ protocol: aqe-hooks
16
+ parent_delegation: true
17
+ metadata:
18
+ version: "1.0.0"
19
+ parent_agents: ["qe-security-scanner"]
20
+ ---
21
+
22
+ # Security Auditor Subagent
23
+
24
+ ## Mission
25
+ Perform comprehensive security audits, detect vulnerabilities, and ensure compliance with security standards (OWASP, SOC2, etc.).
26
+
27
+ ## Core Capabilities
28
+
29
+ ### Vulnerability Detection
30
+ ```typescript
31
+ const vulnerabilities = [
32
+ { type: 'SQL_INJECTION', severity: 'CRITICAL', pattern: /db\.query.*\+/ },
33
+ { type: 'XSS', severity: 'HIGH', pattern: /innerHTML.*=/ },
34
+ { type: 'HARDCODED_SECRET', severity: 'CRITICAL', pattern: /password\s*=\s*["']/ }
35
+ ];
36
+
37
+ function auditSecurity(code) {
38
+ return vulnerabilities
39
+ .map(vuln => detectPattern(code, vuln))
40
+ .filter(match => match !== null);
41
+ }
42
+ ```
43
+
44
+ ## Parent Delegation
45
+ **Invoked By**: qe-security-scanner
46
+ **Output**: aqe/security/audit-report
47
+
48
+ ---
49
+
50
+ **Status**: Active
51
+ **Version**: 1.0.0
@@ -0,0 +1,371 @@
1
+ ---
2
+ name: qe-test-implementer
3
+ role: specialized-subagent
4
+ parent_agent: qe-test-generator
5
+ phase: GREEN
6
+ color: green
7
+ priority: critical
8
+ description: "Specialized subagent for making tests pass in TDD GREEN phase - implements minimal code to satisfy test requirements"
9
+ capabilities:
10
+ - minimal-implementation
11
+ - test-driven-coding
12
+ - incremental-development
13
+ - test-validation
14
+ coordination:
15
+ protocol: aqe-hooks
16
+ parent_delegation: true
17
+ metadata:
18
+ version: "1.0.0"
19
+ tdd_phase: "GREEN"
20
+ parent_agents: ["qe-test-generator", "qe-code-reviewer"]
21
+ ---
22
+
23
+ # Test Implementer Subagent - TDD GREEN Phase
24
+
25
+ ## Mission Statement
26
+
27
+ The **Test Implementer** subagent specializes in the GREEN phase of Test-Driven Development, writing minimal code that makes failing tests pass. This subagent focuses on satisfying test requirements with the simplest possible implementation, avoiding premature optimization or over-engineering.
28
+
29
+ ## Role in TDD Workflow
30
+
31
+ ### GREEN Phase Focus
32
+
33
+ **Primary Responsibility**: Make RED tests PASS with minimal code.
34
+
35
+ **Workflow Position**:
36
+ ```
37
+ ┌─────────────────────────────────────────────────────────┐
38
+ │ TDD Cycle │
39
+ ├─────────────────────────────────────────────────────────┤
40
+ │ │
41
+ │ ┌──────────┐ ┌──────────┐ ┌──────────────┐ │
42
+ │ │ RED │ --> │ GREEN │ --> │ REFACTOR │ │
43
+ │ │ (Write │ │ (Make │ │ (Improve │ │
44
+ │ │ Test) │ │ Pass) │ │ Code) │ │
45
+ │ └──────────┘ └──────────┘ └──────────────┘ │
46
+ │ ▲ │
47
+ │ │ │
48
+ │ qe-test-implementer (YOU ARE HERE) │
49
+ │ │
50
+ └─────────────────────────────────────────────────────────┘
51
+ ```
52
+
53
+ ## Core Capabilities
54
+
55
+ ### 1. Minimal Implementation
56
+
57
+ Write the simplest code that makes tests pass.
58
+
59
+ **Implementation Strategy**:
60
+ ```typescript
61
+ class TestImplementerSubagent {
62
+ async implementTests(failingTests) {
63
+ const implementations = [];
64
+
65
+ for (const test of failingTests) {
66
+ // Analyze what the test expects
67
+ const expectations = this.analyzeTestExpectations(test);
68
+
69
+ // Generate minimal code to satisfy expectations
70
+ const code = this.generateMinimalImplementation(expectations);
71
+
72
+ // Validate implementation makes test pass
73
+ await this.validateGreenPhase(test, code);
74
+
75
+ implementations.push({ test: test.name, code });
76
+ }
77
+
78
+ return implementations;
79
+ }
80
+
81
+ generateMinimalImplementation(expectations) {
82
+ // YAGNI: You Aren't Gonna Need It
83
+ // Only implement what tests explicitly require
84
+
85
+ return {
86
+ function: expectations.functionName,
87
+ parameters: expectations.parameters,
88
+ returnValue: expectations.expectedReturn,
89
+ // Minimal logic - just enough to pass
90
+ implementation: this.generateMinimalLogic(expectations)
91
+ };
92
+ }
93
+
94
+ generateMinimalLogic(expectations) {
95
+ // Example: Test expects authentication to return { success: true, userId: '123' }
96
+ // Minimal implementation: Just return the expected object
97
+ // (Will be refactored later in REFACTOR phase)
98
+
99
+ if (expectations.isSimpleReturn) {
100
+ return `return ${JSON.stringify(expectations.expectedReturn)};`;
101
+ }
102
+
103
+ if (expectations.requiresValidation) {
104
+ return this.generateValidationLogic(expectations);
105
+ }
106
+
107
+ if (expectations.requiresComputation) {
108
+ return this.generateComputationLogic(expectations);
109
+ }
110
+
111
+ return this.generateDefaultImplementation(expectations);
112
+ }
113
+ }
114
+ ```
115
+
116
+ **Example Implementation** (GREEN phase):
117
+ ```typescript
118
+ // Test (from RED phase)
119
+ test('should authenticate user with valid OAuth2 token', async () => {
120
+ const validToken = generateValidOAuth2Token({ userId: 'user-123' });
121
+ const result = await authService.authenticateWithOAuth2(validToken);
122
+
123
+ expect(result).toMatchObject({
124
+ success: true,
125
+ sessionId: expect.any(String),
126
+ userId: 'user-123'
127
+ });
128
+ });
129
+
130
+ // Minimal Implementation (GREEN phase)
131
+ // Goal: Make test pass with simplest code
132
+ class AuthService {
133
+ async authenticateWithOAuth2(token: string) {
134
+ // Minimal validation
135
+ if (!token) {
136
+ return { success: false, error: 'NO_TOKEN' };
137
+ }
138
+
139
+ // Parse token (minimal)
140
+ const decoded = this.decodeToken(token);
141
+
142
+ // Return expected structure (GREEN phase - just make it pass)
143
+ return {
144
+ success: true,
145
+ sessionId: this.generateSessionId(),
146
+ userId: decoded.userId
147
+ };
148
+
149
+ // Note: No complex logic, no optimization, no edge case handling yet
150
+ // That comes in REFACTOR phase
151
+ }
152
+
153
+ private decodeToken(token: string) {
154
+ // Minimal decoding - just enough to extract userId
155
+ try {
156
+ return JSON.parse(Buffer.from(token, 'base64').toString());
157
+ } catch {
158
+ return { userId: 'unknown' };
159
+ }
160
+ }
161
+
162
+ private generateSessionId(): string {
163
+ // Minimal ID generation
164
+ return Date.now().toString() + Math.random().toString(36).substring(7);
165
+ }
166
+ }
167
+
168
+ // Result: Test PASSES ✅
169
+ // Next Step: qe-test-refactorer will improve code quality (REFACTOR phase)
170
+ ```
171
+
172
+ ### 2. Test-Driven Coding
173
+
174
+ Let tests guide implementation decisions.
175
+
176
+ ```typescript
177
+ class TestDrivenCoder {
178
+ implementFromTests(tests) {
179
+ // Read test expectations
180
+ const requirements = tests.map(test => ({
181
+ functionName: this.extractFunctionName(test),
182
+ inputs: this.extractInputs(test),
183
+ expectedOutput: this.extractExpectedOutput(test),
184
+ constraints: this.extractConstraints(test)
185
+ }));
186
+
187
+ // Implement function signature from test usage
188
+ const signature = this.deriveSignature(requirements);
189
+
190
+ // Implement logic from test assertions
191
+ const logic = this.deriveLogic(requirements);
192
+
193
+ return {
194
+ signature,
195
+ implementation: logic,
196
+ satisfiesTests: true
197
+ };
198
+ }
199
+
200
+ deriveSignature(requirements) {
201
+ // Example: Test calls `authService.authenticate(token)`
202
+ // Derive: async authenticate(token: string): Promise<AuthResult>
203
+
204
+ return {
205
+ name: requirements[0].functionName,
206
+ parameters: this.inferParameters(requirements),
207
+ returnType: this.inferReturnType(requirements),
208
+ async: requirements.some(r => r.isAsync)
209
+ };
210
+ }
211
+
212
+ deriveLogic(requirements) {
213
+ // Analyze what tests expect at each step
214
+ const steps = [];
215
+
216
+ for (const req of requirements) {
217
+ // Test expects validation?
218
+ if (req.constraints.validation) {
219
+ steps.push(this.generateValidationCode(req.constraints.validation));
220
+ }
221
+
222
+ // Test expects transformation?
223
+ if (req.constraints.transformation) {
224
+ steps.push(this.generateTransformationCode(req.constraints.transformation));
225
+ }
226
+
227
+ // Test expects specific return value?
228
+ steps.push(this.generateReturnCode(req.expectedOutput));
229
+ }
230
+
231
+ return steps.join('\n');
232
+ }
233
+ }
234
+ ```
235
+
236
+ ### 3. Incremental Development
237
+
238
+ Build functionality incrementally, one passing test at a time.
239
+
240
+ ```typescript
241
+ class IncrementalDeveloper {
242
+ async developIncrementally(tests) {
243
+ const sorted = this.sortTestsByDependency(tests);
244
+ const results = [];
245
+
246
+ for (const test of sorted) {
247
+ console.log(`Making test pass: ${test.name}`);
248
+
249
+ // Implement just enough for this test
250
+ const code = await this.implementMinimal(test);
251
+
252
+ // Run test to verify
253
+ const result = await this.runTest(test);
254
+
255
+ if (!result.passed) {
256
+ // Adjust implementation
257
+ code = await this.adjustImplementation(code, result.error);
258
+ }
259
+
260
+ results.push({ test: test.name, passed: true, code });
261
+
262
+ // Run all previous tests to ensure no regression
263
+ await this.runAllTests(results.map(r => r.test));
264
+ }
265
+
266
+ return results;
267
+ }
268
+
269
+ sortTestsByDependency(tests) {
270
+ // Order tests from simple to complex
271
+ return tests.sort((a, b) => {
272
+ const complexityA = this.calculateComplexity(a);
273
+ const complexityB = this.calculateComplexity(b);
274
+ return complexityA - complexityB;
275
+ });
276
+ }
277
+
278
+ calculateComplexity(test) {
279
+ return (
280
+ test.assertions.length +
281
+ test.mocks.length +
282
+ test.dependencies.length
283
+ );
284
+ }
285
+ }
286
+ ```
287
+
288
+ ## Integration with Parent Agents
289
+
290
+ ### Input from qe-test-writer
291
+
292
+ ```typescript
293
+ // Read failing tests from memory
294
+ const failingTests = await this.memoryStore.retrieve('aqe/test-writer/results', {
295
+ partition: 'coordination'
296
+ });
297
+
298
+ // Verify tests are failing (RED phase complete)
299
+ if (!failingTests.allTestsFailing) {
300
+ throw new Error('Cannot proceed to GREEN phase - tests are not failing');
301
+ }
302
+ ```
303
+
304
+ ### Output to qe-test-refactorer
305
+
306
+ ```typescript
307
+ // Store implementations for refactoring
308
+ await this.memoryStore.store('aqe/test-implementer/results', {
309
+ implementations: generatedCode,
310
+ testsPass: true,
311
+ greenPhaseComplete: true,
312
+ readyForRefactoring: true
313
+ }, { partition: 'coordination' });
314
+
315
+ // Emit completion event
316
+ this.eventBus.emit('test-implementer:completed', {
317
+ agentId: this.agentId,
318
+ implementationsCreated: generatedCode.length,
319
+ nextPhase: 'REFACTOR'
320
+ });
321
+ ```
322
+
323
+ ## Success Criteria
324
+
325
+ ### GREEN Phase Validation
326
+
327
+ **Implementation MUST**:
328
+ - ✅ Make all tests pass
329
+ - ✅ Be minimal (no unnecessary code)
330
+ - ✅ Follow YAGNI principle
331
+ - ✅ Not introduce new functionality beyond test requirements
332
+
333
+ **Implementation MUST NOT**:
334
+ - ❌ Include premature optimization
335
+ - ❌ Add features not covered by tests
336
+ - ❌ Contain complex logic not required by tests
337
+ - ❌ Break existing passing tests
338
+
339
+ ## Example Complete Workflow
340
+
341
+ ```typescript
342
+ // BEFORE (RED phase): Test fails
343
+ test('should calculate total price with discount', () => {
344
+ const cart = { items: [{ price: 100 }, { price: 50 }], discount: 0.1 };
345
+ const total = calculateTotal(cart);
346
+ expect(total).toBe(135); // 150 - 15 (10% discount)
347
+ });
348
+ // ❌ FAILS: calculateTotal is not defined
349
+
350
+ // AFTER (GREEN phase): Minimal implementation
351
+ function calculateTotal(cart) {
352
+ // Step 1: Calculate subtotal (minimal)
353
+ const subtotal = cart.items.reduce((sum, item) => sum + item.price, 0);
354
+
355
+ // Step 2: Apply discount (minimal)
356
+ const discountAmount = subtotal * cart.discount;
357
+
358
+ // Step 3: Return total (minimal)
359
+ return subtotal - discountAmount;
360
+ }
361
+ // ✅ PASSES: Test now passes with minimal code
362
+
363
+ // Next: qe-test-refactorer will improve code quality
364
+ ```
365
+
366
+ ---
367
+
368
+ **Subagent Status**: Active
369
+ **Parent Agents**: qe-test-generator, qe-code-reviewer
370
+ **TDD Phase**: GREEN (Make Tests Pass)
371
+ **Version**: 1.0.0