@timmeck/brain-core 2.36.67 → 2.36.69

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 (37) hide show
  1. package/dist/chat/chat-engine.d.ts +6 -0
  2. package/dist/chat/chat-engine.js +52 -0
  3. package/dist/chat/chat-engine.js.map +1 -1
  4. package/dist/chat/index.d.ts +2 -0
  5. package/dist/chat/index.js +1 -0
  6. package/dist/chat/index.js.map +1 -1
  7. package/dist/chat/multi-brain-router.d.ts +25 -0
  8. package/dist/chat/multi-brain-router.js +88 -0
  9. package/dist/chat/multi-brain-router.js.map +1 -0
  10. package/dist/debate/debate-engine.d.ts +2 -0
  11. package/dist/debate/debate-engine.js +5 -7
  12. package/dist/debate/debate-engine.js.map +1 -1
  13. package/dist/index.d.ts +6 -4
  14. package/dist/index.js +4 -2
  15. package/dist/index.js.map +1 -1
  16. package/dist/research/adaptive-scheduler.d.ts +53 -0
  17. package/dist/research/adaptive-scheduler.js +122 -0
  18. package/dist/research/adaptive-scheduler.js.map +1 -0
  19. package/dist/research/knowledge-distiller.d.ts +4 -0
  20. package/dist/research/knowledge-distiller.js +17 -0
  21. package/dist/research/knowledge-distiller.js.map +1 -1
  22. package/dist/research/research-orchestrator.d.ts +42 -0
  23. package/dist/research/research-orchestrator.js +301 -29
  24. package/dist/research/research-orchestrator.js.map +1 -1
  25. package/dist/strategy/index.d.ts +4 -0
  26. package/dist/strategy/index.js +2 -0
  27. package/dist/strategy/index.js.map +1 -1
  28. package/dist/strategy/strategy-exporter.d.ts +26 -0
  29. package/dist/strategy/strategy-exporter.js +47 -0
  30. package/dist/strategy/strategy-exporter.js.map +1 -0
  31. package/dist/strategy/strategy-forge.d.ts +2 -0
  32. package/dist/strategy/strategy-forge.js +4 -0
  33. package/dist/strategy/strategy-forge.js.map +1 -1
  34. package/dist/strategy/strategy-importer.d.ts +15 -0
  35. package/dist/strategy/strategy-importer.js +69 -0
  36. package/dist/strategy/strategy-importer.js.map +1 -0
  37. package/package.json +1 -1
@@ -0,0 +1,122 @@
1
+ import { getLogger } from '../utils/logger.js';
2
+ // ── Scheduler ───────────────────────────────────────
3
+ const HOURS_PER_DAY = 24;
4
+ const DAYS_PER_WEEK = 7;
5
+ const TOTAL_BUCKETS = HOURS_PER_DAY * DAYS_PER_WEEK; // 168
6
+ export class AdaptiveScheduler {
7
+ buckets;
8
+ currentIntervalMs;
9
+ config;
10
+ log = getLogger();
11
+ constructor(config = {}) {
12
+ this.config = {
13
+ baseIntervalMs: config.baseIntervalMs ?? 300_000,
14
+ minIntervalMs: config.minIntervalMs ?? 120_000,
15
+ maxIntervalMs: config.maxIntervalMs ?? 900_000,
16
+ productiveMultiplier: config.productiveMultiplier ?? 0.7,
17
+ idleMultiplier: config.idleMultiplier ?? 1.5,
18
+ idleThreshold: config.idleThreshold ?? 3,
19
+ };
20
+ this.currentIntervalMs = this.config.baseIntervalMs;
21
+ this.buckets = Array.from({ length: TOTAL_BUCKETS }, () => ({
22
+ cycleCount: 0,
23
+ insightsFound: 0,
24
+ rulesLearned: 0,
25
+ anomaliesDetected: 0,
26
+ avgDurationMs: 0,
27
+ }));
28
+ }
29
+ /** Get bucket index for a given time. */
30
+ getBucketIndex(date = new Date()) {
31
+ const day = date.getDay(); // 0=Sunday
32
+ const hour = date.getHours();
33
+ return day * HOURS_PER_DAY + hour;
34
+ }
35
+ /** Record outcome of a completed cycle. */
36
+ recordOutcome(outcome, date = new Date()) {
37
+ const idx = this.getBucketIndex(date);
38
+ const bucket = this.buckets[idx];
39
+ // Running average for duration
40
+ const totalDuration = bucket.avgDurationMs * bucket.cycleCount + outcome.durationMs;
41
+ bucket.cycleCount++;
42
+ bucket.avgDurationMs = totalDuration / bucket.cycleCount;
43
+ bucket.insightsFound += outcome.insightsFound;
44
+ bucket.rulesLearned += outcome.rulesLearned;
45
+ bucket.anomaliesDetected += outcome.anomaliesDetected;
46
+ // Recalculate interval
47
+ this.currentIntervalMs = this.computeInterval(idx);
48
+ this.log.debug(`[adaptive-scheduler] Bucket ${idx} (day=${date.getDay()},h=${date.getHours()}): cycles=${bucket.cycleCount}, interval=${this.currentIntervalMs}ms`);
49
+ }
50
+ /** Compute next interval based on current bucket's productivity. */
51
+ computeInterval(bucketIndex) {
52
+ const bucket = this.buckets[bucketIndex];
53
+ const { baseIntervalMs, minIntervalMs, maxIntervalMs, productiveMultiplier, idleMultiplier, idleThreshold } = this.config;
54
+ const isProductive = bucket.insightsFound > 0 || bucket.anomaliesDetected > 0 || bucket.rulesLearned > 0;
55
+ const isIdle = !isProductive && bucket.cycleCount >= idleThreshold;
56
+ let interval = baseIntervalMs;
57
+ if (isProductive) {
58
+ interval = Math.round(baseIntervalMs * productiveMultiplier);
59
+ }
60
+ else if (isIdle) {
61
+ interval = Math.round(baseIntervalMs * idleMultiplier);
62
+ }
63
+ return Math.max(minIntervalMs, Math.min(maxIntervalMs, interval));
64
+ }
65
+ /** Get the recommended interval for the next cycle. */
66
+ getNextInterval() {
67
+ return this.currentIntervalMs;
68
+ }
69
+ /** Update base config from ParameterRegistry values. */
70
+ updateConfig(partial) {
71
+ if (partial.baseIntervalMs !== undefined)
72
+ this.config.baseIntervalMs = partial.baseIntervalMs;
73
+ if (partial.minIntervalMs !== undefined)
74
+ this.config.minIntervalMs = partial.minIntervalMs;
75
+ if (partial.maxIntervalMs !== undefined)
76
+ this.config.maxIntervalMs = partial.maxIntervalMs;
77
+ if (partial.productiveMultiplier !== undefined)
78
+ this.config.productiveMultiplier = partial.productiveMultiplier;
79
+ if (partial.idleMultiplier !== undefined)
80
+ this.config.idleMultiplier = partial.idleMultiplier;
81
+ if (partial.idleThreshold !== undefined)
82
+ this.config.idleThreshold = partial.idleThreshold;
83
+ }
84
+ /** Get status summary. */
85
+ getStatus() {
86
+ let productive = 0;
87
+ let idle = 0;
88
+ for (const b of this.buckets) {
89
+ if (b.cycleCount === 0)
90
+ continue;
91
+ if (b.insightsFound > 0 || b.anomaliesDetected > 0 || b.rulesLearned > 0)
92
+ productive++;
93
+ else if (b.cycleCount >= this.config.idleThreshold)
94
+ idle++;
95
+ }
96
+ return {
97
+ currentIntervalMs: this.currentIntervalMs,
98
+ baseIntervalMs: this.config.baseIntervalMs,
99
+ minIntervalMs: this.config.minIntervalMs,
100
+ maxIntervalMs: this.config.maxIntervalMs,
101
+ totalCycles: this.buckets.reduce((s, b) => s + b.cycleCount, 0),
102
+ productiveBuckets: productive,
103
+ idleBuckets: idle,
104
+ };
105
+ }
106
+ /** Reset all bucket data. */
107
+ reset() {
108
+ for (const b of this.buckets) {
109
+ b.cycleCount = 0;
110
+ b.insightsFound = 0;
111
+ b.rulesLearned = 0;
112
+ b.anomaliesDetected = 0;
113
+ b.avgDurationMs = 0;
114
+ }
115
+ this.currentIntervalMs = this.config.baseIntervalMs;
116
+ }
117
+ /** Get raw bucket data (for dashboard/debugging). */
118
+ getBuckets() {
119
+ return this.buckets;
120
+ }
121
+ }
122
+ //# sourceMappingURL=adaptive-scheduler.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"adaptive-scheduler.js","sourceRoot":"","sources":["../../src/research/adaptive-scheduler.ts"],"names":[],"mappings":"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"}
@@ -88,6 +88,10 @@ export declare class KnowledgeDistiller {
88
88
  private extractAntiPatterns;
89
89
  private extractStrategies;
90
90
  private suggestTransferDomains;
91
+ /** Adjust a principle's confidence based on challenge outcome. */
92
+ adjustPrincipleConfidence(principleId: string, factor: number): boolean;
93
+ /** Remove a principle (e.g. when disproved). */
94
+ removePrinciple(principleId: string): boolean;
91
95
  private upsertPrinciple;
92
96
  private upsertAntiPattern;
93
97
  private upsertStrategy;
@@ -541,6 +541,23 @@ export class KnowledgeDistiller {
541
541
  allDomains.delete(domain);
542
542
  return [...allDomains].slice(0, 5);
543
543
  }
544
+ /** Adjust a principle's confidence based on challenge outcome. */
545
+ adjustPrincipleConfidence(principleId, factor) {
546
+ const row = this.db.prepare('SELECT id, confidence FROM knowledge_principles WHERE id = ?').get(principleId);
547
+ if (!row)
548
+ return false;
549
+ const newConfidence = Math.max(0, Math.min(1, row.confidence * factor));
550
+ this.db.prepare('UPDATE knowledge_principles SET confidence = ?, updated_at = datetime(\'now\') WHERE id = ?').run(newConfidence, principleId);
551
+ this.log.info(`[distiller] Principle ${principleId} confidence adjusted: ${row.confidence.toFixed(3)} → ${newConfidence.toFixed(3)} (factor: ${factor})`);
552
+ return true;
553
+ }
554
+ /** Remove a principle (e.g. when disproved). */
555
+ removePrinciple(principleId) {
556
+ const changes = this.db.prepare('DELETE FROM knowledge_principles WHERE id = ?').run(principleId).changes;
557
+ if (changes > 0)
558
+ this.log.info(`[distiller] Principle ${principleId} removed (disproved)`);
559
+ return changes > 0;
560
+ }
544
561
  upsertPrinciple(p) {
545
562
  this.db.prepare(`
546
563
  INSERT INTO knowledge_principles (id, domain, statement, success_rate, sample_size, confidence, source)
@@ -1 +1 @@
1
- {"version":3,"file":"knowledge-distiller.js","sourceRoot":"","sources":["../../src/research/knowledge-distiller.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"knowledge-distiller.js","sourceRoot":"","sources":["../../src/research/knowledge-distiller.ts"],"names":[],"mappings":"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"}
@@ -52,6 +52,7 @@ import type { CodeHealthMonitor } from '../code-health/health-monitor.js';
52
52
  import type { KnowledgeGraphEngine } from '../knowledge-graph/graph-engine.js';
53
53
  import type { RepoAbsorber } from '../codegen/repo-absorber.js';
54
54
  import { AutoResponder } from './auto-responder.js';
55
+ import { AdaptiveScheduler } from './adaptive-scheduler.js';
55
56
  export interface ResearchOrchestratorConfig {
56
57
  brainName: string;
57
58
  /** Feedback loop interval in ms. Default: 300_000 (5 min) */
@@ -140,6 +141,7 @@ export declare class ResearchOrchestrator {
140
141
  private runtimeInfluenceTracker;
141
142
  private loopDetector;
142
143
  private governanceLayer;
144
+ private adaptiveScheduler;
143
145
  private lastAutoMissionTime;
144
146
  private lastGoalMissionTime;
145
147
  private roadmapBootstrapped;
@@ -164,9 +166,19 @@ export declare class ResearchOrchestrator {
164
166
  private lastSuggestionsCycle;
165
167
  /** Recent debate topic keys to prevent repeating the same debate. */
166
168
  private recentDebateTopics;
169
+ /** Tracks outcomes per desire key: successes, failures, last result. */
170
+ private desireOutcomes;
171
+ /** Category-level success rates for adaptive confidence. */
172
+ private desireCategoryRates;
173
+ /** Desire keys currently being actuated by other brains (received via cross-brain). */
174
+ private crossBrainActiveDesires;
167
175
  constructor(db: Database.Database, config: ResearchOrchestratorConfig, causalGraph?: CausalGraph);
168
176
  /** Set callback for self-improvement suggestions (e.g. to create notifications). */
169
177
  setOnSuggestion(callback: (suggestions: string[]) => void): void;
178
+ /** Set the AdaptiveScheduler for dynamic cycle intervals. */
179
+ setAdaptiveScheduler(scheduler: AdaptiveScheduler): void;
180
+ /** Get the AdaptiveScheduler instance. */
181
+ getAdaptiveScheduler(): AdaptiveScheduler | null;
170
182
  /** Set the DataMiner instance for DB-driven engine feeding. */
171
183
  setDataMiner(miner: DataMiner): void;
172
184
  /** Set the DreamEngine — wires journal + knowledgeDistiller into it. */
@@ -296,6 +308,9 @@ export declare class ResearchOrchestrator {
296
308
  setPredictionEngine(engine: PredictionEngine): void;
297
309
  /** Start the autonomous feedback loop timer. */
298
310
  start(intervalMs?: number): void;
311
+ /** Schedule the next feedback cycle (supports adaptive intervals). */
312
+ private scheduleNextCycle;
313
+ private startIntervalMs;
299
314
  /** Stop the feedback loop. */
300
315
  stop(): void;
301
316
  /**
@@ -325,6 +340,33 @@ export declare class ResearchOrchestrator {
325
340
  * Avoids repeating the same topic within the last 10 debates. */
326
341
  private pickDebateTopic;
327
342
  generateSelfImprovementSuggestions(): string[];
343
+ /** Record a desire outcome (success or failure) for feedback-loop. */
344
+ private recordDesireOutcome;
345
+ /** Record category-level outcome for adaptive confidence. */
346
+ private recordDesireCategoryOutcome;
347
+ /** Map a desire key to a broad category for confidence tracking. */
348
+ private desireKeyToCategory;
349
+ /** Handle incoming cross-brain desire signal. */
350
+ onCrossBrainDesireSignal(brain: string, desireKey: string, priority: number): void;
351
+ /** Get desire feedback stats for monitoring. */
352
+ getDesireFeedbackStats(): {
353
+ outcomes: Array<{
354
+ key: string;
355
+ successes: number;
356
+ failures: number;
357
+ lastResult: string;
358
+ }>;
359
+ categoryRates: Array<{
360
+ category: string;
361
+ successRate: number;
362
+ total: number;
363
+ }>;
364
+ crossBrainActive: Array<{
365
+ key: string;
366
+ brain: string;
367
+ priority: number;
368
+ }>;
369
+ };
328
370
  /** Get structured self-improvement desires with priority and alternatives. */
329
371
  getDesires(): Array<{
330
372
  key: string;