agentic-qe 1.4.3 → 1.5.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 (410) 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 +504 -0
  115. package/README.md +24 -16
  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/core/FleetManager.d.ts.map +1 -1
  121. package/dist/core/FleetManager.js +17 -5
  122. package/dist/core/FleetManager.js.map +1 -1
  123. package/dist/core/MemoryManager.d.ts +27 -0
  124. package/dist/core/MemoryManager.d.ts.map +1 -1
  125. package/dist/core/MemoryManager.js +69 -4
  126. package/dist/core/MemoryManager.js.map +1 -1
  127. package/dist/core/PatternDatabaseAdapter.d.ts.map +1 -1
  128. package/dist/core/PatternDatabaseAdapter.js +14 -4
  129. package/dist/core/PatternDatabaseAdapter.js.map +1 -1
  130. package/dist/learning/LearningEngine.d.ts.map +1 -1
  131. package/dist/learning/LearningEngine.js +18 -4
  132. package/dist/learning/LearningEngine.js.map +1 -1
  133. package/dist/mcp/handlers/coordination/index.d.ts +14 -14
  134. package/dist/mcp/handlers/coordination/index.d.ts.map +1 -1
  135. package/dist/mcp/handlers/coordination/index.js +14 -14
  136. package/dist/mcp/handlers/coordination/index.js.map +1 -1
  137. package/dist/mcp/handlers/coordination/task-status.d.ts.map +1 -1
  138. package/dist/mcp/handlers/coordination/task-status.js +3 -5
  139. package/dist/mcp/handlers/coordination/task-status.js.map +1 -1
  140. package/dist/mcp/handlers/phase2/Phase2Tools.d.ts.map +1 -1
  141. package/dist/mcp/handlers/phase2/Phase2Tools.js +39 -10
  142. package/dist/mcp/handlers/phase2/Phase2Tools.js.map +1 -1
  143. package/dist/mcp/handlers/phase3/Phase3DomainTools.d.ts +63 -0
  144. package/dist/mcp/handlers/phase3/Phase3DomainTools.d.ts.map +1 -0
  145. package/dist/mcp/handlers/phase3/Phase3DomainTools.js +885 -0
  146. package/dist/mcp/handlers/phase3/Phase3DomainTools.js.map +1 -0
  147. package/dist/mcp/handlers/phase3/index.d.ts +6 -0
  148. package/dist/mcp/handlers/phase3/index.d.ts.map +1 -0
  149. package/dist/mcp/handlers/phase3/index.js +10 -0
  150. package/dist/mcp/handlers/phase3/index.js.map +1 -0
  151. package/dist/mcp/handlers/prediction/index.d.ts +10 -10
  152. package/dist/mcp/handlers/prediction/index.d.ts.map +1 -1
  153. package/dist/mcp/handlers/prediction/index.js +10 -10
  154. package/dist/mcp/handlers/prediction/index.js.map +1 -1
  155. package/dist/mcp/handlers/security/check-authz.d.ts +152 -0
  156. package/dist/mcp/handlers/security/check-authz.d.ts.map +1 -0
  157. package/dist/mcp/handlers/security/check-authz.js +434 -0
  158. package/dist/mcp/handlers/security/check-authz.js.map +1 -0
  159. package/dist/mcp/handlers/security/generate-report.d.ts +156 -0
  160. package/dist/mcp/handlers/security/generate-report.d.ts.map +1 -0
  161. package/dist/mcp/handlers/security/generate-report.js +469 -0
  162. package/dist/mcp/handlers/security/generate-report.js.map +1 -0
  163. package/dist/mcp/handlers/security/index.d.ts +80 -0
  164. package/dist/mcp/handlers/security/index.d.ts.map +1 -0
  165. package/dist/mcp/handlers/security/index.js +91 -0
  166. package/dist/mcp/handlers/security/index.js.map +1 -0
  167. package/dist/mcp/handlers/security/scan-comprehensive.d.ts +66 -0
  168. package/dist/mcp/handlers/security/scan-comprehensive.d.ts.map +1 -0
  169. package/dist/mcp/handlers/security/scan-comprehensive.js +296 -0
  170. package/dist/mcp/handlers/security/scan-comprehensive.js.map +1 -0
  171. package/dist/mcp/handlers/security/scan-dependencies.d.ts +148 -0
  172. package/dist/mcp/handlers/security/scan-dependencies.d.ts.map +1 -0
  173. package/dist/mcp/handlers/security/scan-dependencies.js +354 -0
  174. package/dist/mcp/handlers/security/scan-dependencies.js.map +1 -0
  175. package/dist/mcp/handlers/security/validate-auth.d.ts +128 -0
  176. package/dist/mcp/handlers/security/validate-auth.d.ts.map +1 -0
  177. package/dist/mcp/handlers/security/validate-auth.js +294 -0
  178. package/dist/mcp/handlers/security/validate-auth.js.map +1 -0
  179. package/dist/mcp/handlers/task-orchestrate.d.ts +21 -1
  180. package/dist/mcp/handlers/task-orchestrate.d.ts.map +1 -1
  181. package/dist/mcp/handlers/task-orchestrate.js +32 -2
  182. package/dist/mcp/handlers/task-orchestrate.js.map +1 -1
  183. package/dist/mcp/handlers/test/generate-integration-tests.d.ts +95 -0
  184. package/dist/mcp/handlers/test/generate-integration-tests.d.ts.map +1 -0
  185. package/dist/mcp/handlers/test/generate-integration-tests.js +286 -0
  186. package/dist/mcp/handlers/test/generate-integration-tests.js.map +1 -0
  187. package/dist/mcp/handlers/test/generate-unit-tests.d.ts +89 -0
  188. package/dist/mcp/handlers/test/generate-unit-tests.d.ts.map +1 -0
  189. package/dist/mcp/handlers/test/generate-unit-tests.js +273 -0
  190. package/dist/mcp/handlers/test/generate-unit-tests.js.map +1 -0
  191. package/dist/mcp/handlers/test/optimize-test-suite.d.ts +97 -0
  192. package/dist/mcp/handlers/test/optimize-test-suite.d.ts.map +1 -0
  193. package/dist/mcp/handlers/test/optimize-test-suite.js +282 -0
  194. package/dist/mcp/handlers/test/optimize-test-suite.js.map +1 -0
  195. package/dist/mcp/server.d.ts.map +1 -1
  196. package/dist/mcp/server.js +212 -1
  197. package/dist/mcp/server.js.map +1 -1
  198. package/dist/mcp/tools/deprecated.d.ts +1390 -0
  199. package/dist/mcp/tools/deprecated.d.ts.map +1 -0
  200. package/dist/mcp/tools/deprecated.js +859 -0
  201. package/dist/mcp/tools/deprecated.js.map +1 -0
  202. package/dist/mcp/tools/qe/api-contract/index.d.ts +138 -0
  203. package/dist/mcp/tools/qe/api-contract/index.d.ts.map +1 -0
  204. package/dist/mcp/tools/qe/api-contract/index.js +572 -0
  205. package/dist/mcp/tools/qe/api-contract/index.js.map +1 -0
  206. package/dist/mcp/tools/qe/code-quality/analyze-complexity.d.ts +110 -0
  207. package/dist/mcp/tools/qe/code-quality/analyze-complexity.d.ts.map +1 -0
  208. package/dist/mcp/tools/qe/code-quality/analyze-complexity.js +381 -0
  209. package/dist/mcp/tools/qe/code-quality/analyze-complexity.js.map +1 -0
  210. package/dist/mcp/tools/qe/code-quality/calculate-quality-metrics.d.ts +115 -0
  211. package/dist/mcp/tools/qe/code-quality/calculate-quality-metrics.d.ts.map +1 -0
  212. package/dist/mcp/tools/qe/code-quality/calculate-quality-metrics.js +461 -0
  213. package/dist/mcp/tools/qe/code-quality/calculate-quality-metrics.js.map +1 -0
  214. package/dist/mcp/tools/qe/code-quality/index.d.ts +12 -0
  215. package/dist/mcp/tools/qe/code-quality/index.d.ts.map +1 -0
  216. package/dist/mcp/tools/qe/code-quality/index.js +30 -0
  217. package/dist/mcp/tools/qe/code-quality/index.js.map +1 -0
  218. package/dist/mcp/tools/qe/coverage/analyze-with-risk-scoring.d.ts +58 -0
  219. package/dist/mcp/tools/qe/coverage/analyze-with-risk-scoring.d.ts.map +1 -0
  220. package/dist/mcp/tools/qe/coverage/analyze-with-risk-scoring.js +172 -0
  221. package/dist/mcp/tools/qe/coverage/analyze-with-risk-scoring.js.map +1 -0
  222. package/dist/mcp/tools/qe/coverage/calculate-trends.d.ts +73 -0
  223. package/dist/mcp/tools/qe/coverage/calculate-trends.d.ts.map +1 -0
  224. package/dist/mcp/tools/qe/coverage/calculate-trends.js +240 -0
  225. package/dist/mcp/tools/qe/coverage/calculate-trends.js.map +1 -0
  226. package/dist/mcp/tools/qe/coverage/detect-gaps-ml.d.ts +38 -0
  227. package/dist/mcp/tools/qe/coverage/detect-gaps-ml.d.ts.map +1 -0
  228. package/dist/mcp/tools/qe/coverage/detect-gaps-ml.js +204 -0
  229. package/dist/mcp/tools/qe/coverage/detect-gaps-ml.js.map +1 -0
  230. package/dist/mcp/tools/qe/coverage/index.d.ts +12 -0
  231. package/dist/mcp/tools/qe/coverage/index.d.ts.map +1 -0
  232. package/dist/mcp/tools/qe/coverage/index.js +23 -0
  233. package/dist/mcp/tools/qe/coverage/index.js.map +1 -0
  234. package/dist/mcp/tools/qe/coverage/recommend-tests.d.ts +46 -0
  235. package/dist/mcp/tools/qe/coverage/recommend-tests.d.ts.map +1 -0
  236. package/dist/mcp/tools/qe/coverage/recommend-tests.js +248 -0
  237. package/dist/mcp/tools/qe/coverage/recommend-tests.js.map +1 -0
  238. package/dist/mcp/tools/qe/flaky-detection/analyze-patterns.d.ts +179 -0
  239. package/dist/mcp/tools/qe/flaky-detection/analyze-patterns.d.ts.map +1 -0
  240. package/dist/mcp/tools/qe/flaky-detection/analyze-patterns.js +554 -0
  241. package/dist/mcp/tools/qe/flaky-detection/analyze-patterns.js.map +1 -0
  242. package/dist/mcp/tools/qe/flaky-detection/detect-statistical.d.ts +172 -0
  243. package/dist/mcp/tools/qe/flaky-detection/detect-statistical.d.ts.map +1 -0
  244. package/dist/mcp/tools/qe/flaky-detection/detect-statistical.js +498 -0
  245. package/dist/mcp/tools/qe/flaky-detection/detect-statistical.js.map +1 -0
  246. package/dist/mcp/tools/qe/flaky-detection/index.d.ts +35 -0
  247. package/dist/mcp/tools/qe/flaky-detection/index.d.ts.map +1 -0
  248. package/dist/mcp/tools/qe/flaky-detection/index.js +66 -0
  249. package/dist/mcp/tools/qe/flaky-detection/index.js.map +1 -0
  250. package/dist/mcp/tools/qe/flaky-detection/stabilize-auto.d.ts +159 -0
  251. package/dist/mcp/tools/qe/flaky-detection/stabilize-auto.d.ts.map +1 -0
  252. package/dist/mcp/tools/qe/flaky-detection/stabilize-auto.js +462 -0
  253. package/dist/mcp/tools/qe/flaky-detection/stabilize-auto.js.map +1 -0
  254. package/dist/mcp/tools/qe/fleet/index.d.ts +422 -0
  255. package/dist/mcp/tools/qe/fleet/index.d.ts.map +1 -0
  256. package/dist/mcp/tools/qe/fleet/index.js +652 -0
  257. package/dist/mcp/tools/qe/fleet/index.js.map +1 -0
  258. package/dist/mcp/tools/qe/performance/analyze-bottlenecks.d.ts +180 -0
  259. package/dist/mcp/tools/qe/performance/analyze-bottlenecks.d.ts.map +1 -0
  260. package/dist/mcp/tools/qe/performance/analyze-bottlenecks.js +347 -0
  261. package/dist/mcp/tools/qe/performance/analyze-bottlenecks.js.map +1 -0
  262. package/dist/mcp/tools/qe/performance/generate-report.d.ts +146 -0
  263. package/dist/mcp/tools/qe/performance/generate-report.d.ts.map +1 -0
  264. package/dist/mcp/tools/qe/performance/generate-report.js +354 -0
  265. package/dist/mcp/tools/qe/performance/generate-report.js.map +1 -0
  266. package/dist/mcp/tools/qe/performance/index.d.ts +13 -0
  267. package/dist/mcp/tools/qe/performance/index.d.ts.map +1 -0
  268. package/dist/mcp/tools/qe/performance/index.js +24 -0
  269. package/dist/mcp/tools/qe/performance/index.js.map +1 -0
  270. package/dist/mcp/tools/qe/performance/monitor-realtime.d.ts +120 -0
  271. package/dist/mcp/tools/qe/performance/monitor-realtime.d.ts.map +1 -0
  272. package/dist/mcp/tools/qe/performance/monitor-realtime.js +215 -0
  273. package/dist/mcp/tools/qe/performance/monitor-realtime.js.map +1 -0
  274. package/dist/mcp/tools/qe/performance/run-benchmark.d.ts +68 -0
  275. package/dist/mcp/tools/qe/performance/run-benchmark.d.ts.map +1 -0
  276. package/dist/mcp/tools/qe/performance/run-benchmark.js +120 -0
  277. package/dist/mcp/tools/qe/performance/run-benchmark.js.map +1 -0
  278. package/dist/mcp/tools/qe/quality-gates/assess-deployment-risk.d.ts +239 -0
  279. package/dist/mcp/tools/qe/quality-gates/assess-deployment-risk.d.ts.map +1 -0
  280. package/dist/mcp/tools/qe/quality-gates/assess-deployment-risk.js +671 -0
  281. package/dist/mcp/tools/qe/quality-gates/assess-deployment-risk.js.map +1 -0
  282. package/dist/mcp/tools/qe/quality-gates/evaluate-quality-gate.d.ts +219 -0
  283. package/dist/mcp/tools/qe/quality-gates/evaluate-quality-gate.d.ts.map +1 -0
  284. package/dist/mcp/tools/qe/quality-gates/evaluate-quality-gate.js +732 -0
  285. package/dist/mcp/tools/qe/quality-gates/evaluate-quality-gate.js.map +1 -0
  286. package/dist/mcp/tools/qe/quality-gates/generate-quality-report.d.ts +447 -0
  287. package/dist/mcp/tools/qe/quality-gates/generate-quality-report.d.ts.map +1 -0
  288. package/dist/mcp/tools/qe/quality-gates/generate-quality-report.js +551 -0
  289. package/dist/mcp/tools/qe/quality-gates/generate-quality-report.js.map +1 -0
  290. package/dist/mcp/tools/qe/quality-gates/index.d.ts +40 -0
  291. package/dist/mcp/tools/qe/quality-gates/index.d.ts.map +1 -0
  292. package/dist/mcp/tools/qe/quality-gates/index.js +56 -0
  293. package/dist/mcp/tools/qe/quality-gates/index.js.map +1 -0
  294. package/dist/mcp/tools/qe/quality-gates/validate-quality-metrics.d.ts +226 -0
  295. package/dist/mcp/tools/qe/quality-gates/validate-quality-metrics.d.ts.map +1 -0
  296. package/dist/mcp/tools/qe/quality-gates/validate-quality-metrics.js +603 -0
  297. package/dist/mcp/tools/qe/quality-gates/validate-quality-metrics.js.map +1 -0
  298. package/dist/mcp/tools/qe/regression/analyze-risk.d.ts +212 -0
  299. package/dist/mcp/tools/qe/regression/analyze-risk.d.ts.map +1 -0
  300. package/dist/mcp/tools/qe/regression/analyze-risk.js +617 -0
  301. package/dist/mcp/tools/qe/regression/analyze-risk.js.map +1 -0
  302. package/dist/mcp/tools/qe/regression/index.d.ts +36 -0
  303. package/dist/mcp/tools/qe/regression/index.d.ts.map +1 -0
  304. package/dist/mcp/tools/qe/regression/index.js +63 -0
  305. package/dist/mcp/tools/qe/regression/index.js.map +1 -0
  306. package/dist/mcp/tools/qe/regression/select-tests.d.ts +241 -0
  307. package/dist/mcp/tools/qe/regression/select-tests.d.ts.map +1 -0
  308. package/dist/mcp/tools/qe/regression/select-tests.js +601 -0
  309. package/dist/mcp/tools/qe/regression/select-tests.js.map +1 -0
  310. package/dist/mcp/tools/qe/requirements/generate-bdd-scenarios.d.ts +134 -0
  311. package/dist/mcp/tools/qe/requirements/generate-bdd-scenarios.d.ts.map +1 -0
  312. package/dist/mcp/tools/qe/requirements/generate-bdd-scenarios.js +737 -0
  313. package/dist/mcp/tools/qe/requirements/generate-bdd-scenarios.js.map +1 -0
  314. package/dist/mcp/tools/qe/requirements/index.d.ts +40 -0
  315. package/dist/mcp/tools/qe/requirements/index.d.ts.map +1 -0
  316. package/dist/mcp/tools/qe/requirements/index.js +84 -0
  317. package/dist/mcp/tools/qe/requirements/index.js.map +1 -0
  318. package/dist/mcp/tools/qe/requirements/validate-requirements.d.ts +196 -0
  319. package/dist/mcp/tools/qe/requirements/validate-requirements.d.ts.map +1 -0
  320. package/dist/mcp/tools/qe/requirements/validate-requirements.js +740 -0
  321. package/dist/mcp/tools/qe/requirements/validate-requirements.js.map +1 -0
  322. package/dist/mcp/tools/qe/security/detect-vulnerabilities.d.ts +300 -0
  323. package/dist/mcp/tools/qe/security/detect-vulnerabilities.d.ts.map +1 -0
  324. package/dist/mcp/tools/qe/security/detect-vulnerabilities.js +492 -0
  325. package/dist/mcp/tools/qe/security/detect-vulnerabilities.js.map +1 -0
  326. package/dist/mcp/tools/qe/security/index.d.ts +34 -0
  327. package/dist/mcp/tools/qe/security/index.d.ts.map +1 -0
  328. package/dist/mcp/tools/qe/security/index.js +44 -0
  329. package/dist/mcp/tools/qe/security/index.js.map +1 -0
  330. package/dist/mcp/tools/qe/security/scan-comprehensive.d.ts +240 -0
  331. package/dist/mcp/tools/qe/security/scan-comprehensive.d.ts.map +1 -0
  332. package/dist/mcp/tools/qe/security/scan-comprehensive.js +535 -0
  333. package/dist/mcp/tools/qe/security/scan-comprehensive.js.map +1 -0
  334. package/dist/mcp/tools/qe/security/validate-compliance.d.ts +299 -0
  335. package/dist/mcp/tools/qe/security/validate-compliance.d.ts.map +1 -0
  336. package/dist/mcp/tools/qe/security/validate-compliance.js +517 -0
  337. package/dist/mcp/tools/qe/security/validate-compliance.js.map +1 -0
  338. package/dist/mcp/tools/qe/shared/types.d.ts +840 -0
  339. package/dist/mcp/tools/qe/shared/types.d.ts.map +1 -0
  340. package/dist/mcp/tools/qe/shared/types.js +13 -0
  341. package/dist/mcp/tools/qe/shared/types.js.map +1 -0
  342. package/dist/mcp/tools/qe/test-data/analyze-schema.d.ts +264 -0
  343. package/dist/mcp/tools/qe/test-data/analyze-schema.d.ts.map +1 -0
  344. package/dist/mcp/tools/qe/test-data/analyze-schema.js +553 -0
  345. package/dist/mcp/tools/qe/test-data/analyze-schema.js.map +1 -0
  346. package/dist/mcp/tools/qe/test-data/generate-test-data.d.ts +167 -0
  347. package/dist/mcp/tools/qe/test-data/generate-test-data.d.ts.map +1 -0
  348. package/dist/mcp/tools/qe/test-data/generate-test-data.js +336 -0
  349. package/dist/mcp/tools/qe/test-data/generate-test-data.js.map +1 -0
  350. package/dist/mcp/tools/qe/test-data/index.d.ts +44 -0
  351. package/dist/mcp/tools/qe/test-data/index.d.ts.map +1 -0
  352. package/dist/mcp/tools/qe/test-data/index.js +90 -0
  353. package/dist/mcp/tools/qe/test-data/index.js.map +1 -0
  354. package/dist/mcp/tools/qe/test-data/mask-sensitive-data.d.ts +165 -0
  355. package/dist/mcp/tools/qe/test-data/mask-sensitive-data.d.ts.map +1 -0
  356. package/dist/mcp/tools/qe/test-data/mask-sensitive-data.js +342 -0
  357. package/dist/mcp/tools/qe/test-data/mask-sensitive-data.js.map +1 -0
  358. package/dist/mcp/tools/qe/test-generation/analyze-test-quality.d.ts +144 -0
  359. package/dist/mcp/tools/qe/test-generation/analyze-test-quality.d.ts.map +1 -0
  360. package/dist/mcp/tools/qe/test-generation/analyze-test-quality.js +432 -0
  361. package/dist/mcp/tools/qe/test-generation/analyze-test-quality.js.map +1 -0
  362. package/dist/mcp/tools/qe/test-generation/generate-integration-tests.d.ts +98 -0
  363. package/dist/mcp/tools/qe/test-generation/generate-integration-tests.d.ts.map +1 -0
  364. package/dist/mcp/tools/qe/test-generation/generate-integration-tests.js +459 -0
  365. package/dist/mcp/tools/qe/test-generation/generate-integration-tests.js.map +1 -0
  366. package/dist/mcp/tools/qe/test-generation/generate-unit-tests.d.ts +83 -0
  367. package/dist/mcp/tools/qe/test-generation/generate-unit-tests.d.ts.map +1 -0
  368. package/dist/mcp/tools/qe/test-generation/generate-unit-tests.js +483 -0
  369. package/dist/mcp/tools/qe/test-generation/generate-unit-tests.js.map +1 -0
  370. package/dist/mcp/tools/qe/test-generation/index.d.ts +56 -0
  371. package/dist/mcp/tools/qe/test-generation/index.d.ts.map +1 -0
  372. package/dist/mcp/tools/qe/test-generation/index.js +97 -0
  373. package/dist/mcp/tools/qe/test-generation/index.js.map +1 -0
  374. package/dist/mcp/tools/qe/test-generation/optimize-test-suite.d.ts +124 -0
  375. package/dist/mcp/tools/qe/test-generation/optimize-test-suite.d.ts.map +1 -0
  376. package/dist/mcp/tools/qe/test-generation/optimize-test-suite.js +362 -0
  377. package/dist/mcp/tools/qe/test-generation/optimize-test-suite.js.map +1 -0
  378. package/dist/mcp/tools/qe/visual/compare-screenshots.d.ts +119 -0
  379. package/dist/mcp/tools/qe/visual/compare-screenshots.d.ts.map +1 -0
  380. package/dist/mcp/tools/qe/visual/compare-screenshots.js +280 -0
  381. package/dist/mcp/tools/qe/visual/compare-screenshots.js.map +1 -0
  382. package/dist/mcp/tools/qe/visual/detect-regression.d.ts +138 -0
  383. package/dist/mcp/tools/qe/visual/detect-regression.d.ts.map +1 -0
  384. package/dist/mcp/tools/qe/visual/detect-regression.js +271 -0
  385. package/dist/mcp/tools/qe/visual/detect-regression.js.map +1 -0
  386. package/dist/mcp/tools/qe/visual/index.d.ts +16 -0
  387. package/dist/mcp/tools/qe/visual/index.d.ts.map +1 -0
  388. package/dist/mcp/tools/qe/visual/index.js +22 -0
  389. package/dist/mcp/tools/qe/visual/index.js.map +1 -0
  390. package/dist/mcp/tools/qe/visual/validate-accessibility.d.ts +276 -0
  391. package/dist/mcp/tools/qe/visual/validate-accessibility.d.ts.map +1 -0
  392. package/dist/mcp/tools/qe/visual/validate-accessibility.js +413 -0
  393. package/dist/mcp/tools/qe/visual/validate-accessibility.js.map +1 -0
  394. package/dist/mcp/tools.d.ts +44 -0
  395. package/dist/mcp/tools.d.ts.map +1 -1
  396. package/dist/mcp/tools.js +1980 -1
  397. package/dist/mcp/tools.js.map +1 -1
  398. package/package.json +2 -2
  399. package/dist/learning/__mocks__/LearningEngine.d.ts +0 -39
  400. package/dist/learning/__mocks__/LearningEngine.d.ts.map +0 -1
  401. package/dist/learning/__mocks__/LearningEngine.js +0 -116
  402. package/dist/learning/__mocks__/LearningEngine.js.map +0 -1
  403. package/dist/utils/__mocks__/Database.d.ts +0 -85
  404. package/dist/utils/__mocks__/Database.d.ts.map +0 -1
  405. package/dist/utils/__mocks__/Database.js +0 -125
  406. package/dist/utils/__mocks__/Database.js.map +0 -1
  407. package/dist/utils/__mocks__/Logger.d.ts +0 -26
  408. package/dist/utils/__mocks__/Logger.d.ts.map +0 -1
  409. package/dist/utils/__mocks__/Logger.js +0 -44
  410. package/dist/utils/__mocks__/Logger.js.map +0 -1
@@ -1,10 +1,6 @@
1
1
  ---
2
2
  name: qe-code-complexity
3
- version: 1.0.0
4
3
  description: Educational code complexity analyzer demonstrating the Agentic QE Fleet architecture
5
- tags: [quality-engineering, complexity-analysis, refactoring, learning-example]
6
- capabilities: [complexity-analysis, refactoring-recommendations, pattern-detection]
7
- type: quality-analyzer
8
4
  ---
9
5
 
10
6
  # QE Code Complexity Analyzer
@@ -252,28 +248,121 @@ npm test tests/agents/CodeComplexityAnalyzerAgent.test.ts
252
248
 
253
249
  ## Architecture Insights
254
250
 
255
- ### Memory Namespace
256
- - `aqe/complexity/${agentId}/current-request` - Active analysis request
257
- - `aqe/complexity/${agentId}/latest-result` - Most recent result
258
- - `aqe/complexity/${agentId}/history` - Historical analyses (last 100)
259
- - `aqe/complexity/${agentId}/errors/*` - Error tracking
260
251
 
261
- ### Events Emitted
262
- - `complexity:analysis:completed` - When analysis finishes successfully
263
- - `complexity:analysis:stored` - When results are persisted
252
+ ## Code Execution Workflows
264
253
 
265
- ### Capabilities Provided
266
- - `complexity-analysis` - Core analysis functionality
267
- - `refactoring-recommendations` - AI-powered suggestions
268
- - `pattern-detection` - Complex code pattern recognition
254
+ Analyze code complexity and generate refactoring recommendations.
269
255
 
270
- ## Next Steps
256
+ ### Code Complexity Analysis
271
257
 
272
- After understanding this agent, explore:
273
- - **TestGeneratorAgent**: See how it generates tests
274
- - **CoverageAnalyzerAgent**: Learn about O(log n) gap detection
275
- - **FleetManager**: Understand multi-agent coordination
276
- - **LearningEngine**: Discover how agents improve over time
258
+ ```typescript
259
+ /**
260
+ * Code Quality Analysis Tools
261
+ *
262
+ * Import path: 'agentic-qe/tools/qe/code-quality'
263
+ * Type definitions: 'agentic-qe/tools/qe/shared/types'
264
+ */
265
+
266
+ import type {
267
+ QEToolResponse
268
+ } from 'agentic-qe/tools/qe/shared/types';
269
+
270
+ import {
271
+ analyzeComplexity,
272
+ detectCodeSmells,
273
+ calculateMaintainability
274
+ } from 'agentic-qe/tools/qe/code-quality';
275
+
276
+ // Example: Analyze code complexity and get refactoring suggestions
277
+ const complexityParams = {
278
+ sourceFiles: ['./src/**/*.ts'],
279
+ metrics: ['cyclomatic', 'cognitive', 'maintainability'],
280
+ language: 'typescript',
281
+ thresholds: {
282
+ cyclomaticComplexity: 10,
283
+ cognitiveComplexity: 15,
284
+ maintainabilityIndex: 60
285
+ },
286
+ generateRecommendations: true
287
+ };
288
+
289
+ const analysis: QEToolResponse<any> =
290
+ await analyzeComplexity(complexityParams);
291
+
292
+ if (analysis.success && analysis.data) {
293
+ console.log('Code Complexity Analysis:');
294
+ console.log(` Average Cyclomatic: ${analysis.data.avgCyclomatic.toFixed(2)}`);
295
+ console.log(` Cognitive Complexity: ${analysis.data.cognitiveComplexity.toFixed(2)}`);
296
+ console.log(` Maintainability Index: ${analysis.data.maintainabilityIndex.toFixed(2)}`);
297
+
298
+ if (analysis.data.recommendations.length > 0) {
299
+ console.log('\n Refactoring Recommendations:');
300
+ analysis.data.recommendations.forEach((rec: any) => {
301
+ console.log(` - ${rec.file}: ${rec.suggestion} (Priority: ${rec.priority})`);
302
+ });
303
+ }
304
+ }
305
+
306
+ console.log('✅ Code complexity analysis complete');
307
+ ```
308
+
309
+ ### Code Smell Detection
310
+
311
+ ```typescript
312
+ // Detect code smells and anti-patterns
313
+ const smellParams = {
314
+ sourceFiles: ['./src/**/*.ts'],
315
+ smellTypes: ['long-method', 'large-class', 'duplicated-code', 'complex-conditional'],
316
+ severity: 'medium',
317
+ includeExamples: true
318
+ };
319
+
320
+ const smells: QEToolResponse<any> =
321
+ await detectCodeSmells(smellParams);
322
+
323
+ if (smells.success && smells.data) {
324
+ console.log('\nCode Smells Detected:');
325
+ smells.data.smells.forEach((smell: any) => {
326
+ console.log(` ${smell.type} in ${smell.file}:${smell.line}`);
327
+ console.log(` Severity: ${smell.severity}`);
328
+ console.log(` Suggestion: ${smell.suggestion}`);
329
+ });
330
+ }
331
+ ```
332
+
333
+ ### Maintainability Calculation
334
+
335
+ ```typescript
336
+ // Calculate comprehensive maintainability metrics
337
+ const maintainParams = {
338
+ sourceFiles: ['./src/**/*.ts'],
339
+ includeHistory: true,
340
+ comparePrevious: true
341
+ };
342
+
343
+ const maintainability: QEToolResponse<any> =
344
+ await calculateMaintainability(maintainParams);
345
+
346
+ if (maintainability.success && maintainability.data) {
347
+ console.log('\nMaintainability Analysis:');
348
+ console.log(` Overall Score: ${maintainability.data.overallScore}/100`);
349
+ console.log(` Technical Debt: ${maintainability.data.technicalDebt} hours`);
350
+ console.log(` Trend: ${maintainability.data.trend}`);
351
+ }
352
+ ```
353
+
354
+ ### Using Code Quality Tools via CLI
355
+
356
+ ```bash
357
+ # Analyze complexity
358
+ aqe code-quality analyze --files ./src/**/*.ts --metrics all
359
+
360
+ # Detect code smells
361
+ aqe code-quality detect-smells --files ./src/**/*.ts --severity medium
362
+
363
+ # Calculate maintainability
364
+ aqe code-quality maintainability --files ./src/**/*.ts --detailed
365
+ ```
277
366
 
278
367
  ## Resources
279
368
 
@@ -282,7 +371,6 @@ After understanding this agent, explore:
282
371
  - **Demo**: `examples/complexity-analysis/demo.ts`
283
372
  - **BaseAgent**: `src/agents/BaseAgent.ts`
284
373
 
285
- ---
286
374
 
287
375
  **Educational Agent**: This agent is designed for learning. For production complexity analysis, consider:
288
376
  - ESLint with complexity rules
@@ -0,0 +1,291 @@
1
+ ---
2
+ name: qe-code-complexity
3
+ version: 1.0.0
4
+ description: Educational code complexity analyzer demonstrating the Agentic QE Fleet architecture
5
+ tags: [quality-engineering, complexity-analysis, refactoring, learning-example]
6
+ capabilities: [complexity-analysis, refactoring-recommendations, pattern-detection]
7
+ type: quality-analyzer
8
+ ---
9
+
10
+ # QE Code Complexity Analyzer
11
+
12
+ ## Overview
13
+
14
+ The Code Complexity Analyzer is an **educational agent** that demonstrates the complete Agentic QE Fleet architecture. It analyzes code complexity metrics and provides AI-powered refactoring recommendations.
15
+
16
+ **Purpose**: Learning tool to understand how agents work in the AQE fleet.
17
+
18
+ ## Capabilities
19
+
20
+ ### 1. Complexity Analysis
21
+ - **Cyclomatic Complexity**: Measures decision point density
22
+ - **Cognitive Complexity**: Accounts for nesting and control flow
23
+ - **File Size Analysis**: Identifies overly large files
24
+ - **Function Metrics**: Tracks function count and average complexity
25
+
26
+ ### 2. Refactoring Recommendations
27
+ - AI-powered suggestions based on detected patterns
28
+ - Severity-based prioritization (low, medium, high, critical)
29
+ - Specific actionable advice (e.g., "Extract Method", "Reduce Nesting")
30
+
31
+ ### 3. Quality Scoring
32
+ - Holistic quality score (0-100)
33
+ - Issue-based deductions
34
+ - Helps prioritize refactoring efforts
35
+
36
+ ## Key Learning Concepts
37
+
38
+ ### BaseAgent Pattern
39
+ ```typescript
40
+ // All agents extend BaseAgent
41
+ export class CodeComplexityAnalyzerAgent extends BaseAgent {
42
+ // Define capabilities in constructor
43
+ constructor(config: CodeComplexityConfig) {
44
+ super({
45
+ ...config,
46
+ type: QEAgentType.QUALITY_ANALYZER,
47
+ capabilities: [/* ... */]
48
+ });
49
+ }
50
+ }
51
+ ```
52
+
53
+ ### Lifecycle Hooks
54
+ ```typescript
55
+ // Pre-task: Load context before work
56
+ protected async onPreTask(data: { assignment: any }): Promise<void> {
57
+ const history = await this.memoryStore.retrieve('aqe/complexity/.../history');
58
+ // Use historical data to improve analysis
59
+ }
60
+
61
+ // Post-task: Store results and coordinate
62
+ protected async onPostTask(data: PostTaskData): Promise<void> {
63
+ await this.memoryStore.store('aqe/complexity/.../results', data.result);
64
+ this.eventBus.emit('complexity:analysis:completed', { ... });
65
+ }
66
+
67
+ // Error handling: Learn from failures
68
+ protected async onTaskError(data: { assignment: any; error: Error }): Promise<void> {
69
+ await this.memoryStore.store('aqe/complexity/.../errors/...', { ... });
70
+ }
71
+ ```
72
+
73
+ ### Memory System
74
+ ```typescript
75
+ // Store results for other agents
76
+ await this.memoryStore.store(
77
+ 'aqe/complexity/${agentId}/latest-result',
78
+ result,
79
+ 86400 // 24 hour TTL
80
+ );
81
+
82
+ // Retrieve for coordination
83
+ const previous = await this.memoryStore.retrieve(
84
+ 'aqe/complexity/${agentId}/history'
85
+ );
86
+ ```
87
+
88
+ ### Event-Driven Architecture
89
+ ```typescript
90
+ // Emit events for coordination
91
+ this.eventBus.emit('complexity:analysis:completed', {
92
+ agentId: this.agentId,
93
+ result: analysisResult,
94
+ timestamp: new Date()
95
+ });
96
+
97
+ // Other agents can subscribe
98
+ eventBus.on('complexity:analysis:completed', (event) => {
99
+ // Test generator could prioritize complex code
100
+ // Coverage analyzer could focus on complex functions
101
+ });
102
+ ```
103
+
104
+ ## Usage Examples
105
+
106
+ ### From Claude Code CLI
107
+
108
+ ```bash
109
+ # Analyze a single file
110
+ claude "Use qe-code-complexity to analyze src/services/order-processor.ts"
111
+
112
+ # Analyze multiple files
113
+ claude "Run complexity analysis on all files in src/services/"
114
+
115
+ # Get refactoring recommendations
116
+ claude "Analyze src/utils/validator.ts and suggest refactorings"
117
+ ```
118
+
119
+ ### Via TypeScript
120
+
121
+ ```typescript
122
+ import { CodeComplexityAnalyzerAgent } from './agents/CodeComplexityAnalyzerAgent';
123
+
124
+ // Initialize agent
125
+ const agent = new CodeComplexityAnalyzerAgent({
126
+ type: QEAgentType.QUALITY_ANALYZER,
127
+ capabilities: [],
128
+ context: { /* ... */ },
129
+ memoryStore,
130
+ eventBus,
131
+ thresholds: {
132
+ cyclomaticComplexity: 10,
133
+ cognitiveComplexity: 15,
134
+ linesOfCode: 300
135
+ },
136
+ enableRecommendations: true
137
+ });
138
+
139
+ await agent.initialize();
140
+
141
+ // Analyze code
142
+ const result = await agent.analyzeComplexity({
143
+ files: [{
144
+ path: 'complex.ts',
145
+ content: sourceCode,
146
+ language: 'typescript'
147
+ }]
148
+ });
149
+
150
+ console.log('Quality Score:', result.score);
151
+ console.log('Issues:', result.issues);
152
+ console.log('Recommendations:', result.recommendations);
153
+ ```
154
+
155
+ ## Configuration
156
+
157
+ ### Thresholds
158
+
159
+ Customize complexity thresholds:
160
+
161
+ ```typescript
162
+ {
163
+ thresholds: {
164
+ cyclomaticComplexity: 10, // Default: 10
165
+ cognitiveComplexity: 15, // Default: 15
166
+ linesOfCode: 300 // Default: 300
167
+ }
168
+ }
169
+ ```
170
+
171
+ ### Features
172
+
173
+ ```typescript
174
+ {
175
+ enableRecommendations: true, // Default: true
176
+ enableLearning: true // Default: false (demo uses false)
177
+ }
178
+ ```
179
+
180
+ ## Integration with Other Agents
181
+
182
+ ### Test Generator
183
+ The test-generator agent can use complexity analysis to:
184
+ - Prioritize complex functions for testing
185
+ - Generate more comprehensive tests for high-complexity code
186
+ - Focus on edge cases in nested logic
187
+
188
+ ```typescript
189
+ eventBus.on('complexity:analysis:completed', async (event) => {
190
+ if (event.result.issues.some(i => i.severity === 'critical')) {
191
+ // Test generator: Create extra tests for critical complexity
192
+ await testGeneratorAgent.generateTests({
193
+ focusAreas: event.result.issues
194
+ .filter(i => i.severity === 'critical')
195
+ .map(i => i.file)
196
+ });
197
+ }
198
+ });
199
+ ```
200
+
201
+ ### Coverage Analyzer
202
+ The coverage-analyzer can use complexity data to:
203
+ - Ensure high-complexity code has high coverage
204
+ - Identify risk areas (high complexity + low coverage)
205
+
206
+ ### Quality Gate
207
+ The quality-gate can use complexity metrics as criteria:
208
+ - Fail builds with critical complexity issues
209
+ - Track complexity trends over time
210
+ - Prevent complexity regressions
211
+
212
+ ## Example Output
213
+
214
+ ```
215
+ Quality Score: 65/100
216
+
217
+ ⚠️ Issues Detected:
218
+ 1. [HIGH] cyclomatic
219
+ Current: 23, Threshold: 10
220
+ Consider breaking down complex logic into smaller functions
221
+
222
+ 2. [MEDIUM] cognitive
223
+ Current: 18, Threshold: 15
224
+ Reduce nesting levels and simplify control flow
225
+
226
+ 💡 Recommendations:
227
+ 1. Apply Extract Method refactoring to reduce cyclomatic complexity
228
+ 2. Use early returns to reduce nesting levels
229
+ 3. Extract nested loops into separate methods
230
+ ```
231
+
232
+ ## Learning Objectives
233
+
234
+ By studying this agent, you'll learn:
235
+
236
+ 1. ✅ **BaseAgent Pattern**: How to extend and customize agents
237
+ 2. ✅ **Lifecycle Hooks**: Pre-task, post-task, and error handling
238
+ 3. ✅ **Memory System**: Storing and retrieving agent data
239
+ 4. ✅ **Event System**: Coordinating multiple agents
240
+ 5. ✅ **Testing Patterns**: Comprehensive test coverage
241
+ 6. ✅ **Agent Coordination**: How agents work together
242
+
243
+ ## Running the Example
244
+
245
+ ```bash
246
+ # Run the demo
247
+ npx ts-node examples/complexity-analysis/demo.ts
248
+
249
+ # Run tests
250
+ npm test tests/agents/CodeComplexityAnalyzerAgent.test.ts
251
+ ```
252
+
253
+ ## Architecture Insights
254
+
255
+ ### Memory Namespace
256
+ - `aqe/complexity/${agentId}/current-request` - Active analysis request
257
+ - `aqe/complexity/${agentId}/latest-result` - Most recent result
258
+ - `aqe/complexity/${agentId}/history` - Historical analyses (last 100)
259
+ - `aqe/complexity/${agentId}/errors/*` - Error tracking
260
+
261
+ ### Events Emitted
262
+ - `complexity:analysis:completed` - When analysis finishes successfully
263
+ - `complexity:analysis:stored` - When results are persisted
264
+
265
+ ### Capabilities Provided
266
+ - `complexity-analysis` - Core analysis functionality
267
+ - `refactoring-recommendations` - AI-powered suggestions
268
+ - `pattern-detection` - Complex code pattern recognition
269
+
270
+ ## Next Steps
271
+
272
+ After understanding this agent, explore:
273
+ - **TestGeneratorAgent**: See how it generates tests
274
+ - **CoverageAnalyzerAgent**: Learn about O(log n) gap detection
275
+ - **FleetManager**: Understand multi-agent coordination
276
+ - **LearningEngine**: Discover how agents improve over time
277
+
278
+ ## Resources
279
+
280
+ - **Source Code**: `src/agents/CodeComplexityAnalyzerAgent.ts`
281
+ - **Tests**: `tests/agents/CodeComplexityAnalyzerAgent.test.ts`
282
+ - **Demo**: `examples/complexity-analysis/demo.ts`
283
+ - **BaseAgent**: `src/agents/BaseAgent.ts`
284
+
285
+ ---
286
+
287
+ **Educational Agent**: This agent is designed for learning. For production complexity analysis, consider:
288
+ - ESLint with complexity rules
289
+ - SonarQube
290
+ - CodeClimate
291
+ - Commercial static analysis tools