@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.
- package/dist/causal/engine.d.ts +47 -0
- package/dist/causal/engine.js +142 -0
- package/dist/causal/engine.js.map +1 -1
- package/dist/codegen/code-generator.d.ts +17 -0
- package/dist/codegen/code-generator.js +61 -0
- package/dist/codegen/code-generator.js.map +1 -1
- package/dist/codegen/index.d.ts +1 -0
- package/dist/codegen/index.js.map +1 -1
- package/dist/curiosity/curiosity-engine.d.ts +29 -0
- package/dist/curiosity/curiosity-engine.js +147 -0
- package/dist/curiosity/curiosity-engine.js.map +1 -1
- package/dist/curiosity/index.d.ts +1 -1
- package/dist/debate/debate-engine.d.ts +27 -0
- package/dist/debate/debate-engine.js +169 -0
- package/dist/debate/debate-engine.js.map +1 -1
- package/dist/debate/index.d.ts +1 -1
- package/dist/dream/dream-engine.d.ts +16 -1
- package/dist/dream/dream-engine.js +190 -0
- package/dist/dream/dream-engine.js.map +1 -1
- package/dist/dream/index.d.ts +1 -1
- package/dist/dream/types.d.ts +18 -0
- package/dist/emergence/emergence-engine.d.ts +19 -0
- package/dist/emergence/emergence-engine.js +118 -0
- package/dist/emergence/emergence-engine.js.map +1 -1
- package/dist/goals/goal-engine.d.ts +127 -0
- package/dist/goals/goal-engine.js +386 -0
- package/dist/goals/goal-engine.js.map +1 -0
- package/dist/goals/index.d.ts +2 -0
- package/dist/goals/index.js +2 -0
- package/dist/goals/index.js.map +1 -0
- package/dist/hypothesis/engine.d.ts +38 -0
- package/dist/hypothesis/engine.js +167 -0
- package/dist/hypothesis/engine.js.map +1 -1
- package/dist/index.d.ts +19 -6
- package/dist/index.js +9 -0
- package/dist/index.js.map +1 -1
- package/dist/memory-palace/index.d.ts +2 -0
- package/dist/memory-palace/index.js +2 -0
- package/dist/memory-palace/index.js.map +1 -0
- package/dist/memory-palace/memory-palace.d.ts +150 -0
- package/dist/memory-palace/memory-palace.js +479 -0
- package/dist/memory-palace/memory-palace.js.map +1 -0
- package/dist/metacognition/index.d.ts +7 -1
- package/dist/metacognition/index.js +3 -0
- package/dist/metacognition/index.js.map +1 -1
- package/dist/metacognition/meta-cognition-layer.d.ts +50 -0
- package/dist/metacognition/meta-cognition-layer.js +190 -0
- package/dist/metacognition/meta-cognition-layer.js.map +1 -1
- package/dist/metacognition/self-test-engine.d.ts +52 -0
- package/dist/metacognition/self-test-engine.js +210 -0
- package/dist/metacognition/self-test-engine.js.map +1 -0
- package/dist/metacognition/simulation-engine.d.ts +71 -0
- package/dist/metacognition/simulation-engine.js +267 -0
- package/dist/metacognition/simulation-engine.js.map +1 -0
- package/dist/metacognition/teach-engine.d.ts +63 -0
- package/dist/metacognition/teach-engine.js +185 -0
- package/dist/metacognition/teach-engine.js.map +1 -0
- package/dist/research/data-scout.d.ts +68 -0
- package/dist/research/data-scout.js +254 -0
- package/dist/research/data-scout.js.map +1 -0
- package/dist/research/research-orchestrator.d.ts +24 -0
- package/dist/research/research-orchestrator.js +331 -0
- package/dist/research/research-orchestrator.js.map +1 -1
- package/dist/transfer/index.d.ts +1 -1
- package/dist/transfer/transfer-engine.d.ts +38 -0
- package/dist/transfer/transfer-engine.js +138 -0
- package/dist/transfer/transfer-engine.js.map +1 -1
- package/package.json +1 -1
package/dist/causal/engine.d.ts
CHANGED
|
@@ -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;
|
package/dist/causal/engine.js
CHANGED
|
@@ -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":"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"}
|
|
@@ -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":"AACA,OAAO,EAAE,SAAS,EAAE,MAAM,oBAAoB,CAAC;AAU/C,4DAA4D;AAE5D,MAAM,UAAU,yBAAyB,CAAC,EAAqB;IAC7D,EAAE,CAAC,IAAI,CAAC;;;;;;;;;;;;;;;;;;;;;;;;GAwBP,CAAC,CAAC;AACL,CAAC;AAED,4DAA4D;AAE5D,MAAM,OAAO,aAAa;IAChB,EAAE,CAAoB;IACtB,SAAS,CAAS;IAClB,MAAM,CAAgB;IACtB,KAAK,CAAS;IACd,SAAS,CAAS;IAClB,UAAU,CAAS;IACnB,cAAc,GAA0B,IAAI,CAAC;IAC7C,OAAO,GAA2B,IAAI,CAAC;IACvC,kBAAkB,GAA8B,IAAI,CAAC;IACrD,aAAa,GAAyB,IAAI,CAAC;IAC3C,iBAAiB,GAAa,EAAE,CAAC;IACjC,GAAG,GAAG,SAAS,EAAE,CAAC;IAE1B,YAAY,EAAqB,EAAE,MAA2B;QAC5D,IAAI,CAAC,EAAE,GAAG,EAAE,CAAC;QACb,IAAI,CAAC,SAAS,GAAG,MAAM,CAAC,SAAS,CAAC;QAClC,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC,MAAM,IAAI,OAAO,CAAC,GAAG,CAAC,iBAAiB,IAAI,IAAI,CAAC;QACrE,IAAI,CAAC,KAAK,GAAG,MAAM,CAAC,KAAK,IAAI,0BAA0B,CAAC;QACxD,IAAI,CAAC,SAAS,GAAG,MAAM,CAAC,SAAS,IAAI,IAAI,CAAC;QAC1C,IAAI,CAAC,UAAU,GAAG,MAAM,CAAC,UAAU,IAAI,EAAE,CAAC;QAC1C,yBAAyB,CAAC,EAAE,CAAC,CAAC;IAChC,CAAC;IAED,iBAAiB,CAAC,OAAuB,IAAU,IAAI,CAAC,cAAc,GAAG,OAAO,CAAC,CAAC,CAAC;IACnF,UAAU,CAAC,OAAwB,IAAU,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC,CAAC,CAAC;IACtE,qBAAqB,CAAC,SAA6B,IAAU,IAAI,CAAC,kBAAkB,GAAG,SAAS,CAAC,CAAC,CAAC;IACnG,gBAAgB,CAAC,MAAqB,IAAU,IAAI,CAAC,aAAa,GAAG,MAAM,CAAC,CAAC,CAAC;IAE9E,sEAAsE;IACtE,KAAK,CAAC,QAAQ,CAAC,OAA0B;QACvC,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE,CAAC;YACjB,MAAM,IAAI,KAAK,CAAC,sEAAsE,CAAC,CAAC;QAC1F,CAAC;QAED,gBAAgB;QAChB,IAAI,CAAC,gBAAgB,EAAE,CAAC;QACxB,IAAI,IAAI,CAAC,iBAAiB,CAAC,MAAM,IAAI,IAAI,CAAC,UAAU,EAAE,CAAC;YACrD,MAAM,IAAI,KAAK,CAAC,4BAA4B,IAAI,CAAC,UAAU,uBAAuB,CAAC,CAAC;QACtF,CAAC;QAED,MAAM,EAAE,GAAG,IAAI,CAAC,aAAa,CAAC;QAC9B,EAAE,EAAE,IAAI,CAAC,gBAAgB,EAAE,WAAW,EAAE,oBAAoB,OAAO,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,EAAE,EAAE,CAAC,KAAK,CAAC,CAAC;QAEhG,MAAM,SAAS,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;QAE7B,qCAAqC;QACrC,IAAI,cAAc,GAAG,EAAE,CAAC;QACxB,IAAI,cAAc,GAAG,CAAC,CAAC;QACvB,IAAI,gBAAgB,GAAG,CAAC,CAAC;QACzB,IAAI,YAAY,GAAG,CAAC,CAAC;QACrB,IAAI,YAAY,GAAG,OAAO,CAAC,IAAI,CAAC;QAEhC,IAAI,IAAI,CAAC,cAAc,EAAE,CAAC;YACxB,MAAM,GAAG,GAAG,IAAI,CAAC,cAAc,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;YAC/C,YAAY,GAAG,GAAG,CAAC,YAAY,CAAC;YAChC,cAAc,GAAG,GAAG,CAAC,cAAc,CAAC;YACpC,gBAAgB,GAAG,GAAG,CAAC,gBAAgB,CAAC;YACxC,YAAY,GAAG,GAAG,CAAC,YAAY,CAAC;YAChC,cAAc,GAAG,GAAG,cAAc,gBAAgB,gBAAgB,mBAAmB,YAAY,eAAe,GAAG,CAAC,mBAAmB,SAAS,CAAC;QACnJ,CAAC;QAED,wBAAwB;QACxB,MAAM,YAAY,GAAG,IAAI,CAAC,EAAE,CAAC,OAAO,CAAC;;;KAGpC,CAAC,CAAC,GAAG,CACJ,OAAO,CAAC,IAAI,EACZ,OAAO,CAAC,OAAO,IAAI,QAAQ,EAC3B,cAAc,EACd,cAAc,EACd,gBAAgB,EAChB,YAAY,EACZ,OAAO,CAAC,WAAW,IAAI,IAAI,EAC3B,OAAO,CAAC,QAAQ,IAAI,YAAY,EAChC,IAAI,CAAC,KAAK,CACX,CAAC;QACF,MAAM,EAAE,GAAG,MAAM,CAAC,YAAY,CAAC,eAAe,CAAC,CAAC;QAEhD,IAAI,CAAC;YACH,kBAAkB;YAClB,EAAE,EAAE,IAAI,CAAC,gBAAgB,EAAE,WAAW,EAAE,uBAAuB,IAAI,CAAC,KAAK,MAAM,CAAC,CAAC;YACjF,MAAM,EAAE,IAAI,EAAE,WAAW,EAAE,UAAU,EAAE,GAAG,MAAM,IAAI,CAAC,aAAa,CAAC,YAAY,EAAE,OAAO,CAAC,IAAI,CAAC,CAAC;YAE/F,MAAM,cAAc,GAAG,IAAI,CAAC,GAAG,EAAE,GAAG,SAAS,CAAC;YAE9C,6BAA6B;YAC7B,IAAI,CAAC,EAAE,CAAC,OAAO,CAAC;;;;;OAKf,CAAC,CAAC,GAAG,CAAC,IAAI,EAAE,WAAW,EAAE,UAAU,EAAE,cAAc,EAAE,EAAE,CAAC,CAAC;YAE1D,IAAI,CAAC,iBAAiB,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC,CAAC;YAExC,EAAE,EAAE,IAAI,CAAC,gBAAgB,EAAE,aAAa,EAAE,mBAAmB,UAAU,YAAY,cAAc,KAAK,EAAE,SAAS,CAAC,CAAC;YAEnH,yBAAyB;YACzB,IAAI,CAAC,OAAO,EAAE,eAAe,CAC3B,mBAAmB,OAAO,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,EAAE,EAAE,CAAC,EAAE,EAClD,0BAA0B,IAAI,EAAE,MAAM,IAAI,CAAC,aAAa,OAAO,CAAC,QAAQ,IAAI,YAAY,UAAU,cAAc,EAAE,EAClH,EAAE,EAAE,EAAE,OAAO,EAAE,OAAO,CAAC,OAAO,EAAE,UAAU,EAAE,cAAc,EAAE,EAC5D,SAAS,CACV,CAAC;YAEF,OAAO,IAAI,CAAC,GAAG,CAAC,EAAE,CAAE,CAAC;QACvB,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,MAAM,cAAc,GAAG,IAAI,CAAC,GAAG,EAAE,GAAG,SAAS,CAAC;YAC9C,IAAI,CAAC,EAAE,CAAC,OAAO,CAAC;;;;OAIf,CAAC,CAAC,GAAG,CAAE,GAAa,CAAC,OAAO,EAAE,cAAc,EAAE,EAAE,CAAC,CAAC;YAEnD,EAAE,EAAE,IAAI,CAAC,gBAAgB,EAAE,WAAW,EAAE,sBAAuB,GAAa,CAAC,OAAO,EAAE,CAAC,CAAC;YACxF,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,uCAAwC,GAAa,CAAC,OAAO,EAAE,CAAC,CAAC;YAEhF,OAAO,IAAI,CAAC,GAAG,CAAC,EAAE,CAAE,CAAC;QACvB,CAAC;IACH,CAAC;IAED,gCAAgC;IAChC,OAAO,CAAC,EAAU,EAAE,KAAc;QAChC,IAAI,CAAC,EAAE,CAAC,OAAO,CAAC;;;KAGf,CAAC,CAAC,GAAG,CAAC,KAAK,IAAI,IAAI,EAAE,EAAE,CAAC,CAAC;QAE1B,MAAM,MAAM,GAAG,IAAI,CAAC,SAAS,CAAC,EAAE,CAAC,CAAC;QAClC,IAAI,MAAM,IAAI,MAAM,CAAC,MAAM,KAAK,UAAU,EAAE,CAAC;YAC3C,IAAI,CAAC,OAAO,EAAE,eAAe,CAC3B,kBAAkB,MAAM,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,EAAE,EAAE,CAAC,EAAE,EAChD,eAAe,EAAE,aAAa,KAAK,CAAC,CAAC,CAAC,WAAW,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,EAAE,EAC/D,EAAE,EAAE,EAAE,IAAI,EAAE,MAAM,CAAC,IAAI,EAAE,EACzB,SAAS,CACV,CAAC;YACF,IAAI,CAAC,aAAa,EAAE,IAAI,CAAC,gBAAgB,EAAE,aAAa,EAAE,SAAS,EAAE,WAAW,EAAE,SAAS,CAAC,CAAC;QAC/F,CAAC;QACD,OAAO,MAAM,CAAC;IAChB,CAAC;IAED,+BAA+B;IAC/B,MAAM,CAAC,EAAU,EAAE,KAAc;QAC/B,IAAI,CAAC,EAAE,CAAC,OAAO,CAAC;;;KAGf,CAAC,CAAC,GAAG,CAAC,KAAK,IAAI,IAAI,EAAE,EAAE,CAAC,CAAC;QAE1B,MAAM,MAAM,GAAG,IAAI,CAAC,SAAS,CAAC,EAAE,CAAC,CAAC;QAClC,IAAI,MAAM,IAAI,MAAM,CAAC,MAAM,KAAK,UAAU,EAAE,CAAC;YAC3C,IAAI,CAAC,OAAO,EAAE,gBAAgB,CAC5B,kBAAkB,MAAM,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,EAAE,EAAE,CAAC,EAAE,EAChD,UAAU,EACV,EAAE,EAAE,EAAE,IAAI,EAAE,MAAM,CAAC,IAAI,EAAE,KAAK,EAAE,EAChC,KAAK,CACN,CAAC;QACJ,CAAC;QACD,OAAO,MAAM,CAAC;IAChB,CAAC;IAED,8BAA8B;IAC9B,GAAG,CAAC,EAAU;QACZ,OAAO,IAAI,CAAC,EAAE,CAAC,OAAO,CAAC,6CAA6C,CAAC,CAAC,GAAG,CAAC,EAAE,CAA4B,CAAC;IAC3G,CAAC;IAED,kDAAkD;IAClD,SAAS,CAAC,EAAU;QAClB,OAAO,IAAI,CAAC,EAAE,CAAC,OAAO,CAAC,6CAA6C,CAAC,CAAC,GAAG,CAAC,EAAE,CAA4B,CAAC;IAC3G,CAAC;IAED,8CAA8C;IAC9C,IAAI,CAAC,MAAyB,EAAE,KAAK,GAAG,EAAE;QACxC,IAAI,MAAM,EAAE,CAAC;YACX,OAAO,IAAI,CAAC,EAAE,CAAC,OAAO,CAAC,0EAA0E,CAAC,CAAC,GAAG,CAAC,MAAM,EAAE,KAAK,CAAuB,CAAC;QAC9I,CAAC;QACD,OAAO,IAAI,CAAC,EAAE,CAAC,OAAO,CAAC,yDAAyD,CAAC,CAAC,GAAG,CAAC,KAAK,CAAuB,CAAC;IACrH,CAAC;IAED,yBAAyB;IACzB,UAAU;QACR,MAAM,KAAK,GAAI,IAAI,CAAC,EAAE,CAAC,OAAO,CAAC,4CAA4C,CAAC,CAAC,GAAG,EAAoB,CAAC,CAAC,CAAC;QAEvG,MAAM,YAAY,GAAG,IAAI,CAAC,EAAE,CAAC,OAAO,CAAC,oEAAoE,CAAC,CAAC,GAAG,EAA0C,CAAC;QACzJ,MAAM,QAAQ,GAA2B,EAAE,CAAC;QAC5C,KAAK,MAAM,CAAC,IAAI,YAAY;YAAE,QAAQ,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;QAEvD,MAAM,aAAa,GAAG,IAAI,CAAC,EAAE,CAAC,OAAO,CAAC,sEAAsE,CAAC,CAAC,GAAG,EAA2C,CAAC;QAC7J,MAAM,SAAS,GAA2B,EAAE,CAAC;QAC7C,KAAK,MAAM,CAAC,IAAI,aAAa;YAAE,SAAS,CAAC,CAAC,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;QAE1D,MAAM,MAAM,GAAI,IAAI,CAAC,EAAE,CAAC,OAAO,CAAC,iEAAiE,CAAC,CAAC,GAAG,EAAoB,CAAC,CAAC,CAAC;QAC7H,MAAM,OAAO,GAAI,IAAI,CAAC,EAAE,CAAC,OAAO,CAAC,uGAAuG,CAAC,CAAC,GAAG,EAAoB,CAAC,CAAC,CAAC;QAEpK,MAAM,QAAQ,GAAG,CAAC,QAAQ,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC,CAAC;QAC7C,MAAM,QAAQ,GAAG,CAAC,QAAQ,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC,CAAC;QAC7C,MAAM,QAAQ,GAAG,QAAQ,GAAG,QAAQ,CAAC;QAErC,MAAM,IAAI,GAAG,IAAI,CAAC,EAAE,CAAC,OAAO,CAAC,mDAAmD,CAAC,CAAC,GAAG,EAA0B,CAAC;QAEhH,OAAO;YACL,iBAAiB,EAAE,KAAK;YACxB,SAAS,EAAE,QAA4C;YACvD,UAAU,EAAE,SAAS;YACrB,iBAAiB,EAAE,MAAM;YACzB,sBAAsB,EAAE,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC;YAC3C,aAAa,EAAE,QAAQ,GAAG,CAAC,CAAC,CAAC,CAAC,QAAQ,GAAG,QAAQ,CAAC,CAAC,CAAC,CAAC;YACrD,kBAAkB,EAAE,IAAI,CAAC,CAAC;SAC3B,CAAC;IACJ,CAAC;IAED,4DAA4D;IAEpD,KAAK,CAAC,aAAa,CAAC,YAAoB,EAAE,WAAmB;QACnE,uEAAuE;QACvE,MAAM,QAAQ,GAAG,MAAM,KAAK,CAAC,uCAAuC,EAAE;YACpE,MAAM,EAAE,MAAM;YACd,OAAO,EAAE;gBACP,cAAc,EAAE,kBAAkB;gBAClC,WAAW,EAAE,IAAI,CAAC,MAAO;gBACzB,mBAAmB,EAAE,YAAY;aAClC;YACD,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC;gBACnB,KAAK,EAAE,IAAI,CAAC,KAAK;gBACjB,UAAU,EAAE,IAAI,CAAC,SAAS;gBAC1B,MAAM,EAAE,YAAY;gBACpB,QAAQ,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,WAAW,EAAE,CAAC;aACnD,CAAC;SACH,CAAC,CAAC;QAEH,IAAI,CAAC,QAAQ,CAAC,EAAE,EAAE,CAAC;YACjB,MAAM,GAAG,GAAG,MAAM,QAAQ,CAAC,IAAI,EAAE,CAAC;YAClC,MAAM,IAAI,KAAK,CAAC,wBAAwB,QAAQ,CAAC,MAAM,MAAM,GAAG,CAAC,SAAS,CAAC,CAAC,EAAE,GAAG,CAAC,EAAE,CAAC,CAAC;QACxF,CAAC;QAED,MAAM,IAAI,GAAG,MAAM,QAAQ,CAAC,IAAI,EAG/B,CAAC;QAEF,MAAM,IAAI,GAAG,IAAI,CAAC,OAAO;YACvB,EAAE,MAAM,CAAC,KAAK,CAAC,EAAE,CAAC,KAAK,CAAC,IAAI,KAAK,MAAM,CAAC;aACvC,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC,KAAK,CAAC,IAAI,IAAI,EAAE,CAAC;aAC9B,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC;QAEpB,MAAM,UAAU,GAAG,CAAC,IAAI,CAAC,KAAK,EAAE,YAAY,IAAI,CAAC,CAAC,GAAG,CAAC,IAAI,CAAC,KAAK,EAAE,aAAa,IAAI,CAAC,CAAC,CAAC;QAEtF,iCAAiC;QACjC,MAAM,SAAS,GAAG,IAAI,CAAC,KAAK,CAAC,4BAA4B,CAAC,CAAC;QAC3D,MAAM,IAAI,GAAG,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC;QACpD,MAAM,WAAW,GAAG,IAAI,CAAC,OAAO,CAAC,2BAA2B,EAAE,EAAE,CAAC,CAAC,IAAI,EAAE,IAAI,IAAI,CAAC;QAEjF,OAAO,EAAE,IAAI,EAAE,WAAW,EAAE,UAAU,EAAE,CAAC;IAC3C,CAAC;IAEO,gBAAgB;QACtB,MAAM,UAAU,GAAG,IAAI,CAAC,GAAG,EAAE,GAAG,SAAS,CAAC;QAC1C,IAAI,CAAC,iBAAiB,GAAG,IAAI,CAAC,iBAAiB,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,GAAG,UAAU,CAAC,CAAC;IAC9E,CAAC;CACF"}
|
|
1
|
+
{"version":3,"file":"code-generator.js","sourceRoot":"","sources":["../../src/codegen/code-generator.ts"],"names":[],"mappings":"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"}
|
package/dist/codegen/index.d.ts
CHANGED
|
@@ -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;
|
|
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
|
}
|