memo-grafter 0.2.2 → 0.2.3

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/README.md +81 -73
  2. package/USER_GUIDE.md +165 -64
  3. package/dist/MemoGrafterAgent.d.ts +7 -3
  4. package/dist/MemoGrafterAgent.d.ts.map +1 -1
  5. package/dist/MemoGrafterAgent.js +62 -23
  6. package/dist/MemoGrafterAgent.js.map +1 -1
  7. package/dist/index.d.ts +1 -1
  8. package/dist/index.d.ts.map +1 -1
  9. package/dist/pipeline/IngestPipeline.d.ts +2 -0
  10. package/dist/pipeline/IngestPipeline.d.ts.map +1 -1
  11. package/dist/pipeline/IngestPipeline.js +93 -17
  12. package/dist/pipeline/IngestPipeline.js.map +1 -1
  13. package/dist/store/GraphStore.d.ts +11 -1
  14. package/dist/store/GraphStore.d.ts.map +1 -1
  15. package/dist/store/postgres-pgvector/GraphStore.d.ts +15 -1
  16. package/dist/store/postgres-pgvector/GraphStore.d.ts.map +1 -1
  17. package/dist/store/postgres-pgvector/GraphStore.js +229 -0
  18. package/dist/store/postgres-pgvector/GraphStore.js.map +1 -1
  19. package/dist/types.d.ts +27 -0
  20. package/dist/types.d.ts.map +1 -1
  21. package/dist/utils/drift/cosineSimilarity.test.d.ts +2 -0
  22. package/dist/utils/drift/cosineSimilarity.test.d.ts.map +1 -0
  23. package/dist/utils/drift/cosineSimilarity.test.js +25 -0
  24. package/dist/utils/drift/cosineSimilarity.test.js.map +1 -0
  25. package/dist/utils/drift/vectorAvg.test.d.ts +2 -0
  26. package/dist/utils/drift/vectorAvg.test.d.ts.map +1 -0
  27. package/dist/utils/drift/vectorAvg.test.js +36 -0
  28. package/dist/utils/drift/vectorAvg.test.js.map +1 -0
  29. package/dist/utils/text/normalizeText.test.d.ts +2 -0
  30. package/dist/utils/text/normalizeText.test.d.ts.map +1 -0
  31. package/dist/utils/text/normalizeText.test.js +23 -0
  32. package/dist/utils/text/normalizeText.test.js.map +1 -0
  33. package/dist/utils/vector/vectorLiteral.test.d.ts +2 -0
  34. package/dist/utils/vector/vectorLiteral.test.d.ts.map +1 -0
  35. package/dist/utils/vector/vectorLiteral.test.js +28 -0
  36. package/dist/utils/vector/vectorLiteral.test.js.map +1 -0
  37. package/package.json +1 -1
@@ -111,6 +111,23 @@ export class PostgresGraphStore {
111
111
  created_at TIMESTAMPTZ DEFAULT NOW(),
112
112
  UNIQUE (fleet_id, agent_color)
113
113
  )
114
+ `;
115
+ await this.sql `
116
+ CREATE TABLE IF NOT EXISTS mg_session_ingest_state (
117
+ session_id TEXT PRIMARY KEY,
118
+ last_ingested_message_index INT NOT NULL DEFAULT -1,
119
+ updated_at TIMESTAMPTZ NOT NULL DEFAULT NOW()
120
+ )
121
+ `;
122
+ await this.sql `
123
+ CREATE TABLE IF NOT EXISTS mg_graft_registry (
124
+ id UUID PRIMARY KEY DEFAULT gen_random_uuid(),
125
+ session_id TEXT NOT NULL,
126
+ node_id TEXT NOT NULL REFERENCES mg_topic_nodes(id) ON DELETE CASCADE,
127
+ source_session_id TEXT NOT NULL,
128
+ source_node_id TEXT NOT NULL,
129
+ grafted_at TIMESTAMPTZ NOT NULL DEFAULT NOW()
130
+ )
114
131
  `;
115
132
  await this.migrateExistingNodeTable();
116
133
  await this.createIndexes();
@@ -128,6 +145,54 @@ export class PostgresGraphStore {
128
145
  `;
129
146
  }
130
147
  }
148
+ async getMessagesBySession(sessionId, startIndex, endIndex) {
149
+ const rows = await this.sql `
150
+ SELECT * FROM mg_message_buffer
151
+ WHERE session_id = ${sessionId}
152
+ ${startIndex === undefined ? this.sql `` : this.sql `AND message_index >= ${startIndex}`}
153
+ ${endIndex === undefined ? this.sql `` : this.sql `AND message_index <= ${endIndex}`}
154
+ ORDER BY message_index ASC
155
+ `;
156
+ return rows.map((row) => ({
157
+ role: row.role,
158
+ content: row.content,
159
+ }));
160
+ }
161
+ async getRecentMessagesBefore(sessionId, beforeIndex, limit) {
162
+ if (limit <= 0)
163
+ return [];
164
+ const rows = await this.sql `
165
+ SELECT * FROM mg_message_buffer
166
+ WHERE session_id = ${sessionId}
167
+ AND message_index < ${beforeIndex}
168
+ ORDER BY message_index DESC
169
+ LIMIT ${limit}
170
+ `;
171
+ return rows
172
+ .reverse()
173
+ .map((row) => ({
174
+ role: row.role,
175
+ content: row.content,
176
+ }));
177
+ }
178
+ async getSessionIngestState(sessionId) {
179
+ const rows = await this.sql `
180
+ SELECT * FROM mg_session_ingest_state
181
+ WHERE session_id = ${sessionId}
182
+ LIMIT 1
183
+ `;
184
+ return rows[0] ? this.rowToSessionIngestState(rows[0]) : null;
185
+ }
186
+ async updateSessionIngestState(sessionId, lastIngestedMessageIndex) {
187
+ await this.sql `
188
+ INSERT INTO mg_session_ingest_state (session_id, last_ingested_message_index, updated_at)
189
+ VALUES (${sessionId}, ${lastIngestedMessageIndex}, NOW())
190
+ ON CONFLICT (session_id)
191
+ DO UPDATE SET
192
+ last_ingested_message_index = EXCLUDED.last_ingested_message_index,
193
+ updated_at = EXCLUDED.updated_at
194
+ `;
195
+ }
131
196
  async saveSegment(segment) {
132
197
  const rows = await this.sql `
133
198
  INSERT INTO mg_segments (id, session_id, start_index, end_index, topic_order, drift_score, created_at)
@@ -257,11 +322,27 @@ export class PostgresGraphStore {
257
322
  await this.sql `
258
323
  DELETE FROM mg_segments
259
324
  WHERE session_id = ${sessionId}
325
+ `;
326
+ await this.sql `
327
+ DELETE FROM mg_message_buffer
328
+ WHERE session_id = ${sessionId}
329
+ `;
330
+ await this.sql `
331
+ DELETE FROM mg_session_ingest_state
332
+ WHERE session_id = ${sessionId}
260
333
  `;
261
334
  }
262
335
  async clearSessionGraph(sessionId) {
263
336
  await this.clearSession(sessionId);
264
337
  }
338
+ async deleteNode(nodeId, sessionId) {
339
+ await this.deleteEdgesByNodeIds([nodeId]);
340
+ await this.sql `
341
+ DELETE FROM mg_topic_nodes
342
+ WHERE id = ${nodeId}
343
+ ${sessionId ? this.sql `AND session_id = ${sessionId}` : this.sql ``}
344
+ `;
345
+ }
265
346
  async getTopicNode(topicNodeId, sessionId) {
266
347
  const rows = await this.sql `
267
348
  SELECT * FROM mg_topic_nodes
@@ -279,6 +360,14 @@ export class PostgresGraphStore {
279
360
  `;
280
361
  return rows[0] ? this.rowToNode(rows[0]) : null;
281
362
  }
363
+ async getSessionNodeCount(sessionId) {
364
+ const rows = await this.sql `
365
+ SELECT COUNT(*)::int AS count
366
+ FROM mg_topic_nodes
367
+ WHERE session_id = ${sessionId}
368
+ `;
369
+ return rows[0]?.count ?? 0;
370
+ }
282
371
  async getNodesBySession(sessionId) {
283
372
  const rows = await this.sql `
284
373
  SELECT * FROM mg_topic_nodes
@@ -287,6 +376,15 @@ export class PostgresGraphStore {
287
376
  `;
288
377
  return rows.map((row) => this.rowToNode(row));
289
378
  }
379
+ async getLastTopicNode(sessionId) {
380
+ const rows = await this.sql `
381
+ SELECT * FROM mg_topic_nodes
382
+ WHERE session_id = ${sessionId}
383
+ ORDER BY topic_order DESC, created_at DESC
384
+ LIMIT 1
385
+ `;
386
+ return rows[0] ? this.rowToNode(rows[0]) : null;
387
+ }
290
388
  async getSegmentsBySession(sessionId) {
291
389
  const rows = await this.sql `
292
390
  SELECT * FROM mg_segments
@@ -545,6 +643,43 @@ export class PostgresGraphStore {
545
643
  content: row.role === "assistant" ? this.cleanAssistantMessage(row.content, maxChars) : row.content,
546
644
  }));
547
645
  }
646
+ async insertGraftRegistry(entry) {
647
+ const rows = await this.sql `
648
+ INSERT INTO mg_graft_registry (
649
+ session_id,
650
+ node_id,
651
+ source_session_id,
652
+ source_node_id
653
+ )
654
+ VALUES (
655
+ ${entry.sessionId},
656
+ ${entry.nodeId},
657
+ ${entry.sourceSessionId},
658
+ ${entry.sourceNodeId}
659
+ )
660
+ ON CONFLICT (node_id)
661
+ DO UPDATE SET
662
+ session_id = EXCLUDED.session_id,
663
+ source_session_id = EXCLUDED.source_session_id,
664
+ source_node_id = EXCLUDED.source_node_id
665
+ RETURNING *
666
+ `;
667
+ return this.rowToGraftRegistryEntry(rows[0]);
668
+ }
669
+ async getGraftRegistry(sessionId) {
670
+ const rows = await this.sql `
671
+ SELECT * FROM mg_graft_registry
672
+ WHERE session_id = ${sessionId}
673
+ ORDER BY grafted_at ASC
674
+ `;
675
+ return rows.map((row) => this.rowToGraftRegistryEntry(row));
676
+ }
677
+ async deleteGraftRegistry(nodeId) {
678
+ await this.sql `
679
+ DELETE FROM mg_graft_registry
680
+ WHERE node_id = ${nodeId}
681
+ `;
682
+ }
548
683
  async absorbNodes(nodes, targetSessionId, options = {}) {
549
684
  const copiedNodes = [];
550
685
  const nextMessageIndex = await this.getNextMessageIndex(targetSessionId);
@@ -578,16 +713,78 @@ export class PostgresGraphStore {
578
713
  createdAt: new Date(),
579
714
  };
580
715
  await this.saveNode(copy);
716
+ await this.copyActiveMemoriesForAbsorbedNode(node, copy, targetSessionId);
581
717
  await this.saveEdge({
582
718
  srcId: copy.id,
583
719
  dstId: node.id,
584
720
  weight: 1,
585
721
  type: "grafted",
586
722
  });
723
+ await this.insertGraftRegistry({
724
+ sessionId: targetSessionId,
725
+ nodeId: copy.id,
726
+ sourceSessionId: node.sessionId,
727
+ sourceNodeId: node.id,
728
+ });
587
729
  copiedNodes.push(copy);
588
730
  }
589
731
  return copiedNodes;
590
732
  }
733
+ async copyActiveMemoriesForAbsorbedNode(sourceNode, copiedNode, targetSessionId) {
734
+ await this.sql `
735
+ INSERT INTO mg_memory_nodes (
736
+ segment_id,
737
+ topic_node_id,
738
+ agent_id,
739
+ session_id,
740
+ memory_type,
741
+ source_type,
742
+ subject,
743
+ predicate,
744
+ value,
745
+ confidence,
746
+ embedding,
747
+ source_url,
748
+ source_title,
749
+ superseded_by,
750
+ decayed,
751
+ agent_color,
752
+ fleet_id
753
+ )
754
+ SELECT
755
+ ${copiedNode.segmentId},
756
+ ${copiedNode.id},
757
+ ${copiedNode.agentId},
758
+ ${targetSessionId},
759
+ memory_type,
760
+ source_type,
761
+ subject,
762
+ predicate,
763
+ value,
764
+ confidence,
765
+ embedding,
766
+ source_url,
767
+ source_title,
768
+ NULL,
769
+ FALSE,
770
+ ${copiedNode.agentColor},
771
+ ${copiedNode.fleetId}
772
+ FROM mg_memory_nodes
773
+ WHERE topic_node_id = ${sourceNode.id}
774
+ AND session_id = ${sourceNode.sessionId}
775
+ AND decayed = FALSE
776
+ AND superseded_by IS NULL
777
+ `;
778
+ }
779
+ async deleteEdgesByNodeIds(nodeIds) {
780
+ if (nodeIds.length === 0)
781
+ return;
782
+ await this.sql `
783
+ DELETE FROM mg_topic_edges
784
+ WHERE src_id = ANY(${this.sql.array(nodeIds)})
785
+ OR dst_id = ANY(${this.sql.array(nodeIds)})
786
+ `;
787
+ }
591
788
  async rebuildEdgesForSession(sessionId, semanticTopK = 5, semanticThreshold = 0.6) {
592
789
  const nodes = await this.getNodesBySession(sessionId);
593
790
  const nodeIds = nodes.map((node) => node.id);
@@ -682,6 +879,18 @@ export class PostgresGraphStore {
682
879
  await this.sql `
683
880
  CREATE INDEX IF NOT EXISTS mg_fleet_agents_fleet_idx
684
881
  ON mg_fleet_agents(fleet_id, agent_color)
882
+ `;
883
+ await this.sql `
884
+ CREATE INDEX IF NOT EXISTS mg_session_ingest_state_updated_idx
885
+ ON mg_session_ingest_state(updated_at)
886
+ `;
887
+ await this.sql `
888
+ CREATE INDEX IF NOT EXISTS idx_graft_registry_session
889
+ ON mg_graft_registry(session_id)
890
+ `;
891
+ await this.sql `
892
+ CREATE UNIQUE INDEX IF NOT EXISTS idx_graft_registry_node_unique
893
+ ON mg_graft_registry(node_id)
685
894
  `;
686
895
  await this.sql `
687
896
  CREATE INDEX IF NOT EXISTS mg_nodes_embedding_idx
@@ -790,6 +999,26 @@ export class PostgresGraphStore {
790
999
  createdAt: row.created_at,
791
1000
  };
792
1001
  }
1002
+ rowToSessionIngestState(row) {
1003
+ return {
1004
+ sessionId: row.session_id,
1005
+ lastIngestedMessageIndex: row.last_ingested_message_index,
1006
+ updatedAt: row.updated_at,
1007
+ };
1008
+ }
1009
+ rowToGraftRegistryEntry(row) {
1010
+ if (!row) {
1011
+ throw new Error("Expected graft registry row.");
1012
+ }
1013
+ return {
1014
+ id: row.id,
1015
+ sessionId: row.session_id,
1016
+ nodeId: row.node_id,
1017
+ sourceSessionId: row.source_session_id,
1018
+ sourceNodeId: row.source_node_id,
1019
+ graftedAt: row.grafted_at,
1020
+ };
1021
+ }
793
1022
  rowToSegment(row) {
794
1023
  if (!row) {
795
1024
  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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"}
package/dist/types.d.ts CHANGED
@@ -87,13 +87,36 @@ export interface InjectionResult {
87
87
  memories?: MemoryNode[];
88
88
  tokenCount: number;
89
89
  }
90
+ export interface GraftRegistryEntry {
91
+ id: string;
92
+ sessionId: string;
93
+ nodeId: string;
94
+ sourceSessionId: string;
95
+ sourceNodeId: string;
96
+ graftedAt: Date;
97
+ }
98
+ export interface GraftOrigin {
99
+ sourceSessionId: string;
100
+ sourceNodeId: string;
101
+ graftedAt: Date;
102
+ }
103
+ export interface GraphSnapshotNode {
104
+ node: TopicNode;
105
+ graftOrigin?: GraftOrigin;
106
+ }
90
107
  export interface GraphSnapshot {
91
108
  sessionId: string;
92
109
  nodes: TopicNode[];
110
+ snapshotNodes?: GraphSnapshotNode[];
93
111
  edges: TopicEdge[];
94
112
  memories: MemoryNode[];
95
113
  capturedAt: string;
96
114
  }
115
+ export interface SessionIngestState {
116
+ sessionId: string;
117
+ lastIngestedMessageIndex: number;
118
+ updatedAt: Date;
119
+ }
97
120
  export interface RetrieverConfig {
98
121
  limit?: number;
99
122
  minSimilarity?: number;
@@ -142,6 +165,10 @@ export interface MemoGrafterInjectConfig {
142
165
  tokenBudget?: number;
143
166
  /** Default 20. How many raw messages to keep after the pinned recall block. */
144
167
  recentWindowSize?: number;
168
+ /** Default 6. How many recalled facts to inject before each invoke. */
169
+ recallLimit?: number;
170
+ /** Default 0.55. Minimum similarity for recalled facts injected before each invoke. */
171
+ recallMinSimilarity?: number;
145
172
  }
146
173
  export interface MemoGrafterQueueConfig {
147
174
  redisUrl: string;
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=cosineSimilarity.test.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"cosineSimilarity.test.d.ts","sourceRoot":"","sources":["../../../src/utils/drift/cosineSimilarity.test.ts"],"names":[],"mappings":""}
@@ -0,0 +1,25 @@
1
+ import { describe, expect, it } from "vitest";
2
+ import { cosineSimilarity } from "./cosineSimilarity.js";
3
+ describe("cosineSimilarity", () => {
4
+ it("returns 1 for identical vectors", () => {
5
+ expect(cosineSimilarity([1, 2, 3], [1, 2, 3])).toBeCloseTo(1);
6
+ });
7
+ it("returns 0 for orthogonal vectors", () => {
8
+ expect(cosineSimilarity([1, 0], [0, 1])).toBe(0);
9
+ });
10
+ it("handles opposite vectors", () => {
11
+ expect(cosineSimilarity([1, 2], [-1, -2])).toBeCloseTo(-1);
12
+ });
13
+ it("handles decimal values", () => {
14
+ expect(cosineSimilarity([0.5, 1.5], [1.5, 0.5])).toBeCloseTo(0.6);
15
+ });
16
+ it("returns NaN when a zero vector is provided", () => {
17
+ expect(cosineSimilarity([0, 0], [1, 2])).toBeNaN();
18
+ expect(cosineSimilarity([0, 0], [0, 0])).toBeNaN();
19
+ });
20
+ it("documents current behavior for mismatched vector lengths", () => {
21
+ expect(cosineSimilarity([1, 0], [1, 0, 99])).toBe(1);
22
+ expect(cosineSimilarity([1, 0, 1], [1, 0])).toBeNaN();
23
+ });
24
+ });
25
+ //# sourceMappingURL=cosineSimilarity.test.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"cosineSimilarity.test.js","sourceRoot":"","sources":["../../../src/utils/drift/cosineSimilarity.test.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,QAAQ,CAAC;AAC9C,OAAO,EAAE,gBAAgB,EAAE,MAAM,uBAAuB,CAAC;AAEzD,QAAQ,CAAC,kBAAkB,EAAE,GAAG,EAAE;IAChC,EAAE,CAAC,iCAAiC,EAAE,GAAG,EAAE;QACzC,MAAM,CAAC,gBAAgB,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC;IAChE,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,kCAAkC,EAAE,GAAG,EAAE;QAC1C,MAAM,CAAC,gBAAgB,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IACnD,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,0BAA0B,EAAE,GAAG,EAAE;QAClC,MAAM,CAAC,gBAAgB,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,CAAC;IAC7D,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,wBAAwB,EAAE,GAAG,EAAE;QAChC,MAAM,CAAC,gBAAgB,CAAC,CAAC,GAAG,EAAE,GAAG,CAAC,EAAE,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC,CAAC,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC;IACpE,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,4CAA4C,EAAE,GAAG,EAAE;QACpD,MAAM,CAAC,gBAAgB,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO,EAAE,CAAC;QACnD,MAAM,CAAC,gBAAgB,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO,EAAE,CAAC;IACrD,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,0DAA0D,EAAE,GAAG,EAAE;QAClE,MAAM,CAAC,gBAAgB,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QACrD,MAAM,CAAC,gBAAgB,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO,EAAE,CAAC;IACxD,CAAC,CAAC,CAAC;AACL,CAAC,CAAC,CAAC"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=vectorAvg.test.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"vectorAvg.test.d.ts","sourceRoot":"","sources":["../../../src/utils/drift/vectorAvg.test.ts"],"names":[],"mappings":""}
@@ -0,0 +1,36 @@
1
+ import { describe, expect, it } from "vitest";
2
+ import { avg } from "./vectorAvg.js";
3
+ describe("avg", () => {
4
+ it("averages multiple vectors", () => {
5
+ expect(avg([
6
+ [1, 2, 3],
7
+ [4, 5, 6],
8
+ [7, 8, 9],
9
+ ])).toEqual([4, 5, 6]);
10
+ });
11
+ it("works with a single vector", () => {
12
+ expect(avg([[2, 4, 6]])).toEqual([2, 4, 6]);
13
+ });
14
+ it("handles decimal values", () => {
15
+ const result = avg([
16
+ [0.1, 0.2],
17
+ [0.2, 0.4],
18
+ ]);
19
+ expect(result[0]).toBeCloseTo(0.15);
20
+ expect(result[1]).toBeCloseTo(0.3);
21
+ });
22
+ it("throws for empty input", () => {
23
+ expect(() => avg([])).toThrow();
24
+ });
25
+ it("documents current behavior for mismatched vector lengths", () => {
26
+ expect(avg([
27
+ [2, 4],
28
+ [4],
29
+ ])).toEqual([3, 2]);
30
+ expect(avg([
31
+ [2],
32
+ [4, 6],
33
+ ])).toEqual([3, 3]);
34
+ });
35
+ });
36
+ //# sourceMappingURL=vectorAvg.test.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"vectorAvg.test.js","sourceRoot":"","sources":["../../../src/utils/drift/vectorAvg.test.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,QAAQ,CAAC;AAC9C,OAAO,EAAE,GAAG,EAAE,MAAM,gBAAgB,CAAC;AAErC,QAAQ,CAAC,KAAK,EAAE,GAAG,EAAE;IACnB,EAAE,CAAC,2BAA2B,EAAE,GAAG,EAAE;QACnC,MAAM,CAAC,GAAG,CAAC;YACT,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC;YACT,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC;YACT,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC;SACV,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC;IACzB,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,4BAA4B,EAAE,GAAG,EAAE;QACpC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC;IAC9C,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,wBAAwB,EAAE,GAAG,EAAE;QAChC,MAAM,MAAM,GAAG,GAAG,CAAC;YACjB,CAAC,GAAG,EAAE,GAAG,CAAC;YACV,CAAC,GAAG,EAAE,GAAG,CAAC;SACX,CAAC,CAAC;QAEH,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC;QACpC,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC;IACrC,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,wBAAwB,EAAE,GAAG,EAAE;QAChC,MAAM,CAAC,GAAG,EAAE,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC,CAAC,OAAO,EAAE,CAAC;IAClC,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,0DAA0D,EAAE,GAAG,EAAE;QAClE,MAAM,CAAC,GAAG,CAAC;YACT,CAAC,CAAC,EAAE,CAAC,CAAC;YACN,CAAC,CAAC,CAAC;SACJ,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC;QAEpB,MAAM,CAAC,GAAG,CAAC;YACT,CAAC,CAAC,CAAC;YACH,CAAC,CAAC,EAAE,CAAC,CAAC;SACP,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC;IACtB,CAAC,CAAC,CAAC;AACL,CAAC,CAAC,CAAC"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=normalizeText.test.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"normalizeText.test.d.ts","sourceRoot":"","sources":["../../../src/utils/text/normalizeText.test.ts"],"names":[],"mappings":""}
@@ -0,0 +1,23 @@
1
+ import { describe, expect, it } from "vitest";
2
+ import { normalizeText } from "./normalizeText.js";
3
+ describe("normalizeText", () => {
4
+ it("trims leading and trailing whitespace", () => {
5
+ expect(normalizeText(" hello world ")).toBe("hello world");
6
+ });
7
+ it("collapses repeated whitespace, newlines, and tabs", () => {
8
+ expect(normalizeText("hello \n\t world")).toBe("hello world");
9
+ });
10
+ it("preserves meaningful text", () => {
11
+ expect(normalizeText("keep these words")).toBe("keep these words");
12
+ });
13
+ it("returns null for an empty string", () => {
14
+ expect(normalizeText("")).toBeNull();
15
+ });
16
+ it("returns null for whitespace-only strings", () => {
17
+ expect(normalizeText(" \n\t ")).toBeNull();
18
+ });
19
+ it("preserves punctuation and casing", () => {
20
+ expect(normalizeText(" Hello, WORLD! Isn't this fine? ")).toBe("Hello, WORLD! Isn't this fine?");
21
+ });
22
+ });
23
+ //# sourceMappingURL=normalizeText.test.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"normalizeText.test.js","sourceRoot":"","sources":["../../../src/utils/text/normalizeText.test.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,QAAQ,CAAC;AAC9C,OAAO,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAC;AAEnD,QAAQ,CAAC,eAAe,EAAE,GAAG,EAAE;IAC7B,EAAE,CAAC,uCAAuC,EAAE,GAAG,EAAE;QAC/C,MAAM,CAAC,aAAa,CAAC,iBAAiB,CAAC,CAAC,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC;IAC/D,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,mDAAmD,EAAE,GAAG,EAAE;QAC3D,MAAM,CAAC,aAAa,CAAC,oBAAoB,CAAC,CAAC,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC;IAClE,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,2BAA2B,EAAE,GAAG,EAAE;QACnC,MAAM,CAAC,aAAa,CAAC,kBAAkB,CAAC,CAAC,CAAC,IAAI,CAAC,kBAAkB,CAAC,CAAC;IACrE,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,kCAAkC,EAAE,GAAG,EAAE;QAC1C,MAAM,CAAC,aAAa,CAAC,EAAE,CAAC,CAAC,CAAC,QAAQ,EAAE,CAAC;IACvC,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,0CAA0C,EAAE,GAAG,EAAE;QAClD,MAAM,CAAC,aAAa,CAAC,QAAQ,CAAC,CAAC,CAAC,QAAQ,EAAE,CAAC;IAC7C,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,kCAAkC,EAAE,GAAG,EAAE;QAC1C,MAAM,CAAC,aAAa,CAAC,oCAAoC,CAAC,CAAC,CAAC,IAAI,CAAC,gCAAgC,CAAC,CAAC;IACrG,CAAC,CAAC,CAAC;AACL,CAAC,CAAC,CAAC"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=vectorLiteral.test.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"vectorLiteral.test.d.ts","sourceRoot":"","sources":["../../../src/utils/vector/vectorLiteral.test.ts"],"names":[],"mappings":""}
@@ -0,0 +1,28 @@
1
+ import { describe, expect, it } from "vitest";
2
+ import { parseVector, toVectorLiteral } from "./vectorLiteral.js";
3
+ describe("toVectorLiteral", () => {
4
+ it("converts a numeric vector into a pgvector literal", () => {
5
+ expect(toVectorLiteral([1, 2, 3])).toBe("[1,2,3]");
6
+ });
7
+ it("handles decimal numbers", () => {
8
+ expect(toVectorLiteral([1.25, 0.5, 3.75])).toBe("[1.25,0.5,3.75]");
9
+ });
10
+ it("handles negative numbers", () => {
11
+ expect(toVectorLiteral([-1, -2.5, 3])).toBe("[-1,-2.5,3]");
12
+ });
13
+ it("throws for an empty vector", () => {
14
+ expect(() => toVectorLiteral([])).toThrow("Cannot serialize an empty embedding.");
15
+ });
16
+ it("documents current behavior for non-finite values", () => {
17
+ expect(toVectorLiteral([Number.NaN, Infinity, -Infinity])).toBe("[NaN,Infinity,-Infinity]");
18
+ });
19
+ });
20
+ describe("parseVector", () => {
21
+ it("parses a pgvector literal into numbers", () => {
22
+ expect(parseVector("[1,2.5,-3]")).toEqual([1, 2.5, -3]);
23
+ });
24
+ it("filters non-finite values from strings", () => {
25
+ expect(parseVector("[NaN,Infinity,-Infinity,4]")).toEqual([4]);
26
+ });
27
+ });
28
+ //# sourceMappingURL=vectorLiteral.test.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"vectorLiteral.test.js","sourceRoot":"","sources":["../../../src/utils/vector/vectorLiteral.test.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,QAAQ,CAAC;AAC9C,OAAO,EAAE,WAAW,EAAE,eAAe,EAAE,MAAM,oBAAoB,CAAC;AAElE,QAAQ,CAAC,iBAAiB,EAAE,GAAG,EAAE;IAC/B,EAAE,CAAC,mDAAmD,EAAE,GAAG,EAAE;QAC3D,MAAM,CAAC,eAAe,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;IACrD,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,yBAAyB,EAAE,GAAG,EAAE;QACjC,MAAM,CAAC,eAAe,CAAC,CAAC,IAAI,EAAE,GAAG,EAAE,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,iBAAiB,CAAC,CAAC;IACrE,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,0BAA0B,EAAE,GAAG,EAAE;QAClC,MAAM,CAAC,eAAe,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC;IAC7D,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,4BAA4B,EAAE,GAAG,EAAE;QACpC,MAAM,CAAC,GAAG,EAAE,CAAC,eAAe,CAAC,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC,sCAAsC,CAAC,CAAC;IACpF,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,kDAAkD,EAAE,GAAG,EAAE;QAC1D,MAAM,CAAC,eAAe,CAAC,CAAC,MAAM,CAAC,GAAG,EAAE,QAAQ,EAAE,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,0BAA0B,CAAC,CAAC;IAC9F,CAAC,CAAC,CAAC;AACL,CAAC,CAAC,CAAC;AAEH,QAAQ,CAAC,aAAa,EAAE,GAAG,EAAE;IAC3B,EAAE,CAAC,wCAAwC,EAAE,GAAG,EAAE;QAChD,MAAM,CAAC,WAAW,CAAC,YAAY,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,GAAG,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC;IAC1D,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,wCAAwC,EAAE,GAAG,EAAE;QAChD,MAAM,CAAC,WAAW,CAAC,4BAA4B,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;IACjE,CAAC,CAAC,CAAC;AACL,CAAC,CAAC,CAAC"}