@ixo/sqlite-saver 1.0.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 (35) hide show
  1. package/.eslintrc.js +9 -0
  2. package/.prettierignore +3 -0
  3. package/.prettierrc.js +4 -0
  4. package/.turbo/turbo-build.log +4 -0
  5. package/CHANGELOG.md +25 -0
  6. package/README.md +0 -0
  7. package/dist/index.d.ts +38 -0
  8. package/dist/index.d.ts.map +1 -0
  9. package/dist/index.js +567 -0
  10. package/dist/index.js.map +1 -0
  11. package/dist/migrations/001_add_created_at_to_messages.d.ts +8 -0
  12. package/dist/migrations/001_add_created_at_to_messages.d.ts.map +1 -0
  13. package/dist/migrations/001_add_created_at_to_messages.js +32 -0
  14. package/dist/migrations/001_add_created_at_to_messages.js.map +1 -0
  15. package/dist/tests/agent-with-checkpoiner.test.d.ts +2 -0
  16. package/dist/tests/agent-with-checkpoiner.test.d.ts.map +1 -0
  17. package/dist/tests/agent-with-checkpoiner.test.js +206 -0
  18. package/dist/tests/agent-with-checkpoiner.test.js.map +1 -0
  19. package/dist/tests/checkpointer.test.d.ts +2 -0
  20. package/dist/tests/checkpointer.test.d.ts.map +1 -0
  21. package/dist/tests/checkpointer.test.js +426 -0
  22. package/dist/tests/checkpointer.test.js.map +1 -0
  23. package/dist/utils.d.ts +15 -0
  24. package/dist/utils.d.ts.map +1 -0
  25. package/dist/utils.js +284 -0
  26. package/dist/utils.js.map +1 -0
  27. package/jest.config.js +6 -0
  28. package/package.json +41 -0
  29. package/src/index.ts +929 -0
  30. package/src/migrations/001_add_created_at_to_messages.ts +48 -0
  31. package/src/tests/agent-with-checkpoiner.test.ts +264 -0
  32. package/src/tests/checkpointer.test.ts +628 -0
  33. package/src/utils.ts +358 -0
  34. package/tsconfig.json +11 -0
  35. package/tsconfig.tsbuildinfo +1 -0
package/dist/utils.js ADDED
@@ -0,0 +1,284 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.stringify = stringify;
4
+ exports._default = _default;
5
+ exports.cleanAdditionalKwargs = cleanAdditionalKwargs;
6
+ var LIMIT_REPLACE_NODE = '[...]';
7
+ var CIRCULAR_REPLACE_NODE = '[Circular]';
8
+ var arr = [];
9
+ var replacerStack = [];
10
+ function defaultOptions() {
11
+ return {
12
+ depthLimit: Number.MAX_SAFE_INTEGER,
13
+ edgesLimit: Number.MAX_SAFE_INTEGER,
14
+ };
15
+ }
16
+ function stringify(obj, replacer, spacer, options) {
17
+ if (typeof options === 'undefined') {
18
+ options = defaultOptions();
19
+ }
20
+ decirc(obj, '', 0, [], undefined, 0, options);
21
+ var res;
22
+ try {
23
+ if (replacerStack.length === 0) {
24
+ res = JSON.stringify(obj, replacer, spacer);
25
+ }
26
+ else {
27
+ res = JSON.stringify(obj, replaceGetterValues(replacer), spacer);
28
+ }
29
+ }
30
+ catch (_) {
31
+ return JSON.stringify('[unable to serialize, circular reference is too complex to analyze]');
32
+ }
33
+ finally {
34
+ while (arr.length !== 0) {
35
+ var part = arr.pop();
36
+ if (part.length === 4) {
37
+ Object.defineProperty(part[0], part[1], part[3]);
38
+ }
39
+ else {
40
+ part[0][part[1]] = part[2];
41
+ }
42
+ }
43
+ }
44
+ return res;
45
+ }
46
+ function setReplace(replace, val, k, parent) {
47
+ var propertyDescriptor = Object.getOwnPropertyDescriptor(parent, k);
48
+ if (propertyDescriptor.get !== undefined) {
49
+ if (propertyDescriptor.configurable) {
50
+ Object.defineProperty(parent, k, { value: replace });
51
+ arr.push([parent, k, val, propertyDescriptor]);
52
+ }
53
+ else {
54
+ replacerStack.push([val, k, replace]);
55
+ }
56
+ }
57
+ else {
58
+ parent[k] = replace;
59
+ arr.push([parent, k, val]);
60
+ }
61
+ }
62
+ function decirc(val, k, edgeIndex, stack, parent, depth, options) {
63
+ depth += 1;
64
+ var i;
65
+ if (typeof val === 'object' && val !== null) {
66
+ for (i = 0; i < stack.length; i++) {
67
+ if (stack[i] === val) {
68
+ setReplace(CIRCULAR_REPLACE_NODE, val, k, parent);
69
+ return;
70
+ }
71
+ }
72
+ if (typeof options.depthLimit !== 'undefined' &&
73
+ depth > options.depthLimit) {
74
+ setReplace(LIMIT_REPLACE_NODE, val, k, parent);
75
+ return;
76
+ }
77
+ if (typeof options.edgesLimit !== 'undefined' &&
78
+ edgeIndex + 1 > options.edgesLimit) {
79
+ setReplace(LIMIT_REPLACE_NODE, val, k, parent);
80
+ return;
81
+ }
82
+ stack.push(val);
83
+ if (Array.isArray(val)) {
84
+ for (i = 0; i < val.length; i++) {
85
+ decirc(val[i], i, i, stack, val, depth, options);
86
+ }
87
+ }
88
+ else {
89
+ var keys = Object.keys(val);
90
+ for (i = 0; i < keys.length; i++) {
91
+ var key = keys[i];
92
+ decirc(val[key], key, i, stack, val, depth, options);
93
+ }
94
+ }
95
+ stack.pop();
96
+ }
97
+ }
98
+ function compareFunction(a, b) {
99
+ if (a < b) {
100
+ return -1;
101
+ }
102
+ if (a > b) {
103
+ return 1;
104
+ }
105
+ return 0;
106
+ }
107
+ function deterministicStringify(obj, replacer, spacer, options) {
108
+ if (typeof options === 'undefined') {
109
+ options = defaultOptions();
110
+ }
111
+ var tmp = deterministicDecirc(obj, '', 0, [], undefined, 0, options) || obj;
112
+ var res;
113
+ try {
114
+ if (replacerStack.length === 0) {
115
+ res = JSON.stringify(tmp, replacer, spacer);
116
+ }
117
+ else {
118
+ res = JSON.stringify(tmp, replaceGetterValues(replacer), spacer);
119
+ }
120
+ }
121
+ catch (_) {
122
+ return JSON.stringify('[unable to serialize, circular reference is too complex to analyze]');
123
+ }
124
+ finally {
125
+ while (arr.length !== 0) {
126
+ var part = arr.pop();
127
+ if (part.length === 4) {
128
+ Object.defineProperty(part[0], part[1], part[3]);
129
+ }
130
+ else {
131
+ part[0][part[1]] = part[2];
132
+ }
133
+ }
134
+ }
135
+ return res;
136
+ }
137
+ function deterministicDecirc(val, k, edgeIndex, stack, parent, depth, options) {
138
+ depth += 1;
139
+ var i;
140
+ if (typeof val === 'object' && val !== null) {
141
+ for (i = 0; i < stack.length; i++) {
142
+ if (stack[i] === val) {
143
+ setReplace(CIRCULAR_REPLACE_NODE, val, k, parent);
144
+ return;
145
+ }
146
+ }
147
+ try {
148
+ if (typeof val.toJSON === 'function') {
149
+ return;
150
+ }
151
+ }
152
+ catch (_) {
153
+ return;
154
+ }
155
+ if (typeof options.depthLimit !== 'undefined' &&
156
+ depth > options.depthLimit) {
157
+ setReplace(LIMIT_REPLACE_NODE, val, k, parent);
158
+ return;
159
+ }
160
+ if (typeof options.edgesLimit !== 'undefined' &&
161
+ edgeIndex + 1 > options.edgesLimit) {
162
+ setReplace(LIMIT_REPLACE_NODE, val, k, parent);
163
+ return;
164
+ }
165
+ stack.push(val);
166
+ if (Array.isArray(val)) {
167
+ for (i = 0; i < val.length; i++) {
168
+ deterministicDecirc(val[i], i, i, stack, val, depth, options);
169
+ }
170
+ }
171
+ else {
172
+ var tmp = {};
173
+ var keys = Object.keys(val).sort(compareFunction);
174
+ for (i = 0; i < keys.length; i++) {
175
+ var key = keys[i];
176
+ deterministicDecirc(val[key], key, i, stack, val, depth, options);
177
+ tmp[key] = val[key];
178
+ }
179
+ if (typeof parent !== 'undefined') {
180
+ arr.push([parent, k, val]);
181
+ parent[k] = tmp;
182
+ }
183
+ else {
184
+ return tmp;
185
+ }
186
+ }
187
+ stack.pop();
188
+ }
189
+ }
190
+ function replaceGetterValues(replacer) {
191
+ replacer =
192
+ typeof replacer !== 'undefined'
193
+ ? replacer
194
+ : function (k, v) {
195
+ return v;
196
+ };
197
+ return function (key, val) {
198
+ if (replacerStack.length > 0) {
199
+ for (var i = 0; i < replacerStack.length; i++) {
200
+ var part = replacerStack[i];
201
+ if (part[1] === key && part[0] === val) {
202
+ val = part[2];
203
+ replacerStack.splice(i, 1);
204
+ break;
205
+ }
206
+ }
207
+ }
208
+ return replacer.call(this, key, val);
209
+ };
210
+ }
211
+ function _encodeConstructorArgs(constructor, method, args, kwargs) {
212
+ return {
213
+ lc: 2,
214
+ type: "constructor",
215
+ id: [constructor.name],
216
+ method: method ?? null,
217
+ args: args ?? [],
218
+ kwargs: kwargs ?? {},
219
+ };
220
+ }
221
+ function _default(obj) {
222
+ if (obj === undefined) {
223
+ return {
224
+ lc: 2,
225
+ type: 'undefined',
226
+ };
227
+ }
228
+ else if (obj instanceof Set || obj instanceof Map) {
229
+ return _encodeConstructorArgs(obj.constructor, undefined, [
230
+ Array.from(obj),
231
+ ]);
232
+ }
233
+ else if (obj instanceof RegExp) {
234
+ return _encodeConstructorArgs(RegExp, undefined, [obj.source, obj.flags]);
235
+ }
236
+ else if (obj instanceof Error) {
237
+ return _encodeConstructorArgs(obj.constructor, undefined, [obj.message]);
238
+ }
239
+ else if (obj?.lg_name === 'Send') {
240
+ return {
241
+ node: obj.node,
242
+ args: obj.args,
243
+ };
244
+ }
245
+ else {
246
+ return obj;
247
+ }
248
+ }
249
+ function cleanAdditionalKwargs(additionalKwargs, msgFromMatrixRoom) {
250
+ const rawResponse = additionalKwargs.__raw_response;
251
+ const hasReasoning = rawResponse?.choices?.[0]?.delta?.reasoning;
252
+ const reasoning = hasReasoning
253
+ ? rawResponse.choices[0].delta.reasoning
254
+ : undefined;
255
+ const reasoningDetails = hasReasoning && rawResponse.choices[0].delta.reasoning_details
256
+ ? rawResponse.choices[0].delta.reasoning_details
257
+ : undefined;
258
+ const cleanedKwargs = {
259
+ msgFromMatrixRoom,
260
+ timestamp: new Date().toISOString(),
261
+ oracleName: process.env.ORACLE_NAME || 'IXO Oracle',
262
+ };
263
+ if (reasoning) {
264
+ cleanedKwargs.reasoning = reasoning;
265
+ }
266
+ if (reasoningDetails &&
267
+ Array.isArray(reasoningDetails) &&
268
+ reasoningDetails.length > 0) {
269
+ cleanedKwargs.reasoningDetails = reasoningDetails
270
+ .filter((detail) => {
271
+ return (detail &&
272
+ typeof detail === 'object' &&
273
+ typeof detail.type === 'string' &&
274
+ typeof detail.text === 'string' &&
275
+ detail.text.trim().length > 0);
276
+ })
277
+ .map((detail) => ({
278
+ type: detail.type,
279
+ text: detail.text,
280
+ }));
281
+ }
282
+ return cleanedKwargs;
283
+ }
284
+ //# sourceMappingURL=utils.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"utils.js","sourceRoot":"","sources":["../src/utils.ts"],"names":[],"mappings":"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"}
package/jest.config.js ADDED
@@ -0,0 +1,6 @@
1
+ import config from '@ixo/jest-config/nest.js';
2
+
3
+ export default {
4
+ ...config,
5
+ displayName: '@ixo/sqlite-saver',
6
+ };
package/package.json ADDED
@@ -0,0 +1,41 @@
1
+ {
2
+ "name": "@ixo/sqlite-saver",
3
+ "version": "1.0.4",
4
+ "private": false,
5
+ "publishConfig": {
6
+ "access": "public"
7
+ },
8
+ "main": "dist/index.js",
9
+ "types": "dist/index.d.ts",
10
+ "exports": {
11
+ ".": {
12
+ "default": "./dist/index.js",
13
+ "types": "./dist/index.d.ts",
14
+ "import": "./dist/index.js"
15
+ }
16
+ },
17
+ "devDependencies": {
18
+ "@langchain/langgraph": "1.0.0-alpha.5",
19
+ "@types/better-sqlite3": "^7.6.13",
20
+ "@types/jest": "^29.5.14",
21
+ "@types/node": "^22.10.5",
22
+ "jest": "^29.7.0",
23
+ "langchain": "^1.0.6",
24
+ "ts-jest": "^29.2.5",
25
+ "typescript": "^5.5.4",
26
+ "zod": "^4.1.12",
27
+ "@ixo/eslint-config": "1.0.0",
28
+ "@ixo/typescript-config": "1.0.0",
29
+ "@ixo/jest-config": "0.0.0"
30
+ },
31
+ "dependencies": {
32
+ "@langchain/core": "^1.0.5",
33
+ "@langchain/langgraph-checkpoint": "^1.0.0",
34
+ "better-sqlite3": "^11.10.0",
35
+ "@ixo/logger": "0.0.2"
36
+ },
37
+ "scripts": {
38
+ "build": "tsc",
39
+ "test": "jest"
40
+ }
41
+ }