@timmeck/brain-core 2.6.0 → 2.8.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/dist/dashboard/research-server.d.ts +11 -0
- package/dist/dashboard/research-server.js +47 -0
- package/dist/dashboard/research-server.js.map +1 -0
- package/dist/index.d.ts +7 -0
- package/dist/index.js +6 -0
- package/dist/index.js.map +1 -1
- package/dist/mcp/server.d.ts +2 -0
- package/dist/mcp/server.js +16 -0
- package/dist/mcp/server.js.map +1 -1
- package/dist/research/adapters/brain-adapter.d.ts +14 -0
- package/dist/research/adapters/brain-adapter.js +161 -0
- package/dist/research/adapters/brain-adapter.js.map +1 -0
- package/dist/research/adapters/index.d.ts +3 -0
- package/dist/research/adapters/index.js +4 -0
- package/dist/research/adapters/index.js.map +1 -0
- package/dist/research/adapters/marketing-adapter.d.ts +15 -0
- package/dist/research/adapters/marketing-adapter.js +196 -0
- package/dist/research/adapters/marketing-adapter.js.map +1 -0
- package/dist/research/adapters/trading-adapter.d.ts +15 -0
- package/dist/research/adapters/trading-adapter.js +165 -0
- package/dist/research/adapters/trading-adapter.js.map +1 -0
- package/dist/research/data-miner.d.ts +84 -0
- package/dist/research/data-miner.js +174 -0
- package/dist/research/data-miner.js.map +1 -0
- package/dist/research/research-orchestrator.d.ts +72 -0
- package/dist/research/research-orchestrator.js +243 -0
- package/dist/research/research-orchestrator.js.map +1 -0
- package/package.json +1 -1
- package/research-dashboard.html +735 -0
|
@@ -0,0 +1,243 @@
|
|
|
1
|
+
import { getLogger } from '../utils/logger.js';
|
|
2
|
+
import { SelfObserver } from './self-observer.js';
|
|
3
|
+
import { AdaptiveStrategyEngine } from './adaptive-strategy.js';
|
|
4
|
+
import { ExperimentEngine } from './experiment-engine.js';
|
|
5
|
+
import { CrossDomainEngine } from './cross-domain-engine.js';
|
|
6
|
+
import { CounterfactualEngine } from './counterfactual-engine.js';
|
|
7
|
+
import { KnowledgeDistiller } from './knowledge-distiller.js';
|
|
8
|
+
import { ResearchAgendaEngine } from './agenda-engine.js';
|
|
9
|
+
import { AnomalyDetective } from './anomaly-detective.js';
|
|
10
|
+
import { ResearchJournal } from './journal.js';
|
|
11
|
+
// ── Orchestrator ────────────────────────────────────────
|
|
12
|
+
export class ResearchOrchestrator {
|
|
13
|
+
selfObserver;
|
|
14
|
+
adaptiveStrategy;
|
|
15
|
+
experimentEngine;
|
|
16
|
+
crossDomain;
|
|
17
|
+
counterfactual;
|
|
18
|
+
knowledgeDistiller;
|
|
19
|
+
researchAgenda;
|
|
20
|
+
anomalyDetective;
|
|
21
|
+
journal;
|
|
22
|
+
dataMiner = null;
|
|
23
|
+
brainName;
|
|
24
|
+
feedbackTimer = null;
|
|
25
|
+
cycleCount = 0;
|
|
26
|
+
distillEvery;
|
|
27
|
+
agendaEvery;
|
|
28
|
+
reflectEvery;
|
|
29
|
+
log = getLogger();
|
|
30
|
+
constructor(db, config, causalGraph) {
|
|
31
|
+
this.brainName = config.brainName;
|
|
32
|
+
this.distillEvery = config.distillEvery ?? 5;
|
|
33
|
+
this.agendaEvery = config.agendaEvery ?? 3;
|
|
34
|
+
this.reflectEvery = config.reflectEvery ?? 10;
|
|
35
|
+
this.selfObserver = new SelfObserver(db, { brainName: config.brainName });
|
|
36
|
+
this.adaptiveStrategy = new AdaptiveStrategyEngine(db, { brainName: config.brainName });
|
|
37
|
+
this.experimentEngine = new ExperimentEngine(db, { brainName: config.brainName });
|
|
38
|
+
this.crossDomain = new CrossDomainEngine(db);
|
|
39
|
+
this.counterfactual = new CounterfactualEngine(db, causalGraph ?? null);
|
|
40
|
+
this.knowledgeDistiller = new KnowledgeDistiller(db, { brainName: config.brainName });
|
|
41
|
+
this.researchAgenda = new ResearchAgendaEngine(db, { brainName: config.brainName });
|
|
42
|
+
this.anomalyDetective = new AnomalyDetective(db, { brainName: config.brainName });
|
|
43
|
+
this.journal = new ResearchJournal(db, { brainName: config.brainName });
|
|
44
|
+
}
|
|
45
|
+
/** Set the DataMiner instance for DB-driven engine feeding. */
|
|
46
|
+
setDataMiner(miner) {
|
|
47
|
+
this.dataMiner = miner;
|
|
48
|
+
}
|
|
49
|
+
/** Start the autonomous feedback loop timer. */
|
|
50
|
+
start(intervalMs = 300_000) {
|
|
51
|
+
if (this.feedbackTimer)
|
|
52
|
+
return;
|
|
53
|
+
this.feedbackTimer = setInterval(() => {
|
|
54
|
+
try {
|
|
55
|
+
this.runFeedbackCycle();
|
|
56
|
+
}
|
|
57
|
+
catch (err) {
|
|
58
|
+
this.log.error('[orchestrator] Feedback cycle error', { error: err.message });
|
|
59
|
+
}
|
|
60
|
+
}, intervalMs);
|
|
61
|
+
this.log.info(`[orchestrator] Research orchestrator started (feedback every ${intervalMs}ms)`);
|
|
62
|
+
}
|
|
63
|
+
/** Stop the feedback loop. */
|
|
64
|
+
stop() {
|
|
65
|
+
if (this.feedbackTimer) {
|
|
66
|
+
clearInterval(this.feedbackTimer);
|
|
67
|
+
this.feedbackTimer = null;
|
|
68
|
+
}
|
|
69
|
+
}
|
|
70
|
+
/**
|
|
71
|
+
* Feed a domain event from the brain's EventBus.
|
|
72
|
+
* Routes to: SelfObserver, AnomalyDetective, CrossDomain.
|
|
73
|
+
*/
|
|
74
|
+
onEvent(eventType, data = {}) {
|
|
75
|
+
this.selfObserver.record({
|
|
76
|
+
category: categorize(eventType),
|
|
77
|
+
event_type: eventType,
|
|
78
|
+
metrics: data,
|
|
79
|
+
});
|
|
80
|
+
this.anomalyDetective.recordMetric(eventType, 1);
|
|
81
|
+
this.crossDomain.recordEvent(this.brainName, eventType, data);
|
|
82
|
+
}
|
|
83
|
+
/**
|
|
84
|
+
* Feed a cross-brain event from CrossBrainSubscription.
|
|
85
|
+
* Routes to: CrossDomainEngine, AnomalyDetective.
|
|
86
|
+
*/
|
|
87
|
+
onCrossBrainEvent(sourceBrain, eventType, data = {}) {
|
|
88
|
+
this.crossDomain.recordEvent(sourceBrain, eventType, data);
|
|
89
|
+
this.anomalyDetective.recordMetric(`cross:${sourceBrain}:${eventType}`, 1);
|
|
90
|
+
}
|
|
91
|
+
/**
|
|
92
|
+
* Hook into AutonomousResearchScheduler cycle completion.
|
|
93
|
+
* Records discoveries in journal and feeds metrics to anomaly detection.
|
|
94
|
+
*/
|
|
95
|
+
onResearchCycleComplete(report) {
|
|
96
|
+
// Record cycle metrics for anomaly detection
|
|
97
|
+
this.anomalyDetective.recordMetric('research_discoveries', report.discoveriesProduced);
|
|
98
|
+
this.anomalyDetective.recordMetric('research_hypotheses_tested', report.hypothesesTested);
|
|
99
|
+
this.anomalyDetective.recordMetric('research_confirmed', report.hypothesesConfirmed);
|
|
100
|
+
this.anomalyDetective.recordMetric('research_duration_ms', report.duration);
|
|
101
|
+
// Self-observe the research cycle
|
|
102
|
+
this.selfObserver.record({
|
|
103
|
+
category: 'latency',
|
|
104
|
+
event_type: 'research:cycle_complete',
|
|
105
|
+
metrics: {
|
|
106
|
+
cycle: report.cycle,
|
|
107
|
+
discoveries: report.discoveriesProduced,
|
|
108
|
+
duration_ms: report.duration,
|
|
109
|
+
confirmed: report.hypothesesConfirmed,
|
|
110
|
+
rejected: report.hypothesesRejected,
|
|
111
|
+
},
|
|
112
|
+
});
|
|
113
|
+
// Journal the cycle
|
|
114
|
+
if (report.discoveriesProduced > 0 || report.hypothesesConfirmed > 0) {
|
|
115
|
+
this.journal.recordDiscovery(`Research Cycle #${report.cycle}`, `Cycle completed: ${report.discoveriesProduced} discoveries, ${report.hypothesesConfirmed} hypotheses confirmed, ${report.hypothesesRejected} rejected, ${report.causalEdgesFound} causal edges. Duration: ${report.duration}ms.`, { report }, report.hypothesesConfirmed > 0 ? 'notable' : 'routine');
|
|
116
|
+
}
|
|
117
|
+
}
|
|
118
|
+
/**
|
|
119
|
+
* Run one autonomous feedback cycle.
|
|
120
|
+
* This is where the engines talk to each other.
|
|
121
|
+
*/
|
|
122
|
+
runFeedbackCycle() {
|
|
123
|
+
this.cycleCount++;
|
|
124
|
+
const start = Date.now();
|
|
125
|
+
this.log.info(`[orchestrator] ─── Feedback Cycle #${this.cycleCount} ───`);
|
|
126
|
+
// 0. DataMiner: mine new data from DB into engines
|
|
127
|
+
if (this.dataMiner) {
|
|
128
|
+
try {
|
|
129
|
+
this.dataMiner.mine();
|
|
130
|
+
}
|
|
131
|
+
catch (err) {
|
|
132
|
+
this.log.error(`[orchestrator] DataMiner error: ${err.message}`);
|
|
133
|
+
}
|
|
134
|
+
}
|
|
135
|
+
// 1. Self-observer analyzes accumulated observations → insights
|
|
136
|
+
const insights = this.selfObserver.analyze();
|
|
137
|
+
if (insights.length > 0) {
|
|
138
|
+
this.log.info(`[orchestrator] Self-observer: ${insights.length} insights`);
|
|
139
|
+
for (const insight of insights) {
|
|
140
|
+
this.journal.recordDiscovery(insight.title, insight.description, { ...insight.evidence, type: insight.type, confidence: insight.confidence }, insight.confidence > 0.8 ? 'notable' : 'routine');
|
|
141
|
+
}
|
|
142
|
+
}
|
|
143
|
+
// 2. Anomaly detection
|
|
144
|
+
const anomalies = this.anomalyDetective.detect();
|
|
145
|
+
if (anomalies.length > 0) {
|
|
146
|
+
this.log.info(`[orchestrator] Anomalies detected: ${anomalies.length}`);
|
|
147
|
+
for (const a of anomalies) {
|
|
148
|
+
this.journal.write({
|
|
149
|
+
type: 'anomaly',
|
|
150
|
+
title: a.title,
|
|
151
|
+
content: a.description,
|
|
152
|
+
tags: [this.brainName, 'anomaly', a.type, a.severity],
|
|
153
|
+
references: [],
|
|
154
|
+
significance: a.severity === 'critical' ? 'breakthrough' : a.severity === 'high' ? 'notable' : 'routine',
|
|
155
|
+
data: { metric: a.metric, expected: a.expected_value, actual: a.actual_value, deviation: a.deviation },
|
|
156
|
+
});
|
|
157
|
+
}
|
|
158
|
+
}
|
|
159
|
+
// 3. Cross-domain correlation analysis
|
|
160
|
+
const correlations = this.crossDomain.analyze();
|
|
161
|
+
const significant = correlations.filter(c => Math.abs(c.correlation) > 0.5 && c.p_value < 0.05);
|
|
162
|
+
if (significant.length > 0) {
|
|
163
|
+
this.log.info(`[orchestrator] Cross-domain: ${significant.length} significant correlations`);
|
|
164
|
+
for (const corr of significant) {
|
|
165
|
+
this.journal.recordDiscovery(`Cross-domain: ${corr.source_brain}:${corr.source_event} → ${corr.target_brain}:${corr.target_event}`, corr.narrative, { correlation: corr.correlation, pValue: corr.p_value, lag: corr.lag_seconds }, 'notable');
|
|
166
|
+
}
|
|
167
|
+
}
|
|
168
|
+
// 4. Adaptive strategy: check for regressions and revert
|
|
169
|
+
const reverted = this.adaptiveStrategy.checkAndRevert(this.cycleCount);
|
|
170
|
+
for (const r of reverted) {
|
|
171
|
+
this.journal.write({
|
|
172
|
+
type: 'adaptation',
|
|
173
|
+
title: `Reverted: ${r.strategy}/${r.parameter}`,
|
|
174
|
+
content: `Strategy adaptation reverted: ${r.parameter} from ${r.new_value} back to ${r.old_value}. Reason: ${r.reason}`,
|
|
175
|
+
tags: [this.brainName, 'revert', r.strategy],
|
|
176
|
+
references: [],
|
|
177
|
+
significance: 'notable',
|
|
178
|
+
data: { adaptation: r },
|
|
179
|
+
});
|
|
180
|
+
}
|
|
181
|
+
// 5. Check running experiments
|
|
182
|
+
const experiments = this.experimentEngine.list();
|
|
183
|
+
for (const exp of experiments) {
|
|
184
|
+
if (exp.status === 'analyzing' && exp.id) {
|
|
185
|
+
const result = this.experimentEngine.analyze(exp.id);
|
|
186
|
+
if (result?.conclusion) {
|
|
187
|
+
const sig = result.conclusion.significant;
|
|
188
|
+
this.journal.recordExperiment(exp.name, sig ? (result.conclusion.direction === 'positive' ? 'confirmed' : 'rejected') : 'inconclusive', { conclusion: result.conclusion, hypothesis: exp.hypothesis }, sig);
|
|
189
|
+
this.log.info(`[orchestrator] Experiment "${exp.name}": ${sig ? result.conclusion.direction : 'inconclusive'} (p=${result.conclusion.p_value.toFixed(4)}, d=${result.conclusion.effect_size.toFixed(2)})`);
|
|
190
|
+
}
|
|
191
|
+
}
|
|
192
|
+
}
|
|
193
|
+
// 6. Knowledge distillation (periodic)
|
|
194
|
+
if (this.cycleCount % this.distillEvery === 0) {
|
|
195
|
+
const { principles, antiPatterns, strategies } = this.knowledgeDistiller.distill();
|
|
196
|
+
if (principles.length + antiPatterns.length + strategies.length > 0) {
|
|
197
|
+
this.log.info(`[orchestrator] Knowledge distilled: ${principles.length} principles, ${antiPatterns.length} anti-patterns, ${strategies.length} strategies`);
|
|
198
|
+
}
|
|
199
|
+
}
|
|
200
|
+
// 7. Research agenda generation (periodic)
|
|
201
|
+
if (this.cycleCount % this.agendaEvery === 0) {
|
|
202
|
+
const agenda = this.researchAgenda.generate();
|
|
203
|
+
if (agenda.length > 0) {
|
|
204
|
+
this.log.info(`[orchestrator] Research agenda: ${agenda.length} items generated`);
|
|
205
|
+
}
|
|
206
|
+
}
|
|
207
|
+
// 8. Journal reflection (periodic)
|
|
208
|
+
if (this.cycleCount % this.reflectEvery === 0) {
|
|
209
|
+
this.journal.reflect();
|
|
210
|
+
}
|
|
211
|
+
const duration = Date.now() - start;
|
|
212
|
+
this.log.info(`[orchestrator] ─── Feedback Cycle #${this.cycleCount} complete (${duration}ms) ───`);
|
|
213
|
+
}
|
|
214
|
+
/** Get a comprehensive research summary for dashboards/API. */
|
|
215
|
+
getSummary() {
|
|
216
|
+
return {
|
|
217
|
+
brainName: this.brainName,
|
|
218
|
+
feedbackCycles: this.cycleCount,
|
|
219
|
+
dataMiner: this.dataMiner?.getState() ?? null,
|
|
220
|
+
selfInsights: this.selfObserver.getInsights(undefined, 10),
|
|
221
|
+
anomalies: this.anomalyDetective.getAnomalies(undefined, 10),
|
|
222
|
+
experiments: this.experimentEngine.list(undefined, 10),
|
|
223
|
+
agenda: this.researchAgenda.getAgenda(10),
|
|
224
|
+
journal: this.journal.getSummary(),
|
|
225
|
+
knowledge: this.knowledgeDistiller.getSummary(),
|
|
226
|
+
correlations: this.crossDomain.getCorrelations(10),
|
|
227
|
+
strategy: this.adaptiveStrategy.getStatus(),
|
|
228
|
+
};
|
|
229
|
+
}
|
|
230
|
+
}
|
|
231
|
+
// ── Helpers ─────────────────────────────────────────────
|
|
232
|
+
function categorize(eventType) {
|
|
233
|
+
if (eventType.includes('cross_brain') || eventType.includes('cross:'))
|
|
234
|
+
return 'cross_brain';
|
|
235
|
+
if (eventType.includes('latency') || eventType.includes('duration'))
|
|
236
|
+
return 'latency';
|
|
237
|
+
if (eventType.includes('resolution') || eventType.includes('solved'))
|
|
238
|
+
return 'resolution_rate';
|
|
239
|
+
if (eventType.includes('query') || eventType.includes('search') || eventType.includes('recall'))
|
|
240
|
+
return 'query_quality';
|
|
241
|
+
return 'tool_usage';
|
|
242
|
+
}
|
|
243
|
+
//# sourceMappingURL=research-orchestrator.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"research-orchestrator.js","sourceRoot":"","sources":["../../src/research/research-orchestrator.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED