agentic-qe 2.3.2 → 2.3.4

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 (283) hide show
  1. package/CHANGELOG.md +140 -0
  2. package/README.md +1 -1
  3. package/dist/agents/BaseAgent.d.ts +10 -0
  4. package/dist/agents/BaseAgent.d.ts.map +1 -1
  5. package/dist/agents/BaseAgent.js +113 -0
  6. package/dist/agents/BaseAgent.js.map +1 -1
  7. package/dist/agents/CoverageAnalyzerAgent.d.ts.map +1 -1
  8. package/dist/agents/CoverageAnalyzerAgent.js +53 -27
  9. package/dist/agents/CoverageAnalyzerAgent.js.map +1 -1
  10. package/dist/agents/FlakyTestHunterAgent.d.ts +5 -0
  11. package/dist/agents/FlakyTestHunterAgent.d.ts.map +1 -1
  12. package/dist/agents/FlakyTestHunterAgent.js +20 -5
  13. package/dist/agents/FlakyTestHunterAgent.js.map +1 -1
  14. package/dist/agents/QualityGateAgent.js +44 -6
  15. package/dist/agents/QualityGateAgent.js.map +1 -1
  16. package/dist/cli/commands/dream/index.d.ts +50 -0
  17. package/dist/cli/commands/dream/index.d.ts.map +1 -0
  18. package/dist/cli/commands/dream/index.js +282 -0
  19. package/dist/cli/commands/dream/index.js.map +1 -0
  20. package/dist/cli/commands/learn/index.d.ts +31 -5
  21. package/dist/cli/commands/learn/index.d.ts.map +1 -1
  22. package/dist/cli/commands/learn/index.js +183 -50
  23. package/dist/cli/commands/learn/index.js.map +1 -1
  24. package/dist/cli/commands/transfer/index.d.ts +55 -0
  25. package/dist/cli/commands/transfer/index.d.ts.map +1 -0
  26. package/dist/cli/commands/transfer/index.js +317 -0
  27. package/dist/cli/commands/transfer/index.js.map +1 -0
  28. package/dist/cli/index.js +156 -3
  29. package/dist/cli/index.js.map +1 -1
  30. package/dist/cli/init/database-init.js +5 -0
  31. package/dist/cli/init/database-init.js.map +1 -1
  32. package/dist/cli/init/index.d.ts.map +1 -1
  33. package/dist/cli/init/index.js +12 -4
  34. package/dist/cli/init/index.js.map +1 -1
  35. package/dist/cli/init/learning-init.d.ts +39 -0
  36. package/dist/cli/init/learning-init.d.ts.map +1 -0
  37. package/dist/cli/init/learning-init.js +239 -0
  38. package/dist/cli/init/learning-init.js.map +1 -0
  39. package/dist/core/memory/HNSWVectorMemory.js +1 -1
  40. package/dist/learning/PerformanceTracker.d.ts +9 -0
  41. package/dist/learning/PerformanceTracker.d.ts.map +1 -1
  42. package/dist/learning/PerformanceTracker.js +26 -2
  43. package/dist/learning/PerformanceTracker.js.map +1 -1
  44. package/dist/learning/baselines/BaselineCollector.d.ts +178 -0
  45. package/dist/learning/baselines/BaselineCollector.d.ts.map +1 -0
  46. package/dist/learning/baselines/BaselineCollector.js +398 -0
  47. package/dist/learning/baselines/BaselineCollector.js.map +1 -0
  48. package/dist/learning/baselines/StandardTaskSuite.d.ts +88 -0
  49. package/dist/learning/baselines/StandardTaskSuite.d.ts.map +1 -0
  50. package/dist/learning/baselines/StandardTaskSuite.js +801 -0
  51. package/dist/learning/baselines/StandardTaskSuite.js.map +1 -0
  52. package/dist/learning/baselines/index.d.ts +10 -0
  53. package/dist/learning/baselines/index.d.ts.map +1 -0
  54. package/dist/learning/baselines/index.js +15 -0
  55. package/dist/learning/baselines/index.js.map +1 -0
  56. package/dist/learning/capture/ExecutionRecorder.d.ts +97 -0
  57. package/dist/learning/capture/ExecutionRecorder.d.ts.map +1 -0
  58. package/dist/learning/capture/ExecutionRecorder.js +195 -0
  59. package/dist/learning/capture/ExecutionRecorder.js.map +1 -0
  60. package/dist/learning/capture/ExperienceCapture.d.ts +177 -0
  61. package/dist/learning/capture/ExperienceCapture.d.ts.map +1 -0
  62. package/dist/learning/capture/ExperienceCapture.js +432 -0
  63. package/dist/learning/capture/ExperienceCapture.js.map +1 -0
  64. package/dist/learning/capture/index.d.ts +12 -0
  65. package/dist/learning/capture/index.d.ts.map +1 -0
  66. package/dist/learning/capture/index.js +17 -0
  67. package/dist/learning/capture/index.js.map +1 -0
  68. package/dist/learning/dashboard/MetricsDashboard.d.ts +63 -0
  69. package/dist/learning/dashboard/MetricsDashboard.d.ts.map +1 -0
  70. package/dist/learning/dashboard/MetricsDashboard.js +230 -0
  71. package/dist/learning/dashboard/MetricsDashboard.js.map +1 -0
  72. package/dist/learning/dashboard/index.d.ts +7 -0
  73. package/dist/learning/dashboard/index.d.ts.map +1 -0
  74. package/dist/learning/dashboard/index.js +23 -0
  75. package/dist/learning/dashboard/index.js.map +1 -0
  76. package/dist/learning/dream/ConceptGraph.d.ts +160 -0
  77. package/dist/learning/dream/ConceptGraph.d.ts.map +1 -0
  78. package/dist/learning/dream/ConceptGraph.js +445 -0
  79. package/dist/learning/dream/ConceptGraph.js.map +1 -0
  80. package/dist/learning/dream/DreamEngine.d.ts +150 -0
  81. package/dist/learning/dream/DreamEngine.d.ts.map +1 -0
  82. package/dist/learning/dream/DreamEngine.js +551 -0
  83. package/dist/learning/dream/DreamEngine.js.map +1 -0
  84. package/dist/learning/dream/InsightGenerator.d.ts +152 -0
  85. package/dist/learning/dream/InsightGenerator.d.ts.map +1 -0
  86. package/dist/learning/dream/InsightGenerator.js +463 -0
  87. package/dist/learning/dream/InsightGenerator.js.map +1 -0
  88. package/dist/learning/dream/SpreadingActivation.d.ts +138 -0
  89. package/dist/learning/dream/SpreadingActivation.d.ts.map +1 -0
  90. package/dist/learning/dream/SpreadingActivation.js +320 -0
  91. package/dist/learning/dream/SpreadingActivation.js.map +1 -0
  92. package/dist/learning/dream/index.d.ts +14 -0
  93. package/dist/learning/dream/index.d.ts.map +1 -0
  94. package/dist/learning/dream/index.js +22 -0
  95. package/dist/learning/dream/index.js.map +1 -0
  96. package/dist/learning/metrics/AlertManager.d.ts +107 -0
  97. package/dist/learning/metrics/AlertManager.d.ts.map +1 -0
  98. package/dist/learning/metrics/AlertManager.js +246 -0
  99. package/dist/learning/metrics/AlertManager.js.map +1 -0
  100. package/dist/learning/metrics/LearningMetrics.d.ts +184 -0
  101. package/dist/learning/metrics/LearningMetrics.d.ts.map +1 -0
  102. package/dist/learning/metrics/LearningMetrics.js +754 -0
  103. package/dist/learning/metrics/LearningMetrics.js.map +1 -0
  104. package/dist/learning/metrics/MetricsCollector.d.ts +108 -0
  105. package/dist/learning/metrics/MetricsCollector.d.ts.map +1 -0
  106. package/dist/learning/metrics/MetricsCollector.js +240 -0
  107. package/dist/learning/metrics/MetricsCollector.js.map +1 -0
  108. package/dist/learning/metrics/MetricsStore.d.ts +149 -0
  109. package/dist/learning/metrics/MetricsStore.d.ts.map +1 -0
  110. package/dist/learning/metrics/MetricsStore.js +502 -0
  111. package/dist/learning/metrics/MetricsStore.js.map +1 -0
  112. package/dist/learning/metrics/TrendAnalyzer.d.ts +85 -0
  113. package/dist/learning/metrics/TrendAnalyzer.d.ts.map +1 -0
  114. package/dist/learning/metrics/TrendAnalyzer.js +210 -0
  115. package/dist/learning/metrics/TrendAnalyzer.js.map +1 -0
  116. package/dist/learning/metrics/index.d.ts +13 -0
  117. package/dist/learning/metrics/index.d.ts.map +1 -0
  118. package/dist/learning/metrics/index.js +39 -0
  119. package/dist/learning/metrics/index.js.map +1 -0
  120. package/dist/learning/scheduler/IdleDetector.d.ts +126 -0
  121. package/dist/learning/scheduler/IdleDetector.d.ts.map +1 -0
  122. package/dist/learning/scheduler/IdleDetector.js +281 -0
  123. package/dist/learning/scheduler/IdleDetector.js.map +1 -0
  124. package/dist/learning/scheduler/SleepCycle.d.ts +150 -0
  125. package/dist/learning/scheduler/SleepCycle.d.ts.map +1 -0
  126. package/dist/learning/scheduler/SleepCycle.js +506 -0
  127. package/dist/learning/scheduler/SleepCycle.js.map +1 -0
  128. package/dist/learning/scheduler/SleepScheduler.d.ts +131 -0
  129. package/dist/learning/scheduler/SleepScheduler.d.ts.map +1 -0
  130. package/dist/learning/scheduler/SleepScheduler.js +299 -0
  131. package/dist/learning/scheduler/SleepScheduler.js.map +1 -0
  132. package/dist/learning/scheduler/TimeBasedTrigger.d.ts +108 -0
  133. package/dist/learning/scheduler/TimeBasedTrigger.d.ts.map +1 -0
  134. package/dist/learning/scheduler/TimeBasedTrigger.js +222 -0
  135. package/dist/learning/scheduler/TimeBasedTrigger.js.map +1 -0
  136. package/dist/learning/scheduler/index.d.ts +16 -0
  137. package/dist/learning/scheduler/index.d.ts.map +1 -0
  138. package/dist/learning/scheduler/index.js +23 -0
  139. package/dist/learning/scheduler/index.js.map +1 -0
  140. package/dist/learning/synthesis/PatternSynthesis.d.ts +162 -0
  141. package/dist/learning/synthesis/PatternSynthesis.d.ts.map +1 -0
  142. package/dist/learning/synthesis/PatternSynthesis.js +479 -0
  143. package/dist/learning/synthesis/PatternSynthesis.js.map +1 -0
  144. package/dist/learning/synthesis/index.d.ts +10 -0
  145. package/dist/learning/synthesis/index.d.ts.map +1 -0
  146. package/dist/learning/synthesis/index.js +14 -0
  147. package/dist/learning/synthesis/index.js.map +1 -0
  148. package/dist/learning/transfer/CompatibilityScorer.d.ts +115 -0
  149. package/dist/learning/transfer/CompatibilityScorer.d.ts.map +1 -0
  150. package/dist/learning/transfer/CompatibilityScorer.js +319 -0
  151. package/dist/learning/transfer/CompatibilityScorer.js.map +1 -0
  152. package/dist/learning/transfer/TransferProtocol.d.ts +172 -0
  153. package/dist/learning/transfer/TransferProtocol.d.ts.map +1 -0
  154. package/dist/learning/transfer/TransferProtocol.js +611 -0
  155. package/dist/learning/transfer/TransferProtocol.js.map +1 -0
  156. package/dist/learning/transfer/TransferPrototype.d.ts +93 -0
  157. package/dist/learning/transfer/TransferPrototype.d.ts.map +1 -0
  158. package/dist/learning/transfer/TransferPrototype.js +433 -0
  159. package/dist/learning/transfer/TransferPrototype.js.map +1 -0
  160. package/dist/learning/transfer/TransferValidator.d.ts +140 -0
  161. package/dist/learning/transfer/TransferValidator.d.ts.map +1 -0
  162. package/dist/learning/transfer/TransferValidator.js +413 -0
  163. package/dist/learning/transfer/TransferValidator.js.map +1 -0
  164. package/dist/learning/transfer/index.d.ts +14 -0
  165. package/dist/learning/transfer/index.d.ts.map +1 -0
  166. package/dist/learning/transfer/index.js +22 -0
  167. package/dist/learning/transfer/index.js.map +1 -0
  168. package/dist/mcp/handlers/test/test-generate-enhanced.d.ts +26 -2
  169. package/dist/mcp/handlers/test/test-generate-enhanced.d.ts.map +1 -1
  170. package/dist/mcp/handlers/test/test-generate-enhanced.js +159 -27
  171. package/dist/mcp/handlers/test/test-generate-enhanced.js.map +1 -1
  172. package/dist/mcp/server-instructions.d.ts +1 -1
  173. package/dist/mcp/server-instructions.js +1 -1
  174. package/dist/mcp/server.d.ts.map +1 -1
  175. package/dist/mcp/server.js +2 -1
  176. package/dist/mcp/server.js.map +1 -1
  177. package/package.json +7 -2
  178. package/scripts/README.md +352 -0
  179. package/scripts/hooks/capture-task-learning.js +191 -0
  180. package/scripts/hooks/emit-task-complete.sh +35 -0
  181. package/scripts/hooks/emit-task-spawn.sh +27 -0
  182. package/.claude/agents/failing-agent.json +0 -9
  183. package/.claude/agents/test-agent.json +0 -9
  184. package/dist/App.d.ts +0 -5
  185. package/dist/App.d.ts.map +0 -1
  186. package/dist/App.js +0 -15
  187. package/dist/App.js.map +0 -1
  188. package/dist/cli/init/utils.d.ts +0 -183
  189. package/dist/cli/init/utils.d.ts.map +0 -1
  190. package/dist/cli/init/utils.js +0 -354
  191. package/dist/cli/init/utils.js.map +0 -1
  192. package/dist/components/Dashboard/Dashboard.d.ts +0 -4
  193. package/dist/components/Dashboard/Dashboard.d.ts.map +0 -1
  194. package/dist/components/Dashboard/Dashboard.js +0 -148
  195. package/dist/components/Dashboard/Dashboard.js.map +0 -1
  196. package/dist/components/Dashboard/DashboardHeader.d.ts +0 -4
  197. package/dist/components/Dashboard/DashboardHeader.d.ts.map +0 -1
  198. package/dist/components/Dashboard/DashboardHeader.js +0 -138
  199. package/dist/components/Dashboard/DashboardHeader.js.map +0 -1
  200. package/dist/contexts/DashboardContext.d.ts +0 -41
  201. package/dist/contexts/DashboardContext.d.ts.map +0 -1
  202. package/dist/contexts/DashboardContext.js +0 -187
  203. package/dist/contexts/DashboardContext.js.map +0 -1
  204. package/dist/core/transport/QUICTransport.d.ts +0 -320
  205. package/dist/core/transport/QUICTransport.d.ts.map +0 -1
  206. package/dist/core/transport/QUICTransport.js +0 -711
  207. package/dist/core/transport/QUICTransport.js.map +0 -1
  208. package/dist/learning/LearningPersistenceAdapter.d.ts +0 -84
  209. package/dist/learning/LearningPersistenceAdapter.d.ts.map +0 -1
  210. package/dist/learning/LearningPersistenceAdapter.js +0 -202
  211. package/dist/learning/LearningPersistenceAdapter.js.map +0 -1
  212. package/dist/learning/algorithms/QLearning.d.ts +0 -68
  213. package/dist/learning/algorithms/QLearning.d.ts.map +0 -1
  214. package/dist/learning/algorithms/QLearning.js +0 -116
  215. package/dist/learning/algorithms/QLearning.js.map +0 -1
  216. package/dist/mcp/handlers/advanced/requirements-generate-bdd.d.ts +0 -7
  217. package/dist/mcp/handlers/advanced/requirements-generate-bdd.d.ts.map +0 -1
  218. package/dist/mcp/handlers/advanced/requirements-generate-bdd.js +0 -267
  219. package/dist/mcp/handlers/advanced/requirements-generate-bdd.js.map +0 -1
  220. package/dist/mcp/handlers/advanced/requirements-validate.d.ts +0 -7
  221. package/dist/mcp/handlers/advanced/requirements-validate.d.ts.map +0 -1
  222. package/dist/mcp/handlers/advanced/requirements-validate.js +0 -175
  223. package/dist/mcp/handlers/advanced/requirements-validate.js.map +0 -1
  224. package/dist/mcp/handlers/analysis/performance-benchmark-run-handler.d.ts +0 -15
  225. package/dist/mcp/handlers/analysis/performance-benchmark-run-handler.d.ts.map +0 -1
  226. package/dist/mcp/handlers/analysis/performance-benchmark-run-handler.js +0 -43
  227. package/dist/mcp/handlers/analysis/performance-benchmark-run-handler.js.map +0 -1
  228. package/dist/mcp/handlers/analysis/performanceBenchmarkRun.d.ts +0 -58
  229. package/dist/mcp/handlers/analysis/performanceBenchmarkRun.d.ts.map +0 -1
  230. package/dist/mcp/handlers/analysis/performanceBenchmarkRun.js +0 -188
  231. package/dist/mcp/handlers/analysis/performanceBenchmarkRun.js.map +0 -1
  232. package/dist/mcp/handlers/optimize-tests.d.ts +0 -219
  233. package/dist/mcp/handlers/optimize-tests.d.ts.map +0 -1
  234. package/dist/mcp/handlers/optimize-tests.js +0 -533
  235. package/dist/mcp/handlers/optimize-tests.js.map +0 -1
  236. package/dist/mcp/handlers/predict-defects.d.ts +0 -194
  237. package/dist/mcp/handlers/predict-defects.d.ts.map +0 -1
  238. package/dist/mcp/handlers/predict-defects.js +0 -722
  239. package/dist/mcp/handlers/predict-defects.js.map +0 -1
  240. package/dist/mcp/handlers/prediction/regression-risk-analyze.d.ts +0 -199
  241. package/dist/mcp/handlers/prediction/regression-risk-analyze.d.ts.map +0 -1
  242. package/dist/mcp/handlers/prediction/regression-risk-analyze.js +0 -471
  243. package/dist/mcp/handlers/prediction/regression-risk-analyze.js.map +0 -1
  244. package/dist/mcp/handlers/quality/quality-decision-make.d.ts +0 -104
  245. package/dist/mcp/handlers/quality/quality-decision-make.d.ts.map +0 -1
  246. package/dist/mcp/handlers/quality/quality-decision-make.js +0 -408
  247. package/dist/mcp/handlers/quality/quality-decision-make.js.map +0 -1
  248. package/dist/mcp/handlers/quality/quality-gate-execute.d.ts +0 -160
  249. package/dist/mcp/handlers/quality/quality-gate-execute.d.ts.map +0 -1
  250. package/dist/mcp/handlers/quality/quality-gate-execute.js +0 -412
  251. package/dist/mcp/handlers/quality/quality-gate-execute.js.map +0 -1
  252. package/dist/mcp/handlers/quality/quality-policy-check.d.ts +0 -163
  253. package/dist/mcp/handlers/quality/quality-policy-check.d.ts.map +0 -1
  254. package/dist/mcp/handlers/quality/quality-policy-check.js +0 -455
  255. package/dist/mcp/handlers/quality/quality-policy-check.js.map +0 -1
  256. package/dist/mcp/handlers/quality/quality-risk-assess.d.ts +0 -123
  257. package/dist/mcp/handlers/quality/quality-risk-assess.d.ts.map +0 -1
  258. package/dist/mcp/handlers/quality/quality-risk-assess.js +0 -522
  259. package/dist/mcp/handlers/quality/quality-risk-assess.js.map +0 -1
  260. package/dist/mcp/handlers/quality/quality-validate-metrics.d.ts +0 -117
  261. package/dist/mcp/handlers/quality/quality-validate-metrics.d.ts.map +0 -1
  262. package/dist/mcp/handlers/quality/quality-validate-metrics.js +0 -288
  263. package/dist/mcp/handlers/quality/quality-validate-metrics.js.map +0 -1
  264. package/dist/mcp/handlers/quality-analyze.d.ts +0 -279
  265. package/dist/mcp/handlers/quality-analyze.d.ts.map +0 -1
  266. package/dist/mcp/handlers/quality-analyze.js +0 -720
  267. package/dist/mcp/handlers/quality-analyze.js.map +0 -1
  268. package/dist/mcp/handlers/security/check-authz.d.ts +0 -152
  269. package/dist/mcp/handlers/security/check-authz.d.ts.map +0 -1
  270. package/dist/mcp/handlers/security/check-authz.js +0 -434
  271. package/dist/mcp/handlers/security/check-authz.js.map +0 -1
  272. package/dist/mcp/handlers/security/scan-dependencies.d.ts +0 -148
  273. package/dist/mcp/handlers/security/scan-dependencies.d.ts.map +0 -1
  274. package/dist/mcp/handlers/security/scan-dependencies.js +0 -354
  275. package/dist/mcp/handlers/security/scan-dependencies.js.map +0 -1
  276. package/dist/mcp/handlers/security/validate-auth.d.ts +0 -128
  277. package/dist/mcp/handlers/security/validate-auth.d.ts.map +0 -1
  278. package/dist/mcp/handlers/security/validate-auth.js +0 -294
  279. package/dist/mcp/handlers/security/validate-auth.js.map +0 -1
  280. package/dist/mcp/handlers/test-generate.d.ts +0 -107
  281. package/dist/mcp/handlers/test-generate.d.ts.map +0 -1
  282. package/dist/mcp/handlers/test-generate.js +0 -454
  283. package/dist/mcp/handlers/test-generate.js.map +0 -1
@@ -0,0 +1,398 @@
1
+ "use strict";
2
+ /**
3
+ * BaselineCollector - Phase 0 of Nightly-Learner System
4
+ *
5
+ * Collects performance baselines for all 19 QE agents to establish
6
+ * quantitative improvement targets (10-20% above baseline).
7
+ *
8
+ * Architecture:
9
+ * - Uses shared memory database (.agentic-qe/memory.db)
10
+ * - Stores baselines in dedicated `learning_baselines` table
11
+ * - Integrates with StandardTaskSuite for consistent benchmarking
12
+ * - Provides baseline queries for improvement tracking
13
+ *
14
+ * @version 1.0.0
15
+ * @module src/learning/baselines/BaselineCollector
16
+ */
17
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
18
+ if (k2 === undefined) k2 = k;
19
+ var desc = Object.getOwnPropertyDescriptor(m, k);
20
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
21
+ desc = { enumerable: true, get: function() { return m[k]; } };
22
+ }
23
+ Object.defineProperty(o, k2, desc);
24
+ }) : (function(o, m, k, k2) {
25
+ if (k2 === undefined) k2 = k;
26
+ o[k2] = m[k];
27
+ }));
28
+ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
29
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
30
+ }) : function(o, v) {
31
+ o["default"] = v;
32
+ });
33
+ var __importStar = (this && this.__importStar) || (function () {
34
+ var ownKeys = function(o) {
35
+ ownKeys = Object.getOwnPropertyNames || function (o) {
36
+ var ar = [];
37
+ for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
38
+ return ar;
39
+ };
40
+ return ownKeys(o);
41
+ };
42
+ return function (mod) {
43
+ if (mod && mod.__esModule) return mod;
44
+ var result = {};
45
+ if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
46
+ __setModuleDefault(result, mod);
47
+ return result;
48
+ };
49
+ })();
50
+ var __importDefault = (this && this.__importDefault) || function (mod) {
51
+ return (mod && mod.__esModule) ? mod : { "default": mod };
52
+ };
53
+ Object.defineProperty(exports, "__esModule", { value: true });
54
+ exports.BaselineCollector = void 0;
55
+ const better_sqlite3_1 = __importDefault(require("better-sqlite3"));
56
+ const path = __importStar(require("path"));
57
+ const Logger_1 = require("../../utils/Logger");
58
+ const SecureRandom_1 = require("../../utils/SecureRandom");
59
+ const types_1 = require("../../types");
60
+ const StandardTaskSuite_1 = require("./StandardTaskSuite");
61
+ /**
62
+ * BaselineCollector collects and manages performance baselines
63
+ *
64
+ * @example
65
+ * ```typescript
66
+ * const collector = new BaselineCollector();
67
+ * await collector.initialize();
68
+ *
69
+ * // Collect baseline for test-generator
70
+ * const baseline = await collector.collectBaseline(
71
+ * 'test-gen-001',
72
+ * QEAgentType.TEST_GENERATOR,
73
+ * 'unit-test-generation'
74
+ * );
75
+ *
76
+ * // Get improvement targets
77
+ * const targets = collector.getImprovementTarget(baseline);
78
+ * ```
79
+ */
80
+ class BaselineCollector {
81
+ constructor(config) {
82
+ this.isInitialized = false;
83
+ this.logger = Logger_1.Logger.getInstance();
84
+ this.config = {
85
+ dbPath: config?.dbPath || path.join(process.cwd(), '.agentic-qe', 'memory.db'),
86
+ sampleSize: config?.sampleSize ?? 10,
87
+ taskTimeout: config?.taskTimeout ?? 30000,
88
+ debug: config?.debug ?? false,
89
+ };
90
+ this.db = new better_sqlite3_1.default(this.config.dbPath);
91
+ this.taskSuite = new StandardTaskSuite_1.StandardTaskSuite();
92
+ }
93
+ /**
94
+ * Initialize the baseline collector and database schema
95
+ */
96
+ async initialize() {
97
+ if (this.isInitialized) {
98
+ this.logger.warn('[BaselineCollector] Already initialized');
99
+ return;
100
+ }
101
+ this.logger.info('[BaselineCollector] Initializing...');
102
+ this.initializeSchema();
103
+ this.isInitialized = true;
104
+ this.logger.info('[BaselineCollector] Initialized successfully');
105
+ }
106
+ /**
107
+ * Initialize database schema for baselines
108
+ */
109
+ initializeSchema() {
110
+ this.db.exec(`
111
+ CREATE TABLE IF NOT EXISTS learning_baselines (
112
+ id TEXT PRIMARY KEY,
113
+ agent_id TEXT NOT NULL,
114
+ agent_type TEXT NOT NULL,
115
+ task_type TEXT NOT NULL,
116
+ avg_completion_time REAL NOT NULL,
117
+ success_rate REAL NOT NULL,
118
+ pattern_recall_accuracy REAL NOT NULL,
119
+ coverage_achieved REAL NOT NULL,
120
+ sample_size INTEGER NOT NULL,
121
+ collected_at INTEGER NOT NULL,
122
+ updated_at INTEGER,
123
+ UNIQUE(agent_id, agent_type, task_type)
124
+ );
125
+
126
+ CREATE INDEX IF NOT EXISTS idx_baselines_agent_type ON learning_baselines(agent_type);
127
+ CREATE INDEX IF NOT EXISTS idx_baselines_task_type ON learning_baselines(task_type);
128
+ CREATE INDEX IF NOT EXISTS idx_baselines_collected_at ON learning_baselines(collected_at);
129
+ `);
130
+ }
131
+ /**
132
+ * Collect baseline for a specific agent and task type
133
+ *
134
+ * Runs the standard task suite multiple times and calculates average metrics.
135
+ *
136
+ * @param agentId - Agent identifier
137
+ * @param agentType - QE agent type
138
+ * @param taskType - Task type to baseline
139
+ * @returns Collected baseline
140
+ */
141
+ async collectBaseline(agentId, agentType, taskType) {
142
+ if (!this.isInitialized) {
143
+ throw new Error('BaselineCollector not initialized');
144
+ }
145
+ this.logger.info(`[BaselineCollector] Collecting baseline for ${agentType} - ${taskType}`, {
146
+ agentId,
147
+ sampleSize: this.config.sampleSize,
148
+ });
149
+ // Get standard tasks for this agent type and task type
150
+ const tasks = this.taskSuite.getTasksForAgent(agentType, taskType);
151
+ if (tasks.length === 0) {
152
+ throw new Error(`No standard tasks found for ${agentType} - ${taskType}`);
153
+ }
154
+ // Run tasks and collect metrics
155
+ const results = [];
156
+ for (let i = 0; i < this.config.sampleSize; i++) {
157
+ const task = tasks[i % tasks.length]; // Cycle through tasks
158
+ const result = await this.executeStandardTask(task);
159
+ results.push(result);
160
+ if (this.config.debug) {
161
+ this.logger.debug(`[BaselineCollector] Sample ${i + 1}/${this.config.sampleSize}`, result);
162
+ }
163
+ }
164
+ // Calculate aggregate metrics
165
+ const metrics = this.calculateMetrics(results);
166
+ const baseline = {
167
+ id: `baseline-${Date.now()}-${SecureRandom_1.SecureRandom.randomString(8, 'alphanumeric')}`,
168
+ agentId,
169
+ agentType,
170
+ taskType,
171
+ metrics,
172
+ sampleSize: results.length,
173
+ collectedAt: new Date(),
174
+ };
175
+ // Store baseline in database
176
+ await this.storeBaseline(baseline);
177
+ this.logger.info(`[BaselineCollector] Baseline collected for ${agentType} - ${taskType}`, {
178
+ metrics,
179
+ });
180
+ return baseline;
181
+ }
182
+ /**
183
+ * Collect baselines for all 19 QE agent types
184
+ *
185
+ * Runs comprehensive baseline collection across all agents.
186
+ * This is typically run once during Phase 0 setup.
187
+ *
188
+ * @returns Array of collected baselines
189
+ */
190
+ async collectAllBaselines() {
191
+ const allAgentTypes = Object.values(types_1.QEAgentType);
192
+ const baselines = [];
193
+ this.logger.info(`[BaselineCollector] Collecting baselines for ${allAgentTypes.length} agent types`);
194
+ for (const agentType of allAgentTypes) {
195
+ // Get task types for this agent
196
+ const taskTypes = this.taskSuite.getTaskTypesForAgent(agentType);
197
+ for (const taskType of taskTypes) {
198
+ try {
199
+ const agentId = `baseline-agent-${agentType}`;
200
+ const baseline = await this.collectBaseline(agentId, agentType, taskType);
201
+ baselines.push(baseline);
202
+ }
203
+ catch (error) {
204
+ this.logger.warn(`[BaselineCollector] Failed to collect baseline for ${agentType} - ${taskType}`, error);
205
+ }
206
+ }
207
+ }
208
+ this.logger.info(`[BaselineCollector] Collected ${baselines.length} baselines`);
209
+ return baselines;
210
+ }
211
+ /**
212
+ * Execute a standard task and measure performance
213
+ */
214
+ async executeStandardTask(task) {
215
+ const startTime = Date.now();
216
+ // Simulate task execution
217
+ // In production, this would call the actual agent
218
+ const success = Math.random() > 0.2; // 80% success rate baseline
219
+ const coverage = 60 + Math.random() * 30; // 60-90% coverage
220
+ const patternsRecalled = Math.floor(Math.random() * 5);
221
+ const totalPatterns = 5;
222
+ // Simulate variable completion time based on task complexity
223
+ const baseTime = task.expectedDuration || 1000;
224
+ const variance = baseTime * 0.2; // 20% variance
225
+ const completionTime = baseTime + (Math.random() * variance * 2 - variance);
226
+ // Wait for simulated execution time
227
+ await new Promise(resolve => setTimeout(resolve, Math.min(100, completionTime / 10)));
228
+ return {
229
+ completionTime: Date.now() - startTime,
230
+ success,
231
+ coverage,
232
+ patternsRecalled,
233
+ totalPatterns,
234
+ };
235
+ }
236
+ /**
237
+ * Calculate aggregate metrics from task results
238
+ */
239
+ calculateMetrics(results) {
240
+ const totalResults = results.length;
241
+ const avgCompletionTime = results.reduce((sum, r) => sum + r.completionTime, 0) / totalResults;
242
+ const successRate = results.filter(r => r.success).length / totalResults;
243
+ const avgCoverage = results.reduce((sum, r) => sum + r.coverage, 0) / totalResults;
244
+ // Calculate pattern recall accuracy
245
+ const totalRecalled = results.reduce((sum, r) => sum + r.patternsRecalled, 0);
246
+ const totalPatterns = results.reduce((sum, r) => sum + r.totalPatterns, 0);
247
+ const patternRecallAccuracy = totalPatterns > 0 ? totalRecalled / totalPatterns : 0;
248
+ return {
249
+ avgCompletionTime,
250
+ successRate,
251
+ patternRecallAccuracy,
252
+ coverageAchieved: avgCoverage,
253
+ };
254
+ }
255
+ /**
256
+ * Store baseline in database
257
+ */
258
+ async storeBaseline(baseline) {
259
+ const stmt = this.db.prepare(`
260
+ INSERT OR REPLACE INTO learning_baselines
261
+ (id, agent_id, agent_type, task_type, avg_completion_time, success_rate,
262
+ pattern_recall_accuracy, coverage_achieved, sample_size, collected_at, updated_at)
263
+ VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?)
264
+ `);
265
+ stmt.run(baseline.id, baseline.agentId, baseline.agentType, baseline.taskType, baseline.metrics.avgCompletionTime, baseline.metrics.successRate, baseline.metrics.patternRecallAccuracy, baseline.metrics.coverageAchieved, baseline.sampleSize, baseline.collectedAt.getTime(), Date.now());
266
+ }
267
+ /**
268
+ * Get baseline for specific agent type and task type
269
+ */
270
+ getBaseline(agentType, taskType) {
271
+ const row = this.db.prepare(`
272
+ SELECT * FROM learning_baselines
273
+ WHERE agent_type = ? AND task_type = ?
274
+ ORDER BY collected_at DESC
275
+ LIMIT 1
276
+ `).get(agentType, taskType);
277
+ return row ? this.rowToBaseline(row) : null;
278
+ }
279
+ /**
280
+ * Get all baselines for an agent type
281
+ */
282
+ getBaselinesForAgent(agentType) {
283
+ const rows = this.db.prepare(`
284
+ SELECT * FROM learning_baselines
285
+ WHERE agent_type = ?
286
+ ORDER BY task_type, collected_at DESC
287
+ `).all(agentType);
288
+ return rows.map(row => this.rowToBaseline(row));
289
+ }
290
+ /**
291
+ * Get baseline statistics for an agent type
292
+ */
293
+ getBaselineStats(agentType) {
294
+ const baselines = this.getBaselinesForAgent(agentType);
295
+ if (baselines.length === 0) {
296
+ return null;
297
+ }
298
+ const avgSuccessRate = baselines.reduce((sum, b) => sum + b.metrics.successRate, 0) / baselines.length;
299
+ const avgCompletionTime = baselines.reduce((sum, b) => sum + b.metrics.avgCompletionTime, 0) / baselines.length;
300
+ const avgCoverage = baselines.reduce((sum, b) => sum + b.metrics.coverageAchieved, 0) / baselines.length;
301
+ const lastCollected = baselines.reduce((latest, b) => b.collectedAt > latest ? b.collectedAt : latest, baselines[0].collectedAt);
302
+ return {
303
+ agentType,
304
+ totalBaselines: baselines.length,
305
+ avgSuccessRate,
306
+ avgCompletionTime,
307
+ avgCoverage,
308
+ lastCollected,
309
+ };
310
+ }
311
+ /**
312
+ * Get improvement target from baseline
313
+ *
314
+ * Calculates 10-20% improvement targets above baseline metrics.
315
+ */
316
+ getImprovementTarget(baseline) {
317
+ const minImprovement = 0.1; // 10%
318
+ const aspirationalImprovement = 0.2; // 20%
319
+ // For completion time, faster is better (reduce by 10-20%)
320
+ const targetCompletionTime = baseline.metrics.avgCompletionTime * (1 - aspirationalImprovement);
321
+ // For success rate and coverage, higher is better (increase by 10-20%)
322
+ const targetSuccessRate = Math.min(1.0, baseline.metrics.successRate * (1 + aspirationalImprovement));
323
+ const targetCoverage = Math.min(100, baseline.metrics.coverageAchieved * (1 + aspirationalImprovement));
324
+ return {
325
+ agentType: baseline.agentType,
326
+ taskType: baseline.taskType,
327
+ baseline,
328
+ targets: {
329
+ targetCompletionTime,
330
+ targetSuccessRate,
331
+ targetCoverage,
332
+ },
333
+ minImprovementThreshold: minImprovement,
334
+ aspirationalThreshold: aspirationalImprovement,
335
+ };
336
+ }
337
+ /**
338
+ * Check if current performance meets improvement target
339
+ */
340
+ meetsImprovementTarget(baseline, currentMetrics) {
341
+ const target = this.getImprovementTarget(baseline);
342
+ const minThreshold = target.minImprovementThreshold;
343
+ // Calculate improvements
344
+ const completionTimeImprovement = (baseline.metrics.avgCompletionTime - currentMetrics.avgCompletionTime) /
345
+ baseline.metrics.avgCompletionTime;
346
+ const successRateImprovement = (currentMetrics.successRate - baseline.metrics.successRate) /
347
+ baseline.metrics.successRate;
348
+ const coverageImprovement = (currentMetrics.coverageAchieved - baseline.metrics.coverageAchieved) /
349
+ baseline.metrics.coverageAchieved;
350
+ const improvements = {
351
+ completionTime: {
352
+ met: completionTimeImprovement >= minThreshold,
353
+ improvement: completionTimeImprovement,
354
+ },
355
+ successRate: {
356
+ met: successRateImprovement >= minThreshold,
357
+ improvement: successRateImprovement,
358
+ },
359
+ coverage: {
360
+ met: coverageImprovement >= minThreshold,
361
+ improvement: coverageImprovement,
362
+ },
363
+ };
364
+ // Meets target if at least 2 out of 3 metrics improved by minimum threshold
365
+ const meetsTarget = Object.values(improvements).filter(i => i.met).length >= 2;
366
+ return { meetsTarget, improvements };
367
+ }
368
+ /**
369
+ * Convert database row to LearningBaseline
370
+ */
371
+ rowToBaseline(row) {
372
+ return {
373
+ id: row.id,
374
+ agentId: row.agent_id,
375
+ agentType: row.agent_type,
376
+ taskType: row.task_type,
377
+ metrics: {
378
+ avgCompletionTime: row.avg_completion_time,
379
+ successRate: row.success_rate,
380
+ patternRecallAccuracy: row.pattern_recall_accuracy,
381
+ coverageAchieved: row.coverage_achieved,
382
+ },
383
+ sampleSize: row.sample_size,
384
+ collectedAt: new Date(row.collected_at),
385
+ updatedAt: row.updated_at ? new Date(row.updated_at) : undefined,
386
+ };
387
+ }
388
+ /**
389
+ * Close database connection
390
+ */
391
+ close() {
392
+ this.db.close();
393
+ this.isInitialized = false;
394
+ }
395
+ }
396
+ exports.BaselineCollector = BaselineCollector;
397
+ exports.default = BaselineCollector;
398
+ //# sourceMappingURL=BaselineCollector.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"BaselineCollector.js","sourceRoot":"","sources":["../../../src/learning/baselines/BaselineCollector.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,88 @@
1
+ /**
2
+ * StandardTaskSuite - Standard tasks for baseline measurement
3
+ *
4
+ * Defines representative tasks for each of the 19 QE agents to ensure
5
+ * consistent and reproducible baseline measurements.
6
+ *
7
+ * Each agent type has 10 standard tasks covering typical workloads.
8
+ *
9
+ * @version 1.0.0
10
+ * @module src/learning/baselines/StandardTaskSuite
11
+ */
12
+ import { QEAgentType } from '../../types';
13
+ /**
14
+ * Standard task definition
15
+ */
16
+ export interface StandardTask {
17
+ id: string;
18
+ agentType: QEAgentType;
19
+ taskType: string;
20
+ name: string;
21
+ description: string;
22
+ complexity: 'low' | 'medium' | 'high';
23
+ expectedDuration: number;
24
+ input: Record<string, any>;
25
+ expectedOutput?: Record<string, any>;
26
+ }
27
+ /**
28
+ * StandardTaskSuite provides standard tasks for baseline measurement
29
+ */
30
+ export declare class StandardTaskSuite {
31
+ private tasks;
32
+ constructor();
33
+ /**
34
+ * Initialize standard tasks for all agent types
35
+ */
36
+ private initializeTasks;
37
+ /**
38
+ * Create tasks for Test Generator
39
+ */
40
+ private createTestGeneratorTasks;
41
+ /**
42
+ * Initialize other agent types
43
+ */
44
+ private initializeOtherAgents;
45
+ /**
46
+ * Helper to create a standard task (for use with currentAgentType)
47
+ */
48
+ private createTask;
49
+ /**
50
+ * Helper to create a standard task directly with agent type
51
+ */
52
+ private createTaskDirect;
53
+ /**
54
+ * Track current agent type being initialized
55
+ */
56
+ private currentAgentType;
57
+ private getCurrentAgentType;
58
+ /**
59
+ * Add tasks for an agent type
60
+ */
61
+ private addTasks;
62
+ /**
63
+ * Get all tasks for an agent type
64
+ */
65
+ getTasksForAgent(agentType: QEAgentType, taskType?: string): StandardTask[];
66
+ /**
67
+ * Get all task types for an agent
68
+ */
69
+ getTaskTypesForAgent(agentType: QEAgentType): string[];
70
+ /**
71
+ * Get a specific task by ID
72
+ */
73
+ getTask(taskId: string): StandardTask | undefined;
74
+ /**
75
+ * Get all tasks across all agents
76
+ */
77
+ getAllTasks(): StandardTask[];
78
+ /**
79
+ * Get task count by agent type
80
+ */
81
+ getTaskCount(agentType: QEAgentType): number;
82
+ /**
83
+ * Get total task count
84
+ */
85
+ getTotalTaskCount(): number;
86
+ }
87
+ export default StandardTaskSuite;
88
+ //# sourceMappingURL=StandardTaskSuite.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"StandardTaskSuite.d.ts","sourceRoot":"","sources":["../../../src/learning/baselines/StandardTaskSuite.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AAEH,OAAO,EAAE,WAAW,EAAE,MAAM,aAAa,CAAC;AAE1C;;GAEG;AACH,MAAM,WAAW,YAAY;IAC3B,EAAE,EAAE,MAAM,CAAC;IACX,SAAS,EAAE,WAAW,CAAC;IACvB,QAAQ,EAAE,MAAM,CAAC;IACjB,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,EAAE,MAAM,CAAC;IACpB,UAAU,EAAE,KAAK,GAAG,QAAQ,GAAG,MAAM,CAAC;IACtC,gBAAgB,EAAE,MAAM,CAAC;IACzB,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;IAC3B,cAAc,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;CACtC;AAWD;;GAEG;AACH,qBAAa,iBAAiB;IAC5B,OAAO,CAAC,KAAK,CAAmC;;IAOhD;;OAEG;IACH,OAAO,CAAC,eAAe;IAMvB;;OAEG;IACH,OAAO,CAAC,wBAAwB;IA6ChC;;OAEG;IACH,OAAO,CAAC,qBAAqB;IAynB7B;;OAEG;IACH,OAAO,CAAC,UAAU;IAUlB;;OAEG;IACH,OAAO,CAAC,gBAAgB;IAmBxB;;OAEG;IACH,OAAO,CAAC,gBAAgB,CAA4B;IAEpD,OAAO,CAAC,mBAAmB;IAO3B;;OAEG;IACH,OAAO,CAAC,QAAQ;IAIhB;;OAEG;IACH,gBAAgB,CAAC,SAAS,EAAE,WAAW,EAAE,QAAQ,CAAC,EAAE,MAAM,GAAG,YAAY,EAAE;IAU3E;;OAEG;IACH,oBAAoB,CAAC,SAAS,EAAE,WAAW,GAAG,MAAM,EAAE;IAKtD;;OAEG;IACH,OAAO,CAAC,MAAM,EAAE,MAAM,GAAG,YAAY,GAAG,SAAS;IAQjD;;OAEG;IACH,WAAW,IAAI,YAAY,EAAE;IAQ7B;;OAEG;IACH,YAAY,CAAC,SAAS,EAAE,WAAW,GAAG,MAAM;IAI5C;;OAEG;IACH,iBAAiB,IAAI,MAAM;CAO5B;AAED,eAAe,iBAAiB,CAAC"}