agentic-qe 3.3.2 → 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 (209) 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 +87 -0
  6. package/v3/README.md +9 -5
  7. package/v3/dist/cli/bundle.js +43386 -37651
  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 +10 -0
  33. package/v3/dist/coordination/queen-coordinator.d.ts.map +1 -1
  34. package/v3/dist/coordination/queen-coordinator.js +40 -0
  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/services/coverage-analyzer.d.ts +119 -3
  75. package/v3/dist/domains/coverage-analysis/services/coverage-analyzer.d.ts.map +1 -1
  76. package/v3/dist/domains/coverage-analysis/services/coverage-analyzer.js +267 -5
  77. package/v3/dist/domains/coverage-analysis/services/coverage-analyzer.js.map +1 -1
  78. package/v3/dist/domains/coverage-analysis/services/gap-detector.d.ts +111 -2
  79. package/v3/dist/domains/coverage-analysis/services/gap-detector.d.ts.map +1 -1
  80. package/v3/dist/domains/coverage-analysis/services/gap-detector.js +231 -3
  81. package/v3/dist/domains/coverage-analysis/services/gap-detector.js.map +1 -1
  82. package/v3/dist/domains/defect-intelligence/coordinator.d.ts +80 -1
  83. package/v3/dist/domains/defect-intelligence/coordinator.d.ts.map +1 -1
  84. package/v3/dist/domains/defect-intelligence/coordinator.js +262 -7
  85. package/v3/dist/domains/defect-intelligence/coordinator.js.map +1 -1
  86. package/v3/dist/domains/defect-intelligence/interfaces.d.ts +17 -0
  87. package/v3/dist/domains/defect-intelligence/interfaces.d.ts.map +1 -1
  88. package/v3/dist/domains/defect-intelligence/services/defect-predictor.d.ts +91 -2
  89. package/v3/dist/domains/defect-intelligence/services/defect-predictor.d.ts.map +1 -1
  90. package/v3/dist/domains/defect-intelligence/services/defect-predictor.js +274 -7
  91. package/v3/dist/domains/defect-intelligence/services/defect-predictor.js.map +1 -1
  92. package/v3/dist/domains/defect-intelligence/services/root-cause-analyzer.d.ts +79 -2
  93. package/v3/dist/domains/defect-intelligence/services/root-cause-analyzer.d.ts.map +1 -1
  94. package/v3/dist/domains/defect-intelligence/services/root-cause-analyzer.js +259 -3
  95. package/v3/dist/domains/defect-intelligence/services/root-cause-analyzer.js.map +1 -1
  96. package/v3/dist/domains/domain-interface.d.ts +155 -0
  97. package/v3/dist/domains/domain-interface.d.ts.map +1 -1
  98. package/v3/dist/domains/domain-interface.js +140 -0
  99. package/v3/dist/domains/domain-interface.js.map +1 -1
  100. package/v3/dist/domains/learning-optimization/coordinator.d.ts +88 -0
  101. package/v3/dist/domains/learning-optimization/coordinator.d.ts.map +1 -1
  102. package/v3/dist/domains/learning-optimization/coordinator.js +227 -1
  103. package/v3/dist/domains/learning-optimization/coordinator.js.map +1 -1
  104. package/v3/dist/domains/learning-optimization/index.d.ts +1 -1
  105. package/v3/dist/domains/learning-optimization/index.d.ts.map +1 -1
  106. package/v3/dist/domains/learning-optimization/index.js.map +1 -1
  107. package/v3/dist/domains/learning-optimization/interfaces.d.ts +4 -0
  108. package/v3/dist/domains/learning-optimization/interfaces.d.ts.map +1 -1
  109. package/v3/dist/domains/learning-optimization/plugin.js +1 -1
  110. package/v3/dist/domains/learning-optimization/plugin.js.map +1 -1
  111. package/v3/dist/domains/learning-optimization/services/learning-coordinator.d.ts +54 -2
  112. package/v3/dist/domains/learning-optimization/services/learning-coordinator.d.ts.map +1 -1
  113. package/v3/dist/domains/learning-optimization/services/learning-coordinator.js +90 -3
  114. package/v3/dist/domains/learning-optimization/services/learning-coordinator.js.map +1 -1
  115. package/v3/dist/domains/quality-assessment/coordinator.d.ts +104 -0
  116. package/v3/dist/domains/quality-assessment/coordinator.d.ts.map +1 -1
  117. package/v3/dist/domains/quality-assessment/coordinator.js +354 -6
  118. package/v3/dist/domains/quality-assessment/coordinator.js.map +1 -1
  119. package/v3/dist/domains/quality-assessment/interfaces.d.ts +22 -0
  120. package/v3/dist/domains/quality-assessment/interfaces.d.ts.map +1 -1
  121. package/v3/dist/domains/quality-assessment/services/deployment-advisor.d.ts +61 -2
  122. package/v3/dist/domains/quality-assessment/services/deployment-advisor.d.ts.map +1 -1
  123. package/v3/dist/domains/quality-assessment/services/deployment-advisor.js +213 -5
  124. package/v3/dist/domains/quality-assessment/services/deployment-advisor.js.map +1 -1
  125. package/v3/dist/domains/quality-assessment/services/quality-analyzer.d.ts +59 -4
  126. package/v3/dist/domains/quality-assessment/services/quality-analyzer.d.ts.map +1 -1
  127. package/v3/dist/domains/quality-assessment/services/quality-analyzer.js +195 -3
  128. package/v3/dist/domains/quality-assessment/services/quality-analyzer.js.map +1 -1
  129. package/v3/dist/domains/requirements-validation/coordinator.d.ts +78 -0
  130. package/v3/dist/domains/requirements-validation/coordinator.d.ts.map +1 -1
  131. package/v3/dist/domains/requirements-validation/coordinator.js +189 -0
  132. package/v3/dist/domains/requirements-validation/coordinator.js.map +1 -1
  133. package/v3/dist/domains/requirements-validation/interfaces.d.ts +4 -0
  134. package/v3/dist/domains/requirements-validation/interfaces.d.ts.map +1 -1
  135. package/v3/dist/domains/requirements-validation/services/requirements-validator.d.ts +106 -2
  136. package/v3/dist/domains/requirements-validation/services/requirements-validator.d.ts.map +1 -1
  137. package/v3/dist/domains/requirements-validation/services/requirements-validator.js +263 -3
  138. package/v3/dist/domains/requirements-validation/services/requirements-validator.js.map +1 -1
  139. package/v3/dist/domains/security-compliance/coordinator.d.ts +56 -1
  140. package/v3/dist/domains/security-compliance/coordinator.d.ts.map +1 -1
  141. package/v3/dist/domains/security-compliance/coordinator.js +241 -17
  142. package/v3/dist/domains/security-compliance/coordinator.js.map +1 -1
  143. package/v3/dist/domains/security-compliance/interfaces.d.ts +2 -0
  144. package/v3/dist/domains/security-compliance/interfaces.d.ts.map +1 -1
  145. package/v3/dist/domains/security-compliance/services/security-scanner.d.ts +33 -2
  146. package/v3/dist/domains/security-compliance/services/security-scanner.d.ts.map +1 -1
  147. package/v3/dist/domains/security-compliance/services/security-scanner.js +107 -3
  148. package/v3/dist/domains/security-compliance/services/security-scanner.js.map +1 -1
  149. package/v3/dist/domains/test-execution/coordinator.d.ts +89 -0
  150. package/v3/dist/domains/test-execution/coordinator.d.ts.map +1 -1
  151. package/v3/dist/domains/test-execution/coordinator.js +259 -2
  152. package/v3/dist/domains/test-execution/coordinator.js.map +1 -1
  153. package/v3/dist/domains/test-execution/services/test-executor.d.ts +30 -2
  154. package/v3/dist/domains/test-execution/services/test-executor.d.ts.map +1 -1
  155. package/v3/dist/domains/test-execution/services/test-executor.js +64 -3
  156. package/v3/dist/domains/test-execution/services/test-executor.js.map +1 -1
  157. package/v3/dist/domains/test-generation/coordinator.d.ts +97 -0
  158. package/v3/dist/domains/test-generation/coordinator.d.ts.map +1 -1
  159. package/v3/dist/domains/test-generation/coordinator.js +237 -0
  160. package/v3/dist/domains/test-generation/coordinator.js.map +1 -1
  161. package/v3/dist/domains/test-generation/interfaces.d.ts +2 -0
  162. package/v3/dist/domains/test-generation/interfaces.d.ts.map +1 -1
  163. package/v3/dist/domains/test-generation/services/test-generator.d.ts +32 -0
  164. package/v3/dist/domains/test-generation/services/test-generator.d.ts.map +1 -1
  165. package/v3/dist/domains/test-generation/services/test-generator.js +158 -3
  166. package/v3/dist/domains/test-generation/services/test-generator.js.map +1 -1
  167. package/v3/dist/domains/visual-accessibility/coordinator.d.ts +77 -0
  168. package/v3/dist/domains/visual-accessibility/coordinator.d.ts.map +1 -1
  169. package/v3/dist/domains/visual-accessibility/coordinator.js +210 -2
  170. package/v3/dist/domains/visual-accessibility/coordinator.js.map +1 -1
  171. package/v3/dist/domains/visual-accessibility/plugin.d.ts.map +1 -1
  172. package/v3/dist/domains/visual-accessibility/plugin.js +3 -3
  173. package/v3/dist/domains/visual-accessibility/plugin.js.map +1 -1
  174. package/v3/dist/domains/visual-accessibility/services/visual-tester.d.ts +47 -2
  175. package/v3/dist/domains/visual-accessibility/services/visual-tester.d.ts.map +1 -1
  176. package/v3/dist/domains/visual-accessibility/services/visual-tester.js +87 -3
  177. package/v3/dist/domains/visual-accessibility/services/visual-tester.js.map +1 -1
  178. package/v3/dist/learning/experience-capture-middleware.d.ts +119 -0
  179. package/v3/dist/learning/experience-capture-middleware.d.ts.map +1 -0
  180. package/v3/dist/learning/experience-capture-middleware.js +416 -0
  181. package/v3/dist/learning/experience-capture-middleware.js.map +1 -0
  182. package/v3/dist/mcp/bundle.js +60723 -54421
  183. package/v3/dist/mcp/handlers/domain-handlers.d.ts +12 -13
  184. package/v3/dist/mcp/handlers/domain-handlers.d.ts.map +1 -1
  185. package/v3/dist/mcp/handlers/index.d.ts +1 -1
  186. package/v3/dist/mcp/handlers/index.d.ts.map +1 -1
  187. package/v3/dist/mcp/handlers/index.js +2 -2
  188. package/v3/dist/mcp/handlers/index.js.map +1 -1
  189. package/v3/dist/mcp/handlers/wrapped-domain-handlers.d.ts +30 -0
  190. package/v3/dist/mcp/handlers/wrapped-domain-handlers.d.ts.map +1 -0
  191. package/v3/dist/mcp/handlers/wrapped-domain-handlers.js +75 -0
  192. package/v3/dist/mcp/handlers/wrapped-domain-handlers.js.map +1 -0
  193. package/v3/dist/mcp/tools/chaos-resilience/inject.js +1 -1
  194. package/v3/dist/mcp/tools/chaos-resilience/inject.js.map +1 -1
  195. package/v3/dist/mcp/tools/contract-testing/validate.js +1 -1
  196. package/v3/dist/mcp/tools/contract-testing/validate.js.map +1 -1
  197. package/v3/dist/mcp/tools/learning-optimization/optimize.js +1 -1
  198. package/v3/dist/mcp/tools/learning-optimization/optimize.js.map +1 -1
  199. package/v3/dist/mcp/tools/visual-accessibility/index.js +2 -2
  200. package/v3/dist/mcp/tools/visual-accessibility/index.js.map +1 -1
  201. package/v3/dist/routing/qe-agent-registry.d.ts +1 -1
  202. package/v3/dist/routing/qe-agent-registry.d.ts.map +1 -1
  203. package/v3/dist/routing/qe-agent-registry.js +20 -1
  204. package/v3/dist/routing/qe-agent-registry.js.map +1 -1
  205. package/v3/dist/sync/claude-flow-bridge.d.ts +63 -0
  206. package/v3/dist/sync/claude-flow-bridge.d.ts.map +1 -0
  207. package/v3/dist/sync/claude-flow-bridge.js +320 -0
  208. package/v3/dist/sync/claude-flow-bridge.js.map +1 -0
  209. package/v3/package.json +1 -1
@@ -1,17 +1,220 @@
1
1
  /**
2
2
  * Agentic QE v3 - Gap Detection Service
3
3
  * Implements IGapDetectionService with risk-based prioritization
4
+ *
5
+ * ADR-051: Added LLM-powered gap analysis for intelligent prioritization
4
6
  */
5
7
  import { ok, err } from '../../../shared/types';
8
+ const DEFAULT_CONFIG = {
9
+ minCoverage: 80,
10
+ enableLLMAnalysis: true, // On by default - opt-out
11
+ llmModelTier: 2, // Sonnet by default for balanced cost/quality
12
+ llmMaxTokens: 2048,
13
+ };
6
14
  // ============================================================================
7
15
  // Service Implementation
8
16
  // ============================================================================
9
17
  export class GapDetectorService {
10
- memory;
11
18
  static DEFAULT_MIN_COVERAGE = 80;
12
19
  static VECTOR_DIMENSION = 128;
13
- constructor(memory) {
14
- this.memory = memory;
20
+ memory;
21
+ config;
22
+ llmRouter;
23
+ /**
24
+ * Create a GapDetectorService instance
25
+ * Supports both old (MemoryBackend only) and new (dependencies + config) signatures
26
+ *
27
+ * @param dependenciesOrMemory - Either a GapDetectorDependencies object or a MemoryBackend
28
+ * @param config - Optional configuration (only used with new signature)
29
+ */
30
+ constructor(dependenciesOrMemory, config) {
31
+ // Support both old and new constructor signatures for backward compatibility
32
+ if ('memory' in dependenciesOrMemory) {
33
+ // New signature: dependencies object
34
+ this.memory = dependenciesOrMemory.memory;
35
+ this.llmRouter = dependenciesOrMemory.llmRouter;
36
+ this.config = { ...DEFAULT_CONFIG, ...config };
37
+ }
38
+ else {
39
+ // Old signature: just memory backend (backward compatible)
40
+ this.memory = dependenciesOrMemory;
41
+ this.llmRouter = undefined;
42
+ this.config = { ...DEFAULT_CONFIG };
43
+ }
44
+ }
45
+ // ============================================================================
46
+ // ADR-051: LLM Enhancement Methods
47
+ // ============================================================================
48
+ /**
49
+ * Check if LLM analysis is available and enabled
50
+ */
51
+ isLLMAnalysisAvailable() {
52
+ return this.config.enableLLMAnalysis === true && this.llmRouter !== undefined;
53
+ }
54
+ /**
55
+ * Get model ID for the configured tier
56
+ */
57
+ getModelForTier(tier) {
58
+ switch (tier) {
59
+ case 1: return 'claude-3-5-haiku-20241022';
60
+ case 2: return 'claude-sonnet-4-20250514';
61
+ case 3: return 'claude-sonnet-4-20250514';
62
+ case 4: return 'claude-opus-4-5-20251101';
63
+ default: return 'claude-sonnet-4-20250514';
64
+ }
65
+ }
66
+ /**
67
+ * Analyze coverage gaps using LLM for intelligent prioritization
68
+ * Provides risk-weighted analysis, test suggestions, and effort estimates
69
+ */
70
+ async analyzeGapsWithLLM(gaps, codeContext) {
71
+ if (!this.llmRouter) {
72
+ return err(new Error('LLM router not available'));
73
+ }
74
+ if (gaps.length === 0) {
75
+ return ok({
76
+ prioritizedGaps: [],
77
+ suggestedTests: [],
78
+ effortEstimate: {
79
+ totalHours: 0,
80
+ confidence: 1,
81
+ breakdown: {},
82
+ },
83
+ summary: 'No coverage gaps to analyze.',
84
+ });
85
+ }
86
+ try {
87
+ const prompt = this.buildGapAnalysisPrompt(gaps, codeContext);
88
+ const modelId = this.getModelForTier(this.config.llmModelTier ?? 2);
89
+ const response = await this.llmRouter.chat({
90
+ messages: [
91
+ {
92
+ role: 'system',
93
+ content: `You are a senior QE engineer analyzing coverage gaps. Provide:
94
+ 1. Risk-weighted prioritization (which gaps are most dangerous)
95
+ 2. Business impact assessment for each gap
96
+ 3. Specific test cases to fill each gap
97
+ 4. Effort estimates (in hours) to achieve target coverage
98
+
99
+ Return JSON in this exact format:
100
+ {
101
+ "prioritizedGaps": [{ "gapId": "...", "riskWeight": 0.8, "explanation": "...", "businessImpact": "high" }],
102
+ "suggestedTests": [{ "gapId": "...", "testDescription": "...", "testType": "unit", "estimatedEffort": 2 }],
103
+ "effortEstimate": { "totalHours": 10, "confidence": 0.8, "breakdown": { "file.ts": 5 } },
104
+ "summary": "Brief analysis summary..."
105
+ }`,
106
+ },
107
+ {
108
+ role: 'user',
109
+ content: prompt,
110
+ },
111
+ ],
112
+ model: modelId,
113
+ maxTokens: this.config.llmMaxTokens ?? 2048,
114
+ temperature: 0.3, // Low temperature for consistent analysis
115
+ });
116
+ if (response.content) {
117
+ const analysis = this.parseGapAnalysisResponse(response.content, gaps);
118
+ return ok(analysis);
119
+ }
120
+ return err(new Error('Empty response from LLM'));
121
+ }
122
+ catch (error) {
123
+ console.warn('[GapDetector] LLM analysis failed:', error);
124
+ return err(error instanceof Error ? error : new Error(String(error)));
125
+ }
126
+ }
127
+ /**
128
+ * Build prompt for gap analysis
129
+ */
130
+ buildGapAnalysisPrompt(gaps, codeContext) {
131
+ let prompt = `## Coverage Gaps to Analyze\n\n`;
132
+ for (const gap of gaps) {
133
+ prompt += `### Gap: ${gap.id}\n`;
134
+ prompt += `- File: ${gap.file}\n`;
135
+ prompt += `- Lines: ${gap.lines.length > 10 ? `${gap.lines.slice(0, 5).join(', ')}... (${gap.lines.length} total)` : gap.lines.join(', ')}\n`;
136
+ prompt += `- Branches: ${gap.branches.length}\n`;
137
+ prompt += `- Current Risk Score: ${gap.riskScore.toFixed(2)}\n`;
138
+ prompt += `- Severity: ${gap.severity}\n`;
139
+ prompt += `- Recommendation: ${gap.recommendation}\n\n`;
140
+ }
141
+ if (codeContext) {
142
+ prompt += `## Code Context\n\`\`\`typescript\n${codeContext.slice(0, 2000)}\n\`\`\`\n\n`;
143
+ }
144
+ prompt += `## Analysis Request\n`;
145
+ prompt += `1. Prioritize these gaps by actual risk (not just line count)\n`;
146
+ prompt += `2. Explain why each gap matters from a business perspective\n`;
147
+ prompt += `3. Suggest specific test cases to fill each gap\n`;
148
+ prompt += `4. Estimate effort to achieve 80% coverage\n`;
149
+ return prompt;
150
+ }
151
+ /**
152
+ * Parse LLM response into structured gap analysis
153
+ */
154
+ parseGapAnalysisResponse(content, gaps) {
155
+ try {
156
+ // Try to extract JSON from response
157
+ const jsonMatch = content.match(/\{[\s\S]*\}/);
158
+ if (jsonMatch) {
159
+ const parsed = JSON.parse(jsonMatch[0]);
160
+ return {
161
+ prioritizedGaps: parsed.prioritizedGaps || [],
162
+ suggestedTests: parsed.suggestedTests || [],
163
+ effortEstimate: parsed.effortEstimate || {
164
+ totalHours: this.calculateTotalEffort(gaps),
165
+ confidence: 0.5,
166
+ breakdown: {},
167
+ },
168
+ summary: parsed.summary || 'Analysis complete.',
169
+ };
170
+ }
171
+ }
172
+ catch {
173
+ // JSON parsing failed - return fallback analysis
174
+ }
175
+ // Fallback: create basic analysis from existing data
176
+ return {
177
+ prioritizedGaps: gaps.map((gap) => ({
178
+ gapId: gap.id,
179
+ riskWeight: gap.riskScore,
180
+ explanation: gap.recommendation,
181
+ businessImpact: this.severityToBusinessImpact(gap.severity),
182
+ })),
183
+ suggestedTests: gaps.slice(0, 5).map((gap) => ({
184
+ gapId: gap.id,
185
+ testDescription: `Test coverage for ${gap.file} lines ${gap.lines[0]}-${gap.lines[gap.lines.length - 1] || gap.lines[0]}`,
186
+ testType: 'unit',
187
+ estimatedEffort: Math.ceil(gap.lines.length / 15),
188
+ })),
189
+ effortEstimate: {
190
+ totalHours: this.calculateTotalEffort(gaps),
191
+ confidence: 0.5,
192
+ breakdown: this.calculateEffortBreakdown(gaps),
193
+ },
194
+ summary: `Analyzed ${gaps.length} coverage gaps. LLM response parsing failed, using heuristic analysis.`,
195
+ };
196
+ }
197
+ /**
198
+ * Convert severity to business impact
199
+ */
200
+ severityToBusinessImpact(severity) {
201
+ switch (severity) {
202
+ case 'critical': return 'critical';
203
+ case 'high': return 'high';
204
+ case 'medium': return 'medium';
205
+ default: return 'low';
206
+ }
207
+ }
208
+ /**
209
+ * Calculate effort breakdown by file
210
+ */
211
+ calculateEffortBreakdown(gaps) {
212
+ const breakdown = {};
213
+ for (const gap of gaps) {
214
+ const effort = Math.ceil(gap.lines.length / 15);
215
+ breakdown[gap.file] = (breakdown[gap.file] || 0) + effort;
216
+ }
217
+ return breakdown;
15
218
  }
16
219
  /**
17
220
  * Detect uncovered code regions using vector similarity for O(log n) analysis
@@ -471,4 +674,29 @@ describe('${fileName} Integration', () => {
471
674
  });`;
472
675
  }
473
676
  }
677
+ // ============================================================================
678
+ // Factory Functions
679
+ // ============================================================================
680
+ /**
681
+ * Create a GapDetectorService instance with default dependencies
682
+ * Maintains backward compatibility with existing code
683
+ *
684
+ * @param memory - Memory backend for pattern storage
685
+ * @param config - Optional configuration overrides
686
+ * @returns Configured GapDetectorService instance
687
+ */
688
+ export function createGapDetectorService(memory, config) {
689
+ return new GapDetectorService(memory, config);
690
+ }
691
+ /**
692
+ * Create a GapDetectorService instance with custom dependencies
693
+ * Used when LLM router or other custom implementations are needed
694
+ *
695
+ * @param dependencies - All service dependencies (memory + optional llmRouter)
696
+ * @param config - Optional configuration overrides
697
+ * @returns Configured GapDetectorService instance
698
+ */
699
+ export function createGapDetectorServiceWithDependencies(dependencies, config) {
700
+ return new GapDetectorService(dependencies, config);
701
+ }
474
702
  //# sourceMappingURL=gap-detector.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"gap-detector.js","sourceRoot":"","sources":["../../../../src/domains/coverage-analysis/services/gap-detector.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EAAU,EAAE,EAAE,GAAG,EAAY,MAAM,uBAAuB,CAAC;AAoClE,+EAA+E;AAC/E,yBAAyB;AACzB,+EAA+E;AAE/E,MAAM,OAAO,kBAAkB;IAIA;IAHrB,MAAM,CAAU,oBAAoB,GAAG,EAAE,CAAC;IAC1C,MAAM,CAAU,gBAAgB,GAAG,GAAG,CAAC;IAE/C,YAA6B,MAAqB;QAArB,WAAM,GAAN,MAAM,CAAe;IAAG,CAAC;IAEtD;;OAEG;IACH,KAAK,CAAC,UAAU,CAAC,OAA4B;QAC3C,IAAI,CAAC;YACH,MAAM,EACJ,YAAY,EACZ,WAAW,GAAG,kBAAkB,CAAC,oBAAoB,EACrD,UAAU,GAAG,MAAM,GACpB,GAAG,OAAO,CAAC;YAEZ,MAAM,IAAI,GAAkB,EAAE,CAAC;YAC/B,IAAI,mBAAmB,GAAG,CAAC,CAAC;YAE5B,KAAK,MAAM,IAAI,IAAI,YAAY,CAAC,KAAK,EAAE,CAAC;gBACtC,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,eAAe,CAAC,IAAI,EAAE,WAAW,CAAC,CAAC;gBAC/D,IAAI,CAAC,IAAI,CAAC,GAAG,QAAQ,CAAC,CAAC;gBACvB,mBAAmB,IAAI,IAAI,CAAC,cAAc,CAAC,MAAM,CAAC;YACpD,CAAC;YAED,gCAAgC;YAChC,MAAM,eAAe,GAAG,IAAI,CAAC,cAAc,CAAC,IAAI,EAAE,UAAU,CAAC,CAAC;YAE9D,6BAA6B;YAC7B,MAAM,eAAe,GAAG,IAAI,CAAC,oBAAoB,CAAC,eAAe,CAAC,CAAC;YAEnE,kCAAkC;YAClC,MAAM,IAAI,CAAC,gBAAgB,CAAC,eAAe,CAAC,CAAC;YAE7C,OAAO,EAAE,CAAC;gBACR,IAAI,EAAE,eAAe;gBACrB,mBAAmB;gBACnB,eAAe;aAChB,CAAC,CAAC;QACL,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,OAAO,GAAG,CAAC,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,KAAK,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;QACxE,CAAC;IACH,CAAC;IAED;;OAEG;IACH,cAAc,CACZ,IAAmB,EACnB,QAA4C;QAE5C,MAAM,MAAM,GAAG,CAAC,GAAG,IAAI,CAAC,CAAC;QAEzB,QAAQ,QAAQ,EAAE,CAAC;YACjB,KAAK,MAAM;gBACT,uDAAuD;gBACvD,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE;oBACnB,IAAI,CAAC,CAAC,SAAS,KAAK,CAAC,CAAC,SAAS,EAAE,CAAC;wBAChC,OAAO,CAAC,CAAC,SAAS,GAAG,CAAC,CAAC,SAAS,CAAC;oBACnC,CAAC;oBACD,OAAO,IAAI,CAAC,gBAAgB,CAAC,CAAC,CAAC,QAAQ,CAAC,GAAG,IAAI,CAAC,gBAAgB,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC;gBAC/E,CAAC,CAAC,CAAC;gBACH,MAAM;YAER,KAAK,MAAM;gBACT,yDAAyD;gBACzD,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;gBACvD,MAAM;YAER,KAAK,gBAAgB;gBACnB,oDAAoD;gBACpD,uDAAuD;gBACvD,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE;oBACnB,gEAAgE;oBAChE,MAAM,MAAM,GAAG,IAAI,CAAC,eAAe,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC;oBAC5C,MAAM,MAAM,GAAG,IAAI,CAAC,eAAe,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC;oBAC5C,OAAO,MAAM,GAAG,MAAM,CAAC;gBACzB,CAAC,CAAC,CAAC;gBACH,MAAM;QACV,CAAC;QAED,OAAO,MAAM,CAAC;IAChB,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,YAAY,CAAC,GAAgB;QACjC,IAAI,CAAC;YACH,MAAM,WAAW,GAAqB,EAAE,CAAC;YAEzC,8BAA8B;YAC9B,MAAM,UAAU,GAAG,GAAG,CAAC,KAAK,CAAC,MAAM,GAAG,EAAE,CAAC;YACzC,MAAM,aAAa,GAAG,GAAG,CAAC,QAAQ,CAAC,MAAM,GAAG,CAAC,CAAC;YAC9C,MAAM,UAAU,GAAG,GAAG,CAAC,QAAQ,KAAK,UAAU,IAAI,GAAG,CAAC,QAAQ,KAAK,MAAM,CAAC;YAE1E,mDAAmD;YACnD,MAAM,eAAe,GAAG,MAAM,IAAI,CAAC,wBAAwB,CAAC,GAAG,CAAC,CAAC;YAEjE,iCAAiC;YACjC,IAAI,GAAG,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;gBACzB,MAAM,kBAAkB,GAAG,IAAI,CAAC,wBAAwB,CAAC,GAAG,EAAE,eAAe,CAAC,CAAC;gBAC/E,WAAW,CAAC,IAAI,CAAC,kBAAkB,CAAC,CAAC;YACvC,CAAC;YAED,mDAAmD;YACnD,IAAI,UAAU,IAAI,aAAa,EAAE,CAAC;gBAChC,WAAW,CAAC,IAAI,CAAC;oBACf,IAAI,EAAE,aAAa;oBACnB,WAAW,EAAE,yBAAyB,GAAG,CAAC,IAAI,aAAa,GAAG,CAAC,KAAK,CAAC,MAAM,cAAc,GAAG,CAAC,QAAQ,CAAC,MAAM,WAAW;oBACvH,QAAQ,EAAE,UAAU,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,QAAQ;oBACxC,WAAW,EAAE,GAAG,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,EAAE,0BAA0B;oBAC/D,eAAe,EAAE,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,MAAM,GAAG,EAAE,CAAC;oBACjD,YAAY,EAAE,IAAI,CAAC,+BAA+B,CAAC,GAAG,CAAC;iBACxD,CAAC,CAAC;YACL,CAAC;YAED,4CAA4C;YAC5C,IAAI,UAAU,IAAI,UAAU,EAAE,CAAC;gBAC7B,WAAW,CAAC,IAAI,CAAC;oBACf,IAAI,EAAE,KAAK;oBACX,WAAW,EAAE,kDAAkD,GAAG,CAAC,IAAI,EAAE;oBACzE,QAAQ,EAAE,MAAM;oBAChB,WAAW,EAAE,GAAG,CAAC,KAAK;oBACtB,eAAe,EAAE,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC;iBACjD,CAAC,CAAC;YACL,CAAC;YAED,OAAO,EAAE,CAAC,WAAW,CAAC,CAAC;QACzB,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,OAAO,GAAG,CAAC,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,KAAK,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;QACxE,CAAC;IACH,CAAC;IAED,+EAA+E;IAC/E,yBAAyB;IACzB,+EAA+E;IAEvE,KAAK,CAAC,eAAe,CAC3B,IAAkB,EAClB,WAAmB;QAEnB,MAAM,IAAI,GAAkB,EAAE,CAAC;QAC/B,MAAM,QAAQ,GAAG,IAAI,CAAC,qBAAqB,CAAC,IAAI,CAAC,CAAC;QAElD,IAAI,QAAQ,GAAG,WAAW,IAAI,IAAI,CAAC,cAAc,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YAC7D,gDAAgD;YAChD,MAAM,OAAO,GAAG,IAAI,CAAC,wBAAwB,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC;YAEnE,KAAK,MAAM,MAAM,IAAI,OAAO,EAAE,CAAC;gBAC7B,MAAM,SAAS,GAAG,MAAM,IAAI,CAAC,wBAAwB,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC;gBACpE,MAAM,QAAQ,GAAG,IAAI,CAAC,mBAAmB,CAAC,SAAS,CAAC,CAAC;gBAErD,IAAI,CAAC,IAAI,CAAC;oBACR,EAAE,EAAE,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,IAAI,EAAE,MAAM,CAAC,KAAK,CAAC;oBAC/C,IAAI,EAAE,IAAI,CAAC,IAAI;oBACf,KAAK,EAAE,MAAM,CAAC,KAAK;oBACnB,QAAQ,EAAE,IAAI,CAAC,mBAAmB,CAAC,IAAI,CAAC,iBAAiB,EAAE,MAAM,CAAC;oBAClE,SAAS;oBACT,QAAQ;oBACR,cAAc,EAAE,IAAI,CAAC,sBAAsB,CAAC,IAAI,EAAE,MAAM,EAAE,QAAQ,CAAC;iBACpE,CAAC,CAAC;YACL,CAAC;QACH,CAAC;QAED,OAAO,IAAI,CAAC;IACd,CAAC;IAEO,qBAAqB,CAAC,IAAkB;QAC9C,MAAM,OAAO,GAAG;YACd,IAAI,CAAC,KAAK,CAAC,KAAK,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,OAAO,GAAG,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,GAAG,GAAG,CAAC,CAAC,CAAC,GAAG;YAC1E,IAAI,CAAC,QAAQ,CAAC,KAAK,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,OAAO,GAAG,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,GAAG,GAAG,CAAC,CAAC,CAAC,GAAG;YACnF,IAAI,CAAC,SAAS,CAAC,KAAK,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,OAAO,GAAG,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,GAAG,GAAG,CAAC,CAAC,CAAC,GAAG;YACtF,IAAI,CAAC,UAAU,CAAC,KAAK,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,UAAU,CAAC,OAAO,GAAG,IAAI,CAAC,UAAU,CAAC,KAAK,CAAC,GAAG,GAAG,CAAC,CAAC,CAAC,GAAG;SAC1F,CAAC;QACF,OAAO,OAAO,CAAC,MAAM,CAAC,CAAC,GAAG,EAAE,CAAC,EAAE,EAAE,CAAC,GAAG,GAAG,CAAC,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC;IACpD,CAAC;IAEO,wBAAwB,CAAC,KAAe;QAC9C,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC;YAAE,OAAO,EAAE,CAAC;QAElC,MAAM,MAAM,GAAG,CAAC,GAAG,KAAK,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC;QAChD,MAAM,OAAO,GAAsB,EAAE,CAAC;QAEtC,IAAI,WAAW,GAAG,MAAM,CAAC,CAAC,CAAC,CAAC;QAC5B,IAAI,WAAW,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC;QAE9B,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,MAAM,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;YACvC,6EAA6E;YAC7E,IAAI,MAAM,CAAC,CAAC,CAAC,GAAG,MAAM,CAAC,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,EAAE,CAAC;gBACnC,WAAW,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC;YAC9B,CAAC;iBAAM,CAAC;gBACN,uCAAuC;gBACvC,OAAO,CAAC,IAAI,CAAC;oBACX,KAAK,EAAE,WAAW;oBAClB,GAAG,EAAE,WAAW,CAAC,WAAW,CAAC,MAAM,GAAG,CAAC,CAAC;oBACxC,KAAK,EAAE,WAAW;oBAClB,IAAI,EAAE,WAAW,CAAC,MAAM;iBACzB,CAAC,CAAC;gBACH,WAAW,GAAG,MAAM,CAAC,CAAC,CAAC,CAAC;gBACxB,WAAW,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC;YAC5B,CAAC;QACH,CAAC;QAED,mBAAmB;QACnB,OAAO,CAAC,IAAI,CAAC;YACX,KAAK,EAAE,WAAW;YAClB,GAAG,EAAE,WAAW,CAAC,WAAW,CAAC,MAAM,GAAG,CAAC,CAAC;YACxC,KAAK,EAAE,WAAW;YAClB,IAAI,EAAE,WAAW,CAAC,MAAM;SACzB,CAAC,CAAC;QAEH,OAAO,OAAO,CAAC;IACjB,CAAC;IAEO,mBAAmB,CAAC,WAAqB,EAAE,MAAuB;QACxE,OAAO,WAAW,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,IAAI,MAAM,CAAC,KAAK,IAAI,CAAC,IAAI,MAAM,CAAC,GAAG,CAAC,CAAC;IACzE,CAAC;IAEO,KAAK,CAAC,wBAAwB,CACpC,IAAkB,EAClB,MAAuB;QAEvB,6BAA6B;QAC7B,MAAM,QAAQ,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,MAAM,CAAC,IAAI,GAAG,EAAE,CAAC,CAAC;QAE/C,wCAAwC;QACxC,MAAM,YAAY,GAChB,IAAI,CAAC,SAAS,CAAC,KAAK,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC,SAAS,CAAC,OAAO,GAAG,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC;QAEnF,sCAAsC;QACtC,MAAM,gBAAgB,GAAG,IAAI,CAAC,mBAAmB,CAAC,IAAI,CAAC,iBAAiB,EAAE,MAAM,CAAC,CAAC;QAClF,MAAM,UAAU,GAAG,gBAAgB,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,gBAAgB,CAAC,MAAM,GAAG,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;QAE/F,wCAAwC;QACxC,MAAM,cAAc,GAAG,MAAM,IAAI,CAAC,iBAAiB,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAE/D,uBAAuB;QACvB,MAAM,QAAQ,GAAG,QAAQ,GAAG,GAAG,GAAG,YAAY,GAAG,GAAG,GAAG,UAAU,GAAG,GAAG,GAAG,cAAc,GAAG,GAAG,CAAC;QAE/F,OAAO,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,QAAQ,CAAC,CAAC,CAAC;IAC5C,CAAC;IAEO,KAAK,CAAC,iBAAiB,CAAC,QAAgB;QAC9C,IAAI,CAAC;YACH,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,GAAG,CACnC,kBAAkB,QAAQ,EAAE,CAC7B,CAAC;YACF,IAAI,OAAO,IAAI,OAAO,CAAC,WAAW,GAAG,CAAC,EAAE,CAAC;gBACvC,OAAO,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,OAAO,CAAC,WAAW,GAAG,EAAE,CAAC,CAAC;YAC/C,CAAC;YACD,OAAO,GAAG,CAAC,CAAC,wBAAwB;QACtC,CAAC;QAAC,MAAM,CAAC;YACP,OAAO,GAAG,CAAC;QACb,CAAC;IACH,CAAC;IAEO,mBAAmB,CAAC,SAAiB;QAC3C,IAAI,SAAS,IAAI,GAAG;YAAE,OAAO,UAAU,CAAC;QACxC,IAAI,SAAS,IAAI,GAAG;YAAE,OAAO,MAAM,CAAC;QACpC,IAAI,SAAS,IAAI,GAAG;YAAE,OAAO,QAAQ,CAAC;QACtC,OAAO,KAAK,CAAC;IACf,CAAC;IAEO,gBAAgB,CAAC,QAAkB;QACzC,QAAQ,QAAQ,EAAE,CAAC;YACjB,KAAK,UAAU;gBACb,OAAO,CAAC,CAAC;YACX,KAAK,MAAM;gBACT,OAAO,CAAC,CAAC;YACX,KAAK,QAAQ;gBACX,OAAO,CAAC,CAAC;YACX,KAAK,KAAK;gBACR,OAAO,CAAC,CAAC;YACX;gBACE,OAAO,CAAC,CAAC;QACb,CAAC;IACH,CAAC;IAEO,eAAe,CAAC,QAAgB;QACtC,sCAAsC;QACtC,IAAI,QAAQ,CAAC,QAAQ,CAAC,cAAc,CAAC;YAAE,OAAO,GAAG,CAAC;QAClD,IAAI,QAAQ,CAAC,QAAQ,CAAC,aAAa,CAAC;YAAE,OAAO,GAAG,CAAC;QACjD,IAAI,QAAQ,CAAC,QAAQ,CAAC,MAAM,CAAC;YAAE,OAAO,GAAG,CAAC;QAC1C,IAAI,QAAQ,CAAC,QAAQ,CAAC,MAAM,CAAC;YAAE,OAAO,GAAG,CAAC;QAC1C,OAAO,GAAG,CAAC;IACb,CAAC;IAEO,aAAa,CAAC,QAAgB,EAAE,SAAiB;QACvD,MAAM,IAAI,GAAG,GAAG,QAAQ,IAAI,SAAS,EAAE,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,MAAM,CAAC,CAAC,GAAG,EAAE,IAAI,EAAE,EAAE;YACrE,OAAO,CAAC,CAAC,GAAG,IAAI,CAAC,CAAC,GAAG,GAAG,GAAG,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC;QACrD,CAAC,EAAE,CAAC,CAAC,CAAC;QACN,OAAO,OAAO,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,QAAQ,CAAC,EAAE,CAAC,EAAE,CAAC;IAC9C,CAAC;IAEO,sBAAsB,CAC5B,KAAmB,EACnB,MAAuB,EACvB,QAAkB;QAElB,MAAM,SAAS,GACb,MAAM,CAAC,KAAK,KAAK,MAAM,CAAC,GAAG;YACzB,CAAC,CAAC,QAAQ,MAAM,CAAC,KAAK,EAAE;YACxB,CAAC,CAAC,SAAS,MAAM,CAAC,KAAK,IAAI,MAAM,CAAC,GAAG,EAAE,CAAC;QAE5C,IAAI,cAAc,GAAG,iBAAiB,SAAS,KAAK,MAAM,CAAC,IAAI,mBAAmB,CAAC;QAEnF,IAAI,QAAQ,KAAK,UAAU,EAAE,CAAC;YAC5B,cAAc,IAAI,2DAA2D,CAAC;QAChF,CAAC;aAAM,IAAI,QAAQ,KAAK,MAAM,EAAE,CAAC;YAC/B,cAAc,IAAI,oCAAoC,CAAC;QACzD,CAAC;QAED,OAAO,cAAc,CAAC;IACxB,CAAC;IAEO,oBAAoB,CAAC,IAAmB;QAC9C,MAAM,UAAU,GAAG,IAAI,CAAC,MAAM,CAAC,CAAC,GAAG,EAAE,GAAG,EAAE,EAAE,CAAC,GAAG,GAAG,GAAG,CAAC,KAAK,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC;QACxE,kEAAkE;QAClE,OAAO,IAAI,CAAC,IAAI,CAAC,CAAC,UAAU,GAAG,EAAE,CAAC,GAAG,EAAE,CAAC,CAAC;IAC3C,CAAC;IAEO,KAAK,CAAC,gBAAgB,CAAC,IAAmB;QAChD,IAAI,CAAC;YACH,KAAK,MAAM,GAAG,IAAI,IAAI,EAAE,CAAC;gBACvB,MAAM,SAAS,GAAG,IAAI,CAAC,kBAAkB,CAAC,GAAG,CAAC,CAAC;gBAC/C,MAAM,IAAI,CAAC,MAAM,CAAC,WAAW,CAAC,eAAe,GAAG,CAAC,EAAE,EAAE,EAAE,SAAS,EAAE;oBAChE,IAAI,EAAE,GAAG,CAAC,IAAI;oBACd,SAAS,EAAE,GAAG,CAAC,SAAS;oBACxB,QAAQ,EAAE,GAAG,CAAC,QAAQ;oBACtB,SAAS,EAAE,GAAG,CAAC,KAAK,CAAC,MAAM;iBAC5B,CAAC,CAAC;YACL,CAAC;QACH,CAAC;QAAC,MAAM,CAAC;YACP,yBAAyB;QAC3B,CAAC;IACH,CAAC;IAEO,kBAAkB,CAAC,GAAgB;QACzC,MAAM,SAAS,GAAG,IAAI,KAAK,CAAC,kBAAkB,CAAC,gBAAgB,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QAEzE,6BAA6B;QAC7B,SAAS,CAAC,CAAC,CAAC,GAAG,GAAG,CAAC,SAAS,CAAC;QAC7B,SAAS,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,GAAG,CAAC,KAAK,CAAC,MAAM,GAAG,GAAG,CAAC,CAAC;QACnD,SAAS,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,GAAG,CAAC,QAAQ,CAAC,MAAM,GAAG,EAAE,CAAC,CAAC;QACrD,SAAS,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC,gBAAgB,CAAC,GAAG,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC;QAEvD,mCAAmC;QACnC,MAAM,QAAQ,GAAG,GAAG,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,MAAM,CAAC,CAAC,GAAG,EAAE,CAAC,EAAE,EAAE,CAAC,GAAG,GAAG,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;QACjF,SAAS,CAAC,CAAC,CAAC,GAAG,CAAC,QAAQ,GAAG,IAAI,CAAC,GAAG,IAAI,CAAC;QAExC,uCAAuC;QACvC,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,kBAAkB,CAAC,gBAAgB,EAAE,CAAC,EAAE,EAAE,CAAC;YAC7D,SAAS,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,GAAG,GAAG,CAAC,SAAS,CAAC,GAAG,GAAG,GAAG,GAAG,CAAC;QACzD,CAAC;QAED,OAAO,SAAS,CAAC;IACnB,CAAC;IAEO,KAAK,CAAC,wBAAwB,CAAC,GAAgB;QACrD,IAAI,CAAC;YACH,MAAM,SAAS,GAAG,IAAI,CAAC,kBAAkB,CAAC,GAAG,CAAC,CAAC;YAC/C,OAAO,MAAM,IAAI,CAAC,MAAM,CAAC,YAAY,CAAC,SAAS,EAAE,CAAC,CAAC,CAAC;QACtD,CAAC;QAAC,MAAM,CAAC;YACP,OAAO,EAAE,CAAC;QACZ,CAAC;IACH,CAAC;IAEO,wBAAwB,CAC9B,GAAgB,EAChB,eAAqC;QAErC,MAAM,UAAU,GAAG,GAAG,CAAC,QAAQ,KAAK,UAAU,IAAI,GAAG,CAAC,QAAQ,KAAK,MAAM,CAAC;QAE1E,IAAI,WAAW,GAAG,kBAAkB,GAAG,CAAC,IAAI,EAAE,CAAC;QAC/C,IAAI,GAAG,CAAC,KAAK,CAAC,MAAM,IAAI,EAAE,EAAE,CAAC;YAC3B,WAAW,IAAI,mBAAmB,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC;QAC3D,CAAC;aAAM,CAAC;YACN,WAAW,IAAI,aAAa,GAAG,CAAC,KAAK,CAAC,MAAM,kBAAkB,CAAC;QACjE,CAAC;QAED,IAAI,eAAe,CAAC,MAAM,GAAG,CAAC,IAAI,eAAe,CAAC,CAAC,CAAC,CAAC,KAAK,GAAG,GAAG,EAAE,CAAC;YACjE,WAAW,IAAI,+DAA+D,CAAC;QACjF,CAAC;QAED,OAAO;YACL,IAAI,EAAE,MAAM;YACZ,WAAW;YACX,QAAQ,EAAE,UAAU,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,QAAQ;YACxC,WAAW,EAAE,GAAG,CAAC,KAAK;YACtB,eAAe,EAAE,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,MAAM,GAAG,EAAE,CAAC;YACjD,YAAY,EAAE,IAAI,CAAC,wBAAwB,CAAC,GAAG,CAAC;SACjD,CAAC;IACJ,CAAC;IAEO,wBAAwB,CAAC,GAAgB;QAC/C,MAAM,QAAQ,GAAG,GAAG,CAAC,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE,OAAO,CAAC,UAAU,EAAE,EAAE,CAAC,IAAI,QAAQ,CAAC;QAChF,MAAM,UAAU,GAAG,IAAI,CAAC,WAAW,CAAC,QAAQ,CAAC,CAAC;QAC9C,MAAM,SAAS,GAAG,GAAG,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC;YACpC,CAAC,CAAC,GAAG,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC,EAAE;YACtD,CAAC,CAAC,GAAG,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,CAAC;QAEtB,OAAO,YAAY,UAAU,cAAc,QAAQ;;YAE3C,QAAQ;6CACyB,SAAS;2BAC3B,UAAU;;;mBAGlB,UAAU;;;;sDAIyB,SAAS;;;;;;;;;;;;;;;;;;;;EAoB7D,GAAG,CAAC,QAAQ,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC;iCACK,GAAG,CAAC,QAAQ,CAAC,MAAM;EAClD,GAAG,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC,iCAAiC,CAAC,GAAG,CAAC,YAAY,MAAM;kDACxC,CAAC,GAAG,CAAC;;;;CAItD,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC;CACZ,CAAC,CAAC,CAAC,EAAE;IACF,CAAC;IACH,CAAC;IAEO,WAAW,CAAC,GAAW;QAC7B,OAAO,GAAG,CAAC,OAAO,CAAC,UAAU,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,WAAW,EAAE,CAAC,CAAC;IAC5D,CAAC;IAEO,+BAA+B,CAAC,GAAgB;QACtD,MAAM,QAAQ,GAAG,GAAG,CAAC,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE,OAAO,CAAC,UAAU,EAAE,EAAE,CAAC,IAAI,QAAQ,CAAC;QAChF,MAAM,UAAU,GAAG,IAAI,CAAC,WAAW,CAAC,QAAQ,CAAC,CAAC;QAC9C,MAAM,SAAS,GAAG,GAAG,CAAC,KAAK,CAAC,MAAM,CAAC;QAEnC,OAAO,YAAY,UAAU,cAAc,QAAQ;;;YAG3C,QAAQ;;;;;;;;;;;;;;;sCAekB,SAAS;;;6BAGlB,UAAU;;;;;;;;;;;;;6BAaV,UAAU;;;;;;;;;;6BAUV,UAAU;;;;;;;;;;;qBAWlB,UAAU;;;;;;;;6BAQF,UAAU;;;;;;;;;;;qBAWlB,UAAU;;;;IAI3B,CAAC;IACH,CAAC"}
1
+ {"version":3,"file":"gap-detector.js","sourceRoot":"","sources":["../../../../src/domains/coverage-analysis/services/gap-detector.ts"],"names":[],"mappings":"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"}
@@ -1,10 +1,17 @@
1
1
  /**
2
2
  * Agentic QE v3 - Defect Intelligence Coordinator
3
3
  * Orchestrates the defect intelligence workflow across services
4
+ *
5
+ * V3 Integration:
6
+ * - ADR-047: MinCut Self-Organizing QE Integration for topology awareness
7
+ * - MM-001: Multi-Model Consensus for high-confidence defect predictions
4
8
  */
5
- import { Result } from '../../shared/types';
9
+ import { Result, DomainName } from '../../shared/types';
6
10
  import { EventBus, MemoryBackend, AgentCoordinator } from '../../kernel/interfaces';
7
11
  import { DefectIntelligenceAPI, PredictRequest, PredictionResult, RootCauseRequest, RootCauseAnalysis, RegressionRequest, RegressionRisk, ClusterRequest, DefectClusters, LearnRequest, LearnedDefectPatterns } from './interfaces';
12
+ import { QueenMinCutBridge } from '../../coordination/mincut';
13
+ import { type ConsensusEnabledConfig } from '../../coordination/mixins/consensus-enabled-domain';
14
+ import { type DomainFinding, type ConsensusResult } from '../../coordination/consensus';
8
15
  /**
9
16
  * Interface for the defect intelligence coordinator
10
17
  */
@@ -12,6 +19,10 @@ export interface IDefectIntelligenceCoordinator extends DefectIntelligenceAPI {
12
19
  initialize(): Promise<void>;
13
20
  dispose(): Promise<void>;
14
21
  getActiveWorkflows(): WorkflowStatus[];
22
+ setMinCutBridge(bridge: QueenMinCutBridge): void;
23
+ isTopologyHealthy(): boolean;
24
+ isDomainWeakPoint(): boolean;
25
+ getTopologyBasedRouting(targetDomains: DomainName[]): DomainName[];
15
26
  }
16
27
  /**
17
28
  * Workflow status tracking
@@ -35,10 +46,20 @@ export interface CoordinatorConfig {
35
46
  enablePatternLearning: boolean;
36
47
  publishEvents: boolean;
37
48
  autoAnalyzeThreshold: number;
49
+ enableMinCutAwareness: boolean;
50
+ topologyHealthThreshold: number;
51
+ pauseOnCriticalTopology: boolean;
52
+ enableConsensus: boolean;
53
+ consensusThreshold: number;
54
+ consensusConfig?: Partial<ConsensusEnabledConfig>;
38
55
  }
39
56
  /**
40
57
  * Defect Intelligence Coordinator
41
58
  * Orchestrates defect analysis workflows and coordinates with agents
59
+ *
60
+ * V3 Integration:
61
+ * - MinCut topology awareness for routing and health monitoring (ADR-047)
62
+ * - Multi-model consensus for high-confidence predictions (MM-001)
42
63
  */
43
64
  export declare class DefectIntelligenceCoordinator implements IDefectIntelligenceCoordinator {
44
65
  private readonly eventBus;
@@ -50,6 +71,8 @@ export declare class DefectIntelligenceCoordinator implements IDefectIntelligenc
50
71
  private readonly rootCauseAnalyzer;
51
72
  private readonly workflows;
52
73
  private initialized;
74
+ private readonly minCutMixin;
75
+ private readonly consensusMixin;
53
76
  constructor(eventBus: EventBus, memory: MemoryBackend, agentCoordinator: AgentCoordinator, config?: Partial<CoordinatorConfig>);
54
77
  /**
55
78
  * Initialize the coordinator
@@ -63,14 +86,70 @@ export declare class DefectIntelligenceCoordinator implements IDefectIntelligenc
63
86
  * Get active workflow statuses
64
87
  */
65
88
  getActiveWorkflows(): WorkflowStatus[];
89
+ /**
90
+ * Set the MinCut bridge for topology awareness
91
+ * Uses dependency injection pattern for testability
92
+ */
93
+ setMinCutBridge(bridge: QueenMinCutBridge): void;
94
+ /**
95
+ * Check if the overall topology is healthy
96
+ * Returns true if status is not 'critical'
97
+ */
98
+ isTopologyHealthy(): boolean;
99
+ /**
100
+ * Check if this domain is a weak point in the topology
101
+ * Returns true if any weak vertex belongs to defect-intelligence
102
+ */
103
+ isDomainWeakPoint(): boolean;
104
+ /**
105
+ * Get routing candidates excluding weak domains
106
+ * Filters out domains that are currently weak points
107
+ */
108
+ getTopologyBasedRouting(targetDomains: DomainName[]): DomainName[];
109
+ /**
110
+ * Get weak vertices in this domain (for diagnostics)
111
+ */
112
+ getDomainWeakVertices(): import("../..").WeakVertex[];
113
+ /**
114
+ * Subscribe to topology health changes
115
+ */
116
+ onTopologyHealthChange(callback: (health: any) => void): () => void;
117
+ /**
118
+ * Check if a finding requires consensus verification
119
+ */
120
+ requiresConsensus<T>(finding: DomainFinding<T>): boolean;
121
+ /**
122
+ * Verify a finding using multi-model consensus
123
+ */
124
+ verifyFinding<T>(finding: DomainFinding<T>): Promise<Result<ConsensusResult, Error>>;
125
+ /**
126
+ * Get consensus statistics
127
+ */
128
+ getConsensusStats(): import("../..").ConsensusStats | undefined;
66
129
  /**
67
130
  * Predict defects for given files
131
+ *
132
+ * V3 Integration: High-confidence predictions are verified using multi-model
133
+ * consensus to improve detection accuracy from ~27% to 75%+ (MM-001)
68
134
  */
69
135
  predictDefects(request: PredictRequest): Promise<Result<PredictionResult, Error>>;
136
+ /**
137
+ * V3: Verify high-confidence predictions using multi-model consensus
138
+ * Improves detection accuracy from ~27% to 75%+ by requiring model agreement
139
+ */
140
+ private verifyHighConfidencePredictions;
70
141
  /**
71
142
  * Analyze root cause of a defect
143
+ *
144
+ * V3 Integration: Root cause analysis is verified using multi-model consensus
145
+ * for high-confidence results to ensure accuracy (MM-001)
72
146
  */
73
147
  analyzeRootCause(request: RootCauseRequest): Promise<Result<RootCauseAnalysis, Error>>;
148
+ /**
149
+ * V3: Verify root cause analysis using multi-model consensus
150
+ * Root cause identification is critical - verify with multiple models
151
+ */
152
+ private verifyRootCauseAnalysis;
74
153
  /**
75
154
  * Analyze regression risk for a changeset
76
155
  */
@@ -1 +1 @@
1
- {"version":3,"file":"coordinator.d.ts","sourceRoot":"","sources":["../../../src/domains/defect-intelligence/coordinator.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"coordinator.d.ts","sourceRoot":"","sources":["../../../src/domains/defect-intelligence/coordinator.ts"],"names":[],"mappings":"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"}