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.
- package/CHANGELOG.md +122 -0
- package/README.md +1 -1
- package/dist/agents/ApiContractValidatorAgent.d.ts +5 -0
- package/dist/agents/ApiContractValidatorAgent.d.ts.map +1 -1
- package/dist/agents/ApiContractValidatorAgent.js +41 -0
- package/dist/agents/ApiContractValidatorAgent.js.map +1 -1
- package/dist/agents/BaseAgent.d.ts +10 -0
- package/dist/agents/BaseAgent.d.ts.map +1 -1
- package/dist/agents/BaseAgent.js +113 -0
- package/dist/agents/BaseAgent.js.map +1 -1
- package/dist/agents/CodeComplexityAnalyzerAgent.d.ts +5 -0
- package/dist/agents/CodeComplexityAnalyzerAgent.d.ts.map +1 -1
- package/dist/agents/CodeComplexityAnalyzerAgent.js +47 -0
- package/dist/agents/CodeComplexityAnalyzerAgent.js.map +1 -1
- package/dist/agents/CoverageAnalyzerAgent.d.ts +26 -0
- package/dist/agents/CoverageAnalyzerAgent.d.ts.map +1 -1
- package/dist/agents/CoverageAnalyzerAgent.js +149 -1
- package/dist/agents/CoverageAnalyzerAgent.js.map +1 -1
- package/dist/agents/DeploymentReadinessAgent.d.ts +5 -0
- package/dist/agents/DeploymentReadinessAgent.d.ts.map +1 -1
- package/dist/agents/DeploymentReadinessAgent.js +41 -0
- package/dist/agents/DeploymentReadinessAgent.js.map +1 -1
- package/dist/agents/FlakyTestHunterAgent.d.ts +5 -0
- package/dist/agents/FlakyTestHunterAgent.d.ts.map +1 -1
- package/dist/agents/FlakyTestHunterAgent.js +40 -0
- package/dist/agents/FlakyTestHunterAgent.js.map +1 -1
- package/dist/agents/FleetCommanderAgent.d.ts +5 -0
- package/dist/agents/FleetCommanderAgent.d.ts.map +1 -1
- package/dist/agents/FleetCommanderAgent.js +51 -0
- package/dist/agents/FleetCommanderAgent.js.map +1 -1
- package/dist/agents/PerformanceTesterAgent.d.ts +5 -0
- package/dist/agents/PerformanceTesterAgent.d.ts.map +1 -1
- package/dist/agents/PerformanceTesterAgent.js +44 -0
- package/dist/agents/PerformanceTesterAgent.js.map +1 -1
- package/dist/agents/ProductionIntelligenceAgent.d.ts +5 -0
- package/dist/agents/ProductionIntelligenceAgent.d.ts.map +1 -1
- package/dist/agents/ProductionIntelligenceAgent.js +46 -0
- package/dist/agents/ProductionIntelligenceAgent.js.map +1 -1
- package/dist/agents/QXPartnerAgent.js +52 -0
- package/dist/agents/QXPartnerAgent.js.map +1 -1
- package/dist/agents/QualityAnalyzerAgent.d.ts +5 -0
- package/dist/agents/QualityAnalyzerAgent.d.ts.map +1 -1
- package/dist/agents/QualityAnalyzerAgent.js +45 -0
- package/dist/agents/QualityAnalyzerAgent.js.map +1 -1
- package/dist/agents/QualityGateAgent.d.ts +40 -0
- package/dist/agents/QualityGateAgent.d.ts.map +1 -1
- package/dist/agents/QualityGateAgent.js +227 -1
- package/dist/agents/QualityGateAgent.js.map +1 -1
- package/dist/agents/RegressionRiskAnalyzerAgent.d.ts +5 -0
- package/dist/agents/RegressionRiskAnalyzerAgent.d.ts.map +1 -1
- package/dist/agents/RegressionRiskAnalyzerAgent.js +46 -0
- package/dist/agents/RegressionRiskAnalyzerAgent.js.map +1 -1
- package/dist/agents/RequirementsValidatorAgent.d.ts +5 -0
- package/dist/agents/RequirementsValidatorAgent.d.ts.map +1 -1
- package/dist/agents/RequirementsValidatorAgent.js +42 -0
- package/dist/agents/RequirementsValidatorAgent.js.map +1 -1
- package/dist/agents/SecurityScannerAgent.d.ts +5 -0
- package/dist/agents/SecurityScannerAgent.d.ts.map +1 -1
- package/dist/agents/SecurityScannerAgent.js +39 -0
- package/dist/agents/SecurityScannerAgent.js.map +1 -1
- package/dist/agents/TestDataArchitectAgent.d.ts +5 -0
- package/dist/agents/TestDataArchitectAgent.d.ts.map +1 -1
- package/dist/agents/TestDataArchitectAgent.js +46 -0
- package/dist/agents/TestDataArchitectAgent.js.map +1 -1
- package/dist/agents/TestExecutorAgent.d.ts +5 -0
- package/dist/agents/TestExecutorAgent.d.ts.map +1 -1
- package/dist/agents/TestExecutorAgent.js +48 -0
- package/dist/agents/TestExecutorAgent.js.map +1 -1
- package/dist/agents/TestGeneratorAgent.d.ts +5 -0
- package/dist/agents/TestGeneratorAgent.d.ts.map +1 -1
- package/dist/agents/TestGeneratorAgent.js +36 -0
- package/dist/agents/TestGeneratorAgent.js.map +1 -1
- package/dist/agents/lifecycle/AgentLifecycleManager.d.ts.map +1 -1
- package/dist/agents/lifecycle/AgentLifecycleManager.js +5 -2
- package/dist/agents/lifecycle/AgentLifecycleManager.js.map +1 -1
- package/dist/cli/commands/dream/index.d.ts +50 -0
- package/dist/cli/commands/dream/index.d.ts.map +1 -0
- package/dist/cli/commands/dream/index.js +282 -0
- package/dist/cli/commands/dream/index.js.map +1 -0
- package/dist/cli/commands/learn/index.d.ts +31 -5
- package/dist/cli/commands/learn/index.d.ts.map +1 -1
- package/dist/cli/commands/learn/index.js +183 -50
- package/dist/cli/commands/learn/index.js.map +1 -1
- package/dist/cli/commands/transfer/index.d.ts +55 -0
- package/dist/cli/commands/transfer/index.d.ts.map +1 -0
- package/dist/cli/commands/transfer/index.js +317 -0
- package/dist/cli/commands/transfer/index.js.map +1 -0
- package/dist/cli/index.js +224 -3
- package/dist/cli/index.js.map +1 -1
- package/dist/cli/init/index.d.ts.map +1 -1
- package/dist/cli/init/index.js +12 -4
- package/dist/cli/init/index.js.map +1 -1
- package/dist/cli/init/learning-init.d.ts +39 -0
- package/dist/cli/init/learning-init.d.ts.map +1 -0
- package/dist/cli/init/learning-init.js +239 -0
- package/dist/cli/init/learning-init.js.map +1 -0
- package/dist/core/memory/HNSWVectorMemory.js +1 -1
- package/dist/learning/baselines/BaselineCollector.d.ts +178 -0
- package/dist/learning/baselines/BaselineCollector.d.ts.map +1 -0
- package/dist/learning/baselines/BaselineCollector.js +398 -0
- package/dist/learning/baselines/BaselineCollector.js.map +1 -0
- package/dist/learning/baselines/StandardTaskSuite.d.ts +88 -0
- package/dist/learning/baselines/StandardTaskSuite.d.ts.map +1 -0
- package/dist/learning/baselines/StandardTaskSuite.js +801 -0
- package/dist/learning/baselines/StandardTaskSuite.js.map +1 -0
- package/dist/learning/baselines/index.d.ts +10 -0
- package/dist/learning/baselines/index.d.ts.map +1 -0
- package/dist/learning/baselines/index.js +15 -0
- package/dist/learning/baselines/index.js.map +1 -0
- package/dist/learning/capture/ExecutionRecorder.d.ts +97 -0
- package/dist/learning/capture/ExecutionRecorder.d.ts.map +1 -0
- package/dist/learning/capture/ExecutionRecorder.js +195 -0
- package/dist/learning/capture/ExecutionRecorder.js.map +1 -0
- package/dist/learning/capture/ExperienceCapture.d.ts +177 -0
- package/dist/learning/capture/ExperienceCapture.d.ts.map +1 -0
- package/dist/learning/capture/ExperienceCapture.js +432 -0
- package/dist/learning/capture/ExperienceCapture.js.map +1 -0
- package/dist/learning/capture/ExperienceExtractor.d.ts +219 -0
- package/dist/learning/capture/ExperienceExtractor.d.ts.map +1 -0
- package/dist/learning/capture/ExperienceExtractor.js +536 -0
- package/dist/learning/capture/ExperienceExtractor.js.map +1 -0
- package/dist/learning/capture/ExperienceStore.d.ts +196 -0
- package/dist/learning/capture/ExperienceStore.d.ts.map +1 -0
- package/dist/learning/capture/ExperienceStore.js +453 -0
- package/dist/learning/capture/ExperienceStore.js.map +1 -0
- package/dist/learning/capture/index.d.ts +12 -0
- package/dist/learning/capture/index.d.ts.map +1 -0
- package/dist/learning/capture/index.js +17 -0
- package/dist/learning/capture/index.js.map +1 -0
- package/dist/learning/dashboard/MetricsDashboard.d.ts +63 -0
- package/dist/learning/dashboard/MetricsDashboard.d.ts.map +1 -0
- package/dist/learning/dashboard/MetricsDashboard.js +230 -0
- package/dist/learning/dashboard/MetricsDashboard.js.map +1 -0
- package/dist/learning/dashboard/index.d.ts +7 -0
- package/dist/learning/dashboard/index.d.ts.map +1 -0
- package/dist/learning/dashboard/index.js +23 -0
- package/dist/learning/dashboard/index.js.map +1 -0
- package/dist/learning/dream/ConceptGraph.d.ts +160 -0
- package/dist/learning/dream/ConceptGraph.d.ts.map +1 -0
- package/dist/learning/dream/ConceptGraph.js +445 -0
- package/dist/learning/dream/ConceptGraph.js.map +1 -0
- package/dist/learning/dream/DreamEngine.d.ts +150 -0
- package/dist/learning/dream/DreamEngine.d.ts.map +1 -0
- package/dist/learning/dream/DreamEngine.js +551 -0
- package/dist/learning/dream/DreamEngine.js.map +1 -0
- package/dist/learning/dream/InsightGenerator.d.ts +152 -0
- package/dist/learning/dream/InsightGenerator.d.ts.map +1 -0
- package/dist/learning/dream/InsightGenerator.js +463 -0
- package/dist/learning/dream/InsightGenerator.js.map +1 -0
- package/dist/learning/dream/SpreadingActivation.d.ts +138 -0
- package/dist/learning/dream/SpreadingActivation.d.ts.map +1 -0
- package/dist/learning/dream/SpreadingActivation.js +320 -0
- package/dist/learning/dream/SpreadingActivation.js.map +1 -0
- package/dist/learning/dream/index.d.ts +14 -0
- package/dist/learning/dream/index.d.ts.map +1 -0
- package/dist/learning/dream/index.js +22 -0
- package/dist/learning/dream/index.js.map +1 -0
- package/dist/learning/metrics/AlertManager.d.ts +107 -0
- package/dist/learning/metrics/AlertManager.d.ts.map +1 -0
- package/dist/learning/metrics/AlertManager.js +246 -0
- package/dist/learning/metrics/AlertManager.js.map +1 -0
- package/dist/learning/metrics/LearningMetrics.d.ts +184 -0
- package/dist/learning/metrics/LearningMetrics.d.ts.map +1 -0
- package/dist/learning/metrics/LearningMetrics.js +754 -0
- package/dist/learning/metrics/LearningMetrics.js.map +1 -0
- package/dist/learning/metrics/MetricsCollector.d.ts +108 -0
- package/dist/learning/metrics/MetricsCollector.d.ts.map +1 -0
- package/dist/learning/metrics/MetricsCollector.js +240 -0
- package/dist/learning/metrics/MetricsCollector.js.map +1 -0
- package/dist/learning/metrics/MetricsStore.d.ts +149 -0
- package/dist/learning/metrics/MetricsStore.d.ts.map +1 -0
- package/dist/learning/metrics/MetricsStore.js +502 -0
- package/dist/learning/metrics/MetricsStore.js.map +1 -0
- package/dist/learning/metrics/TrendAnalyzer.d.ts +85 -0
- package/dist/learning/metrics/TrendAnalyzer.d.ts.map +1 -0
- package/dist/learning/metrics/TrendAnalyzer.js +210 -0
- package/dist/learning/metrics/TrendAnalyzer.js.map +1 -0
- package/dist/learning/metrics/index.d.ts +13 -0
- package/dist/learning/metrics/index.d.ts.map +1 -0
- package/dist/learning/metrics/index.js +39 -0
- package/dist/learning/metrics/index.js.map +1 -0
- package/dist/learning/scheduler/IdleDetector.d.ts +126 -0
- package/dist/learning/scheduler/IdleDetector.d.ts.map +1 -0
- package/dist/learning/scheduler/IdleDetector.js +281 -0
- package/dist/learning/scheduler/IdleDetector.js.map +1 -0
- package/dist/learning/scheduler/SleepCycle.d.ts +150 -0
- package/dist/learning/scheduler/SleepCycle.d.ts.map +1 -0
- package/dist/learning/scheduler/SleepCycle.js +506 -0
- package/dist/learning/scheduler/SleepCycle.js.map +1 -0
- package/dist/learning/scheduler/SleepScheduler.d.ts +133 -0
- package/dist/learning/scheduler/SleepScheduler.d.ts.map +1 -0
- package/dist/learning/scheduler/SleepScheduler.js +301 -0
- package/dist/learning/scheduler/SleepScheduler.js.map +1 -0
- package/dist/learning/scheduler/TimeBasedTrigger.d.ts +108 -0
- package/dist/learning/scheduler/TimeBasedTrigger.d.ts.map +1 -0
- package/dist/learning/scheduler/TimeBasedTrigger.js +222 -0
- package/dist/learning/scheduler/TimeBasedTrigger.js.map +1 -0
- package/dist/learning/scheduler/index.d.ts +16 -0
- package/dist/learning/scheduler/index.d.ts.map +1 -0
- package/dist/learning/scheduler/index.js +23 -0
- package/dist/learning/scheduler/index.js.map +1 -0
- package/dist/learning/synthesis/ClusteringEngine.d.ts +122 -0
- package/dist/learning/synthesis/ClusteringEngine.d.ts.map +1 -0
- package/dist/learning/synthesis/ClusteringEngine.js +356 -0
- package/dist/learning/synthesis/ClusteringEngine.js.map +1 -0
- package/dist/learning/synthesis/PatternSynthesis.d.ts +162 -0
- package/dist/learning/synthesis/PatternSynthesis.d.ts.map +1 -0
- package/dist/learning/synthesis/PatternSynthesis.js +479 -0
- package/dist/learning/synthesis/PatternSynthesis.js.map +1 -0
- package/dist/learning/synthesis/index.d.ts +10 -0
- package/dist/learning/synthesis/index.d.ts.map +1 -0
- package/dist/learning/synthesis/index.js +14 -0
- package/dist/learning/synthesis/index.js.map +1 -0
- package/dist/learning/transfer/CompatibilityScorer.d.ts +115 -0
- package/dist/learning/transfer/CompatibilityScorer.d.ts.map +1 -0
- package/dist/learning/transfer/CompatibilityScorer.js +319 -0
- package/dist/learning/transfer/CompatibilityScorer.js.map +1 -0
- package/dist/learning/transfer/TransferProtocol.d.ts +172 -0
- package/dist/learning/transfer/TransferProtocol.d.ts.map +1 -0
- package/dist/learning/transfer/TransferProtocol.js +611 -0
- package/dist/learning/transfer/TransferProtocol.js.map +1 -0
- package/dist/learning/transfer/TransferPrototype.d.ts +93 -0
- package/dist/learning/transfer/TransferPrototype.d.ts.map +1 -0
- package/dist/learning/transfer/TransferPrototype.js +433 -0
- package/dist/learning/transfer/TransferPrototype.js.map +1 -0
- package/dist/learning/transfer/TransferRegistry.d.ts +245 -0
- package/dist/learning/transfer/TransferRegistry.d.ts.map +1 -0
- package/dist/learning/transfer/TransferRegistry.js +410 -0
- package/dist/learning/transfer/TransferRegistry.js.map +1 -0
- package/dist/learning/transfer/TransferValidator.d.ts +140 -0
- package/dist/learning/transfer/TransferValidator.d.ts.map +1 -0
- package/dist/learning/transfer/TransferValidator.js +413 -0
- package/dist/learning/transfer/TransferValidator.js.map +1 -0
- package/dist/learning/transfer/index.d.ts +14 -0
- package/dist/learning/transfer/index.d.ts.map +1 -0
- package/dist/learning/transfer/index.js +22 -0
- package/dist/learning/transfer/index.js.map +1 -0
- package/dist/mcp/handlers/task-orchestrate.d.ts +11 -0
- package/dist/mcp/handlers/task-orchestrate.d.ts.map +1 -1
- package/dist/mcp/handlers/task-orchestrate.js +297 -4
- package/dist/mcp/handlers/task-orchestrate.js.map +1 -1
- package/dist/mcp/handlers/test/test-generate-enhanced.d.ts +26 -2
- package/dist/mcp/handlers/test/test-generate-enhanced.d.ts.map +1 -1
- package/dist/mcp/handlers/test/test-generate-enhanced.js +159 -27
- package/dist/mcp/handlers/test/test-generate-enhanced.js.map +1 -1
- package/dist/mcp/server-instructions.d.ts +1 -1
- package/dist/mcp/server-instructions.js +1 -1
- package/dist/mcp/server.d.ts.map +1 -1
- package/dist/mcp/server.js +2 -1
- package/dist/mcp/server.js.map +1 -1
- package/dist/mcp/services/AgentRegistry.d.ts +6 -1
- package/dist/mcp/services/AgentRegistry.d.ts.map +1 -1
- package/dist/mcp/services/AgentRegistry.js +34 -3
- package/dist/mcp/services/AgentRegistry.js.map +1 -1
- package/package.json +5 -2
|
@@ -0,0 +1,138 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* SpreadingActivation - Activation propagation for Dream Engine
|
|
3
|
+
*
|
|
4
|
+
* Implements spreading activation algorithm for concept association
|
|
5
|
+
* discovery. Simulates the neural activation patterns seen in memory
|
|
6
|
+
* consolidation during sleep.
|
|
7
|
+
*
|
|
8
|
+
* Part of the Nightly-Learner Phase 2 implementation.
|
|
9
|
+
*
|
|
10
|
+
* @version 1.0.0
|
|
11
|
+
* @module src/learning/dream/SpreadingActivation
|
|
12
|
+
*/
|
|
13
|
+
import { EventEmitter } from 'events';
|
|
14
|
+
import { ConceptGraph } from './ConceptGraph';
|
|
15
|
+
export interface ActivationConfig {
|
|
16
|
+
/** How fast activation decays (0-1). Default: 0.9 */
|
|
17
|
+
decayRate: number;
|
|
18
|
+
/** How much activation spreads to neighbors (0-1). Default: 0.5 */
|
|
19
|
+
spreadFactor: number;
|
|
20
|
+
/** Minimum activation to spread from a node. Default: 0.2 */
|
|
21
|
+
threshold: number;
|
|
22
|
+
/** Maximum iterations to prevent infinite loops. Default: 10 */
|
|
23
|
+
maxIterations: number;
|
|
24
|
+
/** Random activation noise for dreaming (0-1). Default: 0.1 */
|
|
25
|
+
noise: number;
|
|
26
|
+
/** Enable debug logging */
|
|
27
|
+
debug?: boolean;
|
|
28
|
+
}
|
|
29
|
+
export interface Association {
|
|
30
|
+
/** Co-activated node IDs */
|
|
31
|
+
nodes: string[];
|
|
32
|
+
/** Combined activation strength */
|
|
33
|
+
strength: number;
|
|
34
|
+
/** How unexpected this association is (0-1) */
|
|
35
|
+
novelty: number;
|
|
36
|
+
/** Types of nodes involved */
|
|
37
|
+
nodeTypes: string[];
|
|
38
|
+
/** When this association was detected */
|
|
39
|
+
detectedAt: Date;
|
|
40
|
+
}
|
|
41
|
+
export interface ActivationResult {
|
|
42
|
+
/** Number of spread iterations performed */
|
|
43
|
+
iterations: number;
|
|
44
|
+
/** Number of nodes that became activated */
|
|
45
|
+
nodesActivated: number;
|
|
46
|
+
/** Peak activation level reached */
|
|
47
|
+
peakActivation: number;
|
|
48
|
+
/** Associations discovered during activation */
|
|
49
|
+
associations: Association[];
|
|
50
|
+
/** Duration of activation spread in ms */
|
|
51
|
+
duration: number;
|
|
52
|
+
}
|
|
53
|
+
export interface DreamResult {
|
|
54
|
+
/** Total duration of dream cycle */
|
|
55
|
+
duration: number;
|
|
56
|
+
/** All associations discovered */
|
|
57
|
+
associations: Association[];
|
|
58
|
+
/** Novel associations (novelty > threshold) */
|
|
59
|
+
novelAssociations: Association[];
|
|
60
|
+
/** Number of random activations performed */
|
|
61
|
+
randomActivations: number;
|
|
62
|
+
/** Average novelty score */
|
|
63
|
+
averageNovelty: number;
|
|
64
|
+
}
|
|
65
|
+
/**
|
|
66
|
+
* SpreadingActivation implements neural-inspired activation spreading
|
|
67
|
+
*
|
|
68
|
+
* @example
|
|
69
|
+
* ```typescript
|
|
70
|
+
* const graph = new ConceptGraph();
|
|
71
|
+
* const activation = new SpreadingActivation(graph, { noise: 0.2 });
|
|
72
|
+
*
|
|
73
|
+
* // Activate a concept and spread
|
|
74
|
+
* const result = await activation.activate('pattern-1', 1.0);
|
|
75
|
+
*
|
|
76
|
+
* // Or run dream mode
|
|
77
|
+
* const dreamResult = await activation.dream(5000); // 5 second dream
|
|
78
|
+
* ```
|
|
79
|
+
*/
|
|
80
|
+
export declare class SpreadingActivation extends EventEmitter {
|
|
81
|
+
private graph;
|
|
82
|
+
private config;
|
|
83
|
+
private logger;
|
|
84
|
+
private activationHistory;
|
|
85
|
+
constructor(graph: ConceptGraph, config?: Partial<ActivationConfig>);
|
|
86
|
+
/**
|
|
87
|
+
* Activate a concept and spread activation to neighbors
|
|
88
|
+
*/
|
|
89
|
+
activate(conceptId: string, initialActivation?: number): Promise<ActivationResult>;
|
|
90
|
+
/**
|
|
91
|
+
* Dream mode: Random activation with increased noise
|
|
92
|
+
* Simulates the "reduced logical filtering" of REM sleep
|
|
93
|
+
*/
|
|
94
|
+
dream(durationMs: number): Promise<DreamResult>;
|
|
95
|
+
/**
|
|
96
|
+
* Detect an association from co-activated nodes
|
|
97
|
+
*/
|
|
98
|
+
private detectAssociation;
|
|
99
|
+
/**
|
|
100
|
+
* Calculate novelty score for a set of co-activated nodes
|
|
101
|
+
*
|
|
102
|
+
* Novelty is higher when:
|
|
103
|
+
* 1. Nodes have different types
|
|
104
|
+
* 2. Nodes have low/no edge weights between them
|
|
105
|
+
* 3. Nodes haven't been co-activated frequently before
|
|
106
|
+
*/
|
|
107
|
+
private calculateNovelty;
|
|
108
|
+
/**
|
|
109
|
+
* Calculate novelty based on activation history
|
|
110
|
+
*/
|
|
111
|
+
private calculateHistoryNovelty;
|
|
112
|
+
/**
|
|
113
|
+
* Record activation for history tracking
|
|
114
|
+
*/
|
|
115
|
+
private recordActivation;
|
|
116
|
+
/**
|
|
117
|
+
* Filter to keep only novel associations
|
|
118
|
+
*/
|
|
119
|
+
private filterNovelAssociations;
|
|
120
|
+
/**
|
|
121
|
+
* Reset all activations
|
|
122
|
+
*/
|
|
123
|
+
resetActivations(): void;
|
|
124
|
+
/**
|
|
125
|
+
* Get configuration
|
|
126
|
+
*/
|
|
127
|
+
getConfig(): ActivationConfig;
|
|
128
|
+
/**
|
|
129
|
+
* Update configuration
|
|
130
|
+
*/
|
|
131
|
+
updateConfig(config: Partial<ActivationConfig>): void;
|
|
132
|
+
/**
|
|
133
|
+
* Helper to sleep for a duration
|
|
134
|
+
*/
|
|
135
|
+
private sleep;
|
|
136
|
+
}
|
|
137
|
+
export default SpreadingActivation;
|
|
138
|
+
//# sourceMappingURL=SpreadingActivation.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"SpreadingActivation.d.ts","sourceRoot":"","sources":["../../../src/learning/dream/SpreadingActivation.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AAEH,OAAO,EAAE,YAAY,EAAE,MAAM,QAAQ,CAAC;AACtC,OAAO,EAAE,YAAY,EAAe,MAAM,gBAAgB,CAAC;AAI3D,MAAM,WAAW,gBAAgB;IAC/B,qDAAqD;IACrD,SAAS,EAAE,MAAM,CAAC;IAClB,mEAAmE;IACnE,YAAY,EAAE,MAAM,CAAC;IACrB,6DAA6D;IAC7D,SAAS,EAAE,MAAM,CAAC;IAClB,gEAAgE;IAChE,aAAa,EAAE,MAAM,CAAC;IACtB,+DAA+D;IAC/D,KAAK,EAAE,MAAM,CAAC;IACd,2BAA2B;IAC3B,KAAK,CAAC,EAAE,OAAO,CAAC;CACjB;AAED,MAAM,WAAW,WAAW;IAC1B,4BAA4B;IAC5B,KAAK,EAAE,MAAM,EAAE,CAAC;IAChB,mCAAmC;IACnC,QAAQ,EAAE,MAAM,CAAC;IACjB,+CAA+C;IAC/C,OAAO,EAAE,MAAM,CAAC;IAChB,8BAA8B;IAC9B,SAAS,EAAE,MAAM,EAAE,CAAC;IACpB,yCAAyC;IACzC,UAAU,EAAE,IAAI,CAAC;CAClB;AAED,MAAM,WAAW,gBAAgB;IAC/B,4CAA4C;IAC5C,UAAU,EAAE,MAAM,CAAC;IACnB,4CAA4C;IAC5C,cAAc,EAAE,MAAM,CAAC;IACvB,oCAAoC;IACpC,cAAc,EAAE,MAAM,CAAC;IACvB,gDAAgD;IAChD,YAAY,EAAE,WAAW,EAAE,CAAC;IAC5B,0CAA0C;IAC1C,QAAQ,EAAE,MAAM,CAAC;CAClB;AAED,MAAM,WAAW,WAAW;IAC1B,oCAAoC;IACpC,QAAQ,EAAE,MAAM,CAAC;IACjB,kCAAkC;IAClC,YAAY,EAAE,WAAW,EAAE,CAAC;IAC5B,+CAA+C;IAC/C,iBAAiB,EAAE,WAAW,EAAE,CAAC;IACjC,6CAA6C;IAC7C,iBAAiB,EAAE,MAAM,CAAC;IAC1B,4BAA4B;IAC5B,cAAc,EAAE,MAAM,CAAC;CACxB;AAED;;;;;;;;;;;;;;GAcG;AACH,qBAAa,mBAAoB,SAAQ,YAAY;IACnD,OAAO,CAAC,KAAK,CAAe;IAC5B,OAAO,CAAC,MAAM,CAA6B;IAC3C,OAAO,CAAC,MAAM,CAAS;IACvB,OAAO,CAAC,iBAAiB,CAAoC;gBAEjD,KAAK,EAAE,YAAY,EAAE,MAAM,CAAC,EAAE,OAAO,CAAC,gBAAgB,CAAC;IAgBnE;;OAEG;IACG,QAAQ,CAAC,SAAS,EAAE,MAAM,EAAE,iBAAiB,GAAE,MAAY,GAAG,OAAO,CAAC,gBAAgB,CAAC;IA8F7F;;;OAGG;IACG,KAAK,CAAC,UAAU,EAAE,MAAM,GAAG,OAAO,CAAC,WAAW,CAAC;IAuErD;;OAEG;IACH,OAAO,CAAC,iBAAiB;IAazB;;;;;;;OAOG;IACH,OAAO,CAAC,gBAAgB;IAmCxB;;OAEG;IACH,OAAO,CAAC,uBAAuB;IAkB/B;;OAEG;IACH,OAAO,CAAC,gBAAgB;IAYxB;;OAEG;IACH,OAAO,CAAC,uBAAuB;IAoB/B;;OAEG;IACH,gBAAgB,IAAI,IAAI;IAQxB;;OAEG;IACH,SAAS,IAAI,gBAAgB;IAI7B;;OAEG;IACH,YAAY,CAAC,MAAM,EAAE,OAAO,CAAC,gBAAgB,CAAC,GAAG,IAAI;IAIrD;;OAEG;IACH,OAAO,CAAC,KAAK;CAGd;AAED,eAAe,mBAAmB,CAAC"}
|
|
@@ -0,0 +1,320 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
/**
|
|
3
|
+
* SpreadingActivation - Activation propagation for Dream Engine
|
|
4
|
+
*
|
|
5
|
+
* Implements spreading activation algorithm for concept association
|
|
6
|
+
* discovery. Simulates the neural activation patterns seen in memory
|
|
7
|
+
* consolidation during sleep.
|
|
8
|
+
*
|
|
9
|
+
* Part of the Nightly-Learner Phase 2 implementation.
|
|
10
|
+
*
|
|
11
|
+
* @version 1.0.0
|
|
12
|
+
* @module src/learning/dream/SpreadingActivation
|
|
13
|
+
*/
|
|
14
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
15
|
+
exports.SpreadingActivation = void 0;
|
|
16
|
+
const events_1 = require("events");
|
|
17
|
+
const Logger_1 = require("../../utils/Logger");
|
|
18
|
+
const SecureRandom_1 = require("../../utils/SecureRandom");
|
|
19
|
+
/**
|
|
20
|
+
* SpreadingActivation implements neural-inspired activation spreading
|
|
21
|
+
*
|
|
22
|
+
* @example
|
|
23
|
+
* ```typescript
|
|
24
|
+
* const graph = new ConceptGraph();
|
|
25
|
+
* const activation = new SpreadingActivation(graph, { noise: 0.2 });
|
|
26
|
+
*
|
|
27
|
+
* // Activate a concept and spread
|
|
28
|
+
* const result = await activation.activate('pattern-1', 1.0);
|
|
29
|
+
*
|
|
30
|
+
* // Or run dream mode
|
|
31
|
+
* const dreamResult = await activation.dream(5000); // 5 second dream
|
|
32
|
+
* ```
|
|
33
|
+
*/
|
|
34
|
+
class SpreadingActivation extends events_1.EventEmitter {
|
|
35
|
+
constructor(graph, config) {
|
|
36
|
+
super();
|
|
37
|
+
this.activationHistory = new Map();
|
|
38
|
+
this.graph = graph;
|
|
39
|
+
this.logger = Logger_1.Logger.getInstance();
|
|
40
|
+
this.config = {
|
|
41
|
+
decayRate: 0.9,
|
|
42
|
+
spreadFactor: 0.5,
|
|
43
|
+
threshold: 0.2,
|
|
44
|
+
maxIterations: 10,
|
|
45
|
+
noise: 0.1,
|
|
46
|
+
debug: false,
|
|
47
|
+
...config,
|
|
48
|
+
};
|
|
49
|
+
}
|
|
50
|
+
/**
|
|
51
|
+
* Activate a concept and spread activation to neighbors
|
|
52
|
+
*/
|
|
53
|
+
async activate(conceptId, initialActivation = 1.0) {
|
|
54
|
+
const startTime = Date.now();
|
|
55
|
+
const associations = [];
|
|
56
|
+
// Set initial activation
|
|
57
|
+
const node = this.graph.getConcept(conceptId);
|
|
58
|
+
if (!node) {
|
|
59
|
+
return {
|
|
60
|
+
iterations: 0,
|
|
61
|
+
nodesActivated: 0,
|
|
62
|
+
peakActivation: 0,
|
|
63
|
+
associations: [],
|
|
64
|
+
duration: 0,
|
|
65
|
+
};
|
|
66
|
+
}
|
|
67
|
+
this.graph.setActivation(conceptId, initialActivation);
|
|
68
|
+
this.recordActivation(conceptId, initialActivation);
|
|
69
|
+
if (this.config.debug) {
|
|
70
|
+
this.logger.debug('[SpreadingActivation] Starting activation', {
|
|
71
|
+
conceptId,
|
|
72
|
+
initialActivation,
|
|
73
|
+
});
|
|
74
|
+
}
|
|
75
|
+
// Spread activation iteratively
|
|
76
|
+
let iteration = 0;
|
|
77
|
+
let peakActivation = initialActivation;
|
|
78
|
+
while (iteration < this.config.maxIterations) {
|
|
79
|
+
const activeNodes = this.graph.getActiveNodes(this.config.threshold);
|
|
80
|
+
if (activeNodes.length === 0) {
|
|
81
|
+
if (this.config.debug) {
|
|
82
|
+
this.logger.debug('[SpreadingActivation] No active nodes, stopping');
|
|
83
|
+
}
|
|
84
|
+
break;
|
|
85
|
+
}
|
|
86
|
+
// Spread from each active node
|
|
87
|
+
for (const activeNode of activeNodes) {
|
|
88
|
+
const edges = this.graph.getEdges(activeNode.id);
|
|
89
|
+
for (const edge of edges) {
|
|
90
|
+
const targetNode = this.graph.getConcept(edge.target);
|
|
91
|
+
if (!targetNode)
|
|
92
|
+
continue;
|
|
93
|
+
// Calculate spread amount
|
|
94
|
+
const spreadAmount = activeNode.activationLevel * edge.weight * this.config.spreadFactor;
|
|
95
|
+
const newActivation = Math.min(1, targetNode.activationLevel + spreadAmount);
|
|
96
|
+
this.graph.setActivation(edge.target, newActivation);
|
|
97
|
+
this.recordActivation(edge.target, newActivation);
|
|
98
|
+
if (newActivation > peakActivation) {
|
|
99
|
+
peakActivation = newActivation;
|
|
100
|
+
}
|
|
101
|
+
}
|
|
102
|
+
}
|
|
103
|
+
// Decay all activations
|
|
104
|
+
this.graph.decayActivations(this.config.decayRate);
|
|
105
|
+
// Detect co-activations (potential insights)
|
|
106
|
+
const coActivated = this.graph.getActiveNodes(0.5);
|
|
107
|
+
if (coActivated.length >= 2) {
|
|
108
|
+
const association = this.detectAssociation(coActivated);
|
|
109
|
+
associations.push(association);
|
|
110
|
+
this.emit('association:detected', association);
|
|
111
|
+
}
|
|
112
|
+
iteration++;
|
|
113
|
+
}
|
|
114
|
+
const result = {
|
|
115
|
+
iterations: iteration,
|
|
116
|
+
nodesActivated: this.graph.getActiveNodes(0.1).length,
|
|
117
|
+
peakActivation,
|
|
118
|
+
associations,
|
|
119
|
+
duration: Date.now() - startTime,
|
|
120
|
+
};
|
|
121
|
+
if (this.config.debug) {
|
|
122
|
+
this.logger.debug('[SpreadingActivation] Activation complete', {
|
|
123
|
+
iterations: result.iterations,
|
|
124
|
+
nodesActivated: result.nodesActivated,
|
|
125
|
+
associations: result.associations.length,
|
|
126
|
+
});
|
|
127
|
+
}
|
|
128
|
+
return result;
|
|
129
|
+
}
|
|
130
|
+
/**
|
|
131
|
+
* Dream mode: Random activation with increased noise
|
|
132
|
+
* Simulates the "reduced logical filtering" of REM sleep
|
|
133
|
+
*/
|
|
134
|
+
async dream(durationMs) {
|
|
135
|
+
const startTime = Date.now();
|
|
136
|
+
const associations = [];
|
|
137
|
+
let randomActivations = 0;
|
|
138
|
+
this.logger.info('[SpreadingActivation] Starting dream cycle', { durationMs });
|
|
139
|
+
while (Date.now() - startTime < durationMs) {
|
|
140
|
+
// Get all concepts
|
|
141
|
+
const allNodes = this.graph.getAllConcepts(0);
|
|
142
|
+
if (allNodes.length === 0) {
|
|
143
|
+
await this.sleep(100);
|
|
144
|
+
continue;
|
|
145
|
+
}
|
|
146
|
+
// Randomly select a concept to activate
|
|
147
|
+
const randomIndex = Math.floor(SecureRandom_1.SecureRandom.randomFloat() * allNodes.length);
|
|
148
|
+
const randomNode = allNodes[randomIndex];
|
|
149
|
+
if (randomNode) {
|
|
150
|
+
// Apply noise to activation
|
|
151
|
+
const noiseActivation = this.config.noise + SecureRandom_1.SecureRandom.randomFloat() * this.config.noise;
|
|
152
|
+
const currentActivation = randomNode.activationLevel;
|
|
153
|
+
const newActivation = Math.min(1, currentActivation + noiseActivation);
|
|
154
|
+
this.graph.setActivation(randomNode.id, newActivation);
|
|
155
|
+
randomActivations++;
|
|
156
|
+
// Let activation spread
|
|
157
|
+
const result = await this.activate(randomNode.id, newActivation);
|
|
158
|
+
associations.push(...result.associations);
|
|
159
|
+
this.emit('dream:activation', {
|
|
160
|
+
nodeId: randomNode.id,
|
|
161
|
+
activation: newActivation,
|
|
162
|
+
associations: result.associations.length,
|
|
163
|
+
});
|
|
164
|
+
}
|
|
165
|
+
// Small delay to prevent CPU spike and allow for graceful interruption
|
|
166
|
+
await this.sleep(50 + SecureRandom_1.SecureRandom.randomFloat() * 50);
|
|
167
|
+
}
|
|
168
|
+
// Filter to novel associations
|
|
169
|
+
const novelAssociations = this.filterNovelAssociations(associations);
|
|
170
|
+
const averageNovelty = associations.length > 0
|
|
171
|
+
? associations.reduce((sum, a) => sum + a.novelty, 0) / associations.length
|
|
172
|
+
: 0;
|
|
173
|
+
const result = {
|
|
174
|
+
duration: Date.now() - startTime,
|
|
175
|
+
associations,
|
|
176
|
+
novelAssociations,
|
|
177
|
+
randomActivations,
|
|
178
|
+
averageNovelty,
|
|
179
|
+
};
|
|
180
|
+
this.logger.info('[SpreadingActivation] Dream cycle complete', {
|
|
181
|
+
duration: result.duration,
|
|
182
|
+
totalAssociations: associations.length,
|
|
183
|
+
novelAssociations: novelAssociations.length,
|
|
184
|
+
randomActivations,
|
|
185
|
+
averageNovelty: averageNovelty.toFixed(3),
|
|
186
|
+
});
|
|
187
|
+
this.emit('dream:complete', result);
|
|
188
|
+
return result;
|
|
189
|
+
}
|
|
190
|
+
/**
|
|
191
|
+
* Detect an association from co-activated nodes
|
|
192
|
+
*/
|
|
193
|
+
detectAssociation(nodes) {
|
|
194
|
+
const strength = nodes.reduce((sum, n) => sum + n.activationLevel, 0) / nodes.length;
|
|
195
|
+
const novelty = this.calculateNovelty(nodes);
|
|
196
|
+
return {
|
|
197
|
+
nodes: nodes.map(n => n.id),
|
|
198
|
+
strength,
|
|
199
|
+
novelty,
|
|
200
|
+
nodeTypes: nodes.map(n => n.type),
|
|
201
|
+
detectedAt: new Date(),
|
|
202
|
+
};
|
|
203
|
+
}
|
|
204
|
+
/**
|
|
205
|
+
* Calculate novelty score for a set of co-activated nodes
|
|
206
|
+
*
|
|
207
|
+
* Novelty is higher when:
|
|
208
|
+
* 1. Nodes have different types
|
|
209
|
+
* 2. Nodes have low/no edge weights between them
|
|
210
|
+
* 3. Nodes haven't been co-activated frequently before
|
|
211
|
+
*/
|
|
212
|
+
calculateNovelty(nodes) {
|
|
213
|
+
let novelty = 0;
|
|
214
|
+
// Type diversity (more diverse = more novel)
|
|
215
|
+
const types = new Set(nodes.map(n => n.type));
|
|
216
|
+
const typeDiversity = types.size / 4; // 4 possible types
|
|
217
|
+
novelty += typeDiversity * 0.4;
|
|
218
|
+
// Edge weakness (weaker/missing edges = more novel)
|
|
219
|
+
let edgeScore = 0;
|
|
220
|
+
let edgeCount = 0;
|
|
221
|
+
for (let i = 0; i < nodes.length; i++) {
|
|
222
|
+
for (let j = i + 1; j < nodes.length; j++) {
|
|
223
|
+
const edge = this.graph.getEdge(nodes[i].id, nodes[j].id);
|
|
224
|
+
if (!edge) {
|
|
225
|
+
edgeScore += 1.0; // No edge = maximum novelty
|
|
226
|
+
}
|
|
227
|
+
else {
|
|
228
|
+
edgeScore += (1 - edge.weight); // Weaker edge = more novel
|
|
229
|
+
}
|
|
230
|
+
edgeCount++;
|
|
231
|
+
}
|
|
232
|
+
}
|
|
233
|
+
if (edgeCount > 0) {
|
|
234
|
+
novelty += (edgeScore / edgeCount) * 0.4;
|
|
235
|
+
}
|
|
236
|
+
// Co-activation history (less frequent = more novel)
|
|
237
|
+
const historyScore = this.calculateHistoryNovelty(nodes);
|
|
238
|
+
novelty += historyScore * 0.2;
|
|
239
|
+
return Math.min(1, novelty);
|
|
240
|
+
}
|
|
241
|
+
/**
|
|
242
|
+
* Calculate novelty based on activation history
|
|
243
|
+
*/
|
|
244
|
+
calculateHistoryNovelty(nodes) {
|
|
245
|
+
// Check if these nodes have been co-activated before
|
|
246
|
+
const nodeIds = nodes.map(n => n.id).sort();
|
|
247
|
+
const historyKey = nodeIds.join(':');
|
|
248
|
+
// Simple heuristic: newer activations are more novel
|
|
249
|
+
let novelty = 1.0;
|
|
250
|
+
for (const node of nodes) {
|
|
251
|
+
const history = this.activationHistory.get(node.id) || [];
|
|
252
|
+
if (history.length > 5) {
|
|
253
|
+
novelty -= 0.1; // Reduce novelty for frequently activated nodes
|
|
254
|
+
}
|
|
255
|
+
}
|
|
256
|
+
return Math.max(0, novelty);
|
|
257
|
+
}
|
|
258
|
+
/**
|
|
259
|
+
* Record activation for history tracking
|
|
260
|
+
*/
|
|
261
|
+
recordActivation(nodeId, level) {
|
|
262
|
+
const history = this.activationHistory.get(nodeId) || [];
|
|
263
|
+
history.push(level);
|
|
264
|
+
// Keep only recent history
|
|
265
|
+
if (history.length > 100) {
|
|
266
|
+
history.shift();
|
|
267
|
+
}
|
|
268
|
+
this.activationHistory.set(nodeId, history);
|
|
269
|
+
}
|
|
270
|
+
/**
|
|
271
|
+
* Filter to keep only novel associations
|
|
272
|
+
*/
|
|
273
|
+
filterNovelAssociations(associations) {
|
|
274
|
+
// Remove duplicates based on node sets
|
|
275
|
+
const unique = new Map();
|
|
276
|
+
for (const assoc of associations) {
|
|
277
|
+
const key = assoc.nodes.sort().join(':');
|
|
278
|
+
const existing = unique.get(key);
|
|
279
|
+
if (!existing || assoc.novelty > existing.novelty) {
|
|
280
|
+
unique.set(key, assoc);
|
|
281
|
+
}
|
|
282
|
+
}
|
|
283
|
+
// Filter by novelty threshold and sort
|
|
284
|
+
return Array.from(unique.values())
|
|
285
|
+
.filter(a => a.novelty > 0.5)
|
|
286
|
+
.sort((a, b) => b.novelty - a.novelty)
|
|
287
|
+
.slice(0, 10); // Top 10 novel associations
|
|
288
|
+
}
|
|
289
|
+
/**
|
|
290
|
+
* Reset all activations
|
|
291
|
+
*/
|
|
292
|
+
resetActivations() {
|
|
293
|
+
const allNodes = this.graph.getAllConcepts(0);
|
|
294
|
+
for (const node of allNodes) {
|
|
295
|
+
this.graph.setActivation(node.id, 0);
|
|
296
|
+
}
|
|
297
|
+
this.activationHistory.clear();
|
|
298
|
+
}
|
|
299
|
+
/**
|
|
300
|
+
* Get configuration
|
|
301
|
+
*/
|
|
302
|
+
getConfig() {
|
|
303
|
+
return { ...this.config };
|
|
304
|
+
}
|
|
305
|
+
/**
|
|
306
|
+
* Update configuration
|
|
307
|
+
*/
|
|
308
|
+
updateConfig(config) {
|
|
309
|
+
this.config = { ...this.config, ...config };
|
|
310
|
+
}
|
|
311
|
+
/**
|
|
312
|
+
* Helper to sleep for a duration
|
|
313
|
+
*/
|
|
314
|
+
sleep(ms) {
|
|
315
|
+
return new Promise(resolve => setTimeout(resolve, ms));
|
|
316
|
+
}
|
|
317
|
+
}
|
|
318
|
+
exports.SpreadingActivation = SpreadingActivation;
|
|
319
|
+
exports.default = SpreadingActivation;
|
|
320
|
+
//# sourceMappingURL=SpreadingActivation.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"SpreadingActivation.js","sourceRoot":"","sources":["../../../src/learning/dream/SpreadingActivation.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Dream Engine Module
|
|
3
|
+
*
|
|
4
|
+
* Implements dream-based pattern discovery for the Nightly-Learner system.
|
|
5
|
+
* Uses spreading activation to find novel associations between concepts.
|
|
6
|
+
*
|
|
7
|
+
* @module src/learning/dream
|
|
8
|
+
*/
|
|
9
|
+
export { ConceptGraph, ConceptNode, ConceptEdge, ConceptType, EdgeType, ConceptGraphConfig, GraphStats, } from './ConceptGraph';
|
|
10
|
+
export { SpreadingActivation, ActivationConfig, Association, ActivationResult, DreamResult, } from './SpreadingActivation';
|
|
11
|
+
export { InsightGenerator, DreamInsight, InsightType, InsightGeneratorConfig, InsightGenerationResult, } from './InsightGenerator';
|
|
12
|
+
export { DreamEngine, DreamEngineConfig, DreamCycleResult, DreamEngineState, } from './DreamEngine';
|
|
13
|
+
export { DreamEngine as default } from './DreamEngine';
|
|
14
|
+
//# sourceMappingURL=index.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/learning/dream/index.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,OAAO,EACL,YAAY,EACZ,WAAW,EACX,WAAW,EACX,WAAW,EACX,QAAQ,EACR,kBAAkB,EAClB,UAAU,GACX,MAAM,gBAAgB,CAAC;AAExB,OAAO,EACL,mBAAmB,EACnB,gBAAgB,EAChB,WAAW,EACX,gBAAgB,EAChB,WAAW,GACZ,MAAM,uBAAuB,CAAC;AAE/B,OAAO,EACL,gBAAgB,EAChB,YAAY,EACZ,WAAW,EACX,sBAAsB,EACtB,uBAAuB,GACxB,MAAM,oBAAoB,CAAC;AAE5B,OAAO,EACL,WAAW,EACX,iBAAiB,EACjB,gBAAgB,EAChB,gBAAgB,GACjB,MAAM,eAAe,CAAC;AAEvB,OAAO,EAAE,WAAW,IAAI,OAAO,EAAE,MAAM,eAAe,CAAC"}
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
/**
|
|
3
|
+
* Dream Engine Module
|
|
4
|
+
*
|
|
5
|
+
* Implements dream-based pattern discovery for the Nightly-Learner system.
|
|
6
|
+
* Uses spreading activation to find novel associations between concepts.
|
|
7
|
+
*
|
|
8
|
+
* @module src/learning/dream
|
|
9
|
+
*/
|
|
10
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
11
|
+
exports.default = exports.DreamEngine = exports.InsightGenerator = exports.SpreadingActivation = exports.ConceptGraph = void 0;
|
|
12
|
+
var ConceptGraph_1 = require("./ConceptGraph");
|
|
13
|
+
Object.defineProperty(exports, "ConceptGraph", { enumerable: true, get: function () { return ConceptGraph_1.ConceptGraph; } });
|
|
14
|
+
var SpreadingActivation_1 = require("./SpreadingActivation");
|
|
15
|
+
Object.defineProperty(exports, "SpreadingActivation", { enumerable: true, get: function () { return SpreadingActivation_1.SpreadingActivation; } });
|
|
16
|
+
var InsightGenerator_1 = require("./InsightGenerator");
|
|
17
|
+
Object.defineProperty(exports, "InsightGenerator", { enumerable: true, get: function () { return InsightGenerator_1.InsightGenerator; } });
|
|
18
|
+
var DreamEngine_1 = require("./DreamEngine");
|
|
19
|
+
Object.defineProperty(exports, "DreamEngine", { enumerable: true, get: function () { return DreamEngine_1.DreamEngine; } });
|
|
20
|
+
var DreamEngine_2 = require("./DreamEngine");
|
|
21
|
+
Object.defineProperty(exports, "default", { enumerable: true, get: function () { return DreamEngine_2.DreamEngine; } });
|
|
22
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/learning/dream/index.ts"],"names":[],"mappings":";AAAA;;;;;;;GAOG;;;AAEH,+CAQwB;AAPtB,4GAAA,YAAY,OAAA;AASd,6DAM+B;AAL7B,0HAAA,mBAAmB,OAAA;AAOrB,uDAM4B;AAL1B,oHAAA,gBAAgB,OAAA;AAOlB,6CAKuB;AAJrB,0GAAA,WAAW,OAAA;AAMb,6CAAuD;AAA9C,sGAAA,WAAW,OAAW"}
|
|
@@ -0,0 +1,107 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* AlertManager - Phase 3 Alert System
|
|
3
|
+
*
|
|
4
|
+
* Manages alerts for learning metrics that exceed thresholds.
|
|
5
|
+
* Tracks alert state and acknowledgments.
|
|
6
|
+
*/
|
|
7
|
+
import { SwarmMemoryManager } from '../../core/memory/SwarmMemoryManager';
|
|
8
|
+
import { AggregatedMetrics } from './MetricsCollector';
|
|
9
|
+
/**
|
|
10
|
+
* Alert severity levels
|
|
11
|
+
*/
|
|
12
|
+
export declare enum AlertSeverity {
|
|
13
|
+
INFO = "info",
|
|
14
|
+
WARNING = "warning",
|
|
15
|
+
ERROR = "error"
|
|
16
|
+
}
|
|
17
|
+
/**
|
|
18
|
+
* Alert status
|
|
19
|
+
*/
|
|
20
|
+
export declare enum AlertStatus {
|
|
21
|
+
ACTIVE = "active",
|
|
22
|
+
ACKNOWLEDGED = "acknowledged",
|
|
23
|
+
RESOLVED = "resolved"
|
|
24
|
+
}
|
|
25
|
+
/**
|
|
26
|
+
* Alert definition
|
|
27
|
+
*/
|
|
28
|
+
export interface Alert {
|
|
29
|
+
id: string;
|
|
30
|
+
severity: AlertSeverity;
|
|
31
|
+
metric: string;
|
|
32
|
+
message: string;
|
|
33
|
+
currentValue: number;
|
|
34
|
+
threshold: number;
|
|
35
|
+
status: AlertStatus;
|
|
36
|
+
createdAt: Date;
|
|
37
|
+
acknowledgedAt?: Date;
|
|
38
|
+
resolvedAt?: Date;
|
|
39
|
+
}
|
|
40
|
+
/**
|
|
41
|
+
* Alert threshold configuration
|
|
42
|
+
*/
|
|
43
|
+
export interface AlertThreshold {
|
|
44
|
+
metric: string;
|
|
45
|
+
warningThreshold: number;
|
|
46
|
+
errorThreshold: number;
|
|
47
|
+
comparison: 'gt' | 'lt';
|
|
48
|
+
}
|
|
49
|
+
/**
|
|
50
|
+
* AlertManager - Manages learning metric alerts
|
|
51
|
+
*/
|
|
52
|
+
export declare class AlertManager {
|
|
53
|
+
private readonly logger;
|
|
54
|
+
private readonly memoryManager;
|
|
55
|
+
private alerts;
|
|
56
|
+
private readonly DEFAULT_THRESHOLDS;
|
|
57
|
+
constructor(memoryManager: SwarmMemoryManager);
|
|
58
|
+
/**
|
|
59
|
+
* Initialize alert manager
|
|
60
|
+
*/
|
|
61
|
+
initialize(): Promise<void>;
|
|
62
|
+
/**
|
|
63
|
+
* Check metrics against thresholds and create alerts
|
|
64
|
+
*/
|
|
65
|
+
checkMetrics(metrics: AggregatedMetrics): Promise<Alert[]>;
|
|
66
|
+
/**
|
|
67
|
+
* Get all active alerts
|
|
68
|
+
*/
|
|
69
|
+
getActiveAlerts(): Alert[];
|
|
70
|
+
/**
|
|
71
|
+
* Get all alerts (including acknowledged)
|
|
72
|
+
*/
|
|
73
|
+
getAllAlerts(): Alert[];
|
|
74
|
+
/**
|
|
75
|
+
* Acknowledge an alert
|
|
76
|
+
*/
|
|
77
|
+
acknowledgeAlert(alertId: string): Promise<void>;
|
|
78
|
+
/**
|
|
79
|
+
* Resolve an alert
|
|
80
|
+
*/
|
|
81
|
+
resolveAlert(alertId: string): Promise<void>;
|
|
82
|
+
/**
|
|
83
|
+
* Check a single threshold
|
|
84
|
+
*/
|
|
85
|
+
private checkThreshold;
|
|
86
|
+
/**
|
|
87
|
+
* Generate alert message
|
|
88
|
+
*/
|
|
89
|
+
private generateAlertMessage;
|
|
90
|
+
/**
|
|
91
|
+
* Get metric value from aggregated metrics
|
|
92
|
+
*/
|
|
93
|
+
private getMetricValue;
|
|
94
|
+
/**
|
|
95
|
+
* Store alert in memory
|
|
96
|
+
*/
|
|
97
|
+
private storeAlert;
|
|
98
|
+
/**
|
|
99
|
+
* Load alerts from memory
|
|
100
|
+
*/
|
|
101
|
+
private loadAlerts;
|
|
102
|
+
/**
|
|
103
|
+
* Get alert icon
|
|
104
|
+
*/
|
|
105
|
+
static getAlertIcon(severity: AlertSeverity): string;
|
|
106
|
+
}
|
|
107
|
+
//# sourceMappingURL=AlertManager.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"AlertManager.d.ts","sourceRoot":"","sources":["../../../src/learning/metrics/AlertManager.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,EAAE,kBAAkB,EAAE,MAAM,sCAAsC,CAAC;AAE1E,OAAO,EAAE,iBAAiB,EAAE,MAAM,oBAAoB,CAAC;AAEvD;;GAEG;AACH,oBAAY,aAAa;IACvB,IAAI,SAAS;IACb,OAAO,YAAY;IACnB,KAAK,UAAU;CAChB;AAED;;GAEG;AACH,oBAAY,WAAW;IACrB,MAAM,WAAW;IACjB,YAAY,iBAAiB;IAC7B,QAAQ,aAAa;CACtB;AAED;;GAEG;AACH,MAAM,WAAW,KAAK;IACpB,EAAE,EAAE,MAAM,CAAC;IACX,QAAQ,EAAE,aAAa,CAAC;IACxB,MAAM,EAAE,MAAM,CAAC;IACf,OAAO,EAAE,MAAM,CAAC;IAChB,YAAY,EAAE,MAAM,CAAC;IACrB,SAAS,EAAE,MAAM,CAAC;IAClB,MAAM,EAAE,WAAW,CAAC;IACpB,SAAS,EAAE,IAAI,CAAC;IAChB,cAAc,CAAC,EAAE,IAAI,CAAC;IACtB,UAAU,CAAC,EAAE,IAAI,CAAC;CACnB;AAED;;GAEG;AACH,MAAM,WAAW,cAAc;IAC7B,MAAM,EAAE,MAAM,CAAC;IACf,gBAAgB,EAAE,MAAM,CAAC;IACzB,cAAc,EAAE,MAAM,CAAC;IACvB,UAAU,EAAE,IAAI,GAAG,IAAI,CAAC;CACzB;AAED;;GAEG;AACH,qBAAa,YAAY;IACvB,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAS;IAChC,OAAO,CAAC,QAAQ,CAAC,aAAa,CAAqB;IACnD,OAAO,CAAC,MAAM,CAAqB;IAGnC,OAAO,CAAC,QAAQ,CAAC,kBAAkB,CAMjC;gBAEU,aAAa,EAAE,kBAAkB;IAM7C;;OAEG;IACG,UAAU,IAAI,OAAO,CAAC,IAAI,CAAC;IAIjC;;OAEG;IACG,YAAY,CAAC,OAAO,EAAE,iBAAiB,GAAG,OAAO,CAAC,KAAK,EAAE,CAAC;IAkBhE;;OAEG;IACH,eAAe,IAAI,KAAK,EAAE;IAY1B;;OAEG;IACH,YAAY,IAAI,KAAK,EAAE;IAKvB;;OAEG;IACG,gBAAgB,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAetD;;OAEG;IACG,YAAY,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAelD;;OAEG;IACH,OAAO,CAAC,cAAc;IAwDtB;;OAEG;IACH,OAAO,CAAC,oBAAoB;IAY5B;;OAEG;IACH,OAAO,CAAC,cAAc;IAiBtB;;OAEG;YACW,UAAU;IAQxB;;OAEG;YACW,UAAU;IA0BxB;;OAEG;IACH,MAAM,CAAC,YAAY,CAAC,QAAQ,EAAE,aAAa,GAAG,MAAM;CAUrD"}
|