agentic-qe 3.3.1 → 3.3.3

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (250) hide show
  1. package/.claude/helpers/statusline-v3.cjs +96 -27
  2. package/README.md +6 -3
  3. package/package.json +1 -1
  4. package/scripts/sync-claude-flow.cjs +99 -0
  5. package/v3/CHANGELOG.md +133 -0
  6. package/v3/README.md +9 -5
  7. package/v3/dist/cli/bundle.js +60879 -51811
  8. package/v3/dist/coordination/consensus/domain-findings.d.ts +202 -0
  9. package/v3/dist/coordination/consensus/domain-findings.d.ts.map +1 -0
  10. package/v3/dist/coordination/consensus/domain-findings.js +66 -0
  11. package/v3/dist/coordination/consensus/domain-findings.js.map +1 -0
  12. package/v3/dist/coordination/consensus/index.d.ts +2 -0
  13. package/v3/dist/coordination/consensus/index.d.ts.map +1 -1
  14. package/v3/dist/coordination/consensus/index.js +4 -0
  15. package/v3/dist/coordination/consensus/index.js.map +1 -1
  16. package/v3/dist/coordination/index.d.ts +1 -0
  17. package/v3/dist/coordination/index.d.ts.map +1 -1
  18. package/v3/dist/coordination/index.js +4 -0
  19. package/v3/dist/coordination/index.js.map +1 -1
  20. package/v3/dist/coordination/mixins/consensus-enabled-domain.d.ts +225 -0
  21. package/v3/dist/coordination/mixins/consensus-enabled-domain.d.ts.map +1 -0
  22. package/v3/dist/coordination/mixins/consensus-enabled-domain.js +466 -0
  23. package/v3/dist/coordination/mixins/consensus-enabled-domain.js.map +1 -0
  24. package/v3/dist/coordination/mixins/index.d.ts +14 -0
  25. package/v3/dist/coordination/mixins/index.d.ts.map +1 -0
  26. package/v3/dist/coordination/mixins/index.js +28 -0
  27. package/v3/dist/coordination/mixins/index.js.map +1 -0
  28. package/v3/dist/coordination/mixins/mincut-aware-domain.d.ts +227 -0
  29. package/v3/dist/coordination/mixins/mincut-aware-domain.d.ts.map +1 -0
  30. package/v3/dist/coordination/mixins/mincut-aware-domain.js +368 -0
  31. package/v3/dist/coordination/mixins/mincut-aware-domain.js.map +1 -0
  32. package/v3/dist/coordination/queen-coordinator.d.ts +23 -1
  33. package/v3/dist/coordination/queen-coordinator.d.ts.map +1 -1
  34. package/v3/dist/coordination/queen-coordinator.js +131 -3
  35. package/v3/dist/coordination/queen-coordinator.js.map +1 -1
  36. package/v3/dist/coordination/task-executor.d.ts +21 -1
  37. package/v3/dist/coordination/task-executor.d.ts.map +1 -1
  38. package/v3/dist/coordination/task-executor.js +222 -5
  39. package/v3/dist/coordination/task-executor.js.map +1 -1
  40. package/v3/dist/domains/chaos-resilience/coordinator.d.ts +92 -0
  41. package/v3/dist/domains/chaos-resilience/coordinator.d.ts.map +1 -1
  42. package/v3/dist/domains/chaos-resilience/coordinator.js +241 -1
  43. package/v3/dist/domains/chaos-resilience/coordinator.js.map +1 -1
  44. package/v3/dist/domains/chaos-resilience/plugin.js +1 -1
  45. package/v3/dist/domains/chaos-resilience/plugin.js.map +1 -1
  46. package/v3/dist/domains/chaos-resilience/services/chaos-engineer.d.ts +29 -2
  47. package/v3/dist/domains/chaos-resilience/services/chaos-engineer.d.ts.map +1 -1
  48. package/v3/dist/domains/chaos-resilience/services/chaos-engineer.js +62 -3
  49. package/v3/dist/domains/chaos-resilience/services/chaos-engineer.js.map +1 -1
  50. package/v3/dist/domains/code-intelligence/coordinator.d.ts +112 -0
  51. package/v3/dist/domains/code-intelligence/coordinator.d.ts.map +1 -1
  52. package/v3/dist/domains/code-intelligence/coordinator.js +221 -0
  53. package/v3/dist/domains/code-intelligence/coordinator.js.map +1 -1
  54. package/v3/dist/domains/code-intelligence/services/knowledge-graph.d.ts +66 -2
  55. package/v3/dist/domains/code-intelligence/services/knowledge-graph.d.ts.map +1 -1
  56. package/v3/dist/domains/code-intelligence/services/knowledge-graph.js +253 -3
  57. package/v3/dist/domains/code-intelligence/services/knowledge-graph.js.map +1 -1
  58. package/v3/dist/domains/contract-testing/coordinator.d.ts +89 -1
  59. package/v3/dist/domains/contract-testing/coordinator.d.ts.map +1 -1
  60. package/v3/dist/domains/contract-testing/coordinator.js +222 -1
  61. package/v3/dist/domains/contract-testing/coordinator.js.map +1 -1
  62. package/v3/dist/domains/contract-testing/interfaces.d.ts +29 -1
  63. package/v3/dist/domains/contract-testing/interfaces.d.ts.map +1 -1
  64. package/v3/dist/domains/contract-testing/plugin.js +1 -1
  65. package/v3/dist/domains/contract-testing/plugin.js.map +1 -1
  66. package/v3/dist/domains/contract-testing/services/contract-validator.d.ts +29 -2
  67. package/v3/dist/domains/contract-testing/services/contract-validator.d.ts.map +1 -1
  68. package/v3/dist/domains/contract-testing/services/contract-validator.js +58 -3
  69. package/v3/dist/domains/contract-testing/services/contract-validator.js.map +1 -1
  70. package/v3/dist/domains/coverage-analysis/coordinator.d.ts +95 -2
  71. package/v3/dist/domains/coverage-analysis/coordinator.d.ts.map +1 -1
  72. package/v3/dist/domains/coverage-analysis/coordinator.js +274 -6
  73. package/v3/dist/domains/coverage-analysis/coordinator.js.map +1 -1
  74. package/v3/dist/domains/coverage-analysis/plugin.d.ts +6 -1
  75. package/v3/dist/domains/coverage-analysis/plugin.d.ts.map +1 -1
  76. package/v3/dist/domains/coverage-analysis/plugin.js +73 -0
  77. package/v3/dist/domains/coverage-analysis/plugin.js.map +1 -1
  78. package/v3/dist/domains/coverage-analysis/services/coverage-analyzer.d.ts +119 -3
  79. package/v3/dist/domains/coverage-analysis/services/coverage-analyzer.d.ts.map +1 -1
  80. package/v3/dist/domains/coverage-analysis/services/coverage-analyzer.js +267 -5
  81. package/v3/dist/domains/coverage-analysis/services/coverage-analyzer.js.map +1 -1
  82. package/v3/dist/domains/coverage-analysis/services/gap-detector.d.ts +111 -2
  83. package/v3/dist/domains/coverage-analysis/services/gap-detector.d.ts.map +1 -1
  84. package/v3/dist/domains/coverage-analysis/services/gap-detector.js +231 -3
  85. package/v3/dist/domains/coverage-analysis/services/gap-detector.js.map +1 -1
  86. package/v3/dist/domains/defect-intelligence/coordinator.d.ts +80 -1
  87. package/v3/dist/domains/defect-intelligence/coordinator.d.ts.map +1 -1
  88. package/v3/dist/domains/defect-intelligence/coordinator.js +262 -7
  89. package/v3/dist/domains/defect-intelligence/coordinator.js.map +1 -1
  90. package/v3/dist/domains/defect-intelligence/interfaces.d.ts +17 -0
  91. package/v3/dist/domains/defect-intelligence/interfaces.d.ts.map +1 -1
  92. package/v3/dist/domains/defect-intelligence/services/defect-predictor.d.ts +91 -2
  93. package/v3/dist/domains/defect-intelligence/services/defect-predictor.d.ts.map +1 -1
  94. package/v3/dist/domains/defect-intelligence/services/defect-predictor.js +274 -7
  95. package/v3/dist/domains/defect-intelligence/services/defect-predictor.js.map +1 -1
  96. package/v3/dist/domains/defect-intelligence/services/root-cause-analyzer.d.ts +79 -2
  97. package/v3/dist/domains/defect-intelligence/services/root-cause-analyzer.d.ts.map +1 -1
  98. package/v3/dist/domains/defect-intelligence/services/root-cause-analyzer.js +259 -3
  99. package/v3/dist/domains/defect-intelligence/services/root-cause-analyzer.js.map +1 -1
  100. package/v3/dist/domains/domain-interface.d.ts +194 -2
  101. package/v3/dist/domains/domain-interface.d.ts.map +1 -1
  102. package/v3/dist/domains/domain-interface.js +239 -0
  103. package/v3/dist/domains/domain-interface.js.map +1 -1
  104. package/v3/dist/domains/learning-optimization/coordinator.d.ts +171 -0
  105. package/v3/dist/domains/learning-optimization/coordinator.d.ts.map +1 -1
  106. package/v3/dist/domains/learning-optimization/coordinator.js +401 -1
  107. package/v3/dist/domains/learning-optimization/coordinator.js.map +1 -1
  108. package/v3/dist/domains/learning-optimization/index.d.ts +1 -1
  109. package/v3/dist/domains/learning-optimization/index.d.ts.map +1 -1
  110. package/v3/dist/domains/learning-optimization/index.js.map +1 -1
  111. package/v3/dist/domains/learning-optimization/interfaces.d.ts +18 -0
  112. package/v3/dist/domains/learning-optimization/interfaces.d.ts.map +1 -1
  113. package/v3/dist/domains/learning-optimization/plugin.js +1 -1
  114. package/v3/dist/domains/learning-optimization/plugin.js.map +1 -1
  115. package/v3/dist/domains/learning-optimization/services/learning-coordinator.d.ts +54 -2
  116. package/v3/dist/domains/learning-optimization/services/learning-coordinator.d.ts.map +1 -1
  117. package/v3/dist/domains/learning-optimization/services/learning-coordinator.js +90 -3
  118. package/v3/dist/domains/learning-optimization/services/learning-coordinator.js.map +1 -1
  119. package/v3/dist/domains/quality-assessment/coordinator.d.ts +127 -0
  120. package/v3/dist/domains/quality-assessment/coordinator.d.ts.map +1 -1
  121. package/v3/dist/domains/quality-assessment/coordinator.js +493 -7
  122. package/v3/dist/domains/quality-assessment/coordinator.js.map +1 -1
  123. package/v3/dist/domains/quality-assessment/interfaces.d.ts +22 -0
  124. package/v3/dist/domains/quality-assessment/interfaces.d.ts.map +1 -1
  125. package/v3/dist/domains/quality-assessment/plugin.d.ts +6 -1
  126. package/v3/dist/domains/quality-assessment/plugin.d.ts.map +1 -1
  127. package/v3/dist/domains/quality-assessment/plugin.js +67 -0
  128. package/v3/dist/domains/quality-assessment/plugin.js.map +1 -1
  129. package/v3/dist/domains/quality-assessment/services/deployment-advisor.d.ts +61 -2
  130. package/v3/dist/domains/quality-assessment/services/deployment-advisor.d.ts.map +1 -1
  131. package/v3/dist/domains/quality-assessment/services/deployment-advisor.js +213 -5
  132. package/v3/dist/domains/quality-assessment/services/deployment-advisor.js.map +1 -1
  133. package/v3/dist/domains/quality-assessment/services/quality-analyzer.d.ts +59 -4
  134. package/v3/dist/domains/quality-assessment/services/quality-analyzer.d.ts.map +1 -1
  135. package/v3/dist/domains/quality-assessment/services/quality-analyzer.js +195 -3
  136. package/v3/dist/domains/quality-assessment/services/quality-analyzer.js.map +1 -1
  137. package/v3/dist/domains/requirements-validation/coordinator.d.ts +78 -0
  138. package/v3/dist/domains/requirements-validation/coordinator.d.ts.map +1 -1
  139. package/v3/dist/domains/requirements-validation/coordinator.js +189 -0
  140. package/v3/dist/domains/requirements-validation/coordinator.js.map +1 -1
  141. package/v3/dist/domains/requirements-validation/interfaces.d.ts +4 -0
  142. package/v3/dist/domains/requirements-validation/interfaces.d.ts.map +1 -1
  143. package/v3/dist/domains/requirements-validation/services/requirements-validator.d.ts +106 -2
  144. package/v3/dist/domains/requirements-validation/services/requirements-validator.d.ts.map +1 -1
  145. package/v3/dist/domains/requirements-validation/services/requirements-validator.js +263 -3
  146. package/v3/dist/domains/requirements-validation/services/requirements-validator.js.map +1 -1
  147. package/v3/dist/domains/security-compliance/coordinator.d.ts +56 -1
  148. package/v3/dist/domains/security-compliance/coordinator.d.ts.map +1 -1
  149. package/v3/dist/domains/security-compliance/coordinator.js +241 -17
  150. package/v3/dist/domains/security-compliance/coordinator.js.map +1 -1
  151. package/v3/dist/domains/security-compliance/interfaces.d.ts +2 -0
  152. package/v3/dist/domains/security-compliance/interfaces.d.ts.map +1 -1
  153. package/v3/dist/domains/security-compliance/services/security-scanner.d.ts +33 -2
  154. package/v3/dist/domains/security-compliance/services/security-scanner.d.ts.map +1 -1
  155. package/v3/dist/domains/security-compliance/services/security-scanner.js +107 -3
  156. package/v3/dist/domains/security-compliance/services/security-scanner.js.map +1 -1
  157. package/v3/dist/domains/test-execution/coordinator.d.ts +89 -0
  158. package/v3/dist/domains/test-execution/coordinator.d.ts.map +1 -1
  159. package/v3/dist/domains/test-execution/coordinator.js +259 -2
  160. package/v3/dist/domains/test-execution/coordinator.js.map +1 -1
  161. package/v3/dist/domains/test-execution/plugin.d.ts +6 -1
  162. package/v3/dist/domains/test-execution/plugin.d.ts.map +1 -1
  163. package/v3/dist/domains/test-execution/plugin.js +77 -0
  164. package/v3/dist/domains/test-execution/plugin.js.map +1 -1
  165. package/v3/dist/domains/test-execution/services/test-executor.d.ts +30 -2
  166. package/v3/dist/domains/test-execution/services/test-executor.d.ts.map +1 -1
  167. package/v3/dist/domains/test-execution/services/test-executor.js +64 -3
  168. package/v3/dist/domains/test-execution/services/test-executor.js.map +1 -1
  169. package/v3/dist/domains/test-generation/coordinator.d.ts +137 -0
  170. package/v3/dist/domains/test-generation/coordinator.d.ts.map +1 -1
  171. package/v3/dist/domains/test-generation/coordinator.js +421 -1
  172. package/v3/dist/domains/test-generation/coordinator.js.map +1 -1
  173. package/v3/dist/domains/test-generation/interfaces.d.ts +2 -0
  174. package/v3/dist/domains/test-generation/interfaces.d.ts.map +1 -1
  175. package/v3/dist/domains/test-generation/plugin.d.ts +6 -1
  176. package/v3/dist/domains/test-generation/plugin.d.ts.map +1 -1
  177. package/v3/dist/domains/test-generation/plugin.js +84 -0
  178. package/v3/dist/domains/test-generation/plugin.js.map +1 -1
  179. package/v3/dist/domains/test-generation/services/test-generator.d.ts +32 -0
  180. package/v3/dist/domains/test-generation/services/test-generator.d.ts.map +1 -1
  181. package/v3/dist/domains/test-generation/services/test-generator.js +158 -3
  182. package/v3/dist/domains/test-generation/services/test-generator.js.map +1 -1
  183. package/v3/dist/domains/visual-accessibility/coordinator.d.ts +77 -0
  184. package/v3/dist/domains/visual-accessibility/coordinator.d.ts.map +1 -1
  185. package/v3/dist/domains/visual-accessibility/coordinator.js +210 -2
  186. package/v3/dist/domains/visual-accessibility/coordinator.js.map +1 -1
  187. package/v3/dist/domains/visual-accessibility/plugin.d.ts.map +1 -1
  188. package/v3/dist/domains/visual-accessibility/plugin.js +3 -3
  189. package/v3/dist/domains/visual-accessibility/plugin.js.map +1 -1
  190. package/v3/dist/domains/visual-accessibility/services/visual-tester.d.ts +47 -2
  191. package/v3/dist/domains/visual-accessibility/services/visual-tester.d.ts.map +1 -1
  192. package/v3/dist/domains/visual-accessibility/services/visual-tester.js +87 -3
  193. package/v3/dist/domains/visual-accessibility/services/visual-tester.js.map +1 -1
  194. package/v3/dist/kernel/interfaces.d.ts +54 -1
  195. package/v3/dist/kernel/interfaces.d.ts.map +1 -1
  196. package/v3/dist/learning/dream/dream-scheduler.d.ts +302 -0
  197. package/v3/dist/learning/dream/dream-scheduler.d.ts.map +1 -0
  198. package/v3/dist/learning/dream/dream-scheduler.js +551 -0
  199. package/v3/dist/learning/dream/dream-scheduler.js.map +1 -0
  200. package/v3/dist/learning/dream/index.d.ts +1 -0
  201. package/v3/dist/learning/dream/index.d.ts.map +1 -1
  202. package/v3/dist/learning/dream/index.js +4 -0
  203. package/v3/dist/learning/dream/index.js.map +1 -1
  204. package/v3/dist/learning/experience-capture-middleware.d.ts +119 -0
  205. package/v3/dist/learning/experience-capture-middleware.d.ts.map +1 -0
  206. package/v3/dist/learning/experience-capture-middleware.js +416 -0
  207. package/v3/dist/learning/experience-capture-middleware.js.map +1 -0
  208. package/v3/dist/mcp/bundle.js +83142 -70580
  209. package/v3/dist/mcp/handlers/core-handlers.d.ts.map +1 -1
  210. package/v3/dist/mcp/handlers/core-handlers.js +16 -2
  211. package/v3/dist/mcp/handlers/core-handlers.js.map +1 -1
  212. package/v3/dist/mcp/handlers/domain-handlers.d.ts +12 -13
  213. package/v3/dist/mcp/handlers/domain-handlers.d.ts.map +1 -1
  214. package/v3/dist/mcp/handlers/index.d.ts +1 -1
  215. package/v3/dist/mcp/handlers/index.d.ts.map +1 -1
  216. package/v3/dist/mcp/handlers/index.js +2 -2
  217. package/v3/dist/mcp/handlers/index.js.map +1 -1
  218. package/v3/dist/mcp/handlers/task-handlers.d.ts +1 -0
  219. package/v3/dist/mcp/handlers/task-handlers.d.ts.map +1 -1
  220. package/v3/dist/mcp/handlers/task-handlers.js +46 -12
  221. package/v3/dist/mcp/handlers/task-handlers.js.map +1 -1
  222. package/v3/dist/mcp/handlers/wrapped-domain-handlers.d.ts +30 -0
  223. package/v3/dist/mcp/handlers/wrapped-domain-handlers.d.ts.map +1 -0
  224. package/v3/dist/mcp/handlers/wrapped-domain-handlers.js +75 -0
  225. package/v3/dist/mcp/handlers/wrapped-domain-handlers.js.map +1 -0
  226. package/v3/dist/mcp/services/reasoning-bank-service.d.ts +87 -13
  227. package/v3/dist/mcp/services/reasoning-bank-service.d.ts.map +1 -1
  228. package/v3/dist/mcp/services/reasoning-bank-service.js +291 -31
  229. package/v3/dist/mcp/services/reasoning-bank-service.js.map +1 -1
  230. package/v3/dist/mcp/tools/chaos-resilience/inject.js +1 -1
  231. package/v3/dist/mcp/tools/chaos-resilience/inject.js.map +1 -1
  232. package/v3/dist/mcp/tools/contract-testing/validate.js +1 -1
  233. package/v3/dist/mcp/tools/contract-testing/validate.js.map +1 -1
  234. package/v3/dist/mcp/tools/learning-optimization/optimize.js +1 -1
  235. package/v3/dist/mcp/tools/learning-optimization/optimize.js.map +1 -1
  236. package/v3/dist/mcp/tools/visual-accessibility/index.js +2 -2
  237. package/v3/dist/mcp/tools/visual-accessibility/index.js.map +1 -1
  238. package/v3/dist/routing/qe-agent-registry.d.ts +28 -1
  239. package/v3/dist/routing/qe-agent-registry.d.ts.map +1 -1
  240. package/v3/dist/routing/qe-agent-registry.js +116 -1
  241. package/v3/dist/routing/qe-agent-registry.js.map +1 -1
  242. package/v3/dist/shared/events/domain-events.d.ts +27 -0
  243. package/v3/dist/shared/events/domain-events.d.ts.map +1 -1
  244. package/v3/dist/shared/events/domain-events.js +1 -0
  245. package/v3/dist/shared/events/domain-events.js.map +1 -1
  246. package/v3/dist/sync/claude-flow-bridge.d.ts +63 -0
  247. package/v3/dist/sync/claude-flow-bridge.d.ts.map +1 -0
  248. package/v3/dist/sync/claude-flow-bridge.js +320 -0
  249. package/v3/dist/sync/claude-flow-bridge.js.map +1 -0
  250. package/v3/package.json +1 -1
@@ -1,6 +1,8 @@
1
1
  /**
2
2
  * Agentic QE v3 - Root Cause Analyzer Service
3
3
  * Analyzes defects to identify root causes and contributing factors
4
+ *
5
+ * ADR-051: LLM-enhanced root cause analysis for deeper insights
4
6
  */
5
7
  import { ok, err } from '../../../shared/types';
6
8
  const DEFAULT_CONFIG = {
@@ -9,6 +11,9 @@ const DEFAULT_CONFIG = {
9
11
  minConfidenceThreshold: 0.3,
10
12
  analyzerNamespace: 'defect-intelligence:root-cause',
11
13
  enableDeepAnalysis: true,
14
+ enableLLMAnalysis: true, // On by default - opt-out (ADR-051)
15
+ llmModelTier: 2, // Sonnet by default
16
+ llmMaxTokens: 2048,
12
17
  };
13
18
  /**
14
19
  * Known root cause categories with analysis patterns
@@ -138,16 +143,205 @@ const ROOT_CAUSE_CATEGORIES = {
138
143
  /**
139
144
  * Root Cause Analyzer Service Implementation
140
145
  * Uses symptom analysis and heuristics to identify root causes
146
+ *
147
+ * ADR-051: Added LLM enhancement for AI-powered root cause analysis
141
148
  */
142
149
  export class RootCauseAnalyzerService {
143
- memory;
144
150
  config;
145
- constructor(memory, config = {}) {
146
- this.memory = memory;
151
+ memory;
152
+ llmRouter;
153
+ /**
154
+ * Constructor with backward compatibility
155
+ * Supports both old signature (memory, config) and new signature (dependencies, config)
156
+ */
157
+ constructor(memoryOrDeps, config = {}) {
147
158
  this.config = { ...DEFAULT_CONFIG, ...config };
159
+ // Support both old and new constructor signatures for backward compatibility
160
+ if (this.isMemoryBackend(memoryOrDeps)) {
161
+ // Old signature: (memory, config)
162
+ this.memory = memoryOrDeps;
163
+ this.llmRouter = undefined;
164
+ }
165
+ else {
166
+ // New signature: (dependencies, config)
167
+ this.memory = memoryOrDeps.memory;
168
+ this.llmRouter = memoryOrDeps.llmRouter;
169
+ }
170
+ }
171
+ /**
172
+ * Type guard to check if argument is MemoryBackend (old signature) or Dependencies (new signature)
173
+ */
174
+ isMemoryBackend(arg) {
175
+ return typeof arg.get === 'function' &&
176
+ typeof arg.set === 'function' &&
177
+ !('memory' in arg);
178
+ }
179
+ // ============================================================================
180
+ // ADR-051: LLM Enhancement Methods
181
+ // ============================================================================
182
+ /**
183
+ * Check if LLM analysis is available and enabled
184
+ */
185
+ isLLMAnalysisAvailable() {
186
+ return this.config.enableLLMAnalysis === true && this.llmRouter !== undefined;
187
+ }
188
+ /**
189
+ * Get model ID for the configured tier
190
+ */
191
+ getModelForTier(tier) {
192
+ switch (tier) {
193
+ case 1: return 'claude-3-5-haiku-20241022';
194
+ case 2: return 'claude-sonnet-4-20250514';
195
+ case 3: return 'claude-sonnet-4-20250514';
196
+ case 4: return 'claude-opus-4-5-20251101';
197
+ default: return 'claude-sonnet-4-20250514';
198
+ }
199
+ }
200
+ /**
201
+ * Analyze root cause using LLM for deeper insights
202
+ * Provides detailed explanations, contributing factors, and fixes
203
+ */
204
+ async analyzeRootCauseWithLLM(failure, stackTrace, codeContext) {
205
+ if (!this.llmRouter)
206
+ return null;
207
+ try {
208
+ const prompt = this.buildLLMAnalysisPrompt(failure, stackTrace, codeContext);
209
+ const modelId = this.getModelForTier(this.config.llmModelTier ?? 2);
210
+ const response = await this.llmRouter.chat({
211
+ messages: [
212
+ {
213
+ role: 'system',
214
+ content: `You are an expert software engineer specialized in debugging and root cause analysis.
215
+ Analyze the provided defect information and provide:
216
+ 1. Root cause identification with clear explanation
217
+ 2. Contributing factors ranked by impact
218
+ 3. Recommended fixes with code examples where applicable
219
+ 4. Prevention strategies to avoid similar issues
220
+
221
+ Return your analysis as JSON with this structure:
222
+ {
223
+ "rootCause": "Brief root cause description",
224
+ "explanation": "Detailed explanation of why this happened",
225
+ "contributingFactors": [
226
+ { "factor": "Factor name", "impact": "high|medium|low", "evidence": ["evidence1", "evidence2"] }
227
+ ],
228
+ "recommendedFixes": [
229
+ { "description": "Fix description", "codeExample": "optional code snippet" }
230
+ ],
231
+ "preventionStrategies": ["Strategy 1", "Strategy 2"]
232
+ }`,
233
+ },
234
+ {
235
+ role: 'user',
236
+ content: prompt,
237
+ },
238
+ ],
239
+ model: modelId,
240
+ maxTokens: this.config.llmMaxTokens ?? 2048,
241
+ temperature: 0.3, // Low temperature for consistent analysis
242
+ });
243
+ if (response.content && response.content.length > 0) {
244
+ return this.parseLLMAnalysisResponse(response.content);
245
+ }
246
+ return null;
247
+ }
248
+ catch (error) {
249
+ console.warn('[RootCauseAnalyzer] LLM analysis failed, falling back to heuristics:', error);
250
+ return null;
251
+ }
252
+ }
253
+ /**
254
+ * Build prompt for LLM root cause analysis
255
+ */
256
+ buildLLMAnalysisPrompt(failure, stackTrace, codeContext) {
257
+ let prompt = `## Defect Analysis Request\n\n`;
258
+ prompt += `**Defect ID:** ${failure.defectId}\n\n`;
259
+ prompt += `## Symptoms\n`;
260
+ for (const symptom of failure.symptoms) {
261
+ prompt += `- ${symptom}\n`;
262
+ }
263
+ prompt += '\n';
264
+ if (failure.context && Object.keys(failure.context).length > 0) {
265
+ prompt += `## Context\n`;
266
+ prompt += `\`\`\`json\n${JSON.stringify(failure.context, null, 2)}\n\`\`\`\n\n`;
267
+ }
268
+ if (stackTrace) {
269
+ prompt += `## Stack Trace\n`;
270
+ prompt += `\`\`\`\n${stackTrace}\n\`\`\`\n\n`;
271
+ }
272
+ if (codeContext) {
273
+ prompt += `## Related Code\n`;
274
+ prompt += `\`\`\`typescript\n${codeContext}\n\`\`\`\n\n`;
275
+ }
276
+ prompt += `## Analysis Required\n`;
277
+ prompt += `1. Identify the most likely root cause\n`;
278
+ prompt += `2. Explain the chain of events that led to this defect\n`;
279
+ prompt += `3. List contributing factors with their impact level\n`;
280
+ prompt += `4. Provide specific fix recommendations with code examples\n`;
281
+ prompt += `5. Suggest prevention strategies\n`;
282
+ return prompt;
283
+ }
284
+ /**
285
+ * Parse LLM analysis response into structured format
286
+ */
287
+ parseLLMAnalysisResponse(content) {
288
+ try {
289
+ // Extract JSON from response, handling potential markdown fences
290
+ let jsonContent = content;
291
+ const jsonMatch = content.match(/```(?:json)?\n?([\s\S]*?)```/);
292
+ if (jsonMatch) {
293
+ jsonContent = jsonMatch[1].trim();
294
+ }
295
+ const parsed = JSON.parse(jsonContent);
296
+ // Validate and transform the response
297
+ return {
298
+ rootCause: parsed.rootCause || 'Unknown root cause',
299
+ explanation: parsed.explanation || '',
300
+ contributingFactors: (parsed.contributingFactors || []).map((cf) => ({
301
+ factor: cf.factor,
302
+ impact: this.normalizeImpact(cf.impact),
303
+ evidence: cf.evidence || [],
304
+ })),
305
+ recommendedFixes: parsed.recommendedFixes || [],
306
+ preventionStrategies: parsed.preventionStrategies || [],
307
+ };
308
+ }
309
+ catch {
310
+ // JSON parse failed, try to extract structured info from text
311
+ return this.parseUnstructuredLLMResponse(content);
312
+ }
313
+ }
314
+ /**
315
+ * Normalize impact string to valid impact level
316
+ */
317
+ normalizeImpact(impact) {
318
+ const normalized = (impact || '').toLowerCase();
319
+ if (normalized === 'high' || normalized === 'critical' || normalized === 'severe') {
320
+ return 'high';
321
+ }
322
+ if (normalized === 'medium' || normalized === 'moderate' || normalized === 'normal') {
323
+ return 'medium';
324
+ }
325
+ return 'low';
326
+ }
327
+ /**
328
+ * Parse unstructured LLM response as fallback
329
+ */
330
+ parseUnstructuredLLMResponse(content) {
331
+ // Extract root cause from first paragraph or line
332
+ const lines = content.split('\n').filter(line => line.trim());
333
+ const rootCause = lines[0]?.replace(/^(root cause:|the root cause is|caused by)/i, '').trim() || 'Unable to parse root cause';
334
+ return {
335
+ rootCause,
336
+ explanation: content,
337
+ contributingFactors: [],
338
+ recommendedFixes: [],
339
+ preventionStrategies: [],
340
+ };
148
341
  }
149
342
  /**
150
343
  * Analyze root cause of a defect
344
+ * ADR-051: Enhanced with optional LLM analysis for deeper insights
151
345
  */
152
346
  async analyzeRootCause(request) {
153
347
  try {
@@ -155,6 +349,43 @@ export class RootCauseAnalyzerService {
155
349
  if (symptoms.length === 0) {
156
350
  return err(new Error('No symptoms provided for analysis'));
157
351
  }
352
+ // ADR-051: Try LLM-enhanced analysis first if available
353
+ if (this.isLLMAnalysisAvailable()) {
354
+ const llmAnalysis = await this.analyzeRootCauseWithLLM({ defectId, symptoms, context }, context.stackTrace, context.codeContext);
355
+ if (llmAnalysis) {
356
+ // Find related files
357
+ const relatedFiles = await this.findRelatedFiles(defectId, symptoms);
358
+ // Build timeline
359
+ const timeline = await this.generateTimeline(defectId);
360
+ // Merge LLM recommendations with prevention strategies
361
+ const recommendations = [
362
+ ...llmAnalysis.recommendedFixes.map(fix => fix.codeExample
363
+ ? `${fix.description}\n\`\`\`\n${fix.codeExample}\n\`\`\``
364
+ : fix.description),
365
+ ...llmAnalysis.preventionStrategies,
366
+ ];
367
+ // Store analysis for future reference
368
+ await this.storeAnalysis({
369
+ defectId,
370
+ rootCause: llmAnalysis.rootCause,
371
+ category: 'llm-analyzed',
372
+ confidence: 0.85, // High confidence for LLM analysis
373
+ symptoms,
374
+ timestamp: new Date(),
375
+ });
376
+ return ok({
377
+ defectId,
378
+ rootCause: llmAnalysis.rootCause,
379
+ confidence: 0.85,
380
+ contributingFactors: llmAnalysis.contributingFactors,
381
+ relatedFiles,
382
+ recommendations,
383
+ timeline: timeline.success ? timeline.value : [],
384
+ });
385
+ }
386
+ // LLM analysis failed, fall through to heuristic analysis
387
+ }
388
+ // Heuristic-based analysis (original implementation)
158
389
  // Identify the root cause category
159
390
  const categoryAnalysis = this.identifyRootCauseCategory(symptoms);
160
391
  // Calculate confidence based on symptom matches
@@ -462,4 +693,29 @@ export class RootCauseAnalyzerService {
462
693
  });
463
694
  }
464
695
  }
696
+ // ============================================================================
697
+ // Factory Functions
698
+ // ============================================================================
699
+ /**
700
+ * Create a RootCauseAnalyzerService instance with default dependencies
701
+ * Maintains backward compatibility with existing code
702
+ *
703
+ * @param memory - Memory backend for storing analysis results
704
+ * @param config - Optional configuration overrides
705
+ * @returns Configured RootCauseAnalyzerService instance
706
+ */
707
+ export function createRootCauseAnalyzerService(memory, config = {}) {
708
+ return new RootCauseAnalyzerService(memory, config);
709
+ }
710
+ /**
711
+ * Create a RootCauseAnalyzerService instance with custom dependencies
712
+ * Used for testing or when LLM integration is needed
713
+ *
714
+ * @param dependencies - All service dependencies including optional LLM router
715
+ * @param config - Optional configuration overrides
716
+ * @returns Configured RootCauseAnalyzerService instance
717
+ */
718
+ export function createRootCauseAnalyzerServiceWithDependencies(dependencies, config = {}) {
719
+ return new RootCauseAnalyzerService(dependencies, config);
720
+ }
465
721
  //# sourceMappingURL=root-cause-analyzer.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"root-cause-analyzer.js","sourceRoot":"","sources":["../../../../src/domains/defect-intelligence/services/root-cause-analyzer.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"root-cause-analyzer.js","sourceRoot":"","sources":["../../../../src/domains/defect-intelligence/services/root-cause-analyzer.ts"],"names":[],"mappings":"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"}
@@ -1,17 +1,92 @@
1
1
  /**
2
2
  * Agentic QE v3 - Base Domain Interface
3
3
  * Template for all domain implementations
4
+ *
5
+ * Extended with optional integration support for:
6
+ * - MinCut topology awareness (ADR-047)
7
+ * - Multi-model consensus verification (MM-006)
4
8
  */
5
- import { DomainName, DomainEvent } from '../shared/types';
6
- import { DomainPlugin, DomainHealth, EventBus, MemoryBackend } from '../kernel/interfaces';
9
+ import { DomainName, DomainEvent, Result } from '../shared/types';
10
+ import { DomainPlugin, DomainHealth, EventBus, MemoryBackend, DomainTaskRequest, TaskCompletionCallback } from '../kernel/interfaces';
11
+ import type { QueenMinCutBridge } from '../coordination/mincut';
12
+ import type { ConsensusEngineConfig } from '../coordination/consensus';
13
+ /**
14
+ * Task handler function type
15
+ * Handlers receive the task payload and return a result
16
+ */
17
+ export type TaskHandler = (payload: Record<string, unknown>) => Promise<Result<unknown, Error>>;
18
+ /**
19
+ * Simplified consensus configuration for domain plugin injection
20
+ * This provides a lightweight way to enable consensus verification via DI
21
+ * without requiring the full ConsensusEnabledConfig from mixins
22
+ *
23
+ * For full mixin-based consensus support, use ConsensusEnabledDomain from
24
+ * coordination/mixins/consensus-enabled-domain.ts
25
+ *
26
+ * @see MM-006: Multi-Model Consensus Integration
27
+ */
28
+ export interface DomainConsensusConfig {
29
+ /** Whether consensus verification is enabled for this domain */
30
+ readonly enabled: boolean;
31
+ /** Consensus engine configuration overrides */
32
+ readonly engineConfig?: Partial<ConsensusEngineConfig>;
33
+ /** Severity levels that require consensus verification */
34
+ readonly verifySeverities?: Array<'critical' | 'high' | 'medium' | 'low'>;
35
+ /** Minimum confidence threshold for auto-approval (0-1) */
36
+ readonly autoApprovalThreshold?: number;
37
+ }
38
+ /**
39
+ * Extended domain plugin configuration with integration support
40
+ * All properties are optional to maintain backward compatibility
41
+ *
42
+ * @example
43
+ * ```typescript
44
+ * const config: DomainPluginIntegrationConfig = {
45
+ * minCutBridge: existingBridge,
46
+ * consensusConfig: { enabled: true, verifySeverities: ['critical', 'high'] }
47
+ * };
48
+ * plugin.setIntegrationConfig(config);
49
+ * ```
50
+ */
51
+ export interface DomainPluginIntegrationConfig {
52
+ /**
53
+ * Optional MinCut bridge for topology awareness (ADR-047)
54
+ * When provided, the domain can report its topology health and participate
55
+ * in self-healing coordination with other domains
56
+ */
57
+ minCutBridge?: QueenMinCutBridge;
58
+ /**
59
+ * Optional consensus configuration for multi-model verification (MM-006)
60
+ * When provided, the domain can use consensus-based verification for
61
+ * critical findings and operations
62
+ */
63
+ consensusConfig?: DomainConsensusConfig;
64
+ }
7
65
  /**
8
66
  * Abstract base class for domain plugins
67
+ *
68
+ * Provides common functionality for all domain implementations including:
69
+ * - Lifecycle management (initialize/dispose)
70
+ * - Health tracking
71
+ * - Event handling
72
+ * - Task execution (Queen-Domain integration)
73
+ * - Optional MinCut and Consensus integration (ADR-047, MM-006)
9
74
  */
10
75
  export declare abstract class BaseDomainPlugin implements DomainPlugin {
11
76
  protected readonly eventBus: EventBus;
12
77
  protected readonly memory: MemoryBackend;
13
78
  protected _initialized: boolean;
14
79
  protected _health: DomainHealth;
80
+ /**
81
+ * MinCut bridge for topology awareness
82
+ * @internal Set via setMinCutBridge() or setIntegrationConfig()
83
+ */
84
+ protected _minCutBridge?: QueenMinCutBridge;
85
+ /**
86
+ * Consensus configuration for multi-model verification
87
+ * @internal Set via setConsensusConfig() or setIntegrationConfig()
88
+ */
89
+ protected _consensusConfig?: DomainConsensusConfig;
15
90
  constructor(eventBus: EventBus, memory: MemoryBackend);
16
91
  abstract get name(): DomainName;
17
92
  abstract get version(): string;
@@ -28,5 +103,122 @@ export declare abstract class BaseDomainPlugin implements DomainPlugin {
28
103
  protected subscribeToEvents(): void;
29
104
  protected publishEvent<T>(type: string, payload: T): Promise<void>;
30
105
  protected updateHealth(updates: Partial<DomainHealth>): void;
106
+ /**
107
+ * Set MinCut bridge for topology awareness after construction
108
+ * Alternative to constructor injection for domains that need late binding
109
+ *
110
+ * @param bridge - The QueenMinCutBridge instance to use
111
+ *
112
+ * @example
113
+ * ```typescript
114
+ * const plugin = new MyDomainPlugin(eventBus, memory, coordinator);
115
+ * await plugin.initialize();
116
+ *
117
+ * // Later, when MinCut bridge is available:
118
+ * plugin.setMinCutBridge(minCutBridge);
119
+ * ```
120
+ */
121
+ setMinCutBridge(bridge: QueenMinCutBridge): void;
122
+ /**
123
+ * Get the current MinCut bridge (if set)
124
+ * @returns The MinCut bridge or undefined if not configured
125
+ */
126
+ getMinCutBridge(): QueenMinCutBridge | undefined;
127
+ /**
128
+ * Set consensus configuration for multi-model verification after construction
129
+ * Alternative to constructor injection for domains that need late binding
130
+ *
131
+ * @param config - The consensus configuration to use
132
+ *
133
+ * @example
134
+ * ```typescript
135
+ * const plugin = new SecurityCompliancePlugin(eventBus, memory, coordinator);
136
+ * plugin.setConsensusConfig({
137
+ * enabled: true,
138
+ * verifySeverities: ['critical', 'high'],
139
+ * autoApprovalThreshold: 0.9,
140
+ * });
141
+ * ```
142
+ */
143
+ setConsensusConfig(config: DomainConsensusConfig): void;
144
+ /**
145
+ * Get the current consensus configuration (if set)
146
+ * @returns The consensus configuration or undefined if not configured
147
+ */
148
+ getConsensusConfig(): DomainConsensusConfig | undefined;
149
+ /**
150
+ * Set both MinCut and Consensus configuration at once
151
+ * Convenience method for full integration setup
152
+ *
153
+ * @param config - Integration configuration containing optional MinCut and Consensus settings
154
+ *
155
+ * @example
156
+ * ```typescript
157
+ * plugin.setIntegrationConfig({
158
+ * minCutBridge: queenMinCutBridge,
159
+ * consensusConfig: {
160
+ * enabled: true,
161
+ * verifySeverities: ['critical', 'high'],
162
+ * },
163
+ * });
164
+ * ```
165
+ */
166
+ setIntegrationConfig(config: DomainPluginIntegrationConfig): void;
167
+ /**
168
+ * Check if MinCut integration is configured and active
169
+ * @returns true if MinCut bridge is set
170
+ */
171
+ hasMinCutIntegration(): boolean;
172
+ /**
173
+ * Check if consensus verification is enabled
174
+ * @returns true if consensus is configured and enabled
175
+ */
176
+ hasConsensusEnabled(): boolean;
177
+ /**
178
+ * Called when MinCut bridge is set
179
+ * Override in subclasses to perform domain-specific setup
180
+ *
181
+ * @param _bridge - The MinCut bridge that was set
182
+ */
183
+ protected onMinCutBridgeSet(_bridge: QueenMinCutBridge): void;
184
+ /**
185
+ * Called when consensus configuration is set
186
+ * Override in subclasses to perform domain-specific setup
187
+ *
188
+ * @param _config - The consensus configuration that was set
189
+ */
190
+ protected onConsensusConfigSet(_config: DomainConsensusConfig): void;
191
+ /**
192
+ * Get task type to handler mapping
193
+ * Override in subclasses to register domain-specific task handlers
194
+ *
195
+ * @example
196
+ * protected override getTaskHandlers(): Map<string, TaskHandler> {
197
+ * return new Map([
198
+ * ['execute-tests', async (payload) => this.coordinator.execute(payload)],
199
+ * ['detect-flaky', async (payload) => this.coordinator.detectFlaky(payload)],
200
+ * ]);
201
+ * }
202
+ */
203
+ protected getTaskHandlers(): Map<string, TaskHandler>;
204
+ /**
205
+ * Check if domain can handle a task type
206
+ * Based on registered task handlers
207
+ */
208
+ canHandleTask(taskType: string): boolean;
209
+ /**
210
+ * Execute a task assigned by Queen Coordinator
211
+ * Routes to the appropriate handler based on task type
212
+ *
213
+ * @param request - Task execution request from Queen
214
+ * @param onComplete - Callback to report task completion
215
+ * @returns Success if task was accepted, Error if no handler exists
216
+ */
217
+ executeTask(request: DomainTaskRequest, onComplete: TaskCompletionCallback): Promise<Result<void, Error>>;
218
+ /**
219
+ * Run task asynchronously and report completion via callback
220
+ * Handles timing, success/failure, and error capture
221
+ */
222
+ private runTaskAsync;
31
223
  }
32
224
  //# sourceMappingURL=domain-interface.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"domain-interface.d.ts","sourceRoot":"","sources":["../../src/domains/domain-interface.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EAAE,UAAU,EAAE,WAAW,EAAE,MAAM,iBAAiB,CAAC;AAC1D,OAAO,EAAE,YAAY,EAAE,YAAY,EAAE,QAAQ,EAAE,aAAa,EAAE,MAAM,sBAAsB,CAAC;AAE3F;;GAEG;AACH,8BAAsB,gBAAiB,YAAW,YAAY;IAW1D,SAAS,CAAC,QAAQ,CAAC,QAAQ,EAAE,QAAQ;IACrC,SAAS,CAAC,QAAQ,CAAC,MAAM,EAAE,aAAa;IAX1C,SAAS,CAAC,YAAY,UAAS;IAG/B,SAAS,CAAC,OAAO,EAAE,YAAY,CAI7B;gBAGmB,QAAQ,EAAE,QAAQ,EAClB,MAAM,EAAE,aAAa;IAG1C,QAAQ,KAAK,IAAI,IAAI,UAAU,CAAC;IAChC,QAAQ,KAAK,OAAO,IAAI,MAAM,CAAC;IAC/B,QAAQ,KAAK,YAAY,IAAI,UAAU,EAAE,CAAC;IAE1C,OAAO,IAAI,OAAO;IAIlB,SAAS,IAAI,YAAY;IAInB,UAAU,IAAI,OAAO,CAAC,IAAI,CAAC;IAQ3B,OAAO,IAAI,OAAO,CAAC,IAAI,CAAC;IAKxB,WAAW,CAAC,KAAK,EAAE,WAAW,GAAG,OAAO,CAAC,IAAI,CAAC;IAIpD,QAAQ,CAAC,MAAM,CAAC,CAAC,KAAK,CAAC;cAGP,YAAY,IAAI,OAAO,CAAC,IAAI,CAAC;cAC7B,SAAS,IAAI,OAAO,CAAC,IAAI,CAAC;cAC1B,OAAO,CAAC,MAAM,EAAE,WAAW,GAAG,OAAO,CAAC,IAAI,CAAC;IAC3D,SAAS,CAAC,iBAAiB,IAAI,IAAI;cAGnB,YAAY,CAAC,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,CAAC,GAAG,OAAO,CAAC,IAAI,CAAC;IAWxE,SAAS,CAAC,YAAY,CAAC,OAAO,EAAE,OAAO,CAAC,YAAY,CAAC,GAAG,IAAI;CAG7D"}
1
+ {"version":3,"file":"domain-interface.d.ts","sourceRoot":"","sources":["../../src/domains/domain-interface.ts"],"names":[],"mappings":"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"}