@tenphi/akno-core 0.6.0 → 0.8.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 (114) hide show
  1. package/README.md +4 -1
  2. package/config/default.jsonc +7 -5
  3. package/dist/bench/answer.js +5 -2
  4. package/dist/bench/answer.js.map +1 -1
  5. package/dist/config/schema.d.ts +8 -0
  6. package/dist/config/schema.d.ts.map +1 -1
  7. package/dist/config/schema.js +2 -0
  8. package/dist/config/schema.js.map +1 -1
  9. package/dist/index/chunk.d.ts.map +1 -1
  10. package/dist/index/chunk.js +54 -17
  11. package/dist/index/chunk.js.map +1 -1
  12. package/dist/index/derive.d.ts.map +1 -1
  13. package/dist/index/derive.js +17 -0
  14. package/dist/index/derive.js.map +1 -1
  15. package/dist/index/graph.d.ts +3 -0
  16. package/dist/index/graph.d.ts.map +1 -1
  17. package/dist/index/graph.js +131 -3
  18. package/dist/index/graph.js.map +1 -1
  19. package/dist/index/indexer.d.ts +9 -0
  20. package/dist/index/indexer.d.ts.map +1 -1
  21. package/dist/index/indexer.js +66 -3
  22. package/dist/index/indexer.js.map +1 -1
  23. package/dist/index.d.ts +2 -1
  24. package/dist/index.d.ts.map +1 -1
  25. package/dist/index.js.map +1 -1
  26. package/dist/kb/managed-lines.d.ts +3 -0
  27. package/dist/kb/managed-lines.d.ts.map +1 -1
  28. package/dist/kb/managed-lines.js +21 -1
  29. package/dist/kb/managed-lines.js.map +1 -1
  30. package/dist/kb/page.d.ts +4 -1
  31. package/dist/kb/page.d.ts.map +1 -1
  32. package/dist/kb/page.js +5 -0
  33. package/dist/kb/page.js.map +1 -1
  34. package/dist/maintenance/dream.d.ts +1 -1
  35. package/dist/maintenance/dream.d.ts.map +1 -1
  36. package/dist/maintenance/dream.js +547 -198
  37. package/dist/maintenance/dream.js.map +1 -1
  38. package/dist/maintenance/observation-migration.d.ts +17 -0
  39. package/dist/maintenance/observation-migration.d.ts.map +1 -0
  40. package/dist/maintenance/observation-migration.js +217 -0
  41. package/dist/maintenance/observation-migration.js.map +1 -0
  42. package/dist/maintenance/observe.d.ts +20 -3
  43. package/dist/maintenance/observe.d.ts.map +1 -1
  44. package/dist/maintenance/observe.js +95 -24
  45. package/dist/maintenance/observe.js.map +1 -1
  46. package/dist/maintenance/path-policy.d.ts.map +1 -1
  47. package/dist/maintenance/path-policy.js +2 -2
  48. package/dist/maintenance/path-policy.js.map +1 -1
  49. package/dist/maintenance/plans.d.ts +28 -1
  50. package/dist/maintenance/plans.d.ts.map +1 -1
  51. package/dist/maintenance/plans.js +360 -17
  52. package/dist/maintenance/plans.js.map +1 -1
  53. package/dist/memory/intent.d.ts +22 -0
  54. package/dist/memory/intent.d.ts.map +1 -0
  55. package/dist/memory/intent.js +59 -0
  56. package/dist/memory/intent.js.map +1 -0
  57. package/dist/memory/projection.d.ts +23 -0
  58. package/dist/memory/projection.d.ts.map +1 -0
  59. package/dist/memory/projection.js +151 -0
  60. package/dist/memory/projection.js.map +1 -0
  61. package/dist/models/client.d.ts.map +1 -1
  62. package/dist/models/client.js +8 -3
  63. package/dist/models/client.js.map +1 -1
  64. package/dist/models/provider-api.d.ts.map +1 -1
  65. package/dist/models/provider-api.js +4 -2
  66. package/dist/models/provider-api.js.map +1 -1
  67. package/dist/models/provider-request.d.ts +22 -0
  68. package/dist/models/provider-request.d.ts.map +1 -0
  69. package/dist/models/provider-request.js +95 -0
  70. package/dist/models/provider-request.js.map +1 -0
  71. package/dist/observations/marker.d.ts +27 -0
  72. package/dist/observations/marker.d.ts.map +1 -0
  73. package/dist/observations/marker.js +238 -0
  74. package/dist/observations/marker.js.map +1 -0
  75. package/dist/observations/projection.d.ts +23 -0
  76. package/dist/observations/projection.d.ts.map +1 -0
  77. package/dist/observations/projection.js +349 -0
  78. package/dist/observations/projection.js.map +1 -0
  79. package/dist/open.d.ts +3 -0
  80. package/dist/open.d.ts.map +1 -1
  81. package/dist/open.js +2 -0
  82. package/dist/open.js.map +1 -1
  83. package/dist/ops/answer.d.ts.map +1 -1
  84. package/dist/ops/answer.js +184 -17
  85. package/dist/ops/answer.js.map +1 -1
  86. package/dist/ops/context.d.ts.map +1 -1
  87. package/dist/ops/context.js +24 -4
  88. package/dist/ops/context.js.map +1 -1
  89. package/dist/ops/graph.d.ts.map +1 -1
  90. package/dist/ops/graph.js +101 -8
  91. package/dist/ops/graph.js.map +1 -1
  92. package/dist/ops/read.d.ts.map +1 -1
  93. package/dist/ops/read.js +9 -3
  94. package/dist/ops/read.js.map +1 -1
  95. package/dist/ops/recall.d.ts.map +1 -1
  96. package/dist/ops/recall.js +120 -69
  97. package/dist/ops/recall.js.map +1 -1
  98. package/dist/recall/assemble.d.ts +4 -1
  99. package/dist/recall/assemble.d.ts.map +1 -1
  100. package/dist/recall/assemble.js +43 -9
  101. package/dist/recall/assemble.js.map +1 -1
  102. package/dist/recall/graph-arm.js +9 -1
  103. package/dist/recall/graph-arm.js.map +1 -1
  104. package/dist/recall/search.d.ts.map +1 -1
  105. package/dist/recall/search.js +2 -1
  106. package/dist/recall/search.js.map +1 -1
  107. package/dist/store/db.d.ts.map +1 -1
  108. package/dist/store/db.js +7 -1
  109. package/dist/store/db.js.map +1 -1
  110. package/dist/store/migrations.d.ts +3 -1
  111. package/dist/store/migrations.d.ts.map +1 -1
  112. package/dist/store/migrations.js +126 -1
  113. package/dist/store/migrations.js.map +1 -1
  114. package/package.json +2 -2
@@ -2,6 +2,7 @@ import type { Store } from '../store/db.ts';
2
2
  export interface EvidenceGraphOptions {
3
3
  conflictModelId?: string | null;
4
4
  contextualModelId?: string | null;
5
+ observationMinEvidence?: number;
5
6
  }
6
7
  export interface EvidenceGraphReport {
7
8
  nodes: number;
@@ -14,6 +15,8 @@ export interface EvidenceGraphReport {
14
15
  facts: number;
15
16
  factEdges: number;
16
17
  nonTraversableFacts: number;
18
+ memories: number;
19
+ memoryEdges: number;
17
20
  }
18
21
  export type EntityNameSignal = 'canonical_slug' | 'alias' | 'title' | 'basename';
19
22
  export type ExactEntityResolution = {
@@ -1 +1 @@
1
- {"version":3,"file":"graph.d.ts","sourceRoot":"","sources":["../../src/index/graph.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,gBAAgB,CAAC;AAkB5C,MAAM,WAAW,oBAAoB;IACnC,eAAe,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAChC,iBAAiB,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;CACnC;AAED,MAAM,WAAW,mBAAmB;IAClC,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,EAAE,MAAM,CAAC;IACd,QAAQ,EAAE,MAAM,CAAC;IACjB,QAAQ,EAAE,MAAM,CAAC;IACjB,iBAAiB,EAAE,MAAM,CAAC;IAC1B,kBAAkB,EAAE,MAAM,CAAC;IAC3B,kBAAkB,EAAE,MAAM,CAAC;IAC3B,KAAK,EAAE,MAAM,CAAC;IACd,SAAS,EAAE,MAAM,CAAC;IAClB,mBAAmB,EAAE,MAAM,CAAC;CAC7B;AAED,MAAM,MAAM,gBAAgB,GAAG,gBAAgB,GAAG,OAAO,GAAG,OAAO,GAAG,UAAU,CAAC;AAEjF,MAAM,MAAM,qBAAqB,GAC7B;IACE,MAAM,EAAE,UAAU,CAAC;IACnB,UAAU,EAAE,MAAM,CAAC;IACnB,QAAQ,EAAE,MAAM,CAAC;IACjB,UAAU,EAAE,MAAM,EAAE,CAAC;IACrB,MAAM,EAAE,gBAAgB,CAAC;CAC1B,GACD;IACE,MAAM,EAAE,WAAW,CAAC;IACpB,UAAU,EAAE,MAAM,CAAC;IACnB,UAAU,EAAE,MAAM,EAAE,CAAC;IACrB,MAAM,EAAE,gBAAgB,CAAC;CAC1B,GACD;IAAE,MAAM,EAAE,YAAY,CAAC;IAAC,UAAU,EAAE,MAAM,CAAC;IAAC,UAAU,EAAE,EAAE,CAAA;CAAE,CAAC;AA2FjE;;;;;;GAMG;AACH,wBAAgB,oBAAoB,CAAC,KAAK,EAAE,KAAK,EAAE,OAAO,GAAE,oBAAyB,GAAG,mBAAmB,CAgmB1G;AAED,yGAAyG;AACzG,wBAAgB,kBAAkB,CAAC,EAAE,EAAE,KAAK,CAAC,IAAI,CAAC,EAAE,OAAO,EAAE,MAAM,GAAG,qBAAqB,CAY1F;AA4CD,wBAAgB,mBAAmB,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,CAOzD"}
1
+ {"version":3,"file":"graph.d.ts","sourceRoot":"","sources":["../../src/index/graph.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,gBAAgB,CAAC;AAoB5C,MAAM,WAAW,oBAAoB;IACnC,eAAe,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAChC,iBAAiB,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAClC,sBAAsB,CAAC,EAAE,MAAM,CAAC;CACjC;AAED,MAAM,WAAW,mBAAmB;IAClC,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,EAAE,MAAM,CAAC;IACd,QAAQ,EAAE,MAAM,CAAC;IACjB,QAAQ,EAAE,MAAM,CAAC;IACjB,iBAAiB,EAAE,MAAM,CAAC;IAC1B,kBAAkB,EAAE,MAAM,CAAC;IAC3B,kBAAkB,EAAE,MAAM,CAAC;IAC3B,KAAK,EAAE,MAAM,CAAC;IACd,SAAS,EAAE,MAAM,CAAC;IAClB,mBAAmB,EAAE,MAAM,CAAC;IAC5B,QAAQ,EAAE,MAAM,CAAC;IACjB,WAAW,EAAE,MAAM,CAAC;CACrB;AAED,MAAM,MAAM,gBAAgB,GAAG,gBAAgB,GAAG,OAAO,GAAG,OAAO,GAAG,UAAU,CAAC;AAEjF,MAAM,MAAM,qBAAqB,GAC7B;IACE,MAAM,EAAE,UAAU,CAAC;IACnB,UAAU,EAAE,MAAM,CAAC;IACnB,QAAQ,EAAE,MAAM,CAAC;IACjB,UAAU,EAAE,MAAM,EAAE,CAAC;IACrB,MAAM,EAAE,gBAAgB,CAAC;CAC1B,GACD;IACE,MAAM,EAAE,WAAW,CAAC;IACpB,UAAU,EAAE,MAAM,CAAC;IACnB,UAAU,EAAE,MAAM,EAAE,CAAC;IACrB,MAAM,EAAE,gBAAgB,CAAC;CAC1B,GACD;IAAE,MAAM,EAAE,YAAY,CAAC;IAAC,UAAU,EAAE,MAAM,CAAC;IAAC,UAAU,EAAE,EAAE,CAAA;CAAE,CAAC;AAmHjE;;;;;;GAMG;AACH,wBAAgB,oBAAoB,CAAC,KAAK,EAAE,KAAK,EAAE,OAAO,GAAE,oBAAyB,GAAG,mBAAmB,CA6vB1G;AAED,yGAAyG;AACzG,wBAAgB,kBAAkB,CAAC,EAAE,EAAE,KAAK,CAAC,IAAI,CAAC,EAAE,OAAO,EAAE,MAAM,GAAG,qBAAqB,CAY1F;AA4CD,wBAAgB,mBAAmB,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,CAOzD"}
@@ -1,9 +1,11 @@
1
1
  import { sha256 } from "../store/ids.js";
2
2
  import { cachedConflictVerdict, claimKey, conflictClaimIneligibility, findCrossPageConflictsInStore, } from "../maintenance/conflicts.js";
3
3
  import { cachedContextualEntityResolution, } from "./entity-resolution.js";
4
+ import { qualifyObservationEntries } from "../observations/projection.js";
4
5
  const STRUCTURAL_GRAPH_VERSION = 'structural-v1';
5
6
  const ENTITY_RESOLUTION_VERSION = 'entity-exact-v1';
6
7
  const FACT_GRAPH_VERSION = 'fact-relationships-v1';
8
+ const OBSERVATION_GRAPH_VERSION = 'observation-lineage-v1';
7
9
  /**
8
10
  * Replace the complete model-free graph from canonical index rows.
9
11
  *
@@ -42,8 +44,8 @@ export function rebuildEvidenceGraph(store, options = {}) {
42
44
  const insertEdge = store.db.prepare(`INSERT OR IGNORE INTO graph_edges(
43
45
  id, from_node, to_node, relation, predicate, source_kind,
44
46
  source_page, source_document, source_event, source_fact, line_start, line_end, source_field,
45
- source_hash, derivation, resolution, confidence, derivation_version, valid_from, valid_to
46
- ) VALUES(?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?)`);
47
+ source_memory, source_hash, derivation, resolution, confidence, derivation_version, valid_from, valid_to
48
+ ) VALUES(?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?)`);
47
49
  const pages = store.db
48
50
  .prepare(`SELECT p.id, p.slug, p.title, p.type, p.role, p.about, p.aliases,
49
51
  COALESCE(
@@ -82,6 +84,12 @@ export function rebuildEvidenceGraph(store, options = {}) {
82
84
  AND p.derived_hash = p.body_hash
83
85
  ORDER BY f.id`)
84
86
  .all();
87
+ const memories = store.db
88
+ .prepare(`SELECT entry_key, memory_id, source_page, source_slug, payload_line, payload_hash,
89
+ kind, subject, commitment, disposition, basis, answer_eligible, temporal_status
90
+ FROM managed_memory_entries
91
+ ORDER BY entry_key`)
92
+ .all();
85
93
  const nodeIds = new Map();
86
94
  const addNode = (kind, sourceId, sourceHash, version = STRUCTURAL_GRAPH_VERSION) => {
87
95
  const id = graphNodeId(kind, sourceId);
@@ -96,6 +104,8 @@ export function rebuildEvidenceGraph(store, options = {}) {
96
104
  addNode('fact', fact.id, fact.source_line_hash, FACT_GRAPH_VERSION);
97
105
  for (const event of events)
98
106
  addNode('event', event.id, event.source_hash);
107
+ for (const memory of memories)
108
+ addNode('memory', memory.entry_key, memory.payload_hash, 'memory-relations-v1');
99
109
  const entities = pages
100
110
  .filter((page) => page.role === 'knowledge')
101
111
  .map((page) => ({
@@ -146,11 +156,12 @@ export function rebuildEvidenceGraph(store, options = {}) {
146
156
  edge.sourceDocument,
147
157
  edge.sourceEvent,
148
158
  edge.sourceFact,
159
+ edge.sourceMemory,
149
160
  edge.line,
150
161
  edge.sourceField,
151
162
  ].join('\0');
152
163
  const id = `ged_${sha256(`${edge.from}\0${edge.to}\0${edge.relation}\0${edge.predicate ?? ''}\0${locator}`).slice(0, 24)}`;
153
- const result = insertEdge.run(id, edge.from, edge.to, edge.relation, edge.predicate, edge.sourceKind, edge.sourcePage, edge.sourceDocument, edge.sourceEvent, edge.sourceFact ?? null, edge.line, edge.lineEnd ?? edge.line, edge.sourceField, edge.sourceHash, edge.derivation ?? 'structural', edge.resolution ?? 'exact', edge.confidence ?? 1, edge.version ?? STRUCTURAL_GRAPH_VERSION, edge.validFrom ?? null, edge.validTo ?? null);
164
+ const result = insertEdge.run(id, edge.from, edge.to, edge.relation, edge.predicate, edge.sourceKind, edge.sourcePage, edge.sourceDocument, edge.sourceEvent, edge.sourceFact ?? null, edge.line, edge.lineEnd ?? edge.line, edge.sourceField, edge.sourceMemory ?? null, edge.sourceHash, edge.derivation ?? 'structural', edge.resolution ?? 'exact', edge.confidence ?? 1, edge.version ?? STRUCTURAL_GRAPH_VERSION, edge.validFrom ?? null, edge.validTo ?? null);
154
165
  edges += result.changes;
155
166
  return result.changes;
156
167
  };
@@ -170,6 +181,73 @@ export function rebuildEvidenceGraph(store, options = {}) {
170
181
  version: ENTITY_RESOLUTION_VERSION,
171
182
  });
172
183
  }
184
+ const duplicateMemoryIds = new Set(store.db
185
+ .prepare(`SELECT memory_id FROM managed_memory_entries
186
+ GROUP BY memory_id HAVING count(*) > 1`)
187
+ .all().map((row) => row.memory_id));
188
+ const uniqueMemoryById = new Map(memories
189
+ .filter((memory) => !duplicateMemoryIds.has(memory.memory_id))
190
+ .map((memory) => [memory.memory_id, memory]));
191
+ const factById = new Map(facts.map((fact) => [fact.id, fact]));
192
+ const entityById = new Map(entities.map((entity) => [entity.id, entity]));
193
+ let memoryEdges = 0;
194
+ for (const memory of memories) {
195
+ // Duplicate ids have no durable relation identity. Keep their nodes countable so graph
196
+ // completeness can be checked, but expose no subject or relation edge for either copy.
197
+ if (duplicateMemoryIds.has(memory.memory_id))
198
+ continue;
199
+ const memoryNode = requiredNode(nodeIds, 'memory', memory.entry_key);
200
+ const subject = entityById.get(memory.subject);
201
+ if (subject) {
202
+ memoryEdges += addEdge({
203
+ from: requiredNode(nodeIds, 'entity', subject.id),
204
+ to: memoryNode,
205
+ relation: 'has_attribute',
206
+ predicate: `memory:${memory.kind}`,
207
+ sourceKind: 'page_line',
208
+ sourcePage: memory.source_page,
209
+ sourceDocument: null,
210
+ sourceEvent: null,
211
+ sourceMemory: memory.entry_key,
212
+ line: memory.payload_line,
213
+ sourceField: 'akno:item',
214
+ sourceHash: memory.payload_hash,
215
+ derivation: 'memory',
216
+ version: 'memory-relations-v1',
217
+ });
218
+ }
219
+ const relations = store.db
220
+ .prepare(`SELECT entry_key, relation, target_kind, target_id, support
221
+ FROM managed_memory_relations WHERE entry_key = ? ORDER BY ordinal`)
222
+ .all(memory.entry_key);
223
+ for (const relation of relations) {
224
+ const target = relation.target_kind === 'memory'
225
+ ? uniqueMemoryById.get(relation.target_id)
226
+ : factById.get(relation.target_id);
227
+ if (!target)
228
+ continue;
229
+ const targetNode = relation.target_kind === 'memory'
230
+ ? requiredNode(nodeIds, 'memory', target.entry_key)
231
+ : requiredNode(nodeIds, 'fact', target.id);
232
+ memoryEdges += addEdge({
233
+ from: memoryNode,
234
+ to: targetNode,
235
+ relation: relation.relation,
236
+ predicate: null,
237
+ sourceKind: 'page_line',
238
+ sourcePage: memory.source_page,
239
+ sourceDocument: null,
240
+ sourceEvent: null,
241
+ sourceFact: relation.target_kind === 'fact' ? target.id : null,
242
+ sourceMemory: memory.entry_key,
243
+ line: memory.payload_line,
244
+ sourceField: 'akno:item.relation',
245
+ sourceHash: relation.support,
246
+ derivation: 'memory',
247
+ version: 'memory-relations-v1',
248
+ });
249
+ }
250
+ }
173
251
  let mentions = 0;
174
252
  let ambiguousMentions = 0;
175
253
  let unresolvedMentions = 0;
@@ -411,6 +489,54 @@ export function rebuildEvidenceGraph(store, options = {}) {
411
489
  validTo: fact.valid_to,
412
490
  });
413
491
  }
492
+ // Observation qualification consumes the fact statuses just rebuilt above. Only the
493
+ // eligible projection enters the graph; its prose never manufactures another fact edge.
494
+ qualifyObservationEntries(store, options.observationMinEvidence);
495
+ const observations = store.db
496
+ .prepare(`SELECT id, source_page, marker_line, subject_entity, payload_hash
497
+ FROM observation_entries WHERE eligible = 1 ORDER BY id`)
498
+ .all();
499
+ for (const observation of observations) {
500
+ addNode('observation', observation.id, observation.payload_hash, OBSERVATION_GRAPH_VERSION);
501
+ addEdge({
502
+ from: requiredNode(nodeIds, 'entity', observation.subject_entity),
503
+ to: requiredNode(nodeIds, 'observation', observation.id),
504
+ relation: 'has_attribute',
505
+ predicate: 'observed_pattern',
506
+ sourceKind: 'page_line',
507
+ sourcePage: observation.source_page,
508
+ sourceDocument: null,
509
+ sourceEvent: null,
510
+ line: observation.marker_line + 1,
511
+ sourceField: 'akno:observation',
512
+ sourceHash: observation.payload_hash,
513
+ derivation: 'fact',
514
+ version: OBSERVATION_GRAPH_VERSION,
515
+ });
516
+ const evidence = store.db
517
+ .prepare(`SELECT oe.fact_id, oe.source_line_hash, f.page_id, f.line_start
518
+ FROM observation_evidence oe JOIN facts f ON f.id = oe.fact_id
519
+ WHERE oe.observation_id = ? ORDER BY oe.ordinal`)
520
+ .all(observation.id);
521
+ for (const locator of evidence) {
522
+ addEdge({
523
+ from: requiredNode(nodeIds, 'observation', observation.id),
524
+ to: requiredNode(nodeIds, 'fact', locator.fact_id),
525
+ relation: 'derived_from',
526
+ predicate: null,
527
+ sourceKind: 'fact_line',
528
+ sourcePage: locator.page_id,
529
+ sourceDocument: null,
530
+ sourceEvent: null,
531
+ sourceFact: locator.fact_id,
532
+ line: locator.line_start,
533
+ sourceField: 'akno:observation.evidence',
534
+ sourceHash: locator.source_line_hash,
535
+ derivation: 'fact',
536
+ version: OBSERVATION_GRAPH_VERSION,
537
+ });
538
+ }
539
+ }
414
540
  for (const document of documents) {
415
541
  if (!document.page_id)
416
542
  continue;
@@ -472,6 +598,8 @@ export function rebuildEvidenceGraph(store, options = {}) {
472
598
  facts: facts.length,
473
599
  factEdges,
474
600
  nonTraversableFacts,
601
+ memories: memories.length,
602
+ memoryEdges,
475
603
  };
476
604
  });
477
605
  }
@@ -1 +1 @@
1
- {"version":3,"file":"graph.js","sourceRoot":"","sources":["../../src/index/graph.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"graph.js","sourceRoot":"","sources":["../../src/index/graph.ts"],"names":[],"mappings":"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"}
@@ -63,6 +63,11 @@ export interface IndexReport {
63
63
  eventsIndexed: number;
64
64
  temporalEntriesIndexed: number;
65
65
  temporalProjectionIssues: number;
66
+ observationsIndexed: number;
67
+ observationProjectionIssues: number;
68
+ managedMemoriesIndexed: number;
69
+ managedMemoryRelationsIndexed: number;
70
+ managedMemoryProjectionIssues: number;
66
71
  factsDerived: number;
67
72
  graphNodes: number;
68
73
  graphEdges: number;
@@ -78,6 +83,8 @@ export interface IndexReport {
78
83
  graphFacts: number;
79
84
  graphFactEdges: number;
80
85
  graphNonTraversableFacts: number;
86
+ graphMemories: number;
87
+ graphMemoryEdges: number;
81
88
  ignored: number;
82
89
  /** Non-fatal problems worth reporting rather than throwing. `doctor` prints these. */
83
90
  warnings: string[];
@@ -119,6 +126,8 @@ export declare class Indexer {
119
126
  */
120
127
  private reclassify;
121
128
  private temporalProjectionPaths;
129
+ private observationProjectionPaths;
130
+ private managedMemoryProjectionPaths;
122
131
  /**
123
132
  * Page files the index has a record of and no page for.
124
133
  *
@@ -1 +1 @@
1
- {"version":3,"file":"indexer.d.ts","sourceRoot":"","sources":["../../src/index/indexer.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"indexer.d.ts","sourceRoot":"","sources":["../../src/index/indexer.ts"],"names":[],"mappings":"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"}
@@ -18,6 +18,8 @@ import { rebuildEvidenceGraph } from "./graph.js";
18
18
  import { resolveContextualEntityMentions } from "./entity-resolution.js";
19
19
  import { IndexRevisionCoordinator } from "./revision-barrier.js";
20
20
  import { replaceTemporalEntries, TEMPORAL_PROJECTION_VERSION } from "../timeline/projection.js";
21
+ import { OBSERVATION_PROJECTION_VERSION, qualifyObservationEntries, replaceObservationEntries, } from "../observations/projection.js";
22
+ import { MANAGED_MEMORY_PROJECTION_VERSION, replaceManagedMemoryEntries } from "../memory/projection.js";
21
23
  /**
22
24
  * Reconciles the index against the knowledge base. Both directions are
23
25
  * first class: the user restructures everything on a Sunday afternoon and this
@@ -87,6 +89,11 @@ export class Indexer {
87
89
  eventsIndexed: 0,
88
90
  temporalEntriesIndexed: 0,
89
91
  temporalProjectionIssues: 0,
92
+ observationsIndexed: 0,
93
+ observationProjectionIssues: 0,
94
+ managedMemoriesIndexed: 0,
95
+ managedMemoryRelationsIndexed: 0,
96
+ managedMemoryProjectionIssues: 0,
90
97
  factsDerived: 0,
91
98
  graphNodes: 0,
92
99
  graphEdges: 0,
@@ -102,6 +109,8 @@ export class Indexer {
102
109
  graphFacts: 0,
103
110
  graphFactEdges: 0,
104
111
  graphNonTraversableFacts: 0,
112
+ graphMemories: 0,
113
+ graphMemoryEdges: 0,
105
114
  ignored: 0,
106
115
  warnings: [],
107
116
  durationMs: 0,
@@ -130,6 +139,23 @@ export class Indexer {
130
139
  for (const relPath of temporalProjectionPaths)
131
140
  reclassified.add(relPath);
132
141
  }
142
+ const observationProjectionStale = !options.only && this.#store.meta('observation_projection_version') !== OBSERVATION_PROJECTION_VERSION;
143
+ const observationProjectionPaths = observationProjectionStale
144
+ ? this.observationProjectionPaths(report)
145
+ : [];
146
+ if (observationProjectionStale) {
147
+ for (const relPath of observationProjectionPaths)
148
+ reclassified.add(relPath);
149
+ }
150
+ const managedMemoryProjectionStale = !options.only &&
151
+ this.#store.meta('managed_memory_projection_version') !== MANAGED_MEMORY_PROJECTION_VERSION;
152
+ const managedMemoryProjectionPaths = managedMemoryProjectionStale
153
+ ? this.managedMemoryProjectionPaths(report)
154
+ : [];
155
+ if (managedMemoryProjectionStale) {
156
+ for (const relPath of managedMemoryProjectionPaths)
157
+ reclassified.add(relPath);
158
+ }
133
159
  if (!options.only)
134
160
  for (const relPath of this.pageFilesWithNoPage(report))
135
161
  reclassified.add(relPath);
@@ -264,6 +290,7 @@ export class Indexer {
264
290
  let graph = rebuildEvidenceGraph(this.#store, {
265
291
  conflictModelId: this.#models.derive.modelId,
266
292
  contextualModelId,
293
+ observationMinEvidence: this.#config.maintenance.observe.minEvidence,
267
294
  });
268
295
  if (!options.structuralOnly && this.#config.graph.contextualResolution.enabled) {
269
296
  const contextual = await resolveContextualEntityMentions(this.#store, this.#models.derive, {
@@ -284,6 +311,7 @@ export class Indexer {
284
311
  graph = rebuildEvidenceGraph(this.#store, {
285
312
  conflictModelId: this.#models.derive.modelId,
286
313
  contextualModelId,
314
+ observationMinEvidence: this.#config.maintenance.observe.minEvidence,
287
315
  });
288
316
  }
289
317
  }
@@ -297,11 +325,24 @@ export class Indexer {
297
325
  report.graphFacts = graph.facts;
298
326
  report.graphFactEdges = graph.factEdges;
299
327
  report.graphNonTraversableFacts = graph.nonTraversableFacts;
328
+ report.graphMemories = graph.memories;
329
+ report.graphMemoryEdges = graph.memoryEdges;
330
+ const observations = qualifyObservationEntries(this.#store, this.#config.maintenance.observe.minEvidence);
331
+ report.observationsIndexed = observations.indexed;
332
+ report.observationProjectionIssues += observations.issues;
300
333
  progress({ phase: 'graph', done: 1, total: 1 });
301
334
  const projectionUpgradeComplete = temporalProjectionPaths.every((relPath) => !present.has(relPath) || projectedPaths.has(relPath));
302
335
  if (temporalProjectionStale && !pageProjectionFailed && projectionUpgradeComplete) {
303
336
  this.#store.setMeta('temporal_projection_version', TEMPORAL_PROJECTION_VERSION);
304
337
  }
338
+ const observationUpgradeComplete = observationProjectionPaths.every((relPath) => !present.has(relPath) || projectedPaths.has(relPath));
339
+ if (observationProjectionStale && !pageProjectionFailed && observationUpgradeComplete) {
340
+ this.#store.setMeta('observation_projection_version', OBSERVATION_PROJECTION_VERSION);
341
+ }
342
+ const managedMemoryUpgradeComplete = managedMemoryProjectionPaths.every((relPath) => !present.has(relPath) || projectedPaths.has(relPath));
343
+ if (managedMemoryProjectionStale && !pageProjectionFailed && managedMemoryUpgradeComplete) {
344
+ this.#store.setMeta('managed_memory_projection_version', MANAGED_MEMORY_PROJECTION_VERSION);
345
+ }
305
346
  report.durationMs = performance.now() - started;
306
347
  progress({ phase: 'done', done: 1, total: 1 });
307
348
  return report;
@@ -356,6 +397,20 @@ export class Indexer {
356
397
  }
357
398
  return rows.map((row) => row.rel_path);
358
399
  }
400
+ observationProjectionPaths(report) {
401
+ const rows = this.#store.db.prepare("SELECT rel_path FROM files WHERE kind = 'page'").all();
402
+ if (rows.length > 0) {
403
+ report.warnings.push(`the observation projection changed: ${rows.length} page${rows.length === 1 ? '' : 's'} will be re-indexed`);
404
+ }
405
+ return rows.map((row) => row.rel_path);
406
+ }
407
+ managedMemoryProjectionPaths(report) {
408
+ const rows = this.#store.db.prepare("SELECT rel_path FROM files WHERE kind = 'page'").all();
409
+ if (rows.length > 0) {
410
+ report.warnings.push(`the retained-memory projection changed: ${rows.length} page${rows.length === 1 ? '' : 's'} will be re-indexed`);
411
+ }
412
+ return rows.map((row) => row.rel_path);
413
+ }
359
414
  /**
360
415
  * Page files the index has a record of and no page for.
361
416
  *
@@ -530,6 +585,13 @@ export class Indexer {
530
585
  const temporal = replaceTemporalEntries(this.#store, pageId, page, resolved.role);
531
586
  report.temporalEntriesIndexed += temporal.indexed;
532
587
  report.temporalProjectionIssues += temporal.issues;
588
+ const observations = replaceObservationEntries(this.#store, pageId, page);
589
+ report.observationsIndexed += observations.indexed;
590
+ report.observationProjectionIssues += observations.issues;
591
+ const managedMemories = replaceManagedMemoryEntries(this.#store, pageId, page, resolved.role);
592
+ report.managedMemoriesIndexed += managedMemories.indexed;
593
+ report.managedMemoryRelationsIndexed += managedMemories.relations;
594
+ report.managedMemoryProjectionIssues += managedMemories.issues;
533
595
  this.replaceLinks(pageId, page);
534
596
  this.recordFile(file, pageId);
535
597
  });
@@ -599,21 +661,22 @@ export class Indexer {
599
661
  const existing = this.#store.db.prepare('SELECT created_at FROM pages WHERE id = ?').get(pageId);
600
662
  this.#store.db
601
663
  .prepare(`INSERT INTO pages(
602
- id, slug, rel_path, title, type, tags, role, remember_management, dream_management,
664
+ id, slug, rel_path, title, type, tags, role, remember_management, observe_management, dream_management,
603
665
  about, aliases, frontmatter, body_hash, source_fence_line, body_line, line_count,
604
666
  bytes, created_at, updated_at, indexed_at
605
- ) VALUES(?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?)
667
+ ) VALUES(?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?)
606
668
  ON CONFLICT(id) DO UPDATE SET
607
669
  slug = excluded.slug, rel_path = excluded.rel_path, title = excluded.title,
608
670
  type = excluded.type, tags = excluded.tags, role = excluded.role,
609
671
  remember_management = excluded.remember_management,
672
+ observe_management = excluded.observe_management,
610
673
  dream_management = excluded.dream_management,
611
674
  about = excluded.about, aliases = excluded.aliases,
612
675
  frontmatter = excluded.frontmatter, body_hash = excluded.body_hash,
613
676
  source_fence_line = excluded.source_fence_line, body_line = excluded.body_line,
614
677
  line_count = excluded.line_count, bytes = excluded.bytes,
615
678
  updated_at = excluded.updated_at, indexed_at = excluded.indexed_at`)
616
- .run(pageId, page.slug, file.relPath, page.title, page.type, JSON.stringify(page.tags), policy.role, policy.remember, policy.dream, JSON.stringify(policy.about), JSON.stringify(page.aliases), JSON.stringify(page.frontmatter.data), page.bodyHash, page.sourceFenceLine, page.bodyLine, page.lines.length, file.size, existing?.created_at ?? nowIso(), mtimeIso(file.mtimeNs), nowIso());
679
+ .run(pageId, page.slug, file.relPath, page.title, page.type, JSON.stringify(page.tags), policy.role, policy.remember, policy.observe, policy.dream, JSON.stringify(policy.about), JSON.stringify(page.aliases), JSON.stringify(page.frontmatter.data), page.bodyHash, page.sourceFenceLine, page.bodyLine, page.lines.length, file.size, existing?.created_at ?? nowIso(), mtimeIso(file.mtimeNs), nowIso());
617
680
  }
618
681
  replaceChunks(pageId, chunks) {
619
682
  // Only the page's *body* chunks. Its documents' chunks come from the files beside it,