agentic-qe 2.3.3 → 2.3.5

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 (255) hide show
  1. package/CHANGELOG.md +122 -0
  2. package/README.md +1 -1
  3. package/dist/agents/ApiContractValidatorAgent.d.ts +5 -0
  4. package/dist/agents/ApiContractValidatorAgent.d.ts.map +1 -1
  5. package/dist/agents/ApiContractValidatorAgent.js +41 -0
  6. package/dist/agents/ApiContractValidatorAgent.js.map +1 -1
  7. package/dist/agents/BaseAgent.d.ts +10 -0
  8. package/dist/agents/BaseAgent.d.ts.map +1 -1
  9. package/dist/agents/BaseAgent.js +113 -0
  10. package/dist/agents/BaseAgent.js.map +1 -1
  11. package/dist/agents/CodeComplexityAnalyzerAgent.d.ts +5 -0
  12. package/dist/agents/CodeComplexityAnalyzerAgent.d.ts.map +1 -1
  13. package/dist/agents/CodeComplexityAnalyzerAgent.js +47 -0
  14. package/dist/agents/CodeComplexityAnalyzerAgent.js.map +1 -1
  15. package/dist/agents/CoverageAnalyzerAgent.d.ts +26 -0
  16. package/dist/agents/CoverageAnalyzerAgent.d.ts.map +1 -1
  17. package/dist/agents/CoverageAnalyzerAgent.js +149 -1
  18. package/dist/agents/CoverageAnalyzerAgent.js.map +1 -1
  19. package/dist/agents/DeploymentReadinessAgent.d.ts +5 -0
  20. package/dist/agents/DeploymentReadinessAgent.d.ts.map +1 -1
  21. package/dist/agents/DeploymentReadinessAgent.js +41 -0
  22. package/dist/agents/DeploymentReadinessAgent.js.map +1 -1
  23. package/dist/agents/FlakyTestHunterAgent.d.ts +5 -0
  24. package/dist/agents/FlakyTestHunterAgent.d.ts.map +1 -1
  25. package/dist/agents/FlakyTestHunterAgent.js +40 -0
  26. package/dist/agents/FlakyTestHunterAgent.js.map +1 -1
  27. package/dist/agents/FleetCommanderAgent.d.ts +5 -0
  28. package/dist/agents/FleetCommanderAgent.d.ts.map +1 -1
  29. package/dist/agents/FleetCommanderAgent.js +51 -0
  30. package/dist/agents/FleetCommanderAgent.js.map +1 -1
  31. package/dist/agents/PerformanceTesterAgent.d.ts +5 -0
  32. package/dist/agents/PerformanceTesterAgent.d.ts.map +1 -1
  33. package/dist/agents/PerformanceTesterAgent.js +44 -0
  34. package/dist/agents/PerformanceTesterAgent.js.map +1 -1
  35. package/dist/agents/ProductionIntelligenceAgent.d.ts +5 -0
  36. package/dist/agents/ProductionIntelligenceAgent.d.ts.map +1 -1
  37. package/dist/agents/ProductionIntelligenceAgent.js +46 -0
  38. package/dist/agents/ProductionIntelligenceAgent.js.map +1 -1
  39. package/dist/agents/QXPartnerAgent.js +52 -0
  40. package/dist/agents/QXPartnerAgent.js.map +1 -1
  41. package/dist/agents/QualityAnalyzerAgent.d.ts +5 -0
  42. package/dist/agents/QualityAnalyzerAgent.d.ts.map +1 -1
  43. package/dist/agents/QualityAnalyzerAgent.js +45 -0
  44. package/dist/agents/QualityAnalyzerAgent.js.map +1 -1
  45. package/dist/agents/QualityGateAgent.d.ts +40 -0
  46. package/dist/agents/QualityGateAgent.d.ts.map +1 -1
  47. package/dist/agents/QualityGateAgent.js +227 -1
  48. package/dist/agents/QualityGateAgent.js.map +1 -1
  49. package/dist/agents/RegressionRiskAnalyzerAgent.d.ts +5 -0
  50. package/dist/agents/RegressionRiskAnalyzerAgent.d.ts.map +1 -1
  51. package/dist/agents/RegressionRiskAnalyzerAgent.js +46 -0
  52. package/dist/agents/RegressionRiskAnalyzerAgent.js.map +1 -1
  53. package/dist/agents/RequirementsValidatorAgent.d.ts +5 -0
  54. package/dist/agents/RequirementsValidatorAgent.d.ts.map +1 -1
  55. package/dist/agents/RequirementsValidatorAgent.js +42 -0
  56. package/dist/agents/RequirementsValidatorAgent.js.map +1 -1
  57. package/dist/agents/SecurityScannerAgent.d.ts +5 -0
  58. package/dist/agents/SecurityScannerAgent.d.ts.map +1 -1
  59. package/dist/agents/SecurityScannerAgent.js +39 -0
  60. package/dist/agents/SecurityScannerAgent.js.map +1 -1
  61. package/dist/agents/TestDataArchitectAgent.d.ts +5 -0
  62. package/dist/agents/TestDataArchitectAgent.d.ts.map +1 -1
  63. package/dist/agents/TestDataArchitectAgent.js +46 -0
  64. package/dist/agents/TestDataArchitectAgent.js.map +1 -1
  65. package/dist/agents/TestExecutorAgent.d.ts +5 -0
  66. package/dist/agents/TestExecutorAgent.d.ts.map +1 -1
  67. package/dist/agents/TestExecutorAgent.js +48 -0
  68. package/dist/agents/TestExecutorAgent.js.map +1 -1
  69. package/dist/agents/TestGeneratorAgent.d.ts +5 -0
  70. package/dist/agents/TestGeneratorAgent.d.ts.map +1 -1
  71. package/dist/agents/TestGeneratorAgent.js +36 -0
  72. package/dist/agents/TestGeneratorAgent.js.map +1 -1
  73. package/dist/agents/lifecycle/AgentLifecycleManager.d.ts.map +1 -1
  74. package/dist/agents/lifecycle/AgentLifecycleManager.js +5 -2
  75. package/dist/agents/lifecycle/AgentLifecycleManager.js.map +1 -1
  76. package/dist/cli/commands/dream/index.d.ts +50 -0
  77. package/dist/cli/commands/dream/index.d.ts.map +1 -0
  78. package/dist/cli/commands/dream/index.js +282 -0
  79. package/dist/cli/commands/dream/index.js.map +1 -0
  80. package/dist/cli/commands/learn/index.d.ts +31 -5
  81. package/dist/cli/commands/learn/index.d.ts.map +1 -1
  82. package/dist/cli/commands/learn/index.js +183 -50
  83. package/dist/cli/commands/learn/index.js.map +1 -1
  84. package/dist/cli/commands/transfer/index.d.ts +55 -0
  85. package/dist/cli/commands/transfer/index.d.ts.map +1 -0
  86. package/dist/cli/commands/transfer/index.js +317 -0
  87. package/dist/cli/commands/transfer/index.js.map +1 -0
  88. package/dist/cli/index.js +224 -3
  89. package/dist/cli/index.js.map +1 -1
  90. package/dist/cli/init/index.d.ts.map +1 -1
  91. package/dist/cli/init/index.js +12 -4
  92. package/dist/cli/init/index.js.map +1 -1
  93. package/dist/cli/init/learning-init.d.ts +39 -0
  94. package/dist/cli/init/learning-init.d.ts.map +1 -0
  95. package/dist/cli/init/learning-init.js +239 -0
  96. package/dist/cli/init/learning-init.js.map +1 -0
  97. package/dist/core/memory/HNSWVectorMemory.js +1 -1
  98. package/dist/learning/baselines/BaselineCollector.d.ts +178 -0
  99. package/dist/learning/baselines/BaselineCollector.d.ts.map +1 -0
  100. package/dist/learning/baselines/BaselineCollector.js +398 -0
  101. package/dist/learning/baselines/BaselineCollector.js.map +1 -0
  102. package/dist/learning/baselines/StandardTaskSuite.d.ts +88 -0
  103. package/dist/learning/baselines/StandardTaskSuite.d.ts.map +1 -0
  104. package/dist/learning/baselines/StandardTaskSuite.js +801 -0
  105. package/dist/learning/baselines/StandardTaskSuite.js.map +1 -0
  106. package/dist/learning/baselines/index.d.ts +10 -0
  107. package/dist/learning/baselines/index.d.ts.map +1 -0
  108. package/dist/learning/baselines/index.js +15 -0
  109. package/dist/learning/baselines/index.js.map +1 -0
  110. package/dist/learning/capture/ExecutionRecorder.d.ts +97 -0
  111. package/dist/learning/capture/ExecutionRecorder.d.ts.map +1 -0
  112. package/dist/learning/capture/ExecutionRecorder.js +195 -0
  113. package/dist/learning/capture/ExecutionRecorder.js.map +1 -0
  114. package/dist/learning/capture/ExperienceCapture.d.ts +177 -0
  115. package/dist/learning/capture/ExperienceCapture.d.ts.map +1 -0
  116. package/dist/learning/capture/ExperienceCapture.js +432 -0
  117. package/dist/learning/capture/ExperienceCapture.js.map +1 -0
  118. package/dist/learning/capture/ExperienceExtractor.d.ts +219 -0
  119. package/dist/learning/capture/ExperienceExtractor.d.ts.map +1 -0
  120. package/dist/learning/capture/ExperienceExtractor.js +536 -0
  121. package/dist/learning/capture/ExperienceExtractor.js.map +1 -0
  122. package/dist/learning/capture/ExperienceStore.d.ts +196 -0
  123. package/dist/learning/capture/ExperienceStore.d.ts.map +1 -0
  124. package/dist/learning/capture/ExperienceStore.js +453 -0
  125. package/dist/learning/capture/ExperienceStore.js.map +1 -0
  126. package/dist/learning/capture/index.d.ts +12 -0
  127. package/dist/learning/capture/index.d.ts.map +1 -0
  128. package/dist/learning/capture/index.js +17 -0
  129. package/dist/learning/capture/index.js.map +1 -0
  130. package/dist/learning/dashboard/MetricsDashboard.d.ts +63 -0
  131. package/dist/learning/dashboard/MetricsDashboard.d.ts.map +1 -0
  132. package/dist/learning/dashboard/MetricsDashboard.js +230 -0
  133. package/dist/learning/dashboard/MetricsDashboard.js.map +1 -0
  134. package/dist/learning/dashboard/index.d.ts +7 -0
  135. package/dist/learning/dashboard/index.d.ts.map +1 -0
  136. package/dist/learning/dashboard/index.js +23 -0
  137. package/dist/learning/dashboard/index.js.map +1 -0
  138. package/dist/learning/dream/ConceptGraph.d.ts +160 -0
  139. package/dist/learning/dream/ConceptGraph.d.ts.map +1 -0
  140. package/dist/learning/dream/ConceptGraph.js +445 -0
  141. package/dist/learning/dream/ConceptGraph.js.map +1 -0
  142. package/dist/learning/dream/DreamEngine.d.ts +150 -0
  143. package/dist/learning/dream/DreamEngine.d.ts.map +1 -0
  144. package/dist/learning/dream/DreamEngine.js +551 -0
  145. package/dist/learning/dream/DreamEngine.js.map +1 -0
  146. package/dist/learning/dream/InsightGenerator.d.ts +152 -0
  147. package/dist/learning/dream/InsightGenerator.d.ts.map +1 -0
  148. package/dist/learning/dream/InsightGenerator.js +463 -0
  149. package/dist/learning/dream/InsightGenerator.js.map +1 -0
  150. package/dist/learning/dream/SpreadingActivation.d.ts +138 -0
  151. package/dist/learning/dream/SpreadingActivation.d.ts.map +1 -0
  152. package/dist/learning/dream/SpreadingActivation.js +320 -0
  153. package/dist/learning/dream/SpreadingActivation.js.map +1 -0
  154. package/dist/learning/dream/index.d.ts +14 -0
  155. package/dist/learning/dream/index.d.ts.map +1 -0
  156. package/dist/learning/dream/index.js +22 -0
  157. package/dist/learning/dream/index.js.map +1 -0
  158. package/dist/learning/metrics/AlertManager.d.ts +107 -0
  159. package/dist/learning/metrics/AlertManager.d.ts.map +1 -0
  160. package/dist/learning/metrics/AlertManager.js +246 -0
  161. package/dist/learning/metrics/AlertManager.js.map +1 -0
  162. package/dist/learning/metrics/LearningMetrics.d.ts +184 -0
  163. package/dist/learning/metrics/LearningMetrics.d.ts.map +1 -0
  164. package/dist/learning/metrics/LearningMetrics.js +754 -0
  165. package/dist/learning/metrics/LearningMetrics.js.map +1 -0
  166. package/dist/learning/metrics/MetricsCollector.d.ts +108 -0
  167. package/dist/learning/metrics/MetricsCollector.d.ts.map +1 -0
  168. package/dist/learning/metrics/MetricsCollector.js +240 -0
  169. package/dist/learning/metrics/MetricsCollector.js.map +1 -0
  170. package/dist/learning/metrics/MetricsStore.d.ts +149 -0
  171. package/dist/learning/metrics/MetricsStore.d.ts.map +1 -0
  172. package/dist/learning/metrics/MetricsStore.js +502 -0
  173. package/dist/learning/metrics/MetricsStore.js.map +1 -0
  174. package/dist/learning/metrics/TrendAnalyzer.d.ts +85 -0
  175. package/dist/learning/metrics/TrendAnalyzer.d.ts.map +1 -0
  176. package/dist/learning/metrics/TrendAnalyzer.js +210 -0
  177. package/dist/learning/metrics/TrendAnalyzer.js.map +1 -0
  178. package/dist/learning/metrics/index.d.ts +13 -0
  179. package/dist/learning/metrics/index.d.ts.map +1 -0
  180. package/dist/learning/metrics/index.js +39 -0
  181. package/dist/learning/metrics/index.js.map +1 -0
  182. package/dist/learning/scheduler/IdleDetector.d.ts +126 -0
  183. package/dist/learning/scheduler/IdleDetector.d.ts.map +1 -0
  184. package/dist/learning/scheduler/IdleDetector.js +281 -0
  185. package/dist/learning/scheduler/IdleDetector.js.map +1 -0
  186. package/dist/learning/scheduler/SleepCycle.d.ts +150 -0
  187. package/dist/learning/scheduler/SleepCycle.d.ts.map +1 -0
  188. package/dist/learning/scheduler/SleepCycle.js +506 -0
  189. package/dist/learning/scheduler/SleepCycle.js.map +1 -0
  190. package/dist/learning/scheduler/SleepScheduler.d.ts +133 -0
  191. package/dist/learning/scheduler/SleepScheduler.d.ts.map +1 -0
  192. package/dist/learning/scheduler/SleepScheduler.js +301 -0
  193. package/dist/learning/scheduler/SleepScheduler.js.map +1 -0
  194. package/dist/learning/scheduler/TimeBasedTrigger.d.ts +108 -0
  195. package/dist/learning/scheduler/TimeBasedTrigger.d.ts.map +1 -0
  196. package/dist/learning/scheduler/TimeBasedTrigger.js +222 -0
  197. package/dist/learning/scheduler/TimeBasedTrigger.js.map +1 -0
  198. package/dist/learning/scheduler/index.d.ts +16 -0
  199. package/dist/learning/scheduler/index.d.ts.map +1 -0
  200. package/dist/learning/scheduler/index.js +23 -0
  201. package/dist/learning/scheduler/index.js.map +1 -0
  202. package/dist/learning/synthesis/ClusteringEngine.d.ts +122 -0
  203. package/dist/learning/synthesis/ClusteringEngine.d.ts.map +1 -0
  204. package/dist/learning/synthesis/ClusteringEngine.js +356 -0
  205. package/dist/learning/synthesis/ClusteringEngine.js.map +1 -0
  206. package/dist/learning/synthesis/PatternSynthesis.d.ts +162 -0
  207. package/dist/learning/synthesis/PatternSynthesis.d.ts.map +1 -0
  208. package/dist/learning/synthesis/PatternSynthesis.js +479 -0
  209. package/dist/learning/synthesis/PatternSynthesis.js.map +1 -0
  210. package/dist/learning/synthesis/index.d.ts +10 -0
  211. package/dist/learning/synthesis/index.d.ts.map +1 -0
  212. package/dist/learning/synthesis/index.js +14 -0
  213. package/dist/learning/synthesis/index.js.map +1 -0
  214. package/dist/learning/transfer/CompatibilityScorer.d.ts +115 -0
  215. package/dist/learning/transfer/CompatibilityScorer.d.ts.map +1 -0
  216. package/dist/learning/transfer/CompatibilityScorer.js +319 -0
  217. package/dist/learning/transfer/CompatibilityScorer.js.map +1 -0
  218. package/dist/learning/transfer/TransferProtocol.d.ts +172 -0
  219. package/dist/learning/transfer/TransferProtocol.d.ts.map +1 -0
  220. package/dist/learning/transfer/TransferProtocol.js +611 -0
  221. package/dist/learning/transfer/TransferProtocol.js.map +1 -0
  222. package/dist/learning/transfer/TransferPrototype.d.ts +93 -0
  223. package/dist/learning/transfer/TransferPrototype.d.ts.map +1 -0
  224. package/dist/learning/transfer/TransferPrototype.js +433 -0
  225. package/dist/learning/transfer/TransferPrototype.js.map +1 -0
  226. package/dist/learning/transfer/TransferRegistry.d.ts +245 -0
  227. package/dist/learning/transfer/TransferRegistry.d.ts.map +1 -0
  228. package/dist/learning/transfer/TransferRegistry.js +410 -0
  229. package/dist/learning/transfer/TransferRegistry.js.map +1 -0
  230. package/dist/learning/transfer/TransferValidator.d.ts +140 -0
  231. package/dist/learning/transfer/TransferValidator.d.ts.map +1 -0
  232. package/dist/learning/transfer/TransferValidator.js +413 -0
  233. package/dist/learning/transfer/TransferValidator.js.map +1 -0
  234. package/dist/learning/transfer/index.d.ts +14 -0
  235. package/dist/learning/transfer/index.d.ts.map +1 -0
  236. package/dist/learning/transfer/index.js +22 -0
  237. package/dist/learning/transfer/index.js.map +1 -0
  238. package/dist/mcp/handlers/task-orchestrate.d.ts +11 -0
  239. package/dist/mcp/handlers/task-orchestrate.d.ts.map +1 -1
  240. package/dist/mcp/handlers/task-orchestrate.js +297 -4
  241. package/dist/mcp/handlers/task-orchestrate.js.map +1 -1
  242. package/dist/mcp/handlers/test/test-generate-enhanced.d.ts +26 -2
  243. package/dist/mcp/handlers/test/test-generate-enhanced.d.ts.map +1 -1
  244. package/dist/mcp/handlers/test/test-generate-enhanced.js +159 -27
  245. package/dist/mcp/handlers/test/test-generate-enhanced.js.map +1 -1
  246. package/dist/mcp/server-instructions.d.ts +1 -1
  247. package/dist/mcp/server-instructions.js +1 -1
  248. package/dist/mcp/server.d.ts.map +1 -1
  249. package/dist/mcp/server.js +2 -1
  250. package/dist/mcp/server.js.map +1 -1
  251. package/dist/mcp/services/AgentRegistry.d.ts +6 -1
  252. package/dist/mcp/services/AgentRegistry.d.ts.map +1 -1
  253. package/dist/mcp/services/AgentRegistry.js +34 -3
  254. package/dist/mcp/services/AgentRegistry.js.map +1 -1
  255. package/package.json +5 -2
@@ -0,0 +1,282 @@
1
+ "use strict";
2
+ /**
3
+ * Dream CLI Commands - Nightly-Learner Phase 2
4
+ *
5
+ * Commands for running dream cycles and viewing dream insights.
6
+ * Provides interface to the DreamEngine for pattern discovery.
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 __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
20
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
21
+ }) : function(o, v) {
22
+ o["default"] = v;
23
+ });
24
+ var __importStar = (this && this.__importStar) || (function () {
25
+ var ownKeys = function(o) {
26
+ ownKeys = Object.getOwnPropertyNames || function (o) {
27
+ var ar = [];
28
+ for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
29
+ return ar;
30
+ };
31
+ return ownKeys(o);
32
+ };
33
+ return function (mod) {
34
+ if (mod && mod.__esModule) return mod;
35
+ var result = {};
36
+ if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
37
+ __setModuleDefault(result, mod);
38
+ return result;
39
+ };
40
+ })();
41
+ var __importDefault = (this && this.__importDefault) || function (mod) {
42
+ return (mod && mod.__esModule) ? mod : { "default": mod };
43
+ };
44
+ Object.defineProperty(exports, "__esModule", { value: true });
45
+ exports.DreamCommand = void 0;
46
+ exports.dreamRun = dreamRun;
47
+ exports.dreamInsights = dreamInsights;
48
+ exports.dreamStatus = dreamStatus;
49
+ const chalk_1 = __importDefault(require("chalk"));
50
+ const ora_1 = __importDefault(require("ora"));
51
+ const path = __importStar(require("path"));
52
+ const DreamEngine_1 = require("../../../learning/dream/DreamEngine");
53
+ const InsightGenerator_1 = require("../../../learning/dream/InsightGenerator");
54
+ const ProcessExit_1 = require("../../../utils/ProcessExit");
55
+ /**
56
+ * DreamCommand - CLI handler for dream engine operations
57
+ */
58
+ class DreamCommand {
59
+ static getDbPath() {
60
+ return path.join(process.cwd(), '.agentic-qe', 'memory.db');
61
+ }
62
+ /**
63
+ * Execute dream command
64
+ */
65
+ static async execute(subcommand, options = {}) {
66
+ switch (subcommand) {
67
+ case 'run':
68
+ await this.runDreamCycle(options);
69
+ break;
70
+ case 'insights':
71
+ await this.showInsights(options);
72
+ break;
73
+ case 'status':
74
+ await this.showStatus(options);
75
+ break;
76
+ default:
77
+ console.error(chalk_1.default.red(`❌ Unknown dream command: ${subcommand}`));
78
+ this.showHelp();
79
+ ProcessExit_1.ProcessExit.exitIfNotTest(1);
80
+ }
81
+ }
82
+ /**
83
+ * Run a dream cycle
84
+ */
85
+ static async runDreamCycle(options) {
86
+ const spinner = (0, ora_1.default)('Initializing dream engine...').start();
87
+ try {
88
+ const duration = options.duration || 5000; // Default 5 seconds for CLI
89
+ const targetInsights = options.insights || 5;
90
+ const engine = new DreamEngine_1.DreamEngine({
91
+ dbPath: this.getDbPath(),
92
+ cycleDuration: duration,
93
+ targetInsights,
94
+ debug: options.verbose,
95
+ });
96
+ spinner.text = 'Loading patterns as concepts...';
97
+ await engine.initialize();
98
+ const stats = engine.getState();
99
+ spinner.text = `Running dream cycle (${duration / 1000}s)...`;
100
+ const result = await engine.dream();
101
+ spinner.succeed(`Dream cycle complete!`);
102
+ console.log(chalk_1.default.blue('\n🌙 Dream Cycle Results\n'));
103
+ console.log(`├─ Cycle ID: ${chalk_1.default.cyan(result.cycleId)}`);
104
+ console.log(`├─ Duration: ${chalk_1.default.yellow((result.duration / 1000).toFixed(1))}s`);
105
+ console.log(`├─ Status: ${result.status === 'completed' ? chalk_1.default.green('completed') : chalk_1.default.red(result.status)}`);
106
+ console.log(`├─ Concepts Processed: ${chalk_1.default.cyan(result.conceptsProcessed)}`);
107
+ console.log(`├─ Associations Found: ${chalk_1.default.cyan(result.associationsFound)}`);
108
+ console.log(`└─ Insights Generated: ${chalk_1.default.green(result.insightsGenerated)}`);
109
+ if (result.insights.length > 0) {
110
+ console.log(chalk_1.default.blue('\n💡 Generated Insights:\n'));
111
+ const displayInsights = result.insights.slice(0, options.limit || 10);
112
+ for (const insight of displayInsights) {
113
+ const typeIcon = this.getTypeIcon(insight.type);
114
+ const actionableTag = insight.actionable ? chalk_1.default.green(' [ACTIONABLE]') : '';
115
+ console.log(`${typeIcon} ${chalk_1.default.white(insight.description)}${actionableTag}`);
116
+ console.log(chalk_1.default.gray(` Novelty: ${(insight.noveltyScore * 100).toFixed(0)}% | Confidence: ${(insight.confidenceScore * 100).toFixed(0)}%`));
117
+ if (insight.suggestedAction && options.verbose) {
118
+ console.log(chalk_1.default.yellow(` → ${insight.suggestedAction}`));
119
+ }
120
+ console.log('');
121
+ }
122
+ if (result.insights.length > (options.limit || 10)) {
123
+ console.log(chalk_1.default.gray(`... and ${result.insights.length - (options.limit || 10)} more insights`));
124
+ }
125
+ }
126
+ engine.close();
127
+ }
128
+ catch (error) {
129
+ spinner.fail('Dream cycle failed');
130
+ console.error(chalk_1.default.red(`Error: ${error instanceof Error ? error.message : String(error)}`));
131
+ ProcessExit_1.ProcessExit.exitIfNotTest(1);
132
+ }
133
+ }
134
+ /**
135
+ * Show stored insights
136
+ */
137
+ static async showInsights(options) {
138
+ const spinner = (0, ora_1.default)('Loading dream insights...').start();
139
+ try {
140
+ const generator = new InsightGenerator_1.InsightGenerator(null, {
141
+ dbPath: this.getDbPath(),
142
+ });
143
+ const insightOptions = {
144
+ limit: options.limit || 20,
145
+ };
146
+ if (options.type) {
147
+ insightOptions.type = options.type;
148
+ }
149
+ if (options.actionable) {
150
+ insightOptions.actionableOnly = true;
151
+ }
152
+ // Use available methods: getPendingInsights or getInsightsByType
153
+ let insights;
154
+ if (options.type) {
155
+ insights = generator.getInsightsByType(options.type, insightOptions.limit);
156
+ }
157
+ else {
158
+ insights = generator.getPendingInsights(insightOptions.limit);
159
+ }
160
+ spinner.succeed(`Found ${insights.length} insights`);
161
+ if (options.format === 'json') {
162
+ console.log(JSON.stringify(insights, null, 2));
163
+ return;
164
+ }
165
+ console.log(chalk_1.default.blue('\n💡 Dream Insights\n'));
166
+ if (insights.length === 0) {
167
+ console.log(chalk_1.default.yellow('No insights found. Run "aqe dream run" to generate insights.'));
168
+ return;
169
+ }
170
+ for (const insight of insights) {
171
+ const typeIcon = this.getTypeIcon(insight.type);
172
+ const actionableTag = insight.actionable ? chalk_1.default.green(' [ACTIONABLE]') : '';
173
+ console.log(`${typeIcon} ${chalk_1.default.white(insight.description)}${actionableTag}`);
174
+ console.log(chalk_1.default.gray(` ID: ${insight.id.substring(0, 20)}...`));
175
+ console.log(chalk_1.default.gray(` Novelty: ${(insight.noveltyScore * 100).toFixed(0)}% | Confidence: ${(insight.confidenceScore * 100).toFixed(0)}%`));
176
+ if (insight.suggestedAction) {
177
+ console.log(chalk_1.default.yellow(` → ${insight.suggestedAction}`));
178
+ }
179
+ if (options.verbose && insight.associatedConcepts.length > 0) {
180
+ console.log(chalk_1.default.gray(` Concepts: ${insight.associatedConcepts.slice(0, 3).join(', ')}`));
181
+ }
182
+ console.log('');
183
+ }
184
+ generator.close();
185
+ }
186
+ catch (error) {
187
+ spinner.fail('Failed to load insights');
188
+ console.error(chalk_1.default.red(`Error: ${error instanceof Error ? error.message : String(error)}`));
189
+ ProcessExit_1.ProcessExit.exitIfNotTest(1);
190
+ }
191
+ }
192
+ /**
193
+ * Show dream engine status
194
+ */
195
+ static async showStatus(options) {
196
+ const spinner = (0, ora_1.default)('Loading dream engine status...').start();
197
+ try {
198
+ const engine = new DreamEngine_1.DreamEngine({
199
+ dbPath: this.getDbPath(),
200
+ autoLoadPatterns: false, // Don't load patterns just for status
201
+ });
202
+ await engine.initialize();
203
+ const state = engine.getState();
204
+ const graphStats = engine.getGraphStats();
205
+ spinner.succeed('Status loaded');
206
+ console.log(chalk_1.default.blue('\n🌙 Dream Engine Status\n'));
207
+ console.log(`├─ Running: ${state.isRunning ? chalk_1.default.green('Yes') : chalk_1.default.gray('No')}`);
208
+ console.log(`├─ Cycles Completed: ${chalk_1.default.cyan(state.cyclesCompleted)}`);
209
+ console.log(`├─ Total Insights: ${chalk_1.default.cyan(state.totalInsightsGenerated)}`);
210
+ console.log(`├─ Avg Insights/Cycle: ${chalk_1.default.cyan(state.averageInsightsPerCycle.toFixed(1))}`);
211
+ console.log(`└─ Last Cycle: ${state.lastCycleTime ? chalk_1.default.gray(state.lastCycleTime.toISOString()) : chalk_1.default.gray('Never')}`);
212
+ console.log(chalk_1.default.blue('\n📊 Concept Graph:\n'));
213
+ console.log(`├─ Total Nodes: ${chalk_1.default.cyan(graphStats.nodeCount)}`);
214
+ console.log(`├─ Total Edges: ${chalk_1.default.cyan(graphStats.edgeCount)}`);
215
+ console.log(`├─ Avg Edges/Node: ${chalk_1.default.cyan(graphStats.avgEdgesPerNode.toFixed(2))}`);
216
+ console.log(`└─ Avg Activation: ${chalk_1.default.cyan((graphStats.avgActivation * 100).toFixed(1))}%`);
217
+ if (graphStats.byType) {
218
+ console.log(chalk_1.default.blue('\n📋 Nodes by Type:\n'));
219
+ for (const [type, count] of Object.entries(graphStats.byType)) {
220
+ console.log(` ${type}: ${chalk_1.default.cyan(count)}`);
221
+ }
222
+ }
223
+ engine.close();
224
+ }
225
+ catch (error) {
226
+ spinner.fail('Failed to load status');
227
+ console.error(chalk_1.default.red(`Error: ${error instanceof Error ? error.message : String(error)}`));
228
+ ProcessExit_1.ProcessExit.exitIfNotTest(1);
229
+ }
230
+ }
231
+ /**
232
+ * Get icon for insight type
233
+ */
234
+ static getTypeIcon(type) {
235
+ switch (type) {
236
+ case 'new_pattern':
237
+ return chalk_1.default.green('🆕');
238
+ case 'optimization':
239
+ return chalk_1.default.blue('⚡');
240
+ case 'warning':
241
+ return chalk_1.default.yellow('⚠️');
242
+ case 'connection':
243
+ return chalk_1.default.cyan('🔗');
244
+ case 'transfer':
245
+ return chalk_1.default.magenta('📤');
246
+ default:
247
+ return chalk_1.default.gray('•');
248
+ }
249
+ }
250
+ /**
251
+ * Show help
252
+ */
253
+ static showHelp() {
254
+ console.log(chalk_1.default.blue('\n🌙 Dream Engine Commands\n'));
255
+ console.log(chalk_1.default.cyan(' aqe dream run') + chalk_1.default.gray(' - Run a dream cycle'));
256
+ console.log(chalk_1.default.cyan(' aqe dream insights') + chalk_1.default.gray(' - View stored insights'));
257
+ console.log(chalk_1.default.cyan(' aqe dream status') + chalk_1.default.gray(' - Show engine status'));
258
+ console.log('');
259
+ console.log(chalk_1.default.blue('Options:\n'));
260
+ console.log(chalk_1.default.gray(' --duration <ms> Duration of dream cycle (default: 5000)'));
261
+ console.log(chalk_1.default.gray(' --insights <n> Target number of insights (default: 5)'));
262
+ console.log(chalk_1.default.gray(' --limit <n> Limit results (default: 20)'));
263
+ console.log(chalk_1.default.gray(' --type <type> Filter by insight type'));
264
+ console.log(chalk_1.default.gray(' --actionable Show only actionable insights'));
265
+ console.log(chalk_1.default.gray(' --verbose Show detailed output'));
266
+ console.log(chalk_1.default.gray(' --format json Output as JSON'));
267
+ console.log('');
268
+ }
269
+ }
270
+ exports.DreamCommand = DreamCommand;
271
+ exports.default = DreamCommand;
272
+ // Export command functions for CLI registration
273
+ async function dreamRun(options) {
274
+ await DreamCommand.execute('run', options);
275
+ }
276
+ async function dreamInsights(options) {
277
+ await DreamCommand.execute('insights', options);
278
+ }
279
+ async function dreamStatus(options) {
280
+ await DreamCommand.execute('status', options);
281
+ }
282
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/cli/commands/dream/index.ts"],"names":[],"mappings":"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"}
@@ -12,6 +12,10 @@ export interface LearnCommandOptions {
12
12
  output?: string;
13
13
  task?: string;
14
14
  all?: boolean;
15
+ period?: string;
16
+ format?: 'table' | 'json';
17
+ metric?: string;
18
+ ack?: string;
15
19
  }
16
20
  /**
17
21
  * LearningCommand - CLI handler for learning operations
@@ -57,6 +61,30 @@ export declare class LearningCommand {
57
61
  * Export learning data
58
62
  */
59
63
  private static exportLearningData;
64
+ /**
65
+ * Show comprehensive learning metrics (Phase 3)
66
+ */
67
+ private static showMetrics;
68
+ /**
69
+ * Show trend analysis (Phase 3)
70
+ */
71
+ private static showTrends;
72
+ /**
73
+ * Show and manage alerts (Phase 3)
74
+ */
75
+ private static showAlerts;
76
+ /**
77
+ * Parse period string to days
78
+ */
79
+ private static parsePeriod;
80
+ /**
81
+ * Parse trend period string
82
+ */
83
+ private static parseTrendPeriod;
84
+ /**
85
+ * Convert trend period to days
86
+ */
87
+ private static periodToDays;
60
88
  /**
61
89
  * Show command help
62
90
  */
@@ -72,9 +100,7 @@ export declare function learnHistory(options: LearnCommandOptions): Promise<void
72
100
  export declare function learnTrain(options: LearnCommandOptions): Promise<void>;
73
101
  export declare function learnReset(options: LearnCommandOptions): Promise<void>;
74
102
  export declare function learnExport(options: LearnCommandOptions): Promise<void>;
75
- /**
76
- * Show learning improvement metrics from unified memory.db
77
- * ARCHITECTURE (v2.2.0): All data now stored in .agentic-qe/memory.db
78
- */
79
- export declare function learnMetrics(options: any): Promise<void>;
103
+ export declare function learnMetrics(options: LearnCommandOptions): Promise<void>;
104
+ export declare function learnTrends(options: LearnCommandOptions): Promise<void>;
105
+ export declare function learnAlerts(options: LearnCommandOptions): Promise<void>;
80
106
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/cli/commands/learn/index.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAWH,MAAM,WAAW,mBAAmB;IAClC,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,GAAG,CAAC,EAAE,OAAO,CAAC;CACf;AAED;;;;;GAKG;AACH,qBAAa,eAAe;IAC1B;;;OAGG;mBACkB,gBAAgB;IAIrC;;OAEG;WACU,OAAO,CAAC,UAAU,EAAE,MAAM,EAAE,OAAO,GAAE,mBAAwB,GAAG,OAAO,CAAC,IAAI,CAAC;IA8B1F;;OAEG;mBACkB,UAAU;IAuH/B;;OAEG;mBACkB,cAAc;IAoDnC;;OAEG;mBACkB,eAAe;IAmCpC;;OAEG;mBACkB,WAAW;IA8ChC;;OAEG;mBACkB,WAAW;IA0ChC;;OAEG;mBACkB,aAAa;IA+BlC;;OAEG;mBACkB,kBAAkB;IAoCvC;;OAEG;IACH,OAAO,CAAC,MAAM,CAAC,QAAQ;IA0BvB,OAAO,CAAC,MAAM,CAAC,YAAY;IAM3B,OAAO,CAAC,MAAM,CAAC,iBAAiB;IAQhC,OAAO,CAAC,MAAM,CAAC,WAAW;CAK3B;AAGD,wBAAsB,WAAW,CAAC,OAAO,EAAE,mBAAmB,GAAG,OAAO,CAAC,IAAI,CAAC,CAE7E;AAED,wBAAsB,WAAW,CAAC,OAAO,EAAE,mBAAmB,GAAG,OAAO,CAAC,IAAI,CAAC,CAE7E;AAED,wBAAsB,YAAY,CAAC,OAAO,EAAE,mBAAmB,GAAG,OAAO,CAAC,IAAI,CAAC,CAE9E;AAED,wBAAsB,YAAY,CAAC,OAAO,EAAE,mBAAmB,GAAG,OAAO,CAAC,IAAI,CAAC,CAE9E;AAED,wBAAsB,UAAU,CAAC,OAAO,EAAE,mBAAmB,GAAG,OAAO,CAAC,IAAI,CAAC,CAE5E;AAED,wBAAsB,UAAU,CAAC,OAAO,EAAE,mBAAmB,GAAG,OAAO,CAAC,IAAI,CAAC,CAE5E;AAED,wBAAsB,WAAW,CAAC,OAAO,EAAE,mBAAmB,GAAG,OAAO,CAAC,IAAI,CAAC,CAE7E;AAED;;;GAGG;AACH,wBAAsB,YAAY,CAAC,OAAO,EAAE,GAAG,GAAG,OAAO,CAAC,IAAI,CAAC,CAyD9D"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/cli/commands/learn/index.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAaH,MAAM,WAAW,mBAAmB;IAClC,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,GAAG,CAAC,EAAE,OAAO,CAAC;IACd,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,MAAM,CAAC,EAAE,OAAO,GAAG,MAAM,CAAC;IAC1B,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,GAAG,CAAC,EAAE,MAAM,CAAC;CACd;AAED;;;;;GAKG;AACH,qBAAa,eAAe;IAC1B;;;OAGG;mBACkB,gBAAgB;IAIrC;;OAEG;WACU,OAAO,CAAC,UAAU,EAAE,MAAM,EAAE,OAAO,GAAE,mBAAwB,GAAG,OAAO,CAAC,IAAI,CAAC;IAuC1F;;OAEG;mBACkB,UAAU;IAuH/B;;OAEG;mBACkB,cAAc;IAoDnC;;OAEG;mBACkB,eAAe;IAmCpC;;OAEG;mBACkB,WAAW;IA8ChC;;OAEG;mBACkB,WAAW;IA0ChC;;OAEG;mBACkB,aAAa;IA+BlC;;OAEG;mBACkB,kBAAkB;IAoCvC;;OAEG;mBACkB,WAAW;IA4BhC;;OAEG;mBACkB,UAAU;IAqC/B;;OAEG;mBACkB,UAAU;IAyC/B;;OAEG;IACH,OAAO,CAAC,MAAM,CAAC,WAAW;IAkB1B;;OAEG;IACH,OAAO,CAAC,MAAM,CAAC,gBAAgB;IAgB/B;;OAEG;IACH,OAAO,CAAC,MAAM,CAAC,YAAY;IAa3B;;OAEG;IACH,OAAO,CAAC,MAAM,CAAC,QAAQ;IAwCvB,OAAO,CAAC,MAAM,CAAC,YAAY;IAM3B,OAAO,CAAC,MAAM,CAAC,iBAAiB;IAQhC,OAAO,CAAC,MAAM,CAAC,WAAW;CAK3B;AAGD,wBAAsB,WAAW,CAAC,OAAO,EAAE,mBAAmB,GAAG,OAAO,CAAC,IAAI,CAAC,CAE7E;AAED,wBAAsB,WAAW,CAAC,OAAO,EAAE,mBAAmB,GAAG,OAAO,CAAC,IAAI,CAAC,CAE7E;AAED,wBAAsB,YAAY,CAAC,OAAO,EAAE,mBAAmB,GAAG,OAAO,CAAC,IAAI,CAAC,CAE9E;AAED,wBAAsB,YAAY,CAAC,OAAO,EAAE,mBAAmB,GAAG,OAAO,CAAC,IAAI,CAAC,CAE9E;AAED,wBAAsB,UAAU,CAAC,OAAO,EAAE,mBAAmB,GAAG,OAAO,CAAC,IAAI,CAAC,CAE5E;AAED,wBAAsB,UAAU,CAAC,OAAO,EAAE,mBAAmB,GAAG,OAAO,CAAC,IAAI,CAAC,CAE5E;AAED,wBAAsB,WAAW,CAAC,OAAO,EAAE,mBAAmB,GAAG,OAAO,CAAC,IAAI,CAAC,CAE7E;AAED,wBAAsB,YAAY,CAAC,OAAO,EAAE,mBAAmB,GAAG,OAAO,CAAC,IAAI,CAAC,CAE9E;AAED,wBAAsB,WAAW,CAAC,OAAO,EAAE,mBAAmB,GAAG,OAAO,CAAC,IAAI,CAAC,CAE7E;AAED,wBAAsB,WAAW,CAAC,OAAO,EAAE,mBAAmB,GAAG,OAAO,CAAC,IAAI,CAAC,CAE7E"}
@@ -51,12 +51,16 @@ exports.learnTrain = learnTrain;
51
51
  exports.learnReset = learnReset;
52
52
  exports.learnExport = learnExport;
53
53
  exports.learnMetrics = learnMetrics;
54
+ exports.learnTrends = learnTrends;
55
+ exports.learnAlerts = learnAlerts;
54
56
  const chalk_1 = __importDefault(require("chalk"));
55
57
  const ora_1 = __importDefault(require("ora"));
56
58
  const fs = __importStar(require("fs-extra"));
57
59
  const MemoryManagerFactory_1 = require("../../../core/memory/MemoryManagerFactory");
58
60
  const LearningEngine_1 = require("../../../learning/LearningEngine");
59
61
  const ProcessExit_1 = require("../../../utils/ProcessExit");
62
+ const metrics_1 = require("../../../learning/metrics");
63
+ const dashboard_1 = require("../../../learning/dashboard");
60
64
  /**
61
65
  * LearningCommand - CLI handler for learning operations
62
66
  *
@@ -97,6 +101,15 @@ class LearningCommand {
97
101
  case 'export':
98
102
  await this.exportLearningData(options);
99
103
  break;
104
+ case 'metrics':
105
+ await this.showMetrics(options);
106
+ break;
107
+ case 'trends':
108
+ await this.showTrends(options);
109
+ break;
110
+ case 'alerts':
111
+ await this.showAlerts(options);
112
+ break;
100
113
  default:
101
114
  console.error(chalk_1.default.red(`❌ Unknown learn command: ${subcommand}`));
102
115
  this.showHelp();
@@ -395,6 +408,154 @@ class LearningCommand {
395
408
  ProcessExit_1.ProcessExit.exitIfNotTest(1);
396
409
  }
397
410
  }
411
+ /**
412
+ * Show comprehensive learning metrics (Phase 3)
413
+ */
414
+ static async showMetrics(options) {
415
+ const spinner = (0, ora_1.default)('Loading learning metrics...').start();
416
+ try {
417
+ const memoryManager = await this.getMemoryManager();
418
+ const metricsCollector = new metrics_1.MetricsCollector(memoryManager);
419
+ // Parse period option (e.g., "7d", "30d", "1m")
420
+ const periodDays = this.parsePeriod(options.period || '7d');
421
+ // Collect metrics
422
+ const metrics = await metricsCollector.collectMetrics(periodDays);
423
+ spinner.succeed('Learning metrics loaded');
424
+ // Display metrics
425
+ dashboard_1.MetricsDashboard.displayMetrics(metrics, {
426
+ detailed: options.detailed,
427
+ format: options.format
428
+ });
429
+ }
430
+ catch (error) {
431
+ spinner.fail('Failed to load metrics');
432
+ console.error(chalk_1.default.red('❌ Error:'), error.message);
433
+ ProcessExit_1.ProcessExit.exitIfNotTest(1);
434
+ }
435
+ }
436
+ /**
437
+ * Show trend analysis (Phase 3)
438
+ */
439
+ static async showTrends(options) {
440
+ const spinner = (0, ora_1.default)('Analyzing trends...').start();
441
+ try {
442
+ const memoryManager = await this.getMemoryManager();
443
+ const metricsCollector = new metrics_1.MetricsCollector(memoryManager);
444
+ const trendAnalyzer = new metrics_1.TrendAnalyzer(metricsCollector);
445
+ // Parse period
446
+ const period = this.parseTrendPeriod(options.period || 'weekly');
447
+ // Analyze trends
448
+ let trends;
449
+ if (options.metric) {
450
+ // Single metric
451
+ const trend = await trendAnalyzer.analyzeTrend(options.metric, this.periodToDays(period));
452
+ trends = [trend];
453
+ }
454
+ else {
455
+ // All metrics
456
+ trends = await trendAnalyzer.analyzeAllTrends(period);
457
+ }
458
+ spinner.succeed('Trend analysis complete');
459
+ // Display trends
460
+ dashboard_1.MetricsDashboard.displayTrends(trends, {
461
+ detailed: options.detailed,
462
+ format: options.format
463
+ });
464
+ }
465
+ catch (error) {
466
+ spinner.fail('Failed to analyze trends');
467
+ console.error(chalk_1.default.red('❌ Error:'), error.message);
468
+ ProcessExit_1.ProcessExit.exitIfNotTest(1);
469
+ }
470
+ }
471
+ /**
472
+ * Show and manage alerts (Phase 3)
473
+ */
474
+ static async showAlerts(options) {
475
+ const spinner = (0, ora_1.default)('Loading alerts...').start();
476
+ try {
477
+ const memoryManager = await this.getMemoryManager();
478
+ const alertManager = new metrics_1.AlertManager(memoryManager);
479
+ await alertManager.initialize();
480
+ // Handle acknowledgment if provided
481
+ if (options.ack) {
482
+ spinner.text = `Acknowledging alert ${options.ack}...`;
483
+ await alertManager.acknowledgeAlert(options.ack);
484
+ spinner.succeed(`Alert ${options.ack} acknowledged`);
485
+ return;
486
+ }
487
+ // Get alerts
488
+ const alerts = options.all
489
+ ? alertManager.getAllAlerts()
490
+ : alertManager.getActiveAlerts();
491
+ spinner.succeed(`Found ${alerts.length} alerts`);
492
+ // Display alerts
493
+ dashboard_1.MetricsDashboard.displayAlerts(alerts, {
494
+ format: options.format
495
+ });
496
+ // Show help for acknowledgment
497
+ if (alerts.length > 0 && !options.all) {
498
+ console.log(chalk_1.default.gray('Use --ack <id> to acknowledge an alert'));
499
+ console.log(chalk_1.default.gray('Use --all to show all alerts (including acknowledged)\n'));
500
+ }
501
+ }
502
+ catch (error) {
503
+ spinner.fail('Failed to load alerts');
504
+ console.error(chalk_1.default.red('❌ Error:'), error.message);
505
+ ProcessExit_1.ProcessExit.exitIfNotTest(1);
506
+ }
507
+ }
508
+ /**
509
+ * Parse period string to days
510
+ */
511
+ static parsePeriod(period) {
512
+ const match = period.match(/^(\d+)([dhwm])$/);
513
+ if (!match) {
514
+ return 7; // Default to 7 days
515
+ }
516
+ const value = parseInt(match[1], 10);
517
+ const unit = match[2];
518
+ switch (unit) {
519
+ case 'd': return value;
520
+ case 'h': return Math.max(1, Math.floor(value / 24));
521
+ case 'w': return value * 7;
522
+ case 'm': return value * 30;
523
+ default: return 7;
524
+ }
525
+ }
526
+ /**
527
+ * Parse trend period string
528
+ */
529
+ static parseTrendPeriod(period) {
530
+ switch (period.toLowerCase()) {
531
+ case 'daily':
532
+ case 'd':
533
+ return metrics_1.TrendPeriod.DAILY;
534
+ case 'weekly':
535
+ case 'w':
536
+ return metrics_1.TrendPeriod.WEEKLY;
537
+ case 'monthly':
538
+ case 'm':
539
+ return metrics_1.TrendPeriod.MONTHLY;
540
+ default:
541
+ return metrics_1.TrendPeriod.WEEKLY;
542
+ }
543
+ }
544
+ /**
545
+ * Convert trend period to days
546
+ */
547
+ static periodToDays(period) {
548
+ switch (period) {
549
+ case metrics_1.TrendPeriod.DAILY:
550
+ return 1;
551
+ case metrics_1.TrendPeriod.WEEKLY:
552
+ return 7;
553
+ case metrics_1.TrendPeriod.MONTHLY:
554
+ return 30;
555
+ default:
556
+ return 7;
557
+ }
558
+ }
398
559
  /**
399
560
  * Show command help
400
561
  */
@@ -407,18 +568,32 @@ class LearningCommand {
407
568
  console.log(chalk_1.default.cyan(' aqe learn train') + chalk_1.default.gray(' - Trigger manual training'));
408
569
  console.log(chalk_1.default.cyan(' aqe learn reset') + chalk_1.default.gray(' - Reset learning state'));
409
570
  console.log(chalk_1.default.cyan(' aqe learn export') + chalk_1.default.gray(' - Export learning data'));
571
+ console.log(chalk_1.default.blue('\nPhase 3 - Metrics & Analytics:\n'));
572
+ console.log(chalk_1.default.cyan(' aqe learn metrics') + chalk_1.default.gray(' - Show learning metrics'));
573
+ console.log(chalk_1.default.cyan(' aqe learn trends') + chalk_1.default.gray(' - Show trend analysis'));
574
+ console.log(chalk_1.default.cyan(' aqe learn alerts') + chalk_1.default.gray(' - Show active alerts'));
410
575
  console.log(chalk_1.default.blue('\nOptions:\n'));
411
576
  console.log(chalk_1.default.gray(' --agent <id> - Target specific agent'));
412
577
  console.log(chalk_1.default.gray(' --detailed - Show detailed information'));
413
578
  console.log(chalk_1.default.gray(' --limit <number> - Limit results'));
414
579
  console.log(chalk_1.default.gray(' --confirm - Confirm destructive operation'));
415
580
  console.log(chalk_1.default.gray(' --output <file> - Output file path'));
416
- console.log(chalk_1.default.gray(' --all - Apply to all agents'));
581
+ console.log(chalk_1.default.gray(' --all - Apply to all agents / Show all alerts'));
582
+ console.log(chalk_1.default.gray(' --period <period> - Time period (7d, 30d, 1m, weekly, monthly)'));
583
+ console.log(chalk_1.default.gray(' --format <format> - Output format (table, json)'));
584
+ console.log(chalk_1.default.gray(' --metric <name> - Specific metric to analyze'));
585
+ console.log(chalk_1.default.gray(' --ack <id> - Acknowledge alert by ID'));
417
586
  console.log(chalk_1.default.blue('\nExamples:\n'));
418
587
  console.log(chalk_1.default.gray(' aqe learn status --agent test-gen --detailed'));
419
588
  console.log(chalk_1.default.gray(' aqe learn enable --all'));
420
589
  console.log(chalk_1.default.gray(' aqe learn history --limit 50'));
421
590
  console.log(chalk_1.default.gray(' aqe learn export --output learning.json'));
591
+ console.log(chalk_1.default.blue('\nPhase 3 Examples:\n'));
592
+ console.log(chalk_1.default.gray(' aqe learn metrics --period 30d --detailed'));
593
+ console.log(chalk_1.default.gray(' aqe learn metrics --format json'));
594
+ console.log(chalk_1.default.gray(' aqe learn trends --metric discoveryRate --period weekly'));
595
+ console.log(chalk_1.default.gray(' aqe learn alerts --all'));
596
+ console.log(chalk_1.default.gray(' aqe learn alerts --ack alert-12345'));
422
597
  console.log();
423
598
  }
424
599
  // Helper methods
@@ -470,55 +645,13 @@ async function learnReset(options) {
470
645
  async function learnExport(options) {
471
646
  await LearningCommand.execute('export', options);
472
647
  }
473
- /**
474
- * Show learning improvement metrics from unified memory.db
475
- * ARCHITECTURE (v2.2.0): All data now stored in .agentic-qe/memory.db
476
- */
477
648
  async function learnMetrics(options) {
478
- const spinner = (0, ora_1.default)('Loading learning metrics from memory.db...').start();
479
- try {
480
- const memoryManager = await (0, MemoryManagerFactory_1.initializeSharedMemoryManager)();
481
- // Query metrics from patterns table via SwarmMemoryManager
482
- // Note: The patterns table uses 'type' column, not 'agent_id'
483
- const metrics = memoryManager.queryRaw(`
484
- SELECT
485
- type as agent,
486
- AVG(confidence) as avg_confidence,
487
- COUNT(*) as total_patterns,
488
- SUM(CASE WHEN confidence > 0.7 THEN 1 ELSE 0 END) * 100.0 / COUNT(*) as high_confidence_rate
489
- FROM patterns
490
- ${options.agent ? `WHERE type LIKE ?` : ''}
491
- GROUP BY type
492
- ORDER BY avg_confidence DESC
493
- `, options.agent ? [`%${options.agent}%`] : []);
494
- spinner.succeed('Learning metrics loaded');
495
- if (!metrics || metrics.length === 0) {
496
- console.log(chalk_1.default.yellow('\n⚠️ No learning metrics found'));
497
- console.log(chalk_1.default.gray('Run some agent tasks to generate learning data\n'));
498
- return;
499
- }
500
- const days = options.days || '7';
501
- console.log(chalk_1.default.blue(`\n📊 Learning Metrics (Last ${days} Days)\n`));
502
- // Format as table
503
- console.log(chalk_1.default.cyan('Agent'.padEnd(30)) +
504
- chalk_1.default.cyan('Avg Confidence'.padEnd(18)) +
505
- chalk_1.default.cyan('Total Patterns'.padEnd(18)) +
506
- chalk_1.default.cyan('High Confidence %'));
507
- console.log('─'.repeat(84));
508
- metrics.forEach((row) => {
509
- const confidenceColor = row.avg_confidence > 0.7 ? chalk_1.default.green :
510
- row.avg_confidence > 0.5 ? chalk_1.default.yellow : chalk_1.default.red;
511
- console.log(row.agent.padEnd(30) +
512
- confidenceColor((row.avg_confidence * 100).toFixed(1) + '%').padEnd(18) +
513
- chalk_1.default.cyan(row.total_patterns.toString()).padEnd(18) +
514
- chalk_1.default.cyan((row.high_confidence_rate || 0).toFixed(1) + '%'));
515
- });
516
- console.log();
517
- }
518
- catch (error) {
519
- spinner.fail('Failed to load metrics');
520
- console.error(chalk_1.default.red('❌ Error:'), error.message);
521
- ProcessExit_1.ProcessExit.exitIfNotTest(1);
522
- }
649
+ await LearningCommand.execute('metrics', options);
650
+ }
651
+ async function learnTrends(options) {
652
+ await LearningCommand.execute('trends', options);
653
+ }
654
+ async function learnAlerts(options) {
655
+ await LearningCommand.execute('alerts', options);
523
656
  }
524
657
  //# sourceMappingURL=index.js.map