@timmeck/brain-core 2.26.0 → 2.28.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.
Files changed (68) hide show
  1. package/dist/causal/engine.d.ts +47 -0
  2. package/dist/causal/engine.js +142 -0
  3. package/dist/causal/engine.js.map +1 -1
  4. package/dist/codegen/code-generator.d.ts +17 -0
  5. package/dist/codegen/code-generator.js +61 -0
  6. package/dist/codegen/code-generator.js.map +1 -1
  7. package/dist/codegen/index.d.ts +1 -0
  8. package/dist/codegen/index.js.map +1 -1
  9. package/dist/curiosity/curiosity-engine.d.ts +29 -0
  10. package/dist/curiosity/curiosity-engine.js +147 -0
  11. package/dist/curiosity/curiosity-engine.js.map +1 -1
  12. package/dist/curiosity/index.d.ts +1 -1
  13. package/dist/debate/debate-engine.d.ts +27 -0
  14. package/dist/debate/debate-engine.js +169 -0
  15. package/dist/debate/debate-engine.js.map +1 -1
  16. package/dist/debate/index.d.ts +1 -1
  17. package/dist/dream/dream-engine.d.ts +16 -1
  18. package/dist/dream/dream-engine.js +190 -0
  19. package/dist/dream/dream-engine.js.map +1 -1
  20. package/dist/dream/index.d.ts +1 -1
  21. package/dist/dream/types.d.ts +18 -0
  22. package/dist/emergence/emergence-engine.d.ts +19 -0
  23. package/dist/emergence/emergence-engine.js +118 -0
  24. package/dist/emergence/emergence-engine.js.map +1 -1
  25. package/dist/goals/goal-engine.d.ts +127 -0
  26. package/dist/goals/goal-engine.js +386 -0
  27. package/dist/goals/goal-engine.js.map +1 -0
  28. package/dist/goals/index.d.ts +2 -0
  29. package/dist/goals/index.js +2 -0
  30. package/dist/goals/index.js.map +1 -0
  31. package/dist/hypothesis/engine.d.ts +38 -0
  32. package/dist/hypothesis/engine.js +167 -0
  33. package/dist/hypothesis/engine.js.map +1 -1
  34. package/dist/index.d.ts +19 -6
  35. package/dist/index.js +9 -0
  36. package/dist/index.js.map +1 -1
  37. package/dist/memory-palace/index.d.ts +2 -0
  38. package/dist/memory-palace/index.js +2 -0
  39. package/dist/memory-palace/index.js.map +1 -0
  40. package/dist/memory-palace/memory-palace.d.ts +150 -0
  41. package/dist/memory-palace/memory-palace.js +479 -0
  42. package/dist/memory-palace/memory-palace.js.map +1 -0
  43. package/dist/metacognition/index.d.ts +7 -1
  44. package/dist/metacognition/index.js +3 -0
  45. package/dist/metacognition/index.js.map +1 -1
  46. package/dist/metacognition/meta-cognition-layer.d.ts +50 -0
  47. package/dist/metacognition/meta-cognition-layer.js +190 -0
  48. package/dist/metacognition/meta-cognition-layer.js.map +1 -1
  49. package/dist/metacognition/self-test-engine.d.ts +52 -0
  50. package/dist/metacognition/self-test-engine.js +210 -0
  51. package/dist/metacognition/self-test-engine.js.map +1 -0
  52. package/dist/metacognition/simulation-engine.d.ts +71 -0
  53. package/dist/metacognition/simulation-engine.js +267 -0
  54. package/dist/metacognition/simulation-engine.js.map +1 -0
  55. package/dist/metacognition/teach-engine.d.ts +63 -0
  56. package/dist/metacognition/teach-engine.js +185 -0
  57. package/dist/metacognition/teach-engine.js.map +1 -0
  58. package/dist/research/data-scout.d.ts +68 -0
  59. package/dist/research/data-scout.js +254 -0
  60. package/dist/research/data-scout.js.map +1 -0
  61. package/dist/research/research-orchestrator.d.ts +24 -0
  62. package/dist/research/research-orchestrator.js +331 -0
  63. package/dist/research/research-orchestrator.js.map +1 -1
  64. package/dist/transfer/index.d.ts +1 -1
  65. package/dist/transfer/transfer-engine.d.ts +38 -0
  66. package/dist/transfer/transfer-engine.js +138 -0
  67. package/dist/transfer/transfer-engine.js.map +1 -1
  68. package/package.json +1 -1
@@ -25,6 +25,27 @@ export interface CausalAnalysis {
25
25
  roots: string[];
26
26
  leaves: string[];
27
27
  strongestChain: CausalPath | null;
28
+ interventionsCount: number;
29
+ }
30
+ export interface CausalIntervention {
31
+ id?: number;
32
+ cause: string;
33
+ effect: string;
34
+ interventionType: string;
35
+ expectedDirection: string;
36
+ actualDirection: string | null;
37
+ confounders: string[];
38
+ validated: boolean;
39
+ timestamp: string;
40
+ }
41
+ export interface StrengthEvolution {
42
+ cause: string;
43
+ effect: string;
44
+ dataPoints: Array<{
45
+ timestamp: string;
46
+ strength: number;
47
+ confidence: number;
48
+ }>;
28
49
  }
29
50
  export declare function runCausalMigration(db: Database.Database): void;
30
51
  /**
@@ -89,6 +110,32 @@ export declare class CausalGraph {
89
110
  first_seen: number;
90
111
  last_seen: number;
91
112
  }>;
113
+ /**
114
+ * Detect confounders for a cause→effect pair.
115
+ * A confounder is any node C where C→cause AND C→effect edges exist (shared parent).
116
+ */
117
+ detectConfounders(cause: string, effect: string): string[];
118
+ /**
119
+ * Track how the causal strength between two event types evolved over time.
120
+ * Splits recent events by day, runs Granger test on each day's subset.
121
+ */
122
+ trackStrengthEvolution(cause: string, effect: string, windowDays?: number): StrengthEvolution;
123
+ /**
124
+ * Validate a causal chain: checks if each consecutive pair still has a significant edge.
125
+ * Returns which links are weak or missing.
126
+ */
127
+ validateChain(chain: string[]): {
128
+ valid: boolean;
129
+ weakLinks: string[];
130
+ };
131
+ /**
132
+ * Record an intervention: a deliberate change to test a causal relationship.
133
+ * Confounders are auto-detected from the causal graph.
134
+ */
135
+ recordIntervention(cause: string, effect: string, expectedDirection: string, actualDirection: string | null): CausalIntervention;
136
+ /** Get recent intervention history. */
137
+ getInterventionHistory(limit?: number): CausalIntervention[];
138
+ private toIntervention;
92
139
  private getEventTypes;
93
140
  private getTimeRange;
94
141
  private upsertEdge;
@@ -27,6 +27,19 @@ export function runCausalMigration(db) {
27
27
  CREATE INDEX IF NOT EXISTS idx_causal_events_type ON causal_events(type);
28
28
  CREATE INDEX IF NOT EXISTS idx_causal_events_timestamp ON causal_events(timestamp);
29
29
  CREATE INDEX IF NOT EXISTS idx_causal_edges_strength ON causal_edges(strength DESC);
30
+
31
+ CREATE TABLE IF NOT EXISTS causal_interventions (
32
+ id INTEGER PRIMARY KEY AUTOINCREMENT,
33
+ cause TEXT NOT NULL,
34
+ effect TEXT NOT NULL,
35
+ intervention_type TEXT NOT NULL DEFAULT 'manual',
36
+ expected_direction TEXT NOT NULL DEFAULT 'increase',
37
+ actual_direction TEXT DEFAULT NULL,
38
+ confounders TEXT NOT NULL DEFAULT '[]',
39
+ validated INTEGER NOT NULL DEFAULT 0,
40
+ timestamp TEXT DEFAULT (datetime('now'))
41
+ );
42
+ CREATE INDEX IF NOT EXISTS idx_causal_interventions_cause ON causal_interventions(cause, effect);
30
43
  `);
31
44
  }
32
45
  // ── Engine ───────────────────────────────────────────────
@@ -191,11 +204,13 @@ export class CausalGraph {
191
204
  const roots = this.findRoots(edges);
192
205
  const leaves = this.findLeaves(edges);
193
206
  const chains = this.findChains();
207
+ const interventionsCount = this.db.prepare('SELECT COUNT(*) as cnt FROM causal_interventions').get().cnt;
194
208
  return {
195
209
  edges,
196
210
  roots,
197
211
  leaves,
198
212
  strongestChain: chains.length > 0 ? chains[0] : null,
213
+ interventionsCount,
199
214
  };
200
215
  }
201
216
  /** Get event type statistics. */
@@ -209,7 +224,134 @@ export class CausalGraph {
209
224
  ORDER BY count DESC
210
225
  `).all();
211
226
  }
227
+ // ── Confounder & Intervention Methods ──────────────
228
+ /**
229
+ * Detect confounders for a cause→effect pair.
230
+ * A confounder is any node C where C→cause AND C→effect edges exist (shared parent).
231
+ */
232
+ detectConfounders(cause, effect) {
233
+ const rows = this.db.prepare(`
234
+ SELECT DISTINCT e1.cause AS confounder
235
+ FROM causal_edges e1
236
+ JOIN causal_edges e2 ON e1.cause = e2.cause
237
+ WHERE e1.effect = ? AND e2.effect = ? AND e1.cause != ? AND e1.cause != ?
238
+ `).all(cause, effect, cause, effect);
239
+ return rows.map(r => r.confounder);
240
+ }
241
+ /**
242
+ * Track how the causal strength between two event types evolved over time.
243
+ * Splits recent events by day, runs Granger test on each day's subset.
244
+ */
245
+ trackStrengthEvolution(cause, effect, windowDays = 7) {
246
+ const windowMs = windowDays * 24 * 60 * 60 * 1000;
247
+ const cutoff = Date.now() - windowMs;
248
+ const causeEvents = this.db.prepare('SELECT timestamp FROM causal_events WHERE type = ? AND timestamp >= ? ORDER BY timestamp').all(cause, cutoff);
249
+ const effectEvents = this.db.prepare('SELECT timestamp FROM causal_events WHERE type = ? AND timestamp >= ? ORDER BY timestamp').all(effect, cutoff);
250
+ // Group by day
251
+ const dayMs = 24 * 60 * 60 * 1000;
252
+ const dayBuckets = new Map();
253
+ for (const ev of causeEvents) {
254
+ const day = Math.floor(ev.timestamp / dayMs);
255
+ if (!dayBuckets.has(day))
256
+ dayBuckets.set(day, { causes: [], effects: [] });
257
+ dayBuckets.get(day).causes.push(ev);
258
+ }
259
+ for (const ev of effectEvents) {
260
+ const day = Math.floor(ev.timestamp / dayMs);
261
+ if (!dayBuckets.has(day))
262
+ dayBuckets.set(day, { causes: [], effects: [] });
263
+ dayBuckets.get(day).effects.push(ev);
264
+ }
265
+ const dataPoints = [];
266
+ const sortedDays = [...dayBuckets.keys()].sort((a, b) => a - b);
267
+ for (const day of sortedDays) {
268
+ const bucket = dayBuckets.get(day);
269
+ if (bucket.causes.length < 2 || bucket.effects.length < 2)
270
+ continue;
271
+ // Simple follow-count analysis per day
272
+ let followCount = 0;
273
+ for (const c of bucket.causes) {
274
+ for (const e of bucket.effects) {
275
+ const lag = e.timestamp - c.timestamp;
276
+ if (lag > 0 && lag <= this.maxWindowMs) {
277
+ followCount++;
278
+ break;
279
+ }
280
+ if (lag > this.maxWindowMs)
281
+ break;
282
+ }
283
+ }
284
+ const strength = bucket.causes.length > 0 ? followCount / bucket.causes.length : 0;
285
+ const confidence = 1 - 1 / (1 + followCount / 5);
286
+ const ts = new Date(day * dayMs).toISOString();
287
+ dataPoints.push({ timestamp: ts, strength, confidence });
288
+ }
289
+ return { cause, effect, dataPoints };
290
+ }
291
+ /**
292
+ * Validate a causal chain: checks if each consecutive pair still has a significant edge.
293
+ * Returns which links are weak or missing.
294
+ */
295
+ validateChain(chain) {
296
+ const weakLinks = [];
297
+ for (let i = 0; i < chain.length - 1; i++) {
298
+ const from = chain[i];
299
+ const to = chain[i + 1];
300
+ const edge = this.db.prepare('SELECT strength, confidence FROM causal_edges WHERE cause = ? AND effect = ?').get(from, to);
301
+ if (!edge || edge.strength < 0.1 || edge.confidence < 0.3) {
302
+ weakLinks.push(`${from} → ${to}`);
303
+ }
304
+ }
305
+ return { valid: weakLinks.length === 0, weakLinks };
306
+ }
307
+ /**
308
+ * Record an intervention: a deliberate change to test a causal relationship.
309
+ * Confounders are auto-detected from the causal graph.
310
+ */
311
+ recordIntervention(cause, effect, expectedDirection, actualDirection) {
312
+ const confounders = this.detectConfounders(cause, effect);
313
+ const validated = actualDirection !== null && actualDirection === expectedDirection;
314
+ const result = this.db.prepare(`
315
+ INSERT INTO causal_interventions (cause, effect, intervention_type, expected_direction, actual_direction, confounders, validated)
316
+ VALUES (?, ?, 'manual', ?, ?, ?, ?)
317
+ `).run(cause, effect, expectedDirection, actualDirection, JSON.stringify(confounders), validated ? 1 : 0);
318
+ this.logger.info(`[CausalGraph] Intervention recorded: ${cause} → ${effect} (expected=${expectedDirection}, actual=${actualDirection})`);
319
+ return {
320
+ id: Number(result.lastInsertRowid),
321
+ cause,
322
+ effect,
323
+ interventionType: 'manual',
324
+ expectedDirection,
325
+ actualDirection,
326
+ confounders,
327
+ validated,
328
+ timestamp: new Date().toISOString(),
329
+ };
330
+ }
331
+ /** Get recent intervention history. */
332
+ getInterventionHistory(limit = 20) {
333
+ const rows = this.db.prepare('SELECT * FROM causal_interventions ORDER BY id DESC LIMIT ?').all(limit);
334
+ return rows.map(r => this.toIntervention(r));
335
+ }
212
336
  // ── Private helpers ─────────────────────────────────
337
+ toIntervention(row) {
338
+ let confounders = [];
339
+ try {
340
+ confounders = JSON.parse(row.confounders || '[]');
341
+ }
342
+ catch { /* ignore */ }
343
+ return {
344
+ id: row.id,
345
+ cause: row.cause,
346
+ effect: row.effect,
347
+ interventionType: row.intervention_type,
348
+ expectedDirection: row.expected_direction,
349
+ actualDirection: row.actual_direction ?? null,
350
+ confounders,
351
+ validated: row.validated === 1,
352
+ timestamp: row.timestamp,
353
+ };
354
+ }
213
355
  getEventTypes() {
214
356
  const rows = this.db.prepare('SELECT DISTINCT type FROM causal_events').all();
215
357
  return rows.map(r => r.type);
@@ -1 +1 @@
1
- {"version":3,"file":"engine.js","sourceRoot":"","sources":["../../src/causal/engine.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"engine.js","sourceRoot":"","sources":["../../src/causal/engine.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,SAAS,EAAE,MAAM,oBAAoB,CAAC;AAsD/C,2DAA2D;AAE3D,MAAM,UAAU,kBAAkB,CAAC,EAAqB;IACtD,EAAE,CAAC,IAAI,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAuCP,CAAC,CAAC;AACL,CAAC;AAED,4DAA4D;AAE5D;;;;;;;;;;;;;;;;GAgBG;AACH,MAAM,OAAO,WAAW;IAOZ;IANF,MAAM,GAAG,SAAS,EAAE,CAAC;IACrB,WAAW,CAAS,CAAM,2BAA2B;IACrD,UAAU,CAAS,CAAO,wCAAwC;IAClE,qBAAqB,CAAS,CAAC,6CAA6C;IAEpF,YACU,EAAqB,EAC7B,MAAsF;QAD9E,OAAE,GAAF,EAAE,CAAmB;QAG7B,kBAAkB,CAAC,EAAE,CAAC,CAAC;QACvB,IAAI,CAAC,WAAW,GAAG,MAAM,EAAE,WAAW,IAAI,OAAO,CAAC,CAAM,YAAY;QACpE,IAAI,CAAC,UAAU,GAAG,MAAM,EAAE,UAAU,IAAI,CAAC,CAAC;QAC1C,IAAI,CAAC,qBAAqB,GAAG,MAAM,EAAE,qBAAqB,IAAI,GAAG,CAAC,CAAC,qBAAqB;IAC1F,CAAC;IAED,2CAA2C;IAC3C,WAAW,CAAC,MAAc,EAAE,IAAY,EAAE,IAAc;QACtD,IAAI,CAAC,EAAE,CAAC,OAAO,CAAC;;;KAGf,CAAC,CAAC,GAAG,CAAC,MAAM,EAAE,IAAI,EAAE,IAAI,CAAC,GAAG,EAAE,EAAE,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC;IACvE,CAAC;IAED;;;OAGG;IACH,OAAO;QACL,MAAM,UAAU,GAAG,IAAI,CAAC,aAAa,EAAE,CAAC;QACxC,IAAI,UAAU,CAAC,MAAM,GAAG,CAAC;YAAE,OAAO,EAAE,CAAC;QAErC,MAAM,KAAK,GAAiB,EAAE,CAAC;QAE/B,2DAA2D;QAC3D,KAAK,MAAM,KAAK,IAAI,UAAU,EAAE,CAAC;YAC/B,KAAK,MAAM,MAAM,IAAI,UAAU,EAAE,CAAC;gBAChC,IAAI,KAAK,KAAK,MAAM;oBAAE,SAAS;gBAE/B,MAAM,IAAI,GAAG,IAAI,CAAC,oBAAoB,CAAC,KAAK,EAAE,MAAM,CAAC,CAAC;gBACtD,IAAI,IAAI,EAAE,CAAC;oBACT,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC;oBACtB,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;gBACnB,CAAC;YACH,CAAC;QACH,CAAC;QAED,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,6BAA6B,KAAK,CAAC,MAAM,gCAAgC,CAAC,CAAC;QAC5F,OAAO,KAAK,CAAC;IACf,CAAC;IAED;;;;;;;;OAQG;IACK,oBAAoB,CAAC,SAAiB,EAAE,UAAkB;QAChE,MAAM,WAAW,GAAG,IAAI,CAAC,EAAE,CAAC,OAAO,CACjC,uEAAuE,CACxE,CAAC,GAAG,CAAC,SAAS,CAA4B,CAAC;QAE5C,MAAM,YAAY,GAAG,IAAI,CAAC,EAAE,CAAC,OAAO,CAClC,uEAAuE,CACxE,CAAC,GAAG,CAAC,UAAU,CAA4B,CAAC;QAE7C,IAAI,WAAW,CAAC,MAAM,GAAG,IAAI,CAAC,UAAU,IAAI,YAAY,CAAC,MAAM,GAAG,IAAI,CAAC,UAAU,EAAE,CAAC;YAClF,OAAO,IAAI,CAAC;QACd,CAAC;QAED,iFAAiF;QACjF,IAAI,WAAW,GAAG,CAAC,CAAC;QACpB,IAAI,QAAQ,GAAG,CAAC,CAAC;QAEjB,KAAK,MAAM,KAAK,IAAI,WAAW,EAAE,CAAC;YAChC,gDAAgD;YAChD,KAAK,MAAM,MAAM,IAAI,YAAY,EAAE,CAAC;gBAClC,MAAM,GAAG,GAAG,MAAM,CAAC,SAAS,GAAG,KAAK,CAAC,SAAS,CAAC;gBAC/C,IAAI,GAAG,GAAG,CAAC,IAAI,GAAG,IAAI,IAAI,CAAC,WAAW,EAAE,CAAC;oBACvC,WAAW,EAAE,CAAC;oBACd,QAAQ,IAAI,GAAG,CAAC;oBAChB,MAAM,CAAC,8CAA8C;gBACvD,CAAC;gBACD,IAAI,GAAG,GAAG,IAAI,CAAC,WAAW;oBAAE,MAAM,CAAC,4BAA4B;YACjE,CAAC;QACH,CAAC;QAED,IAAI,WAAW,GAAG,IAAI,CAAC,UAAU;YAAE,OAAO,IAAI,CAAC;QAE/C,6DAA6D;QAC7D,MAAM,QAAQ,GAAG,WAAW,GAAG,WAAW,CAAC,MAAM,CAAC;QAElD,wDAAwD;QACxD,2DAA2D;QAC3D,MAAM,SAAS,GAAG,IAAI,CAAC,YAAY,EAAE,CAAC;QACtC,IAAI,SAAS,IAAI,CAAC;YAAE,OAAO,IAAI,CAAC;QAEhC,MAAM,YAAY,GAAG,CAAC,YAAY,CAAC,MAAM,GAAG,SAAS,CAAC,GAAG,IAAI,CAAC,WAAW,CAAC;QAC1E,MAAM,SAAS,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,YAAY,CAAC,CAAC;QAE5C,mFAAmF;QACnF,IAAI,SAAS,IAAI,CAAC;YAAE,OAAO,IAAI,CAAC;QAChC,MAAM,KAAK,GAAG,QAAQ,GAAG,SAAS,CAAC;QAEnC,IAAI,KAAK,GAAG,IAAI,CAAC,qBAAqB;YAAE,OAAO,IAAI,CAAC;QAEpD,sCAAsC;QACtC,MAAM,QAAQ,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,CAAC,KAAK,GAAG,CAAC,CAAC,GAAG,CAAC,IAAI,CAAC,qBAAqB,GAAG,CAAC,CAAC,CAAC,CAAC;QAE7E,+EAA+E;QAC/E,MAAM,UAAU,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,GAAG,WAAW,GAAG,EAAE,CAAC,CAAC;QAElD,cAAc;QACd,MAAM,MAAM,GAAG,WAAW,GAAG,CAAC,CAAC,CAAC,CAAC,QAAQ,GAAG,WAAW,CAAC,CAAC,CAAC,CAAC,CAAC;QAE5D,OAAO;YACL,KAAK,EAAE,SAAS;YAChB,MAAM,EAAE,UAAU;YAClB,QAAQ;YACR,UAAU;YACV,MAAM,EAAE,MAAM;YACd,WAAW,EAAE,WAAW;YACxB,SAAS,EAAE,CAAC,EAAE,uCAAuC;SACtD,CAAC;IACJ,CAAC;IAED,uDAAuD;IACvD,QAAQ,CAAC,WAAW,GAAG,CAAC;QACtB,OAAO,IAAI,CAAC,EAAE,CAAC,OAAO,CACpB,uEAAuE,CACxE,CAAC,GAAG,CAAC,WAAW,CAAiB,CAAC;IACrC,CAAC;IAED,2CAA2C;IAC3C,SAAS,CAAC,SAAiB;QACzB,OAAO,IAAI,CAAC,EAAE,CAAC,OAAO,CACpB,oEAAoE,CACrE,CAAC,GAAG,CAAC,SAAS,CAAiB,CAAC;IACnC,CAAC;IAED,4CAA4C;IAC5C,UAAU,CAAC,SAAiB;QAC1B,OAAO,IAAI,CAAC,EAAE,CAAC,OAAO,CACpB,mEAAmE,CACpE,CAAC,GAAG,CAAC,SAAS,CAAiB,CAAC;IACnC,CAAC;IAED,sCAAsC;IACtC,UAAU,CAAC,QAAQ,GAAG,CAAC;QACrB,MAAM,KAAK,GAAG,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC;QACjC,MAAM,SAAS,GAAG,IAAI,GAAG,EAAwB,CAAC;QAElD,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE,CAAC;YACzB,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,IAAI,CAAC,KAAK,CAAC;gBAAE,SAAS,CAAC,GAAG,CAAC,IAAI,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC;YAC9D,SAAS,CAAC,GAAG,CAAC,IAAI,CAAC,KAAK,CAAE,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QACxC,CAAC;QAED,MAAM,MAAM,GAAiB,EAAE,CAAC;QAChC,MAAM,KAAK,GAAG,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC;QAEpC,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE,CAAC;YACzB,IAAI,CAAC,GAAG,CAAC,IAAI,EAAE,CAAC,IAAI,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,SAAS,EAAE,QAAQ,EAAE,IAAI,GAAG,EAAE,EAAE,MAAM,CAAC,CAAC;QACvE,CAAC;QAED,oCAAoC;QACpC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,aAAa,GAAG,CAAC,CAAC,aAAa,CAAC,CAAC;QACzD,OAAO,MAAM,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,gBAAgB;IAC9C,CAAC;IAED,sDAAsD;IACtD,WAAW;QACT,MAAM,KAAK,GAAG,IAAI,CAAC,QAAQ,EAAE,CAAC;QAC9B,MAAM,KAAK,GAAG,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC;QACpC,MAAM,MAAM,GAAG,IAAI,CAAC,UAAU,CAAC,KAAK,CAAC,CAAC;QACtC,MAAM,MAAM,GAAG,IAAI,CAAC,UAAU,EAAE,CAAC;QACjC,MAAM,kBAAkB,GAAI,IAAI,CAAC,EAAE,CAAC,OAAO,CACzC,kDAAkD,CACnD,CAAC,GAAG,EAAsB,CAAC,GAAG,CAAC;QAEhC,OAAO;YACL,KAAK;YACL,KAAK;YACL,MAAM;YACN,cAAc,EAAE,MAAM,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAE,CAAC,CAAC,CAAC,IAAI;YACrD,kBAAkB;SACnB,CAAC;IACJ,CAAC;IAED,iCAAiC;IACjC,aAAa;QACX,OAAO,IAAI,CAAC,EAAE,CAAC,OAAO,CAAC;;;;;;;KAOtB,CAAC,CAAC,GAAG,EAAW,CAAC;IACpB,CAAC;IAED,sDAAsD;IAEtD;;;OAGG;IACH,iBAAiB,CAAC,KAAa,EAAE,MAAc;QAC7C,MAAM,IAAI,GAAG,IAAI,CAAC,EAAE,CAAC,OAAO,CAAC;;;;;KAK5B,CAAC,CAAC,GAAG,CAAC,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,CAAkC,CAAC;QACtE,OAAO,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC;IACrC,CAAC;IAED;;;OAGG;IACH,sBAAsB,CAAC,KAAa,EAAE,MAAc,EAAE,UAAU,GAAG,CAAC;QAClE,MAAM,QAAQ,GAAG,UAAU,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,IAAI,CAAC;QAClD,MAAM,MAAM,GAAG,IAAI,CAAC,GAAG,EAAE,GAAG,QAAQ,CAAC;QAErC,MAAM,WAAW,GAAG,IAAI,CAAC,EAAE,CAAC,OAAO,CACjC,0FAA0F,CAC3F,CAAC,GAAG,CAAC,KAAK,EAAE,MAAM,CAAiC,CAAC;QAErD,MAAM,YAAY,GAAG,IAAI,CAAC,EAAE,CAAC,OAAO,CAClC,0FAA0F,CAC3F,CAAC,GAAG,CAAC,MAAM,EAAE,MAAM,CAAiC,CAAC;QAEtD,eAAe;QACf,MAAM,KAAK,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,IAAI,CAAC;QAClC,MAAM,UAAU,GAAG,IAAI,GAAG,EAA2F,CAAC;QAEtH,KAAK,MAAM,EAAE,IAAI,WAAW,EAAE,CAAC;YAC7B,MAAM,GAAG,GAAG,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC,SAAS,GAAG,KAAK,CAAC,CAAC;YAC7C,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,GAAG,CAAC;gBAAE,UAAU,CAAC,GAAG,CAAC,GAAG,EAAE,EAAE,MAAM,EAAE,EAAE,EAAE,OAAO,EAAE,EAAE,EAAE,CAAC,CAAC;YAC3E,UAAU,CAAC,GAAG,CAAC,GAAG,CAAE,CAAC,MAAM,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;QACvC,CAAC;QACD,KAAK,MAAM,EAAE,IAAI,YAAY,EAAE,CAAC;YAC9B,MAAM,GAAG,GAAG,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC,SAAS,GAAG,KAAK,CAAC,CAAC;YAC7C,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,GAAG,CAAC;gBAAE,UAAU,CAAC,GAAG,CAAC,GAAG,EAAE,EAAE,MAAM,EAAE,EAAE,EAAE,OAAO,EAAE,EAAE,EAAE,CAAC,CAAC;YAC3E,UAAU,CAAC,GAAG,CAAC,GAAG,CAAE,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;QACxC,CAAC;QAED,MAAM,UAAU,GAAuE,EAAE,CAAC;QAC1F,MAAM,UAAU,GAAG,CAAC,GAAG,UAAU,CAAC,IAAI,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC;QAEhE,KAAK,MAAM,GAAG,IAAI,UAAU,EAAE,CAAC;YAC7B,MAAM,MAAM,GAAG,UAAU,CAAC,GAAG,CAAC,GAAG,CAAE,CAAC;YACpC,IAAI,MAAM,CAAC,MAAM,CAAC,MAAM,GAAG,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,MAAM,GAAG,CAAC;gBAAE,SAAS;YAEpE,uCAAuC;YACvC,IAAI,WAAW,GAAG,CAAC,CAAC;YACpB,KAAK,MAAM,CAAC,IAAI,MAAM,CAAC,MAAM,EAAE,CAAC;gBAC9B,KAAK,MAAM,CAAC,IAAI,MAAM,CAAC,OAAO,EAAE,CAAC;oBAC/B,MAAM,GAAG,GAAG,CAAC,CAAC,SAAS,GAAG,CAAC,CAAC,SAAS,CAAC;oBACtC,IAAI,GAAG,GAAG,CAAC,IAAI,GAAG,IAAI,IAAI,CAAC,WAAW,EAAE,CAAC;wBACvC,WAAW,EAAE,CAAC;wBACd,MAAM;oBACR,CAAC;oBACD,IAAI,GAAG,GAAG,IAAI,CAAC,WAAW;wBAAE,MAAM;gBACpC,CAAC;YACH,CAAC;YAED,MAAM,QAAQ,GAAG,MAAM,CAAC,MAAM,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,WAAW,GAAG,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC;YACnF,MAAM,UAAU,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,GAAG,WAAW,GAAG,CAAC,CAAC,CAAC;YACjD,MAAM,EAAE,GAAG,IAAI,IAAI,CAAC,GAAG,GAAG,KAAK,CAAC,CAAC,WAAW,EAAE,CAAC;YAC/C,UAAU,CAAC,IAAI,CAAC,EAAE,SAAS,EAAE,EAAE,EAAE,QAAQ,EAAE,UAAU,EAAE,CAAC,CAAC;QAC3D,CAAC;QAED,OAAO,EAAE,KAAK,EAAE,MAAM,EAAE,UAAU,EAAE,CAAC;IACvC,CAAC;IAED;;;OAGG;IACH,aAAa,CAAC,KAAe;QAC3B,MAAM,SAAS,GAAa,EAAE,CAAC;QAE/B,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,KAAK,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC;YAC1C,MAAM,IAAI,GAAG,KAAK,CAAC,CAAC,CAAE,CAAC;YACvB,MAAM,EAAE,GAAG,KAAK,CAAC,CAAC,GAAG,CAAC,CAAE,CAAC;YAEzB,MAAM,IAAI,GAAG,IAAI,CAAC,EAAE,CAAC,OAAO,CAC1B,8EAA8E,CAC/E,CAAC,GAAG,CAAC,IAAI,EAAE,EAAE,CAAyD,CAAC;YAExE,IAAI,CAAC,IAAI,IAAI,IAAI,CAAC,QAAQ,GAAG,GAAG,IAAI,IAAI,CAAC,UAAU,GAAG,GAAG,EAAE,CAAC;gBAC1D,SAAS,CAAC,IAAI,CAAC,GAAG,IAAI,MAAM,EAAE,EAAE,CAAC,CAAC;YACpC,CAAC;QACH,CAAC;QAED,OAAO,EAAE,KAAK,EAAE,SAAS,CAAC,MAAM,KAAK,CAAC,EAAE,SAAS,EAAE,CAAC;IACtD,CAAC;IAED;;;OAGG;IACH,kBAAkB,CAChB,KAAa,EACb,MAAc,EACd,iBAAyB,EACzB,eAA8B;QAE9B,MAAM,WAAW,GAAG,IAAI,CAAC,iBAAiB,CAAC,KAAK,EAAE,MAAM,CAAC,CAAC;QAC1D,MAAM,SAAS,GAAG,eAAe,KAAK,IAAI,IAAI,eAAe,KAAK,iBAAiB,CAAC;QAEpF,MAAM,MAAM,GAAG,IAAI,CAAC,EAAE,CAAC,OAAO,CAAC;;;KAG9B,CAAC,CAAC,GAAG,CAAC,KAAK,EAAE,MAAM,EAAE,iBAAiB,EAAE,eAAe,EAAE,IAAI,CAAC,SAAS,CAAC,WAAW,CAAC,EAAE,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;QAE1G,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,wCAAwC,KAAK,MAAM,MAAM,cAAc,iBAAiB,YAAY,eAAe,GAAG,CAAC,CAAC;QAEzI,OAAO;YACL,EAAE,EAAE,MAAM,CAAC,MAAM,CAAC,eAAe,CAAC;YAClC,KAAK;YACL,MAAM;YACN,gBAAgB,EAAE,QAAQ;YAC1B,iBAAiB;YACjB,eAAe;YACf,WAAW;YACX,SAAS;YACT,SAAS,EAAE,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE;SACpC,CAAC;IACJ,CAAC;IAED,uCAAuC;IACvC,sBAAsB,CAAC,KAAK,GAAG,EAAE;QAC/B,MAAM,IAAI,GAAG,IAAI,CAAC,EAAE,CAAC,OAAO,CAC1B,6DAA6D,CAC9D,CAAC,GAAG,CAAC,KAAK,CAAmC,CAAC;QAC/C,OAAO,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC,CAAC,CAAC,CAAC;IAC/C,CAAC;IAED,uDAAuD;IAE/C,cAAc,CAAC,GAA4B;QACjD,IAAI,WAAW,GAAa,EAAE,CAAC;QAC/B,IAAI,CAAC;YAAC,WAAW,GAAG,IAAI,CAAC,KAAK,CAAE,GAAG,CAAC,WAAsB,IAAI,IAAI,CAAC,CAAC;QAAC,CAAC;QAAC,MAAM,CAAC,CAAC,YAAY,CAAC,CAAC;QAC7F,OAAO;YACL,EAAE,EAAE,GAAG,CAAC,EAAY;YACpB,KAAK,EAAE,GAAG,CAAC,KAAe;YAC1B,MAAM,EAAE,GAAG,CAAC,MAAgB;YAC5B,gBAAgB,EAAE,GAAG,CAAC,iBAA2B;YACjD,iBAAiB,EAAE,GAAG,CAAC,kBAA4B;YACnD,eAAe,EAAG,GAAG,CAAC,gBAA2B,IAAI,IAAI;YACzD,WAAW;YACX,SAAS,EAAG,GAAG,CAAC,SAAoB,KAAK,CAAC;YAC1C,SAAS,EAAE,GAAG,CAAC,SAAmB;SACnC,CAAC;IACJ,CAAC;IAEO,aAAa;QACnB,MAAM,IAAI,GAAG,IAAI,CAAC,EAAE,CAAC,OAAO,CAC1B,yCAAyC,CAC1C,CAAC,GAAG,EAAwB,CAAC;QAC9B,OAAO,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC;IAC/B,CAAC;IAEO,YAAY;QAClB,MAAM,GAAG,GAAG,IAAI,CAAC,EAAE,CAAC,OAAO,CACzB,8EAA8E,CAC/E,CAAC,GAAG,EAAsD,CAAC;QAC5D,IAAI,CAAC,GAAG,CAAC,MAAM,IAAI,CAAC,GAAG,CAAC,MAAM;YAAE,OAAO,CAAC,CAAC;QACzC,OAAO,GAAG,CAAC,MAAM,GAAG,GAAG,CAAC,MAAM,CAAC;IACjC,CAAC;IAEO,UAAU,CAAC,IAAgB;QACjC,IAAI,CAAC,EAAE,CAAC,OAAO,CAAC;;;;;;KAMf,CAAC,CAAC,GAAG,CACJ,IAAI,CAAC,KAAK,EAAE,IAAI,CAAC,MAAM,EAAE,IAAI,CAAC,QAAQ,EAAE,IAAI,CAAC,UAAU,EAAE,IAAI,CAAC,MAAM,EAAE,IAAI,CAAC,WAAW,EAAE,IAAI,CAAC,SAAS,EACtG,IAAI,CAAC,QAAQ,EAAE,IAAI,CAAC,UAAU,EAAE,IAAI,CAAC,MAAM,EAAE,IAAI,CAAC,WAAW,EAAE,IAAI,CAAC,SAAS,CAC9E,CAAC;IACJ,CAAC;IAEO,SAAS,CAAC,KAAmB;QACnC,MAAM,MAAM,GAAG,IAAI,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC;QAChD,MAAM,OAAO,GAAG,IAAI,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC;QAClD,OAAO,CAAC,GAAG,MAAM,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;IAClD,CAAC;IAEO,UAAU,CAAC,KAAmB;QACpC,MAAM,MAAM,GAAG,IAAI,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC;QAChD,MAAM,OAAO,GAAG,IAAI,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC;QAClD,OAAO,CAAC,GAAG,OAAO,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;IAClD,CAAC;IAEO,GAAG,CACT,IAAY,EACZ,IAAc,EACd,aAAqB,EACrB,QAAgB,EAChB,SAAoC,EACpC,QAAgB,EAChB,OAAoB,EACpB,OAAqB;QAErB,IAAI,IAAI,CAAC,MAAM,IAAI,CAAC,EAAE,CAAC;YACrB,0CAA0C;YAC1C,OAAO,CAAC,IAAI,CAAC;gBACX,KAAK,EAAE,CAAC,GAAG,IAAI,CAAC;gBAChB,aAAa,EAAE,aAAa,GAAG,CAAC,IAAI,CAAC,MAAM,GAAG,CAAC,CAAC,EAAE,mBAAmB;gBACrE,QAAQ;aACT,CAAC,CAAC;QACL,CAAC;QAED,IAAI,IAAI,CAAC,MAAM,IAAI,QAAQ;YAAE,OAAO;QAEpC,MAAM,SAAS,GAAG,SAAS,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC;QAC5C,KAAK,MAAM,IAAI,IAAI,SAAS,EAAE,CAAC;YAC7B,IAAI,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,MAAM,CAAC;gBAAE,SAAS;YACvC,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;YACzB,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;YACvB,IAAI,CAAC,GAAG,CACN,IAAI,CAAC,MAAM,EAAE,IAAI,EACjB,aAAa,GAAG,IAAI,CAAC,QAAQ,EAC7B,QAAQ,GAAG,IAAI,CAAC,MAAM,EACtB,SAAS,EAAE,QAAQ,EAAE,OAAO,EAAE,OAAO,CACtC,CAAC;YACF,IAAI,CAAC,GAAG,EAAE,CAAC;YACX,OAAO,CAAC,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;QAC9B,CAAC;IACH,CAAC;CACF"}
@@ -4,6 +4,14 @@ import type { ResearchJournal } from '../research/journal.js';
4
4
  import type { KnowledgeDistiller } from '../research/knowledge-distiller.js';
5
5
  import type { ThoughtStream } from '../consciousness/thought-stream.js';
6
6
  import type { CodeGeneratorConfig, GenerationRequest, GenerationResult, GenerationRecord, GenerationStatus, CodeGeneratorSummary } from './types.js';
7
+ export interface SelfImprovementProposal {
8
+ id?: number;
9
+ engine: string;
10
+ problemDescription: string;
11
+ proposedChange: string;
12
+ status: 'proposed' | 'approved' | 'rejected' | 'implemented';
13
+ createdAt: string;
14
+ }
7
15
  export declare function runCodeGeneratorMigration(db: Database.Database): void;
8
16
  export declare class CodeGenerator {
9
17
  private db;
@@ -37,6 +45,15 @@ export declare class CodeGenerator {
37
45
  list(status?: GenerationStatus, limit?: number): GenerationResult[];
38
46
  /** Get summary stats. */
39
47
  getSummary(): CodeGeneratorSummary;
48
+ /** Propose a self-improvement: tracks what could be changed, no auto-apply. */
49
+ proposeSelfImprovement(engine: string, problem: string, proposedChange: string): SelfImprovementProposal;
50
+ /** List self-improvement proposals, optionally filtered by status. */
51
+ listProposals(status?: string, limit?: number): SelfImprovementProposal[];
52
+ /** Approve a self-improvement proposal. */
53
+ approveProposal(id: number): SelfImprovementProposal | null;
54
+ /** Reject a self-improvement proposal. */
55
+ rejectProposal(id: number): SelfImprovementProposal | null;
56
+ private toProposal;
40
57
  private callClaudeApi;
41
58
  private cleanupRateLimit;
42
59
  }
@@ -25,6 +25,16 @@ export function runCodeGeneratorMigration(db) {
25
25
  completed_at TEXT,
26
26
  reviewed_at TEXT
27
27
  );
28
+
29
+ CREATE TABLE IF NOT EXISTS self_improvement_proposals (
30
+ id INTEGER PRIMARY KEY AUTOINCREMENT,
31
+ engine TEXT NOT NULL,
32
+ problem_description TEXT NOT NULL,
33
+ proposed_change TEXT NOT NULL,
34
+ status TEXT NOT NULL DEFAULT 'proposed',
35
+ created_at TEXT DEFAULT (datetime('now'))
36
+ );
37
+ CREATE INDEX IF NOT EXISTS idx_self_improvement_status ON self_improvement_proposals(status);
28
38
  `);
29
39
  }
30
40
  // ── CodeGenerator ────────────────────────────────────────
@@ -184,6 +194,57 @@ export class CodeGenerator {
184
194
  last_generation_at: last.t,
185
195
  };
186
196
  }
197
+ // ── Self-Improvement Proposals ──────────────────────────
198
+ /** Propose a self-improvement: tracks what could be changed, no auto-apply. */
199
+ proposeSelfImprovement(engine, problem, proposedChange) {
200
+ const result = this.db.prepare(`
201
+ INSERT INTO self_improvement_proposals (engine, problem_description, proposed_change, status)
202
+ VALUES (?, ?, ?, 'proposed')
203
+ `).run(engine, problem, proposedChange);
204
+ this.thoughtStream?.emit('code_generator', 'analyzing', `Self-improvement proposal: ${engine} — ${problem.substring(0, 60)}`, 'notable');
205
+ return {
206
+ id: Number(result.lastInsertRowid),
207
+ engine,
208
+ problemDescription: problem,
209
+ proposedChange: proposedChange,
210
+ status: 'proposed',
211
+ createdAt: new Date().toISOString(),
212
+ };
213
+ }
214
+ /** List self-improvement proposals, optionally filtered by status. */
215
+ listProposals(status, limit = 20) {
216
+ const rows = status
217
+ ? this.db.prepare('SELECT * FROM self_improvement_proposals WHERE status = ? ORDER BY id DESC LIMIT ?').all(status, limit)
218
+ : this.db.prepare('SELECT * FROM self_improvement_proposals ORDER BY id DESC LIMIT ?').all(limit);
219
+ return rows.map(r => this.toProposal(r));
220
+ }
221
+ /** Approve a self-improvement proposal. */
222
+ approveProposal(id) {
223
+ this.db.prepare('UPDATE self_improvement_proposals SET status = ? WHERE id = ?').run('approved', id);
224
+ const row = this.db.prepare('SELECT * FROM self_improvement_proposals WHERE id = ?').get(id);
225
+ if (!row)
226
+ return null;
227
+ this.thoughtStream?.emit('code_generator', 'discovering', `Self-improvement #${id} approved`, 'notable');
228
+ return this.toProposal(row);
229
+ }
230
+ /** Reject a self-improvement proposal. */
231
+ rejectProposal(id) {
232
+ this.db.prepare('UPDATE self_improvement_proposals SET status = ? WHERE id = ?').run('rejected', id);
233
+ const row = this.db.prepare('SELECT * FROM self_improvement_proposals WHERE id = ?').get(id);
234
+ if (!row)
235
+ return null;
236
+ return this.toProposal(row);
237
+ }
238
+ toProposal(row) {
239
+ return {
240
+ id: row.id,
241
+ engine: row.engine,
242
+ problemDescription: row.problem_description,
243
+ proposedChange: row.proposed_change,
244
+ status: row.status,
245
+ createdAt: row.created_at,
246
+ };
247
+ }
187
248
  // ── Private ──────────────────────────────────────────────
188
249
  async callClaudeApi(systemPrompt, userMessage) {
189
250
  // Use raw fetch to Anthropic API — avoids @anthropic-ai/sdk dependency
@@ -1 +1 @@
1
- {"version":3,"file":"code-generator.js","sourceRoot":"","sources":["../../src/codegen/code-generator.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"code-generator.js","sourceRoot":"","sources":["../../src/codegen/code-generator.ts"],"names":[],"mappings":"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"}
@@ -2,6 +2,7 @@ export { CodeMiner, runCodeMinerMigration } from './code-miner.js';
2
2
  export { PatternExtractor, runPatternExtractorMigration } from './pattern-extractor.js';
3
3
  export { ContextBuilder } from './context-builder.js';
4
4
  export { CodeGenerator, runCodeGeneratorMigration } from './code-generator.js';
5
+ export type { SelfImprovementProposal } from './code-generator.js';
5
6
  export { CodegenServer } from './codegen-server.js';
6
7
  export type { CodegenServerOptions } from './codegen-server.js';
7
8
  export type { CodeMinerConfig, RepoContent, CodeMinerSummary, ExtractedPattern, DependencyPattern, TechStack, ProjectStructure, ReadmePattern, ContextBuilderConfig, BuiltContext, CodeGeneratorConfig, GenerationTrigger, GenerationStatus, GenerationRequest, GenerationResult, GenerationRecord, CodeGeneratorSummary, } from './types.js';
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/codegen/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,qBAAqB,EAAE,MAAM,iBAAiB,CAAC;AACnE,OAAO,EAAE,gBAAgB,EAAE,4BAA4B,EAAE,MAAM,wBAAwB,CAAC;AACxF,OAAO,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAC;AACtD,OAAO,EAAE,aAAa,EAAE,yBAAyB,EAAE,MAAM,qBAAqB,CAAC;AAC/E,OAAO,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/codegen/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,qBAAqB,EAAE,MAAM,iBAAiB,CAAC;AACnE,OAAO,EAAE,gBAAgB,EAAE,4BAA4B,EAAE,MAAM,wBAAwB,CAAC;AACxF,OAAO,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAC;AACtD,OAAO,EAAE,aAAa,EAAE,yBAAyB,EAAE,MAAM,qBAAqB,CAAC;AAE/E,OAAO,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAC"}
@@ -66,6 +66,17 @@ export interface BanditArm {
66
66
  ucbScore: number;
67
67
  lastPulled: number | null;
68
68
  }
69
+ export interface BlindSpot {
70
+ id?: number;
71
+ topic: string;
72
+ hypothesisCount: number;
73
+ predictionCount: number;
74
+ journalCount: number;
75
+ experimentCount: number;
76
+ severity: number;
77
+ detectedAt: string;
78
+ resolvedAt: string | null;
79
+ }
69
80
  export interface CuriosityStatus {
70
81
  totalGaps: number;
71
82
  activeGaps: number;
@@ -75,6 +86,8 @@ export interface CuriosityStatus {
75
86
  explorationRate: number;
76
87
  topGaps: KnowledgeGap[];
77
88
  topArms: BanditArm[];
89
+ blindSpots: number;
90
+ topBlindSpots: BlindSpot[];
78
91
  uptime: number;
79
92
  }
80
93
  export interface ExplorationDecision {
@@ -106,6 +119,11 @@ export declare class CuriosityEngine {
106
119
  private readonly stmtGetExplorations;
107
120
  private readonly stmtGetTopicStats;
108
121
  private readonly stmtTotalExplorations;
122
+ private readonly stmtInsertBlindSpot;
123
+ private readonly stmtUpdateBlindSpot;
124
+ private readonly stmtGetBlindSpots;
125
+ private readonly stmtResolveBlindSpot;
126
+ private readonly stmtBlindSpotCount;
109
127
  constructor(db: Database.Database, config: CuriosityEngineConfig);
110
128
  setThoughtStream(stream: ThoughtStream): void;
111
129
  setDataSources(sources: CuriosityDataSources): void;
@@ -147,6 +165,16 @@ export declare class CuriosityEngine {
147
165
  actual: string;
148
166
  deviation: number;
149
167
  }>;
168
+ /**
169
+ * Detect blind spots: topics that exist across attention/journal/hypotheses/experiments
170
+ * but have very low coverage in one or more of those dimensions.
171
+ * severity = 1 - avg(normalized counts). Topics with severity > 0.7 are blind spots.
172
+ */
173
+ detectBlindSpots(): BlindSpot[];
174
+ /** Get unresolved blind spots sorted by severity. */
175
+ getBlindSpots(limit?: number): BlindSpot[];
176
+ /** Mark a blind spot as resolved. */
177
+ resolveBlindSpot(id: number): boolean;
150
178
  getGaps(limit?: number): KnowledgeGap[];
151
179
  getGap(id: number): KnowledgeGap | null;
152
180
  getQuestions(limit?: number): CuriosityQuestion[];
@@ -167,4 +195,5 @@ export declare class CuriosityEngine {
167
195
  private suggestActions;
168
196
  private toGap;
169
197
  private toQuestion;
198
+ private toBlindSpot;
170
199
  }