@ixo/sqlite-saver 1.0.4 → 1.0.51

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.
@@ -1,426 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- const langgraph_checkpoint_1 = require("@langchain/langgraph-checkpoint");
4
- const index_1 = require("../index");
5
- const checkpoint1 = {
6
- v: 1,
7
- id: (0, langgraph_checkpoint_1.uuid6)(-1),
8
- ts: '2024-04-19T17:19:07.952Z',
9
- channel_values: {
10
- someKey1: 'someValue1',
11
- },
12
- channel_versions: {
13
- someKey2: 1,
14
- },
15
- versions_seen: {
16
- someKey3: {
17
- someKey4: 1,
18
- },
19
- },
20
- };
21
- const checkpoint2 = {
22
- v: 1,
23
- id: (0, langgraph_checkpoint_1.uuid6)(1),
24
- ts: '2024-04-20T17:19:07.952Z',
25
- channel_values: {
26
- someKey1: 'someValue2',
27
- },
28
- channel_versions: {
29
- someKey2: 2,
30
- },
31
- versions_seen: {
32
- someKey3: {
33
- someKey4: 2,
34
- },
35
- },
36
- };
37
- describe('SqliteSaver', () => {
38
- it('should save and retrieve checkpoints correctly', async () => {
39
- const sqliteSaver = index_1.SqliteSaver.fromConnString(':memory:');
40
- const undefinedCheckpoint = await sqliteSaver.getTuple({
41
- configurable: { thread_id: '1' },
42
- });
43
- expect(undefinedCheckpoint).toBeUndefined();
44
- const runnableConfig = await sqliteSaver.put({ configurable: { thread_id: '1' } }, checkpoint1, { source: 'update', step: -1, parents: {} });
45
- expect(runnableConfig).toEqual({
46
- configurable: {
47
- thread_id: '1',
48
- checkpoint_ns: '',
49
- checkpoint_id: checkpoint1.id,
50
- },
51
- });
52
- await sqliteSaver.putWrites({
53
- configurable: {
54
- checkpoint_id: checkpoint1.id,
55
- checkpoint_ns: '',
56
- thread_id: '1',
57
- },
58
- }, [['bar', 'baz']], 'foo');
59
- const firstCheckpointTuple = await sqliteSaver.getTuple({
60
- configurable: { thread_id: '1' },
61
- });
62
- expect(firstCheckpointTuple?.config).toEqual({
63
- configurable: {
64
- thread_id: '1',
65
- checkpoint_ns: '',
66
- checkpoint_id: checkpoint1.id,
67
- },
68
- });
69
- expect(firstCheckpointTuple?.checkpoint).toEqual(checkpoint1);
70
- expect(firstCheckpointTuple?.parentConfig).toBeUndefined();
71
- expect(firstCheckpointTuple?.pendingWrites).toEqual([
72
- ['foo', 'bar', 'baz'],
73
- ]);
74
- await sqliteSaver.put({
75
- configurable: {
76
- thread_id: '1',
77
- checkpoint_id: '2024-04-18T17:19:07.952Z',
78
- },
79
- }, checkpoint2, {
80
- source: 'update',
81
- step: -1,
82
- parents: { '': checkpoint1.id },
83
- });
84
- const secondCheckpointTuple = await sqliteSaver.getTuple({
85
- configurable: { thread_id: '1' },
86
- });
87
- expect(secondCheckpointTuple?.parentConfig).toEqual({
88
- configurable: {
89
- thread_id: '1',
90
- checkpoint_ns: '',
91
- checkpoint_id: '2024-04-18T17:19:07.952Z',
92
- },
93
- });
94
- const checkpointTupleGenerator = await sqliteSaver.list({
95
- configurable: { thread_id: '1' },
96
- }, {
97
- filter: {
98
- source: 'update',
99
- step: -1,
100
- parents: { '': checkpoint1.id },
101
- },
102
- });
103
- const checkpointTuples = [];
104
- for await (const checkpoint of checkpointTupleGenerator) {
105
- checkpointTuples.push(checkpoint);
106
- }
107
- expect(checkpointTuples.length).toBe(1);
108
- const checkpointTuple1 = checkpointTuples[0];
109
- expect(checkpointTuple1?.checkpoint.ts).toBe('2024-04-20T17:19:07.952Z');
110
- });
111
- it('should delete thread', async () => {
112
- const saver = index_1.SqliteSaver.fromConnString(':memory:');
113
- await saver.put({ configurable: { thread_id: '1' } }, (0, langgraph_checkpoint_1.emptyCheckpoint)(), {
114
- source: 'update',
115
- step: -1,
116
- parents: {},
117
- });
118
- await saver.put({ configurable: { thread_id: '2' } }, (0, langgraph_checkpoint_1.emptyCheckpoint)(), {
119
- source: 'update',
120
- step: -1,
121
- parents: {},
122
- });
123
- await saver.deleteThread('1');
124
- expect(await saver.getTuple({ configurable: { thread_id: '1' } })).toBeUndefined();
125
- expect(await saver.getTuple({ configurable: { thread_id: '2' } })).toBeDefined();
126
- });
127
- it('pending sends migration', async () => {
128
- const saver = index_1.SqliteSaver.fromConnString(':memory:');
129
- let config = {
130
- configurable: { thread_id: 'thread-1', checkpoint_ns: '' },
131
- };
132
- const checkpoint0 = (0, langgraph_checkpoint_1.emptyCheckpoint)();
133
- config = await saver.put(config, checkpoint0, {
134
- source: 'loop',
135
- parents: {},
136
- step: 0,
137
- });
138
- await saver.putWrites(config, [
139
- [langgraph_checkpoint_1.TASKS, 'send-1'],
140
- [langgraph_checkpoint_1.TASKS, 'send-2'],
141
- ], 'task-1');
142
- await saver.putWrites(config, [[langgraph_checkpoint_1.TASKS, 'send-3']], 'task-2');
143
- const tuple0 = await saver.getTuple(config);
144
- expect(tuple0?.checkpoint.channel_values).toEqual({});
145
- expect(tuple0?.checkpoint.channel_versions).toEqual({});
146
- const checkpoint1 = {
147
- v: 1,
148
- id: (0, langgraph_checkpoint_1.uuid6)(1),
149
- ts: '2024-04-20T17:19:07.952Z',
150
- channel_values: {},
151
- channel_versions: checkpoint0.channel_versions,
152
- versions_seen: checkpoint0.versions_seen,
153
- };
154
- config = await saver.put(config, checkpoint1, {
155
- source: 'loop',
156
- parents: {},
157
- step: 1,
158
- });
159
- const checkpoint1Tuple = await saver.getTuple(config);
160
- expect(checkpoint1Tuple?.checkpoint.channel_values).toEqual({
161
- [langgraph_checkpoint_1.TASKS]: ['send-1', 'send-2', 'send-3'],
162
- });
163
- expect(checkpoint1Tuple?.checkpoint.channel_versions[langgraph_checkpoint_1.TASKS]).toBeDefined();
164
- const checkpointTupleGenerator = saver.list({
165
- configurable: { thread_id: 'thread-1' },
166
- });
167
- const checkpointTuples = [];
168
- for await (const checkpoint of checkpointTupleGenerator) {
169
- checkpointTuples.push(checkpoint);
170
- }
171
- expect(checkpointTuples.length).toBe(2);
172
- expect(checkpointTuples[0]?.checkpoint.channel_values).toEqual({
173
- [langgraph_checkpoint_1.TASKS]: ['send-1', 'send-2', 'send-3'],
174
- });
175
- expect(checkpointTuples[0]?.checkpoint.channel_versions[langgraph_checkpoint_1.TASKS]).toBeDefined();
176
- });
177
- it('should filter list by checkpoint_ns', async () => {
178
- const saver = index_1.SqliteSaver.fromConnString(':memory:');
179
- const checkpoint1 = (0, langgraph_checkpoint_1.emptyCheckpoint)();
180
- const checkpoint2 = (0, langgraph_checkpoint_1.emptyCheckpoint)();
181
- const checkpoint3 = (0, langgraph_checkpoint_1.emptyCheckpoint)();
182
- await saver.put({ configurable: { thread_id: 'thread-1', checkpoint_ns: 'ns1' } }, checkpoint1, { source: 'update', step: -1, parents: {} });
183
- await saver.put({ configurable: { thread_id: 'thread-1', checkpoint_ns: 'ns2' } }, checkpoint2, { source: 'update', step: -1, parents: {} });
184
- await saver.put({ configurable: { thread_id: 'thread-1', checkpoint_ns: 'ns1' } }, checkpoint3, { source: 'update', step: -1, parents: {} });
185
- const ns1Generator = saver.list({
186
- configurable: { thread_id: 'thread-1', checkpoint_ns: 'ns1' },
187
- });
188
- const ns1Tuples = [];
189
- for await (const checkpoint of ns1Generator) {
190
- ns1Tuples.push(checkpoint);
191
- }
192
- expect(ns1Tuples.length).toBe(2);
193
- expect(ns1Tuples.every((t) => t.config.configurable?.checkpoint_ns === 'ns1')).toBe(true);
194
- const ns2Generator = saver.list({
195
- configurable: { thread_id: 'thread-1', checkpoint_ns: 'ns2' },
196
- });
197
- const ns2Tuples = [];
198
- for await (const checkpoint of ns2Generator) {
199
- ns2Tuples.push(checkpoint);
200
- }
201
- expect(ns2Tuples.length).toBe(1);
202
- expect(ns2Tuples[0]?.config.configurable?.checkpoint_ns).toBe('ns2');
203
- });
204
- it('should paginate list with before cursor', async () => {
205
- const saver = index_1.SqliteSaver.fromConnString(':memory:');
206
- const checkpoint1 = {
207
- v: 1,
208
- id: (0, langgraph_checkpoint_1.uuid6)(-2),
209
- ts: '2024-04-19T17:19:07.952Z',
210
- channel_values: {},
211
- channel_versions: {},
212
- versions_seen: {},
213
- };
214
- const checkpoint2 = {
215
- v: 1,
216
- id: (0, langgraph_checkpoint_1.uuid6)(-1),
217
- ts: '2024-04-20T17:19:07.952Z',
218
- channel_values: {},
219
- channel_versions: {},
220
- versions_seen: {},
221
- };
222
- const checkpoint3 = {
223
- v: 1,
224
- id: (0, langgraph_checkpoint_1.uuid6)(0),
225
- ts: '2024-04-21T17:19:07.952Z',
226
- channel_values: {},
227
- channel_versions: {},
228
- versions_seen: {},
229
- };
230
- await saver.put({ configurable: { thread_id: 'thread-1' } }, checkpoint1, {
231
- source: 'update',
232
- step: -1,
233
- parents: {},
234
- });
235
- await saver.put({ configurable: { thread_id: 'thread-1' } }, checkpoint2, {
236
- source: 'update',
237
- step: -1,
238
- parents: {},
239
- });
240
- const config3 = await saver.put({ configurable: { thread_id: 'thread-1' } }, checkpoint3, { source: 'update', step: -1, parents: {} });
241
- const allGenerator = saver.list({
242
- configurable: { thread_id: 'thread-1' },
243
- });
244
- const allTuples = [];
245
- for await (const checkpoint of allGenerator) {
246
- allTuples.push(checkpoint);
247
- }
248
- expect(allTuples.length).toBe(3);
249
- const beforeGenerator = saver.list({
250
- configurable: { thread_id: 'thread-1' },
251
- }, {
252
- before: {
253
- configurable: {
254
- checkpoint_id: config3.configurable?.checkpoint_id,
255
- },
256
- },
257
- });
258
- const beforeTuples = [];
259
- for await (const checkpoint of beforeGenerator) {
260
- beforeTuples.push(checkpoint);
261
- }
262
- expect(beforeTuples.length).toBe(2);
263
- expect(beforeTuples.every((t) => t.config.configurable?.checkpoint_id !==
264
- config3.configurable?.checkpoint_id)).toBe(true);
265
- });
266
- it('should limit list results', async () => {
267
- const saver = index_1.SqliteSaver.fromConnString(':memory:');
268
- for (let i = 0; i < 5; i++) {
269
- const checkpoint = {
270
- v: 1,
271
- id: (0, langgraph_checkpoint_1.uuid6)(i - 3),
272
- ts: `2024-04-${19 + i}T17:19:07.952Z`,
273
- channel_values: {},
274
- channel_versions: {},
275
- versions_seen: {},
276
- };
277
- await saver.put({ configurable: { thread_id: 'thread-1' } }, checkpoint, {
278
- source: 'update',
279
- step: -1,
280
- parents: {},
281
- });
282
- }
283
- const allGenerator = saver.list({
284
- configurable: { thread_id: 'thread-1' },
285
- });
286
- const allTuples = [];
287
- for await (const checkpoint of allGenerator) {
288
- allTuples.push(checkpoint);
289
- }
290
- expect(allTuples.length).toBe(5);
291
- const limitedGenerator = saver.list({
292
- configurable: { thread_id: 'thread-1' },
293
- }, { limit: 2 });
294
- const limitedTuples = [];
295
- for await (const checkpoint of limitedGenerator) {
296
- limitedTuples.push(checkpoint);
297
- }
298
- expect(limitedTuples.length).toBe(2);
299
- });
300
- it('should filter list by metadata fields', async () => {
301
- const saver = index_1.SqliteSaver.fromConnString(':memory:');
302
- const checkpoint1 = (0, langgraph_checkpoint_1.emptyCheckpoint)();
303
- const checkpoint2 = (0, langgraph_checkpoint_1.emptyCheckpoint)();
304
- const checkpoint3 = (0, langgraph_checkpoint_1.emptyCheckpoint)();
305
- await saver.put({ configurable: { thread_id: 'thread-1' } }, checkpoint1, {
306
- source: 'update',
307
- step: 1,
308
- parents: {},
309
- });
310
- await saver.put({ configurable: { thread_id: 'thread-1' } }, checkpoint2, {
311
- source: 'loop',
312
- step: 2,
313
- parents: {},
314
- });
315
- await saver.put({ configurable: { thread_id: 'thread-1' } }, checkpoint3, {
316
- source: 'update',
317
- step: 3,
318
- parents: {},
319
- });
320
- const updateGenerator = saver.list({
321
- configurable: { thread_id: 'thread-1' },
322
- }, {
323
- filter: { source: 'update' },
324
- });
325
- const updateTuples = [];
326
- for await (const checkpoint of updateGenerator) {
327
- updateTuples.push(checkpoint);
328
- }
329
- expect(updateTuples.length).toBe(2);
330
- expect(updateTuples.every((t) => t.metadata?.source === 'update')).toBe(true);
331
- const stepGenerator = saver.list({
332
- configurable: { thread_id: 'thread-1' },
333
- }, {
334
- filter: { step: 2 },
335
- });
336
- const stepTuples = [];
337
- for await (const checkpoint of stepGenerator) {
338
- stepTuples.push(checkpoint);
339
- }
340
- expect(stepTuples.length).toBe(1);
341
- expect(stepTuples[0]?.metadata?.step).toBe(2);
342
- });
343
- it('should throw error when put() is called without config.configurable', async () => {
344
- const saver = index_1.SqliteSaver.fromConnString(':memory:');
345
- const checkpoint = (0, langgraph_checkpoint_1.emptyCheckpoint)();
346
- await expect(saver.put({}, checkpoint, {
347
- source: 'update',
348
- step: -1,
349
- parents: {},
350
- })).rejects.toThrow('Empty configuration supplied.');
351
- });
352
- it('should throw error when put() is called without thread_id', async () => {
353
- const saver = index_1.SqliteSaver.fromConnString(':memory:');
354
- const checkpoint = (0, langgraph_checkpoint_1.emptyCheckpoint)();
355
- await expect(saver.put({ configurable: {} }, checkpoint, {
356
- source: 'update',
357
- step: -1,
358
- parents: {},
359
- })).rejects.toThrow('Missing "thread_id" field in passed "config.configurable".');
360
- });
361
- it('should throw error when putWrites() is called without config.configurable', async () => {
362
- const saver = index_1.SqliteSaver.fromConnString(':memory:');
363
- await expect(saver.putWrites({}, [['channel', 'value']], 'task-1')).rejects.toThrow('Empty configuration supplied.');
364
- });
365
- it('should throw error when putWrites() is called without thread_id', async () => {
366
- const saver = index_1.SqliteSaver.fromConnString(':memory:');
367
- await expect(saver.putWrites({ configurable: {} }, [['channel', 'value']], 'task-1')).rejects.toThrow('Missing thread_id field in config.configurable.');
368
- });
369
- it('should throw error when putWrites() is called without checkpoint_id', async () => {
370
- const saver = index_1.SqliteSaver.fromConnString(':memory:');
371
- await expect(saver.putWrites({ configurable: { thread_id: 'thread-1' } }, [['channel', 'value']], 'task-1')).rejects.toThrow('Missing checkpoint_id field in config.configurable.');
372
- });
373
- it('should migrate pending sends for v<4 checkpoints in list()', async () => {
374
- const saver = index_1.SqliteSaver.fromConnString(':memory:');
375
- const checkpoint0 = {
376
- v: 1,
377
- id: (0, langgraph_checkpoint_1.uuid6)(-1),
378
- ts: '2024-04-19T17:19:07.952Z',
379
- channel_values: {},
380
- channel_versions: {},
381
- versions_seen: {},
382
- };
383
- let config = await saver.put({ configurable: { thread_id: 'thread-1' } }, checkpoint0, {
384
- source: 'loop',
385
- parents: {},
386
- step: 0,
387
- });
388
- await saver.putWrites(config, [
389
- [langgraph_checkpoint_1.TASKS, 'send-1'],
390
- [langgraph_checkpoint_1.TASKS, 'send-2'],
391
- ], 'task-1');
392
- const checkpoint1 = {
393
- v: 1,
394
- id: (0, langgraph_checkpoint_1.uuid6)(0),
395
- ts: '2024-04-20T17:19:07.952Z',
396
- channel_values: {},
397
- channel_versions: {},
398
- versions_seen: {},
399
- };
400
- config = await saver.put({
401
- configurable: {
402
- thread_id: 'thread-1',
403
- checkpoint_id: checkpoint0.id,
404
- },
405
- }, checkpoint1, {
406
- source: 'loop',
407
- parents: { '': checkpoint0.id },
408
- step: 1,
409
- });
410
- const listGenerator = saver.list({
411
- configurable: { thread_id: 'thread-1' },
412
- });
413
- const listTuples = [];
414
- for await (const checkpoint of listGenerator) {
415
- listTuples.push(checkpoint);
416
- }
417
- const checkpoint1Tuple = listTuples.find((t) => t.config.configurable?.checkpoint_id === checkpoint1.id);
418
- expect(checkpoint1Tuple).toBeDefined();
419
- expect(checkpoint1Tuple?.checkpoint.channel_values[langgraph_checkpoint_1.TASKS]).toEqual([
420
- 'send-1',
421
- 'send-2',
422
- ]);
423
- expect(checkpoint1Tuple?.checkpoint.channel_versions[langgraph_checkpoint_1.TASKS]).toBeDefined();
424
- });
425
- });
426
- //# sourceMappingURL=checkpointer.test.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"checkpointer.test.js","sourceRoot":"","sources":["../../src/tests/checkpointer.test.ts"],"names":[],"mappings":"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"}
package/jest.config.js DELETED
@@ -1,6 +0,0 @@
1
- import config from '@ixo/jest-config/nest.js';
2
-
3
- export default {
4
- ...config,
5
- displayName: '@ixo/sqlite-saver',
6
- };