agentic-qe 1.9.3 → 2.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (271) hide show
  1. package/.claude/agents/qe-api-contract-validator.md +95 -1336
  2. package/.claude/agents/qe-chaos-engineer.md +152 -1211
  3. package/.claude/agents/qe-code-complexity.md +144 -707
  4. package/.claude/agents/qe-coverage-analyzer.md +147 -743
  5. package/.claude/agents/qe-deployment-readiness.md +143 -1496
  6. package/.claude/agents/qe-flaky-test-hunter.md +132 -1529
  7. package/.claude/agents/qe-fleet-commander.md +12 -12
  8. package/.claude/agents/qe-performance-tester.md +150 -886
  9. package/.claude/agents/qe-production-intelligence.md +155 -1396
  10. package/.claude/agents/qe-quality-analyzer.md +6 -6
  11. package/.claude/agents/qe-quality-gate.md +151 -648
  12. package/.claude/agents/qe-regression-risk-analyzer.md +132 -1150
  13. package/.claude/agents/qe-requirements-validator.md +149 -932
  14. package/.claude/agents/qe-security-scanner.md +157 -797
  15. package/.claude/agents/qe-test-data-architect.md +96 -1365
  16. package/.claude/agents/qe-test-executor.md +8 -8
  17. package/.claude/agents/qe-test-generator.md +145 -1540
  18. package/.claude/agents/qe-visual-tester.md +153 -1257
  19. package/.claude/agents/qx-partner.md +235 -0
  20. package/.claude/agents/subagents/qe-code-reviewer.md +40 -136
  21. package/.claude/agents/subagents/qe-coverage-gap-analyzer.md +40 -480
  22. package/.claude/agents/subagents/qe-data-generator.md +41 -125
  23. package/.claude/agents/subagents/qe-flaky-investigator.md +55 -411
  24. package/.claude/agents/subagents/qe-integration-tester.md +53 -141
  25. package/.claude/agents/subagents/qe-performance-validator.md +54 -130
  26. package/.claude/agents/subagents/qe-security-auditor.md +56 -114
  27. package/.claude/agents/subagents/qe-test-data-architect-sub.md +57 -548
  28. package/.claude/agents/subagents/qe-test-implementer.md +58 -551
  29. package/.claude/agents/subagents/qe-test-refactorer.md +65 -722
  30. package/.claude/agents/subagents/qe-test-writer.md +63 -726
  31. package/.claude/skills/skills-manifest.json +632 -0
  32. package/.claude/skills/testability-scoring/README.md +71 -0
  33. package/.claude/skills/testability-scoring/SKILL.md +611 -0
  34. package/.claude/skills/testability-scoring/resources/templates/config.template.js +84 -0
  35. package/.claude/skills/testability-scoring/resources/templates/testability-scoring.spec.template.js +532 -0
  36. package/.claude/skills/testability-scoring/scripts/generate-html-report.js +1007 -0
  37. package/.claude/skills/testability-scoring/scripts/run-assessment.sh +70 -0
  38. package/CHANGELOG.md +116 -0
  39. package/README.md +59 -7
  40. package/config/.env.otel.example +25 -0
  41. package/config/OTEL-QUICK-REFERENCE.md +137 -0
  42. package/config/README-OTEL.md +222 -0
  43. package/config/alerting-rules.yml +518 -0
  44. package/config/docker-compose.otel.yml +187 -0
  45. package/config/grafana/dashboards/agentic-qe-overview.json +286 -0
  46. package/config/grafana/provisioning/dashboards/dashboards.yml +19 -0
  47. package/config/grafana/provisioning/datasources/datasources.yml +53 -0
  48. package/config/otel-collector-config.yaml.example +145 -0
  49. package/config/prometheus.yml.example +106 -0
  50. package/dist/agents/QXPartnerAgent.d.ts +139 -0
  51. package/dist/agents/QXPartnerAgent.d.ts.map +1 -0
  52. package/dist/agents/QXPartnerAgent.js +769 -0
  53. package/dist/agents/QXPartnerAgent.js.map +1 -0
  54. package/dist/agents/index.d.ts +1 -0
  55. package/dist/agents/index.d.ts.map +1 -1
  56. package/dist/agents/index.js +82 -2
  57. package/dist/agents/index.js.map +1 -1
  58. package/dist/alerting/AlertManager.d.ts +120 -0
  59. package/dist/alerting/AlertManager.d.ts.map +1 -0
  60. package/dist/alerting/AlertManager.js +345 -0
  61. package/dist/alerting/AlertManager.js.map +1 -0
  62. package/dist/alerting/FeedbackRouter.d.ts +98 -0
  63. package/dist/alerting/FeedbackRouter.d.ts.map +1 -0
  64. package/dist/alerting/FeedbackRouter.js +331 -0
  65. package/dist/alerting/FeedbackRouter.js.map +1 -0
  66. package/dist/alerting/StrategyApplicator.d.ts +120 -0
  67. package/dist/alerting/StrategyApplicator.d.ts.map +1 -0
  68. package/dist/alerting/StrategyApplicator.js +299 -0
  69. package/dist/alerting/StrategyApplicator.js.map +1 -0
  70. package/dist/alerting/index.d.ts +68 -0
  71. package/dist/alerting/index.d.ts.map +1 -0
  72. package/dist/alerting/index.js +112 -0
  73. package/dist/alerting/index.js.map +1 -0
  74. package/dist/alerting/types.d.ts +118 -0
  75. package/dist/alerting/types.d.ts.map +1 -0
  76. package/dist/alerting/types.js +11 -0
  77. package/dist/alerting/types.js.map +1 -0
  78. package/dist/cli/commands/debug/agent.d.ts.map +1 -1
  79. package/dist/cli/commands/debug/agent.js +19 -6
  80. package/dist/cli/commands/debug/agent.js.map +1 -1
  81. package/dist/cli/commands/debug/health-check.js +20 -7
  82. package/dist/cli/commands/debug/health-check.js.map +1 -1
  83. package/dist/cli/commands/init-claude-md-template.d.ts +1 -0
  84. package/dist/cli/commands/init-claude-md-template.d.ts.map +1 -1
  85. package/dist/cli/commands/init-claude-md-template.js +4 -3
  86. package/dist/cli/commands/init-claude-md-template.js.map +1 -1
  87. package/dist/cli/commands/workflow/cancel.d.ts.map +1 -1
  88. package/dist/cli/commands/workflow/cancel.js +4 -3
  89. package/dist/cli/commands/workflow/cancel.js.map +1 -1
  90. package/dist/cli/commands/workflow/list.d.ts.map +1 -1
  91. package/dist/cli/commands/workflow/list.js +4 -3
  92. package/dist/cli/commands/workflow/list.js.map +1 -1
  93. package/dist/cli/commands/workflow/pause.d.ts.map +1 -1
  94. package/dist/cli/commands/workflow/pause.js +4 -3
  95. package/dist/cli/commands/workflow/pause.js.map +1 -1
  96. package/dist/cli/init/claude-config.d.ts.map +1 -1
  97. package/dist/cli/init/claude-config.js +13 -13
  98. package/dist/cli/init/claude-config.js.map +1 -1
  99. package/dist/cli/init/claude-md.d.ts.map +1 -1
  100. package/dist/cli/init/claude-md.js +44 -2
  101. package/dist/cli/init/claude-md.js.map +1 -1
  102. package/dist/cli/init/database-init.js +1 -1
  103. package/dist/cli/init/index.d.ts.map +1 -1
  104. package/dist/cli/init/index.js +13 -6
  105. package/dist/cli/init/index.js.map +1 -1
  106. package/dist/cli/init/skills.d.ts.map +1 -1
  107. package/dist/cli/init/skills.js +2 -1
  108. package/dist/cli/init/skills.js.map +1 -1
  109. package/dist/core/memory/AgentDBIntegration.d.ts +24 -6
  110. package/dist/core/memory/AgentDBIntegration.d.ts.map +1 -1
  111. package/dist/core/memory/AgentDBIntegration.js +66 -10
  112. package/dist/core/memory/AgentDBIntegration.js.map +1 -1
  113. package/dist/core/memory/IPatternStore.d.ts +209 -0
  114. package/dist/core/memory/IPatternStore.d.ts.map +1 -0
  115. package/dist/core/memory/IPatternStore.js +15 -0
  116. package/dist/core/memory/IPatternStore.js.map +1 -0
  117. package/dist/core/memory/MigrationTools.d.ts +192 -0
  118. package/dist/core/memory/MigrationTools.d.ts.map +1 -0
  119. package/dist/core/memory/MigrationTools.js +615 -0
  120. package/dist/core/memory/MigrationTools.js.map +1 -0
  121. package/dist/core/memory/NeuralEnhancement.d.ts +154 -0
  122. package/dist/core/memory/NeuralEnhancement.d.ts.map +1 -0
  123. package/dist/core/memory/NeuralEnhancement.js +598 -0
  124. package/dist/core/memory/NeuralEnhancement.js.map +1 -0
  125. package/dist/core/memory/PatternStoreFactory.d.ts +143 -0
  126. package/dist/core/memory/PatternStoreFactory.d.ts.map +1 -0
  127. package/dist/core/memory/PatternStoreFactory.js +370 -0
  128. package/dist/core/memory/PatternStoreFactory.js.map +1 -0
  129. package/dist/core/memory/RealAgentDBAdapter.d.ts +1 -0
  130. package/dist/core/memory/RealAgentDBAdapter.d.ts.map +1 -1
  131. package/dist/core/memory/RealAgentDBAdapter.js +28 -20
  132. package/dist/core/memory/RealAgentDBAdapter.js.map +1 -1
  133. package/dist/core/memory/RuVectorPatternStore.d.ts +198 -0
  134. package/dist/core/memory/RuVectorPatternStore.d.ts.map +1 -0
  135. package/dist/core/memory/RuVectorPatternStore.js +605 -0
  136. package/dist/core/memory/RuVectorPatternStore.js.map +1 -0
  137. package/dist/core/memory/SelfHealingMonitor.d.ts +186 -0
  138. package/dist/core/memory/SelfHealingMonitor.d.ts.map +1 -0
  139. package/dist/core/memory/SelfHealingMonitor.js +451 -0
  140. package/dist/core/memory/SelfHealingMonitor.js.map +1 -0
  141. package/dist/core/memory/SwarmMemoryManager.d.ts +62 -0
  142. package/dist/core/memory/SwarmMemoryManager.d.ts.map +1 -1
  143. package/dist/core/memory/SwarmMemoryManager.js +97 -0
  144. package/dist/core/memory/SwarmMemoryManager.js.map +1 -1
  145. package/dist/core/memory/UnifiedMemoryCoordinator.d.ts +341 -0
  146. package/dist/core/memory/UnifiedMemoryCoordinator.d.ts.map +1 -0
  147. package/dist/core/memory/UnifiedMemoryCoordinator.js +986 -0
  148. package/dist/core/memory/UnifiedMemoryCoordinator.js.map +1 -0
  149. package/dist/core/memory/index.d.ts +16 -0
  150. package/dist/core/memory/index.d.ts.map +1 -1
  151. package/dist/core/memory/index.js +58 -1
  152. package/dist/core/memory/index.js.map +1 -1
  153. package/dist/core/optimization/SwarmOptimizer.d.ts +185 -0
  154. package/dist/core/optimization/SwarmOptimizer.d.ts.map +1 -0
  155. package/dist/core/optimization/SwarmOptimizer.js +631 -0
  156. package/dist/core/optimization/SwarmOptimizer.js.map +1 -0
  157. package/dist/core/optimization/index.d.ts +9 -0
  158. package/dist/core/optimization/index.d.ts.map +1 -0
  159. package/dist/core/optimization/index.js +25 -0
  160. package/dist/core/optimization/index.js.map +1 -0
  161. package/dist/core/optimization/types.d.ts +53 -0
  162. package/dist/core/optimization/types.d.ts.map +1 -0
  163. package/dist/core/optimization/types.js +6 -0
  164. package/dist/core/optimization/types.js.map +1 -0
  165. package/dist/core/orchestration/PriorityQueue.d.ts +54 -0
  166. package/dist/core/orchestration/PriorityQueue.d.ts.map +1 -0
  167. package/dist/core/orchestration/PriorityQueue.js +122 -0
  168. package/dist/core/orchestration/PriorityQueue.js.map +1 -0
  169. package/dist/core/orchestration/WorkflowOrchestrator.d.ts +176 -0
  170. package/dist/core/orchestration/WorkflowOrchestrator.d.ts.map +1 -0
  171. package/dist/core/orchestration/WorkflowOrchestrator.js +813 -0
  172. package/dist/core/orchestration/WorkflowOrchestrator.js.map +1 -0
  173. package/dist/core/orchestration/index.d.ts +7 -0
  174. package/dist/core/orchestration/index.d.ts.map +1 -0
  175. package/dist/core/orchestration/index.js +11 -0
  176. package/dist/core/orchestration/index.js.map +1 -0
  177. package/dist/core/orchestration/types.d.ts +96 -0
  178. package/dist/core/orchestration/types.d.ts.map +1 -0
  179. package/dist/core/orchestration/types.js +6 -0
  180. package/dist/core/orchestration/types.js.map +1 -0
  181. package/dist/core/skills/DynamicSkillLoader.d.ts +96 -0
  182. package/dist/core/skills/DynamicSkillLoader.d.ts.map +1 -0
  183. package/dist/core/skills/DynamicSkillLoader.js +353 -0
  184. package/dist/core/skills/DynamicSkillLoader.js.map +1 -0
  185. package/dist/core/skills/types.d.ts +118 -0
  186. package/dist/core/skills/types.d.ts.map +1 -0
  187. package/dist/core/skills/types.js +7 -0
  188. package/dist/core/skills/types.js.map +1 -0
  189. package/dist/core/transport/QUICTransport.d.ts +320 -0
  190. package/dist/core/transport/QUICTransport.d.ts.map +1 -0
  191. package/dist/core/transport/QUICTransport.js +711 -0
  192. package/dist/core/transport/QUICTransport.js.map +1 -0
  193. package/dist/core/transport/index.d.ts +40 -0
  194. package/dist/core/transport/index.d.ts.map +1 -0
  195. package/dist/core/transport/index.js +46 -0
  196. package/dist/core/transport/index.js.map +1 -0
  197. package/dist/core/transport/quic-loader.d.ts +123 -0
  198. package/dist/core/transport/quic-loader.d.ts.map +1 -0
  199. package/dist/core/transport/quic-loader.js +293 -0
  200. package/dist/core/transport/quic-loader.js.map +1 -0
  201. package/dist/core/transport/quic.d.ts +154 -0
  202. package/dist/core/transport/quic.d.ts.map +1 -0
  203. package/dist/core/transport/quic.js +214 -0
  204. package/dist/core/transport/quic.js.map +1 -0
  205. package/dist/mcp/services/AgentRegistry.d.ts.map +1 -1
  206. package/dist/mcp/services/AgentRegistry.js +4 -1
  207. package/dist/mcp/services/AgentRegistry.js.map +1 -1
  208. package/dist/reasoning/RuVectorReasoningAdapter.d.ts +232 -0
  209. package/dist/reasoning/RuVectorReasoningAdapter.d.ts.map +1 -0
  210. package/dist/reasoning/RuVectorReasoningAdapter.js +585 -0
  211. package/dist/reasoning/RuVectorReasoningAdapter.js.map +1 -0
  212. package/dist/reasoning/index.d.ts +2 -0
  213. package/dist/reasoning/index.d.ts.map +1 -1
  214. package/dist/reasoning/index.js +6 -1
  215. package/dist/reasoning/index.js.map +1 -1
  216. package/dist/reporting/ResultAggregator.d.ts +107 -0
  217. package/dist/reporting/ResultAggregator.d.ts.map +1 -0
  218. package/dist/reporting/ResultAggregator.js +435 -0
  219. package/dist/reporting/ResultAggregator.js.map +1 -0
  220. package/dist/reporting/index.d.ts +48 -0
  221. package/dist/reporting/index.d.ts.map +1 -0
  222. package/dist/reporting/index.js +154 -0
  223. package/dist/reporting/index.js.map +1 -0
  224. package/dist/reporting/reporters/ControlLoopReporter.d.ts +128 -0
  225. package/dist/reporting/reporters/ControlLoopReporter.d.ts.map +1 -0
  226. package/dist/reporting/reporters/ControlLoopReporter.js +417 -0
  227. package/dist/reporting/reporters/ControlLoopReporter.js.map +1 -0
  228. package/dist/reporting/reporters/HumanReadableReporter.d.ts +140 -0
  229. package/dist/reporting/reporters/HumanReadableReporter.d.ts.map +1 -0
  230. package/dist/reporting/reporters/HumanReadableReporter.js +524 -0
  231. package/dist/reporting/reporters/HumanReadableReporter.js.map +1 -0
  232. package/dist/reporting/reporters/JSONReporter.d.ts +193 -0
  233. package/dist/reporting/reporters/JSONReporter.d.ts.map +1 -0
  234. package/dist/reporting/reporters/JSONReporter.js +324 -0
  235. package/dist/reporting/reporters/JSONReporter.js.map +1 -0
  236. package/dist/reporting/reporters/index.d.ts +14 -0
  237. package/dist/reporting/reporters/index.d.ts.map +1 -0
  238. package/dist/reporting/reporters/index.js +19 -0
  239. package/dist/reporting/reporters/index.js.map +1 -0
  240. package/dist/reporting/types.d.ts +427 -0
  241. package/dist/reporting/types.d.ts.map +1 -0
  242. package/dist/reporting/types.js +12 -0
  243. package/dist/reporting/types.js.map +1 -0
  244. package/dist/types/index.d.ts +2 -1
  245. package/dist/types/index.d.ts.map +1 -1
  246. package/dist/types/index.js +2 -0
  247. package/dist/types/index.js.map +1 -1
  248. package/dist/types/qx.d.ts +397 -0
  249. package/dist/types/qx.d.ts.map +1 -0
  250. package/dist/types/qx.js +71 -0
  251. package/dist/types/qx.js.map +1 -0
  252. package/dist/visualization/api/RestEndpoints.js +1 -1
  253. package/dist/visualization/api/RestEndpoints.js.map +1 -1
  254. package/dist/visualization/api/WebSocketServer.d.ts +44 -0
  255. package/dist/visualization/api/WebSocketServer.d.ts.map +1 -1
  256. package/dist/visualization/api/WebSocketServer.js +144 -23
  257. package/dist/visualization/api/WebSocketServer.js.map +1 -1
  258. package/dist/visualization/core/DataTransformer.d.ts +10 -0
  259. package/dist/visualization/core/DataTransformer.d.ts.map +1 -1
  260. package/dist/visualization/core/DataTransformer.js +60 -5
  261. package/dist/visualization/core/DataTransformer.js.map +1 -1
  262. package/dist/visualization/emit-event.d.ts +75 -0
  263. package/dist/visualization/emit-event.d.ts.map +1 -0
  264. package/dist/visualization/emit-event.js +213 -0
  265. package/dist/visualization/emit-event.js.map +1 -0
  266. package/dist/visualization/index.d.ts +1 -0
  267. package/dist/visualization/index.d.ts.map +1 -1
  268. package/dist/visualization/index.js +7 -1
  269. package/dist/visualization/index.js.map +1 -1
  270. package/docs/reference/skills.md +63 -1
  271. package/package.json +12 -4
@@ -0,0 +1,9 @@
1
+ /**
2
+ * Optimization Module
3
+ *
4
+ * Provides swarm optimization, topology recommendation,
5
+ * agent allocation, and bottleneck detection.
6
+ */
7
+ export * from './types';
8
+ export * from './SwarmOptimizer';
9
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/core/optimization/index.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,cAAc,SAAS,CAAC;AACxB,cAAc,kBAAkB,CAAC"}
@@ -0,0 +1,25 @@
1
+ "use strict";
2
+ /**
3
+ * Optimization Module
4
+ *
5
+ * Provides swarm optimization, topology recommendation,
6
+ * agent allocation, and bottleneck detection.
7
+ */
8
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
9
+ if (k2 === undefined) k2 = k;
10
+ var desc = Object.getOwnPropertyDescriptor(m, k);
11
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
12
+ desc = { enumerable: true, get: function() { return m[k]; } };
13
+ }
14
+ Object.defineProperty(o, k2, desc);
15
+ }) : (function(o, m, k, k2) {
16
+ if (k2 === undefined) k2 = k;
17
+ o[k2] = m[k];
18
+ }));
19
+ var __exportStar = (this && this.__exportStar) || function(m, exports) {
20
+ for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
21
+ };
22
+ Object.defineProperty(exports, "__esModule", { value: true });
23
+ __exportStar(require("./types"), exports);
24
+ __exportStar(require("./SwarmOptimizer"), exports);
25
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/core/optimization/index.ts"],"names":[],"mappings":";AAAA;;;;;GAKG;;;;;;;;;;;;;;;;AAEH,0CAAwB;AACxB,mDAAiC"}
@@ -0,0 +1,53 @@
1
+ /**
2
+ * Types for SwarmOptimizer and related components
3
+ */
4
+ export interface OptimizationConfig {
5
+ targetSpeedup: number;
6
+ maxAgents: number;
7
+ enableAutoTuning: boolean;
8
+ enableBottleneckDetection?: boolean;
9
+ enableAdaptiveScaling?: boolean;
10
+ }
11
+ export interface TopologyRecommendation {
12
+ topology: 'hierarchical' | 'mesh' | 'ring' | 'star';
13
+ reasoning: string;
14
+ expectedSpeedup: number;
15
+ agentAllocation: Map<string, number>;
16
+ confidence: number;
17
+ }
18
+ export interface WorkloadProfile {
19
+ taskCount: number;
20
+ taskTypes: Map<string, number>;
21
+ averageComplexity: number;
22
+ parallelizability: number;
23
+ resourceIntensity: number;
24
+ interdependencies: number;
25
+ }
26
+ export interface AgentAllocation {
27
+ allocations: Map<string, string[]>;
28
+ reasoning: string;
29
+ loadBalance: number;
30
+ expectedDuration: number;
31
+ }
32
+ export interface PerformanceMetrics {
33
+ taskThroughput: number;
34
+ averageLatency: number;
35
+ resourceUtilization: number;
36
+ bottlenecks: Bottleneck[];
37
+ timestamp: Date;
38
+ }
39
+ export interface Bottleneck {
40
+ type: 'agent' | 'memory' | 'coordination' | 'io';
41
+ location: string;
42
+ severity: number;
43
+ impact: string;
44
+ recommendation: string;
45
+ }
46
+ export interface OptimizationResult {
47
+ success: boolean;
48
+ improvements: Map<string, number>;
49
+ topology?: TopologyRecommendation;
50
+ allocation?: AgentAllocation;
51
+ timestamp: Date;
52
+ }
53
+ //# sourceMappingURL=types.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/core/optimization/types.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,MAAM,WAAW,kBAAkB;IACjC,aAAa,EAAE,MAAM,CAAC;IACtB,SAAS,EAAE,MAAM,CAAC;IAClB,gBAAgB,EAAE,OAAO,CAAC;IAC1B,yBAAyB,CAAC,EAAE,OAAO,CAAC;IACpC,qBAAqB,CAAC,EAAE,OAAO,CAAC;CACjC;AAED,MAAM,WAAW,sBAAsB;IACrC,QAAQ,EAAE,cAAc,GAAG,MAAM,GAAG,MAAM,GAAG,MAAM,CAAC;IACpD,SAAS,EAAE,MAAM,CAAC;IAClB,eAAe,EAAE,MAAM,CAAC;IACxB,eAAe,EAAE,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IACrC,UAAU,EAAE,MAAM,CAAC;CACpB;AAED,MAAM,WAAW,eAAe;IAC9B,SAAS,EAAE,MAAM,CAAC;IAClB,SAAS,EAAE,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAC/B,iBAAiB,EAAE,MAAM,CAAC;IAC1B,iBAAiB,EAAE,MAAM,CAAC;IAC1B,iBAAiB,EAAE,MAAM,CAAC;IAC1B,iBAAiB,EAAE,MAAM,CAAC;CAC3B;AAED,MAAM,WAAW,eAAe;IAC9B,WAAW,EAAE,GAAG,CAAC,MAAM,EAAE,MAAM,EAAE,CAAC,CAAC;IACnC,SAAS,EAAE,MAAM,CAAC;IAClB,WAAW,EAAE,MAAM,CAAC;IACpB,gBAAgB,EAAE,MAAM,CAAC;CAC1B;AAED,MAAM,WAAW,kBAAkB;IACjC,cAAc,EAAE,MAAM,CAAC;IACvB,cAAc,EAAE,MAAM,CAAC;IACvB,mBAAmB,EAAE,MAAM,CAAC;IAC5B,WAAW,EAAE,UAAU,EAAE,CAAC;IAC1B,SAAS,EAAE,IAAI,CAAC;CACjB;AAED,MAAM,WAAW,UAAU;IACzB,IAAI,EAAE,OAAO,GAAG,QAAQ,GAAG,cAAc,GAAG,IAAI,CAAC;IACjD,QAAQ,EAAE,MAAM,CAAC;IACjB,QAAQ,EAAE,MAAM,CAAC;IACjB,MAAM,EAAE,MAAM,CAAC;IACf,cAAc,EAAE,MAAM,CAAC;CACxB;AAED,MAAM,WAAW,kBAAkB;IACjC,OAAO,EAAE,OAAO,CAAC;IACjB,YAAY,EAAE,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAClC,QAAQ,CAAC,EAAE,sBAAsB,CAAC;IAClC,UAAU,CAAC,EAAE,eAAe,CAAC;IAC7B,SAAS,EAAE,IAAI,CAAC;CACjB"}
@@ -0,0 +1,6 @@
1
+ "use strict";
2
+ /**
3
+ * Types for SwarmOptimizer and related components
4
+ */
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ //# sourceMappingURL=types.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.js","sourceRoot":"","sources":["../../../src/core/optimization/types.ts"],"names":[],"mappings":";AAAA;;GAEG"}
@@ -0,0 +1,54 @@
1
+ /**
2
+ * PriorityQueue - Heap-based priority queue implementation
3
+ *
4
+ * Uses a binary min-heap for O(log n) enqueue/dequeue operations.
5
+ * Higher priority values indicate higher priority (will be dequeued first).
6
+ */
7
+ export declare class PriorityQueue<T> {
8
+ private heap;
9
+ /**
10
+ * Add an item to the queue with the given priority
11
+ * @param item Item to add
12
+ * @param priority Priority value (higher = higher priority)
13
+ */
14
+ enqueue(item: T, priority: number): void;
15
+ /**
16
+ * Remove and return the highest priority item
17
+ * @returns The item with highest priority, or undefined if empty
18
+ */
19
+ dequeue(): T | undefined;
20
+ /**
21
+ * View the highest priority item without removing it
22
+ * @returns The item with highest priority, or undefined if empty
23
+ */
24
+ peek(): T | undefined;
25
+ /**
26
+ * Check if the queue is empty
27
+ */
28
+ isEmpty(): boolean;
29
+ /**
30
+ * Get the number of items in the queue
31
+ */
32
+ size(): number;
33
+ /**
34
+ * Clear all items from the queue
35
+ */
36
+ clear(): void;
37
+ /**
38
+ * Convert queue to array (ordered by priority)
39
+ */
40
+ toArray(): T[];
41
+ /**
42
+ * Bubble up an element to maintain heap property
43
+ */
44
+ private bubbleUp;
45
+ /**
46
+ * Bubble down an element to maintain heap property
47
+ */
48
+ private bubbleDown;
49
+ /**
50
+ * Swap two elements in the heap
51
+ */
52
+ private swap;
53
+ }
54
+ //# sourceMappingURL=PriorityQueue.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"PriorityQueue.d.ts","sourceRoot":"","sources":["../../../src/core/orchestration/PriorityQueue.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAOH,qBAAa,aAAa,CAAC,CAAC;IAC1B,OAAO,CAAC,IAAI,CAAsB;IAElC;;;;OAIG;IACH,OAAO,CAAC,IAAI,EAAE,CAAC,EAAE,QAAQ,EAAE,MAAM,GAAG,IAAI;IAKxC;;;OAGG;IACH,OAAO,IAAI,CAAC,GAAG,SAAS;IAgBxB;;;OAGG;IACH,IAAI,IAAI,CAAC,GAAG,SAAS;IAIrB;;OAEG;IACH,OAAO,IAAI,OAAO;IAIlB;;OAEG;IACH,IAAI,IAAI,MAAM;IAId;;OAEG;IACH,KAAK,IAAI,IAAI;IAIb;;OAEG;IACH,OAAO,IAAI,CAAC,EAAE;IASd;;OAEG;IACH,OAAO,CAAC,QAAQ;IAchB;;OAEG;IACH,OAAO,CAAC,UAAU;IA8BlB;;OAEG;IACH,OAAO,CAAC,IAAI;CAKb"}
@@ -0,0 +1,122 @@
1
+ "use strict";
2
+ /**
3
+ * PriorityQueue - Heap-based priority queue implementation
4
+ *
5
+ * Uses a binary min-heap for O(log n) enqueue/dequeue operations.
6
+ * Higher priority values indicate higher priority (will be dequeued first).
7
+ */
8
+ Object.defineProperty(exports, "__esModule", { value: true });
9
+ exports.PriorityQueue = void 0;
10
+ class PriorityQueue {
11
+ constructor() {
12
+ this.heap = [];
13
+ }
14
+ /**
15
+ * Add an item to the queue with the given priority
16
+ * @param item Item to add
17
+ * @param priority Priority value (higher = higher priority)
18
+ */
19
+ enqueue(item, priority) {
20
+ this.heap.push({ item, priority });
21
+ this.bubbleUp(this.heap.length - 1);
22
+ }
23
+ /**
24
+ * Remove and return the highest priority item
25
+ * @returns The item with highest priority, or undefined if empty
26
+ */
27
+ dequeue() {
28
+ if (this.heap.length === 0) {
29
+ return undefined;
30
+ }
31
+ if (this.heap.length === 1) {
32
+ return this.heap.pop().item;
33
+ }
34
+ const result = this.heap[0].item;
35
+ this.heap[0] = this.heap.pop();
36
+ this.bubbleDown(0);
37
+ return result;
38
+ }
39
+ /**
40
+ * View the highest priority item without removing it
41
+ * @returns The item with highest priority, or undefined if empty
42
+ */
43
+ peek() {
44
+ return this.heap.length > 0 ? this.heap[0].item : undefined;
45
+ }
46
+ /**
47
+ * Check if the queue is empty
48
+ */
49
+ isEmpty() {
50
+ return this.heap.length === 0;
51
+ }
52
+ /**
53
+ * Get the number of items in the queue
54
+ */
55
+ size() {
56
+ return this.heap.length;
57
+ }
58
+ /**
59
+ * Clear all items from the queue
60
+ */
61
+ clear() {
62
+ this.heap = [];
63
+ }
64
+ /**
65
+ * Convert queue to array (ordered by priority)
66
+ */
67
+ toArray() {
68
+ // Create a copy and sort by priority (highest first)
69
+ return [...this.heap]
70
+ .sort((a, b) => b.priority - a.priority)
71
+ .map(item => item.item);
72
+ }
73
+ // ============= PRIVATE HEAP OPERATIONS =============
74
+ /**
75
+ * Bubble up an element to maintain heap property
76
+ */
77
+ bubbleUp(index) {
78
+ while (index > 0) {
79
+ const parentIndex = Math.floor((index - 1) / 2);
80
+ // Max heap: parent should have higher priority
81
+ if (this.heap[parentIndex].priority >= this.heap[index].priority) {
82
+ break;
83
+ }
84
+ this.swap(index, parentIndex);
85
+ index = parentIndex;
86
+ }
87
+ }
88
+ /**
89
+ * Bubble down an element to maintain heap property
90
+ */
91
+ bubbleDown(index) {
92
+ while (true) {
93
+ const leftChild = 2 * index + 1;
94
+ const rightChild = 2 * index + 2;
95
+ let largest = index;
96
+ // Find largest among node and its children
97
+ if (leftChild < this.heap.length &&
98
+ this.heap[leftChild].priority > this.heap[largest].priority) {
99
+ largest = leftChild;
100
+ }
101
+ if (rightChild < this.heap.length &&
102
+ this.heap[rightChild].priority > this.heap[largest].priority) {
103
+ largest = rightChild;
104
+ }
105
+ if (largest === index) {
106
+ break;
107
+ }
108
+ this.swap(index, largest);
109
+ index = largest;
110
+ }
111
+ }
112
+ /**
113
+ * Swap two elements in the heap
114
+ */
115
+ swap(i, j) {
116
+ const temp = this.heap[i];
117
+ this.heap[i] = this.heap[j];
118
+ this.heap[j] = temp;
119
+ }
120
+ }
121
+ exports.PriorityQueue = PriorityQueue;
122
+ //# sourceMappingURL=PriorityQueue.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"PriorityQueue.js","sourceRoot":"","sources":["../../../src/core/orchestration/PriorityQueue.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,176 @@
1
+ /**
2
+ * WorkflowOrchestrator - Adaptive workflow execution for QE agent swarms
3
+ *
4
+ * Features:
5
+ * - Adaptive strategy selection (parallel/sequential/hybrid)
6
+ * - Priority-based task queue with dependency resolution
7
+ * - Workflow checkpointing for recovery
8
+ * - Integration with SwarmOptimizer and FleetManager
9
+ */
10
+ import { SwarmMemoryManager } from '../memory/SwarmMemoryManager';
11
+ import { QEEventBus } from '../events/QEEventBus';
12
+ import { SwarmOptimizer } from '../optimization/SwarmOptimizer';
13
+ import { Workflow, WorkflowExecution, WorkflowCheckpoint, ExecutionMetrics } from './types';
14
+ export declare class WorkflowOrchestrator {
15
+ private readonly logger;
16
+ private readonly memoryStore;
17
+ private readonly eventBus;
18
+ private readonly optimizer?;
19
+ private workflows;
20
+ private executions;
21
+ private taskQueue;
22
+ private isShutdown;
23
+ private readonly PRIORITY_VALUES;
24
+ constructor(memoryStore: SwarmMemoryManager, eventBus: QEEventBus, optimizer?: SwarmOptimizer);
25
+ /**
26
+ * Initialize the orchestrator
27
+ */
28
+ initialize(): Promise<void>;
29
+ /**
30
+ * Register a new workflow
31
+ */
32
+ registerWorkflow(workflow: Workflow): void;
33
+ /**
34
+ * Get a workflow by ID
35
+ */
36
+ getWorkflow(id: string): Workflow | undefined;
37
+ /**
38
+ * List all registered workflows
39
+ */
40
+ listWorkflows(): Workflow[];
41
+ /**
42
+ * Execute a workflow
43
+ */
44
+ executeWorkflow(workflowId: string, inputs?: Record<string, any>): Promise<WorkflowExecution>;
45
+ /**
46
+ * Pause a running execution
47
+ */
48
+ pauseExecution(executionId: string): Promise<void>;
49
+ /**
50
+ * Resume a paused execution
51
+ */
52
+ resumeExecution(executionId: string): Promise<void>;
53
+ /**
54
+ * Cancel a running or paused execution
55
+ */
56
+ cancelExecution(executionId: string): Promise<void>;
57
+ /**
58
+ * Select optimal execution strategy based on workflow characteristics
59
+ */
60
+ private selectStrategy;
61
+ /**
62
+ * Analyze workload characteristics
63
+ */
64
+ private analyzeWorkloadCharacteristics;
65
+ /**
66
+ * Resolve dependencies and create execution plan
67
+ */
68
+ private resolveDependencies;
69
+ /**
70
+ * Topological sort using Kahn's algorithm
71
+ */
72
+ private topologicalSort;
73
+ /**
74
+ * Detect circular dependencies using DFS
75
+ */
76
+ private detectCycles;
77
+ /**
78
+ * Group steps into parallel execution phases
79
+ */
80
+ private groupIntoPhases;
81
+ /**
82
+ * Calculate critical path (longest dependency chain)
83
+ */
84
+ private calculateCriticalPath;
85
+ /**
86
+ * Execute a single step
87
+ */
88
+ private executeStep;
89
+ /**
90
+ * Execute step with timeout
91
+ */
92
+ private executeStepWithTimeout;
93
+ /**
94
+ * Execute step action (placeholder for agent invocation)
95
+ */
96
+ private executeStepAction;
97
+ /**
98
+ * Resolve step inputs from previous results
99
+ */
100
+ private resolveStepInputs;
101
+ /**
102
+ * Execute steps in parallel
103
+ */
104
+ private executeParallel;
105
+ /**
106
+ * Execute steps sequentially
107
+ */
108
+ private executeSequential;
109
+ /**
110
+ * Execute in hybrid mode (phases sequential, steps within phase parallel)
111
+ */
112
+ private executeHybrid;
113
+ /**
114
+ * Create a checkpoint for an execution
115
+ */
116
+ createCheckpoint(executionId: string): Promise<WorkflowCheckpoint>;
117
+ /**
118
+ * Restore execution from checkpoint
119
+ */
120
+ restoreFromCheckpoint(checkpoint: WorkflowCheckpoint): Promise<WorkflowExecution>;
121
+ /**
122
+ * Enqueue a task with priority
123
+ */
124
+ private enqueueTask;
125
+ /**
126
+ * Dequeue highest priority task
127
+ */
128
+ private dequeueTask;
129
+ /**
130
+ * Get execution metrics
131
+ */
132
+ getExecutionMetrics(executionId: string): ExecutionMetrics;
133
+ /**
134
+ * Get execution by ID
135
+ */
136
+ getExecution(executionId: string): WorkflowExecution | undefined;
137
+ /**
138
+ * List all executions
139
+ */
140
+ listExecutions(): WorkflowExecution[];
141
+ /**
142
+ * Validate workflow structure
143
+ */
144
+ private validateWorkflow;
145
+ /**
146
+ * Generate unique execution ID
147
+ */
148
+ private generateExecutionId;
149
+ /**
150
+ * Serialize checkpoint for storage
151
+ */
152
+ private serializeCheckpoint;
153
+ /**
154
+ * Persist execution to memory
155
+ */
156
+ private persistExecution;
157
+ /**
158
+ * Load workflows from memory
159
+ */
160
+ private loadWorkflowsFromMemory;
161
+ /**
162
+ * Delay helper
163
+ */
164
+ private delay;
165
+ /**
166
+ * Event handlers
167
+ */
168
+ private handleStepCompleted;
169
+ private handleStepFailed;
170
+ private handleAgentAvailable;
171
+ /**
172
+ * Shutdown orchestrator
173
+ */
174
+ shutdown(): Promise<void>;
175
+ }
176
+ //# sourceMappingURL=WorkflowOrchestrator.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"WorkflowOrchestrator.d.ts","sourceRoot":"","sources":["../../../src/core/orchestration/WorkflowOrchestrator.ts"],"names":[],"mappings":"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"}