agentic-qe 1.0.0

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 (528) hide show
  1. package/.claude/agents/analysis/code-analyzer.md +209 -0
  2. package/.claude/agents/analysis/code-review/analyze-code-quality.md +180 -0
  3. package/.claude/agents/architecture/system-design/arch-system-design.md +156 -0
  4. package/.claude/agents/base-template-generator.md +42 -0
  5. package/.claude/agents/consensus/byzantine-coordinator.md +63 -0
  6. package/.claude/agents/consensus/crdt-synchronizer.md +997 -0
  7. package/.claude/agents/consensus/gossip-coordinator.md +63 -0
  8. package/.claude/agents/consensus/performance-benchmarker.md +851 -0
  9. package/.claude/agents/consensus/quorum-manager.md +823 -0
  10. package/.claude/agents/consensus/raft-manager.md +63 -0
  11. package/.claude/agents/consensus/security-manager.md +622 -0
  12. package/.claude/agents/core/coder.md +266 -0
  13. package/.claude/agents/core/planner.md +168 -0
  14. package/.claude/agents/core/researcher.md +190 -0
  15. package/.claude/agents/core/reviewer.md +326 -0
  16. package/.claude/agents/core/tester.md +319 -0
  17. package/.claude/agents/data/ml/data-ml-model.md +193 -0
  18. package/.claude/agents/development/backend/dev-backend-api.md +142 -0
  19. package/.claude/agents/devops/ci-cd/ops-cicd-github.md +164 -0
  20. package/.claude/agents/documentation/api-docs/docs-api-openapi.md +174 -0
  21. package/.claude/agents/flow-nexus/app-store.md +88 -0
  22. package/.claude/agents/flow-nexus/authentication.md +69 -0
  23. package/.claude/agents/flow-nexus/challenges.md +81 -0
  24. package/.claude/agents/flow-nexus/neural-network.md +88 -0
  25. package/.claude/agents/flow-nexus/payments.md +83 -0
  26. package/.claude/agents/flow-nexus/sandbox.md +76 -0
  27. package/.claude/agents/flow-nexus/swarm.md +76 -0
  28. package/.claude/agents/flow-nexus/user-tools.md +96 -0
  29. package/.claude/agents/flow-nexus/workflow.md +84 -0
  30. package/.claude/agents/github/code-review-swarm.md +538 -0
  31. package/.claude/agents/github/github-modes.md +173 -0
  32. package/.claude/agents/github/issue-tracker.md +319 -0
  33. package/.claude/agents/github/multi-repo-swarm.md +553 -0
  34. package/.claude/agents/github/pr-manager.md +191 -0
  35. package/.claude/agents/github/project-board-sync.md +509 -0
  36. package/.claude/agents/github/release-manager.md +367 -0
  37. package/.claude/agents/github/release-swarm.md +583 -0
  38. package/.claude/agents/github/repo-architect.md +398 -0
  39. package/.claude/agents/github/swarm-issue.md +573 -0
  40. package/.claude/agents/github/swarm-pr.md +428 -0
  41. package/.claude/agents/github/sync-coordinator.md +452 -0
  42. package/.claude/agents/github/workflow-automation.md +635 -0
  43. package/.claude/agents/goal/code-goal-planner.md +446 -0
  44. package/.claude/agents/goal/goal-planner.md +168 -0
  45. package/.claude/agents/hive-mind/collective-intelligence-coordinator.md +130 -0
  46. package/.claude/agents/hive-mind/queen-coordinator.md +203 -0
  47. package/.claude/agents/hive-mind/scout-explorer.md +242 -0
  48. package/.claude/agents/hive-mind/swarm-memory-manager.md +193 -0
  49. package/.claude/agents/hive-mind/worker-specialist.md +217 -0
  50. package/.claude/agents/neural/safla-neural.md +74 -0
  51. package/.claude/agents/optimization/benchmark-suite.md +665 -0
  52. package/.claude/agents/optimization/load-balancer.md +431 -0
  53. package/.claude/agents/optimization/performance-monitor.md +672 -0
  54. package/.claude/agents/optimization/resource-allocator.md +674 -0
  55. package/.claude/agents/optimization/topology-optimizer.md +808 -0
  56. package/.claude/agents/qe-api-contract-validator.md +1088 -0
  57. package/.claude/agents/qe-chaos-engineer.md +736 -0
  58. package/.claude/agents/qe-coverage-analyzer.md +282 -0
  59. package/.claude/agents/qe-deployment-readiness.md +1109 -0
  60. package/.claude/agents/qe-flaky-test-hunter.md +1121 -0
  61. package/.claude/agents/qe-fleet-commander.md +641 -0
  62. package/.claude/agents/qe-performance-tester.md +354 -0
  63. package/.claude/agents/qe-production-intelligence.md +1162 -0
  64. package/.claude/agents/qe-quality-gate.md +294 -0
  65. package/.claude/agents/qe-regression-risk-analyzer.md +947 -0
  66. package/.claude/agents/qe-requirements-validator.md +691 -0
  67. package/.claude/agents/qe-security-scanner.md +430 -0
  68. package/.claude/agents/qe-test-data-architect.md +1007 -0
  69. package/.claude/agents/qe-test-executor.md +365 -0
  70. package/.claude/agents/qe-test-generator.md +332 -0
  71. package/.claude/agents/qe-visual-tester.md +754 -0
  72. package/.claude/agents/sparc/architecture.md +472 -0
  73. package/.claude/agents/sparc/pseudocode.md +318 -0
  74. package/.claude/agents/sparc/refinement.md +525 -0
  75. package/.claude/agents/sparc/specification.md +276 -0
  76. package/.claude/agents/specialized/mobile/spec-mobile-react-native.md +226 -0
  77. package/.claude/agents/swarm/adaptive-coordinator.md +396 -0
  78. package/.claude/agents/swarm/hierarchical-coordinator.md +327 -0
  79. package/.claude/agents/swarm/mesh-coordinator.md +392 -0
  80. package/.claude/agents/templates/automation-smart-agent.md +205 -0
  81. package/.claude/agents/templates/coordinator-swarm-init.md +105 -0
  82. package/.claude/agents/templates/github-pr-manager.md +177 -0
  83. package/.claude/agents/templates/implementer-sparc-coder.md +259 -0
  84. package/.claude/agents/templates/memory-coordinator.md +187 -0
  85. package/.claude/agents/templates/migration-plan.md +746 -0
  86. package/.claude/agents/templates/orchestrator-task.md +139 -0
  87. package/.claude/agents/templates/performance-analyzer.md +199 -0
  88. package/.claude/agents/templates/sparc-coordinator.md +183 -0
  89. package/.claude/agents/testing/unit/tdd-london-swarm.md +244 -0
  90. package/.claude/agents/testing/validation/production-validator.md +395 -0
  91. package/.claude/aqe-fleet.json +47 -0
  92. package/.claude/commands/README.md +106 -0
  93. package/.claude/commands/agents/README.md +10 -0
  94. package/.claude/commands/agents/agent-capabilities.md +21 -0
  95. package/.claude/commands/agents/agent-coordination.md +28 -0
  96. package/.claude/commands/agents/agent-spawning.md +28 -0
  97. package/.claude/commands/agents/agent-types.md +26 -0
  98. package/.claude/commands/analysis/COMMAND_COMPLIANCE_REPORT.md +54 -0
  99. package/.claude/commands/analysis/README.md +9 -0
  100. package/.claude/commands/analysis/bottleneck-detect.md +162 -0
  101. package/.claude/commands/analysis/performance-bottlenecks.md +59 -0
  102. package/.claude/commands/analysis/performance-report.md +25 -0
  103. package/.claude/commands/analysis/token-efficiency.md +45 -0
  104. package/.claude/commands/analysis/token-usage.md +25 -0
  105. package/.claude/commands/aqe-analyze.md +344 -0
  106. package/.claude/commands/aqe-benchmark.md +466 -0
  107. package/.claude/commands/aqe-chaos.md +443 -0
  108. package/.claude/commands/aqe-execute.md +322 -0
  109. package/.claude/commands/aqe-fleet-status.md +431 -0
  110. package/.claude/commands/aqe-generate.md +301 -0
  111. package/.claude/commands/aqe-optimize.md +361 -0
  112. package/.claude/commands/aqe-report.md +411 -0
  113. package/.claude/commands/automation/README.md +9 -0
  114. package/.claude/commands/automation/auto-agent.md +122 -0
  115. package/.claude/commands/automation/self-healing.md +106 -0
  116. package/.claude/commands/automation/session-memory.md +90 -0
  117. package/.claude/commands/automation/smart-agents.md +73 -0
  118. package/.claude/commands/automation/smart-spawn.md +25 -0
  119. package/.claude/commands/automation/workflow-select.md +25 -0
  120. package/.claude/commands/coordination/README.md +9 -0
  121. package/.claude/commands/coordination/agent-spawn.md +25 -0
  122. package/.claude/commands/coordination/init.md +44 -0
  123. package/.claude/commands/coordination/orchestrate.md +43 -0
  124. package/.claude/commands/coordination/spawn.md +45 -0
  125. package/.claude/commands/coordination/swarm-init.md +85 -0
  126. package/.claude/commands/coordination/task-orchestrate.md +25 -0
  127. package/.claude/commands/flow-nexus/app-store.md +124 -0
  128. package/.claude/commands/flow-nexus/challenges.md +120 -0
  129. package/.claude/commands/flow-nexus/login-registration.md +65 -0
  130. package/.claude/commands/flow-nexus/neural-network.md +134 -0
  131. package/.claude/commands/flow-nexus/payments.md +116 -0
  132. package/.claude/commands/flow-nexus/sandbox.md +83 -0
  133. package/.claude/commands/flow-nexus/swarm.md +87 -0
  134. package/.claude/commands/flow-nexus/user-tools.md +152 -0
  135. package/.claude/commands/flow-nexus/workflow.md +115 -0
  136. package/.claude/commands/github/README.md +11 -0
  137. package/.claude/commands/github/code-review-swarm.md +514 -0
  138. package/.claude/commands/github/code-review.md +25 -0
  139. package/.claude/commands/github/github-modes.md +147 -0
  140. package/.claude/commands/github/github-swarm.md +121 -0
  141. package/.claude/commands/github/issue-tracker.md +292 -0
  142. package/.claude/commands/github/issue-triage.md +25 -0
  143. package/.claude/commands/github/multi-repo-swarm.md +519 -0
  144. package/.claude/commands/github/pr-enhance.md +26 -0
  145. package/.claude/commands/github/pr-manager.md +170 -0
  146. package/.claude/commands/github/project-board-sync.md +471 -0
  147. package/.claude/commands/github/release-manager.md +338 -0
  148. package/.claude/commands/github/release-swarm.md +544 -0
  149. package/.claude/commands/github/repo-analyze.md +25 -0
  150. package/.claude/commands/github/repo-architect.md +367 -0
  151. package/.claude/commands/github/swarm-issue.md +482 -0
  152. package/.claude/commands/github/swarm-pr.md +285 -0
  153. package/.claude/commands/github/sync-coordinator.md +301 -0
  154. package/.claude/commands/github/workflow-automation.md +442 -0
  155. package/.claude/commands/hive-mind/README.md +17 -0
  156. package/.claude/commands/hive-mind/hive-mind-consensus.md +8 -0
  157. package/.claude/commands/hive-mind/hive-mind-init.md +18 -0
  158. package/.claude/commands/hive-mind/hive-mind-memory.md +8 -0
  159. package/.claude/commands/hive-mind/hive-mind-metrics.md +8 -0
  160. package/.claude/commands/hive-mind/hive-mind-resume.md +8 -0
  161. package/.claude/commands/hive-mind/hive-mind-sessions.md +8 -0
  162. package/.claude/commands/hive-mind/hive-mind-spawn.md +21 -0
  163. package/.claude/commands/hive-mind/hive-mind-status.md +8 -0
  164. package/.claude/commands/hive-mind/hive-mind-stop.md +8 -0
  165. package/.claude/commands/hive-mind/hive-mind-wizard.md +8 -0
  166. package/.claude/commands/hive-mind/hive-mind.md +27 -0
  167. package/.claude/commands/hooks/README.md +11 -0
  168. package/.claude/commands/hooks/overview.md +132 -0
  169. package/.claude/commands/hooks/post-edit.md +117 -0
  170. package/.claude/commands/hooks/post-task.md +112 -0
  171. package/.claude/commands/hooks/pre-edit.md +113 -0
  172. package/.claude/commands/hooks/pre-task.md +111 -0
  173. package/.claude/commands/hooks/session-end.md +118 -0
  174. package/.claude/commands/hooks/setup.md +103 -0
  175. package/.claude/commands/memory/README.md +9 -0
  176. package/.claude/commands/memory/memory-persist.md +25 -0
  177. package/.claude/commands/memory/memory-search.md +25 -0
  178. package/.claude/commands/memory/memory-usage.md +25 -0
  179. package/.claude/commands/memory/neural.md +47 -0
  180. package/.claude/commands/memory/usage.md +46 -0
  181. package/.claude/commands/monitoring/README.md +9 -0
  182. package/.claude/commands/monitoring/agent-metrics.md +25 -0
  183. package/.claude/commands/monitoring/agents.md +44 -0
  184. package/.claude/commands/monitoring/real-time-view.md +25 -0
  185. package/.claude/commands/monitoring/status.md +46 -0
  186. package/.claude/commands/monitoring/swarm-monitor.md +25 -0
  187. package/.claude/commands/optimization/README.md +9 -0
  188. package/.claude/commands/optimization/auto-topology.md +62 -0
  189. package/.claude/commands/optimization/cache-manage.md +25 -0
  190. package/.claude/commands/optimization/parallel-execute.md +25 -0
  191. package/.claude/commands/optimization/parallel-execution.md +50 -0
  192. package/.claude/commands/optimization/topology-optimize.md +25 -0
  193. package/.claude/commands/pair/commands.md +546 -0
  194. package/.claude/commands/pair/config.md +510 -0
  195. package/.claude/commands/pair/examples.md +512 -0
  196. package/.claude/commands/pair/modes.md +348 -0
  197. package/.claude/commands/pair/session.md +407 -0
  198. package/.claude/commands/pair/start.md +209 -0
  199. package/.claude/commands/sparc/analyzer.md +52 -0
  200. package/.claude/commands/sparc/architect.md +53 -0
  201. package/.claude/commands/sparc/batch-executor.md +54 -0
  202. package/.claude/commands/sparc/coder.md +54 -0
  203. package/.claude/commands/sparc/debugger.md +54 -0
  204. package/.claude/commands/sparc/designer.md +53 -0
  205. package/.claude/commands/sparc/documenter.md +54 -0
  206. package/.claude/commands/sparc/innovator.md +54 -0
  207. package/.claude/commands/sparc/memory-manager.md +54 -0
  208. package/.claude/commands/sparc/optimizer.md +54 -0
  209. package/.claude/commands/sparc/orchestrator.md +132 -0
  210. package/.claude/commands/sparc/researcher.md +54 -0
  211. package/.claude/commands/sparc/reviewer.md +54 -0
  212. package/.claude/commands/sparc/sparc-modes.md +174 -0
  213. package/.claude/commands/sparc/swarm-coordinator.md +54 -0
  214. package/.claude/commands/sparc/tdd.md +54 -0
  215. package/.claude/commands/sparc/tester.md +54 -0
  216. package/.claude/commands/sparc/workflow-manager.md +54 -0
  217. package/.claude/commands/stream-chain/pipeline.md +121 -0
  218. package/.claude/commands/stream-chain/run.md +70 -0
  219. package/.claude/commands/swarm/README.md +15 -0
  220. package/.claude/commands/swarm/analysis.md +95 -0
  221. package/.claude/commands/swarm/development.md +96 -0
  222. package/.claude/commands/swarm/examples.md +168 -0
  223. package/.claude/commands/swarm/maintenance.md +102 -0
  224. package/.claude/commands/swarm/optimization.md +117 -0
  225. package/.claude/commands/swarm/research.md +136 -0
  226. package/.claude/commands/swarm/swarm-analysis.md +8 -0
  227. package/.claude/commands/swarm/swarm-background.md +8 -0
  228. package/.claude/commands/swarm/swarm-init.md +19 -0
  229. package/.claude/commands/swarm/swarm-modes.md +8 -0
  230. package/.claude/commands/swarm/swarm-monitor.md +8 -0
  231. package/.claude/commands/swarm/swarm-spawn.md +19 -0
  232. package/.claude/commands/swarm/swarm-status.md +8 -0
  233. package/.claude/commands/swarm/swarm-strategies.md +8 -0
  234. package/.claude/commands/swarm/swarm.md +27 -0
  235. package/.claude/commands/swarm/testing.md +131 -0
  236. package/.claude/commands/training/README.md +9 -0
  237. package/.claude/commands/training/model-update.md +25 -0
  238. package/.claude/commands/training/neural-patterns.md +74 -0
  239. package/.claude/commands/training/neural-train.md +25 -0
  240. package/.claude/commands/training/pattern-learn.md +25 -0
  241. package/.claude/commands/training/specialization.md +63 -0
  242. package/.claude/commands/truth/start.md +143 -0
  243. package/.claude/commands/verify/check.md +50 -0
  244. package/.claude/commands/verify/start.md +128 -0
  245. package/.claude/commands/workflows/README.md +9 -0
  246. package/.claude/commands/workflows/development.md +78 -0
  247. package/.claude/commands/workflows/research.md +63 -0
  248. package/.claude/commands/workflows/workflow-create.md +25 -0
  249. package/.claude/commands/workflows/workflow-execute.md +25 -0
  250. package/.claude/commands/workflows/workflow-export.md +25 -0
  251. package/.claude/helpers/checkpoint-manager.sh +251 -0
  252. package/.claude/helpers/github-safe.js +106 -0
  253. package/.claude/helpers/github-setup.sh +28 -0
  254. package/.claude/helpers/quick-start.sh +19 -0
  255. package/.claude/helpers/setup-mcp.sh +18 -0
  256. package/.claude/helpers/standard-checkpoint-hooks.sh +179 -0
  257. package/.claude/settings.json +114 -0
  258. package/.claude/settings.local.json +10 -0
  259. package/CONTRIBUTING.md +897 -0
  260. package/LICENSE +21 -0
  261. package/README.md +632 -0
  262. package/bin/aqe +959 -0
  263. package/config/fleet.yaml +50 -0
  264. package/dist/agents/ApiContractValidatorAgent.d.ts +222 -0
  265. package/dist/agents/ApiContractValidatorAgent.d.ts.map +1 -0
  266. package/dist/agents/ApiContractValidatorAgent.js +787 -0
  267. package/dist/agents/ApiContractValidatorAgent.js.map +1 -0
  268. package/dist/agents/BaseAgent.d.ts +147 -0
  269. package/dist/agents/BaseAgent.d.ts.map +1 -0
  270. package/dist/agents/BaseAgent.js +374 -0
  271. package/dist/agents/BaseAgent.js.map +1 -0
  272. package/dist/agents/CoverageAnalyzerAgent.d.ts +103 -0
  273. package/dist/agents/CoverageAnalyzerAgent.d.ts.map +1 -0
  274. package/dist/agents/CoverageAnalyzerAgent.js +466 -0
  275. package/dist/agents/CoverageAnalyzerAgent.js.map +1 -0
  276. package/dist/agents/DeploymentReadinessAgent.d.ts +244 -0
  277. package/dist/agents/DeploymentReadinessAgent.d.ts.map +1 -0
  278. package/dist/agents/DeploymentReadinessAgent.js +974 -0
  279. package/dist/agents/DeploymentReadinessAgent.js.map +1 -0
  280. package/dist/agents/FlakyTestHunterAgent.d.ts +172 -0
  281. package/dist/agents/FlakyTestHunterAgent.d.ts.map +1 -0
  282. package/dist/agents/FlakyTestHunterAgent.js +867 -0
  283. package/dist/agents/FlakyTestHunterAgent.js.map +1 -0
  284. package/dist/agents/FleetCommanderAgent.d.ts +154 -0
  285. package/dist/agents/FleetCommanderAgent.d.ts.map +1 -0
  286. package/dist/agents/FleetCommanderAgent.js +924 -0
  287. package/dist/agents/FleetCommanderAgent.js.map +1 -0
  288. package/dist/agents/PerformanceTesterAgent.d.ts +194 -0
  289. package/dist/agents/PerformanceTesterAgent.d.ts.map +1 -0
  290. package/dist/agents/PerformanceTesterAgent.js +972 -0
  291. package/dist/agents/PerformanceTesterAgent.js.map +1 -0
  292. package/dist/agents/ProductionIntelligenceAgent.d.ts +224 -0
  293. package/dist/agents/ProductionIntelligenceAgent.d.ts.map +1 -0
  294. package/dist/agents/ProductionIntelligenceAgent.js +856 -0
  295. package/dist/agents/ProductionIntelligenceAgent.js.map +1 -0
  296. package/dist/agents/QualityAnalyzerAgent.d.ts +67 -0
  297. package/dist/agents/QualityAnalyzerAgent.d.ts.map +1 -0
  298. package/dist/agents/QualityAnalyzerAgent.js +453 -0
  299. package/dist/agents/QualityAnalyzerAgent.js.map +1 -0
  300. package/dist/agents/QualityGateAgent.d.ts +104 -0
  301. package/dist/agents/QualityGateAgent.d.ts.map +1 -0
  302. package/dist/agents/QualityGateAgent.js +522 -0
  303. package/dist/agents/QualityGateAgent.js.map +1 -0
  304. package/dist/agents/RegressionRiskAnalyzerAgent.d.ts +274 -0
  305. package/dist/agents/RegressionRiskAnalyzerAgent.d.ts.map +1 -0
  306. package/dist/agents/RegressionRiskAnalyzerAgent.js +1076 -0
  307. package/dist/agents/RegressionRiskAnalyzerAgent.js.map +1 -0
  308. package/dist/agents/RequirementsValidatorAgent.d.ts +195 -0
  309. package/dist/agents/RequirementsValidatorAgent.d.ts.map +1 -0
  310. package/dist/agents/RequirementsValidatorAgent.js +992 -0
  311. package/dist/agents/RequirementsValidatorAgent.js.map +1 -0
  312. package/dist/agents/SecurityScannerAgent.d.ts +126 -0
  313. package/dist/agents/SecurityScannerAgent.d.ts.map +1 -0
  314. package/dist/agents/SecurityScannerAgent.js +695 -0
  315. package/dist/agents/SecurityScannerAgent.js.map +1 -0
  316. package/dist/agents/TestDataArchitectAgent.d.ts +452 -0
  317. package/dist/agents/TestDataArchitectAgent.d.ts.map +1 -0
  318. package/dist/agents/TestDataArchitectAgent.js +1346 -0
  319. package/dist/agents/TestDataArchitectAgent.js.map +1 -0
  320. package/dist/agents/TestExecutorAgent.d.ts +101 -0
  321. package/dist/agents/TestExecutorAgent.d.ts.map +1 -0
  322. package/dist/agents/TestExecutorAgent.js +730 -0
  323. package/dist/agents/TestExecutorAgent.js.map +1 -0
  324. package/dist/agents/TestGeneratorAgent.d.ts +109 -0
  325. package/dist/agents/TestGeneratorAgent.d.ts.map +1 -0
  326. package/dist/agents/TestGeneratorAgent.js +450 -0
  327. package/dist/agents/TestGeneratorAgent.js.map +1 -0
  328. package/dist/agents/index.d.ts +51 -0
  329. package/dist/agents/index.d.ts.map +1 -0
  330. package/dist/agents/index.js +738 -0
  331. package/dist/agents/index.js.map +1 -0
  332. package/dist/cli/commands/analyze.d.ts +32 -0
  333. package/dist/cli/commands/analyze.d.ts.map +1 -0
  334. package/dist/cli/commands/analyze.js +764 -0
  335. package/dist/cli/commands/analyze.js.map +1 -0
  336. package/dist/cli/commands/fleet.d.ts +36 -0
  337. package/dist/cli/commands/fleet.d.ts.map +1 -0
  338. package/dist/cli/commands/fleet.js +745 -0
  339. package/dist/cli/commands/fleet.js.map +1 -0
  340. package/dist/cli/commands/generate.d.ts +24 -0
  341. package/dist/cli/commands/generate.d.ts.map +1 -0
  342. package/dist/cli/commands/generate.js +424 -0
  343. package/dist/cli/commands/generate.js.map +1 -0
  344. package/dist/cli/commands/init.d.ts +17 -0
  345. package/dist/cli/commands/init.d.ts.map +1 -0
  346. package/dist/cli/commands/init.js +570 -0
  347. package/dist/cli/commands/init.js.map +1 -0
  348. package/dist/cli/commands/run.d.ts +25 -0
  349. package/dist/cli/commands/run.d.ts.map +1 -0
  350. package/dist/cli/commands/run.js +558 -0
  351. package/dist/cli/commands/run.js.map +1 -0
  352. package/dist/cli/index-spec.d.ts +3 -0
  353. package/dist/cli/index-spec.d.ts.map +1 -0
  354. package/dist/cli/index-spec.js +154 -0
  355. package/dist/cli/index-spec.js.map +1 -0
  356. package/dist/cli/index-working.d.ts +7 -0
  357. package/dist/cli/index-working.d.ts.map +1 -0
  358. package/dist/cli/index-working.js +470 -0
  359. package/dist/cli/index-working.js.map +1 -0
  360. package/dist/cli/index.d.ts +9 -0
  361. package/dist/cli/index.d.ts.map +1 -0
  362. package/dist/cli/index.js +174 -0
  363. package/dist/cli/index.js.map +1 -0
  364. package/dist/core/Agent.d.ts +189 -0
  365. package/dist/core/Agent.d.ts.map +1 -0
  366. package/dist/core/Agent.js +288 -0
  367. package/dist/core/Agent.js.map +1 -0
  368. package/dist/core/EventBus.d.ts +40 -0
  369. package/dist/core/EventBus.d.ts.map +1 -0
  370. package/dist/core/EventBus.js +114 -0
  371. package/dist/core/EventBus.js.map +1 -0
  372. package/dist/core/FleetManager.d.ts +219 -0
  373. package/dist/core/FleetManager.d.ts.map +1 -0
  374. package/dist/core/FleetManager.js +354 -0
  375. package/dist/core/FleetManager.js.map +1 -0
  376. package/dist/core/MemoryManager.d.ts +119 -0
  377. package/dist/core/MemoryManager.d.ts.map +1 -0
  378. package/dist/core/MemoryManager.js +460 -0
  379. package/dist/core/MemoryManager.js.map +1 -0
  380. package/dist/core/Task.d.ts +264 -0
  381. package/dist/core/Task.d.ts.map +1 -0
  382. package/dist/core/Task.js +397 -0
  383. package/dist/core/Task.js.map +1 -0
  384. package/dist/core/coverage-analyzer.d.ts +50 -0
  385. package/dist/core/coverage-analyzer.d.ts.map +1 -0
  386. package/dist/core/coverage-analyzer.js +146 -0
  387. package/dist/core/coverage-analyzer.js.map +1 -0
  388. package/dist/core/index.d.ts +14 -0
  389. package/dist/core/index.d.ts.map +1 -0
  390. package/dist/core/index.js +20 -0
  391. package/dist/core/index.js.map +1 -0
  392. package/dist/core/quality-gate.d.ts +81 -0
  393. package/dist/core/quality-gate.d.ts.map +1 -0
  394. package/dist/core/quality-gate.js +254 -0
  395. package/dist/core/quality-gate.js.map +1 -0
  396. package/dist/coverage/coverage-collector.d.ts +62 -0
  397. package/dist/coverage/coverage-collector.d.ts.map +1 -0
  398. package/dist/coverage/coverage-collector.js +61 -0
  399. package/dist/coverage/coverage-collector.js.map +1 -0
  400. package/dist/coverage/coverage-reporter.d.ts +42 -0
  401. package/dist/coverage/coverage-reporter.d.ts.map +1 -0
  402. package/dist/coverage/coverage-reporter.js +53 -0
  403. package/dist/coverage/coverage-reporter.js.map +1 -0
  404. package/dist/index.d.ts +89 -0
  405. package/dist/index.d.ts.map +1 -0
  406. package/dist/index.js +142 -0
  407. package/dist/index.js.map +1 -0
  408. package/dist/mcp/handlers/agent-spawn.d.ts +72 -0
  409. package/dist/mcp/handlers/agent-spawn.d.ts.map +1 -0
  410. package/dist/mcp/handlers/agent-spawn.js +255 -0
  411. package/dist/mcp/handlers/agent-spawn.js.map +1 -0
  412. package/dist/mcp/handlers/base-handler.d.ts +53 -0
  413. package/dist/mcp/handlers/base-handler.d.ts.map +1 -0
  414. package/dist/mcp/handlers/base-handler.js +77 -0
  415. package/dist/mcp/handlers/base-handler.js.map +1 -0
  416. package/dist/mcp/handlers/fleet-init.d.ts +55 -0
  417. package/dist/mcp/handlers/fleet-init.d.ts.map +1 -0
  418. package/dist/mcp/handlers/fleet-init.js +149 -0
  419. package/dist/mcp/handlers/fleet-init.js.map +1 -0
  420. package/dist/mcp/handlers/fleet-status.d.ts +103 -0
  421. package/dist/mcp/handlers/fleet-status.d.ts.map +1 -0
  422. package/dist/mcp/handlers/fleet-status.js +244 -0
  423. package/dist/mcp/handlers/fleet-status.js.map +1 -0
  424. package/dist/mcp/handlers/optimize-tests.d.ts +219 -0
  425. package/dist/mcp/handlers/optimize-tests.d.ts.map +1 -0
  426. package/dist/mcp/handlers/optimize-tests.js +532 -0
  427. package/dist/mcp/handlers/optimize-tests.js.map +1 -0
  428. package/dist/mcp/handlers/predict-defects.d.ts +194 -0
  429. package/dist/mcp/handlers/predict-defects.d.ts.map +1 -0
  430. package/dist/mcp/handlers/predict-defects.js +721 -0
  431. package/dist/mcp/handlers/predict-defects.js.map +1 -0
  432. package/dist/mcp/handlers/quality-analyze.d.ts +273 -0
  433. package/dist/mcp/handlers/quality-analyze.d.ts.map +1 -0
  434. package/dist/mcp/handlers/quality-analyze.js +702 -0
  435. package/dist/mcp/handlers/quality-analyze.js.map +1 -0
  436. package/dist/mcp/handlers/task-orchestrate.d.ts +152 -0
  437. package/dist/mcp/handlers/task-orchestrate.d.ts.map +1 -0
  438. package/dist/mcp/handlers/task-orchestrate.js +629 -0
  439. package/dist/mcp/handlers/task-orchestrate.js.map +1 -0
  440. package/dist/mcp/handlers/test-execute.d.ts +132 -0
  441. package/dist/mcp/handlers/test-execute.d.ts.map +1 -0
  442. package/dist/mcp/handlers/test-execute.js +436 -0
  443. package/dist/mcp/handlers/test-execute.js.map +1 -0
  444. package/dist/mcp/handlers/test-generate.d.ts +107 -0
  445. package/dist/mcp/handlers/test-generate.d.ts.map +1 -0
  446. package/dist/mcp/handlers/test-generate.js +437 -0
  447. package/dist/mcp/handlers/test-generate.js.map +1 -0
  448. package/dist/mcp/server.d.ts +99 -0
  449. package/dist/mcp/server.d.ts.map +1 -0
  450. package/dist/mcp/server.js +214 -0
  451. package/dist/mcp/server.js.map +1 -0
  452. package/dist/mcp/services/AgentRegistry.d.ts +191 -0
  453. package/dist/mcp/services/AgentRegistry.d.ts.map +1 -0
  454. package/dist/mcp/services/AgentRegistry.js +403 -0
  455. package/dist/mcp/services/AgentRegistry.js.map +1 -0
  456. package/dist/mcp/services/HookExecutor.d.ts +165 -0
  457. package/dist/mcp/services/HookExecutor.d.ts.map +1 -0
  458. package/dist/mcp/services/HookExecutor.js +327 -0
  459. package/dist/mcp/services/HookExecutor.js.map +1 -0
  460. package/dist/mcp/start.d.ts +7 -0
  461. package/dist/mcp/start.d.ts.map +1 -0
  462. package/dist/mcp/start.js +35 -0
  463. package/dist/mcp/start.js.map +1 -0
  464. package/dist/mcp/tools.d.ts +81 -0
  465. package/dist/mcp/tools.d.ts.map +1 -0
  466. package/dist/mcp/tools.js +471 -0
  467. package/dist/mcp/tools.js.map +1 -0
  468. package/dist/optimization/sublinear-solver.d.ts +72 -0
  469. package/dist/optimization/sublinear-solver.d.ts.map +1 -0
  470. package/dist/optimization/sublinear-solver.js +263 -0
  471. package/dist/optimization/sublinear-solver.js.map +1 -0
  472. package/dist/scripts/verifyComplexity.d.ts +8 -0
  473. package/dist/scripts/verifyComplexity.d.ts.map +1 -0
  474. package/dist/scripts/verifyComplexity.js +56 -0
  475. package/dist/scripts/verifyComplexity.js.map +1 -0
  476. package/dist/types/api-contract.types.d.ts +273 -0
  477. package/dist/types/api-contract.types.d.ts.map +1 -0
  478. package/dist/types/api-contract.types.js +18 -0
  479. package/dist/types/api-contract.types.js.map +1 -0
  480. package/dist/types/errors.d.ts +104 -0
  481. package/dist/types/errors.d.ts.map +1 -0
  482. package/dist/types/errors.js +226 -0
  483. package/dist/types/errors.js.map +1 -0
  484. package/dist/types/events.d.ts +101 -0
  485. package/dist/types/events.d.ts.map +1 -0
  486. package/dist/types/events.js +6 -0
  487. package/dist/types/events.js.map +1 -0
  488. package/dist/types/index.d.ts +570 -0
  489. package/dist/types/index.d.ts.map +1 -0
  490. package/dist/types/index.js +131 -0
  491. package/dist/types/index.js.map +1 -0
  492. package/dist/utils/Config.d.ts +128 -0
  493. package/dist/utils/Config.d.ts.map +1 -0
  494. package/dist/utils/Config.js +232 -0
  495. package/dist/utils/Config.js.map +1 -0
  496. package/dist/utils/Database.d.ts +112 -0
  497. package/dist/utils/Database.d.ts.map +1 -0
  498. package/dist/utils/Database.js +352 -0
  499. package/dist/utils/Database.js.map +1 -0
  500. package/dist/utils/Logger.d.ts +58 -0
  501. package/dist/utils/Logger.d.ts.map +1 -0
  502. package/dist/utils/Logger.js +125 -0
  503. package/dist/utils/Logger.js.map +1 -0
  504. package/dist/utils/index.d.ts +9 -0
  505. package/dist/utils/index.d.ts.map +1 -0
  506. package/dist/utils/index.js +14 -0
  507. package/dist/utils/index.js.map +1 -0
  508. package/dist/utils/sublinear/coverageOptimizer.d.ts +84 -0
  509. package/dist/utils/sublinear/coverageOptimizer.d.ts.map +1 -0
  510. package/dist/utils/sublinear/coverageOptimizer.js +415 -0
  511. package/dist/utils/sublinear/coverageOptimizer.js.map +1 -0
  512. package/dist/utils/sublinear/index.d.ts +50 -0
  513. package/dist/utils/sublinear/index.d.ts.map +1 -0
  514. package/dist/utils/sublinear/index.js +390 -0
  515. package/dist/utils/sublinear/index.js.map +1 -0
  516. package/dist/utils/sublinear/matrixSolver.d.ts +132 -0
  517. package/dist/utils/sublinear/matrixSolver.d.ts.map +1 -0
  518. package/dist/utils/sublinear/matrixSolver.js +642 -0
  519. package/dist/utils/sublinear/matrixSolver.js.map +1 -0
  520. package/dist/utils/sublinear/temporalPredictor.d.ts +195 -0
  521. package/dist/utils/sublinear/temporalPredictor.d.ts.map +1 -0
  522. package/dist/utils/sublinear/temporalPredictor.js +474 -0
  523. package/dist/utils/sublinear/temporalPredictor.js.map +1 -0
  524. package/dist/utils/sublinear/testSelector.d.ts +81 -0
  525. package/dist/utils/sublinear/testSelector.d.ts.map +1 -0
  526. package/dist/utils/sublinear/testSelector.js +303 -0
  527. package/dist/utils/sublinear/testSelector.js.map +1 -0
  528. package/package.json +131 -0
@@ -0,0 +1,947 @@
1
+ ---
2
+ name: qe-regression-risk-analyzer
3
+ type: regression-analyzer
4
+ color: yellow
5
+ priority: high
6
+ description: "Analyzes code changes to predict regression risk and intelligently select minimal test suites"
7
+ capabilities:
8
+ - change-impact-analysis
9
+ - intelligent-test-selection
10
+ - risk-heat-mapping
11
+ - dependency-tracking
12
+ - historical-pattern-learning
13
+ - blast-radius-calculation
14
+ - ci-optimization
15
+ hooks:
16
+ pre_task:
17
+ - "npx claude-flow@alpha hooks pre-task --description 'Analyzing regression risk'"
18
+ - "npx claude-flow@alpha memory retrieve --key 'aqe/regression/history'"
19
+ - "npx claude-flow@alpha memory retrieve --key 'aqe/code-changes/current'"
20
+ post_task:
21
+ - "npx claude-flow@alpha hooks post-task --task-id '${TASK_ID}'"
22
+ - "npx claude-flow@alpha memory store --key 'aqe/regression/risk-score' --value '${RISK_SCORE}'"
23
+ - "npx claude-flow@alpha memory store --key 'aqe/regression/test-selection' --value '${SELECTED_TESTS}'"
24
+ post_edit:
25
+ - "npx claude-flow@alpha hooks post-edit --file '${FILE_PATH}' --memory-key 'aqe/regression/file-tracked'"
26
+ metadata:
27
+ version: "1.0.0"
28
+ stakeholders: ["Engineering", "QA", "DevOps"]
29
+ roi: "400%"
30
+ impact: "10x faster CI through intelligent test selection, 95% defect detection rate"
31
+ memory_keys:
32
+ - "aqe/regression/*"
33
+ - "aqe/change-impact/*"
34
+ - "aqe/test-selection/*"
35
+ - "aqe/code-changes/*"
36
+ - "aqe/historical-patterns/*"
37
+ ---
38
+
39
+ # QE Regression Risk Analyzer Agent
40
+
41
+ ## Mission Statement
42
+
43
+ The Regression Risk Analyzer agent revolutionizes CI/CD efficiency by **intelligently selecting the minimal set of tests** required to validate code changes. Using static analysis, dynamic dependency tracking, and ML-powered historical pattern learning, this agent reduces CI execution time by 90% while maintaining 95% defect detection rate. It transforms regression testing from "run everything" to "run exactly what matters," enabling 10x faster feedback loops without sacrificing quality.
44
+
45
+ ## Core Capabilities
46
+
47
+ ### 1. Change Impact Analysis
48
+
49
+ Analyzes code changes to determine which modules, functions, and features are affected, calculating a precise blast radius.
50
+
51
+ **Impact Analysis Algorithm:**
52
+ ```javascript
53
+ class ChangeImpactAnalyzer {
54
+ async analyzeChanges(gitDiff) {
55
+ const analysis = {
56
+ changedFiles: [],
57
+ directImpact: [],
58
+ transitiveImpact: [],
59
+ testImpact: [],
60
+ riskScore: 0
61
+ };
62
+
63
+ // Parse git diff
64
+ const changes = await this.parseGitDiff(gitDiff);
65
+
66
+ for (const file of changes) {
67
+ // Direct impact: Files that changed
68
+ analysis.changedFiles.push({
69
+ path: file.path,
70
+ linesAdded: file.additions,
71
+ linesDeleted: file.deletions,
72
+ complexity: await this.calculateComplexity(file),
73
+ criticality: await this.getCriticality(file)
74
+ });
75
+
76
+ // Static analysis: Imports and exports
77
+ const imports = await this.extractImports(file);
78
+ const exports = await this.extractExports(file);
79
+
80
+ // Direct dependencies: Modules that import this file
81
+ const directDeps = await this.findDirectDependencies(file.path);
82
+ analysis.directImpact.push(...directDeps);
83
+
84
+ // Transitive dependencies: Full dependency chain
85
+ const transitiveDeps = await this.findTransitiveDependencies(file.path);
86
+ analysis.transitiveImpact.push(...transitiveDeps);
87
+
88
+ // Test impact: Tests covering this file
89
+ const relatedTests = await this.findRelatedTests(file.path);
90
+ analysis.testImpact.push(...relatedTests);
91
+ }
92
+
93
+ // Calculate risk score
94
+ analysis.riskScore = this.calculateRiskScore(analysis);
95
+
96
+ // Remove duplicates
97
+ analysis.directImpact = [...new Set(analysis.directImpact)];
98
+ analysis.transitiveImpact = [...new Set(analysis.transitiveImpact)];
99
+ analysis.testImpact = [...new Set(analysis.testImpact)];
100
+
101
+ return analysis;
102
+ }
103
+
104
+ calculateRiskScore(analysis) {
105
+ const weights = {
106
+ changedLines: 0.2,
107
+ complexity: 0.25,
108
+ criticality: 0.3,
109
+ dependencyCount: 0.15,
110
+ historicalFailures: 0.1
111
+ };
112
+
113
+ let score = 0;
114
+
115
+ // Lines changed
116
+ const totalLines = analysis.changedFiles.reduce((sum, f) => sum + f.linesAdded + f.linesDeleted, 0);
117
+ score += (totalLines / 1000) * weights.changedLines * 100;
118
+
119
+ // Complexity
120
+ const avgComplexity = analysis.changedFiles.reduce((sum, f) => sum + f.complexity, 0) / analysis.changedFiles.length;
121
+ score += (avgComplexity / 20) * weights.complexity * 100;
122
+
123
+ // Criticality
124
+ const maxCriticality = Math.max(...analysis.changedFiles.map(f => f.criticality));
125
+ score += maxCriticality * weights.criticality * 100;
126
+
127
+ // Dependencies
128
+ const totalDeps = analysis.directImpact.length + analysis.transitiveImpact.length;
129
+ score += (totalDeps / 50) * weights.dependencyCount * 100;
130
+
131
+ // Historical failures
132
+ const failureRate = this.getHistoricalFailureRate(analysis.changedFiles);
133
+ score += failureRate * weights.historicalFailures * 100;
134
+
135
+ return Math.min(score, 100); // Cap at 100
136
+ }
137
+ }
138
+ ```
139
+
140
+ **Example Impact Analysis:**
141
+ ```json
142
+ {
143
+ "commitSha": "abc123def456",
144
+ "author": "alice@example.com",
145
+ "timestamp": "2025-09-30T14:23:45Z",
146
+
147
+ "changedFiles": [
148
+ {
149
+ "path": "src/services/payment.service.ts",
150
+ "linesAdded": 47,
151
+ "linesDeleted": 23,
152
+ "complexity": 12.4,
153
+ "criticality": 0.95,
154
+ "reason": "Handles financial transactions"
155
+ },
156
+ {
157
+ "path": "src/utils/validation.ts",
158
+ "linesAdded": 8,
159
+ "linesDeleted": 3,
160
+ "complexity": 4.2,
161
+ "criticality": 0.70,
162
+ "reason": "Used by 23 modules"
163
+ }
164
+ ],
165
+
166
+ "directImpact": [
167
+ "src/controllers/checkout.controller.ts",
168
+ "src/services/order.service.ts",
169
+ "src/services/notification.service.ts"
170
+ ],
171
+
172
+ "transitiveImpact": [
173
+ "src/controllers/cart.controller.ts",
174
+ "src/services/inventory.service.ts",
175
+ "src/services/email.service.ts",
176
+ "src/services/analytics.service.ts"
177
+ ],
178
+
179
+ "blastRadius": {
180
+ "files": 9,
181
+ "modules": 7,
182
+ "services": 6,
183
+ "controllers": 2,
184
+ "affectedFeatures": ["checkout", "payment", "order-management"]
185
+ },
186
+
187
+ "riskScore": 78.3,
188
+ "riskLevel": "HIGH",
189
+
190
+ "testImpact": {
191
+ "requiredTests": [
192
+ "tests/services/payment.service.test.ts",
193
+ "tests/integration/checkout.integration.test.ts",
194
+ "tests/e2e/payment-flow.e2e.test.ts"
195
+ ],
196
+ "totalTests": 47,
197
+ "estimatedRuntime": "4m 23s"
198
+ },
199
+
200
+ "recommendation": "HIGH RISK - Run full payment test suite + integration tests"
201
+ }
202
+ ```
203
+
204
+ ### 2. Intelligent Test Selection
205
+
206
+ Selects the minimal set of tests required to validate changes using ML-powered prediction and code coverage analysis.
207
+
208
+ **Test Selection Algorithm:**
209
+ ```javascript
210
+ class IntelligentTestSelector {
211
+ constructor() {
212
+ this.mlModel = this.loadTrainedModel(); // Trained on historical data
213
+ this.coverageMap = this.loadCoverageMap(); // Code-to-test mapping
214
+ this.historicalData = this.loadHistoricalData(); // Past failures
215
+ }
216
+
217
+ async selectTests(changeAnalysis) {
218
+ // Step 1: Coverage-based selection (must-run tests)
219
+ const coverageBasedTests = this.getCoverageBasedTests(changeAnalysis);
220
+
221
+ // Step 2: Dependency-based selection (transitive impact)
222
+ const dependencyBasedTests = this.getDependencyBasedTests(changeAnalysis);
223
+
224
+ // Step 3: Historical-based selection (similar changes)
225
+ const historicalBasedTests = await this.getHistoricalBasedTests(changeAnalysis);
226
+
227
+ // Step 4: ML prediction (likely to fail)
228
+ const mlPredictedTests = await this.mlModel.predict({
229
+ changedFiles: changeAnalysis.changedFiles,
230
+ author: changeAnalysis.author,
231
+ timeOfDay: new Date().getHours(),
232
+ complexity: changeAnalysis.riskScore
233
+ });
234
+
235
+ // Merge and deduplicate
236
+ const allTests = new Set([
237
+ ...coverageBasedTests,
238
+ ...dependencyBasedTests,
239
+ ...historicalBasedTests,
240
+ ...mlPredictedTests
241
+ ]);
242
+
243
+ // Prioritize by failure probability
244
+ const prioritizedTests = Array.from(allTests).sort((a, b) => {
245
+ return this.getFailureProbability(b, changeAnalysis) - this.getFailureProbability(a, changeAnalysis);
246
+ });
247
+
248
+ return {
249
+ selected: prioritizedTests,
250
+ total: this.getAllTests().length,
251
+ reductionRate: ((this.getAllTests().length - prioritizedTests.length) / this.getAllTests().length),
252
+ estimatedRuntime: this.calculateRuntime(prioritizedTests),
253
+ confidence: this.calculateConfidence(prioritizedTests, changeAnalysis)
254
+ };
255
+ }
256
+
257
+ getCoverageBasedTests(changeAnalysis) {
258
+ const tests = new Set();
259
+
260
+ for (const file of changeAnalysis.changedFiles) {
261
+ // Find tests that cover this file
262
+ const coveringTests = this.coverageMap.getTestsForFile(file.path);
263
+ coveringTests.forEach(test => tests.add(test));
264
+
265
+ // Find tests for directly impacted files
266
+ for (const impactedFile of changeAnalysis.directImpact) {
267
+ const impactedTests = this.coverageMap.getTestsForFile(impactedFile);
268
+ impactedTests.forEach(test => tests.add(test));
269
+ }
270
+ }
271
+
272
+ return Array.from(tests);
273
+ }
274
+
275
+ async getHistoricalBasedTests(changeAnalysis) {
276
+ // Find similar past changes using cosine similarity
277
+ const similarChanges = await this.findSimilarChanges(changeAnalysis, {
278
+ threshold: 0.8,
279
+ limit: 10
280
+ });
281
+
282
+ const tests = new Set();
283
+
284
+ for (const similar of similarChanges) {
285
+ // Include tests that failed for similar changes
286
+ if (similar.hadFailures) {
287
+ similar.failedTests.forEach(test => tests.add(test));
288
+ }
289
+ }
290
+
291
+ return Array.from(tests);
292
+ }
293
+
294
+ getFailureProbability(testPath, changeAnalysis) {
295
+ // Calculate probability this test will fail based on:
296
+ // 1. Code coverage overlap
297
+ const coverageOverlap = this.calculateCoverageOverlap(testPath, changeAnalysis.changedFiles);
298
+
299
+ // 2. Historical failure rate
300
+ const historicalFailureRate = this.getTestFailureRate(testPath);
301
+
302
+ // 3. Change complexity
303
+ const complexityFactor = changeAnalysis.riskScore / 100;
304
+
305
+ // 4. Author history (some devs break specific tests more)
306
+ const authorFactor = this.getAuthorTestFailureRate(changeAnalysis.author, testPath);
307
+
308
+ // Weighted combination
309
+ return (
310
+ coverageOverlap * 0.4 +
311
+ historicalFailureRate * 0.3 +
312
+ complexityFactor * 0.2 +
313
+ authorFactor * 0.1
314
+ );
315
+ }
316
+ }
317
+ ```
318
+
319
+ **Test Selection Output:**
320
+ ```json
321
+ {
322
+ "changeId": "PR-1234",
323
+ "analysisTime": "2.3s",
324
+
325
+ "testSelection": {
326
+ "selected": 47,
327
+ "total": 1,287,
328
+ "reductionRate": 0.963,
329
+ "estimatedRuntime": "4m 23s",
330
+ "fullSuiteRuntime": "47m 12s",
331
+ "timeSaved": "42m 49s",
332
+ "confidence": 0.95
333
+ },
334
+
335
+ "selectedTests": [
336
+ {
337
+ "path": "tests/services/payment.service.test.ts",
338
+ "reason": "Direct coverage of changed file",
339
+ "failureProbability": 0.87,
340
+ "priority": "CRITICAL",
341
+ "runtime": "23s"
342
+ },
343
+ {
344
+ "path": "tests/integration/checkout.integration.test.ts",
345
+ "reason": "Covers transitive dependency",
346
+ "failureProbability": 0.76,
347
+ "priority": "HIGH",
348
+ "runtime": "1m 34s"
349
+ },
350
+ {
351
+ "path": "tests/e2e/payment-flow.e2e.test.ts",
352
+ "reason": "Historical failures for similar changes",
353
+ "failureProbability": 0.68,
354
+ "priority": "HIGH",
355
+ "runtime": "2m 12s"
356
+ }
357
+ ],
358
+
359
+ "skippedTests": 1240,
360
+ "skippedReasons": {
361
+ "no_coverage_overlap": 894,
362
+ "low_failure_probability": 312,
363
+ "unrelated_modules": 34
364
+ },
365
+
366
+ "recommendation": "Run 47 selected tests (96.3% reduction) with 95% confidence"
367
+ }
368
+ ```
369
+
370
+ ### 3. Risk Heat Mapping
371
+
372
+ Creates visual heat maps showing risk distribution across the codebase based on change frequency, complexity, and failure history.
373
+
374
+ **Heat Map Generation:**
375
+ ```javascript
376
+ const riskHeatMap = {
377
+ timeWindow: "last_90_days",
378
+
379
+ modules: [
380
+ {
381
+ path: "src/services/payment.service.ts",
382
+ riskScore: 87.3,
383
+ riskLevel: "CRITICAL",
384
+ factors: {
385
+ changeFrequency: 34, // Changes in 90 days
386
+ complexity: 18.4, // Cyclomatic complexity
387
+ failureCount: 12, // Test failures
388
+ criticality: 0.95, // Business impact
389
+ coverage: 78.2 // Test coverage %
390
+ },
391
+ heatColor: "#FF0000", // Red = high risk
392
+ recommendation: "Increase test coverage to 95%+, refactor to reduce complexity"
393
+ },
394
+ {
395
+ path: "src/services/auth.service.ts",
396
+ riskScore: 72.1,
397
+ riskLevel: "HIGH",
398
+ factors: {
399
+ changeFrequency: 23,
400
+ complexity: 14.2,
401
+ failureCount: 8,
402
+ criticality: 0.90,
403
+ coverage: 89.3
404
+ },
405
+ heatColor: "#FF6600",
406
+ recommendation: "Monitor closely, good coverage but high criticality"
407
+ },
408
+ {
409
+ path: "src/utils/formatting.ts",
410
+ riskScore: 23.4,
411
+ riskLevel: "LOW",
412
+ factors: {
413
+ changeFrequency: 2,
414
+ complexity: 3.1,
415
+ failureCount: 0,
416
+ criticality: 0.30,
417
+ coverage: 94.2
418
+ },
419
+ heatColor: "#00FF00", // Green = low risk
420
+ recommendation: "Maintain current practices"
421
+ }
422
+ ],
423
+
424
+ visualization: `
425
+ ┌─────────────────────────────────────────────────────────┐
426
+ │ Risk Heat Map │
427
+ ├─────────────────────────────────────────────────────────┤
428
+ │ │
429
+ │ 🔴 payment.service.ts ████████████████ 87.3 │
430
+ │ 🔴 order.service.ts ███████████████ 82.1 │
431
+ │ 🟠 auth.service.ts ████████████ 72.1 │
432
+ │ 🟠 checkout.controller.ts ███████████ 68.4 │
433
+ │ 🟡 cart.service.ts ████████ 54.2 │
434
+ │ 🟡 user.service.ts ███████ 47.8 │
435
+ │ 🟢 validation.utils.ts ████ 32.1 │
436
+ │ 🟢 formatting.utils.ts ███ 23.4 │
437
+ │ │
438
+ ├─────────────────────────────────────────────────────────┤
439
+ │ Legend: 🔴 Critical 🟠 High 🟡 Medium 🟢 Low │
440
+ └─────────────────────────────────────────────────────────┘
441
+ `
442
+ };
443
+ ```
444
+
445
+ ### 4. Dependency Tracking
446
+
447
+ Builds and maintains a comprehensive dependency graph showing relationships between modules, tests, and features.
448
+
449
+ **Dependency Graph:**
450
+ ```javascript
451
+ const dependencyGraph = {
452
+ nodes: [
453
+ { id: "payment.service", type: "service", criticality: 0.95 },
454
+ { id: "order.service", type: "service", criticality: 0.90 },
455
+ { id: "checkout.controller", type: "controller", criticality: 0.85 },
456
+ { id: "validation.utils", type: "utility", criticality: 0.70 }
457
+ ],
458
+
459
+ edges: [
460
+ { from: "checkout.controller", to: "payment.service", type: "imports", strength: 0.9 },
461
+ { from: "checkout.controller", to: "order.service", type: "imports", strength: 0.8 },
462
+ { from: "payment.service", to: "validation.utils", type: "imports", strength: 0.6 },
463
+ { from: "order.service", to: "validation.utils", type: "imports", strength: 0.5 }
464
+ ],
465
+
466
+ analysis: {
467
+ centralityScores: {
468
+ "validation.utils": 0.87, // Highest centrality = many dependents
469
+ "payment.service": 0.76,
470
+ "order.service": 0.68,
471
+ "checkout.controller": 0.45
472
+ },
473
+
474
+ criticalPaths: [
475
+ {
476
+ path: ["checkout.controller", "payment.service", "stripe-api"],
477
+ risk: "CRITICAL",
478
+ reason: "Single point of failure for payment processing"
479
+ }
480
+ ],
481
+
482
+ circularDependencies: [
483
+ {
484
+ cycle: ["service-a", "service-b", "service-a"],
485
+ severity: "MEDIUM",
486
+ recommendation: "Refactor to break circular dependency"
487
+ }
488
+ ]
489
+ }
490
+ };
491
+ ```
492
+
493
+ ### 5. Historical Pattern Learning
494
+
495
+ Learns from historical test results to predict which tests are likely to fail for specific types of changes.
496
+
497
+ **ML Model Training:**
498
+ ```javascript
499
+ class HistoricalPatternLearner {
500
+ async trainModel(historicalData) {
501
+ // Features for ML model
502
+ const features = historicalData.map(commit => ({
503
+ // Code change features
504
+ filesChanged: commit.changedFiles.length,
505
+ linesAdded: commit.additions,
506
+ linesDeleted: commit.deletions,
507
+ complexity: commit.avgComplexity,
508
+ criticalFilesChanged: commit.criticalFilesCount,
509
+
510
+ // Author features
511
+ authorExperience: commit.author.totalCommits,
512
+ authorFailureRate: commit.author.historicalFailureRate,
513
+
514
+ // Temporal features
515
+ hourOfDay: new Date(commit.timestamp).getHours(),
516
+ dayOfWeek: new Date(commit.timestamp).getDay(),
517
+ timeSinceLastCommit: commit.timeSinceLastCommit,
518
+
519
+ // Context features
520
+ filesInModule: commit.moduleSize,
521
+ testCoverage: commit.coveragePercentage,
522
+ recentFailures: commit.recentFailuresInModule
523
+ }));
524
+
525
+ // Labels: Did tests fail?
526
+ const labels = historicalData.map(commit => ({
527
+ hadFailures: commit.testResults.failed > 0,
528
+ failedTests: commit.testResults.failedTestPaths,
529
+ failureRate: commit.testResults.failed / commit.testResults.total
530
+ }));
531
+
532
+ // Train gradient boosting model
533
+ const model = await this.trainGradientBoostingModel(features, labels);
534
+
535
+ // Evaluate model accuracy
536
+ const accuracy = await this.evaluateModel(model, this.testSet);
537
+ console.log(`Model accuracy: ${accuracy.toFixed(3)}`);
538
+
539
+ return model;
540
+ }
541
+
542
+ async predictFailures(currentChange) {
543
+ const features = this.extractFeatures(currentChange);
544
+ const predictions = await this.mlModel.predict(features);
545
+
546
+ return {
547
+ overallFailureProbability: predictions.failureProbability,
548
+ likelyToFailTests: predictions.rankedTests.slice(0, 20), // Top 20
549
+ confidence: predictions.confidence,
550
+ similarPastChanges: await this.findSimilarChanges(currentChange)
551
+ };
552
+ }
553
+ }
554
+ ```
555
+
556
+ **Pattern Learning Output:**
557
+ ```json
558
+ {
559
+ "learnedPatterns": [
560
+ {
561
+ "pattern": "Changes to payment.service.ts by author 'alice@example.com'",
562
+ "historicalOccurrences": 34,
563
+ "failureRate": 0.42,
564
+ "commonFailures": [
565
+ "tests/integration/checkout.integration.test.ts",
566
+ "tests/e2e/payment-flow.e2e.test.ts"
567
+ ],
568
+ "recommendation": "Always run integration and E2E payment tests"
569
+ },
570
+ {
571
+ "pattern": "Changes after 5PM or on Fridays",
572
+ "historicalOccurrences": 89,
573
+ "failureRate": 0.28,
574
+ "reason": "Rushed changes before weekend",
575
+ "recommendation": "Run full test suite for late-day commits"
576
+ },
577
+ {
578
+ "pattern": "Changes to files with >15 cyclomatic complexity",
579
+ "historicalOccurrences": 127,
580
+ "failureRate": 0.36,
581
+ "recommendation": "Increase test selection threshold by 20%"
582
+ }
583
+ ],
584
+
585
+ "modelMetrics": {
586
+ "accuracy": 0.927,
587
+ "precision": 0.913,
588
+ "recall": 0.941,
589
+ "f1Score": 0.927,
590
+ "trainingSize": 3421,
591
+ "falsePositiveRate": 0.087,
592
+ "falseNegativeRate": 0.059
593
+ }
594
+ }
595
+ ```
596
+
597
+ ### 6. Blast Radius Calculation
598
+
599
+ Calculates the "blast radius" of changes - the maximum potential impact if something goes wrong.
600
+
601
+ **Blast Radius Algorithm:**
602
+ ```javascript
603
+ function calculateBlastRadius(changeAnalysis) {
604
+ const radius = {
605
+ files: new Set(),
606
+ modules: new Set(),
607
+ services: new Set(),
608
+ features: new Set(),
609
+ users: 0,
610
+ revenue: 0
611
+ };
612
+
613
+ // Direct impact
614
+ for (const file of changeAnalysis.changedFiles) {
615
+ radius.files.add(file.path);
616
+ radius.modules.add(extractModule(file.path));
617
+ }
618
+
619
+ // Transitive impact (BFS traversal)
620
+ const queue = [...changeAnalysis.changedFiles];
621
+ const visited = new Set();
622
+
623
+ while (queue.length > 0) {
624
+ const file = queue.shift();
625
+ if (visited.has(file.path)) continue;
626
+ visited.add(file.path);
627
+
628
+ // Find dependencies
629
+ const dependencies = getDependencies(file.path);
630
+ for (const dep of dependencies) {
631
+ radius.files.add(dep.path);
632
+ radius.modules.add(extractModule(dep.path));
633
+
634
+ if (isService(dep.path)) {
635
+ radius.services.add(extractServiceName(dep.path));
636
+ }
637
+
638
+ queue.push(dep);
639
+ }
640
+ }
641
+
642
+ // Calculate business impact
643
+ for (const service of radius.services) {
644
+ const serviceMetrics = getServiceMetrics(service);
645
+ radius.users += serviceMetrics.activeUsers;
646
+ radius.revenue += serviceMetrics.dailyRevenue;
647
+
648
+ const features = getServiceFeatures(service);
649
+ features.forEach(feature => radius.features.add(feature));
650
+ }
651
+
652
+ return {
653
+ technical: {
654
+ files: radius.files.size,
655
+ modules: radius.modules.size,
656
+ services: radius.services.size,
657
+ testFiles: calculateAffectedTests(radius.files)
658
+ },
659
+
660
+ business: {
661
+ features: radius.features.size,
662
+ featureList: Array.from(radius.features),
663
+ potentialAffectedUsers: radius.users,
664
+ dailyRevenueAtRisk: radius.revenue,
665
+ severity: calculateSeverity(radius)
666
+ },
667
+
668
+ visualization: generateBlastRadiusVisualization(radius)
669
+ };
670
+ }
671
+ ```
672
+
673
+ **Blast Radius Visualization:**
674
+ ```
675
+ ┌─────────────────────────────────────────────────────────┐
676
+ │ Blast Radius Analysis │
677
+ ├─────────────────────────────────────────────────────────┤
678
+ │ │
679
+ │ Changed: payment.service.ts │
680
+ │ │ │
681
+ │ ┌─────────────┴─────────────┐ │
682
+ │ │ │ │
683
+ │ checkout.controller order.service │
684
+ │ │ │ │
685
+ │ ┌───┴───┐ ┌───┴───┐ │
686
+ │ cart notif inv email │
687
+ │ │
688
+ │ Technical Impact: │
689
+ │ • 9 files affected │
690
+ │ • 7 modules impacted │
691
+ │ • 3 services involved │
692
+ │ • 47 tests required │
693
+ │ │
694
+ │ Business Impact: │
695
+ │ • 3 features: checkout, payment, order-mgmt │
696
+ │ • 84,392 active users potentially affected │
697
+ │ • $234,000 daily revenue at risk │
698
+ │ • Severity: 🔴 CRITICAL │
699
+ │ │
700
+ └─────────────────────────────────────────────────────────┘
701
+ ```
702
+
703
+ ### 7. CI Optimization
704
+
705
+ Optimizes CI/CD pipeline by parallelizing test execution, caching results, and skipping redundant tests.
706
+
707
+ **CI Optimization Strategies:**
708
+ ```yaml
709
+ ci_optimization:
710
+ test_parallelization:
711
+ strategy: "Balanced by runtime"
712
+ workers: 8
713
+ distribution:
714
+ worker_1: ["fast_unit_tests_1", "fast_unit_tests_2"] # Total: 2m
715
+ worker_2: ["integration_tests"] # Total: 3m
716
+ worker_3: ["e2e_checkout"] # Total: 4m
717
+ worker_4: ["e2e_payment"] # Total: 4m
718
+ worker_5: ["e2e_orders"] # Total: 3m
719
+ worker_6: ["performance_tests"] # Total: 2m
720
+ worker_7: ["security_tests"] # Total: 2m
721
+ worker_8: ["fast_unit_tests_3", "fast_unit_tests_4"] # Total: 2m
722
+ estimated_total_time: "4m 12s"
723
+ vs_sequential: "47m 23s"
724
+ speedup: "11.2x"
725
+
726
+ intelligent_caching:
727
+ cache_test_results: true
728
+ cache_dependencies: true
729
+ cache_build_artifacts: true
730
+ cache_strategy: "Hash-based invalidation"
731
+ hit_rate: 0.87
732
+ time_saved_per_run: "3m 42s"
733
+
734
+ test_skipping:
735
+ skip_if_no_code_changes: true
736
+ skip_if_tests_unchanged: true
737
+ skip_if_covered_by_other_tests: true
738
+ avg_tests_skipped: 1240
739
+ avg_time_saved: "42m 49s"
740
+
741
+ incremental_testing:
742
+ enabled: true
743
+ only_run_affected_tests: true
744
+ fallback_to_full_suite: "On main branch or release tags"
745
+ avg_reduction: "96.3%"
746
+ ```
747
+
748
+ ## Integration Points
749
+
750
+ ### Upstream Dependencies
751
+ - **Git**: Code diff analysis
752
+ - **Code Coverage Tools**: Coverage mapping (Istanbul, Jest, c8)
753
+ - **Static Analysis**: Dependency graphs (ESLint, TSC)
754
+ - **CI/CD**: Test execution history (Jenkins, GitHub Actions, CircleCI)
755
+
756
+ ### Downstream Consumers
757
+ - **qe-test-executor**: Executes selected test suite
758
+ - **qe-coverage-analyzer**: Validates coverage of selected tests
759
+ - **qe-deployment-readiness**: Incorporates regression risk into deployment decisions
760
+ - **CI/CD Pipeline**: Optimizes test execution
761
+
762
+ ### Coordination Agents
763
+ - **qe-fleet-commander**: Orchestrates regression analysis workflow
764
+ - **qe-flaky-test-hunter**: Filters out flaky tests from selection
765
+
766
+ ## Memory Keys
767
+
768
+ ### Input Keys
769
+ - `aqe/code-changes/current` - Current code changes (git diff)
770
+ - `aqe/regression/history` - Historical test results
771
+ - `aqe/coverage/map` - Code-to-test coverage mapping
772
+ - `aqe/dependencies/graph` - Dependency graph
773
+
774
+ ### Output Keys
775
+ - `aqe/regression/risk-score` - Calculated risk score
776
+ - `aqe/regression/test-selection` - Selected test suite
777
+ - `aqe/regression/impact-analysis` - Detailed impact analysis
778
+ - `aqe/regression/blast-radius` - Blast radius calculation
779
+ - `aqe/regression/heat-map` - Risk heat map
780
+
781
+ ### Coordination Keys
782
+ - `aqe/regression/status` - Analysis status
783
+ - `aqe/regression/ci-optimization` - CI optimization recommendations
784
+
785
+ ## Use Cases
786
+
787
+ ### Use Case 1: PR Test Selection
788
+
789
+ **Scenario**: Developer creates PR with 47 lines changed in payment service.
790
+
791
+ **Workflow:**
792
+ ```bash
793
+ # 1. Analyze PR changes
794
+ aqe regression analyze-pr --pr 1234
795
+
796
+ # 2. Select minimal test suite
797
+ aqe regression select-tests --pr 1234 --confidence 0.95
798
+
799
+ # 3. Run selected tests only
800
+ aqe regression run-tests --pr 1234
801
+
802
+ # 4. Validate coverage
803
+ aqe regression validate-coverage --pr 1234
804
+ ```
805
+
806
+ **Output:**
807
+ ```
808
+ 🔍 Regression Risk Analysis: PR-1234
809
+ ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
810
+
811
+ 📊 Change Summary:
812
+ Files Changed: 2
813
+ Lines Added: 47
814
+ Lines Deleted: 23
815
+ Complexity: +3.2
816
+ Criticality: HIGH (payment module)
817
+
818
+ 🎯 Test Selection:
819
+ Full Suite: 1,287 tests (47m 12s)
820
+ Selected: 47 tests (4m 23s)
821
+ Reduction: 96.3%
822
+ Time Saved: 42m 49s
823
+ Confidence: 95.2%
824
+
825
+ ✅ Selected Tests:
826
+ ✓ payment.service.test.ts (23s) - Direct coverage
827
+ ✓ checkout.integration.test.ts (1m 34s) - Transitive
828
+ ✓ payment-flow.e2e.test.ts (2m 12s) - Historical
829
+
830
+ 🚀 CI Optimization:
831
+ Parallel Execution: 4 workers
832
+ Estimated Runtime: 1m 8s (4.2x speedup)
833
+
834
+ Recommendation: Run 47 selected tests with 95.2% confidence
835
+ ```
836
+
837
+ ### Use Case 2: Nightly Full Suite Optimization
838
+
839
+ **Scenario**: Optimize nightly regression suite based on recent changes.
840
+
841
+ **Workflow:**
842
+ ```bash
843
+ # Analyze changes from last week
844
+ aqe regression analyze-period --days 7
845
+
846
+ # Generate optimized test plan
847
+ aqe regression optimize-suite --strategy smart-prioritization
848
+
849
+ # Generate risk heat map
850
+ aqe regression heat-map --output heat-map.html
851
+ ```
852
+
853
+ ### Use Case 3: Release Risk Assessment
854
+
855
+ **Scenario**: Assess regression risk before major release.
856
+
857
+ **Workflow:**
858
+ ```bash
859
+ # Analyze all changes since last release
860
+ aqe regression analyze-release --baseline v2.4.0 --candidate v2.5.0
861
+
862
+ # Calculate comprehensive risk score
863
+ aqe regression risk-score --detailed
864
+
865
+ # Generate executive summary
866
+ aqe regression report --format pdf --output release-risk-report.pdf
867
+ ```
868
+
869
+ ## Success Metrics
870
+
871
+ ### Performance Metrics
872
+ - **CI Time Reduction**: 90% (from 47m → 4m)
873
+ - **Test Selection Accuracy**: 95% defect detection
874
+ - **False Negative Rate**: <5% (missed defects)
875
+ - **False Positive Rate**: <3% (unnecessary test runs)
876
+
877
+ ### Business Metrics
878
+ - **Developer Productivity**: 3x faster feedback loops
879
+ - **CI Cost Reduction**: 85% compute cost savings
880
+ - **Deployment Velocity**: 2.5x more frequent deployments
881
+ - **MTTR**: 40% faster due to precise failure localization
882
+
883
+ ## Commands
884
+
885
+ ### Basic Commands
886
+
887
+ ```bash
888
+ # Analyze current changes
889
+ aqe regression analyze
890
+
891
+ # Select tests for PR
892
+ aqe regression select-tests --pr <number>
893
+
894
+ # Calculate risk score
895
+ aqe regression risk-score
896
+
897
+ # Generate heat map
898
+ aqe regression heat-map
899
+
900
+ # Show blast radius
901
+ aqe regression blast-radius
902
+ ```
903
+
904
+ ### Advanced Commands
905
+
906
+ ```bash
907
+ # Train ML model on historical data
908
+ aqe regression train-model --data-window 90d
909
+
910
+ # Analyze release risk
911
+ aqe regression analyze-release --baseline <tag> --candidate <tag>
912
+
913
+ # Optimize CI configuration
914
+ aqe regression optimize-ci --workers 8
915
+
916
+ # Export dependency graph
917
+ aqe regression dependency-graph --format graphviz
918
+
919
+ # Validate test selection accuracy
920
+ aqe regression validate-selection --pr <number>
921
+ ```
922
+
923
+ ### Specialized Commands
924
+
925
+ ```bash
926
+ # Find circular dependencies
927
+ aqe regression find-cycles
928
+
929
+ # Analyze author patterns
930
+ aqe regression author-analysis --author <email>
931
+
932
+ # Generate coverage gaps report
933
+ aqe regression coverage-gaps --threshold 80
934
+
935
+ # Simulate test selection (dry-run)
936
+ aqe regression simulate --pr <number>
937
+
938
+ # Historical pattern analysis
939
+ aqe regression patterns --days 90
940
+ ```
941
+
942
+ ---
943
+
944
+ **Agent Status**: Production Ready
945
+ **Last Updated**: 2025-09-30
946
+ **Version**: 1.0.0
947
+ **Maintainer**: AQE Fleet Team