@timmeck/brain-core 2.8.0 → 2.9.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +26 -9
- package/dist/dream/consolidator.d.ts +24 -0
- package/dist/dream/consolidator.js +242 -0
- package/dist/dream/consolidator.js.map +1 -0
- package/dist/dream/dream-engine.d.ts +42 -0
- package/dist/dream/dream-engine.js +267 -0
- package/dist/dream/dream-engine.js.map +1 -0
- package/dist/dream/index.d.ts +3 -0
- package/dist/dream/index.js +3 -0
- package/dist/dream/index.js.map +1 -0
- package/dist/dream/types.d.ts +99 -0
- package/dist/dream/types.js +3 -0
- package/dist/dream/types.js.map +1 -0
- package/dist/index.d.ts +3 -0
- package/dist/index.js +3 -0
- package/dist/index.js.map +1 -1
- package/dist/research/research-orchestrator.d.ts +4 -0
- package/dist/research/research-orchestrator.js +10 -0
- package/dist/research/research-orchestrator.js.map +1 -1
- package/package.json +1 -1
package/README.md
CHANGED
|
@@ -25,9 +25,17 @@ Brain Core extracts the common infrastructure used across all Brain MCP servers
|
|
|
25
25
|
| **Event Bus** | Generic typed event emitter |
|
|
26
26
|
| **Cross-Brain Client** | Discover and query peer brains over IPC named pipes |
|
|
27
27
|
| **Cross-Brain Notifier** | Push event notifications to peer brains |
|
|
28
|
-
| **Cross-Brain Subscriptions** | Persistent event subscriptions between brains
|
|
29
|
-
| **Embedding Engine** | Local vector embeddings with optional @huggingface/transformers
|
|
30
|
-
| **Dashboard Server** | Generic SSE dashboard server with live stats
|
|
28
|
+
| **Cross-Brain Subscriptions** | Persistent event subscriptions between brains |
|
|
29
|
+
| **Embedding Engine** | Local vector embeddings with optional @huggingface/transformers |
|
|
30
|
+
| **Dashboard Server** | Generic SSE dashboard server with live stats |
|
|
31
|
+
| **Research Orchestrator** | Feedback loops between 9 research engines |
|
|
32
|
+
| **9 Research Engines** | SelfObserver, AnomalyDetective, HypothesisEngine, CausalGraph, Experiment, KnowledgeDistiller, Counterfactual, AdaptiveStrategy, ResearchAgenda |
|
|
33
|
+
| **DataMiner** | Bootstraps historical DB data into research engines with adapter pattern (new in v2.8) |
|
|
34
|
+
| **Meta-Learning** | Hyper-parameter optimization with Bayesian exploration |
|
|
35
|
+
| **Autonomous Scheduler** | Self-directed research cycle execution |
|
|
36
|
+
| **Webhook Service** | Configurable webhooks with HMAC signing and retry |
|
|
37
|
+
| **Export Service** | JSON/CSV export with date range and column filters |
|
|
38
|
+
| **Backup Service** | Timestamped SQLite backups with integrity verification |
|
|
31
39
|
| **Math — Wilson Score** | Statistical confidence intervals for win rates / rule confidence |
|
|
32
40
|
| **Math — Time Decay** | Exponential half-life decay for synapse and rule freshness |
|
|
33
41
|
| **Config Loader** | `deepMerge()` + `loadConfigFile()` for layered config |
|
|
@@ -145,19 +153,28 @@ class MyRouter implements IpcRouter {
|
|
|
145
153
|
├── Config ─────── deepMerge, loadConfigFile
|
|
146
154
|
├── Synapses ───── Hebbian, Decay, Activation, Pathfinder, BaseSynapseManager
|
|
147
155
|
├── Learning ───── BaseLearningEngine (abstract, timer-managed)
|
|
148
|
-
├── Research ───── BaseResearchEngine
|
|
156
|
+
├── Research ───── BaseResearchEngine, ResearchOrchestrator, DataMiner
|
|
157
|
+
│ ├── Engines ── SelfObserver, AnomalyDetective, Experiment, Adaptive, Agenda
|
|
158
|
+
│ ├── Engines ── KnowledgeDistiller, Counterfactual, CrossDomain, Journal
|
|
159
|
+
│ └── Adapters ─ BrainAdapter, TradingAdapter, MarketingAdapter
|
|
149
160
|
├── Memory ────── BaseMemoryEngine, MemoryRecord, SessionRecord, shared interfaces
|
|
150
|
-
|
|
161
|
+
├── Cross-Brain ── CrossBrainClient, CrossBrainNotifier, Correlator
|
|
162
|
+
├── Autonomous ── AutonomousResearchScheduler, MetaLearningEngine
|
|
163
|
+
├── Causal ────── CausalGraph (Granger causality)
|
|
164
|
+
├── Hypothesis ── HypothesisEngine (temporal, correlation, threshold, frequency)
|
|
165
|
+
├── Webhooks ──── WebhookService (HMAC signing, retry, history)
|
|
166
|
+
├── Export ────── ExportService (JSON/CSV, date range, columns)
|
|
167
|
+
└── Backup ────── BackupService (timestamped, integrity check, restore)
|
|
151
168
|
```
|
|
152
169
|
|
|
153
170
|
## Brain Ecosystem
|
|
154
171
|
|
|
155
172
|
| Brain | Version | Purpose | Ports |
|
|
156
173
|
|-------|---------|---------|-------|
|
|
157
|
-
| [Brain](https://github.com/timmeck/brain-ecosystem/tree/main/packages/brain) | v3.
|
|
158
|
-
| [Trading Brain](https://github.com/timmeck/brain-ecosystem/tree/main/packages/trading-brain) | v2.
|
|
159
|
-
| [Marketing Brain](https://github.com/timmeck/brain-ecosystem/tree/main/packages/marketing-brain) | v1.
|
|
160
|
-
| [Brain Core](https://github.com/timmeck/brain-ecosystem/tree/main/packages/brain-core) | v2.
|
|
174
|
+
| [Brain](https://github.com/timmeck/brain-ecosystem/tree/main/packages/brain) | v3.9.0 | Error memory, code intelligence & persistent context | 7777/7778 |
|
|
175
|
+
| [Trading Brain](https://github.com/timmeck/brain-ecosystem/tree/main/packages/trading-brain) | v2.9.0 | Adaptive trading intelligence with memory & sessions | 7779/7780 |
|
|
176
|
+
| [Marketing Brain](https://github.com/timmeck/brain-ecosystem/tree/main/packages/marketing-brain) | v1.10.0 | Content strategy & engagement with memory & sessions | 7781/7782/7783 |
|
|
177
|
+
| [Brain Core](https://github.com/timmeck/brain-ecosystem/tree/main/packages/brain-core) | v2.8.0 | Shared infrastructure (this package) | — |
|
|
161
178
|
|
|
162
179
|
All packages live in the [brain-ecosystem](https://github.com/timmeck/brain-ecosystem) monorepo with npm workspaces. Brain Core provides shared infrastructure that eliminates ~2,800 lines of duplicated code across the ecosystem.
|
|
163
180
|
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
import type Database from 'better-sqlite3';
|
|
2
|
+
import { BaseEmbeddingEngine } from '../embeddings/engine.js';
|
|
3
|
+
import type { DreamEngineConfig, MemoryReplayResult, SynapsePruneResult, MemoryCompressionResult, ImportanceDecayResult } from './types.js';
|
|
4
|
+
export declare class DreamConsolidator {
|
|
5
|
+
/**
|
|
6
|
+
* Replay top-importance memories through the synapse network.
|
|
7
|
+
* Strengthens activated paths (spreading activation).
|
|
8
|
+
*/
|
|
9
|
+
replayMemories(db: Database.Database, config: Required<DreamEngineConfig>): MemoryReplayResult;
|
|
10
|
+
/**
|
|
11
|
+
* Aggressive synapse pruning — removes weak synapses below dream threshold.
|
|
12
|
+
*/
|
|
13
|
+
pruneSynapses(db: Database.Database, config: Required<DreamEngineConfig>): SynapsePruneResult;
|
|
14
|
+
/**
|
|
15
|
+
* Compress similar memories by clustering embeddings.
|
|
16
|
+
* Similar memories are merged into a consolidated memory; originals are superseded (not deleted).
|
|
17
|
+
*/
|
|
18
|
+
compressMemories(db: Database.Database, embeddingEngine: BaseEmbeddingEngine | null, config: Required<DreamEngineConfig>): MemoryCompressionResult;
|
|
19
|
+
/**
|
|
20
|
+
* Decay importance of old, never-accessed memories.
|
|
21
|
+
* Archive memories that fall below threshold.
|
|
22
|
+
*/
|
|
23
|
+
decayImportance(db: Database.Database, config: Required<DreamEngineConfig>): ImportanceDecayResult;
|
|
24
|
+
}
|
|
@@ -0,0 +1,242 @@
|
|
|
1
|
+
import { getLogger } from '../utils/logger.js';
|
|
2
|
+
import { BaseEmbeddingEngine } from '../embeddings/engine.js';
|
|
3
|
+
const log = getLogger();
|
|
4
|
+
// ── Pure logic class — no timers, no DB ownership ──────
|
|
5
|
+
export class DreamConsolidator {
|
|
6
|
+
/**
|
|
7
|
+
* Replay top-importance memories through the synapse network.
|
|
8
|
+
* Strengthens activated paths (spreading activation).
|
|
9
|
+
*/
|
|
10
|
+
replayMemories(db, config) {
|
|
11
|
+
const result = {
|
|
12
|
+
memoriesReplayed: 0,
|
|
13
|
+
synapsesStrengthened: 0,
|
|
14
|
+
synapsesDecayed: 0,
|
|
15
|
+
topActivations: [],
|
|
16
|
+
};
|
|
17
|
+
// Fetch top-importance active memories
|
|
18
|
+
let memories;
|
|
19
|
+
try {
|
|
20
|
+
memories = db.prepare(`
|
|
21
|
+
SELECT id, importance, category FROM memories
|
|
22
|
+
WHERE active = 1
|
|
23
|
+
ORDER BY importance DESC
|
|
24
|
+
LIMIT ?
|
|
25
|
+
`).all(config.replayBatchSize);
|
|
26
|
+
}
|
|
27
|
+
catch {
|
|
28
|
+
// memories table might not exist
|
|
29
|
+
return result;
|
|
30
|
+
}
|
|
31
|
+
if (memories.length === 0)
|
|
32
|
+
return result;
|
|
33
|
+
for (const mem of memories) {
|
|
34
|
+
// Find synapses connected to this memory node
|
|
35
|
+
const outgoing = db.prepare(`
|
|
36
|
+
SELECT id, weight FROM synapses
|
|
37
|
+
WHERE source_type = 'memory' AND source_id = ?
|
|
38
|
+
`).all(String(mem.id));
|
|
39
|
+
const incoming = db.prepare(`
|
|
40
|
+
SELECT id, weight FROM synapses
|
|
41
|
+
WHERE target_type = 'memory' AND target_id = ?
|
|
42
|
+
`).all(String(mem.id));
|
|
43
|
+
const allSynapses = [...outgoing, ...incoming];
|
|
44
|
+
let activatedNodes = 0;
|
|
45
|
+
for (const syn of allSynapses) {
|
|
46
|
+
if (syn.weight > 0.1) {
|
|
47
|
+
// Strengthen active paths
|
|
48
|
+
const newWeight = Math.min(1.0, syn.weight + config.dreamLearningRate * syn.weight);
|
|
49
|
+
db.prepare(`UPDATE synapses SET weight = ?, last_activated_at = datetime('now') WHERE id = ?`).run(newWeight, syn.id);
|
|
50
|
+
result.synapsesStrengthened++;
|
|
51
|
+
activatedNodes++;
|
|
52
|
+
}
|
|
53
|
+
else {
|
|
54
|
+
// Let weak synapses decay further
|
|
55
|
+
const newWeight = syn.weight * 0.9;
|
|
56
|
+
db.prepare(`UPDATE synapses SET weight = ? WHERE id = ?`).run(newWeight, syn.id);
|
|
57
|
+
result.synapsesDecayed++;
|
|
58
|
+
}
|
|
59
|
+
}
|
|
60
|
+
result.memoriesReplayed++;
|
|
61
|
+
result.topActivations.push({
|
|
62
|
+
memoryId: String(mem.id),
|
|
63
|
+
importance: mem.importance,
|
|
64
|
+
activatedNodes,
|
|
65
|
+
});
|
|
66
|
+
}
|
|
67
|
+
return result;
|
|
68
|
+
}
|
|
69
|
+
/**
|
|
70
|
+
* Aggressive synapse pruning — removes weak synapses below dream threshold.
|
|
71
|
+
*/
|
|
72
|
+
pruneSynapses(db, config) {
|
|
73
|
+
let pruned = 0;
|
|
74
|
+
try {
|
|
75
|
+
const weak = db.prepare(`
|
|
76
|
+
SELECT id FROM synapses WHERE weight < ?
|
|
77
|
+
`).all(config.dreamPruneThreshold);
|
|
78
|
+
if (weak.length > 0) {
|
|
79
|
+
const deleteStmt = db.prepare(`DELETE FROM synapses WHERE id = ?`);
|
|
80
|
+
for (const s of weak) {
|
|
81
|
+
deleteStmt.run(s.id);
|
|
82
|
+
}
|
|
83
|
+
pruned = weak.length;
|
|
84
|
+
}
|
|
85
|
+
}
|
|
86
|
+
catch {
|
|
87
|
+
// synapses table might not exist
|
|
88
|
+
}
|
|
89
|
+
return { synapsesPruned: pruned, threshold: config.dreamPruneThreshold };
|
|
90
|
+
}
|
|
91
|
+
/**
|
|
92
|
+
* Compress similar memories by clustering embeddings.
|
|
93
|
+
* Similar memories are merged into a consolidated memory; originals are superseded (not deleted).
|
|
94
|
+
*/
|
|
95
|
+
compressMemories(db, embeddingEngine, config) {
|
|
96
|
+
const result = {
|
|
97
|
+
clustersFound: 0,
|
|
98
|
+
memoriesConsolidated: 0,
|
|
99
|
+
memoriesSuperseded: 0,
|
|
100
|
+
compressionRatio: 1.0,
|
|
101
|
+
clusters: [],
|
|
102
|
+
};
|
|
103
|
+
if (!embeddingEngine)
|
|
104
|
+
return result;
|
|
105
|
+
// Fetch active memories with embeddings
|
|
106
|
+
let memories;
|
|
107
|
+
try {
|
|
108
|
+
memories = db.prepare(`
|
|
109
|
+
SELECT id, content, category, importance, embedding FROM memories
|
|
110
|
+
WHERE active = 1 AND embedding IS NOT NULL
|
|
111
|
+
ORDER BY importance DESC
|
|
112
|
+
LIMIT 200
|
|
113
|
+
`).all();
|
|
114
|
+
}
|
|
115
|
+
catch {
|
|
116
|
+
return result;
|
|
117
|
+
}
|
|
118
|
+
if (memories.length < config.minClusterSize)
|
|
119
|
+
return result;
|
|
120
|
+
// Deserialize embeddings
|
|
121
|
+
const memWithVec = memories
|
|
122
|
+
.filter(m => m.embedding !== null)
|
|
123
|
+
.map(m => ({
|
|
124
|
+
...m,
|
|
125
|
+
vector: BaseEmbeddingEngine.deserialize(m.embedding),
|
|
126
|
+
}));
|
|
127
|
+
if (memWithVec.length < config.minClusterSize)
|
|
128
|
+
return result;
|
|
129
|
+
// Greedy cosine clustering
|
|
130
|
+
const used = new Set();
|
|
131
|
+
const clusters = [];
|
|
132
|
+
let consolidationsLeft = config.maxConsolidationsPerCycle;
|
|
133
|
+
for (const candidate of memWithVec) {
|
|
134
|
+
if (used.has(String(candidate.id)) || consolidationsLeft <= 0)
|
|
135
|
+
continue;
|
|
136
|
+
const cluster = [candidate];
|
|
137
|
+
for (const other of memWithVec) {
|
|
138
|
+
if (String(other.id) === String(candidate.id) || used.has(String(other.id)))
|
|
139
|
+
continue;
|
|
140
|
+
const sim = BaseEmbeddingEngine.similarity(candidate.vector, other.vector);
|
|
141
|
+
if (sim >= config.clusterSimilarityThreshold) {
|
|
142
|
+
cluster.push(other);
|
|
143
|
+
}
|
|
144
|
+
}
|
|
145
|
+
if (cluster.length >= config.minClusterSize) {
|
|
146
|
+
// Mark all as used
|
|
147
|
+
for (const m of cluster)
|
|
148
|
+
used.add(String(m.id));
|
|
149
|
+
// Pick highest-importance as centroid
|
|
150
|
+
cluster.sort((a, b) => b.importance - a.importance);
|
|
151
|
+
const centroid = cluster[0];
|
|
152
|
+
const members = cluster.slice(1);
|
|
153
|
+
// Calculate average similarity
|
|
154
|
+
let simSum = 0;
|
|
155
|
+
for (const m of members) {
|
|
156
|
+
simSum += BaseEmbeddingEngine.similarity(centroid.vector, m.vector);
|
|
157
|
+
}
|
|
158
|
+
const avgSim = members.length > 0 ? simSum / members.length : 1;
|
|
159
|
+
// Consolidate: boost centroid importance, supersede others
|
|
160
|
+
const consolidatedImportance = Math.min(100, centroid.importance + members.reduce((s, m) => s + m.importance * 0.3, 0));
|
|
161
|
+
const consolidatedContent = centroid.content +
|
|
162
|
+
`\n[Consolidated from ${members.length} similar memories]`;
|
|
163
|
+
try {
|
|
164
|
+
db.prepare(`
|
|
165
|
+
UPDATE memories SET importance = ?, content = ?, updated_at = datetime('now')
|
|
166
|
+
WHERE id = ?
|
|
167
|
+
`).run(consolidatedImportance, consolidatedContent, centroid.id);
|
|
168
|
+
// Supersede members (set active=0, add superseded_by)
|
|
169
|
+
const supersedeStmt = db.prepare(`
|
|
170
|
+
UPDATE memories SET active = 0, updated_at = datetime('now') WHERE id = ?
|
|
171
|
+
`);
|
|
172
|
+
for (const m of members) {
|
|
173
|
+
supersedeStmt.run(m.id);
|
|
174
|
+
}
|
|
175
|
+
}
|
|
176
|
+
catch (err) {
|
|
177
|
+
log.warn(`[dream] Compression error: ${err.message}`);
|
|
178
|
+
continue;
|
|
179
|
+
}
|
|
180
|
+
result.memoriesConsolidated++;
|
|
181
|
+
result.memoriesSuperseded += members.length;
|
|
182
|
+
result.clusters.push({
|
|
183
|
+
centroidId: String(centroid.id),
|
|
184
|
+
memberIds: members.map(m => String(m.id)),
|
|
185
|
+
avgSimilarity: avgSim,
|
|
186
|
+
consolidatedTitle: centroid.content.slice(0, 80),
|
|
187
|
+
});
|
|
188
|
+
consolidationsLeft--;
|
|
189
|
+
}
|
|
190
|
+
}
|
|
191
|
+
result.clustersFound = result.clusters.length;
|
|
192
|
+
const originalCount = memWithVec.length;
|
|
193
|
+
const afterCount = originalCount - result.memoriesSuperseded;
|
|
194
|
+
result.compressionRatio = afterCount > 0 ? originalCount / afterCount : 1;
|
|
195
|
+
return result;
|
|
196
|
+
}
|
|
197
|
+
/**
|
|
198
|
+
* Decay importance of old, never-accessed memories.
|
|
199
|
+
* Archive memories that fall below threshold.
|
|
200
|
+
*/
|
|
201
|
+
decayImportance(db, config) {
|
|
202
|
+
const result = {
|
|
203
|
+
memoriesDecayed: 0,
|
|
204
|
+
memoriesArchived: 0,
|
|
205
|
+
avgDecay: 0,
|
|
206
|
+
};
|
|
207
|
+
let oldMemories;
|
|
208
|
+
try {
|
|
209
|
+
oldMemories = db.prepare(`
|
|
210
|
+
SELECT id, importance FROM memories
|
|
211
|
+
WHERE active = 1
|
|
212
|
+
AND julianday('now') - julianday(COALESCE(updated_at, created_at)) > ?
|
|
213
|
+
ORDER BY importance ASC
|
|
214
|
+
LIMIT 100
|
|
215
|
+
`).all(config.importanceDecayAfterDays);
|
|
216
|
+
}
|
|
217
|
+
catch {
|
|
218
|
+
return result;
|
|
219
|
+
}
|
|
220
|
+
if (oldMemories.length === 0)
|
|
221
|
+
return result;
|
|
222
|
+
let totalDecay = 0;
|
|
223
|
+
const updateStmt = db.prepare(`UPDATE memories SET importance = ?, updated_at = datetime('now') WHERE id = ?`);
|
|
224
|
+
const archiveStmt = db.prepare(`UPDATE memories SET active = 0, updated_at = datetime('now') WHERE id = ?`);
|
|
225
|
+
for (const mem of oldMemories) {
|
|
226
|
+
const newImportance = mem.importance * config.importanceDecayRate;
|
|
227
|
+
totalDecay += mem.importance - newImportance;
|
|
228
|
+
if (newImportance <= config.archiveImportanceThreshold) {
|
|
229
|
+
// Archive — set inactive
|
|
230
|
+
archiveStmt.run(mem.id);
|
|
231
|
+
result.memoriesArchived++;
|
|
232
|
+
}
|
|
233
|
+
else {
|
|
234
|
+
updateStmt.run(newImportance, mem.id);
|
|
235
|
+
}
|
|
236
|
+
result.memoriesDecayed++;
|
|
237
|
+
}
|
|
238
|
+
result.avgDecay = result.memoriesDecayed > 0 ? totalDecay / result.memoriesDecayed : 0;
|
|
239
|
+
return result;
|
|
240
|
+
}
|
|
241
|
+
}
|
|
242
|
+
//# sourceMappingURL=consolidator.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"consolidator.js","sourceRoot":"","sources":["../../src/dream/consolidator.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,42 @@
|
|
|
1
|
+
import type Database from 'better-sqlite3';
|
|
2
|
+
import type { BaseEmbeddingEngine } from '../embeddings/engine.js';
|
|
3
|
+
import type { ResearchJournal } from '../research/journal.js';
|
|
4
|
+
import type { KnowledgeDistiller } from '../research/knowledge-distiller.js';
|
|
5
|
+
import type { DreamEngineConfig, DreamCycleReport, DreamStatus, DreamHistoryEntry, DreamTrigger } from './types.js';
|
|
6
|
+
export declare function runDreamMigration(db: Database.Database): void;
|
|
7
|
+
export declare class DreamEngine {
|
|
8
|
+
private db;
|
|
9
|
+
private config;
|
|
10
|
+
private consolidator;
|
|
11
|
+
private embeddingEngine;
|
|
12
|
+
private journal;
|
|
13
|
+
private knowledgeDistiller;
|
|
14
|
+
private timer;
|
|
15
|
+
private lastActivityTimestamp;
|
|
16
|
+
private cycleCount;
|
|
17
|
+
private log;
|
|
18
|
+
constructor(db: Database.Database, config: DreamEngineConfig);
|
|
19
|
+
/** Set the embedding engine for memory compression (cosine similarity). */
|
|
20
|
+
setEmbeddingEngine(engine: BaseEmbeddingEngine): void;
|
|
21
|
+
/** Set the research journal for dream logging. */
|
|
22
|
+
setJournal(journal: ResearchJournal): void;
|
|
23
|
+
/** Set the knowledge distiller for periodic distillation during dreams. */
|
|
24
|
+
setKnowledgeDistiller(distiller: KnowledgeDistiller): void;
|
|
25
|
+
/** Start the periodic dream timer. */
|
|
26
|
+
start(): void;
|
|
27
|
+
/** Stop the dream timer. */
|
|
28
|
+
stop(): void;
|
|
29
|
+
/** Record activity — resets idle timer. Call this on every event/tool-call. */
|
|
30
|
+
recordActivity(): void;
|
|
31
|
+
/**
|
|
32
|
+
* Run a full consolidation cycle.
|
|
33
|
+
* This is the main dream method — runs all 4 phases + optional distillation + journal.
|
|
34
|
+
*/
|
|
35
|
+
consolidate(trigger?: DreamTrigger): DreamCycleReport;
|
|
36
|
+
/** Get current dream engine status. */
|
|
37
|
+
getStatus(): DreamStatus;
|
|
38
|
+
/** Get dream history entries. */
|
|
39
|
+
getHistory(limit?: number): DreamHistoryEntry[];
|
|
40
|
+
private timerCallback;
|
|
41
|
+
private persistCycle;
|
|
42
|
+
}
|
|
@@ -0,0 +1,267 @@
|
|
|
1
|
+
import { getLogger } from '../utils/logger.js';
|
|
2
|
+
import { DreamConsolidator } from './consolidator.js';
|
|
3
|
+
// ── Migration ───────────────────────────────────────────
|
|
4
|
+
export function runDreamMigration(db) {
|
|
5
|
+
db.exec(`
|
|
6
|
+
CREATE TABLE IF NOT EXISTS dream_history (
|
|
7
|
+
id INTEGER PRIMARY KEY AUTOINCREMENT,
|
|
8
|
+
cycle_id TEXT NOT NULL,
|
|
9
|
+
timestamp INTEGER NOT NULL,
|
|
10
|
+
duration INTEGER NOT NULL,
|
|
11
|
+
trigger TEXT NOT NULL,
|
|
12
|
+
memories_replayed INTEGER NOT NULL DEFAULT 0,
|
|
13
|
+
synapses_strengthened INTEGER NOT NULL DEFAULT 0,
|
|
14
|
+
synapses_pruned INTEGER NOT NULL DEFAULT 0,
|
|
15
|
+
synapses_decayed INTEGER NOT NULL DEFAULT 0,
|
|
16
|
+
memories_consolidated INTEGER NOT NULL DEFAULT 0,
|
|
17
|
+
memories_superseded INTEGER NOT NULL DEFAULT 0,
|
|
18
|
+
memories_archived INTEGER NOT NULL DEFAULT 0,
|
|
19
|
+
importance_decayed INTEGER NOT NULL DEFAULT 0,
|
|
20
|
+
principles_discovered INTEGER NOT NULL DEFAULT 0,
|
|
21
|
+
compression_ratio REAL NOT NULL DEFAULT 1.0,
|
|
22
|
+
journal_entry_id INTEGER,
|
|
23
|
+
created_at TEXT DEFAULT (datetime('now'))
|
|
24
|
+
);
|
|
25
|
+
CREATE INDEX IF NOT EXISTS idx_dream_history_ts ON dream_history(timestamp);
|
|
26
|
+
CREATE INDEX IF NOT EXISTS idx_dream_history_cycle ON dream_history(cycle_id);
|
|
27
|
+
|
|
28
|
+
CREATE TABLE IF NOT EXISTS dream_state (
|
|
29
|
+
id INTEGER PRIMARY KEY CHECK(id = 1),
|
|
30
|
+
total_cycles INTEGER NOT NULL DEFAULT 0,
|
|
31
|
+
last_dream_at INTEGER,
|
|
32
|
+
total_memories_consolidated INTEGER NOT NULL DEFAULT 0,
|
|
33
|
+
total_synapses_pruned INTEGER NOT NULL DEFAULT 0,
|
|
34
|
+
total_memories_archived INTEGER NOT NULL DEFAULT 0,
|
|
35
|
+
updated_at TEXT DEFAULT (datetime('now'))
|
|
36
|
+
);
|
|
37
|
+
INSERT OR IGNORE INTO dream_state (id) VALUES (1);
|
|
38
|
+
`);
|
|
39
|
+
}
|
|
40
|
+
// ── Engine ──────────────────────────────────────────────
|
|
41
|
+
export class DreamEngine {
|
|
42
|
+
db;
|
|
43
|
+
config;
|
|
44
|
+
consolidator;
|
|
45
|
+
embeddingEngine = null;
|
|
46
|
+
journal = null;
|
|
47
|
+
knowledgeDistiller = null;
|
|
48
|
+
timer = null;
|
|
49
|
+
lastActivityTimestamp = Date.now();
|
|
50
|
+
cycleCount = 0;
|
|
51
|
+
log = getLogger();
|
|
52
|
+
constructor(db, config) {
|
|
53
|
+
this.db = db;
|
|
54
|
+
this.config = {
|
|
55
|
+
brainName: config.brainName,
|
|
56
|
+
intervalMs: config.intervalMs ?? 1_800_000,
|
|
57
|
+
idleThresholdMs: config.idleThresholdMs ?? 300_000,
|
|
58
|
+
replayBatchSize: config.replayBatchSize ?? 20,
|
|
59
|
+
clusterSimilarityThreshold: config.clusterSimilarityThreshold ?? 0.75,
|
|
60
|
+
minClusterSize: config.minClusterSize ?? 3,
|
|
61
|
+
importanceDecayRate: config.importanceDecayRate ?? 0.5,
|
|
62
|
+
importanceDecayAfterDays: config.importanceDecayAfterDays ?? 30,
|
|
63
|
+
archiveImportanceThreshold: config.archiveImportanceThreshold ?? 1,
|
|
64
|
+
dreamPruneThreshold: config.dreamPruneThreshold ?? 0.15,
|
|
65
|
+
dreamLearningRate: config.dreamLearningRate ?? 0.15,
|
|
66
|
+
maxConsolidationsPerCycle: config.maxConsolidationsPerCycle ?? 5,
|
|
67
|
+
};
|
|
68
|
+
this.consolidator = new DreamConsolidator();
|
|
69
|
+
runDreamMigration(db);
|
|
70
|
+
}
|
|
71
|
+
/** Set the embedding engine for memory compression (cosine similarity). */
|
|
72
|
+
setEmbeddingEngine(engine) {
|
|
73
|
+
this.embeddingEngine = engine;
|
|
74
|
+
}
|
|
75
|
+
/** Set the research journal for dream logging. */
|
|
76
|
+
setJournal(journal) {
|
|
77
|
+
this.journal = journal;
|
|
78
|
+
}
|
|
79
|
+
/** Set the knowledge distiller for periodic distillation during dreams. */
|
|
80
|
+
setKnowledgeDistiller(distiller) {
|
|
81
|
+
this.knowledgeDistiller = distiller;
|
|
82
|
+
}
|
|
83
|
+
/** Start the periodic dream timer. */
|
|
84
|
+
start() {
|
|
85
|
+
if (this.timer)
|
|
86
|
+
return;
|
|
87
|
+
this.timer = setInterval(() => {
|
|
88
|
+
this.timerCallback();
|
|
89
|
+
}, this.config.intervalMs);
|
|
90
|
+
this.log.info(`[dream] Dream engine started (interval: ${this.config.intervalMs}ms, idle threshold: ${this.config.idleThresholdMs}ms)`);
|
|
91
|
+
}
|
|
92
|
+
/** Stop the dream timer. */
|
|
93
|
+
stop() {
|
|
94
|
+
if (this.timer) {
|
|
95
|
+
clearInterval(this.timer);
|
|
96
|
+
this.timer = null;
|
|
97
|
+
}
|
|
98
|
+
}
|
|
99
|
+
/** Record activity — resets idle timer. Call this on every event/tool-call. */
|
|
100
|
+
recordActivity() {
|
|
101
|
+
this.lastActivityTimestamp = Date.now();
|
|
102
|
+
}
|
|
103
|
+
/**
|
|
104
|
+
* Run a full consolidation cycle.
|
|
105
|
+
* This is the main dream method — runs all 4 phases + optional distillation + journal.
|
|
106
|
+
*/
|
|
107
|
+
consolidate(trigger = 'manual') {
|
|
108
|
+
this.cycleCount++;
|
|
109
|
+
const cycleId = `dream-${this.config.brainName}-${Date.now()}-${this.cycleCount}`;
|
|
110
|
+
const start = Date.now();
|
|
111
|
+
this.log.info(`[dream] ─── Dream Cycle #${this.cycleCount} (${trigger}) ───`);
|
|
112
|
+
// 1. Memory Replay
|
|
113
|
+
const replay = this.consolidator.replayMemories(this.db, this.config);
|
|
114
|
+
if (replay.memoriesReplayed > 0) {
|
|
115
|
+
this.log.info(`[dream] Replay: ${replay.memoriesReplayed} memories, ${replay.synapsesStrengthened} synapses strengthened`);
|
|
116
|
+
}
|
|
117
|
+
// 2. Synapse Pruning
|
|
118
|
+
const pruning = this.consolidator.pruneSynapses(this.db, this.config);
|
|
119
|
+
if (pruning.synapsesPruned > 0) {
|
|
120
|
+
this.log.info(`[dream] Pruning: ${pruning.synapsesPruned} weak synapses removed (threshold: ${pruning.threshold})`);
|
|
121
|
+
}
|
|
122
|
+
// 3. Memory Compression
|
|
123
|
+
const compression = this.consolidator.compressMemories(this.db, this.embeddingEngine, this.config);
|
|
124
|
+
if (compression.memoriesConsolidated > 0) {
|
|
125
|
+
this.log.info(`[dream] Compression: ${compression.memoriesConsolidated} clusters, ${compression.memoriesSuperseded} memories superseded (ratio: ${compression.compressionRatio.toFixed(2)})`);
|
|
126
|
+
}
|
|
127
|
+
// 4. Importance Decay
|
|
128
|
+
const decay = this.consolidator.decayImportance(this.db, this.config);
|
|
129
|
+
if (decay.memoriesDecayed > 0) {
|
|
130
|
+
this.log.info(`[dream] Decay: ${decay.memoriesDecayed} memories decayed, ${decay.memoriesArchived} archived`);
|
|
131
|
+
}
|
|
132
|
+
// 5. Knowledge Distillation (optional)
|
|
133
|
+
let principlesDiscovered = 0;
|
|
134
|
+
if (this.knowledgeDistiller) {
|
|
135
|
+
try {
|
|
136
|
+
const { principles, antiPatterns, strategies } = this.knowledgeDistiller.distill();
|
|
137
|
+
principlesDiscovered = principles.length + antiPatterns.length + strategies.length;
|
|
138
|
+
if (principlesDiscovered > 0) {
|
|
139
|
+
this.log.info(`[dream] Distillation: ${principlesDiscovered} knowledge items extracted`);
|
|
140
|
+
}
|
|
141
|
+
}
|
|
142
|
+
catch (err) {
|
|
143
|
+
this.log.warn(`[dream] Distillation error: ${err.message}`);
|
|
144
|
+
}
|
|
145
|
+
}
|
|
146
|
+
// 6. Journal Entry
|
|
147
|
+
let journalEntryId = null;
|
|
148
|
+
if (this.journal) {
|
|
149
|
+
try {
|
|
150
|
+
const entry = this.journal.write({
|
|
151
|
+
type: 'reflection',
|
|
152
|
+
title: `Dream #${this.cycleCount} (${trigger})`,
|
|
153
|
+
content: [
|
|
154
|
+
`Dream cycle completed:`,
|
|
155
|
+
` Replayed: ${replay.memoriesReplayed} memories, strengthened ${replay.synapsesStrengthened} synapses`,
|
|
156
|
+
` Pruned: ${pruning.synapsesPruned} weak synapses`,
|
|
157
|
+
` Compressed: ${compression.memoriesConsolidated} clusters, ${compression.memoriesSuperseded} superseded`,
|
|
158
|
+
` Decayed: ${decay.memoriesDecayed} memories, ${decay.memoriesArchived} archived`,
|
|
159
|
+
principlesDiscovered > 0 ? ` Distilled: ${principlesDiscovered} knowledge items` : '',
|
|
160
|
+
].filter(Boolean).join('\n'),
|
|
161
|
+
tags: ['dream', this.config.brainName, trigger],
|
|
162
|
+
references: [],
|
|
163
|
+
significance: compression.memoriesConsolidated > 0 || pruning.synapsesPruned > 5 ? 'notable' : 'routine',
|
|
164
|
+
data: {
|
|
165
|
+
cycleId,
|
|
166
|
+
trigger,
|
|
167
|
+
replay: { replayed: replay.memoriesReplayed, strengthened: replay.synapsesStrengthened },
|
|
168
|
+
pruning: { pruned: pruning.synapsesPruned },
|
|
169
|
+
compression: { consolidated: compression.memoriesConsolidated, superseded: compression.memoriesSuperseded },
|
|
170
|
+
decay: { decayed: decay.memoriesDecayed, archived: decay.memoriesArchived },
|
|
171
|
+
},
|
|
172
|
+
});
|
|
173
|
+
journalEntryId = entry.id ?? null;
|
|
174
|
+
}
|
|
175
|
+
catch (err) {
|
|
176
|
+
this.log.warn(`[dream] Journal error: ${err.message}`);
|
|
177
|
+
}
|
|
178
|
+
}
|
|
179
|
+
const duration = Date.now() - start;
|
|
180
|
+
// 7. Persist to dream_history + update dream_state
|
|
181
|
+
this.persistCycle({
|
|
182
|
+
cycleId,
|
|
183
|
+
timestamp: start,
|
|
184
|
+
duration,
|
|
185
|
+
trigger,
|
|
186
|
+
replay,
|
|
187
|
+
pruning,
|
|
188
|
+
compression,
|
|
189
|
+
decay,
|
|
190
|
+
principlesDiscovered,
|
|
191
|
+
journalEntryId,
|
|
192
|
+
});
|
|
193
|
+
this.log.info(`[dream] ─── Dream Cycle #${this.cycleCount} complete (${duration}ms) ───`);
|
|
194
|
+
return {
|
|
195
|
+
cycleId,
|
|
196
|
+
timestamp: start,
|
|
197
|
+
duration,
|
|
198
|
+
trigger,
|
|
199
|
+
replay,
|
|
200
|
+
pruning,
|
|
201
|
+
compression,
|
|
202
|
+
decay,
|
|
203
|
+
principlesDiscovered,
|
|
204
|
+
journalEntryId,
|
|
205
|
+
};
|
|
206
|
+
}
|
|
207
|
+
/** Get current dream engine status. */
|
|
208
|
+
getStatus() {
|
|
209
|
+
const state = this.db.prepare(`SELECT * FROM dream_state WHERE id = 1`).get();
|
|
210
|
+
return {
|
|
211
|
+
running: this.timer !== null,
|
|
212
|
+
totalCycles: state?.total_cycles ?? 0,
|
|
213
|
+
lastDreamAt: state?.last_dream_at ?? null,
|
|
214
|
+
totals: {
|
|
215
|
+
memoriesConsolidated: state?.total_memories_consolidated ?? 0,
|
|
216
|
+
synapsesPruned: state?.total_synapses_pruned ?? 0,
|
|
217
|
+
memoriesArchived: state?.total_memories_archived ?? 0,
|
|
218
|
+
},
|
|
219
|
+
};
|
|
220
|
+
}
|
|
221
|
+
/** Get dream history entries. */
|
|
222
|
+
getHistory(limit = 20) {
|
|
223
|
+
return this.db.prepare(`
|
|
224
|
+
SELECT * FROM dream_history ORDER BY timestamp DESC LIMIT ?
|
|
225
|
+
`).all(limit);
|
|
226
|
+
}
|
|
227
|
+
// ── Private ─────────────────────────────────────────────
|
|
228
|
+
timerCallback() {
|
|
229
|
+
const idleMs = Date.now() - this.lastActivityTimestamp;
|
|
230
|
+
if (idleMs < this.config.idleThresholdMs) {
|
|
231
|
+
this.log.debug(`[dream] Brain active (idle ${Math.round(idleMs / 1000)}s < ${Math.round(this.config.idleThresholdMs / 1000)}s) — skipping dream`);
|
|
232
|
+
return;
|
|
233
|
+
}
|
|
234
|
+
try {
|
|
235
|
+
this.consolidate('idle');
|
|
236
|
+
}
|
|
237
|
+
catch (err) {
|
|
238
|
+
this.log.error(`[dream] Dream cycle error: ${err.message}`);
|
|
239
|
+
}
|
|
240
|
+
}
|
|
241
|
+
persistCycle(report) {
|
|
242
|
+
try {
|
|
243
|
+
this.db.prepare(`
|
|
244
|
+
INSERT INTO dream_history (
|
|
245
|
+
cycle_id, timestamp, duration, trigger,
|
|
246
|
+
memories_replayed, synapses_strengthened, synapses_pruned, synapses_decayed,
|
|
247
|
+
memories_consolidated, memories_superseded, memories_archived, importance_decayed,
|
|
248
|
+
principles_discovered, compression_ratio, journal_entry_id
|
|
249
|
+
) VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?)
|
|
250
|
+
`).run(report.cycleId, report.timestamp, report.duration, report.trigger, report.replay.memoriesReplayed, report.replay.synapsesStrengthened, report.pruning.synapsesPruned, report.replay.synapsesDecayed, report.compression.memoriesConsolidated, report.compression.memoriesSuperseded, report.decay.memoriesArchived, report.decay.memoriesDecayed, report.principlesDiscovered, report.compression.compressionRatio, report.journalEntryId);
|
|
251
|
+
this.db.prepare(`
|
|
252
|
+
UPDATE dream_state SET
|
|
253
|
+
total_cycles = total_cycles + 1,
|
|
254
|
+
last_dream_at = ?,
|
|
255
|
+
total_memories_consolidated = total_memories_consolidated + ?,
|
|
256
|
+
total_synapses_pruned = total_synapses_pruned + ?,
|
|
257
|
+
total_memories_archived = total_memories_archived + ?,
|
|
258
|
+
updated_at = datetime('now')
|
|
259
|
+
WHERE id = 1
|
|
260
|
+
`).run(report.timestamp, report.compression.memoriesConsolidated, report.pruning.synapsesPruned, report.decay.memoriesArchived);
|
|
261
|
+
}
|
|
262
|
+
catch (err) {
|
|
263
|
+
this.log.error(`[dream] Persist error: ${err.message}`);
|
|
264
|
+
}
|
|
265
|
+
}
|
|
266
|
+
}
|
|
267
|
+
//# sourceMappingURL=dream-engine.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"dream-engine.js","sourceRoot":"","sources":["../../src/dream/dream-engine.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,3 @@
|
|
|
1
|
+
export { DreamEngine, runDreamMigration } from './dream-engine.js';
|
|
2
|
+
export { DreamConsolidator } from './consolidator.js';
|
|
3
|
+
export type { DreamEngineConfig, DreamCycleReport, DreamStatus, DreamHistoryEntry, DreamTrigger, MemoryReplayResult, SynapsePruneResult, MemoryCompressionResult, MemoryCluster, ImportanceDecayResult, } from './types.js';
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/dream/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,iBAAiB,EAAE,MAAM,mBAAmB,CAAC;AACnE,OAAO,EAAE,iBAAiB,EAAE,MAAM,mBAAmB,CAAC"}
|
|
@@ -0,0 +1,99 @@
|
|
|
1
|
+
export interface DreamEngineConfig {
|
|
2
|
+
brainName: string;
|
|
3
|
+
/** Interval between dream cycles in ms. Default: 1_800_000 (30 min) */
|
|
4
|
+
intervalMs?: number;
|
|
5
|
+
/** Brain must be idle this long before dreaming. Default: 300_000 (5 min) */
|
|
6
|
+
idleThresholdMs?: number;
|
|
7
|
+
/** How many top-importance memories to replay per cycle. Default: 20 */
|
|
8
|
+
replayBatchSize?: number;
|
|
9
|
+
/** Cosine similarity threshold for clustering. Default: 0.75 */
|
|
10
|
+
clusterSimilarityThreshold?: number;
|
|
11
|
+
/** Minimum cluster size to trigger compression. Default: 3 */
|
|
12
|
+
minClusterSize?: number;
|
|
13
|
+
/** Importance decay multiplier for old memories. Default: 0.5 */
|
|
14
|
+
importanceDecayRate?: number;
|
|
15
|
+
/** Days since last access before importance decay applies. Default: 30 */
|
|
16
|
+
importanceDecayAfterDays?: number;
|
|
17
|
+
/** Archive threshold — memories at or below this importance get archived. Default: 1 */
|
|
18
|
+
archiveImportanceThreshold?: number;
|
|
19
|
+
/** Synapse weight threshold for dream pruning (more aggressive than normal). Default: 0.15 */
|
|
20
|
+
dreamPruneThreshold?: number;
|
|
21
|
+
/** Learning rate for strengthening activated synapses during replay. Default: 0.15 */
|
|
22
|
+
dreamLearningRate?: number;
|
|
23
|
+
/** Max memory clusters to consolidate per cycle. Default: 5 */
|
|
24
|
+
maxConsolidationsPerCycle?: number;
|
|
25
|
+
}
|
|
26
|
+
export type DreamTrigger = 'auto' | 'manual' | 'idle';
|
|
27
|
+
export interface DreamCycleReport {
|
|
28
|
+
cycleId: string;
|
|
29
|
+
timestamp: number;
|
|
30
|
+
duration: number;
|
|
31
|
+
trigger: DreamTrigger;
|
|
32
|
+
replay: MemoryReplayResult;
|
|
33
|
+
pruning: SynapsePruneResult;
|
|
34
|
+
compression: MemoryCompressionResult;
|
|
35
|
+
decay: ImportanceDecayResult;
|
|
36
|
+
principlesDiscovered: number;
|
|
37
|
+
journalEntryId: number | null;
|
|
38
|
+
}
|
|
39
|
+
export interface DreamStatus {
|
|
40
|
+
running: boolean;
|
|
41
|
+
totalCycles: number;
|
|
42
|
+
lastDreamAt: number | null;
|
|
43
|
+
totals: {
|
|
44
|
+
memoriesConsolidated: number;
|
|
45
|
+
synapsesPruned: number;
|
|
46
|
+
memoriesArchived: number;
|
|
47
|
+
};
|
|
48
|
+
}
|
|
49
|
+
export interface DreamHistoryEntry {
|
|
50
|
+
id: number;
|
|
51
|
+
cycle_id: string;
|
|
52
|
+
timestamp: number;
|
|
53
|
+
duration: number;
|
|
54
|
+
trigger: DreamTrigger;
|
|
55
|
+
memories_replayed: number;
|
|
56
|
+
synapses_strengthened: number;
|
|
57
|
+
synapses_pruned: number;
|
|
58
|
+
synapses_decayed: number;
|
|
59
|
+
memories_consolidated: number;
|
|
60
|
+
memories_superseded: number;
|
|
61
|
+
memories_archived: number;
|
|
62
|
+
importance_decayed: number;
|
|
63
|
+
principles_discovered: number;
|
|
64
|
+
compression_ratio: number;
|
|
65
|
+
journal_entry_id: number | null;
|
|
66
|
+
created_at: string;
|
|
67
|
+
}
|
|
68
|
+
export interface MemoryReplayResult {
|
|
69
|
+
memoriesReplayed: number;
|
|
70
|
+
synapsesStrengthened: number;
|
|
71
|
+
synapsesDecayed: number;
|
|
72
|
+
topActivations: Array<{
|
|
73
|
+
memoryId: string;
|
|
74
|
+
importance: number;
|
|
75
|
+
activatedNodes: number;
|
|
76
|
+
}>;
|
|
77
|
+
}
|
|
78
|
+
export interface SynapsePruneResult {
|
|
79
|
+
synapsesPruned: number;
|
|
80
|
+
threshold: number;
|
|
81
|
+
}
|
|
82
|
+
export interface MemoryCompressionResult {
|
|
83
|
+
clustersFound: number;
|
|
84
|
+
memoriesConsolidated: number;
|
|
85
|
+
memoriesSuperseded: number;
|
|
86
|
+
compressionRatio: number;
|
|
87
|
+
clusters: MemoryCluster[];
|
|
88
|
+
}
|
|
89
|
+
export interface MemoryCluster {
|
|
90
|
+
centroidId: string;
|
|
91
|
+
memberIds: string[];
|
|
92
|
+
avgSimilarity: number;
|
|
93
|
+
consolidatedTitle: string;
|
|
94
|
+
}
|
|
95
|
+
export interface ImportanceDecayResult {
|
|
96
|
+
memoriesDecayed: number;
|
|
97
|
+
memoriesArchived: number;
|
|
98
|
+
avgDecay: number;
|
|
99
|
+
}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"types.js","sourceRoot":"","sources":["../../src/dream/types.ts"],"names":[],"mappings":"AAAA,0DAA0D"}
|
package/dist/index.d.ts
CHANGED
|
@@ -92,3 +92,6 @@ export type { ResearchOrchestratorConfig } from './research/research-orchestrato
|
|
|
92
92
|
export { DataMiner, runDataMinerMigration } from './research/data-miner.js';
|
|
93
93
|
export type { DataMinerAdapter, DataMinerEngines, DataMinerState, MineResult, MinedObservation, MinedCausalEvent, MinedMetric, MinedHypothesisObservation, MinedCrossDomainEvent } from './research/data-miner.js';
|
|
94
94
|
export { BrainDataMinerAdapter, TradingDataMinerAdapter, MarketingDataMinerAdapter } from './research/adapters/index.js';
|
|
95
|
+
export { DreamEngine, runDreamMigration } from './dream/index.js';
|
|
96
|
+
export { DreamConsolidator } from './dream/index.js';
|
|
97
|
+
export type { DreamEngineConfig, DreamCycleReport, DreamStatus, DreamHistoryEntry, DreamTrigger, MemoryReplayResult, SynapsePruneResult, MemoryCompressionResult, MemoryCluster, ImportanceDecayResult } from './dream/index.js';
|
package/dist/index.js
CHANGED
|
@@ -83,4 +83,7 @@ export { ResearchOrchestrator } from './research/research-orchestrator.js';
|
|
|
83
83
|
// ── DataMiner ────────────────────────────────────────
|
|
84
84
|
export { DataMiner, runDataMinerMigration } from './research/data-miner.js';
|
|
85
85
|
export { BrainDataMinerAdapter, TradingDataMinerAdapter, MarketingDataMinerAdapter } from './research/adapters/index.js';
|
|
86
|
+
// ── Dream Mode ──────────────────────────────────────
|
|
87
|
+
export { DreamEngine, runDreamMigration } from './dream/index.js';
|
|
88
|
+
export { DreamConsolidator } from './dream/index.js';
|
|
86
89
|
//# sourceMappingURL=index.js.map
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAGA,8DAA8D;AAC9D,OAAO,EAAE,MAAM,EAAE,MAAM,iBAAiB,CAAC;AACzC,OAAO,EAAE,YAAY,EAAE,SAAS,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAEzE,OAAO,EAAE,aAAa,EAAE,UAAU,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC;AAC1E,OAAO,EAAE,aAAa,EAAE,MAAM,mBAAmB,CAAC;AAElD,8DAA8D;AAC9D,OAAO,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAC;AAEtD,8DAA8D;AAC9D,OAAO,EAAE,aAAa,EAAE,cAAc,EAAE,MAAM,mBAAmB,CAAC;AAClE,OAAO,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAC;AAE5C,OAAO,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAC;AAC5C,OAAO,EAAE,cAAc,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAC;AAErE,OAAO,EAAE,QAAQ,EAAE,eAAe,EAAE,aAAa,EAAE,YAAY,EAAE,uBAAuB,EAAE,MAAM,iBAAiB,CAAC;AAElH,8DAA8D;AAC9D,OAAO,EAAE,cAAc,EAAE,MAAM,iBAAiB,CAAC;AAEjD,OAAO,EAAE,aAAa,EAAE,MAAM,sBAAsB,CAAC;AAGrD,8DAA8D;AAC9D,OAAO,EAAE,CAAC,EAAE,SAAS,EAAE,MAAM,EAAE,QAAQ,EAAE,WAAW,EAAE,WAAW,EAAE,OAAO,EAAE,KAAK,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAC;AAEtH,8DAA8D;AAC9D,OAAO,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAEhD,OAAO,EAAE,WAAW,EAAE,iBAAiB,EAAE,oBAAoB,EAAE,MAAM,qBAAqB,CAAC;AAG3F,8DAA8D;AAC9D,OAAO,EAAE,WAAW,EAAE,MAAM,wBAAwB,CAAC;AACrD,OAAO,EAAE,eAAe,EAAE,MAAM,sBAAsB,CAAC;AAEvD,8DAA8D;AAC9D,OAAO,EAAE,SAAS,EAAE,cAAc,EAAE,MAAM,oBAAoB,CAAC;AAQ/D,OAAO,EAAE,UAAU,EAAE,MAAM,EAAE,MAAM,uBAAuB,CAAC;AAC3D,OAAO,EAAE,QAAQ,EAAE,MAAM,qBAAqB,CAAC;AAC/C,OAAO,EAAE,mBAAmB,EAAE,MAAM,0BAA0B,CAAC;AAC/D,OAAO,EAAE,QAAQ,EAAE,MAAM,0BAA0B,CAAC;AACpD,OAAO,EAAE,kBAAkB,EAAE,MAAM,+BAA+B,CAAC;AAEnE,6DAA6D;AAC7D,OAAO,EAAE,kBAAkB,EAAE,MAAM,2BAA2B,CAAC;AAE/D,OAAO,EAAE,kBAAkB,EAAE,MAAM,2BAA2B,CAAC;AAG/D,2DAA2D;AAC3D,OAAO,EAAE,mBAAmB,EAAE,MAAM,wBAAwB,CAAC;AAU7D,OAAO,EAAE,gBAAgB,EAAE,MAAM,gCAAgC,CAAC;AAElE,4DAA4D;AAC5D,OAAO,EAAE,eAAe,EAAE,MAAM,uBAAuB,CAAC;AAExD,OAAO,EAAE,kBAAkB,EAAE,MAAM,2BAA2B,CAAC;AAE/D,OAAO,EAAE,uBAAuB,EAAE,MAAM,gCAAgC,CAAC;AAGzE,8DAA8D;AAC9D,OAAO,EAAE,gBAAgB,EAAE,MAAM,yBAAyB,CAAC;AAE3D,OAAO,EAAE,kBAAkB,EAAE,MAAM,gCAAgC,CAAC;AAEpE,OAAO,EAAE,6BAA6B,EAAE,MAAM,+BAA+B,CAAC;AAE9E,OAAO,EAAE,oBAAoB,EAAE,MAAM,6BAA6B,CAAC;AAGnE,8DAA8D;AAC9D,OAAO,EAAE,gBAAgB,EAAE,MAAM,wBAAwB,CAAC;AAG1D,6DAA6D;AAC7D,OAAO,EAAE,cAAc,EAAE,mBAAmB,EAAE,MAAM,uBAAuB,CAAC;AAG5E,6DAA6D;AAC7D,OAAO,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAC;AAGpD,6DAA6D;AAC7D,OAAO,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAC;AAGpD,4DAA4D;AAC5D,OAAO,EAAE,2BAA2B,EAAE,6BAA6B,EAAE,MAAM,oCAAoC,CAAC;AAGhH,4DAA4D;AAC5D,OAAO,EAAE,kBAAkB,EAAE,wBAAwB,EAAE,MAAM,2BAA2B,CAAC;AAGzF,4DAA4D;AAC5D,OAAO,EAAE,WAAW,EAAE,kBAAkB,EAAE,MAAM,oBAAoB,CAAC;AAGrE,4DAA4D;AAC5D,OAAO,EAAE,gBAAgB,EAAE,sBAAsB,EAAE,MAAM,wBAAwB,CAAC;AAGlF,2DAA2D;AAC3D,OAAO,EAAE,YAAY,EAAE,wBAAwB,EAAE,MAAM,6BAA6B,CAAC;AAGrF,0DAA0D;AAC1D,OAAO,EAAE,sBAAsB,EAAE,4BAA4B,EAAE,MAAM,iCAAiC,CAAC;AAGvG,0DAA0D;AAC1D,OAAO,EAAE,gBAAgB,EAAE,sBAAsB,EAAE,MAAM,iCAAiC,CAAC;AAG3F,0DAA0D;AAC1D,OAAO,EAAE,iBAAiB,EAAE,uBAAuB,EAAE,MAAM,mCAAmC,CAAC;AAG/F,0DAA0D;AAC1D,OAAO,EAAE,oBAAoB,EAAE,0BAA0B,EAAE,MAAM,qCAAqC,CAAC;AAGvG,0DAA0D;AAC1D,OAAO,EAAE,kBAAkB,EAAE,8BAA8B,EAAE,MAAM,mCAAmC,CAAC;AAGvG,0DAA0D;AAC1D,OAAO,EAAE,oBAAoB,EAAE,kBAAkB,EAAE,MAAM,6BAA6B,CAAC;AAGvF,0DAA0D;AAC1D,OAAO,EAAE,gBAAgB,EAAE,4BAA4B,EAAE,MAAM,iCAAiC,CAAC;AAGjG,0DAA0D;AAC1D,OAAO,EAAE,eAAe,EAAE,mBAAmB,EAAE,MAAM,uBAAuB,CAAC;AAG7E,yDAAyD;AACzD,OAAO,EAAE,oBAAoB,EAAE,MAAM,qCAAqC,CAAC;AAG3E,wDAAwD;AACxD,OAAO,EAAE,SAAS,EAAE,qBAAqB,EAAE,MAAM,0BAA0B,CAAC;AAE5E,OAAO,EAAE,qBAAqB,EAAE,uBAAuB,EAAE,yBAAyB,EAAE,MAAM,8BAA8B,CAAC"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
|
|
@@ -11,6 +11,7 @@ import { ResearchJournal } from './journal.js';
|
|
|
11
11
|
import type { CausalGraph } from '../causal/engine.js';
|
|
12
12
|
import type { ResearchCycleReport } from './autonomous-scheduler.js';
|
|
13
13
|
import type { DataMiner } from './data-miner.js';
|
|
14
|
+
import type { DreamEngine } from '../dream/dream-engine.js';
|
|
14
15
|
export interface ResearchOrchestratorConfig {
|
|
15
16
|
brainName: string;
|
|
16
17
|
/** Feedback loop interval in ms. Default: 300_000 (5 min) */
|
|
@@ -33,6 +34,7 @@ export declare class ResearchOrchestrator {
|
|
|
33
34
|
readonly anomalyDetective: AnomalyDetective;
|
|
34
35
|
readonly journal: ResearchJournal;
|
|
35
36
|
private dataMiner;
|
|
37
|
+
private dreamEngine;
|
|
36
38
|
private brainName;
|
|
37
39
|
private feedbackTimer;
|
|
38
40
|
private cycleCount;
|
|
@@ -43,6 +45,8 @@ export declare class ResearchOrchestrator {
|
|
|
43
45
|
constructor(db: Database.Database, config: ResearchOrchestratorConfig, causalGraph?: CausalGraph);
|
|
44
46
|
/** Set the DataMiner instance for DB-driven engine feeding. */
|
|
45
47
|
setDataMiner(miner: DataMiner): void;
|
|
48
|
+
/** Set the DreamEngine — wires journal + knowledgeDistiller into it. */
|
|
49
|
+
setDreamEngine(engine: DreamEngine): void;
|
|
46
50
|
/** Start the autonomous feedback loop timer. */
|
|
47
51
|
start(intervalMs?: number): void;
|
|
48
52
|
/** Stop the feedback loop. */
|
|
@@ -20,6 +20,7 @@ export class ResearchOrchestrator {
|
|
|
20
20
|
anomalyDetective;
|
|
21
21
|
journal;
|
|
22
22
|
dataMiner = null;
|
|
23
|
+
dreamEngine = null;
|
|
23
24
|
brainName;
|
|
24
25
|
feedbackTimer = null;
|
|
25
26
|
cycleCount = 0;
|
|
@@ -46,6 +47,12 @@ export class ResearchOrchestrator {
|
|
|
46
47
|
setDataMiner(miner) {
|
|
47
48
|
this.dataMiner = miner;
|
|
48
49
|
}
|
|
50
|
+
/** Set the DreamEngine — wires journal + knowledgeDistiller into it. */
|
|
51
|
+
setDreamEngine(engine) {
|
|
52
|
+
this.dreamEngine = engine;
|
|
53
|
+
engine.setJournal(this.journal);
|
|
54
|
+
engine.setKnowledgeDistiller(this.knowledgeDistiller);
|
|
55
|
+
}
|
|
49
56
|
/** Start the autonomous feedback loop timer. */
|
|
50
57
|
start(intervalMs = 300_000) {
|
|
51
58
|
if (this.feedbackTimer)
|
|
@@ -66,12 +73,14 @@ export class ResearchOrchestrator {
|
|
|
66
73
|
clearInterval(this.feedbackTimer);
|
|
67
74
|
this.feedbackTimer = null;
|
|
68
75
|
}
|
|
76
|
+
this.dreamEngine?.stop();
|
|
69
77
|
}
|
|
70
78
|
/**
|
|
71
79
|
* Feed a domain event from the brain's EventBus.
|
|
72
80
|
* Routes to: SelfObserver, AnomalyDetective, CrossDomain.
|
|
73
81
|
*/
|
|
74
82
|
onEvent(eventType, data = {}) {
|
|
83
|
+
this.dreamEngine?.recordActivity();
|
|
75
84
|
this.selfObserver.record({
|
|
76
85
|
category: categorize(eventType),
|
|
77
86
|
event_type: eventType,
|
|
@@ -225,6 +234,7 @@ export class ResearchOrchestrator {
|
|
|
225
234
|
knowledge: this.knowledgeDistiller.getSummary(),
|
|
226
235
|
correlations: this.crossDomain.getCorrelations(10),
|
|
227
236
|
strategy: this.adaptiveStrategy.getStatus(),
|
|
237
|
+
dream: this.dreamEngine?.getStatus() ?? null,
|
|
228
238
|
};
|
|
229
239
|
}
|
|
230
240
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"research-orchestrator.js","sourceRoot":"","sources":["../../src/research/research-orchestrator.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"research-orchestrator.js","sourceRoot":"","sources":["../../src/research/research-orchestrator.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED