agentic-qe 2.7.1 → 2.7.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 (157) hide show
  1. package/CHANGELOG.md +179 -0
  2. package/README.md +2 -2
  3. package/dist/agents/CodeIntelligenceAgent.d.ts.map +1 -1
  4. package/dist/agents/CodeIntelligenceAgent.js +7 -5
  5. package/dist/agents/CodeIntelligenceAgent.js.map +1 -1
  6. package/dist/cli/commands/knowledge-graph.d.ts.map +1 -1
  7. package/dist/cli/commands/knowledge-graph.js +4 -2
  8. package/dist/cli/commands/knowledge-graph.js.map +1 -1
  9. package/dist/cli/commands/migrate/index.d.ts +14 -0
  10. package/dist/cli/commands/migrate/index.d.ts.map +1 -0
  11. package/dist/cli/commands/migrate/index.js +283 -0
  12. package/dist/cli/commands/migrate/index.js.map +1 -0
  13. package/dist/cli/formatters/KGOutputFormatter.d.ts.map +1 -1
  14. package/dist/cli/formatters/KGOutputFormatter.js +15 -6
  15. package/dist/cli/formatters/KGOutputFormatter.js.map +1 -1
  16. package/dist/cli/index.js +3 -0
  17. package/dist/cli/index.js.map +1 -1
  18. package/dist/cli/init/database-init.d.ts.map +1 -1
  19. package/dist/cli/init/database-init.js +105 -0
  20. package/dist/cli/init/database-init.js.map +1 -1
  21. package/dist/code-intelligence/orchestrator/CodeIntelligenceOrchestrator.d.ts +9 -3
  22. package/dist/code-intelligence/orchestrator/CodeIntelligenceOrchestrator.d.ts.map +1 -1
  23. package/dist/code-intelligence/orchestrator/CodeIntelligenceOrchestrator.js +41 -3
  24. package/dist/code-intelligence/orchestrator/CodeIntelligenceOrchestrator.js.map +1 -1
  25. package/dist/code-intelligence/service/CodeIntelligenceService.js +1 -1
  26. package/dist/code-intelligence/service/CodeIntelligenceService.js.map +1 -1
  27. package/dist/core/memory/HNSWVectorMemory.js +1 -1
  28. package/dist/learning/QLearning.d.ts +110 -2
  29. package/dist/learning/QLearning.d.ts.map +1 -1
  30. package/dist/learning/QLearning.js +218 -1
  31. package/dist/learning/QLearning.js.map +1 -1
  32. package/dist/learning/metrics/LearningMetrics.d.ts +37 -0
  33. package/dist/learning/metrics/LearningMetrics.d.ts.map +1 -1
  34. package/dist/learning/metrics/LearningMetrics.js +73 -0
  35. package/dist/learning/metrics/LearningMetrics.js.map +1 -1
  36. package/dist/mcp/handlers/fleet-init.d.ts +10 -0
  37. package/dist/mcp/handlers/fleet-init.d.ts.map +1 -1
  38. package/dist/mcp/handlers/fleet-init.js +61 -0
  39. package/dist/mcp/handlers/fleet-init.js.map +1 -1
  40. package/dist/mcp/handlers/learning/learning-store-pattern.d.ts +13 -0
  41. package/dist/mcp/handlers/learning/learning-store-pattern.d.ts.map +1 -1
  42. package/dist/mcp/handlers/learning/learning-store-pattern.js +38 -0
  43. package/dist/mcp/handlers/learning/learning-store-pattern.js.map +1 -1
  44. package/dist/mcp/handlers/phase3/Phase3DomainTools.d.ts +89 -0
  45. package/dist/mcp/handlers/phase3/Phase3DomainTools.d.ts.map +1 -1
  46. package/dist/mcp/handlers/phase3/Phase3DomainTools.js +110 -1
  47. package/dist/mcp/handlers/phase3/Phase3DomainTools.js.map +1 -1
  48. package/dist/mcp/handlers/task-orchestrate.d.ts +27 -1
  49. package/dist/mcp/handlers/task-orchestrate.d.ts.map +1 -1
  50. package/dist/mcp/handlers/task-orchestrate.js +188 -8
  51. package/dist/mcp/handlers/task-orchestrate.js.map +1 -1
  52. package/dist/mcp/server-instructions.d.ts +1 -1
  53. package/dist/mcp/server-instructions.js +1 -1
  54. package/dist/mcp/server.d.ts +6 -0
  55. package/dist/mcp/server.d.ts.map +1 -1
  56. package/dist/mcp/server.js +92 -2
  57. package/dist/mcp/server.js.map +1 -1
  58. package/dist/mcp/services/AgentRegistry.d.ts +13 -0
  59. package/dist/mcp/services/AgentRegistry.d.ts.map +1 -1
  60. package/dist/mcp/services/AgentRegistry.js +66 -0
  61. package/dist/mcp/services/AgentRegistry.js.map +1 -1
  62. package/dist/mcp/tools/qe/quality-gates/evaluate-quality-gate.d.ts +55 -0
  63. package/dist/mcp/tools/qe/quality-gates/evaluate-quality-gate.d.ts.map +1 -1
  64. package/dist/mcp/tools/qe/quality-gates/evaluate-quality-gate.js +233 -0
  65. package/dist/mcp/tools/qe/quality-gates/evaluate-quality-gate.js.map +1 -1
  66. package/dist/mcp/tools/qe/quality-gates/index.d.ts +5 -2
  67. package/dist/mcp/tools/qe/quality-gates/index.d.ts.map +1 -1
  68. package/dist/mcp/tools/qe/quality-gates/index.js +10 -1
  69. package/dist/mcp/tools/qe/quality-gates/index.js.map +1 -1
  70. package/dist/mcp/tools.d.ts +1 -0
  71. package/dist/mcp/tools.d.ts.map +1 -1
  72. package/dist/mcp/tools.js +156 -1
  73. package/dist/mcp/tools.js.map +1 -1
  74. package/dist/persistence/migrations/all-migrations.d.ts +18 -0
  75. package/dist/persistence/migrations/all-migrations.d.ts.map +1 -0
  76. package/dist/persistence/migrations/all-migrations.js +624 -0
  77. package/dist/persistence/migrations/all-migrations.js.map +1 -0
  78. package/dist/persistence/migrations/index.d.ts +110 -0
  79. package/dist/persistence/migrations/index.d.ts.map +1 -0
  80. package/dist/persistence/migrations/index.js +303 -0
  81. package/dist/persistence/migrations/index.js.map +1 -0
  82. package/dist/planning/GOAPPlanner.d.ts +170 -0
  83. package/dist/planning/GOAPPlanner.d.ts.map +1 -0
  84. package/dist/planning/GOAPPlanner.js +781 -0
  85. package/dist/planning/GOAPPlanner.js.map +1 -0
  86. package/dist/planning/PlanLearning.d.ts +184 -0
  87. package/dist/planning/PlanLearning.d.ts.map +1 -0
  88. package/dist/planning/PlanLearning.js +526 -0
  89. package/dist/planning/PlanLearning.js.map +1 -0
  90. package/dist/planning/PlanSimilarity.d.ts +148 -0
  91. package/dist/planning/PlanSimilarity.d.ts.map +1 -0
  92. package/dist/planning/PlanSimilarity.js +463 -0
  93. package/dist/planning/PlanSimilarity.js.map +1 -0
  94. package/dist/planning/WorldStateBuilder.d.ts +150 -0
  95. package/dist/planning/WorldStateBuilder.d.ts.map +1 -0
  96. package/dist/planning/WorldStateBuilder.js +267 -0
  97. package/dist/planning/WorldStateBuilder.js.map +1 -0
  98. package/dist/planning/actions/fleet-actions.d.ts +78 -0
  99. package/dist/planning/actions/fleet-actions.d.ts.map +1 -0
  100. package/dist/planning/actions/fleet-actions.js +329 -0
  101. package/dist/planning/actions/fleet-actions.js.map +1 -0
  102. package/dist/planning/actions/index.d.ts +61 -0
  103. package/dist/planning/actions/index.d.ts.map +1 -0
  104. package/dist/planning/actions/index.js +159 -0
  105. package/dist/planning/actions/index.js.map +1 -0
  106. package/dist/planning/actions/orchestration-actions.d.ts +61 -0
  107. package/dist/planning/actions/orchestration-actions.d.ts.map +1 -0
  108. package/dist/planning/actions/orchestration-actions.js +395 -0
  109. package/dist/planning/actions/orchestration-actions.js.map +1 -0
  110. package/dist/planning/actions/quality-gate-actions.d.ts +160 -0
  111. package/dist/planning/actions/quality-gate-actions.d.ts.map +1 -0
  112. package/dist/planning/actions/quality-gate-actions.js +639 -0
  113. package/dist/planning/actions/quality-gate-actions.js.map +1 -0
  114. package/dist/planning/actions/test-strategy-actions.d.ts +70 -0
  115. package/dist/planning/actions/test-strategy-actions.d.ts.map +1 -0
  116. package/dist/planning/actions/test-strategy-actions.js +278 -0
  117. package/dist/planning/actions/test-strategy-actions.js.map +1 -0
  118. package/dist/planning/execution/PlanExecutor.d.ts +223 -0
  119. package/dist/planning/execution/PlanExecutor.d.ts.map +1 -0
  120. package/dist/planning/execution/PlanExecutor.js +978 -0
  121. package/dist/planning/execution/PlanExecutor.js.map +1 -0
  122. package/dist/planning/execution/index.d.ts +12 -0
  123. package/dist/planning/execution/index.d.ts.map +1 -0
  124. package/dist/planning/execution/index.js +18 -0
  125. package/dist/planning/execution/index.js.map +1 -0
  126. package/dist/planning/goals/TaskWorkflowGoals.d.ts +67 -0
  127. package/dist/planning/goals/TaskWorkflowGoals.d.ts.map +1 -0
  128. package/dist/planning/goals/TaskWorkflowGoals.js +208 -0
  129. package/dist/planning/goals/TaskWorkflowGoals.js.map +1 -0
  130. package/dist/planning/goals/index.d.ts +10 -0
  131. package/dist/planning/goals/index.d.ts.map +1 -0
  132. package/dist/planning/goals/index.js +19 -0
  133. package/dist/planning/goals/index.js.map +1 -0
  134. package/dist/planning/index.d.ts +36 -0
  135. package/dist/planning/index.d.ts.map +1 -0
  136. package/dist/planning/index.js +187 -0
  137. package/dist/planning/index.js.map +1 -0
  138. package/dist/planning/integration/GOAPQualityGateIntegration.d.ts +235 -0
  139. package/dist/planning/integration/GOAPQualityGateIntegration.d.ts.map +1 -0
  140. package/dist/planning/integration/GOAPQualityGateIntegration.js +589 -0
  141. package/dist/planning/integration/GOAPQualityGateIntegration.js.map +1 -0
  142. package/dist/planning/integration/GOAPTaskOrchestration.d.ts +165 -0
  143. package/dist/planning/integration/GOAPTaskOrchestration.d.ts.map +1 -0
  144. package/dist/planning/integration/GOAPTaskOrchestration.js +490 -0
  145. package/dist/planning/integration/GOAPTaskOrchestration.js.map +1 -0
  146. package/dist/planning/integration/index.d.ts +14 -0
  147. package/dist/planning/integration/index.d.ts.map +1 -0
  148. package/dist/planning/integration/index.js +23 -0
  149. package/dist/planning/integration/index.js.map +1 -0
  150. package/dist/planning/types.d.ts +266 -0
  151. package/dist/planning/types.d.ts.map +1 -0
  152. package/dist/planning/types.js +63 -0
  153. package/dist/planning/types.js.map +1 -0
  154. package/dist/utils/Database.d.ts.map +1 -1
  155. package/dist/utils/Database.js +81 -2
  156. package/dist/utils/Database.js.map +1 -1
  157. package/package.json +6 -3
@@ -0,0 +1,70 @@
1
+ /**
2
+ * Test Strategy GOAP Actions
3
+ *
4
+ * Actions for test strategy planning:
5
+ * - Impact analysis
6
+ * - Test prioritization
7
+ * - Coverage optimization
8
+ * - Risk-based test selection
9
+ *
10
+ * @module planning/actions/test-strategy-actions
11
+ * @version 1.0.0
12
+ */
13
+ import { GOAPAction } from '../types';
14
+ /**
15
+ * Analyze change impact action
16
+ */
17
+ export declare const analyzeChangeImpact: GOAPAction;
18
+ /**
19
+ * Prioritize tests by risk action
20
+ */
21
+ export declare const prioritizeTestsByRisk: GOAPAction;
22
+ /**
23
+ * Select minimal test suite action
24
+ */
25
+ export declare const selectMinimalTestSuite: GOAPAction;
26
+ /**
27
+ * Analyze coverage gaps action
28
+ */
29
+ export declare const analyzeCoverageGaps: GOAPAction;
30
+ /**
31
+ * Generate targeted tests action
32
+ */
33
+ export declare const generateTargetedTests: GOAPAction;
34
+ /**
35
+ * Run critical path tests action
36
+ */
37
+ export declare const runCriticalPathTests: GOAPAction;
38
+ /**
39
+ * Detect flaky tests action
40
+ */
41
+ export declare const detectFlakyTests: GOAPAction;
42
+ /**
43
+ * Stabilize flaky tests action
44
+ */
45
+ export declare const stabilizeFlakyTests: GOAPAction;
46
+ /**
47
+ * Generate BDD scenarios action
48
+ */
49
+ export declare const generateBDDScenarios: GOAPAction;
50
+ /**
51
+ * Optimize parallel execution action
52
+ */
53
+ export declare const optimizeParallelExecution: GOAPAction;
54
+ /**
55
+ * All test strategy actions
56
+ */
57
+ export declare const testStrategyActions: GOAPAction[];
58
+ /**
59
+ * Get test strategy action by ID
60
+ */
61
+ export declare function getTestStrategyAction(id: string): GOAPAction | undefined;
62
+ /**
63
+ * Get actions suitable for time-constrained scenarios
64
+ */
65
+ export declare function getQuickTestStrategyActions(): GOAPAction[];
66
+ /**
67
+ * Get actions for coverage improvement
68
+ */
69
+ export declare function getCoverageImprovementActions(): GOAPAction[];
70
+ //# sourceMappingURL=test-strategy-actions.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"test-strategy-actions.d.ts","sourceRoot":"","sources":["../../../src/planning/actions/test-strategy-actions.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AAEH,OAAO,EAAE,UAAU,EAAE,MAAM,UAAU,CAAC;AAEtC;;GAEG;AACH,eAAO,MAAM,mBAAmB,EAAE,UAkBjC,CAAC;AAEF;;GAEG;AACH,eAAO,MAAM,qBAAqB,EAAE,UAkBnC,CAAC;AAEF;;GAEG;AACH,eAAO,MAAM,sBAAsB,EAAE,UAkBpC,CAAC;AAEF;;GAEG;AACH,eAAO,MAAM,mBAAmB,EAAE,UAkBjC,CAAC;AAEF;;GAEG;AACH,eAAO,MAAM,qBAAqB,EAAE,UAqBnC,CAAC;AAEF;;GAEG;AACH,eAAO,MAAM,oBAAoB,EAAE,UAmBlC,CAAC;AAEF;;GAEG;AACH,eAAO,MAAM,gBAAgB,EAAE,UAkB9B,CAAC;AAEF;;GAEG;AACH,eAAO,MAAM,mBAAmB,EAAE,UAmBjC,CAAC;AAEF;;GAEG;AACH,eAAO,MAAM,oBAAoB,EAAE,UAkBlC,CAAC;AAEF;;GAEG;AACH,eAAO,MAAM,yBAAyB,EAAE,UAkBvC,CAAC;AAEF;;GAEG;AACH,eAAO,MAAM,mBAAmB,EAAE,UAAU,EAW3C,CAAC;AAEF;;GAEG;AACH,wBAAgB,qBAAqB,CAAC,EAAE,EAAE,MAAM,GAAG,UAAU,GAAG,SAAS,CAExE;AAED;;GAEG;AACH,wBAAgB,2BAA2B,IAAI,UAAU,EAAE,CAE1D;AAED;;GAEG;AACH,wBAAgB,6BAA6B,IAAI,UAAU,EAAE,CAK5D"}
@@ -0,0 +1,278 @@
1
+ "use strict";
2
+ /**
3
+ * Test Strategy GOAP Actions
4
+ *
5
+ * Actions for test strategy planning:
6
+ * - Impact analysis
7
+ * - Test prioritization
8
+ * - Coverage optimization
9
+ * - Risk-based test selection
10
+ *
11
+ * @module planning/actions/test-strategy-actions
12
+ * @version 1.0.0
13
+ */
14
+ Object.defineProperty(exports, "__esModule", { value: true });
15
+ exports.testStrategyActions = exports.optimizeParallelExecution = exports.generateBDDScenarios = exports.stabilizeFlakyTests = exports.detectFlakyTests = exports.runCriticalPathTests = exports.generateTargetedTests = exports.analyzeCoverageGaps = exports.selectMinimalTestSuite = exports.prioritizeTestsByRisk = exports.analyzeChangeImpact = void 0;
16
+ exports.getTestStrategyAction = getTestStrategyAction;
17
+ exports.getQuickTestStrategyActions = getQuickTestStrategyActions;
18
+ exports.getCoverageImprovementActions = getCoverageImprovementActions;
19
+ /**
20
+ * Analyze change impact action
21
+ */
22
+ exports.analyzeChangeImpact = {
23
+ id: 'ts-analyze-impact',
24
+ name: 'Analyze Change Impact',
25
+ description: 'Determine blast radius and affected test areas',
26
+ agentType: 'qe-regression-risk-analyzer',
27
+ preconditions: {
28
+ 'context.impactedFiles': { exists: true },
29
+ 'resources.timeRemaining': { gte: 30 }
30
+ },
31
+ effects: {
32
+ 'context.impactAnalyzed': { set: true }, // Flag: impact has been analyzed
33
+ 'resources.timeRemaining': { decrease: 60 }
34
+ },
35
+ cost: 0.5,
36
+ durationEstimate: 60000, // 1 minute
37
+ successRate: 0.95,
38
+ executionCount: 0,
39
+ category: 'analysis'
40
+ };
41
+ /**
42
+ * Prioritize tests by risk action
43
+ */
44
+ exports.prioritizeTestsByRisk = {
45
+ id: 'ts-prioritize-risk',
46
+ name: 'Prioritize Tests by Risk',
47
+ description: 'Rank tests based on failure probability and impact',
48
+ agentType: 'qe-regression-risk-analyzer',
49
+ preconditions: {
50
+ 'context.suggestedTests': { exists: true },
51
+ 'resources.timeRemaining': { gte: 20 }
52
+ },
53
+ effects: {
54
+ 'context.testPriority': { set: 'ranked' },
55
+ 'resources.timeRemaining': { decrease: 30 }
56
+ },
57
+ cost: 0.4,
58
+ durationEstimate: 30000,
59
+ successRate: 0.98,
60
+ executionCount: 0,
61
+ category: 'analysis'
62
+ };
63
+ /**
64
+ * Select minimal test suite action
65
+ */
66
+ exports.selectMinimalTestSuite = {
67
+ id: 'ts-select-minimal',
68
+ name: 'Select Minimal Test Suite',
69
+ description: 'Choose smallest test set covering all changed code',
70
+ agentType: 'qe-regression-risk-analyzer',
71
+ preconditions: {
72
+ 'context.suggestedTests': { exists: true },
73
+ 'resources.timeRemaining': { lt: 600 } // Only when time-constrained
74
+ },
75
+ effects: {
76
+ 'context.testPriority': { set: 'ranked' },
77
+ 'resources.timeRemaining': { decrease: 15 }
78
+ },
79
+ cost: 0.3,
80
+ durationEstimate: 15000,
81
+ successRate: 0.92,
82
+ executionCount: 0,
83
+ category: 'analysis'
84
+ };
85
+ /**
86
+ * Analyze coverage gaps action
87
+ */
88
+ exports.analyzeCoverageGaps = {
89
+ id: 'ts-coverage-gaps',
90
+ name: 'Analyze Coverage Gaps',
91
+ description: 'Identify untested code paths and missing coverage',
92
+ agentType: 'qe-coverage-analyzer',
93
+ preconditions: {
94
+ 'coverage.line': { lt: 100 }, // Has room for improvement
95
+ 'resources.timeRemaining': { gte: 60 }
96
+ },
97
+ effects: {
98
+ 'context.coverageGapsAnalyzed': { set: true }, // Flag: coverage gaps analyzed
99
+ 'resources.timeRemaining': { decrease: 90 }
100
+ },
101
+ cost: 0.8,
102
+ durationEstimate: 90000,
103
+ successRate: 0.95,
104
+ executionCount: 0,
105
+ category: 'analysis'
106
+ };
107
+ /**
108
+ * Generate targeted tests action
109
+ */
110
+ exports.generateTargetedTests = {
111
+ id: 'ts-generate-targeted',
112
+ name: 'Generate Targeted Tests',
113
+ description: 'Create tests specifically for uncovered changes',
114
+ agentType: 'qe-test-generator',
115
+ preconditions: {
116
+ 'context.suggestedTests': { exists: true },
117
+ 'coverage.line': { lt: 80 },
118
+ 'resources.timeRemaining': { gte: 300 },
119
+ 'fleet.availableAgents': { contains: 'qe-test-generator' }
120
+ },
121
+ effects: {
122
+ 'coverage.line': { increase: 20 },
123
+ 'coverage.branch': { increase: 15 },
124
+ 'resources.timeRemaining': { decrease: 360 }
125
+ },
126
+ cost: 2.5,
127
+ durationEstimate: 360000, // 6 minutes
128
+ successRate: 0.80,
129
+ executionCount: 0,
130
+ category: 'test'
131
+ };
132
+ /**
133
+ * Run critical path tests action
134
+ */
135
+ exports.runCriticalPathTests = {
136
+ id: 'ts-critical-path',
137
+ name: 'Run Critical Path Tests',
138
+ description: 'Execute tests for high-risk code paths only',
139
+ agentType: 'qe-test-executor',
140
+ preconditions: {
141
+ 'context.testPriority': { eq: 'ranked' },
142
+ 'resources.timeRemaining': { gte: 60 }
143
+ },
144
+ effects: {
145
+ 'quality.criticalPathTested': { set: true },
146
+ 'quality.testsMeasured': { set: true }, // Flag: tests have been measured
147
+ 'resources.timeRemaining': { decrease: 120 }
148
+ },
149
+ cost: 0.8,
150
+ durationEstimate: 120000,
151
+ successRate: 0.93,
152
+ executionCount: 0,
153
+ category: 'test'
154
+ };
155
+ /**
156
+ * Detect flaky tests action
157
+ */
158
+ exports.detectFlakyTests = {
159
+ id: 'ts-detect-flaky',
160
+ name: 'Detect Flaky Tests',
161
+ description: 'Identify and quarantine unreliable tests',
162
+ agentType: 'qe-flaky-test-hunter',
163
+ preconditions: {
164
+ 'context.previousFailures': { gte: 1 }, // Has failure history
165
+ 'resources.timeRemaining': { gte: 120 }
166
+ },
167
+ effects: {
168
+ 'context.previousFailures': { decrease: 1 },
169
+ 'resources.timeRemaining': { decrease: 180 }
170
+ },
171
+ cost: 1.5,
172
+ durationEstimate: 180000,
173
+ successRate: 0.88,
174
+ executionCount: 0,
175
+ category: 'test'
176
+ };
177
+ /**
178
+ * Stabilize flaky tests action
179
+ */
180
+ exports.stabilizeFlakyTests = {
181
+ id: 'ts-stabilize-flaky',
182
+ name: 'Stabilize Flaky Tests',
183
+ description: 'Auto-remediate detected flaky tests',
184
+ agentType: 'qe-flaky-test-hunter',
185
+ preconditions: {
186
+ 'context.previousFailures': { gte: 2 }, // Multiple failures
187
+ 'resources.timeRemaining': { gte: 300 }
188
+ },
189
+ effects: {
190
+ 'context.previousFailures': { set: 0 },
191
+ 'quality.testsPassing': { increase: 5 },
192
+ 'resources.timeRemaining': { decrease: 360 }
193
+ },
194
+ cost: 2.0,
195
+ durationEstimate: 360000,
196
+ successRate: 0.70,
197
+ executionCount: 0,
198
+ category: 'test'
199
+ };
200
+ /**
201
+ * Generate BDD scenarios action
202
+ */
203
+ exports.generateBDDScenarios = {
204
+ id: 'ts-bdd-scenarios',
205
+ name: 'Generate BDD Scenarios',
206
+ description: 'Create behavior-driven test scenarios from requirements',
207
+ agentType: 'qe-requirements-validator',
208
+ preconditions: {
209
+ 'resources.timeRemaining': { gte: 180 },
210
+ 'fleet.availableAgents': { contains: 'qe-requirements-validator' }
211
+ },
212
+ effects: {
213
+ 'context.bddGenerated': { set: true }, // Flag: BDD scenarios generated
214
+ 'resources.timeRemaining': { decrease: 240 }
215
+ },
216
+ cost: 1.8,
217
+ durationEstimate: 240000,
218
+ successRate: 0.85,
219
+ executionCount: 0,
220
+ category: 'test'
221
+ };
222
+ /**
223
+ * Optimize parallel execution action
224
+ */
225
+ exports.optimizeParallelExecution = {
226
+ id: 'ts-optimize-parallel',
227
+ name: 'Optimize Parallel Execution',
228
+ description: 'Rebalance test distribution for parallel runners',
229
+ agentType: 'qe-test-executor',
230
+ preconditions: {
231
+ 'resources.parallelSlots': { gte: 2 }, // Has parallelism available
232
+ 'resources.timeRemaining': { lt: 300 } // Time pressure
233
+ },
234
+ effects: {
235
+ 'resources.parallelSlots': { increase: 2 },
236
+ 'resources.timeRemaining': { decrease: 30 }
237
+ },
238
+ cost: 0.6,
239
+ durationEstimate: 30000,
240
+ successRate: 0.95,
241
+ executionCount: 0,
242
+ category: 'process'
243
+ };
244
+ /**
245
+ * All test strategy actions
246
+ */
247
+ exports.testStrategyActions = [
248
+ exports.analyzeChangeImpact,
249
+ exports.prioritizeTestsByRisk,
250
+ exports.selectMinimalTestSuite,
251
+ exports.analyzeCoverageGaps,
252
+ exports.generateTargetedTests,
253
+ exports.runCriticalPathTests,
254
+ exports.detectFlakyTests,
255
+ exports.stabilizeFlakyTests,
256
+ exports.generateBDDScenarios,
257
+ exports.optimizeParallelExecution
258
+ ];
259
+ /**
260
+ * Get test strategy action by ID
261
+ */
262
+ function getTestStrategyAction(id) {
263
+ return exports.testStrategyActions.find(a => a.id === id);
264
+ }
265
+ /**
266
+ * Get actions suitable for time-constrained scenarios
267
+ */
268
+ function getQuickTestStrategyActions() {
269
+ return exports.testStrategyActions.filter(a => (a.durationEstimate ?? 0) < 120000);
270
+ }
271
+ /**
272
+ * Get actions for coverage improvement
273
+ */
274
+ function getCoverageImprovementActions() {
275
+ return exports.testStrategyActions.filter(a => a.effects['coverage.line']?.increase ||
276
+ a.effects['coverage.branch']?.increase);
277
+ }
278
+ //# sourceMappingURL=test-strategy-actions.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"test-strategy-actions.js","sourceRoot":"","sources":["../../../src/planning/actions/test-strategy-actions.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,223 @@
1
+ /**
2
+ * GOAP Plan Executor
3
+ *
4
+ * Executes remediation plans generated by GOAPQualityGateIntegration:
5
+ * - Spawns agents for each action
6
+ * - Executes actions in sequence with dependency ordering
7
+ * - Records outcomes for learning via PlanLearning integration
8
+ * - Handles failures with automatic replanning
9
+ * - Phase 6: Live agent execution with real world state updates
10
+ *
11
+ * @module planning/execution/PlanExecutor
12
+ * @version 1.2.0 - Phase 6: Live Agent Execution
13
+ */
14
+ import Database from 'better-sqlite3';
15
+ import { GOAPQualityGateIntegration, RemediationPlan, QualityGateContext, QualityGateMetrics, QUALITY_GATE_GOALS } from '../integration/GOAPQualityGateIntegration';
16
+ import { PlanLearning } from '../PlanLearning';
17
+ import { WorldState } from '../types';
18
+ /**
19
+ * Result of executing a single action
20
+ */
21
+ export interface ActionExecutionResult {
22
+ actionId: string;
23
+ actionName: string;
24
+ success: boolean;
25
+ durationMs: number;
26
+ error?: string;
27
+ agentId?: string;
28
+ output?: any;
29
+ }
30
+ /**
31
+ * Result of executing a full plan
32
+ */
33
+ export interface PlanExecutionResult {
34
+ planId: string;
35
+ success: boolean;
36
+ totalDurationMs: number;
37
+ actionsExecuted: number;
38
+ actionsSucceeded: number;
39
+ actionsFailed: number;
40
+ actionResults: ActionExecutionResult[];
41
+ replanned: boolean;
42
+ alternativePlanUsed?: string;
43
+ error?: string;
44
+ }
45
+ /**
46
+ * Configuration for plan execution
47
+ */
48
+ export interface PlanExecutionConfig {
49
+ /** Maximum retries per action (default: 1) */
50
+ maxRetries?: number;
51
+ /** Timeout per action in ms (default: 300000 = 5 min) */
52
+ actionTimeoutMs?: number;
53
+ /** Whether to continue on action failure (default: false - triggers replanning) */
54
+ continueOnFailure?: boolean;
55
+ /** Maximum replan attempts (default: 2) */
56
+ maxReplanAttempts?: number;
57
+ /** Dry run - don't actually execute, just validate (default: false) */
58
+ dryRun?: boolean;
59
+ }
60
+ /**
61
+ * GOAP Plan Executor
62
+ *
63
+ * Bridges plan generation with actual agent execution.
64
+ * Implements the OODA (Observe-Orient-Decide-Act) loop for plan execution.
65
+ * Integrates with PlanLearning for continuous improvement.
66
+ */
67
+ export declare class PlanExecutor {
68
+ private registry;
69
+ private integration;
70
+ private planLearning;
71
+ private db;
72
+ private logger;
73
+ private config;
74
+ private ownsRegistry;
75
+ private currentWorldState;
76
+ constructor(db: Database.Database, integration: GOAPQualityGateIntegration, config?: PlanExecutionConfig);
77
+ /**
78
+ * Get the PlanLearning instance for external access
79
+ */
80
+ getPlanLearning(): PlanLearning;
81
+ /**
82
+ * Update current world state (called by integration or externally)
83
+ */
84
+ updateWorldState(state: Partial<WorldState>): void;
85
+ /**
86
+ * Get current world state
87
+ */
88
+ getWorldState(): WorldState;
89
+ /**
90
+ * Initialize registry only when needed for actual execution
91
+ */
92
+ private ensureRegistry;
93
+ /**
94
+ * Cleanup resources - call this when done with the executor
95
+ */
96
+ cleanup(): Promise<void>;
97
+ /**
98
+ * Execute a remediation plan
99
+ *
100
+ * @param plan - The remediation plan to execute
101
+ * @param context - Quality gate context for replanning
102
+ * @param metrics - Current metrics for replanning
103
+ */
104
+ executePlan(plan: RemediationPlan, context: QualityGateContext, metrics: QualityGateMetrics): Promise<PlanExecutionResult>;
105
+ /**
106
+ * Execute a single remediation action
107
+ */
108
+ private executeAction;
109
+ /**
110
+ * Map GOAP agent type to MCP agent type
111
+ *
112
+ * GOAP actions use 'qe-*' prefixed agent types which need to be
113
+ * mapped to MCP types that AgentRegistry understands.
114
+ */
115
+ private mapAgentType;
116
+ /**
117
+ * Get capabilities for an action
118
+ */
119
+ private getCapabilitiesForAction;
120
+ /**
121
+ * Create a task from a remediation action
122
+ *
123
+ * Maps GOAP action categories to structured task payloads that
124
+ * QE agents can understand and execute properly.
125
+ */
126
+ private createTaskFromAction;
127
+ /**
128
+ * Build category-specific payload for task execution
129
+ *
130
+ * Note: action.effects is string[] describing the state changes
131
+ */
132
+ private buildCategoryPayload;
133
+ /**
134
+ * Extract coverage target from effects array
135
+ */
136
+ private extractCoverageTarget;
137
+ /**
138
+ * Map action category to task type
139
+ */
140
+ private mapCategoryToTaskType;
141
+ /**
142
+ * Infer test type from action ID
143
+ */
144
+ private inferTestType;
145
+ /**
146
+ * Infer security scan type from action ID
147
+ */
148
+ private inferSecurityScanType;
149
+ /**
150
+ * Infer performance test type from action ID
151
+ */
152
+ private inferPerformanceTestType;
153
+ /**
154
+ * Infer fleet operation from action ID
155
+ */
156
+ private inferFleetOperation;
157
+ /**
158
+ * Build requirements for task execution
159
+ */
160
+ private buildRequirements;
161
+ /**
162
+ * Parse agent output and update world state with real measurements
163
+ * This is called in live execution mode (not dry-run)
164
+ */
165
+ private updateWorldStateFromAgentOutput;
166
+ /**
167
+ * Parse test execution output
168
+ */
169
+ private parseTestOutput;
170
+ /**
171
+ * Parse coverage analysis output
172
+ */
173
+ private parseCoverageOutput;
174
+ /**
175
+ * Parse security scan output
176
+ */
177
+ private parseSecurityOutput;
178
+ /**
179
+ * Parse performance test output
180
+ */
181
+ private parsePerformanceOutput;
182
+ /**
183
+ * Parse code analysis output
184
+ */
185
+ private parseAnalysisOutput;
186
+ /**
187
+ * Initialize world state from quality gate metrics
188
+ */
189
+ private initializeWorldStateFromMetrics;
190
+ /**
191
+ * Simulate action effects on world state
192
+ */
193
+ private simulateActionEffects;
194
+ /**
195
+ * Convert RemediationAction to GOAPAction for learning
196
+ */
197
+ private remediationActionToGOAPAction;
198
+ /**
199
+ * Convert RemediationPlan to GOAPPlan for learning
200
+ */
201
+ private remediationPlanToGOAPPlan;
202
+ /**
203
+ * Update plan status in database
204
+ */
205
+ private updatePlanStatus;
206
+ }
207
+ /**
208
+ * Factory function to create a PlanExecutor
209
+ */
210
+ export declare function createPlanExecutor(dbPath: string, config?: PlanExecutionConfig): {
211
+ executor: PlanExecutor;
212
+ integration: GOAPQualityGateIntegration;
213
+ };
214
+ /**
215
+ * Execute a quality gate remediation with GOAP planning
216
+ *
217
+ * High-level function that:
218
+ * 1. Generates a remediation plan
219
+ * 2. Executes the plan
220
+ * 3. Records outcomes for learning
221
+ */
222
+ export declare function executeQualityGateRemediation(metrics: QualityGateMetrics, context: QualityGateContext, dbPath: string, targetGoal?: keyof typeof QUALITY_GATE_GOALS, config?: PlanExecutionConfig): Promise<PlanExecutionResult | null>;
223
+ //# sourceMappingURL=PlanExecutor.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"PlanExecutor.d.ts","sourceRoot":"","sources":["../../../src/planning/execution/PlanExecutor.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;GAYG;AAEH,OAAO,QAAQ,MAAM,gBAAgB,CAAC;AACtC,OAAO,EACL,0BAA0B,EAC1B,eAAe,EAEf,kBAAkB,EAClB,kBAAkB,EAClB,kBAAkB,EACnB,MAAM,2CAA2C,CAAC;AAEnD,OAAO,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAC;AAC/C,OAAO,EAAE,UAAU,EAA6D,MAAM,UAAU,CAAC;AAWjG;;GAEG;AACH,MAAM,WAAW,qBAAqB;IACpC,QAAQ,EAAE,MAAM,CAAC;IACjB,UAAU,EAAE,MAAM,CAAC;IACnB,OAAO,EAAE,OAAO,CAAC;IACjB,UAAU,EAAE,MAAM,CAAC;IACnB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,MAAM,CAAC,EAAE,GAAG,CAAC;CACd;AAED;;GAEG;AACH,MAAM,WAAW,mBAAmB;IAClC,MAAM,EAAE,MAAM,CAAC;IACf,OAAO,EAAE,OAAO,CAAC;IACjB,eAAe,EAAE,MAAM,CAAC;IACxB,eAAe,EAAE,MAAM,CAAC;IACxB,gBAAgB,EAAE,MAAM,CAAC;IACzB,aAAa,EAAE,MAAM,CAAC;IACtB,aAAa,EAAE,qBAAqB,EAAE,CAAC;IACvC,SAAS,EAAE,OAAO,CAAC;IACnB,mBAAmB,CAAC,EAAE,MAAM,CAAC;IAC7B,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AAED;;GAEG;AACH,MAAM,WAAW,mBAAmB;IAClC,8CAA8C;IAC9C,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,yDAAyD;IACzD,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,mFAAmF;IACnF,iBAAiB,CAAC,EAAE,OAAO,CAAC;IAC5B,2CAA2C;IAC3C,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B,uEAAuE;IACvE,MAAM,CAAC,EAAE,OAAO,CAAC;CAClB;AAUD;;;;;;GAMG;AACH,qBAAa,YAAY;IACvB,OAAO,CAAC,QAAQ,CAAoB;IACpC,OAAO,CAAC,WAAW,CAA6B;IAChD,OAAO,CAAC,YAAY,CAAe;IACnC,OAAO,CAAC,EAAE,CAAoB;IAC9B,OAAO,CAAC,MAAM,CAAS;IACvB,OAAO,CAAC,MAAM,CAAgC;IAC9C,OAAO,CAAC,YAAY,CAAS;IAC7B,OAAO,CAAC,iBAAiB,CAAa;gBAGpC,EAAE,EAAE,QAAQ,CAAC,QAAQ,EACrB,WAAW,EAAE,0BAA0B,EACvC,MAAM,GAAE,mBAAwB;IAWlC;;OAEG;IACH,eAAe,IAAI,YAAY;IAI/B;;OAEG;IACH,gBAAgB,CAAC,KAAK,EAAE,OAAO,CAAC,UAAU,CAAC,GAAG,IAAI;IAYlD;;OAEG;IACH,aAAa,IAAI,UAAU;IAI3B;;OAEG;YACW,cAAc;IAS5B;;OAEG;IACG,OAAO,IAAI,OAAO,CAAC,IAAI,CAAC;IAM9B;;;;;;OAMG;IACG,WAAW,CACf,IAAI,EAAE,eAAe,EACrB,OAAO,EAAE,kBAAkB,EAC3B,OAAO,EAAE,kBAAkB,GAC1B,OAAO,CAAC,mBAAmB,CAAC;IA2N/B;;OAEG;YACW,aAAa;IA6E3B;;;;;OAKG;IACH,OAAO,CAAC,YAAY;IAiEpB;;OAEG;IACH,OAAO,CAAC,wBAAwB;IAchC;;;;;OAKG;IACH,OAAO,CAAC,oBAAoB;IAgC5B;;;;OAIG;IACH,OAAO,CAAC,oBAAoB;IAuE5B;;OAEG;IACH,OAAO,CAAC,qBAAqB;IAW7B;;OAEG;IACH,OAAO,CAAC,qBAAqB;IAa7B;;OAEG;IACH,OAAO,CAAC,aAAa;IASrB;;OAEG;IACH,OAAO,CAAC,qBAAqB;IAQ7B;;OAEG;IACH,OAAO,CAAC,wBAAwB;IAShC;;OAEG;IACH,OAAO,CAAC,mBAAmB;IAQ3B;;OAEG;IACH,OAAO,CAAC,iBAAiB;IAYzB;;;OAGG;IACH,OAAO,CAAC,+BAA+B;IAkCvC;;OAEG;IACH,OAAO,CAAC,eAAe;IAyBvB;;OAEG;IACH,OAAO,CAAC,mBAAmB;IAe3B;;OAEG;IACH,OAAO,CAAC,mBAAmB;IAqB3B;;OAEG;IACH,OAAO,CAAC,sBAAsB;IAkB9B;;OAEG;IACH,OAAO,CAAC,mBAAmB;IAc3B;;OAEG;IACH,OAAO,CAAC,+BAA+B;IAyEvC;;OAEG;IACH,OAAO,CAAC,qBAAqB;IA+C7B;;OAEG;IACH,OAAO,CAAC,6BAA6B;IAerC;;OAEG;IACH,OAAO,CAAC,yBAAyB;IAiBjC;;OAEG;YACW,gBAAgB;CAsB/B;AAED;;GAEG;AACH,wBAAgB,kBAAkB,CAChC,MAAM,EAAE,MAAM,EACd,MAAM,GAAE,mBAAwB,GAC/B;IAAE,QAAQ,EAAE,YAAY,CAAC;IAAC,WAAW,EAAE,0BAA0B,CAAA;CAAE,CASrE;AAED;;;;;;;GAOG;AACH,wBAAsB,6BAA6B,CACjD,OAAO,EAAE,kBAAkB,EAC3B,OAAO,EAAE,kBAAkB,EAC3B,MAAM,EAAE,MAAM,EACd,UAAU,CAAC,EAAE,MAAM,OAAO,kBAAkB,EAC5C,MAAM,GAAE,mBAAwB,GAC/B,OAAO,CAAC,mBAAmB,GAAG,IAAI,CAAC,CAmBrC"}