@hongmaple0820/scale-engine 0.43.0 → 0.45.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 (55) hide show
  1. package/README.en.md +2 -2
  2. package/README.md +3 -3
  3. package/dist/api/cli.js +24 -2
  4. package/dist/api/cli.js.map +1 -1
  5. package/dist/api/mcp.js +86 -0
  6. package/dist/api/mcp.js.map +1 -1
  7. package/dist/codegraph/CodeIntelligence.d.ts +67 -0
  8. package/dist/codegraph/CodeIntelligence.js +457 -5
  9. package/dist/codegraph/CodeIntelligence.js.map +1 -1
  10. package/dist/cortex/SessionInjector.d.ts +1 -0
  11. package/dist/cortex/SessionInjector.js +33 -0
  12. package/dist/cortex/SessionInjector.js.map +1 -1
  13. package/dist/dashboard/DashboardServer.d.ts +33 -13
  14. package/dist/dashboard/DashboardServer.js +314 -182
  15. package/dist/dashboard/DashboardServer.js.map +1 -1
  16. package/dist/dashboard/index.d.ts +2 -2
  17. package/dist/dashboard/index.js +1 -1
  18. package/dist/dashboard/index.js.map +1 -1
  19. package/dist/dashboard/server.d.ts +8 -22
  20. package/dist/dashboard/server.js +2 -83
  21. package/dist/dashboard/server.js.map +1 -1
  22. package/dist/index.d.ts +1 -1
  23. package/dist/index.js +1 -1
  24. package/dist/index.js.map +1 -1
  25. package/dist/memory/MemoryBrain.d.ts +22 -0
  26. package/dist/memory/MemoryBrain.js +183 -4
  27. package/dist/memory/MemoryBrain.js.map +1 -1
  28. package/dist/memory/MemoryProviders.d.ts +6 -1
  29. package/dist/memory/MemoryProviders.js +190 -6
  30. package/dist/memory/MemoryProviders.js.map +1 -1
  31. package/dist/setup/SetupWizard.js +21 -7
  32. package/dist/setup/SetupWizard.js.map +1 -1
  33. package/dist/skills/SkillRepository.js +64 -1
  34. package/dist/skills/SkillRepository.js.map +1 -1
  35. package/dist/topology/DomainMapper.d.ts +23 -0
  36. package/dist/topology/DomainMapper.js +179 -0
  37. package/dist/topology/DomainMapper.js.map +1 -0
  38. package/dist/topology/LayerClassifier.d.ts +8 -0
  39. package/dist/topology/LayerClassifier.js +109 -0
  40. package/dist/topology/LayerClassifier.js.map +1 -0
  41. package/dist/topology/TourGenerator.d.ts +18 -0
  42. package/dist/topology/TourGenerator.js +120 -0
  43. package/dist/topology/TourGenerator.js.map +1 -0
  44. package/dist/topology/index.d.ts +3 -0
  45. package/dist/topology/index.js +4 -0
  46. package/dist/topology/index.js.map +1 -0
  47. package/docs/README.md +3 -0
  48. package/docs/architecture/README.md +248 -0
  49. package/docs/migration/v0.38-to-v0.44.md +232 -0
  50. package/docs/reference/cli.md +234 -0
  51. package/package.json +6 -5
  52. package/docs/EXTERNAL_REFERENCES.md +0 -66
  53. package/docs/SKILL-REPOSITORY.md +0 -57
  54. package/docs/SKILL_RADAR.md +0 -135
  55. package/docs/THIRD_PARTY_SKILLS.md +0 -114
@@ -1 +1 @@
1
- {"version":3,"file":"DashboardServer.js","sourceRoot":"","sources":["../../src/dashboard/DashboardServer.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"DashboardServer.js","sourceRoot":"","sources":["../../src/dashboard/DashboardServer.ts"],"names":[],"mappings":"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"}
@@ -1,4 +1,4 @@
1
- export { DashboardServer } from './server.js';
2
- export type { DashboardConfig, DashboardData } from './server.js';
1
+ export { DashboardServer } from './DashboardServer.js';
2
+ export type { DashboardOptions, DashboardState, ArtifactTreeNode, GateSummary, DetectorStatSummary, RecentEvent, AutoDefectSummary, RecentDefect } from './DashboardServer.js';
3
3
  export { MetricsAggregator, aggregateGovernanceMetrics } from './MetricsAggregator.js';
4
4
  export type { AggregatedGovernanceMetrics, MetricsAggregatorOptions } from './MetricsAggregator.js';
@@ -1,3 +1,3 @@
1
- export { DashboardServer } from './server.js';
1
+ export { DashboardServer } from './DashboardServer.js';
2
2
  export { MetricsAggregator, aggregateGovernanceMetrics } from './MetricsAggregator.js';
3
3
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/dashboard/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,MAAM,aAAa,CAAA;AAE7C,OAAO,EAAE,iBAAiB,EAAE,0BAA0B,EAAE,MAAM,wBAAwB,CAAA"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/dashboard/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,MAAM,sBAAsB,CAAA;AAEtD,OAAO,EAAE,iBAAiB,EAAE,0BAA0B,EAAE,MAAM,wBAAwB,CAAA"}
@@ -1,16 +1,13 @@
1
- import type { IArtifactStore } from '../artifact/store.js';
2
- import type { IKnowledgeBase } from '../knowledge/KnowledgeBase.js';
3
- import type { IEventBus } from '../core/eventBus.js';
4
- import type { IAgentManager } from '../agents/IAgent.js';
5
- import type { EvolutionStats } from '../evolution/EvolutionEngine.js';
1
+ export { DashboardServer } from './DashboardServer.js';
2
+ export type { DashboardOptions, DashboardState, ArtifactTreeNode, GateSummary, DetectorStatSummary, RecentEvent, AutoDefectSummary, RecentDefect } from './DashboardServer.js';
6
3
  export interface DashboardConfig {
7
4
  port: number;
8
5
  host: string;
9
- artifactStore: IArtifactStore;
10
- knowledgeBase: IKnowledgeBase;
11
- eventBus: IEventBus;
12
- agentManager: IAgentManager;
13
- evolutionStats?: () => EvolutionStats;
6
+ artifactStore: import('../artifact/store.js').IArtifactStore;
7
+ knowledgeBase: import('../knowledge/KnowledgeBase.js').IKnowledgeBase;
8
+ eventBus: import('../core/eventBus.js').IEventBus;
9
+ agentManager: import('../agents/IAgent.js').IAgentManager;
10
+ evolutionStats?: () => import('../evolution/EvolutionEngine.js').EvolutionStats;
14
11
  }
15
12
  export interface DashboardData {
16
13
  artifacts: Array<{
@@ -31,7 +28,7 @@ export interface DashboardData {
31
28
  title: string;
32
29
  relevance: number;
33
30
  }>;
34
- evolution: EvolutionStats;
31
+ evolution: import('../evolution/EvolutionEngine.js').EvolutionStats;
35
32
  agents: Array<{
36
33
  id: string;
37
34
  name: string;
@@ -39,14 +36,3 @@ export interface DashboardData {
39
36
  successRate: number;
40
37
  }>;
41
38
  }
42
- export declare class DashboardServer {
43
- private config;
44
- private server;
45
- private viewsDir;
46
- constructor(config: DashboardConfig);
47
- start(): void;
48
- stop(): void;
49
- private handleRequest;
50
- private handleApi;
51
- private collectData;
52
- }
@@ -1,84 +1,3 @@
1
- // SCALE Engine Dashboard Server
2
- import { logger } from '../core/logger.js';
3
- import { createServer } from 'node:http';
4
- import { readFile } from 'node:fs/promises';
5
- import { join } from 'node:path';
6
- export class DashboardServer {
7
- constructor(config) {
8
- this.config = config;
9
- this.server = null;
10
- this.viewsDir = join(import.meta.dirname ?? __dirname, 'views');
11
- }
12
- start() {
13
- this.server = createServer(async (req, res) => {
14
- try {
15
- await this.handleRequest(req, res);
16
- }
17
- catch (error) {
18
- logger.error({ error }, 'Dashboard error');
19
- res.statusCode = 500;
20
- res.end('Error');
21
- }
22
- });
23
- this.server.listen(this.config.port, this.config.host, () => {
24
- logger.info({ port: this.config.port }, 'Dashboard started');
25
- });
26
- }
27
- stop() { if (this.server) {
28
- this.server.close();
29
- this.server = null;
30
- } }
31
- async handleRequest(req, res) {
32
- const url = req.url ?? '/';
33
- if (url.startsWith('/api/')) {
34
- await this.handleApi(url, res);
35
- return;
36
- }
37
- const viewMap = {
38
- '/': 'artifact-flow.html', '/artifacts': 'artifact-flow.html',
39
- '/sessions': 'session-timeline.html', '/knowledge': 'knowledge-graph.html',
40
- '/evolution': 'evolution-metrics.html', '/agents': 'agent-stats.html',
41
- };
42
- const viewFile = viewMap[url] ?? 'artifact-flow.html';
43
- try {
44
- const content = await readFile(join(this.viewsDir, viewFile), 'utf-8');
45
- res.setHeader('Content-Type', 'text/html');
46
- res.end(content);
47
- }
48
- catch (error) {
49
- logger.warn({ error, viewFile }, 'View file not found');
50
- res.statusCode = 404;
51
- res.end('Not found');
52
- }
53
- }
54
- async handleApi(url, res) {
55
- res.setHeader('Content-Type', 'application/json');
56
- const data = await this.collectData();
57
- if (url === '/api/artifacts')
58
- res.end(JSON.stringify(data.artifacts));
59
- else if (url === '/api/sessions')
60
- res.end(JSON.stringify(data.sessions));
61
- else if (url === '/api/knowledge')
62
- res.end(JSON.stringify(data.knowledge));
63
- else if (url === '/api/evolution')
64
- res.end(JSON.stringify(data.evolution));
65
- else if (url === '/api/agents')
66
- res.end(JSON.stringify(data.agents));
67
- else if (url === '/api/all')
68
- res.end(JSON.stringify(data));
69
- else {
70
- res.statusCode = 404;
71
- res.end(JSON.stringify({ error: 'Not found' }));
72
- }
73
- }
74
- async collectData() {
75
- const artifacts = await this.config.artifactStore.query({});
76
- const artifactData = artifacts.map(a => ({ id: a.id, type: a.type, status: a.status, title: a.title, createdAt: a.createdAt }));
77
- const knowledge = await this.config.knowledgeBase.recall({});
78
- const knowledgeData = knowledge.map(k => ({ id: k.id, type: k.type, title: k.title, relevance: k.relevance }));
79
- const evolution = this.config.evolutionStats?.() ?? { lessonsExtracted: 0, rulesProposed: 0, shadowRules: 0, rulesApproved: 0, hooksGenerated: 0 };
80
- const agents = this.config.agentManager.listAll().map(d => ({ id: d.id, name: d.name, dispatchCount: 0, successRate: 1.0 }));
81
- return { artifacts: artifactData, sessions: [], knowledge: knowledgeData, evolution, agents };
82
- }
83
- }
1
+ // Re-export unified DashboardServer for backward compatibility
2
+ export { DashboardServer } from './DashboardServer.js';
84
3
  //# sourceMappingURL=server.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"server.js","sourceRoot":"","sources":["../../src/dashboard/server.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"server.js","sourceRoot":"","sources":["../../src/dashboard/server.ts"],"names":[],"mappings":"AAAA,+DAA+D;AAC/D,OAAO,EAAE,eAAe,EAAE,MAAM,sBAAsB,CAAA"}
package/dist/index.d.ts CHANGED
@@ -90,7 +90,7 @@ export { DEFAULT_SYMBOL_MAP, DEFAULT_PRESERVE_TERMS } from './context/CavemanCom
90
90
  export { AntiPatternRegistry, createAntiPatternRegistry } from './context/AntiPatternRegistry.js';
91
91
  export type { AntiPattern, AntiPatternMatch, IAntiPatternRegistry } from './context/AntiPatternRegistry.js';
92
92
  export { DashboardServer } from './dashboard/DashboardServer.js';
93
- export type { DashboardState, ArtifactTreeNode, GateSummary, DetectorStatSummary, RecentEvent } from './dashboard/DashboardServer.js';
93
+ export type { DashboardOptions, DashboardState, ArtifactTreeNode, GateSummary, DetectorStatSummary, RecentEvent, AutoDefectSummary, RecentDefect } from './dashboard/DashboardServer.js';
94
94
  export { Doctor } from './api/doctor.js';
95
95
  export { ScaleMCPServer } from './api/mcp.js';
96
96
  export { HTMLDocumentRenderer } from './output/HTMLDocumentRenderer.js';
package/dist/index.js CHANGED
@@ -92,7 +92,7 @@ export { CavemanCompressor } from './context/CavemanCompressor.js';
92
92
  export { DEFAULT_SYMBOL_MAP, DEFAULT_PRESERVE_TERMS } from './context/CavemanCompressor.js';
93
93
  // Anti-Pattern Registry (andrej-karpathy-skills style)
94
94
  export { AntiPatternRegistry, createAntiPatternRegistry } from './context/AntiPatternRegistry.js';
95
- // Dashboard (v0.7.0)
95
+ // Dashboard 2.0
96
96
  export { DashboardServer } from './dashboard/DashboardServer.js';
97
97
  // API
98
98
  export { Doctor } from './api/doctor.js';
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
@@ -1,10 +1,12 @@
1
1
  export type MemoryNodeType = 'fact' | 'decision' | 'incident' | 'relation' | 'contradiction';
2
+ export type MemoryNodeLayer = 'L1-trace' | 'L2-policy' | 'L3-world-model' | 'crystallized';
2
3
  export type MemoryNodeSource = 'runtime-evidence' | 'task-artifact' | 'docs' | 'git' | 'manual';
3
4
  export type MemoryNodeScope = 'project' | 'workspace' | 'global-candidate';
4
5
  export type MemoryNodeStatus = 'candidate' | 'active' | 'stale' | 'rejected';
5
6
  export interface MemoryNode {
6
7
  id: string;
7
8
  type: MemoryNodeType;
9
+ layer: MemoryNodeLayer;
8
10
  title: string;
9
11
  summary: string;
10
12
  entities: string[];
@@ -71,6 +73,7 @@ export interface MemoryDreamReport {
71
73
  missingEvidence: number;
72
74
  duplicateGroups: number;
73
75
  contradictions: number;
76
+ byLayer: Record<MemoryNodeLayer, number>;
74
77
  };
75
78
  promotionCandidates: Array<{
76
79
  id: string;
@@ -96,6 +99,17 @@ export interface MemoryPromoteReport {
96
99
  node?: MemoryNode;
97
100
  warnings: string[];
98
101
  }
102
+ export interface MemoryRefineReport {
103
+ ok: boolean;
104
+ generatedAt: string;
105
+ extracted: {
106
+ L2Policies: number;
107
+ L3WorldModels: number;
108
+ crystallized: number;
109
+ };
110
+ nodes: MemoryNode[];
111
+ warnings: string[];
112
+ }
99
113
  export declare class MemoryBrain {
100
114
  private projectDir;
101
115
  private scaleRoot;
@@ -103,11 +117,13 @@ export declare class MemoryBrain {
103
117
  private db;
104
118
  private now;
105
119
  constructor(options?: MemoryBrainOptions);
120
+ private migrate;
106
121
  addNode(input: Partial<MemoryNode> & Pick<MemoryNode, 'type' | 'title' | 'summary' | 'source'>): MemoryNode;
107
122
  ingest(options: MemoryIngestOptions): MemoryIngestReport;
108
123
  query(query: string, options?: {
109
124
  limit?: number;
110
125
  status?: MemoryNodeStatus;
126
+ layer?: MemoryNodeLayer;
111
127
  }): MemoryQueryReport;
112
128
  contradictions(): MemoryContradictionReport;
113
129
  dream(): MemoryDreamReport;
@@ -124,9 +140,15 @@ export declare class MemoryBrain {
124
140
  list(filter?: {
125
141
  status?: MemoryNodeStatus;
126
142
  scope?: MemoryNodeScope;
143
+ layer?: MemoryNodeLayer;
127
144
  }): MemoryNode[];
128
145
  get(id: string): MemoryNode | null;
129
146
  close(): void;
147
+ refine(options?: {
148
+ minL1ForL2?: number;
149
+ minL2ForL3?: number;
150
+ limit?: number;
151
+ }): MemoryRefineReport;
130
152
  private ingestEvidence;
131
153
  private ingestCandidate;
132
154
  private ingestFailureReplay;
@@ -9,6 +9,7 @@ const SCHEMA = `
9
9
  CREATE TABLE IF NOT EXISTS memory_nodes (
10
10
  id TEXT PRIMARY KEY,
11
11
  type TEXT NOT NULL,
12
+ layer TEXT NOT NULL DEFAULT 'L1-trace',
12
13
  title TEXT NOT NULL,
13
14
  summary TEXT NOT NULL,
14
15
  entities TEXT NOT NULL DEFAULT '[]',
@@ -34,8 +35,11 @@ CREATE TABLE IF NOT EXISTS memory_meta (
34
35
  value TEXT NOT NULL
35
36
  );
36
37
 
37
- INSERT OR IGNORE INTO memory_meta (key, value) VALUES ('schema_version', '1');
38
+ INSERT OR IGNORE INTO memory_meta (key, value) VALUES ('schema_version', '2');
38
39
  `;
40
+ const ADD_LAYER_COLUMN = `ALTER TABLE memory_nodes ADD COLUMN layer TEXT NOT NULL DEFAULT 'L1-trace'`;
41
+ const ADD_LAYER_INDEX = `CREATE INDEX IF NOT EXISTS idx_memory_nodes_layer ON memory_nodes(layer)`;
42
+ const SET_SCHEMA_V2 = `UPDATE memory_meta SET value = '2' WHERE key = 'schema_version'`;
39
43
  export class MemoryBrain {
40
44
  constructor(options = {}) {
41
45
  this.projectDir = resolve(options.projectDir ?? process.cwd());
@@ -47,13 +51,39 @@ export class MemoryBrain {
47
51
  this.db.pragma('journal_mode = WAL');
48
52
  this.db.pragma('busy_timeout = 5000');
49
53
  this.db.exec(SCHEMA);
54
+ this.migrate();
50
55
  this.writeManifest();
51
56
  }
57
+ migrate() {
58
+ try {
59
+ const row = this.db.prepare("SELECT value FROM memory_meta WHERE key = 'schema_version'").get();
60
+ const version = row ? Number(row.value) : 2;
61
+ if (version < 2) {
62
+ // Add layer column to existing v1 database
63
+ try {
64
+ this.db.exec(ADD_LAYER_COLUMN);
65
+ }
66
+ catch { /* column already exists */ }
67
+ try {
68
+ this.db.exec(ADD_LAYER_INDEX);
69
+ }
70
+ catch { /* index already exists */ }
71
+ try {
72
+ this.db.exec(SET_SCHEMA_V2);
73
+ }
74
+ catch { /* already updated */ }
75
+ }
76
+ }
77
+ catch {
78
+ // Fresh database, schema already created by SCHEMA constant
79
+ }
80
+ }
52
81
  addNode(input) {
53
82
  const now = this.now().toISOString();
54
83
  const candidate = sanitizeNode({
55
84
  id: input.id ?? `MEM-${Date.now()}-${randomUUID().slice(0, 8)}`,
56
85
  type: input.type,
86
+ layer: input.layer ?? 'L1-trace',
57
87
  title: input.title,
58
88
  summary: input.summary,
59
89
  entities: unique(input.entities ?? inferEntities(`${input.title}\n${input.summary}`)),
@@ -80,7 +110,7 @@ export class MemoryBrain {
80
110
  }
81
111
  query(query, options = {}) {
82
112
  const terms = tokenize(query);
83
- const nodes = this.list({ status: options.status })
113
+ const nodes = this.list({ status: options.status, layer: options.layer })
84
114
  .map(node => ({ node, score: scoreNode(node, terms) }))
85
115
  .filter(item => item.score > 0)
86
116
  .sort((a, b) => b.score - a.score || b.node.confidence - a.node.confidence)
@@ -111,6 +141,11 @@ export class MemoryBrain {
111
141
  const promotionCandidates = nodes
112
142
  .filter(node => node.status === 'candidate' && node.evidencePaths.length > 0 && node.confidence >= 0.7)
113
143
  .map(node => ({ id: node.id, title: node.title, confidence: node.confidence, evidencePaths: node.evidencePaths }));
144
+ const byLayer = {
145
+ 'L1-trace': 0, 'L2-policy': 0, 'L3-world-model': 0, 'crystallized': 0,
146
+ };
147
+ for (const node of nodes)
148
+ byLayer[node.layer] = (byLayer[node.layer] ?? 0) + 1;
114
149
  return {
115
150
  ok: missingEvidence.length === 0,
116
151
  generatedAt: this.now().toISOString(),
@@ -122,6 +157,7 @@ export class MemoryBrain {
122
157
  missingEvidence: missingEvidence.length,
123
158
  duplicateGroups: duplicateGroups.length,
124
159
  contradictions: contradictions.length,
160
+ byLayer,
125
161
  },
126
162
  promotionCandidates,
127
163
  staleCandidates,
@@ -193,6 +229,10 @@ export class MemoryBrain {
193
229
  where.push('scope = @scope');
194
230
  params.scope = filter.scope;
195
231
  }
232
+ if (filter.layer) {
233
+ where.push('layer = @layer');
234
+ params.layer = filter.layer;
235
+ }
196
236
  if (where.length)
197
237
  sql += ` WHERE ${where.join(' AND ')}`;
198
238
  sql += ' ORDER BY updated_at DESC';
@@ -205,6 +245,125 @@ export class MemoryBrain {
205
245
  close() {
206
246
  this.db.close();
207
247
  }
248
+ refine(options = {}) {
249
+ const minL1ForL2 = options.minL1ForL2 ?? 3;
250
+ const minL2ForL3 = options.minL2ForL3 ?? 3;
251
+ const limit = options.limit ?? 20;
252
+ const warnings = [];
253
+ const created = [];
254
+ const now = this.now().toISOString();
255
+ // L1→L2: Extract policies from active L1 traces that share entities
256
+ const l1Traces = this.list({ status: 'active', layer: 'L1-trace' });
257
+ const l1ByEntity = groupByEntity(l1Traces);
258
+ for (const [entity, traces] of l1ByEntity) {
259
+ if (traces.length < minL1ForL2)
260
+ continue;
261
+ if (created.length >= limit)
262
+ break;
263
+ // Check if L2 policy already exists for this entity
264
+ const existingL2 = this.list({ layer: 'L2-policy' })
265
+ .some(n => n.entities.includes(entity));
266
+ if (existingL2)
267
+ continue;
268
+ const patterns = traces.map(t => t.summary).slice(0, 5);
269
+ const confidence = clampConfidence(Math.min(0.85, 0.5 + traces.length * 0.05));
270
+ const node = this.addNode({
271
+ type: 'decision',
272
+ layer: 'L2-policy',
273
+ title: `Policy: ${entity} pattern (${traces.length} observations)`,
274
+ summary: `Observed pattern across ${traces.length} traces: ${patterns[0]}${patterns.length > 1 ? ` (and ${patterns.length - 1} similar)` : ''}`,
275
+ entities: [entity, ...traces.flatMap(t => t.entities).filter(e => e !== entity).slice(0, 5)],
276
+ source: 'manual',
277
+ evidencePaths: traces.flatMap(t => t.evidencePaths).slice(0, 5),
278
+ confidence,
279
+ scope: 'project',
280
+ status: confidence >= 0.7 ? 'active' : 'candidate',
281
+ metadata: {
282
+ refinedFrom: traces.map(t => t.id),
283
+ layer: 'L2-policy',
284
+ refinedAt: now,
285
+ },
286
+ });
287
+ created.push(node);
288
+ }
289
+ // L2→L3: Extract world models from L2 policies that share entities
290
+ const l2Policies = this.list({ status: 'active', layer: 'L2-policy' });
291
+ const l2ByEntity = groupByEntity(l2Policies);
292
+ for (const [entity, policies] of l2ByEntity) {
293
+ if (policies.length < minL2ForL3)
294
+ continue;
295
+ if (created.length >= limit)
296
+ break;
297
+ const existingL3 = this.list({ layer: 'L3-world-model' })
298
+ .some(n => n.entities.includes(entity));
299
+ if (existingL3)
300
+ continue;
301
+ const policyTitles = policies.map(p => p.title).slice(0, 5);
302
+ const confidence = clampConfidence(Math.min(0.9, 0.6 + policies.length * 0.05));
303
+ const node = this.addNode({
304
+ type: 'fact',
305
+ layer: 'L3-world-model',
306
+ title: `World model: ${entity} (${policies.length} policies)`,
307
+ summary: `Consolidated understanding from ${policies.length} policies: ${policyTitles.join('; ')}`,
308
+ entities: [entity, ...policies.flatMap(p => p.entities).filter(e => e !== entity).slice(0, 8)],
309
+ source: 'manual',
310
+ evidencePaths: policies.flatMap(p => p.evidencePaths).slice(0, 8),
311
+ confidence,
312
+ scope: 'project',
313
+ status: confidence >= 0.75 ? 'active' : 'candidate',
314
+ metadata: {
315
+ refinedFrom: policies.map(p => p.id),
316
+ layer: 'L3-world-model',
317
+ refinedAt: now,
318
+ },
319
+ });
320
+ created.push(node);
321
+ }
322
+ // Crystallize: high-confidence L3 world models with long evidence chains
323
+ const l3Models = this.list({ status: 'active', layer: 'L3-world-model' });
324
+ for (const model of l3Models) {
325
+ if (created.length >= limit)
326
+ break;
327
+ if (model.confidence < 0.85)
328
+ continue;
329
+ const existingCrystal = this.list({ layer: 'crystallized' })
330
+ .some(n => n.entities.some(e => model.entities.includes(e)));
331
+ if (existingCrystal)
332
+ continue;
333
+ const node = this.addNode({
334
+ type: model.type,
335
+ layer: 'crystallized',
336
+ title: `Crystallized: ${model.title}`,
337
+ summary: model.summary,
338
+ entities: model.entities,
339
+ source: model.source,
340
+ evidencePaths: model.evidencePaths,
341
+ confidence: Math.min(0.95, model.confidence + 0.05),
342
+ scope: 'global-candidate',
343
+ status: 'candidate',
344
+ metadata: {
345
+ refinedFrom: [model.id],
346
+ layer: 'crystallized',
347
+ refinedAt: now,
348
+ },
349
+ });
350
+ created.push(node);
351
+ }
352
+ const l2Count = created.filter(n => n.layer === 'L2-policy').length;
353
+ const l3Count = created.filter(n => n.layer === 'L3-world-model').length;
354
+ const crystalCount = created.filter(n => n.layer === 'crystallized').length;
355
+ if (l1Traces.length < minL1ForL2)
356
+ warnings.push(`Only ${l1Traces.length} active L1 traces (need ${minL1ForL2}+ for L2 extraction)`);
357
+ if (l2Policies.length < minL2ForL3)
358
+ warnings.push(`Only ${l2Policies.length} active L2 policies (need ${minL2ForL3}+ for L3 extraction)`);
359
+ return {
360
+ ok: created.length > 0,
361
+ generatedAt: now,
362
+ extracted: { L2Policies: l2Count, L3WorldModels: l3Count, crystallized: crystalCount },
363
+ nodes: created,
364
+ warnings,
365
+ };
366
+ }
208
367
  ingestEvidence(options) {
209
368
  const ledger = new RuntimeEvidenceLedger({
210
369
  projectDir: this.projectDir,
@@ -325,14 +484,15 @@ export class MemoryBrain {
325
484
  const fingerprint = fingerprintFor(node);
326
485
  this.db.prepare(`
327
486
  INSERT INTO memory_nodes (
328
- id, type, title, summary, entities, source, evidence_paths, confidence, scope, status,
487
+ id, type, layer, title, summary, entities, source, evidence_paths, confidence, scope, status,
329
488
  created_at, updated_at, last_verified_at, metadata, fingerprint
330
489
  ) VALUES (
331
- @id, @type, @title, @summary, @entities, @source, @evidencePaths, @confidence, @scope, @status,
490
+ @id, @type, @layer, @title, @summary, @entities, @source, @evidencePaths, @confidence, @scope, @status,
332
491
  @createdAt, @updatedAt, @lastVerifiedAt, @metadata, @fingerprint
333
492
  )
334
493
  ON CONFLICT(id) DO UPDATE SET
335
494
  type = excluded.type,
495
+ layer = excluded.layer,
336
496
  title = excluded.title,
337
497
  summary = excluded.summary,
338
498
  entities = excluded.entities,
@@ -348,6 +508,7 @@ export class MemoryBrain {
348
508
  `).run({
349
509
  id: node.id,
350
510
  type: node.type,
511
+ layer: node.layer,
351
512
  title: node.title,
352
513
  summary: node.summary,
353
514
  entities: JSON.stringify(node.entities),
@@ -548,6 +709,7 @@ function rowToNode(row) {
548
709
  return {
549
710
  id: String(value.id),
550
711
  type: value.type,
712
+ layer: value.layer ?? 'L1-trace',
551
713
  title: String(value.title),
552
714
  summary: String(value.summary),
553
715
  entities: parseJsonArray(value.entities),
@@ -575,6 +737,7 @@ function sanitizeNode(node) {
575
737
  const redact = (value) => redactEvidenceText(value).value;
576
738
  return {
577
739
  ...redacted,
740
+ layer: redacted.layer ?? 'L1-trace',
578
741
  title: redact(redacted.title),
579
742
  summary: redact(redacted.summary),
580
743
  entities: unique((redacted.entities ?? []).map(entity => redact(String(entity))).filter(Boolean)),
@@ -635,4 +798,20 @@ function normalizeProjectPath(projectDir, filePath) {
635
798
  function unique(items) {
636
799
  return [...new Set(items)];
637
800
  }
801
+ function groupByEntity(nodes) {
802
+ const groups = new Map();
803
+ for (const node of nodes) {
804
+ for (const entity of node.entities) {
805
+ const existing = groups.get(entity) ?? [];
806
+ existing.push(node);
807
+ groups.set(entity, existing);
808
+ }
809
+ }
810
+ // Only return groups with multiple nodes (shared entities)
811
+ for (const [entity, group] of groups) {
812
+ if (group.length < 2)
813
+ groups.delete(entity);
814
+ }
815
+ return groups;
816
+ }
638
817
  //# sourceMappingURL=MemoryBrain.js.map