@timmeck/brain-core 2.36.85 → 2.36.87

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.
@@ -1,6 +1,6 @@
1
1
  import type Database from 'better-sqlite3';
2
2
  import { BaseEmbeddingEngine } from '../embeddings/engine.js';
3
- import type { DreamEngineConfig, MemoryReplayResult, SynapsePruneResult, MemoryCompressionResult, ImportanceDecayResult } from './types.js';
3
+ import type { DreamEngineConfig, MemoryReplayResult, SynapsePruneResult, MemoryCompressionResult, MemoryCluster, ImportanceDecayResult, FactExtractionResult } from './types.js';
4
4
  export declare class DreamConsolidator {
5
5
  /**
6
6
  * Replay top-importance memories through the synapse network.
@@ -21,4 +21,10 @@ export declare class DreamConsolidator {
21
21
  * Archive memories that fall below threshold.
22
22
  */
23
23
  decayImportance(db: Database.Database, config: Required<DreamEngineConfig>): ImportanceDecayResult;
24
+ /**
25
+ * Phase 3.5: Fact Extraction from consolidated memory clusters.
26
+ * Pattern-based (no LLM in v1) — extracts facts, constraints, and open questions.
27
+ * Only processes clusters with ≥3 members (genuine consolidation, not single memories).
28
+ */
29
+ extractFacts(db: Database.Database, clusters: MemoryCluster[], _config: Required<DreamEngineConfig>): FactExtractionResult;
24
30
  }
@@ -262,5 +262,86 @@ export class DreamConsolidator {
262
262
  result.avgDecay = result.memoriesDecayed > 0 ? totalDecay / result.memoriesDecayed : 0;
263
263
  return result;
264
264
  }
265
+ /**
266
+ * Phase 3.5: Fact Extraction from consolidated memory clusters.
267
+ * Pattern-based (no LLM in v1) — extracts facts, constraints, and open questions.
268
+ * Only processes clusters with ≥3 members (genuine consolidation, not single memories).
269
+ */
270
+ extractFacts(db, clusters, _config) {
271
+ const result = {
272
+ factsCreated: 0,
273
+ constraintsCreated: 0,
274
+ questionsCreated: 0,
275
+ };
276
+ // Only process clusters with ≥3 members (genuine consolidation)
277
+ const substantialClusters = clusters.filter(c => c.memberIds.length >= 2); // centroid + 2 members = 3 total
278
+ if (substantialClusters.length === 0)
279
+ return result;
280
+ // Check if conversation_memories table exists (for storing extracted facts)
281
+ let hasConvMemTable = false;
282
+ try {
283
+ db.prepare('SELECT 1 FROM conversation_memories LIMIT 0').run();
284
+ hasConvMemTable = true;
285
+ }
286
+ catch {
287
+ // conversation_memories table doesn't exist — skip
288
+ }
289
+ if (!hasConvMemTable)
290
+ return result;
291
+ const insertStmt = db.prepare(`
292
+ INSERT INTO conversation_memories (session_id, category, key, content, importance, source, tags)
293
+ VALUES (NULL, ?, ?, ?, ?, 'inferred', '["dream","extracted"]')
294
+ `);
295
+ for (const cluster of substantialClusters) {
296
+ const content = cluster.consolidatedTitle;
297
+ if (!content || content.length < 10)
298
+ continue;
299
+ const lower = content.toLowerCase();
300
+ // Constraint patterns: always/never/must/don't/avoid
301
+ if (CONSTRAINT_PATTERN.test(lower)) {
302
+ const key = `dream_constraint:${hashContent(content)}`;
303
+ try {
304
+ insertStmt.run('constraint', key, content, 6);
305
+ result.constraintsCreated++;
306
+ }
307
+ catch { /* duplicate key — skip */ }
308
+ continue;
309
+ }
310
+ // Open question patterns: how to/why does/should we/what if/need to figure out
311
+ if (QUESTION_PATTERN.test(lower)) {
312
+ const key = `dream_question:${hashContent(content)}`;
313
+ try {
314
+ insertStmt.run('open_question', key, content, 5);
315
+ result.questionsCreated++;
316
+ }
317
+ catch { /* duplicate key — skip */ }
318
+ continue;
319
+ }
320
+ // Fact patterns: decided to/chose/will use/agreed on
321
+ if (FACT_PATTERN.test(lower)) {
322
+ const key = `dream_fact:${hashContent(content)}`;
323
+ try {
324
+ insertStmt.run('fact', key, content, 6);
325
+ result.factsCreated++;
326
+ }
327
+ catch { /* duplicate key — skip */ }
328
+ continue;
329
+ }
330
+ }
331
+ return result;
332
+ }
333
+ }
334
+ // ── Pattern Constants ──────────────────────────────────────
335
+ const FACT_PATTERN = /(?:decided to|chose|will use|agreed on|we use|switched to|using|adopted|implemented)/;
336
+ const CONSTRAINT_PATTERN = /(?:always|never|must not|don't|do not|avoid|forbidden|must|required to|not allowed)/;
337
+ const QUESTION_PATTERN = /(?:how to|why does|should we|what if|need to figure out|unclear|unknown|investigate|open question|todo|to decide)/;
338
+ /** Simple content hash for dedup keys. */
339
+ function hashContent(content) {
340
+ let h = 0;
341
+ const s = content.slice(0, 200).toLowerCase();
342
+ for (let i = 0; i < s.length; i++) {
343
+ h = ((h << 5) - h + s.charCodeAt(i)) | 0;
344
+ }
345
+ return Math.abs(h).toString(36);
265
346
  }
266
347
  //# sourceMappingURL=consolidator.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"consolidator.js","sourceRoot":"","sources":["../../src/dream/consolidator.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"consolidator.js","sourceRoot":"","sources":["../../src/dream/consolidator.ts"],"names":[],"mappings":"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"}
@@ -47,6 +47,11 @@ export function runDreamMigration(db) {
47
47
  );
48
48
  CREATE INDEX IF NOT EXISTS idx_dream_retrospective_cycle ON dream_retrospective(dream_cycle_id);
49
49
  `);
50
+ // Session 132: Add facts_extracted column to dream_history
51
+ try {
52
+ db.exec(`ALTER TABLE dream_history ADD COLUMN facts_extracted INTEGER NOT NULL DEFAULT 0`);
53
+ }
54
+ catch { /* exists */ }
50
55
  }
51
56
  // ── Engine ──────────────────────────────────────────────
52
57
  export class DreamEngine {
@@ -188,6 +193,17 @@ export class DreamEngine {
188
193
  this.log.info(`[dream] Compression: ${compression.memoriesConsolidated} clusters, ${compression.memoriesSuperseded} memories superseded (ratio: ${compression.compressionRatio.toFixed(2)})`);
189
194
  ts?.emit('dream', 'dreaming', `Compressed ${compression.memoriesSuperseded} memories into ${compression.memoriesConsolidated} clusters (ratio: ${compression.compressionRatio.toFixed(2)})`, 'notable');
190
195
  }
196
+ // 3.5. Fact Extraction (Session 132: DreamEngine v2)
197
+ let factExtraction = { factsCreated: 0, constraintsCreated: 0, questionsCreated: 0 };
198
+ if (compression.clusters.length > 0) {
199
+ ts?.emit('dream', 'dreaming', `Extracting facts from ${compression.clusters.length} clusters...`);
200
+ factExtraction = this.consolidator.extractFacts(this.db, compression.clusters, this.config);
201
+ const totalExtracted = factExtraction.factsCreated + factExtraction.constraintsCreated + factExtraction.questionsCreated;
202
+ if (totalExtracted > 0) {
203
+ this.log.info(`[dream] Fact extraction: ${factExtraction.factsCreated} facts, ${factExtraction.constraintsCreated} constraints, ${factExtraction.questionsCreated} questions`);
204
+ ts?.emit('dream', 'discovering', `Extracted ${totalExtracted} typed memories from dream clusters`, 'notable');
205
+ }
206
+ }
191
207
  // 4. Importance Decay
192
208
  ts?.emit('dream', 'dreaming', 'Decaying old memory importance...');
193
209
  const decay = this.consolidator.decayImportance(this.db, this.config);
@@ -224,6 +240,9 @@ export class DreamEngine {
224
240
  ` Pruned: ${pruning.synapsesPruned} weak synapses`,
225
241
  ` Compressed: ${compression.memoriesConsolidated} clusters, ${compression.memoriesSuperseded} superseded`,
226
242
  ` Decayed: ${decay.memoriesDecayed} memories, ${decay.memoriesArchived} archived`,
243
+ (factExtraction.factsCreated + factExtraction.constraintsCreated + factExtraction.questionsCreated) > 0
244
+ ? ` Extracted: ${factExtraction.factsCreated} facts, ${factExtraction.constraintsCreated} constraints, ${factExtraction.questionsCreated} questions`
245
+ : '',
227
246
  principlesDiscovered > 0 ? ` Distilled: ${principlesDiscovered} knowledge items` : '',
228
247
  ].filter(Boolean).join('\n'),
229
248
  tags: ['dream', this.config.brainName, trigger],
@@ -254,6 +273,7 @@ export class DreamEngine {
254
273
  replay,
255
274
  pruning,
256
275
  compression,
276
+ factExtraction,
257
277
  decay,
258
278
  principlesDiscovered,
259
279
  journalEntryId,
@@ -268,6 +288,7 @@ export class DreamEngine {
268
288
  replay,
269
289
  pruning,
270
290
  compression,
291
+ factExtraction,
271
292
  decay,
272
293
  principlesDiscovered,
273
294
  journalEntryId,
@@ -502,9 +523,9 @@ export class DreamEngine {
502
523
  cycle_id, timestamp, duration, trigger,
503
524
  memories_replayed, synapses_strengthened, synapses_pruned, synapses_decayed,
504
525
  memories_consolidated, memories_superseded, memories_archived, importance_decayed,
505
- principles_discovered, compression_ratio, journal_entry_id
506
- ) VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?)
507
- `).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);
526
+ principles_discovered, compression_ratio, journal_entry_id, facts_extracted
527
+ ) VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?)
528
+ `).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, report.factExtraction.factsCreated + report.factExtraction.constraintsCreated + report.factExtraction.questionsCreated);
508
529
  this.db.prepare(`
509
530
  UPDATE dream_state SET
510
531
  total_cycles = total_cycles + 1,
@@ -1 +1 @@
1
- {"version":3,"file":"dream-engine.js","sourceRoot":"","sources":["../../src/dream/dream-engine.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"dream-engine.js","sourceRoot":"","sources":["../../src/dream/dream-engine.ts"],"names":[],"mappings":"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"}
@@ -1,3 +1,3 @@
1
1
  export { DreamEngine, runDreamMigration } from './dream-engine.js';
2
2
  export { DreamConsolidator } from './consolidator.js';
3
- export type { DreamEngineConfig, DreamCycleReport, DreamStatus, DreamHistoryEntry, DreamTrigger, MemoryReplayResult, SynapsePruneResult, MemoryCompressionResult, MemoryCluster, ImportanceDecayResult, DreamRetrospective, PruningEfficiency, } from './types.js';
3
+ export type { DreamEngineConfig, DreamCycleReport, DreamStatus, DreamHistoryEntry, DreamTrigger, MemoryReplayResult, SynapsePruneResult, MemoryCompressionResult, MemoryCluster, ImportanceDecayResult, FactExtractionResult, DreamRetrospective, PruningEfficiency, } from './types.js';
@@ -24,6 +24,11 @@ export interface DreamEngineConfig {
24
24
  maxConsolidationsPerCycle?: number;
25
25
  }
26
26
  export type DreamTrigger = 'auto' | 'manual' | 'idle';
27
+ export interface FactExtractionResult {
28
+ factsCreated: number;
29
+ constraintsCreated: number;
30
+ questionsCreated: number;
31
+ }
27
32
  export interface DreamCycleReport {
28
33
  cycleId: string;
29
34
  timestamp: number;
@@ -32,6 +37,7 @@ export interface DreamCycleReport {
32
37
  replay: MemoryReplayResult;
33
38
  pruning: SynapsePruneResult;
34
39
  compression: MemoryCompressionResult;
40
+ factExtraction: FactExtractionResult;
35
41
  decay: ImportanceDecayResult;
36
42
  principlesDiscovered: number;
37
43
  journalEntryId: number | null;
@@ -0,0 +1,85 @@
1
+ import type Database from 'better-sqlite3';
2
+ export type ExperimentLedgerStatus = 'running_a' | 'running_b' | 'evaluating' | 'decided' | 'cancelled';
3
+ export type ExperimentDecision = 'keep' | 'revert';
4
+ export interface ExperimentEntry {
5
+ id: number;
6
+ hypothesis: string;
7
+ variant_a: string;
8
+ variant_b: string;
9
+ target_engine: string;
10
+ metric_keys: string[];
11
+ cycles_per_variant: number;
12
+ status: ExperimentLedgerStatus;
13
+ current_cycle: number;
14
+ metrics_a: Record<string, number[]>;
15
+ metrics_b: Record<string, number[]>;
16
+ snapshot_id: number | null;
17
+ decision: ExperimentDecision | null;
18
+ decision_reason: string | null;
19
+ created_at: string;
20
+ completed_at: string | null;
21
+ }
22
+ export interface ExperimentResult {
23
+ experimentId: number;
24
+ decision: ExperimentDecision;
25
+ summary: {
26
+ metricKey: string;
27
+ meanA: number;
28
+ meanB: number;
29
+ improvement: number;
30
+ }[];
31
+ }
32
+ export declare function runExperimentLedgerMigration(db: Database.Database): void;
33
+ export declare class ExperimentLedger {
34
+ private readonly db;
35
+ private readonly log;
36
+ constructor(db: Database.Database);
37
+ /**
38
+ * Start a new A/B experiment.
39
+ * Only 1 active experiment allowed (rule 7).
40
+ */
41
+ startExperiment(opts: {
42
+ hypothesis: string;
43
+ variantA: string;
44
+ variantB: string;
45
+ targetEngine: string;
46
+ metricKeys: string[];
47
+ cyclesPerVariant?: number;
48
+ snapshotId?: number;
49
+ }): ExperimentEntry;
50
+ /**
51
+ * Record metrics for the current cycle.
52
+ * Automatically switches from variant A → B when enough cycles collected.
53
+ */
54
+ recordCycleMetrics(metrics: Record<string, number>): {
55
+ phase: 'a' | 'b' | 'done';
56
+ cycle: number;
57
+ } | null;
58
+ /**
59
+ * Evaluate the experiment: compare A vs B metrics.
60
+ */
61
+ evaluate(experimentId: number): ExperimentResult | null;
62
+ /**
63
+ * Decide: keep variant B or revert to variant A.
64
+ */
65
+ decide(experimentId: number, decision: ExperimentDecision, reason?: string): void;
66
+ /**
67
+ * Cancel an active experiment.
68
+ */
69
+ cancel(experimentId: number, reason?: string): void;
70
+ /** Get active experiment (max 1). */
71
+ getActive(): ExperimentEntry | null;
72
+ /** Get experiment by ID. */
73
+ get(id: number): ExperimentEntry | null;
74
+ /** List all experiments. */
75
+ list(limit?: number): ExperimentEntry[];
76
+ /** Get summary stats. */
77
+ getStatus(): {
78
+ total: number;
79
+ active: ExperimentEntry | null;
80
+ kept: number;
81
+ reverted: number;
82
+ cancelled: number;
83
+ };
84
+ private toEntry;
85
+ }
@@ -0,0 +1,195 @@
1
+ // ── Experiment Ledger ─────────────────────────────────────
2
+ //
3
+ // Kontrolliertes A/B-Testing für Systemänderungen.
4
+ // Max 1 aktives Experiment gleichzeitig (Isolation der Effekte).
5
+ // Jedes Experiment: Hypothese → A/B Varianten → Metriken → Entscheidung (keep/revert).
6
+ //
7
+ // Integration:
8
+ // - ParameterRegistry für Snapshots + Rollback
9
+ // - CycleOutcomeTracker für Metriken
10
+ import { getLogger } from '../utils/logger.js';
11
+ // ── Migration ─────────────────────────────────────────────
12
+ export function runExperimentLedgerMigration(db) {
13
+ db.exec(`
14
+ CREATE TABLE IF NOT EXISTS experiment_ledger (
15
+ id INTEGER PRIMARY KEY AUTOINCREMENT,
16
+ hypothesis TEXT NOT NULL,
17
+ variant_a TEXT NOT NULL,
18
+ variant_b TEXT NOT NULL,
19
+ target_engine TEXT NOT NULL,
20
+ metric_keys TEXT NOT NULL DEFAULT '[]',
21
+ cycles_per_variant INTEGER NOT NULL DEFAULT 20,
22
+ status TEXT NOT NULL DEFAULT 'running_a',
23
+ current_cycle INTEGER NOT NULL DEFAULT 0,
24
+ metrics_a TEXT NOT NULL DEFAULT '{}',
25
+ metrics_b TEXT NOT NULL DEFAULT '{}',
26
+ snapshot_id INTEGER,
27
+ decision TEXT,
28
+ decision_reason TEXT,
29
+ created_at TEXT NOT NULL DEFAULT (datetime('now')),
30
+ completed_at TEXT
31
+ );
32
+ CREATE INDEX IF NOT EXISTS idx_exp_ledger_status ON experiment_ledger(status);
33
+ `);
34
+ }
35
+ // ── Engine ────────────────────────────────────────────────
36
+ export class ExperimentLedger {
37
+ db;
38
+ log = getLogger();
39
+ constructor(db) {
40
+ this.db = db;
41
+ runExperimentLedgerMigration(db);
42
+ }
43
+ /**
44
+ * Start a new A/B experiment.
45
+ * Only 1 active experiment allowed (rule 7).
46
+ */
47
+ startExperiment(opts) {
48
+ // Check: max 1 active experiment
49
+ const active = this.getActive();
50
+ if (active) {
51
+ throw new Error(`Experiment #${active.id} is still running. Max 1 active experiment allowed.`);
52
+ }
53
+ const cycles = opts.cyclesPerVariant ?? 20;
54
+ const result = this.db.prepare(`
55
+ INSERT INTO experiment_ledger (hypothesis, variant_a, variant_b, target_engine, metric_keys, cycles_per_variant, snapshot_id)
56
+ VALUES (?, ?, ?, ?, ?, ?, ?)
57
+ `).run(opts.hypothesis, opts.variantA, opts.variantB, opts.targetEngine, JSON.stringify(opts.metricKeys), cycles, opts.snapshotId ?? null);
58
+ const id = result.lastInsertRowid;
59
+ this.log.info(`[experiment-ledger] Started experiment #${id}: "${opts.hypothesis}"`);
60
+ return this.get(id);
61
+ }
62
+ /**
63
+ * Record metrics for the current cycle.
64
+ * Automatically switches from variant A → B when enough cycles collected.
65
+ */
66
+ recordCycleMetrics(metrics) {
67
+ const exp = this.getActive();
68
+ if (!exp)
69
+ return null;
70
+ const isPhaseA = exp.status === 'running_a';
71
+ const isPhaseB = exp.status === 'running_b';
72
+ if (!isPhaseA && !isPhaseB)
73
+ return null;
74
+ const metricsStore = isPhaseA ? exp.metrics_a : exp.metrics_b;
75
+ // Append each metric value
76
+ for (const key of exp.metric_keys) {
77
+ if (metrics[key] !== undefined) {
78
+ if (!metricsStore[key])
79
+ metricsStore[key] = [];
80
+ metricsStore[key].push(metrics[key]);
81
+ }
82
+ }
83
+ const newCycle = exp.current_cycle + 1;
84
+ const metricsJson = JSON.stringify(metricsStore);
85
+ // Check if we need to switch phases
86
+ const currentPhaseMetrics = isPhaseA ? exp.metrics_a : exp.metrics_b;
87
+ const sampleCount = Math.max(...exp.metric_keys.map(k => (currentPhaseMetrics[k]?.length ?? 0)));
88
+ if (sampleCount >= exp.cycles_per_variant) {
89
+ if (isPhaseA) {
90
+ // Switch to phase B
91
+ this.db.prepare(`
92
+ UPDATE experiment_ledger SET metrics_a = ?, current_cycle = ?, status = 'running_b'
93
+ WHERE id = ?
94
+ `).run(metricsJson, newCycle, exp.id);
95
+ this.log.info(`[experiment-ledger] Experiment #${exp.id}: Phase A complete (${sampleCount} cycles), switching to B`);
96
+ return { phase: 'b', cycle: newCycle };
97
+ }
98
+ else {
99
+ // Phase B complete → evaluating
100
+ this.db.prepare(`
101
+ UPDATE experiment_ledger SET metrics_b = ?, current_cycle = ?, status = 'evaluating'
102
+ WHERE id = ?
103
+ `).run(metricsJson, newCycle, exp.id);
104
+ this.log.info(`[experiment-ledger] Experiment #${exp.id}: Phase B complete (${sampleCount} cycles), ready to evaluate`);
105
+ return { phase: 'done', cycle: newCycle };
106
+ }
107
+ }
108
+ // Still collecting
109
+ const col = isPhaseA ? 'metrics_a' : 'metrics_b';
110
+ this.db.prepare(`UPDATE experiment_ledger SET ${col} = ?, current_cycle = ? WHERE id = ?`).run(metricsJson, newCycle, exp.id);
111
+ return { phase: isPhaseA ? 'a' : 'b', cycle: newCycle };
112
+ }
113
+ /**
114
+ * Evaluate the experiment: compare A vs B metrics.
115
+ */
116
+ evaluate(experimentId) {
117
+ const exp = this.get(experimentId);
118
+ if (!exp)
119
+ return null;
120
+ const summary = [];
121
+ for (const key of exp.metric_keys) {
122
+ const valuesA = exp.metrics_a[key] ?? [];
123
+ const valuesB = exp.metrics_b[key] ?? [];
124
+ const meanA = valuesA.length > 0 ? valuesA.reduce((a, b) => a + b, 0) / valuesA.length : 0;
125
+ const meanB = valuesB.length > 0 ? valuesB.reduce((a, b) => a + b, 0) / valuesB.length : 0;
126
+ const improvement = meanA > 0 ? ((meanB - meanA) / meanA) * 100 : 0;
127
+ summary.push({ metricKey: key, meanA, meanB, improvement });
128
+ }
129
+ return { experimentId, decision: 'keep', summary };
130
+ }
131
+ /**
132
+ * Decide: keep variant B or revert to variant A.
133
+ */
134
+ decide(experimentId, decision, reason) {
135
+ this.db.prepare(`
136
+ UPDATE experiment_ledger SET decision = ?, decision_reason = ?, status = 'decided', completed_at = datetime('now')
137
+ WHERE id = ?
138
+ `).run(decision, reason ?? null, experimentId);
139
+ this.log.info(`[experiment-ledger] Experiment #${experimentId}: decided → ${decision}${reason ? ` (${reason})` : ''}`);
140
+ }
141
+ /**
142
+ * Cancel an active experiment.
143
+ */
144
+ cancel(experimentId, reason) {
145
+ this.db.prepare(`
146
+ UPDATE experiment_ledger SET status = 'cancelled', decision_reason = ?, completed_at = datetime('now')
147
+ WHERE id = ?
148
+ `).run(reason ?? 'cancelled', experimentId);
149
+ this.log.info(`[experiment-ledger] Experiment #${experimentId}: cancelled`);
150
+ }
151
+ /** Get active experiment (max 1). */
152
+ getActive() {
153
+ const row = this.db.prepare("SELECT * FROM experiment_ledger WHERE status IN ('running_a', 'running_b', 'evaluating') LIMIT 1").get();
154
+ return row ? this.toEntry(row) : null;
155
+ }
156
+ /** Get experiment by ID. */
157
+ get(id) {
158
+ const row = this.db.prepare('SELECT * FROM experiment_ledger WHERE id = ?').get(id);
159
+ return row ? this.toEntry(row) : null;
160
+ }
161
+ /** List all experiments. */
162
+ list(limit = 20) {
163
+ const rows = this.db.prepare('SELECT * FROM experiment_ledger ORDER BY id DESC LIMIT ?').all(limit);
164
+ return rows.map(r => this.toEntry(r));
165
+ }
166
+ /** Get summary stats. */
167
+ getStatus() {
168
+ const total = this.db.prepare('SELECT COUNT(*) as c FROM experiment_ledger').get().c;
169
+ const kept = this.db.prepare("SELECT COUNT(*) as c FROM experiment_ledger WHERE decision = 'keep'").get().c;
170
+ const reverted = this.db.prepare("SELECT COUNT(*) as c FROM experiment_ledger WHERE decision = 'revert'").get().c;
171
+ const cancelled = this.db.prepare("SELECT COUNT(*) as c FROM experiment_ledger WHERE status = 'cancelled'").get().c;
172
+ return { total, active: this.getActive(), kept, reverted, cancelled };
173
+ }
174
+ toEntry(row) {
175
+ return {
176
+ id: row.id,
177
+ hypothesis: row.hypothesis,
178
+ variant_a: row.variant_a,
179
+ variant_b: row.variant_b,
180
+ target_engine: row.target_engine,
181
+ metric_keys: JSON.parse(row.metric_keys || '[]'),
182
+ cycles_per_variant: row.cycles_per_variant,
183
+ status: row.status,
184
+ current_cycle: row.current_cycle,
185
+ metrics_a: JSON.parse(row.metrics_a || '{}'),
186
+ metrics_b: JSON.parse(row.metrics_b || '{}'),
187
+ snapshot_id: row.snapshot_id,
188
+ decision: row.decision,
189
+ decision_reason: row.decision_reason,
190
+ created_at: row.created_at,
191
+ completed_at: row.completed_at,
192
+ };
193
+ }
194
+ }
195
+ //# sourceMappingURL=experiment-ledger.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"experiment-ledger.js","sourceRoot":"","sources":["../../src/experiments/experiment-ledger.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,2 @@
1
+ export { ExperimentLedger, runExperimentLedgerMigration } from './experiment-ledger.js';
2
+ export type { ExperimentEntry, ExperimentResult, ExperimentLedgerStatus, ExperimentDecision } from './experiment-ledger.js';
@@ -0,0 +1,2 @@
1
+ export { ExperimentLedger, runExperimentLedgerMigration } from './experiment-ledger.js';
2
+ //# sourceMappingURL=index.js.map