@timmeck/brain-core 2.7.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 +6 -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 +8 -0
- package/dist/research/research-orchestrator.js +25 -0
- package/dist/research/research-orchestrator.js.map +1 -1
- package/package.json +1 -1
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"marketing-adapter.js","sourceRoot":"","sources":["../../../src/research/adapters/marketing-adapter.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
import type Database from 'better-sqlite3';
|
|
2
|
+
import type { DataMinerAdapter, MinedObservation, MinedCausalEvent, MinedMetric, MinedHypothesisObservation, MinedCrossDomainEvent } from '../data-miner.js';
|
|
3
|
+
/**
|
|
4
|
+
* DataMiner adapter for Trading Brain.
|
|
5
|
+
* Mines: trades (win/loss, profit, regime, pair), rules (confidence, win-rate),
|
|
6
|
+
* chains (streak patterns), calibration.
|
|
7
|
+
*/
|
|
8
|
+
export declare class TradingDataMinerAdapter implements DataMinerAdapter {
|
|
9
|
+
readonly name = "trading-brain";
|
|
10
|
+
mineObservations(db: Database.Database, since: number): MinedObservation[];
|
|
11
|
+
mineCausalEvents(db: Database.Database, since: number): MinedCausalEvent[];
|
|
12
|
+
mineMetrics(db: Database.Database, since: number): MinedMetric[];
|
|
13
|
+
mineHypothesisObservations(db: Database.Database, since: number): MinedHypothesisObservation[];
|
|
14
|
+
mineCrossDomainEvents(db: Database.Database, since: number): MinedCrossDomainEvent[];
|
|
15
|
+
}
|
|
@@ -0,0 +1,165 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* DataMiner adapter for Trading Brain.
|
|
3
|
+
* Mines: trades (win/loss, profit, regime, pair), rules (confidence, win-rate),
|
|
4
|
+
* chains (streak patterns), calibration.
|
|
5
|
+
*/
|
|
6
|
+
export class TradingDataMinerAdapter {
|
|
7
|
+
name = 'trading-brain';
|
|
8
|
+
mineObservations(db, since) {
|
|
9
|
+
const observations = [];
|
|
10
|
+
// Trade outcomes by pair
|
|
11
|
+
const trades = safeAll(db, `SELECT pair, COUNT(*) as cnt, SUM(CASE WHEN win = 1 THEN 1 ELSE 0 END) as wins,
|
|
12
|
+
SUM(COALESCE(profit, 0)) as total_profit
|
|
13
|
+
FROM trades WHERE created_at > ? GROUP BY pair`, [isoFromTs(since)]);
|
|
14
|
+
for (const t of trades) {
|
|
15
|
+
observations.push({
|
|
16
|
+
category: 'tool_usage',
|
|
17
|
+
event_type: 'trade:pair_stats',
|
|
18
|
+
metrics: { pair: t.pair, count: t.cnt, wins: t.wins, win_rate: t.cnt > 0 ? t.wins / t.cnt : 0, total_profit: t.total_profit },
|
|
19
|
+
});
|
|
20
|
+
}
|
|
21
|
+
// Trade outcomes by regime
|
|
22
|
+
const regimes = safeAll(db, `SELECT COALESCE(regime, 'unknown') as regime, COUNT(*) as cnt,
|
|
23
|
+
SUM(CASE WHEN win = 1 THEN 1 ELSE 0 END) as wins
|
|
24
|
+
FROM trades WHERE created_at > ? GROUP BY regime`, [isoFromTs(since)]);
|
|
25
|
+
for (const r of regimes) {
|
|
26
|
+
observations.push({
|
|
27
|
+
category: 'tool_usage',
|
|
28
|
+
event_type: 'trade:regime_stats',
|
|
29
|
+
metrics: { regime: r.regime, count: r.cnt, wins: r.wins, win_rate: r.cnt > 0 ? r.wins / r.cnt : 0 },
|
|
30
|
+
});
|
|
31
|
+
}
|
|
32
|
+
// Rule confidence distribution
|
|
33
|
+
const rules = safeAll(db, `SELECT id, pattern, confidence, COALESCE(win_rate, 0) as win_rate FROM rules WHERE updated_at > ?`, [isoFromTs(since)]);
|
|
34
|
+
for (const r of rules) {
|
|
35
|
+
observations.push({
|
|
36
|
+
category: 'query_quality',
|
|
37
|
+
event_type: 'rule:confidence',
|
|
38
|
+
metrics: { rule_id: r.id, pattern: r.pattern, confidence: r.confidence, win_rate: r.win_rate },
|
|
39
|
+
});
|
|
40
|
+
}
|
|
41
|
+
// Chain/streak patterns
|
|
42
|
+
const chains = safeAll(db, `SELECT pair, type, length FROM chains WHERE created_at > ?`, [isoFromTs(since)]);
|
|
43
|
+
for (const c of chains) {
|
|
44
|
+
observations.push({
|
|
45
|
+
category: 'tool_usage',
|
|
46
|
+
event_type: 'chain:streak',
|
|
47
|
+
metrics: { pair: c.pair, type: c.type, length: c.length },
|
|
48
|
+
});
|
|
49
|
+
}
|
|
50
|
+
return observations;
|
|
51
|
+
}
|
|
52
|
+
mineCausalEvents(db, since) {
|
|
53
|
+
const events = [];
|
|
54
|
+
// Individual trades as causal events
|
|
55
|
+
const trades = safeAll(db, `SELECT id, pair, win, COALESCE(profit, 0) as profit, COALESCE(regime, 'unknown') as regime, fingerprint
|
|
56
|
+
FROM trades WHERE created_at > ? ORDER BY created_at LIMIT 500`, [isoFromTs(since)]);
|
|
57
|
+
for (const t of trades) {
|
|
58
|
+
events.push({
|
|
59
|
+
source: 'trading-brain',
|
|
60
|
+
type: t.win ? 'trade:win' : 'trade:loss',
|
|
61
|
+
data: { tradeId: t.id, pair: t.pair, profit: t.profit, regime: t.regime, fingerprint: t.fingerprint },
|
|
62
|
+
});
|
|
63
|
+
}
|
|
64
|
+
// Rule learning events
|
|
65
|
+
const rules = safeAll(db, `SELECT id, pattern, confidence FROM rules WHERE created_at > ?`, [isoFromTs(since)]);
|
|
66
|
+
for (const r of rules) {
|
|
67
|
+
events.push({
|
|
68
|
+
source: 'trading-brain',
|
|
69
|
+
type: 'rule:learned',
|
|
70
|
+
data: { ruleId: r.id, pattern: r.pattern, confidence: r.confidence },
|
|
71
|
+
});
|
|
72
|
+
}
|
|
73
|
+
return events;
|
|
74
|
+
}
|
|
75
|
+
mineMetrics(db, since) {
|
|
76
|
+
const metrics = [];
|
|
77
|
+
// Overall win rate
|
|
78
|
+
const winRate = safeGet(db, `SELECT COUNT(*) as total, SUM(CASE WHEN win = 1 THEN 1 ELSE 0 END) as wins FROM trades WHERE created_at > ?`, [isoFromTs(since)]);
|
|
79
|
+
if (winRate && winRate.total > 0) {
|
|
80
|
+
metrics.push({ name: 'win_rate', value: winRate.wins / winRate.total });
|
|
81
|
+
metrics.push({ name: 'trade_count', value: winRate.total });
|
|
82
|
+
}
|
|
83
|
+
// Average profit per trade
|
|
84
|
+
const profit = safeGet(db, `SELECT AVG(COALESCE(profit, 0)) as avg_profit FROM trades WHERE created_at > ?`, [isoFromTs(since)]);
|
|
85
|
+
if (profit?.avg_profit != null) {
|
|
86
|
+
metrics.push({ name: 'avg_profit', value: profit.avg_profit });
|
|
87
|
+
}
|
|
88
|
+
// Average rule confidence
|
|
89
|
+
const ruleConf = safeGet(db, `SELECT AVG(confidence) as avg_confidence FROM rules WHERE confidence IS NOT NULL AND updated_at > ?`, [isoFromTs(since)]);
|
|
90
|
+
if (ruleConf?.avg_confidence != null) {
|
|
91
|
+
metrics.push({ name: 'avg_rule_confidence', value: ruleConf.avg_confidence });
|
|
92
|
+
}
|
|
93
|
+
// Max streak length
|
|
94
|
+
const maxStreak = safeGet(db, `SELECT MAX(length) as max_length FROM chains WHERE created_at > ?`, [isoFromTs(since)]);
|
|
95
|
+
if (maxStreak?.max_length != null) {
|
|
96
|
+
metrics.push({ name: 'max_streak_length', value: maxStreak.max_length });
|
|
97
|
+
}
|
|
98
|
+
// Calibration score
|
|
99
|
+
const calibration = safeGet(db, `SELECT overall_accuracy FROM calibration ORDER BY updated_at DESC LIMIT 1`, []);
|
|
100
|
+
if (calibration?.overall_accuracy != null) {
|
|
101
|
+
metrics.push({ name: 'calibration_accuracy', value: calibration.overall_accuracy });
|
|
102
|
+
}
|
|
103
|
+
return metrics;
|
|
104
|
+
}
|
|
105
|
+
mineHypothesisObservations(db, since) {
|
|
106
|
+
const observations = [];
|
|
107
|
+
// Trade wins/losses per pair
|
|
108
|
+
const trades = safeAll(db, `SELECT pair, win, COUNT(*) as cnt FROM trades WHERE created_at > ? GROUP BY pair, win`, [isoFromTs(since)]);
|
|
109
|
+
for (const t of trades) {
|
|
110
|
+
observations.push({
|
|
111
|
+
source: 'trading-brain',
|
|
112
|
+
type: t.win ? 'trade:win' : 'trade:loss',
|
|
113
|
+
value: t.cnt,
|
|
114
|
+
metadata: { pair: t.pair },
|
|
115
|
+
});
|
|
116
|
+
}
|
|
117
|
+
// Chain detections
|
|
118
|
+
const chains = safeAll(db, `SELECT pair, type, length FROM chains WHERE created_at > ?`, [isoFromTs(since)]);
|
|
119
|
+
for (const c of chains) {
|
|
120
|
+
observations.push({
|
|
121
|
+
source: 'trading-brain',
|
|
122
|
+
type: 'chain:detected',
|
|
123
|
+
value: c.length,
|
|
124
|
+
metadata: { pair: c.pair, streakType: c.type },
|
|
125
|
+
});
|
|
126
|
+
}
|
|
127
|
+
return observations;
|
|
128
|
+
}
|
|
129
|
+
mineCrossDomainEvents(db, since) {
|
|
130
|
+
const events = [];
|
|
131
|
+
// Trade batch summary for cross-domain
|
|
132
|
+
const summary = safeGet(db, `SELECT COUNT(*) as total, SUM(CASE WHEN win = 1 THEN 1 ELSE 0 END) as wins,
|
|
133
|
+
SUM(COALESCE(profit, 0)) as total_profit
|
|
134
|
+
FROM trades WHERE created_at > ?`, [isoFromTs(since)]);
|
|
135
|
+
if (summary && summary.total > 0) {
|
|
136
|
+
events.push({
|
|
137
|
+
brain: 'trading-brain',
|
|
138
|
+
eventType: 'trade:batch',
|
|
139
|
+
data: { count: summary.total, wins: summary.wins, win_rate: summary.wins / summary.total, total_profit: summary.total_profit },
|
|
140
|
+
});
|
|
141
|
+
}
|
|
142
|
+
return events;
|
|
143
|
+
}
|
|
144
|
+
}
|
|
145
|
+
// ── Helpers ─────────────────────────────────────────────
|
|
146
|
+
function isoFromTs(ts) {
|
|
147
|
+
return ts > 0 ? new Date(ts).toISOString() : '1970-01-01T00:00:00.000Z';
|
|
148
|
+
}
|
|
149
|
+
function safeAll(db, sql, params) {
|
|
150
|
+
try {
|
|
151
|
+
return db.prepare(sql).all(...params);
|
|
152
|
+
}
|
|
153
|
+
catch {
|
|
154
|
+
return [];
|
|
155
|
+
}
|
|
156
|
+
}
|
|
157
|
+
function safeGet(db, sql, params) {
|
|
158
|
+
try {
|
|
159
|
+
return db.prepare(sql).get(...params);
|
|
160
|
+
}
|
|
161
|
+
catch {
|
|
162
|
+
return undefined;
|
|
163
|
+
}
|
|
164
|
+
}
|
|
165
|
+
//# sourceMappingURL=trading-adapter.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"trading-adapter.js","sourceRoot":"","sources":["../../../src/research/adapters/trading-adapter.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,84 @@
|
|
|
1
|
+
import type Database from 'better-sqlite3';
|
|
2
|
+
import type { SelfObserver } from './self-observer.js';
|
|
3
|
+
import type { AnomalyDetective } from './anomaly-detective.js';
|
|
4
|
+
import type { CrossDomainEngine } from './cross-domain-engine.js';
|
|
5
|
+
import type { CausalGraph } from '../causal/engine.js';
|
|
6
|
+
import type { HypothesisEngine } from '../hypothesis/engine.js';
|
|
7
|
+
export interface MinedObservation {
|
|
8
|
+
category: 'tool_usage' | 'query_quality' | 'resolution_rate' | 'latency' | 'cross_brain';
|
|
9
|
+
event_type: string;
|
|
10
|
+
metrics: Record<string, unknown>;
|
|
11
|
+
}
|
|
12
|
+
export interface MinedCausalEvent {
|
|
13
|
+
source: string;
|
|
14
|
+
type: string;
|
|
15
|
+
data?: unknown;
|
|
16
|
+
}
|
|
17
|
+
export interface MinedMetric {
|
|
18
|
+
name: string;
|
|
19
|
+
value: number;
|
|
20
|
+
}
|
|
21
|
+
export interface MinedHypothesisObservation {
|
|
22
|
+
source: string;
|
|
23
|
+
type: string;
|
|
24
|
+
value: number;
|
|
25
|
+
metadata?: Record<string, unknown>;
|
|
26
|
+
}
|
|
27
|
+
export interface MinedCrossDomainEvent {
|
|
28
|
+
brain: string;
|
|
29
|
+
eventType: string;
|
|
30
|
+
data?: Record<string, unknown>;
|
|
31
|
+
}
|
|
32
|
+
export interface MineResult {
|
|
33
|
+
observations: MinedObservation[];
|
|
34
|
+
causalEvents: MinedCausalEvent[];
|
|
35
|
+
metrics: MinedMetric[];
|
|
36
|
+
hypothesisObservations: MinedHypothesisObservation[];
|
|
37
|
+
crossDomainEvents: MinedCrossDomainEvent[];
|
|
38
|
+
}
|
|
39
|
+
export interface DataMinerAdapter {
|
|
40
|
+
/** Human-readable name for logging. */
|
|
41
|
+
readonly name: string;
|
|
42
|
+
/** Mine observations for SelfObserver from domain tables. */
|
|
43
|
+
mineObservations(db: Database.Database, since: number): MinedObservation[];
|
|
44
|
+
/** Mine causal events for CausalGraph from domain tables. */
|
|
45
|
+
mineCausalEvents(db: Database.Database, since: number): MinedCausalEvent[];
|
|
46
|
+
/** Mine metric values for AnomalyDetective from domain tables. */
|
|
47
|
+
mineMetrics(db: Database.Database, since: number): MinedMetric[];
|
|
48
|
+
/** Mine observations for HypothesisEngine from domain tables. */
|
|
49
|
+
mineHypothesisObservations(db: Database.Database, since: number): MinedHypothesisObservation[];
|
|
50
|
+
/** Mine cross-domain events for CrossDomainEngine from domain tables. */
|
|
51
|
+
mineCrossDomainEvents(db: Database.Database, since: number): MinedCrossDomainEvent[];
|
|
52
|
+
}
|
|
53
|
+
export interface DataMinerEngines {
|
|
54
|
+
selfObserver: SelfObserver;
|
|
55
|
+
anomalyDetective: AnomalyDetective;
|
|
56
|
+
crossDomain: CrossDomainEngine;
|
|
57
|
+
causalGraph?: CausalGraph;
|
|
58
|
+
hypothesisEngine?: HypothesisEngine;
|
|
59
|
+
}
|
|
60
|
+
export interface DataMinerState {
|
|
61
|
+
last_mined_at: number;
|
|
62
|
+
bootstrap_complete: boolean;
|
|
63
|
+
total_observations_mined: number;
|
|
64
|
+
total_causal_events_mined: number;
|
|
65
|
+
total_metrics_mined: number;
|
|
66
|
+
}
|
|
67
|
+
export declare function runDataMinerMigration(db: Database.Database): void;
|
|
68
|
+
export declare class DataMiner {
|
|
69
|
+
private db;
|
|
70
|
+
private adapter;
|
|
71
|
+
private engines;
|
|
72
|
+
private log;
|
|
73
|
+
private state;
|
|
74
|
+
constructor(db: Database.Database, adapter: DataMinerAdapter, engines: DataMinerEngines);
|
|
75
|
+
/** Bootstrap: scan ALL historical data and feed into engines. Only runs once. */
|
|
76
|
+
bootstrap(): void;
|
|
77
|
+
/** Incremental mine: fetch new data since last run and feed into engines. */
|
|
78
|
+
mine(): void;
|
|
79
|
+
/** Get current miner state. */
|
|
80
|
+
getState(): DataMinerState;
|
|
81
|
+
private mineFrom;
|
|
82
|
+
private loadState;
|
|
83
|
+
private saveState;
|
|
84
|
+
}
|
|
@@ -0,0 +1,174 @@
|
|
|
1
|
+
import { getLogger } from '../utils/logger.js';
|
|
2
|
+
// ── Migration ───────────────────────────────────────────
|
|
3
|
+
export function runDataMinerMigration(db) {
|
|
4
|
+
db.exec(`
|
|
5
|
+
CREATE TABLE IF NOT EXISTS data_miner_state (
|
|
6
|
+
id INTEGER PRIMARY KEY CHECK (id = 1),
|
|
7
|
+
last_mined_at INTEGER NOT NULL DEFAULT 0,
|
|
8
|
+
bootstrap_complete INTEGER NOT NULL DEFAULT 0,
|
|
9
|
+
total_observations_mined INTEGER NOT NULL DEFAULT 0,
|
|
10
|
+
total_causal_events_mined INTEGER NOT NULL DEFAULT 0,
|
|
11
|
+
total_metrics_mined INTEGER NOT NULL DEFAULT 0,
|
|
12
|
+
updated_at TEXT DEFAULT (datetime('now'))
|
|
13
|
+
);
|
|
14
|
+
INSERT OR IGNORE INTO data_miner_state (id) VALUES (1);
|
|
15
|
+
`);
|
|
16
|
+
}
|
|
17
|
+
// ── DataMiner ───────────────────────────────────────────
|
|
18
|
+
export class DataMiner {
|
|
19
|
+
db;
|
|
20
|
+
adapter;
|
|
21
|
+
engines;
|
|
22
|
+
log = getLogger();
|
|
23
|
+
state;
|
|
24
|
+
constructor(db, adapter, engines) {
|
|
25
|
+
this.db = db;
|
|
26
|
+
this.adapter = adapter;
|
|
27
|
+
this.engines = engines;
|
|
28
|
+
runDataMinerMigration(db);
|
|
29
|
+
this.state = this.loadState();
|
|
30
|
+
}
|
|
31
|
+
/** Bootstrap: scan ALL historical data and feed into engines. Only runs once. */
|
|
32
|
+
bootstrap() {
|
|
33
|
+
if (this.state.bootstrap_complete) {
|
|
34
|
+
this.log.info(`[data-miner] Bootstrap already complete for ${this.adapter.name}`);
|
|
35
|
+
return;
|
|
36
|
+
}
|
|
37
|
+
this.log.info(`[data-miner] Bootstrapping ${this.adapter.name} — scanning all historical data...`);
|
|
38
|
+
const start = Date.now();
|
|
39
|
+
// Mine everything from epoch
|
|
40
|
+
const result = this.mineFrom(0);
|
|
41
|
+
this.state.bootstrap_complete = true;
|
|
42
|
+
this.state.last_mined_at = Date.now();
|
|
43
|
+
this.saveState();
|
|
44
|
+
const duration = Date.now() - start;
|
|
45
|
+
this.log.info(`[data-miner] Bootstrap complete for ${this.adapter.name} in ${duration}ms — ` +
|
|
46
|
+
`${result.observations} observations, ${result.causalEvents} causal events, ` +
|
|
47
|
+
`${result.metrics} metrics, ${result.hypothesisObs} hypothesis observations, ` +
|
|
48
|
+
`${result.crossDomain} cross-domain events`);
|
|
49
|
+
}
|
|
50
|
+
/** Incremental mine: fetch new data since last run and feed into engines. */
|
|
51
|
+
mine() {
|
|
52
|
+
const since = this.state.last_mined_at;
|
|
53
|
+
const now = Date.now();
|
|
54
|
+
const result = this.mineFrom(since);
|
|
55
|
+
this.state.last_mined_at = now;
|
|
56
|
+
this.saveState();
|
|
57
|
+
if (result.total > 0) {
|
|
58
|
+
this.log.info(`[data-miner] Mined ${result.total} items from ${this.adapter.name} ` +
|
|
59
|
+
`(obs: ${result.observations}, causal: ${result.causalEvents}, ` +
|
|
60
|
+
`metrics: ${result.metrics}, hypo: ${result.hypothesisObs}, cross: ${result.crossDomain})`);
|
|
61
|
+
}
|
|
62
|
+
}
|
|
63
|
+
/** Get current miner state. */
|
|
64
|
+
getState() {
|
|
65
|
+
return { ...this.state };
|
|
66
|
+
}
|
|
67
|
+
// ── Internal ─────────────────────────────────────────
|
|
68
|
+
mineFrom(since) {
|
|
69
|
+
let observations = 0;
|
|
70
|
+
let causalEvents = 0;
|
|
71
|
+
let metrics = 0;
|
|
72
|
+
let hypothesisObs = 0;
|
|
73
|
+
let crossDomain = 0;
|
|
74
|
+
// 1. Mine observations → SelfObserver
|
|
75
|
+
try {
|
|
76
|
+
const obs = this.adapter.mineObservations(this.db, since);
|
|
77
|
+
for (const o of obs) {
|
|
78
|
+
this.engines.selfObserver.record({
|
|
79
|
+
category: o.category,
|
|
80
|
+
event_type: o.event_type,
|
|
81
|
+
metrics: o.metrics,
|
|
82
|
+
});
|
|
83
|
+
}
|
|
84
|
+
observations = obs.length;
|
|
85
|
+
this.state.total_observations_mined += observations;
|
|
86
|
+
}
|
|
87
|
+
catch (err) {
|
|
88
|
+
this.log.error(`[data-miner] Error mining observations: ${err.message}`);
|
|
89
|
+
}
|
|
90
|
+
// 2. Mine causal events → CausalGraph
|
|
91
|
+
try {
|
|
92
|
+
const events = this.adapter.mineCausalEvents(this.db, since);
|
|
93
|
+
if (this.engines.causalGraph) {
|
|
94
|
+
for (const e of events) {
|
|
95
|
+
this.engines.causalGraph.recordEvent(e.source, e.type, e.data);
|
|
96
|
+
}
|
|
97
|
+
}
|
|
98
|
+
causalEvents = events.length;
|
|
99
|
+
this.state.total_causal_events_mined += causalEvents;
|
|
100
|
+
}
|
|
101
|
+
catch (err) {
|
|
102
|
+
this.log.error(`[data-miner] Error mining causal events: ${err.message}`);
|
|
103
|
+
}
|
|
104
|
+
// 3. Mine metrics → AnomalyDetective
|
|
105
|
+
try {
|
|
106
|
+
const m = this.adapter.mineMetrics(this.db, since);
|
|
107
|
+
for (const metric of m) {
|
|
108
|
+
this.engines.anomalyDetective.recordMetric(metric.name, metric.value);
|
|
109
|
+
}
|
|
110
|
+
metrics = m.length;
|
|
111
|
+
}
|
|
112
|
+
catch (err) {
|
|
113
|
+
this.log.error(`[data-miner] Error mining metrics: ${err.message}`);
|
|
114
|
+
}
|
|
115
|
+
// 4. Mine hypothesis observations → HypothesisEngine
|
|
116
|
+
try {
|
|
117
|
+
const hypo = this.adapter.mineHypothesisObservations(this.db, since);
|
|
118
|
+
if (this.engines.hypothesisEngine) {
|
|
119
|
+
for (const h of hypo) {
|
|
120
|
+
this.engines.hypothesisEngine.observe({
|
|
121
|
+
source: h.source,
|
|
122
|
+
type: h.type,
|
|
123
|
+
value: h.value,
|
|
124
|
+
timestamp: Date.now(),
|
|
125
|
+
metadata: h.metadata,
|
|
126
|
+
});
|
|
127
|
+
}
|
|
128
|
+
}
|
|
129
|
+
hypothesisObs = hypo.length;
|
|
130
|
+
}
|
|
131
|
+
catch (err) {
|
|
132
|
+
this.log.error(`[data-miner] Error mining hypothesis observations: ${err.message}`);
|
|
133
|
+
}
|
|
134
|
+
// 5. Mine cross-domain events → CrossDomainEngine
|
|
135
|
+
try {
|
|
136
|
+
const cd = this.adapter.mineCrossDomainEvents(this.db, since);
|
|
137
|
+
for (const c of cd) {
|
|
138
|
+
this.engines.crossDomain.recordEvent(c.brain, c.eventType, c.data);
|
|
139
|
+
}
|
|
140
|
+
crossDomain = cd.length;
|
|
141
|
+
}
|
|
142
|
+
catch (err) {
|
|
143
|
+
this.log.error(`[data-miner] Error mining cross-domain events: ${err.message}`);
|
|
144
|
+
}
|
|
145
|
+
const total = observations + causalEvents + metrics + hypothesisObs + crossDomain;
|
|
146
|
+
return { observations, causalEvents, metrics, hypothesisObs, crossDomain, total };
|
|
147
|
+
}
|
|
148
|
+
loadState() {
|
|
149
|
+
const row = this.db.prepare('SELECT * FROM data_miner_state WHERE id = 1').get();
|
|
150
|
+
if (!row) {
|
|
151
|
+
return { last_mined_at: 0, bootstrap_complete: false, total_observations_mined: 0, total_causal_events_mined: 0, total_metrics_mined: 0 };
|
|
152
|
+
}
|
|
153
|
+
return {
|
|
154
|
+
last_mined_at: row.last_mined_at,
|
|
155
|
+
bootstrap_complete: row.bootstrap_complete === 1,
|
|
156
|
+
total_observations_mined: row.total_observations_mined,
|
|
157
|
+
total_causal_events_mined: row.total_causal_events_mined,
|
|
158
|
+
total_metrics_mined: row.total_metrics_mined,
|
|
159
|
+
};
|
|
160
|
+
}
|
|
161
|
+
saveState() {
|
|
162
|
+
this.db.prepare(`
|
|
163
|
+
UPDATE data_miner_state SET
|
|
164
|
+
last_mined_at = ?,
|
|
165
|
+
bootstrap_complete = ?,
|
|
166
|
+
total_observations_mined = ?,
|
|
167
|
+
total_causal_events_mined = ?,
|
|
168
|
+
total_metrics_mined = ?,
|
|
169
|
+
updated_at = datetime('now')
|
|
170
|
+
WHERE id = 1
|
|
171
|
+
`).run(this.state.last_mined_at, this.state.bootstrap_complete ? 1 : 0, this.state.total_observations_mined, this.state.total_causal_events_mined, this.state.total_metrics_mined);
|
|
172
|
+
}
|
|
173
|
+
}
|
|
174
|
+
//# sourceMappingURL=data-miner.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"data-miner.js","sourceRoot":"","sources":["../../src/research/data-miner.ts"],"names":[],"mappings":"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"}
|
|
@@ -10,6 +10,8 @@ import { AnomalyDetective } from './anomaly-detective.js';
|
|
|
10
10
|
import { ResearchJournal } from './journal.js';
|
|
11
11
|
import type { CausalGraph } from '../causal/engine.js';
|
|
12
12
|
import type { ResearchCycleReport } from './autonomous-scheduler.js';
|
|
13
|
+
import type { DataMiner } from './data-miner.js';
|
|
14
|
+
import type { DreamEngine } from '../dream/dream-engine.js';
|
|
13
15
|
export interface ResearchOrchestratorConfig {
|
|
14
16
|
brainName: string;
|
|
15
17
|
/** Feedback loop interval in ms. Default: 300_000 (5 min) */
|
|
@@ -31,6 +33,8 @@ export declare class ResearchOrchestrator {
|
|
|
31
33
|
readonly researchAgenda: ResearchAgendaEngine;
|
|
32
34
|
readonly anomalyDetective: AnomalyDetective;
|
|
33
35
|
readonly journal: ResearchJournal;
|
|
36
|
+
private dataMiner;
|
|
37
|
+
private dreamEngine;
|
|
34
38
|
private brainName;
|
|
35
39
|
private feedbackTimer;
|
|
36
40
|
private cycleCount;
|
|
@@ -39,6 +43,10 @@ export declare class ResearchOrchestrator {
|
|
|
39
43
|
private reflectEvery;
|
|
40
44
|
private log;
|
|
41
45
|
constructor(db: Database.Database, config: ResearchOrchestratorConfig, causalGraph?: CausalGraph);
|
|
46
|
+
/** Set the DataMiner instance for DB-driven engine feeding. */
|
|
47
|
+
setDataMiner(miner: DataMiner): void;
|
|
48
|
+
/** Set the DreamEngine — wires journal + knowledgeDistiller into it. */
|
|
49
|
+
setDreamEngine(engine: DreamEngine): void;
|
|
42
50
|
/** Start the autonomous feedback loop timer. */
|
|
43
51
|
start(intervalMs?: number): void;
|
|
44
52
|
/** Stop the feedback loop. */
|
|
@@ -19,6 +19,8 @@ export class ResearchOrchestrator {
|
|
|
19
19
|
researchAgenda;
|
|
20
20
|
anomalyDetective;
|
|
21
21
|
journal;
|
|
22
|
+
dataMiner = null;
|
|
23
|
+
dreamEngine = null;
|
|
22
24
|
brainName;
|
|
23
25
|
feedbackTimer = null;
|
|
24
26
|
cycleCount = 0;
|
|
@@ -41,6 +43,16 @@ export class ResearchOrchestrator {
|
|
|
41
43
|
this.anomalyDetective = new AnomalyDetective(db, { brainName: config.brainName });
|
|
42
44
|
this.journal = new ResearchJournal(db, { brainName: config.brainName });
|
|
43
45
|
}
|
|
46
|
+
/** Set the DataMiner instance for DB-driven engine feeding. */
|
|
47
|
+
setDataMiner(miner) {
|
|
48
|
+
this.dataMiner = miner;
|
|
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
|
+
}
|
|
44
56
|
/** Start the autonomous feedback loop timer. */
|
|
45
57
|
start(intervalMs = 300_000) {
|
|
46
58
|
if (this.feedbackTimer)
|
|
@@ -61,12 +73,14 @@ export class ResearchOrchestrator {
|
|
|
61
73
|
clearInterval(this.feedbackTimer);
|
|
62
74
|
this.feedbackTimer = null;
|
|
63
75
|
}
|
|
76
|
+
this.dreamEngine?.stop();
|
|
64
77
|
}
|
|
65
78
|
/**
|
|
66
79
|
* Feed a domain event from the brain's EventBus.
|
|
67
80
|
* Routes to: SelfObserver, AnomalyDetective, CrossDomain.
|
|
68
81
|
*/
|
|
69
82
|
onEvent(eventType, data = {}) {
|
|
83
|
+
this.dreamEngine?.recordActivity();
|
|
70
84
|
this.selfObserver.record({
|
|
71
85
|
category: categorize(eventType),
|
|
72
86
|
event_type: eventType,
|
|
@@ -118,6 +132,15 @@ export class ResearchOrchestrator {
|
|
|
118
132
|
this.cycleCount++;
|
|
119
133
|
const start = Date.now();
|
|
120
134
|
this.log.info(`[orchestrator] ─── Feedback Cycle #${this.cycleCount} ───`);
|
|
135
|
+
// 0. DataMiner: mine new data from DB into engines
|
|
136
|
+
if (this.dataMiner) {
|
|
137
|
+
try {
|
|
138
|
+
this.dataMiner.mine();
|
|
139
|
+
}
|
|
140
|
+
catch (err) {
|
|
141
|
+
this.log.error(`[orchestrator] DataMiner error: ${err.message}`);
|
|
142
|
+
}
|
|
143
|
+
}
|
|
121
144
|
// 1. Self-observer analyzes accumulated observations → insights
|
|
122
145
|
const insights = this.selfObserver.analyze();
|
|
123
146
|
if (insights.length > 0) {
|
|
@@ -202,6 +225,7 @@ export class ResearchOrchestrator {
|
|
|
202
225
|
return {
|
|
203
226
|
brainName: this.brainName,
|
|
204
227
|
feedbackCycles: this.cycleCount,
|
|
228
|
+
dataMiner: this.dataMiner?.getState() ?? null,
|
|
205
229
|
selfInsights: this.selfObserver.getInsights(undefined, 10),
|
|
206
230
|
anomalies: this.anomalyDetective.getAnomalies(undefined, 10),
|
|
207
231
|
experiments: this.experimentEngine.list(undefined, 10),
|
|
@@ -210,6 +234,7 @@ export class ResearchOrchestrator {
|
|
|
210
234
|
knowledge: this.knowledgeDistiller.getSummary(),
|
|
211
235
|
correlations: this.crossDomain.getCorrelations(10),
|
|
212
236
|
strategy: this.adaptiveStrategy.getStatus(),
|
|
237
|
+
dream: this.dreamEngine?.getStatus() ?? null,
|
|
213
238
|
};
|
|
214
239
|
}
|
|
215
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