memo-grafter 0.2.2 → 0.2.4

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 (78) hide show
  1. package/README.md +81 -73
  2. package/USER_GUIDE.md +306 -73
  3. package/dist/MemoGrafterAgent.d.ts +7 -3
  4. package/dist/MemoGrafterAgent.d.ts.map +1 -1
  5. package/dist/MemoGrafterAgent.js +64 -23
  6. package/dist/MemoGrafterAgent.js.map +1 -1
  7. package/dist/crawler/ConflictDetectionPass.d.ts +6 -0
  8. package/dist/crawler/ConflictDetectionPass.d.ts.map +1 -0
  9. package/dist/crawler/ConflictDetectionPass.js +46 -0
  10. package/dist/crawler/ConflictDetectionPass.js.map +1 -0
  11. package/dist/crawler/DecayScoringPass.d.ts +17 -0
  12. package/dist/crawler/DecayScoringPass.d.ts.map +1 -0
  13. package/dist/crawler/DecayScoringPass.js +73 -0
  14. package/dist/crawler/DecayScoringPass.js.map +1 -0
  15. package/dist/crawler/MemoGrafterCrawler.d.ts +14 -0
  16. package/dist/crawler/MemoGrafterCrawler.d.ts.map +1 -0
  17. package/dist/crawler/MemoGrafterCrawler.js +108 -0
  18. package/dist/crawler/MemoGrafterCrawler.js.map +1 -0
  19. package/dist/crawler/VersioningPass.d.ts +6 -0
  20. package/dist/crawler/VersioningPass.d.ts.map +1 -0
  21. package/dist/crawler/VersioningPass.js +43 -0
  22. package/dist/crawler/VersioningPass.js.map +1 -0
  23. package/dist/crawler/decayScoring.d.ts +7 -0
  24. package/dist/crawler/decayScoring.d.ts.map +1 -0
  25. package/dist/crawler/decayScoring.js +9 -0
  26. package/dist/crawler/decayScoring.js.map +1 -0
  27. package/dist/crawler/index.d.ts +7 -0
  28. package/dist/crawler/index.d.ts.map +1 -0
  29. package/dist/crawler/index.js +5 -0
  30. package/dist/crawler/index.js.map +1 -0
  31. package/dist/crawler/memoryMaintenance.d.ts +14 -0
  32. package/dist/crawler/memoryMaintenance.d.ts.map +1 -0
  33. package/dist/crawler/memoryMaintenance.js +40 -0
  34. package/dist/crawler/memoryMaintenance.js.map +1 -0
  35. package/dist/crawler/types.d.ts +63 -0
  36. package/dist/crawler/types.d.ts.map +1 -0
  37. package/dist/crawler/types.js +2 -0
  38. package/dist/crawler/types.js.map +1 -0
  39. package/dist/index.d.ts +3 -1
  40. package/dist/index.d.ts.map +1 -1
  41. package/dist/index.js +1 -0
  42. package/dist/index.js.map +1 -1
  43. package/dist/pipeline/GrafterPipeline.d.ts.map +1 -1
  44. package/dist/pipeline/GrafterPipeline.js +42 -1
  45. package/dist/pipeline/GrafterPipeline.js.map +1 -1
  46. package/dist/pipeline/IngestPipeline.d.ts +2 -0
  47. package/dist/pipeline/IngestPipeline.d.ts.map +1 -1
  48. package/dist/pipeline/IngestPipeline.js +93 -17
  49. package/dist/pipeline/IngestPipeline.js.map +1 -1
  50. package/dist/prompts/memoryInjectionPrompt.d.ts +6 -2
  51. package/dist/prompts/memoryInjectionPrompt.d.ts.map +1 -1
  52. package/dist/prompts/memoryInjectionPrompt.js +25 -2
  53. package/dist/prompts/memoryInjectionPrompt.js.map +1 -1
  54. package/dist/store/GraphStore.d.ts +20 -1
  55. package/dist/store/GraphStore.d.ts.map +1 -1
  56. package/dist/store/postgres-pgvector/GraphStore.d.ts +25 -1
  57. package/dist/store/postgres-pgvector/GraphStore.d.ts.map +1 -1
  58. package/dist/store/postgres-pgvector/GraphStore.js +334 -1
  59. package/dist/store/postgres-pgvector/GraphStore.js.map +1 -1
  60. package/dist/types.d.ts +29 -0
  61. package/dist/types.d.ts.map +1 -1
  62. package/dist/utils/drift/cosineSimilarity.test.d.ts +2 -0
  63. package/dist/utils/drift/cosineSimilarity.test.d.ts.map +1 -0
  64. package/dist/utils/drift/cosineSimilarity.test.js +25 -0
  65. package/dist/utils/drift/cosineSimilarity.test.js.map +1 -0
  66. package/dist/utils/drift/vectorAvg.test.d.ts +2 -0
  67. package/dist/utils/drift/vectorAvg.test.d.ts.map +1 -0
  68. package/dist/utils/drift/vectorAvg.test.js +36 -0
  69. package/dist/utils/drift/vectorAvg.test.js.map +1 -0
  70. package/dist/utils/text/normalizeText.test.d.ts +2 -0
  71. package/dist/utils/text/normalizeText.test.d.ts.map +1 -0
  72. package/dist/utils/text/normalizeText.test.js +23 -0
  73. package/dist/utils/text/normalizeText.test.js.map +1 -0
  74. package/dist/utils/vector/vectorLiteral.test.d.ts +2 -0
  75. package/dist/utils/vector/vectorLiteral.test.d.ts.map +1 -0
  76. package/dist/utils/vector/vectorLiteral.test.js +28 -0
  77. package/dist/utils/vector/vectorLiteral.test.js.map +1 -0
  78. package/package.json +1 -1
@@ -1,5 +1,5 @@
1
1
  import type { FleetAgentRecord, GraphStore } from "../GraphStore.js";
2
- import type { MemoryNode, MemoryNodeInsert, Message, TopicEdge, TopicNode, TopicSegment } from "../../types.js";
2
+ import type { GraftRegistryEntry, MemoryEdge, MemoryNode, MemoryNodeInsert, Message, SessionIngestState, TopicEdge, TopicNode, TopicSegment } from "../../types.js";
3
3
  interface AbsorbOptions {
4
4
  agentColor?: string | null;
5
5
  fleetId?: string | null;
@@ -11,6 +11,10 @@ export declare class PostgresGraphStore implements GraphStore {
11
11
  initialize(): Promise<void>;
12
12
  saveMessages(sessionId: string, messages: Message[]): Promise<void>;
13
13
  saveMessagesAt(sessionId: string, startIndex: number, messages: Message[]): Promise<void>;
14
+ getMessagesBySession(sessionId: string, startIndex?: number, endIndex?: number): Promise<Message[]>;
15
+ getRecentMessagesBefore(sessionId: string, beforeIndex: number, limit: number): Promise<Message[]>;
16
+ getSessionIngestState(sessionId: string): Promise<SessionIngestState | null>;
17
+ updateSessionIngestState(sessionId: string, lastIngestedMessageIndex: number): Promise<void>;
14
18
  saveSegment(segment: TopicSegment): Promise<TopicSegment>;
15
19
  saveNode(node: TopicNode): Promise<void>;
16
20
  saveEdge(edge: TopicEdge): Promise<void>;
@@ -18,14 +22,26 @@ export declare class PostgresGraphStore implements GraphStore {
18
22
  getEdgesBySession(sessionId: string): Promise<TopicEdge[]>;
19
23
  clearSession(sessionId: string): Promise<void>;
20
24
  clearSessionGraph(sessionId: string): Promise<void>;
25
+ deleteNode(nodeId: string, sessionId?: string): Promise<void>;
21
26
  getTopicNode(topicNodeId: string, sessionId?: string): Promise<TopicNode | null>;
22
27
  getNodeBySegment(segmentId: string): Promise<TopicNode | null>;
28
+ getSessionNodeCount(sessionId: string): Promise<number>;
23
29
  getNodesBySession(sessionId: string): Promise<TopicNode[]>;
30
+ getLastTopicNode(sessionId: string): Promise<TopicNode | null>;
24
31
  getSegmentsBySession(sessionId: string): Promise<TopicSegment[]>;
25
32
  insertMemories(nodes: MemoryNodeInsert[]): Promise<void>;
26
33
  getMemoriesBySegment(segmentId: string): Promise<MemoryNode[]>;
27
34
  getMemoriesByTopic(topicNodeId: string): Promise<MemoryNode[]>;
28
35
  getMemoriesBySession(sessionId: string): Promise<MemoryNode[]>;
36
+ getMemoryEdgesBySession(sessionId: string): Promise<MemoryEdge[]>;
37
+ listMemoryNodesForMaintenance(): Promise<MemoryNode[]>;
38
+ markMemoryNodesConflicting(memoryNodeIds: string[]): Promise<number>;
39
+ markMemoryNodeSuperseded(memoryNodeId: string, supersededBy: string): Promise<boolean>;
40
+ markMemoryNodeDecayed(memoryNodeId: string): Promise<boolean>;
41
+ updateMemoryNodeConfidence(memoryNodeId: string, confidence: number): Promise<boolean>;
42
+ upsertMemoryEdge(edge: Pick<MemoryEdge, "sourceId" | "targetId" | "edgeType"> & {
43
+ weight?: number;
44
+ }): Promise<boolean>;
29
45
  searchMemories(embedding: number[], sessionId: string, limit: number, minSimilarity: number): Promise<(MemoryNode & {
30
46
  similarity: number;
31
47
  })[]>;
@@ -60,7 +76,12 @@ export declare class PostgresGraphStore implements GraphStore {
60
76
  nodeSimilarity(nodeAId: string, nodeBId: string): Promise<number>;
61
77
  getNeighbours(nodeIds: string[], hopDepth: number, sessionId?: string): Promise<TopicNode[]>;
62
78
  getBufferMessages(sessionId: string, start: number, end: number, maxChars?: number): Promise<Message[]>;
79
+ insertGraftRegistry(entry: Omit<GraftRegistryEntry, "id" | "graftedAt">): Promise<GraftRegistryEntry>;
80
+ getGraftRegistry(sessionId: string): Promise<GraftRegistryEntry[]>;
81
+ deleteGraftRegistry(nodeId: string): Promise<void>;
63
82
  absorbNodes(nodes: TopicNode[], targetSessionId: string, options?: AbsorbOptions): Promise<TopicNode[]>;
83
+ private copyActiveMemoriesForAbsorbedNode;
84
+ private deleteEdgesByNodeIds;
64
85
  rebuildEdgesForSession(sessionId: string, semanticTopK?: number, semanticThreshold?: number): Promise<void>;
65
86
  close(): Promise<void>;
66
87
  private migrateExistingNodeTable;
@@ -71,6 +92,9 @@ export declare class PostgresGraphStore implements GraphStore {
71
92
  private formatGraftedMemoryMessage;
72
93
  private rowToNode;
73
94
  private rowToMemoryNode;
95
+ private rowToMemoryEdge;
96
+ private rowToSessionIngestState;
97
+ private rowToGraftRegistryEntry;
74
98
  private rowToSegment;
75
99
  }
76
100
  export {};
@@ -1 +1 @@
1
- {"version":3,"file":"GraphStore.d.ts","sourceRoot":"","sources":["../../../src/store/postgres-pgvector/GraphStore.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"GraphStore.d.ts","sourceRoot":"","sources":["../../../src/store/postgres-pgvector/GraphStore.ts"],"names":[],"mappings":"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"}
@@ -80,10 +80,15 @@ export class PostgresGraphStore {
80
80
  source_title TEXT,
81
81
  superseded_by UUID REFERENCES mg_memory_nodes(id),
82
82
  decayed BOOLEAN NOT NULL DEFAULT FALSE,
83
+ has_conflict BOOLEAN NOT NULL DEFAULT FALSE,
83
84
  agent_color TEXT,
84
85
  fleet_id TEXT,
85
86
  created_at TIMESTAMPTZ NOT NULL DEFAULT NOW()
86
87
  )
88
+ `;
89
+ await this.sql `
90
+ ALTER TABLE mg_memory_nodes
91
+ ADD COLUMN IF NOT EXISTS has_conflict BOOLEAN NOT NULL DEFAULT FALSE
87
92
  `;
88
93
  await this.sql `
89
94
  CREATE TABLE IF NOT EXISTS mg_memory_edges (
@@ -111,6 +116,23 @@ export class PostgresGraphStore {
111
116
  created_at TIMESTAMPTZ DEFAULT NOW(),
112
117
  UNIQUE (fleet_id, agent_color)
113
118
  )
119
+ `;
120
+ await this.sql `
121
+ CREATE TABLE IF NOT EXISTS mg_session_ingest_state (
122
+ session_id TEXT PRIMARY KEY,
123
+ last_ingested_message_index INT NOT NULL DEFAULT -1,
124
+ updated_at TIMESTAMPTZ NOT NULL DEFAULT NOW()
125
+ )
126
+ `;
127
+ await this.sql `
128
+ CREATE TABLE IF NOT EXISTS mg_graft_registry (
129
+ id UUID PRIMARY KEY DEFAULT gen_random_uuid(),
130
+ session_id TEXT NOT NULL,
131
+ node_id TEXT NOT NULL REFERENCES mg_topic_nodes(id) ON DELETE CASCADE,
132
+ source_session_id TEXT NOT NULL,
133
+ source_node_id TEXT NOT NULL,
134
+ grafted_at TIMESTAMPTZ NOT NULL DEFAULT NOW()
135
+ )
114
136
  `;
115
137
  await this.migrateExistingNodeTable();
116
138
  await this.createIndexes();
@@ -128,6 +150,54 @@ export class PostgresGraphStore {
128
150
  `;
129
151
  }
130
152
  }
153
+ async getMessagesBySession(sessionId, startIndex, endIndex) {
154
+ const rows = await this.sql `
155
+ SELECT * FROM mg_message_buffer
156
+ WHERE session_id = ${sessionId}
157
+ ${startIndex === undefined ? this.sql `` : this.sql `AND message_index >= ${startIndex}`}
158
+ ${endIndex === undefined ? this.sql `` : this.sql `AND message_index <= ${endIndex}`}
159
+ ORDER BY message_index ASC
160
+ `;
161
+ return rows.map((row) => ({
162
+ role: row.role,
163
+ content: row.content,
164
+ }));
165
+ }
166
+ async getRecentMessagesBefore(sessionId, beforeIndex, limit) {
167
+ if (limit <= 0)
168
+ return [];
169
+ const rows = await this.sql `
170
+ SELECT * FROM mg_message_buffer
171
+ WHERE session_id = ${sessionId}
172
+ AND message_index < ${beforeIndex}
173
+ ORDER BY message_index DESC
174
+ LIMIT ${limit}
175
+ `;
176
+ return rows
177
+ .reverse()
178
+ .map((row) => ({
179
+ role: row.role,
180
+ content: row.content,
181
+ }));
182
+ }
183
+ async getSessionIngestState(sessionId) {
184
+ const rows = await this.sql `
185
+ SELECT * FROM mg_session_ingest_state
186
+ WHERE session_id = ${sessionId}
187
+ LIMIT 1
188
+ `;
189
+ return rows[0] ? this.rowToSessionIngestState(rows[0]) : null;
190
+ }
191
+ async updateSessionIngestState(sessionId, lastIngestedMessageIndex) {
192
+ await this.sql `
193
+ INSERT INTO mg_session_ingest_state (session_id, last_ingested_message_index, updated_at)
194
+ VALUES (${sessionId}, ${lastIngestedMessageIndex}, NOW())
195
+ ON CONFLICT (session_id)
196
+ DO UPDATE SET
197
+ last_ingested_message_index = EXCLUDED.last_ingested_message_index,
198
+ updated_at = EXCLUDED.updated_at
199
+ `;
200
+ }
131
201
  async saveSegment(segment) {
132
202
  const rows = await this.sql `
133
203
  INSERT INTO mg_segments (id, session_id, start_index, end_index, topic_order, drift_score, created_at)
@@ -257,11 +327,27 @@ export class PostgresGraphStore {
257
327
  await this.sql `
258
328
  DELETE FROM mg_segments
259
329
  WHERE session_id = ${sessionId}
330
+ `;
331
+ await this.sql `
332
+ DELETE FROM mg_message_buffer
333
+ WHERE session_id = ${sessionId}
334
+ `;
335
+ await this.sql `
336
+ DELETE FROM mg_session_ingest_state
337
+ WHERE session_id = ${sessionId}
260
338
  `;
261
339
  }
262
340
  async clearSessionGraph(sessionId) {
263
341
  await this.clearSession(sessionId);
264
342
  }
343
+ async deleteNode(nodeId, sessionId) {
344
+ await this.deleteEdgesByNodeIds([nodeId]);
345
+ await this.sql `
346
+ DELETE FROM mg_topic_nodes
347
+ WHERE id = ${nodeId}
348
+ ${sessionId ? this.sql `AND session_id = ${sessionId}` : this.sql ``}
349
+ `;
350
+ }
265
351
  async getTopicNode(topicNodeId, sessionId) {
266
352
  const rows = await this.sql `
267
353
  SELECT * FROM mg_topic_nodes
@@ -279,6 +365,14 @@ export class PostgresGraphStore {
279
365
  `;
280
366
  return rows[0] ? this.rowToNode(rows[0]) : null;
281
367
  }
368
+ async getSessionNodeCount(sessionId) {
369
+ const rows = await this.sql `
370
+ SELECT COUNT(*)::int AS count
371
+ FROM mg_topic_nodes
372
+ WHERE session_id = ${sessionId}
373
+ `;
374
+ return rows[0]?.count ?? 0;
375
+ }
282
376
  async getNodesBySession(sessionId) {
283
377
  const rows = await this.sql `
284
378
  SELECT * FROM mg_topic_nodes
@@ -287,6 +381,15 @@ export class PostgresGraphStore {
287
381
  `;
288
382
  return rows.map((row) => this.rowToNode(row));
289
383
  }
384
+ async getLastTopicNode(sessionId) {
385
+ const rows = await this.sql `
386
+ SELECT * FROM mg_topic_nodes
387
+ WHERE session_id = ${sessionId}
388
+ ORDER BY topic_order DESC, created_at DESC
389
+ LIMIT 1
390
+ `;
391
+ return rows[0] ? this.rowToNode(rows[0]) : null;
392
+ }
290
393
  async getSegmentsBySession(sessionId) {
291
394
  const rows = await this.sql `
292
395
  SELECT * FROM mg_segments
@@ -315,11 +418,12 @@ export class PostgresGraphStore {
315
418
  source_title: node.sourceTitle,
316
419
  superseded_by: node.supersededBy,
317
420
  decayed: node.decayed,
421
+ has_conflict: node.hasConflict ?? false,
318
422
  agent_color: node.agentColor,
319
423
  fleet_id: node.fleetId,
320
424
  }));
321
425
  await this.sql `
322
- INSERT INTO mg_memory_nodes ${this.sql(rows, "id", "segment_id", "topic_node_id", "agent_id", "session_id", "memory_type", "source_type", "subject", "predicate", "value", "confidence", "embedding", "source_url", "source_title", "superseded_by", "decayed", "agent_color", "fleet_id")}
426
+ INSERT INTO mg_memory_nodes ${this.sql(rows, "id", "segment_id", "topic_node_id", "agent_id", "session_id", "memory_type", "source_type", "subject", "predicate", "value", "confidence", "embedding", "source_url", "source_title", "superseded_by", "decayed", "has_conflict", "agent_color", "fleet_id")}
323
427
  `;
324
428
  }
325
429
  async getMemoriesBySegment(segmentId) {
@@ -348,6 +452,93 @@ export class PostgresGraphStore {
348
452
  `;
349
453
  return rows.map((row) => this.rowToMemoryNode(row));
350
454
  }
455
+ async getMemoryEdgesBySession(sessionId) {
456
+ const rows = await this.sql `
457
+ SELECT DISTINCT edge.*
458
+ FROM mg_memory_edges edge
459
+ JOIN mg_memory_nodes source ON source.id = edge.source_id
460
+ JOIN mg_memory_nodes target ON target.id = edge.target_id
461
+ WHERE source.session_id = ${sessionId}
462
+ OR target.session_id = ${sessionId}
463
+ ORDER BY edge.created_at ASC
464
+ `;
465
+ return rows.map((row) => this.rowToMemoryEdge(row));
466
+ }
467
+ async listMemoryNodesForMaintenance() {
468
+ const rows = await this.sql `
469
+ SELECT * FROM mg_memory_nodes
470
+ ORDER BY session_id ASC, created_at ASC, id ASC
471
+ `;
472
+ return rows.map((row) => this.rowToMemoryNode(row));
473
+ }
474
+ async markMemoryNodesConflicting(memoryNodeIds) {
475
+ if (memoryNodeIds.length === 0)
476
+ return 0;
477
+ const rows = await this.sql `
478
+ UPDATE mg_memory_nodes
479
+ SET has_conflict = TRUE
480
+ WHERE id = ANY(${this.sql.array(memoryNodeIds)}::uuid[])
481
+ AND has_conflict = FALSE
482
+ RETURNING id
483
+ `;
484
+ return rows.length;
485
+ }
486
+ async markMemoryNodeSuperseded(memoryNodeId, supersededBy) {
487
+ const rows = await this.sql `
488
+ UPDATE mg_memory_nodes
489
+ SET superseded_by = ${supersededBy}::uuid
490
+ WHERE id = ${memoryNodeId}::uuid
491
+ AND superseded_by IS NULL
492
+ RETURNING id
493
+ `;
494
+ return rows.length > 0;
495
+ }
496
+ async markMemoryNodeDecayed(memoryNodeId) {
497
+ const rows = await this.sql `
498
+ UPDATE mg_memory_nodes
499
+ SET decayed = TRUE
500
+ WHERE id = ${memoryNodeId}::uuid
501
+ AND decayed = FALSE
502
+ AND superseded_by IS NULL
503
+ RETURNING id
504
+ `;
505
+ return rows.length > 0;
506
+ }
507
+ async updateMemoryNodeConfidence(memoryNodeId, confidence) {
508
+ const rows = await this.sql `
509
+ UPDATE mg_memory_nodes
510
+ SET confidence = ${confidence}
511
+ WHERE id = ${memoryNodeId}::uuid
512
+ RETURNING id
513
+ `;
514
+ return rows.length > 0;
515
+ }
516
+ async upsertMemoryEdge(edge) {
517
+ const existing = edge.edgeType === "updates"
518
+ ? await this.sql `
519
+ SELECT id FROM mg_memory_edges
520
+ WHERE source_id = ${edge.sourceId}::uuid
521
+ AND target_id = ${edge.targetId}::uuid
522
+ AND edge_type = ${edge.edgeType}
523
+ LIMIT 1
524
+ `
525
+ : await this.sql `
526
+ SELECT id FROM mg_memory_edges
527
+ WHERE edge_type = ${edge.edgeType}
528
+ AND (
529
+ (source_id = ${edge.sourceId}::uuid AND target_id = ${edge.targetId}::uuid)
530
+ OR (source_id = ${edge.targetId}::uuid AND target_id = ${edge.sourceId}::uuid)
531
+ )
532
+ LIMIT 1
533
+ `;
534
+ if (existing.length > 0)
535
+ return false;
536
+ await this.sql `
537
+ INSERT INTO mg_memory_edges (source_id, target_id, edge_type, weight)
538
+ VALUES (${edge.sourceId}::uuid, ${edge.targetId}::uuid, ${edge.edgeType}, ${edge.weight ?? 1})
539
+ `;
540
+ return true;
541
+ }
351
542
  async searchMemories(embedding, sessionId, limit, minSimilarity) {
352
543
  const rows = await this.sql `
353
544
  SELECT *, 1 - (embedding <=> ${toVectorLiteral(embedding)}::vector) AS similarity
@@ -545,6 +736,43 @@ export class PostgresGraphStore {
545
736
  content: row.role === "assistant" ? this.cleanAssistantMessage(row.content, maxChars) : row.content,
546
737
  }));
547
738
  }
739
+ async insertGraftRegistry(entry) {
740
+ const rows = await this.sql `
741
+ INSERT INTO mg_graft_registry (
742
+ session_id,
743
+ node_id,
744
+ source_session_id,
745
+ source_node_id
746
+ )
747
+ VALUES (
748
+ ${entry.sessionId},
749
+ ${entry.nodeId},
750
+ ${entry.sourceSessionId},
751
+ ${entry.sourceNodeId}
752
+ )
753
+ ON CONFLICT (node_id)
754
+ DO UPDATE SET
755
+ session_id = EXCLUDED.session_id,
756
+ source_session_id = EXCLUDED.source_session_id,
757
+ source_node_id = EXCLUDED.source_node_id
758
+ RETURNING *
759
+ `;
760
+ return this.rowToGraftRegistryEntry(rows[0]);
761
+ }
762
+ async getGraftRegistry(sessionId) {
763
+ const rows = await this.sql `
764
+ SELECT * FROM mg_graft_registry
765
+ WHERE session_id = ${sessionId}
766
+ ORDER BY grafted_at ASC
767
+ `;
768
+ return rows.map((row) => this.rowToGraftRegistryEntry(row));
769
+ }
770
+ async deleteGraftRegistry(nodeId) {
771
+ await this.sql `
772
+ DELETE FROM mg_graft_registry
773
+ WHERE node_id = ${nodeId}
774
+ `;
775
+ }
548
776
  async absorbNodes(nodes, targetSessionId, options = {}) {
549
777
  const copiedNodes = [];
550
778
  const nextMessageIndex = await this.getNextMessageIndex(targetSessionId);
@@ -578,16 +806,78 @@ export class PostgresGraphStore {
578
806
  createdAt: new Date(),
579
807
  };
580
808
  await this.saveNode(copy);
809
+ await this.copyActiveMemoriesForAbsorbedNode(node, copy, targetSessionId);
581
810
  await this.saveEdge({
582
811
  srcId: copy.id,
583
812
  dstId: node.id,
584
813
  weight: 1,
585
814
  type: "grafted",
586
815
  });
816
+ await this.insertGraftRegistry({
817
+ sessionId: targetSessionId,
818
+ nodeId: copy.id,
819
+ sourceSessionId: node.sessionId,
820
+ sourceNodeId: node.id,
821
+ });
587
822
  copiedNodes.push(copy);
588
823
  }
589
824
  return copiedNodes;
590
825
  }
826
+ async copyActiveMemoriesForAbsorbedNode(sourceNode, copiedNode, targetSessionId) {
827
+ await this.sql `
828
+ INSERT INTO mg_memory_nodes (
829
+ segment_id,
830
+ topic_node_id,
831
+ agent_id,
832
+ session_id,
833
+ memory_type,
834
+ source_type,
835
+ subject,
836
+ predicate,
837
+ value,
838
+ confidence,
839
+ embedding,
840
+ source_url,
841
+ source_title,
842
+ superseded_by,
843
+ decayed,
844
+ agent_color,
845
+ fleet_id
846
+ )
847
+ SELECT
848
+ ${copiedNode.segmentId},
849
+ ${copiedNode.id},
850
+ ${copiedNode.agentId},
851
+ ${targetSessionId},
852
+ memory_type,
853
+ source_type,
854
+ subject,
855
+ predicate,
856
+ value,
857
+ confidence,
858
+ embedding,
859
+ source_url,
860
+ source_title,
861
+ NULL,
862
+ FALSE,
863
+ ${copiedNode.agentColor},
864
+ ${copiedNode.fleetId}
865
+ FROM mg_memory_nodes
866
+ WHERE topic_node_id = ${sourceNode.id}
867
+ AND session_id = ${sourceNode.sessionId}
868
+ AND decayed = FALSE
869
+ AND superseded_by IS NULL
870
+ `;
871
+ }
872
+ async deleteEdgesByNodeIds(nodeIds) {
873
+ if (nodeIds.length === 0)
874
+ return;
875
+ await this.sql `
876
+ DELETE FROM mg_topic_edges
877
+ WHERE src_id = ANY(${this.sql.array(nodeIds)})
878
+ OR dst_id = ANY(${this.sql.array(nodeIds)})
879
+ `;
880
+ }
591
881
  async rebuildEdgesForSession(sessionId, semanticTopK = 5, semanticThreshold = 0.6) {
592
882
  const nodes = await this.getNodesBySession(sessionId);
593
883
  const nodeIds = nodes.map((node) => node.id);
@@ -682,6 +972,18 @@ export class PostgresGraphStore {
682
972
  await this.sql `
683
973
  CREATE INDEX IF NOT EXISTS mg_fleet_agents_fleet_idx
684
974
  ON mg_fleet_agents(fleet_id, agent_color)
975
+ `;
976
+ await this.sql `
977
+ CREATE INDEX IF NOT EXISTS mg_session_ingest_state_updated_idx
978
+ ON mg_session_ingest_state(updated_at)
979
+ `;
980
+ await this.sql `
981
+ CREATE INDEX IF NOT EXISTS idx_graft_registry_session
982
+ ON mg_graft_registry(session_id)
983
+ `;
984
+ await this.sql `
985
+ CREATE UNIQUE INDEX IF NOT EXISTS idx_graft_registry_node_unique
986
+ ON mg_graft_registry(node_id)
685
987
  `;
686
988
  await this.sql `
687
989
  CREATE INDEX IF NOT EXISTS mg_nodes_embedding_idx
@@ -785,11 +1087,42 @@ export class PostgresGraphStore {
785
1087
  sourceTitle: row.source_title,
786
1088
  supersededBy: row.superseded_by,
787
1089
  decayed: row.decayed,
1090
+ hasConflict: row.has_conflict ?? false,
788
1091
  agentColor: row.agent_color,
789
1092
  fleetId: row.fleet_id,
790
1093
  createdAt: row.created_at,
791
1094
  };
792
1095
  }
1096
+ rowToMemoryEdge(row) {
1097
+ return {
1098
+ id: row.id,
1099
+ sourceId: row.source_id,
1100
+ targetId: row.target_id,
1101
+ edgeType: row.edge_type,
1102
+ weight: row.weight ?? 1,
1103
+ createdAt: row.created_at,
1104
+ };
1105
+ }
1106
+ rowToSessionIngestState(row) {
1107
+ return {
1108
+ sessionId: row.session_id,
1109
+ lastIngestedMessageIndex: row.last_ingested_message_index,
1110
+ updatedAt: row.updated_at,
1111
+ };
1112
+ }
1113
+ rowToGraftRegistryEntry(row) {
1114
+ if (!row) {
1115
+ throw new Error("Expected graft registry row.");
1116
+ }
1117
+ return {
1118
+ id: row.id,
1119
+ sessionId: row.session_id,
1120
+ nodeId: row.node_id,
1121
+ sourceSessionId: row.source_session_id,
1122
+ sourceNodeId: row.source_node_id,
1123
+ graftedAt: row.grafted_at,
1124
+ };
1125
+ }
793
1126
  rowToSegment(row) {
794
1127
  if (!row) {
795
1128
  throw new Error("Expected segment row.");
@@ -1 +1 @@
1
- {"version":3,"file":"GraphStore.js","sourceRoot":"","sources":["../../../src/store/postgres-pgvector/GraphStore.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"GraphStore.js","sourceRoot":"","sources":["../../../src/store/postgres-pgvector/GraphStore.ts"],"names":[],"mappings":"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"}