@timmeck/brain-core 2.36.50 → 2.36.52
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/dream/dream-engine.js +1 -1
- package/dist/goals/goal-engine.d.ts +1 -1
- package/dist/goals/goal-engine.js +1 -1
- package/dist/peer-network/peer-network.js +3 -0
- package/dist/peer-network/peer-network.js.map +1 -1
- package/dist/prediction/prediction-engine.js +6 -1
- package/dist/prediction/prediction-engine.js.map +1 -1
- package/dist/reasoning/reasoning-engine.d.ts +1 -1
- package/dist/reasoning/reasoning-engine.js +1 -1
- package/dist/research/research-orchestrator.d.ts +13 -0
- package/dist/research/research-orchestrator.js +271 -14
- package/dist/research/research-orchestrator.js.map +1 -1
- package/package.json +1 -1
|
@@ -74,7 +74,7 @@ export class DreamEngine {
|
|
|
74
74
|
minClusterSize: config.minClusterSize ?? 2,
|
|
75
75
|
importanceDecayRate: config.importanceDecayRate ?? 0.5,
|
|
76
76
|
importanceDecayAfterDays: config.importanceDecayAfterDays ?? 30,
|
|
77
|
-
archiveImportanceThreshold: config.archiveImportanceThreshold ??
|
|
77
|
+
archiveImportanceThreshold: config.archiveImportanceThreshold ?? 3,
|
|
78
78
|
dreamPruneThreshold: config.dreamPruneThreshold ?? 0.15,
|
|
79
79
|
dreamLearningRate: config.dreamLearningRate ?? 0.15,
|
|
80
80
|
maxConsolidationsPerCycle: config.maxConsolidationsPerCycle ?? 5,
|
|
@@ -4,7 +4,7 @@ export interface GoalEngineConfig {
|
|
|
4
4
|
brainName: string;
|
|
5
5
|
/** Maximum active goals at once. Default: 10 */
|
|
6
6
|
maxActiveGoals?: number;
|
|
7
|
-
/** Minimum data points for forecast. Default:
|
|
7
|
+
/** Minimum data points for forecast. Default: 8 */
|
|
8
8
|
minForecastCycles?: number;
|
|
9
9
|
}
|
|
10
10
|
export type GoalType = 'metric_target' | 'discovery' | 'quality' | 'custom';
|
|
@@ -59,7 +59,7 @@ export class GoalEngine {
|
|
|
59
59
|
this.config = {
|
|
60
60
|
brainName: config.brainName,
|
|
61
61
|
maxActiveGoals: config.maxActiveGoals ?? 10,
|
|
62
|
-
minForecastCycles: config.minForecastCycles ??
|
|
62
|
+
minForecastCycles: config.minForecastCycles ?? 8,
|
|
63
63
|
};
|
|
64
64
|
runGoalEngineMigration(db);
|
|
65
65
|
this.stmtCreateGoal = db.prepare(`
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"peer-network.js","sourceRoot":"","sources":["../../src/peer-network/peer-network.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"peer-network.js","sourceRoot":"","sources":["../../src/peer-network/peer-network.ts"],"names":[],"mappings":"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"}
|
|
@@ -222,6 +222,7 @@ export class PredictionEngine {
|
|
|
222
222
|
const expired = this.tracker.getPendingExpired();
|
|
223
223
|
for (const pred of expired) {
|
|
224
224
|
this.tracker.markExpired(pred.prediction_id);
|
|
225
|
+
this.db.prepare(`UPDATE prediction_state SET total_resolved = total_resolved + 1, updated_at = datetime('now') WHERE id = 1`).run();
|
|
225
226
|
resolved++;
|
|
226
227
|
}
|
|
227
228
|
// 2. Resolve predictions past their horizon
|
|
@@ -236,7 +237,11 @@ export class PredictionEngine {
|
|
|
236
237
|
)
|
|
237
238
|
`).get(pred.metric, pred.created_at);
|
|
238
239
|
if (row?.avg_value != null) {
|
|
239
|
-
this.tracker.resolve(pred.prediction_id, row.avg_value);
|
|
240
|
+
const status = this.tracker.resolve(pred.prediction_id, row.avg_value);
|
|
241
|
+
this.db.prepare(`UPDATE prediction_state SET total_resolved = total_resolved + 1, updated_at = datetime('now') WHERE id = 1`).run();
|
|
242
|
+
if (status === 'correct') {
|
|
243
|
+
this.db.prepare(`UPDATE prediction_state SET total_correct = total_correct + 1 WHERE id = 1`).run();
|
|
244
|
+
}
|
|
240
245
|
resolved++;
|
|
241
246
|
}
|
|
242
247
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"prediction-engine.js","sourceRoot":"","sources":["../../src/prediction/prediction-engine.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"prediction-engine.js","sourceRoot":"","sources":["../../src/prediction/prediction-engine.ts"],"names":[],"mappings":"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"}
|
|
@@ -4,7 +4,7 @@ export interface ReasoningEngineConfig {
|
|
|
4
4
|
brainName: string;
|
|
5
5
|
/** Max inference chain depth. Default: 5 */
|
|
6
6
|
maxDepth?: number;
|
|
7
|
-
/** Min confidence to continue chain. Default: 0.
|
|
7
|
+
/** Min confidence to continue chain. Default: 0.3 */
|
|
8
8
|
minConfidence?: number;
|
|
9
9
|
/** Confidence dampening per step. Default: 0.95 */
|
|
10
10
|
dampening?: number;
|
|
@@ -71,7 +71,7 @@ export class ReasoningEngine {
|
|
|
71
71
|
this.config = {
|
|
72
72
|
brainName: config.brainName,
|
|
73
73
|
maxDepth: config.maxDepth ?? 5,
|
|
74
|
-
minConfidence: config.minConfidence ?? 0.
|
|
74
|
+
minConfidence: config.minConfidence ?? 0.3,
|
|
75
75
|
dampening: config.dampening ?? 0.95,
|
|
76
76
|
minSimilarity: config.minSimilarity ?? 0.15,
|
|
77
77
|
};
|
|
@@ -97,6 +97,7 @@ export declare class ResearchOrchestrator {
|
|
|
97
97
|
private dataScout;
|
|
98
98
|
private simulationEngine;
|
|
99
99
|
private memoryPalace;
|
|
100
|
+
private memoryPalaceRagRegistered;
|
|
100
101
|
private goalEngine;
|
|
101
102
|
private evolutionEngine;
|
|
102
103
|
private reasoningEngine;
|
|
@@ -120,6 +121,10 @@ export declare class ResearchOrchestrator {
|
|
|
120
121
|
private featureExtractor;
|
|
121
122
|
private contradictionResolver;
|
|
122
123
|
private checkpointManager;
|
|
124
|
+
private feedbackEngine;
|
|
125
|
+
private userModelEngine;
|
|
126
|
+
private consensusEngine;
|
|
127
|
+
private traceCollector;
|
|
123
128
|
private lastAutoMissionTime;
|
|
124
129
|
private onSuggestionCallback;
|
|
125
130
|
private db;
|
|
@@ -221,6 +226,14 @@ export declare class ResearchOrchestrator {
|
|
|
221
226
|
setFeatureExtractor(extractor: import('../codegen/feature-extractor.js').FeatureExtractor): void;
|
|
222
227
|
setContradictionResolver(resolver: import('../knowledge-graph/contradiction-resolver.js').ContradictionResolver): void;
|
|
223
228
|
setCheckpointManager(cm: import('../checkpoint/checkpoint-manager.js').CheckpointManager): void;
|
|
229
|
+
/** Set the FeedbackEngine — RLHF auto-feedback from cycle results. */
|
|
230
|
+
setFeedbackEngine(engine: import('../feedback/feedback-engine.js').FeedbackEngine): void;
|
|
231
|
+
/** Set the UserModel — profile tracking from orchestrator cycles. */
|
|
232
|
+
setUserModel(model: import('../user-model/user-model.js').UserModel): void;
|
|
233
|
+
/** Set the ConsensusEngine — auto-proposals for risky self-modifications. */
|
|
234
|
+
setConsensusEngine(engine: import('../consensus/consensus-engine.js').ConsensusEngine): void;
|
|
235
|
+
/** Set the TraceCollector — auto-instrumentation of research cycles. */
|
|
236
|
+
setTraceCollector(collector: import('../observability/trace-collector.js').TraceCollector): void;
|
|
224
237
|
/** Set the LLMService — propagates to all engines that can use LLM. */
|
|
225
238
|
setLLMService(llm: LLMService): void;
|
|
226
239
|
/** Get the LLMService instance. */
|
|
@@ -48,6 +48,7 @@ export class ResearchOrchestrator {
|
|
|
48
48
|
dataScout = null;
|
|
49
49
|
simulationEngine = null;
|
|
50
50
|
memoryPalace = null;
|
|
51
|
+
memoryPalaceRagRegistered = false;
|
|
51
52
|
goalEngine = null;
|
|
52
53
|
evolutionEngine = null;
|
|
53
54
|
reasoningEngine = null;
|
|
@@ -71,6 +72,10 @@ export class ResearchOrchestrator {
|
|
|
71
72
|
featureExtractor = null;
|
|
72
73
|
contradictionResolver = null;
|
|
73
74
|
checkpointManager = null;
|
|
75
|
+
feedbackEngine = null;
|
|
76
|
+
userModelEngine = null;
|
|
77
|
+
consensusEngine = null;
|
|
78
|
+
traceCollector = null;
|
|
74
79
|
lastAutoMissionTime = 0;
|
|
75
80
|
onSuggestionCallback = null;
|
|
76
81
|
db;
|
|
@@ -243,6 +248,14 @@ export class ResearchOrchestrator {
|
|
|
243
248
|
setFeatureExtractor(extractor) { this.featureExtractor = extractor; }
|
|
244
249
|
setContradictionResolver(resolver) { this.contradictionResolver = resolver; }
|
|
245
250
|
setCheckpointManager(cm) { this.checkpointManager = cm; }
|
|
251
|
+
/** Set the FeedbackEngine — RLHF auto-feedback from cycle results. */
|
|
252
|
+
setFeedbackEngine(engine) { this.feedbackEngine = engine; }
|
|
253
|
+
/** Set the UserModel — profile tracking from orchestrator cycles. */
|
|
254
|
+
setUserModel(model) { this.userModelEngine = model; }
|
|
255
|
+
/** Set the ConsensusEngine — auto-proposals for risky self-modifications. */
|
|
256
|
+
setConsensusEngine(engine) { this.consensusEngine = engine; }
|
|
257
|
+
/** Set the TraceCollector — auto-instrumentation of research cycles. */
|
|
258
|
+
setTraceCollector(collector) { this.traceCollector = collector; }
|
|
246
259
|
/** Set the LLMService — propagates to all engines that can use LLM. */
|
|
247
260
|
setLLMService(llm) {
|
|
248
261
|
this.llmService = llm;
|
|
@@ -339,6 +352,14 @@ export class ResearchOrchestrator {
|
|
|
339
352
|
const start = Date.now();
|
|
340
353
|
const ts = this.thoughtStream;
|
|
341
354
|
this.log.info(`[orchestrator] ─── Feedback Cycle #${this.cycleCount} ───`);
|
|
355
|
+
// Fix 6: Auto-instrument research cycles with TraceCollector
|
|
356
|
+
let traceId;
|
|
357
|
+
if (this.traceCollector) {
|
|
358
|
+
try {
|
|
359
|
+
traceId = this.traceCollector.startTrace('research_cycle', { cycle: this.cycleCount, brainName: this.brainName });
|
|
360
|
+
}
|
|
361
|
+
catch { /* tracing should never break the cycle */ }
|
|
362
|
+
}
|
|
342
363
|
ts?.emit('orchestrator', 'perceiving', `Feedback Cycle #${this.cycleCount} starting...`);
|
|
343
364
|
// Bootstrap: seed initial data on first cycle so engines have something to work with
|
|
344
365
|
if (this.cycleCount === 1 && this.bootstrapService) {
|
|
@@ -743,6 +764,14 @@ export class ResearchOrchestrator {
|
|
|
743
764
|
if (resolved > 0) {
|
|
744
765
|
this.log.info(`[orchestrator] Predictions resolved: ${resolved}`);
|
|
745
766
|
ts?.emit('prediction', 'predicting', `Resolved ${resolved} prediction${resolved > 1 ? 's' : ''}`);
|
|
767
|
+
// Cross-module: Prediction→Goal — feed accuracy into goal tracking
|
|
768
|
+
if (this.goalEngine) {
|
|
769
|
+
try {
|
|
770
|
+
const summary = this.predictionEngine.getSummary();
|
|
771
|
+
this.goalEngine.recordProgress(this.cycleCount, { predictionAccuracy: summary.accuracy_rate });
|
|
772
|
+
}
|
|
773
|
+
catch { /* goal recording non-critical */ }
|
|
774
|
+
}
|
|
746
775
|
}
|
|
747
776
|
ts?.emit('prediction', 'predicting', 'Generating new predictions...');
|
|
748
777
|
const newPredictions = this.predictionEngine.autoPredictAll();
|
|
@@ -823,8 +852,8 @@ export class ResearchOrchestrator {
|
|
|
823
852
|
}
|
|
824
853
|
this.feedExperimentMeasurements(anomalies.length, insights.length);
|
|
825
854
|
}
|
|
826
|
-
// 13. Periodic Dream Consolidation: don't wait for idle, consolidate every
|
|
827
|
-
if (this.dreamEngine && this.cycleCount %
|
|
855
|
+
// 13. Periodic Dream Consolidation: don't wait for idle, consolidate every 5 cycles
|
|
856
|
+
if (this.dreamEngine && this.cycleCount % 5 === 0) {
|
|
828
857
|
ts?.emit('dream', 'dreaming', 'Feeding knowledge into memories for consolidation...');
|
|
829
858
|
try {
|
|
830
859
|
// Feed current knowledge into memories table so consolidation has material
|
|
@@ -943,6 +972,20 @@ export class ResearchOrchestrator {
|
|
|
943
972
|
metadata: { type: c.type, statement_a: c.statement_a.substring(0, 100), statement_b: c.statement_b.substring(0, 100) },
|
|
944
973
|
});
|
|
945
974
|
}
|
|
975
|
+
// Cross-module: Narrative→Emotion — contradictions signal cognitive dissonance
|
|
976
|
+
if (this.emotionalModel && highSeverity.length > 0) {
|
|
977
|
+
try {
|
|
978
|
+
// Record contradiction observations so sense() picks up stress/frustration
|
|
979
|
+
this.hypothesisEngine.observe({
|
|
980
|
+
source: this.brainName,
|
|
981
|
+
type: 'high_severity_contradiction',
|
|
982
|
+
value: highSeverity.length,
|
|
983
|
+
timestamp: now,
|
|
984
|
+
metadata: { contradictionCount: contradictions.length, highSeverityCount: highSeverity.length },
|
|
985
|
+
});
|
|
986
|
+
}
|
|
987
|
+
catch { /* emotional signaling non-critical */ }
|
|
988
|
+
}
|
|
946
989
|
// 17a. Actively resolve contradictions — lower confidence of weaker side
|
|
947
990
|
let resolved = 0;
|
|
948
991
|
for (const c of highSeverity.slice(0, 5)) {
|
|
@@ -1334,8 +1377,8 @@ export class ResearchOrchestrator {
|
|
|
1334
1377
|
this.log.warn(`[orchestrator] Step 25 error: ${err.message}`);
|
|
1335
1378
|
}
|
|
1336
1379
|
}
|
|
1337
|
-
// Step 26: Dream Retrospective — analyze pruning regret (every
|
|
1338
|
-
if (this.dreamEngine && this.cycleCount %
|
|
1380
|
+
// Step 26: Dream Retrospective — analyze pruning regret (every 5 cycles)
|
|
1381
|
+
if (this.dreamEngine && this.cycleCount % 5 === 0) {
|
|
1339
1382
|
try {
|
|
1340
1383
|
ts?.emit('orchestrator', 'reflecting', 'Step 26: Analyzing dream retrospective...', 'routine');
|
|
1341
1384
|
const retrospectives = this.dreamEngine.analyzeRetrospective(5);
|
|
@@ -1445,8 +1488,8 @@ export class ResearchOrchestrator {
|
|
|
1445
1488
|
this.log.warn(`[orchestrator] Step 30 error: ${err.message}`);
|
|
1446
1489
|
}
|
|
1447
1490
|
}
|
|
1448
|
-
// Step 31: Meta-Trends — record system-wide trend data every
|
|
1449
|
-
if (this.metaCognitionLayer) {
|
|
1491
|
+
// Step 31: Meta-Trends — record system-wide trend data (every 5 cycles)
|
|
1492
|
+
if (this.metaCognitionLayer && this.cycleCount % 5 === 0) {
|
|
1450
1493
|
try {
|
|
1451
1494
|
const totalPrinciples = this.knowledgeDistiller.getPrinciples(undefined, 1000).length;
|
|
1452
1495
|
const hypothesisSummary = this.hypothesisEngine.getSummary();
|
|
@@ -1488,6 +1531,15 @@ export class ResearchOrchestrator {
|
|
|
1488
1531
|
significance: 'routine',
|
|
1489
1532
|
data: { simulation: sim },
|
|
1490
1533
|
});
|
|
1534
|
+
// Cross-module: Simulation→Prediction — feed predicted outcomes as synthetic metrics
|
|
1535
|
+
if (this.predictionEngine && sim.predictedOutcomes.length > 0) {
|
|
1536
|
+
try {
|
|
1537
|
+
for (const outcome of sim.predictedOutcomes) {
|
|
1538
|
+
this.predictionEngine.recordMetric(`sim_${outcome.metric}`, outcome.predicted * outcome.confidence, 'metric');
|
|
1539
|
+
}
|
|
1540
|
+
}
|
|
1541
|
+
catch { /* simulation metric recording non-critical */ }
|
|
1542
|
+
}
|
|
1491
1543
|
if (this.metaCognitionLayer)
|
|
1492
1544
|
this.metaCognitionLayer.recordStep('simulation', this.cycleCount, { predictions: sim.predictedOutcomes.length });
|
|
1493
1545
|
}
|
|
@@ -1511,6 +1563,19 @@ export class ResearchOrchestrator {
|
|
|
1511
1563
|
data: { memoryPalace: result },
|
|
1512
1564
|
});
|
|
1513
1565
|
}
|
|
1566
|
+
// Cross-module: MemoryPalace→RAG — index new connections for semantic search (once)
|
|
1567
|
+
if (result.newConnections > 0 && this.ragIndexer && !this.memoryPalaceRagRegistered) {
|
|
1568
|
+
try {
|
|
1569
|
+
this.ragIndexer.addSource({
|
|
1570
|
+
collection: 'memory_palace',
|
|
1571
|
+
query: `SELECT id, source_type || ':' || source_id || ' —[' || relation || ']→ ' || target_type || ':' || target_id as text FROM knowledge_connections ORDER BY strength DESC LIMIT 100`,
|
|
1572
|
+
textColumns: ['text'],
|
|
1573
|
+
idColumn: 'id',
|
|
1574
|
+
});
|
|
1575
|
+
this.memoryPalaceRagRegistered = true;
|
|
1576
|
+
}
|
|
1577
|
+
catch { /* source registration non-critical */ }
|
|
1578
|
+
}
|
|
1514
1579
|
// Check for isolated knowledge
|
|
1515
1580
|
const isolated = this.memoryPalace.getIsolatedNodes();
|
|
1516
1581
|
if (isolated.length > 5) {
|
|
@@ -1622,6 +1687,19 @@ export class ResearchOrchestrator {
|
|
|
1622
1687
|
data: { chain },
|
|
1623
1688
|
});
|
|
1624
1689
|
insights++;
|
|
1690
|
+
// Cross-module: Reasoning→Hypothesis — high-confidence chains become testable hypotheses
|
|
1691
|
+
if (this.hypothesisEngine && chain.final_confidence > 0.5) {
|
|
1692
|
+
try {
|
|
1693
|
+
this.hypothesisEngine.propose({
|
|
1694
|
+
statement: chain.conclusion,
|
|
1695
|
+
type: 'correlation',
|
|
1696
|
+
source: 'reasoning_engine',
|
|
1697
|
+
variables: [q],
|
|
1698
|
+
condition: { type: 'correlation', params: { strategy: 'inference_chain', chain_id: chain.id, confidence: chain.final_confidence } },
|
|
1699
|
+
});
|
|
1700
|
+
}
|
|
1701
|
+
catch { /* dedup or other constraint — non-critical */ }
|
|
1702
|
+
}
|
|
1625
1703
|
}
|
|
1626
1704
|
// Abduce on surprising observations
|
|
1627
1705
|
const explanations = this.reasoningEngine.abduce(q);
|
|
@@ -1655,6 +1733,19 @@ export class ResearchOrchestrator {
|
|
|
1655
1733
|
for (const rec of recs) {
|
|
1656
1734
|
ts?.emit('emotional', 'reflecting', `[${mood.mood}] ${rec}`, 'notable');
|
|
1657
1735
|
}
|
|
1736
|
+
// Cross-module: Emotional→Attention — high arousal boosts attention on active topics
|
|
1737
|
+
if (mood.arousal > 0.7 && this.attentionEngine) {
|
|
1738
|
+
try {
|
|
1739
|
+
const topTopics = this.attentionEngine.getTopTopics?.(3) ?? [];
|
|
1740
|
+
for (const t of topTopics) {
|
|
1741
|
+
this.attentionEngine.setFocus(t.topic, mood.arousal * 2.0);
|
|
1742
|
+
}
|
|
1743
|
+
if (topTopics.length > 0) {
|
|
1744
|
+
this.log.info(`[orchestrator] High arousal (${mood.arousal.toFixed(2)}) → boosted attention on ${topTopics.length} topics`);
|
|
1745
|
+
}
|
|
1746
|
+
}
|
|
1747
|
+
catch { /* attention boost non-critical */ }
|
|
1748
|
+
}
|
|
1658
1749
|
if (this.metaCognitionLayer)
|
|
1659
1750
|
this.metaCognitionLayer.recordStep('emotional_model', this.cycleCount, { insights: 1 });
|
|
1660
1751
|
}
|
|
@@ -1692,6 +1783,18 @@ export class ResearchOrchestrator {
|
|
|
1692
1783
|
referenceCode: suggestion.referenceCode,
|
|
1693
1784
|
});
|
|
1694
1785
|
ts?.emit('self-modification', 'discovering', `Self-modification proposed: ${mod.title}`, 'notable');
|
|
1786
|
+
// Auto-propose consensus vote for medium/high risk modifications
|
|
1787
|
+
if (this.consensusEngine && suggestion.targetFiles.length > 1) {
|
|
1788
|
+
try {
|
|
1789
|
+
this.consensusEngine.propose({
|
|
1790
|
+
type: 'selfmod_approval',
|
|
1791
|
+
description: `SelfMod: ${mod.title} — ${suggestion.problem.substring(0, 200)}`,
|
|
1792
|
+
options: ['approve', 'reject'],
|
|
1793
|
+
});
|
|
1794
|
+
ts?.emit('consensus', 'analyzing', `Consensus vote created for: ${mod.title}`, 'notable');
|
|
1795
|
+
}
|
|
1796
|
+
catch { /* not critical */ }
|
|
1797
|
+
}
|
|
1695
1798
|
// Try to generate + test
|
|
1696
1799
|
try {
|
|
1697
1800
|
await this.selfModificationEngine.generateCode(mod.id);
|
|
@@ -1759,8 +1862,8 @@ export class ResearchOrchestrator {
|
|
|
1759
1862
|
}
|
|
1760
1863
|
}
|
|
1761
1864
|
// ── Intelligence Upgrade Steps (Sessions 55-65) ─────────
|
|
1762
|
-
// Step 42: FactExtractor — extract typed facts from recent insights (every
|
|
1763
|
-
if (this.factExtractor && this.knowledgeGraph && this.cycleCount %
|
|
1865
|
+
// Step 42: FactExtractor — extract typed facts from recent insights (every 3 cycles)
|
|
1866
|
+
if (this.factExtractor && this.knowledgeGraph && this.cycleCount % 3 === 0) {
|
|
1764
1867
|
try {
|
|
1765
1868
|
ts?.emit('fact_extractor', 'analyzing', 'Step 42: Extracting facts from insights...', 'routine');
|
|
1766
1869
|
let factsAdded = 0;
|
|
@@ -1864,16 +1967,48 @@ export class ResearchOrchestrator {
|
|
|
1864
1967
|
if (this.activeLearner && this.cycleCount % this.reflectEvery === 0) {
|
|
1865
1968
|
try {
|
|
1866
1969
|
ts?.emit('active_learner', 'analyzing', 'Step 45: Identifying knowledge gaps...', 'routine');
|
|
1867
|
-
|
|
1970
|
+
// Build real GapSources from curiosity engine + knowledge graph
|
|
1971
|
+
const gapSources = {};
|
|
1972
|
+
// Knowledge voids from CuriosityEngine (open dark_zones)
|
|
1973
|
+
if (this.curiosityEngine) {
|
|
1974
|
+
try {
|
|
1975
|
+
const curiosityGaps = this.curiosityEngine.getGaps(10);
|
|
1976
|
+
const darkZones = curiosityGaps.filter(g => g.gapType === 'dark_zone');
|
|
1977
|
+
if (darkZones.length > 0) {
|
|
1978
|
+
gapSources.knowledgeVoids = darkZones.map(g => ({ topic: g.topic }));
|
|
1979
|
+
}
|
|
1980
|
+
}
|
|
1981
|
+
catch { /* curiosity table may not exist */ }
|
|
1982
|
+
}
|
|
1983
|
+
// Low confidence facts from KnowledgeGraph
|
|
1984
|
+
if (this.knowledgeGraph) {
|
|
1985
|
+
try {
|
|
1986
|
+
const lowConf = this.db.prepare(`SELECT subject as topic, confidence FROM knowledge_facts WHERE confidence < 0.3 ORDER BY confidence ASC LIMIT 10`).all();
|
|
1987
|
+
if (lowConf.length > 0) {
|
|
1988
|
+
gapSources.lowConfidenceFacts = lowConf;
|
|
1989
|
+
}
|
|
1990
|
+
}
|
|
1991
|
+
catch { /* table may not exist */ }
|
|
1992
|
+
}
|
|
1993
|
+
const gaps = this.activeLearner.identifyGaps(gapSources);
|
|
1868
1994
|
if (gaps.length > 0) {
|
|
1995
|
+
// Persist gaps via addGap so they get IDs for planLearning
|
|
1996
|
+
const persistedGaps = [];
|
|
1997
|
+
for (const gap of gaps.slice(0, 5)) {
|
|
1998
|
+
try {
|
|
1999
|
+
const persisted = this.activeLearner.addGap(gap.gapType, gap.topic, gap.description, gap.impact, gap.ease);
|
|
2000
|
+
persistedGaps.push(persisted);
|
|
2001
|
+
}
|
|
2002
|
+
catch { /* max gaps reached or duplicate — skip */ }
|
|
2003
|
+
}
|
|
1869
2004
|
this.journal.write({
|
|
1870
2005
|
title: `Active Learning: ${gaps.length} knowledge gap(s) identified`,
|
|
1871
2006
|
type: 'insight', content: gaps.slice(0, 3).map(g => g.topic).join(', '),
|
|
1872
2007
|
tags: [this.brainName, 'active-learning', 'knowledge-gaps'],
|
|
1873
2008
|
references: [], significance: 'routine', data: { gapCount: gaps.length },
|
|
1874
2009
|
});
|
|
1875
|
-
// Plan learning for the highest-priority gap
|
|
1876
|
-
const topGap =
|
|
2010
|
+
// Plan learning for the highest-priority persisted gap
|
|
2011
|
+
const topGap = persistedGaps[0];
|
|
1877
2012
|
if (topGap?.id) {
|
|
1878
2013
|
try {
|
|
1879
2014
|
this.activeLearner.planLearning(topGap.id);
|
|
@@ -1924,6 +2059,18 @@ export class ResearchOrchestrator {
|
|
|
1924
2059
|
}
|
|
1925
2060
|
if (taught > 0) {
|
|
1926
2061
|
ts?.emit('teaching', 'discovering', `Taught ${taught} principle(s) to peer brain(s)`, 'routine');
|
|
2062
|
+
// Cross-module: Teaching→Consensus — propose teaching packages for multi-brain review
|
|
2063
|
+
if (this.consensusEngine && taught >= 2) {
|
|
2064
|
+
try {
|
|
2065
|
+
const topPrinciples = principles.filter(p => (p.confidence ?? 0) >= 0.7).slice(0, 3);
|
|
2066
|
+
this.consensusEngine.propose({
|
|
2067
|
+
type: 'teaching_review',
|
|
2068
|
+
description: `Review ${taught} principles for teaching: ${topPrinciples.map(p => p.statement.substring(0, 60)).join('; ')}`,
|
|
2069
|
+
options: ['adopt', 'reject', 'defer'],
|
|
2070
|
+
});
|
|
2071
|
+
}
|
|
2072
|
+
catch { /* consensus proposal non-critical */ }
|
|
2073
|
+
}
|
|
1927
2074
|
}
|
|
1928
2075
|
if (this.metaCognitionLayer)
|
|
1929
2076
|
this.metaCognitionLayer.recordStep('teaching', this.cycleCount, { insights: taught });
|
|
@@ -1974,8 +2121,8 @@ export class ResearchOrchestrator {
|
|
|
1974
2121
|
this.log.warn(`[orchestrator] Step 49 error: ${err.message}`);
|
|
1975
2122
|
}
|
|
1976
2123
|
}
|
|
1977
|
-
// Step 50: FeatureRecommender — detect needs, match features, build connections (every
|
|
1978
|
-
if (this.featureRecommender && this.cycleCount %
|
|
2124
|
+
// Step 50: FeatureRecommender — detect needs, match features, build connections (every 20 cycles)
|
|
2125
|
+
if (this.featureRecommender && this.cycleCount % 20 === 0) {
|
|
1979
2126
|
try {
|
|
1980
2127
|
ts?.emit('feature_recommender', 'analyzing', 'Step 50: Scanning for feature needs & connections...', 'routine');
|
|
1981
2128
|
const recResult = await this.featureRecommender.runCycle();
|
|
@@ -2017,9 +2164,95 @@ export class ResearchOrchestrator {
|
|
|
2017
2164
|
this.log.warn(`[orchestrator] Step 51 error: ${err.message}`);
|
|
2018
2165
|
}
|
|
2019
2166
|
}
|
|
2167
|
+
// Step 52: RLHF Auto-Feedback — generate signals from cycle results (every 10 cycles)
|
|
2168
|
+
if (this.feedbackEngine && this.cycleCount % this.reflectEvery === 0) {
|
|
2169
|
+
try {
|
|
2170
|
+
ts?.emit('feedback', 'analyzing', 'Step 52: Auto-feedback from cycle results...', 'routine');
|
|
2171
|
+
let feedbackCount = 0;
|
|
2172
|
+
// Confirmed hypotheses → positive feedback
|
|
2173
|
+
const confirmedHyps = this.hypothesisEngine.list('confirmed', 20);
|
|
2174
|
+
for (const hyp of confirmedHyps) {
|
|
2175
|
+
if (hyp.id) {
|
|
2176
|
+
this.feedbackEngine.recordFeedback('hypothesis', hyp.id, 'positive', `Confirmed: ${hyp.statement.substring(0, 100)}`);
|
|
2177
|
+
feedbackCount++;
|
|
2178
|
+
}
|
|
2179
|
+
}
|
|
2180
|
+
// Rejected hypotheses → negative feedback
|
|
2181
|
+
const rejectedHyps = this.hypothesisEngine.list('rejected', 20);
|
|
2182
|
+
for (const hyp of rejectedHyps) {
|
|
2183
|
+
if (hyp.id) {
|
|
2184
|
+
this.feedbackEngine.recordFeedback('hypothesis', hyp.id, 'negative', `Rejected: ${hyp.statement.substring(0, 100)}`);
|
|
2185
|
+
feedbackCount++;
|
|
2186
|
+
}
|
|
2187
|
+
}
|
|
2188
|
+
// Correct/wrong predictions → feedback
|
|
2189
|
+
if (this.predictionEngine) {
|
|
2190
|
+
const correctPreds = this.predictionEngine.list(undefined, 'correct', 20);
|
|
2191
|
+
for (const pred of correctPreds) {
|
|
2192
|
+
this.feedbackEngine.recordFeedback('prediction', Number(pred.prediction_id.substring(0, 8)) || 1, 'positive', `Correct: ${pred.metric}`);
|
|
2193
|
+
feedbackCount++;
|
|
2194
|
+
}
|
|
2195
|
+
const wrongPreds = this.predictionEngine.list(undefined, 'wrong', 20);
|
|
2196
|
+
for (const pred of wrongPreds) {
|
|
2197
|
+
this.feedbackEngine.recordFeedback('prediction', Number(pred.prediction_id.substring(0, 8)) || 1, 'negative', `Wrong: ${pred.metric}`);
|
|
2198
|
+
feedbackCount++;
|
|
2199
|
+
}
|
|
2200
|
+
}
|
|
2201
|
+
if (feedbackCount > 0) {
|
|
2202
|
+
ts?.emit('feedback', 'discovering', `Auto-feedback: ${feedbackCount} signal(s) generated`, 'routine');
|
|
2203
|
+
}
|
|
2204
|
+
if (this.metaCognitionLayer)
|
|
2205
|
+
this.metaCognitionLayer.recordStep('feedback_engine', this.cycleCount, { insights: feedbackCount });
|
|
2206
|
+
}
|
|
2207
|
+
catch (err) {
|
|
2208
|
+
this.log.warn(`[orchestrator] Step 52 error: ${err.message}`);
|
|
2209
|
+
}
|
|
2210
|
+
}
|
|
2211
|
+
// Step 53: UserModel — log user profile status to journal (every 20 cycles)
|
|
2212
|
+
if (this.userModelEngine && this.cycleCount % 20 === 0) {
|
|
2213
|
+
try {
|
|
2214
|
+
ts?.emit('user_model', 'analyzing', 'Step 53: Logging user model status...', 'routine');
|
|
2215
|
+
const profile = this.userModelEngine.getProfile();
|
|
2216
|
+
const status = this.userModelEngine.getStatus();
|
|
2217
|
+
const topDomain = [...profile.skillDomains.entries()][0];
|
|
2218
|
+
const skillLabel = topDomain ? `${topDomain[0]}:${topDomain[1]}` : 'unknown';
|
|
2219
|
+
this.journal.write({
|
|
2220
|
+
title: `User Model: ${status.totalKeys} keys, skill=${skillLabel}`,
|
|
2221
|
+
type: 'insight',
|
|
2222
|
+
content: `Top tools: ${profile.topTools.slice(0, 5).join(', ')}. Domains: ${profile.skillDomains.size}.`,
|
|
2223
|
+
tags: [this.brainName, 'user-model', 'profile'],
|
|
2224
|
+
references: [],
|
|
2225
|
+
significance: 'routine',
|
|
2226
|
+
data: { totalKeys: status.totalKeys, domains: status.domains },
|
|
2227
|
+
});
|
|
2228
|
+
if (this.metaCognitionLayer)
|
|
2229
|
+
this.metaCognitionLayer.recordStep('user_model', this.cycleCount, { insights: 1 });
|
|
2230
|
+
}
|
|
2231
|
+
catch (err) {
|
|
2232
|
+
this.log.warn(`[orchestrator] Step 53 error: ${err.message}`);
|
|
2233
|
+
}
|
|
2234
|
+
}
|
|
2235
|
+
// Step 54: Consensus — auto-propose for risky self-modifications (piggybacks on Step 40)
|
|
2236
|
+
// Already checked in Step 40; here we just log status
|
|
2237
|
+
if (this.consensusEngine && this.cycleCount % 20 === 0) {
|
|
2238
|
+
try {
|
|
2239
|
+
const cStatus = this.consensusEngine.getStatus();
|
|
2240
|
+
if (cStatus.totalProposals > 0) {
|
|
2241
|
+
ts?.emit('consensus', 'reflecting', `Consensus: ${cStatus.totalProposals} proposals, ${cStatus.resolvedCount} resolved`, 'routine');
|
|
2242
|
+
}
|
|
2243
|
+
}
|
|
2244
|
+
catch { /* not critical */ }
|
|
2245
|
+
}
|
|
2020
2246
|
const duration = Date.now() - start;
|
|
2021
2247
|
ts?.emit('orchestrator', 'reflecting', `Feedback Cycle #${this.cycleCount} complete (${duration}ms)`);
|
|
2022
2248
|
this.log.info(`[orchestrator] ─── Feedback Cycle #${this.cycleCount} complete (${duration}ms) ───`);
|
|
2249
|
+
// End trace for this research cycle
|
|
2250
|
+
if (this.traceCollector && traceId) {
|
|
2251
|
+
try {
|
|
2252
|
+
this.traceCollector.endTrace(traceId);
|
|
2253
|
+
}
|
|
2254
|
+
catch { /* tracing should never break the cycle */ }
|
|
2255
|
+
}
|
|
2023
2256
|
// Record cycle metrics into MetaCognition for engine-level tracking
|
|
2024
2257
|
if (this.metaCognitionLayer) {
|
|
2025
2258
|
this.metaCognitionLayer.recordStep('orchestrator', this.cycleCount, {
|
|
@@ -2823,7 +3056,31 @@ export class ResearchOrchestrator {
|
|
|
2823
3056
|
}
|
|
2824
3057
|
catch { /* featureRecommender not ready */ }
|
|
2825
3058
|
}
|
|
2826
|
-
// ── Source B:
|
|
3059
|
+
// ── Source B: CodeHealth issues → SelfMod suggestions ──
|
|
3060
|
+
if (this.codeHealthMonitor) {
|
|
3061
|
+
try {
|
|
3062
|
+
const health = this.codeHealthMonitor.getStatus();
|
|
3063
|
+
if (health.lastScan && health.lastScan.techDebtScore > 60) {
|
|
3064
|
+
const scan = health.lastScan;
|
|
3065
|
+
const issues = [];
|
|
3066
|
+
if (scan.complexityScore > 70)
|
|
3067
|
+
issues.push(`high complexity (${scan.complexityScore.toFixed(0)})`);
|
|
3068
|
+
if (scan.duplicationScore > 30)
|
|
3069
|
+
issues.push(`code duplication (${scan.duplicationScore.toFixed(0)})`);
|
|
3070
|
+
if (scan.testRatio < 0.3)
|
|
3071
|
+
issues.push(`low test coverage (${(scan.testRatio * 100).toFixed(0)}%)`);
|
|
3072
|
+
if (issues.length > 0) {
|
|
3073
|
+
return {
|
|
3074
|
+
title: `Reduce tech debt (score: ${scan.techDebtScore.toFixed(0)})`,
|
|
3075
|
+
problem: `Code health scan detected: ${issues.join(', ')}. Tech debt score is ${scan.techDebtScore.toFixed(1)}/100.`,
|
|
3076
|
+
targetFiles: this.findTargetFilesForNeed('code quality'),
|
|
3077
|
+
};
|
|
3078
|
+
}
|
|
3079
|
+
}
|
|
3080
|
+
}
|
|
3081
|
+
catch { /* code health not ready */ }
|
|
3082
|
+
}
|
|
3083
|
+
// ── Source C: Existing suggestions (filtered — skip AutoResponder noise) ──
|
|
2827
3084
|
if (!this.selfScanner)
|
|
2828
3085
|
return null;
|
|
2829
3086
|
const suggestions = this.generateSelfImprovementSuggestions();
|