@defai.digital/sqlite-adapter 13.4.5 → 13.4.8

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.
@@ -27,6 +27,7 @@ export declare const SqliteDeadLetterStoreErrorCodes: {
27
27
  readonly INVALID_ENTRY: "SQLITE_DLQ_INVALID_ENTRY";
28
28
  readonly SERIALIZATION_ERROR: "SQLITE_DLQ_SERIALIZATION_ERROR";
29
29
  readonly INVALID_TABLE_NAME: "SQLITE_DLQ_INVALID_TABLE_NAME";
30
+ readonly ENTRY_NOT_FOUND: "SQLITE_DLQ_ENTRY_NOT_FOUND";
30
31
  };
31
32
  /**
32
33
  * SQLite implementation of DeadLetterStorage
@@ -1 +1 @@
1
- {"version":3,"file":"dead-letter-store.d.ts","sourceRoot":"","sources":["../src/dead-letter-store.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAEH,OAAO,KAAK,EAAE,eAAe,EAAE,gBAAgB,EAAE,MAAM,0BAA0B,CAAC;AAElF,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,8BAA8B,CAAC;AACtE,OAAO,KAAK,QAAQ,MAAM,gBAAgB,CAAC;AAG3C;;GAEG;AACH,qBAAa,0BAA2B,SAAQ,KAAK;aAEjC,IAAI,EAAE,MAAM;aAEZ,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC;gBAFjC,IAAI,EAAE,MAAM,EAC5B,OAAO,EAAE,MAAM,EACC,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,YAAA;CAKpD;AAED;;GAEG;AACH,eAAO,MAAM,+BAA+B;;;;;CAKlC,CAAC;AAEX;;;;;;;GAOG;AACH,qBAAa,uBAAwB,YAAW,iBAAiB;IAC/D,OAAO,CAAC,QAAQ,CAAC,EAAE,CAAoB;IACvC,OAAO,CAAC,QAAQ,CAAC,SAAS,CAAS;gBAEvB,EAAE,EAAE,QAAQ,CAAC,QAAQ,EAAE,SAAS,SAAwB;IAapE;;OAEG;IACH,OAAO,CAAC,UAAU;IA2ClB;;;OAGG;IACG,GAAG,CAAC,KAAK,EAAE,eAAe,GAAG,OAAO,CAAC,IAAI,CAAC;IAuChD;;OAEG;IACG,GAAG,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,eAAe,GAAG,IAAI,CAAC;IAsB3D;;OAEG;IACG,IAAI,CAAC,MAAM,CAAC,EAAE,gBAAgB,GAAG,OAAO,CAAC,eAAe,EAAE,CAAC;IA+BjE;;;OAGG;IACG,MAAM,CAAC,KAAK,EAAE,eAAe,GAAG,OAAO,CAAC,IAAI,CAAC;IAiDnD;;OAEG;IACG,MAAM,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;IAiB/C;;OAEG;IACG,aAAa,IAAI,OAAO,CAAC,MAAM,CAAC,gBAAgB,EAAE,MAAM,CAAC,CAAC;IAkChE;;OAEG;IACH,KAAK,IAAI,IAAI;CAGd;AA+ED;;GAEG;AACH,wBAAgB,6BAA6B,CAC3C,EAAE,EAAE,QAAQ,CAAC,QAAQ,EACrB,SAAS,CAAC,EAAE,MAAM,GACjB,uBAAuB,CAEzB"}
1
+ {"version":3,"file":"dead-letter-store.d.ts","sourceRoot":"","sources":["../src/dead-letter-store.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAEH,OAAO,KAAK,EAAE,eAAe,EAAE,gBAAgB,EAAE,MAAM,0BAA0B,CAAC;AAElF,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,8BAA8B,CAAC;AACtE,OAAO,KAAK,QAAQ,MAAM,gBAAgB,CAAC;AAG3C;;GAEG;AACH,qBAAa,0BAA2B,SAAQ,KAAK;aAEjC,IAAI,EAAE,MAAM;aAEZ,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC;gBAFjC,IAAI,EAAE,MAAM,EAC5B,OAAO,EAAE,MAAM,EACC,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,YAAA;CAKpD;AAED;;GAEG;AACH,eAAO,MAAM,+BAA+B;;;;;;CAMlC,CAAC;AAEX;;;;;;;GAOG;AACH,qBAAa,uBAAwB,YAAW,iBAAiB;IAC/D,OAAO,CAAC,QAAQ,CAAC,EAAE,CAAoB;IACvC,OAAO,CAAC,QAAQ,CAAC,SAAS,CAAS;gBAEvB,EAAE,EAAE,QAAQ,CAAC,QAAQ,EAAE,SAAS,SAAwB;IAapE;;OAEG;IACH,OAAO,CAAC,UAAU;IA2ClB;;;OAGG;IACG,GAAG,CAAC,KAAK,EAAE,eAAe,GAAG,OAAO,CAAC,IAAI,CAAC;IAuChD;;OAEG;IACG,GAAG,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,eAAe,GAAG,IAAI,CAAC;IAsB3D;;OAEG;IACG,IAAI,CAAC,MAAM,CAAC,EAAE,gBAAgB,GAAG,OAAO,CAAC,eAAe,EAAE,CAAC;IA+BjE;;;OAGG;IACG,MAAM,CAAC,KAAK,EAAE,eAAe,GAAG,OAAO,CAAC,IAAI,CAAC;IA8DnD;;OAEG;IACG,MAAM,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;IAiB/C;;OAEG;IACG,aAAa,IAAI,OAAO,CAAC,MAAM,CAAC,gBAAgB,EAAE,MAAM,CAAC,CAAC;IAkChE;;OAEG;IACH,KAAK,IAAI,IAAI;CAGd;AA8FD;;GAEG;AACH,wBAAgB,6BAA6B,CAC3C,EAAE,EAAE,QAAQ,CAAC,QAAQ,EACrB,SAAS,CAAC,EAAE,MAAM,GACjB,uBAAuB,CAEzB"}
@@ -8,7 +8,7 @@
8
8
  * - INV-DLQ-002: Retries respect maxRetries limit
9
9
  * - INV-DLQ-003: Exhausted entries marked appropriately
10
10
  */
11
- import { getErrorMessage } from '@defai.digital/contracts';
11
+ import { getErrorMessage, DeadLetterStatusSchema } from '@defai.digital/contracts';
12
12
  import { isValidTableName, invalidTableNameMessage } from './validation.js';
13
13
  /**
14
14
  * Error thrown by SQLite dead letter store operations
@@ -31,6 +31,7 @@ export const SqliteDeadLetterStoreErrorCodes = {
31
31
  INVALID_ENTRY: 'SQLITE_DLQ_INVALID_ENTRY',
32
32
  SERIALIZATION_ERROR: 'SQLITE_DLQ_SERIALIZATION_ERROR',
33
33
  INVALID_TABLE_NAME: 'SQLITE_DLQ_INVALID_TABLE_NAME',
34
+ ENTRY_NOT_FOUND: 'SQLITE_DLQ_ENTRY_NOT_FOUND',
34
35
  };
35
36
  /**
36
37
  * SQLite implementation of DeadLetterStorage
@@ -188,9 +189,17 @@ export class SqliteDeadLetterStorage {
188
189
  resolved_at = ?
189
190
  WHERE entry_id = ?
190
191
  `);
191
- stmt.run(entry.originalEventId, entry.eventType, entry.eventPayload !== undefined ? JSON.stringify(entry.eventPayload) : null, JSON.stringify(entry.error), entry.retryCount, entry.maxRetries, entry.lastRetryAt ?? null, entry.nextRetryAt ?? null, entry.status, entry.correlationId ?? null, entry.source, entry.context !== undefined ? JSON.stringify(entry.context) : null, entry.resolutionNotes ?? null, entry.resolvedBy ?? null, entry.resolvedAt ?? null, entry.entryId);
192
+ const result = stmt.run(entry.originalEventId, entry.eventType, entry.eventPayload !== undefined ? JSON.stringify(entry.eventPayload) : null, JSON.stringify(entry.error), entry.retryCount, entry.maxRetries, entry.lastRetryAt ?? null, entry.nextRetryAt ?? null, entry.status, entry.correlationId ?? null, entry.source, entry.context !== undefined ? JSON.stringify(entry.context) : null, entry.resolutionNotes ?? null, entry.resolvedBy ?? null, entry.resolvedAt ?? null, entry.entryId);
193
+ // Verify that the entry was actually updated
194
+ if (result.changes === 0) {
195
+ throw new SqliteDeadLetterStoreError(SqliteDeadLetterStoreErrorCodes.ENTRY_NOT_FOUND, `DLQ entry not found: ${entry.entryId}`, { entryId: entry.entryId });
196
+ }
192
197
  }
193
198
  catch (error) {
199
+ // Re-throw our own errors without wrapping
200
+ if (error instanceof SqliteDeadLetterStoreError) {
201
+ throw error;
202
+ }
194
203
  throw new SqliteDeadLetterStoreError(SqliteDeadLetterStoreErrorCodes.DATABASE_ERROR, `Failed to update DLQ entry: ${getErrorMessage(error)}`, { entryId: entry.entryId });
195
204
  }
196
205
  }
@@ -257,6 +266,16 @@ function safeJsonParse(json, fieldName, entryId) {
257
266
  throw new SqliteDeadLetterStoreError(SqliteDeadLetterStoreErrorCodes.SERIALIZATION_ERROR, `Failed to parse ${fieldName} for entry ${entryId}: ${getErrorMessage(error, 'Invalid JSON')}`, { entryId, fieldName });
258
267
  }
259
268
  }
269
+ /**
270
+ * Validates status value from database
271
+ */
272
+ function validateStatus(status, entryId) {
273
+ const result = DeadLetterStatusSchema.safeParse(status);
274
+ if (!result.success) {
275
+ throw new SqliteDeadLetterStoreError(SqliteDeadLetterStoreErrorCodes.INVALID_ENTRY, `Invalid status value in database for entry ${entryId}: ${status}`, { entryId, status, validValues: DeadLetterStatusSchema.options });
276
+ }
277
+ return result.data;
278
+ }
260
279
  function rowToDeadLetterEntry(row) {
261
280
  const entry = {
262
281
  entryId: row.entry_id,
@@ -266,7 +285,7 @@ function rowToDeadLetterEntry(row) {
266
285
  error: safeJsonParse(row.error, 'error', row.entry_id),
267
286
  retryCount: row.retry_count,
268
287
  maxRetries: row.max_retries,
269
- status: row.status,
288
+ status: validateStatus(row.status, row.entry_id),
270
289
  createdAt: row.created_at,
271
290
  source: row.source,
272
291
  };
@@ -1 +1 @@
1
- {"version":3,"file":"dead-letter-store.js","sourceRoot":"","sources":["../src/dead-letter-store.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"dead-letter-store.js","sourceRoot":"","sources":["../src/dead-letter-store.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAGH,OAAO,EAAE,eAAe,EAAE,sBAAsB,EAAE,MAAM,0BAA0B,CAAC;AAGnF,OAAO,EAAE,gBAAgB,EAAE,uBAAuB,EAAE,MAAM,iBAAiB,CAAC;AAE5E;;GAEG;AACH,MAAM,OAAO,0BAA2B,SAAQ,KAAK;IAEjC;IAEA;IAHlB,YACkB,IAAY,EAC5B,OAAe,EACC,OAAiC;QAEjD,KAAK,CAAC,OAAO,CAAC,CAAC;QAJC,SAAI,GAAJ,IAAI,CAAQ;QAEZ,YAAO,GAAP,OAAO,CAA0B;QAGjD,IAAI,CAAC,IAAI,GAAG,4BAA4B,CAAC;IAC3C,CAAC;CACF;AAED;;GAEG;AACH,MAAM,CAAC,MAAM,+BAA+B,GAAG;IAC7C,cAAc,EAAE,2BAA2B;IAC3C,aAAa,EAAE,0BAA0B;IACzC,mBAAmB,EAAE,gCAAgC;IACrD,kBAAkB,EAAE,+BAA+B;IACnD,eAAe,EAAE,4BAA4B;CACrC,CAAC;AAEX;;;;;;;GAOG;AACH,MAAM,OAAO,uBAAuB;IACjB,EAAE,CAAoB;IACtB,SAAS,CAAS;IAEnC,YAAY,EAAqB,EAAE,SAAS,GAAG,qBAAqB;QAClE,+CAA+C;QAC/C,IAAI,CAAC,gBAAgB,CAAC,SAAS,CAAC,EAAE,CAAC;YACjC,MAAM,IAAI,0BAA0B,CAClC,+BAA+B,CAAC,kBAAkB,EAClD,uBAAuB,CAAC,SAAS,CAAC,CACnC,CAAC;QACJ,CAAC;QACD,IAAI,CAAC,EAAE,GAAG,EAAE,CAAC;QACb,IAAI,CAAC,SAAS,GAAG,SAAS,CAAC;QAC3B,IAAI,CAAC,UAAU,EAAE,CAAC;IACpB,CAAC;IAED;;OAEG;IACK,UAAU;QAChB,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC;mCACkB,IAAI,CAAC,SAAS;;;;;;;;;;;;;;;;;;;;;uCAqBV,IAAI,CAAC,SAAS;aACxC,IAAI,CAAC,SAAS;;uCAEY,IAAI,CAAC,SAAS;aACxC,IAAI,CAAC,SAAS;;uCAEY,IAAI,CAAC,SAAS;aACxC,IAAI,CAAC,SAAS;;uCAEY,IAAI,CAAC,SAAS;aACxC,IAAI,CAAC,SAAS;;uCAEY,IAAI,CAAC,SAAS;aACxC,IAAI,CAAC,SAAS;;uCAEY,IAAI,CAAC,SAAS;aACxC,IAAI,CAAC,SAAS;KACtB,CAAC,CAAC;IACL,CAAC;IAED;;;OAGG;IACH,KAAK,CAAC,GAAG,CAAC,KAAsB;QAC9B,IAAI,CAAC;YACH,MAAM,IAAI,GAAG,IAAI,CAAC,EAAE,CAAC,OAAO,CAAC;sBACb,IAAI,CAAC,SAAS;;;;;;OAM7B,CAAC,CAAC;YAEH,IAAI,CAAC,GAAG,CACN,KAAK,CAAC,OAAO,EACb,KAAK,CAAC,eAAe,EACrB,KAAK,CAAC,SAAS,EACf,KAAK,CAAC,YAAY,KAAK,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC,IAAI,EAC5E,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,KAAK,CAAC,EAC3B,KAAK,CAAC,UAAU,EAChB,KAAK,CAAC,UAAU,EAChB,KAAK,CAAC,WAAW,IAAI,IAAI,EACzB,KAAK,CAAC,WAAW,IAAI,IAAI,EACzB,KAAK,CAAC,MAAM,EACZ,KAAK,CAAC,SAAS,EACf,KAAK,CAAC,aAAa,IAAI,IAAI,EAC3B,KAAK,CAAC,MAAM,EACZ,KAAK,CAAC,OAAO,KAAK,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,IAAI,EAClE,KAAK,CAAC,eAAe,IAAI,IAAI,EAC7B,KAAK,CAAC,UAAU,IAAI,IAAI,EACxB,KAAK,CAAC,UAAU,IAAI,IAAI,CACzB,CAAC;QACJ,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,MAAM,IAAI,0BAA0B,CAClC,+BAA+B,CAAC,cAAc,EAC9C,4BAA4B,eAAe,CAAC,KAAK,CAAC,EAAE,EACpD,EAAE,OAAO,EAAE,KAAK,CAAC,OAAO,EAAE,CAC3B,CAAC;QACJ,CAAC;IACH,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,GAAG,CAAC,OAAe;QACvB,IAAI,CAAC;YACH,MAAM,IAAI,GAAG,IAAI,CAAC,EAAE,CAAC,OAAO,CAAC;;;;;eAKpB,IAAI,CAAC,SAAS;;OAEtB,CAAC,CAAC;YAEH,MAAM,GAAG,GAAG,IAAI,CAAC,GAAG,CAAC,OAAO,CAA8B,CAAC;YAC3D,OAAO,GAAG,KAAK,SAAS,CAAC,CAAC,CAAC,oBAAoB,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;QAC9D,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,MAAM,IAAI,0BAA0B,CAClC,+BAA+B,CAAC,cAAc,EAC9C,4BAA4B,eAAe,CAAC,KAAK,CAAC,EAAE,EACpD,EAAE,OAAO,EAAE,CACZ,CAAC;QACJ,CAAC;IACH,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,IAAI,CAAC,MAAyB;QAClC,IAAI,CAAC;YACH,IAAI,GAAG,GAAG;;;;;eAKD,IAAI,CAAC,SAAS;OACtB,CAAC;YAEF,MAAM,MAAM,GAAa,EAAE,CAAC;YAE5B,IAAI,MAAM,KAAK,SAAS,EAAE,CAAC;gBACzB,GAAG,IAAI,mBAAmB,CAAC;gBAC3B,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;YACtB,CAAC;YAED,GAAG,IAAI,2BAA2B,CAAC;YAEnC,MAAM,IAAI,GAAG,IAAI,CAAC,EAAE,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC;YAClC,MAAM,IAAI,GAAG,CAAC,MAAM,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG,MAAM,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,CAAoB,CAAC;YACvF,OAAO,IAAI,CAAC,GAAG,CAAC,oBAAoB,CAAC,CAAC;QACxC,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,MAAM,IAAI,0BAA0B,CAClC,+BAA+B,CAAC,cAAc,EAC9C,+BAA+B,eAAe,CAAC,KAAK,CAAC,EAAE,EACvD,EAAE,MAAM,EAAE,CACX,CAAC;QACJ,CAAC;IACH,CAAC;IAED;;;OAGG;IACH,KAAK,CAAC,MAAM,CAAC,KAAsB;QACjC,IAAI,CAAC;YACH,MAAM,IAAI,GAAG,IAAI,CAAC,EAAE,CAAC,OAAO,CAAC;iBAClB,IAAI,CAAC,SAAS;;;;;;;;;;;;;;;;;OAiBxB,CAAC,CAAC;YAEH,MAAM,MAAM,GAAG,IAAI,CAAC,GAAG,CACrB,KAAK,CAAC,eAAe,EACrB,KAAK,CAAC,SAAS,EACf,KAAK,CAAC,YAAY,KAAK,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC,IAAI,EAC5E,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,KAAK,CAAC,EAC3B,KAAK,CAAC,UAAU,EAChB,KAAK,CAAC,UAAU,EAChB,KAAK,CAAC,WAAW,IAAI,IAAI,EACzB,KAAK,CAAC,WAAW,IAAI,IAAI,EACzB,KAAK,CAAC,MAAM,EACZ,KAAK,CAAC,aAAa,IAAI,IAAI,EAC3B,KAAK,CAAC,MAAM,EACZ,KAAK,CAAC,OAAO,KAAK,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,IAAI,EAClE,KAAK,CAAC,eAAe,IAAI,IAAI,EAC7B,KAAK,CAAC,UAAU,IAAI,IAAI,EACxB,KAAK,CAAC,UAAU,IAAI,IAAI,EACxB,KAAK,CAAC,OAAO,CACd,CAAC;YAEF,6CAA6C;YAC7C,IAAI,MAAM,CAAC,OAAO,KAAK,CAAC,EAAE,CAAC;gBACzB,MAAM,IAAI,0BAA0B,CAClC,+BAA+B,CAAC,eAAe,EAC/C,wBAAwB,KAAK,CAAC,OAAO,EAAE,EACvC,EAAE,OAAO,EAAE,KAAK,CAAC,OAAO,EAAE,CAC3B,CAAC;YACJ,CAAC;QACH,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,2CAA2C;YAC3C,IAAI,KAAK,YAAY,0BAA0B,EAAE,CAAC;gBAChD,MAAM,KAAK,CAAC;YACd,CAAC;YACD,MAAM,IAAI,0BAA0B,CAClC,+BAA+B,CAAC,cAAc,EAC9C,+BAA+B,eAAe,CAAC,KAAK,CAAC,EAAE,EACvD,EAAE,OAAO,EAAE,KAAK,CAAC,OAAO,EAAE,CAC3B,CAAC;QACJ,CAAC;IACH,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,MAAM,CAAC,OAAe;QAC1B,IAAI,CAAC;YACH,MAAM,IAAI,GAAG,IAAI,CAAC,EAAE,CAAC,OAAO,CAAC;sBACb,IAAI,CAAC,SAAS;OAC7B,CAAC,CAAC;YAEH,MAAM,MAAM,GAAG,IAAI,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;YACjC,OAAO,MAAM,CAAC,OAAO,GAAG,CAAC,CAAC;QAC5B,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,MAAM,IAAI,0BAA0B,CAClC,+BAA+B,CAAC,cAAc,EAC9C,+BAA+B,eAAe,CAAC,KAAK,CAAC,EAAE,EACvD,EAAE,OAAO,EAAE,CACZ,CAAC;QACJ,CAAC;IACH,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,aAAa;QACjB,IAAI,CAAC;YACH,MAAM,IAAI,GAAG,IAAI,CAAC,EAAE,CAAC,OAAO,CAAC;;eAEpB,IAAI,CAAC,SAAS;;OAEtB,CAAC,CAAC;YAEH,MAAM,IAAI,GAAG,IAAI,CAAC,GAAG,EAAyC,CAAC;YAE/D,MAAM,MAAM,GAAqC;gBAC/C,OAAO,EAAE,CAAC;gBACV,QAAQ,EAAE,CAAC;gBACX,SAAS,EAAE,CAAC;gBACZ,QAAQ,EAAE,CAAC;gBACX,SAAS,EAAE,CAAC;aACb,CAAC;YAEF,KAAK,MAAM,GAAG,IAAI,IAAI,EAAE,CAAC;gBACvB,MAAM,MAAM,GAAG,GAAG,CAAC,MAA0B,CAAC;gBAC9C,IAAI,MAAM,IAAI,MAAM,EAAE,CAAC;oBACrB,MAAM,CAAC,MAAM,CAAC,GAAG,GAAG,CAAC,KAAK,CAAC;gBAC7B,CAAC;YACH,CAAC;YAED,OAAO,MAAM,CAAC;QAChB,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,MAAM,IAAI,0BAA0B,CAClC,+BAA+B,CAAC,cAAc,EAC9C,0CAA0C,eAAe,CAAC,KAAK,CAAC,EAAE,CACnE,CAAC;QACJ,CAAC;IACH,CAAC;IAED;;OAEG;IACH,KAAK;QACH,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,eAAe,IAAI,CAAC,SAAS,EAAE,CAAC,CAAC;IAChD,CAAC;CACF;AAyBD;;GAEG;AACH,SAAS,aAAa,CAAI,IAAY,EAAE,SAAiB,EAAE,OAAe;IACxE,IAAI,CAAC;QACH,OAAO,IAAI,CAAC,KAAK,CAAC,IAAI,CAAM,CAAC;IAC/B,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,MAAM,IAAI,0BAA0B,CAClC,+BAA+B,CAAC,mBAAmB,EACnD,mBAAmB,SAAS,cAAc,OAAO,KAAK,eAAe,CAAC,KAAK,EAAE,cAAc,CAAC,EAAE,EAC9F,EAAE,OAAO,EAAE,SAAS,EAAE,CACvB,CAAC;IACJ,CAAC;AACH,CAAC;AAED;;GAEG;AACH,SAAS,cAAc,CAAC,MAAc,EAAE,OAAe;IACrD,MAAM,MAAM,GAAG,sBAAsB,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC;IACxD,IAAI,CAAC,MAAM,CAAC,OAAO,EAAE,CAAC;QACpB,MAAM,IAAI,0BAA0B,CAClC,+BAA+B,CAAC,aAAa,EAC7C,8CAA8C,OAAO,KAAK,MAAM,EAAE,EAClE,EAAE,OAAO,EAAE,MAAM,EAAE,WAAW,EAAE,sBAAsB,CAAC,OAAO,EAAE,CACjE,CAAC;IACJ,CAAC;IACD,OAAO,MAAM,CAAC,IAAI,CAAC;AACrB,CAAC;AAED,SAAS,oBAAoB,CAAC,GAAkB;IAC9C,MAAM,KAAK,GAAoB;QAC7B,OAAO,EAAE,GAAG,CAAC,QAAQ;QACrB,eAAe,EAAE,GAAG,CAAC,iBAAiB;QACtC,SAAS,EAAE,GAAG,CAAC,UAAU;QACzB,YAAY,EAAE,GAAG,CAAC,aAAa,KAAK,IAAI,CAAC,CAAC,CAAC,aAAa,CAAU,GAAG,CAAC,aAAa,EAAE,cAAc,EAAE,GAAG,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,SAAS;QAC9H,KAAK,EAAE,aAAa,CAA4E,GAAG,CAAC,KAAK,EAAE,OAAO,EAAE,GAAG,CAAC,QAAQ,CAAC;QACjI,UAAU,EAAE,GAAG,CAAC,WAAW;QAC3B,UAAU,EAAE,GAAG,CAAC,WAAW;QAC3B,MAAM,EAAE,cAAc,CAAC,GAAG,CAAC,MAAM,EAAE,GAAG,CAAC,QAAQ,CAAC;QAChD,SAAS,EAAE,GAAG,CAAC,UAAU;QACzB,MAAM,EAAE,GAAG,CAAC,MAAM;KACnB,CAAC;IAEF,IAAI,GAAG,CAAC,aAAa,KAAK,IAAI,EAAE,CAAC;QAC/B,KAAK,CAAC,WAAW,GAAG,GAAG,CAAC,aAAa,CAAC;IACxC,CAAC;IACD,IAAI,GAAG,CAAC,aAAa,KAAK,IAAI,EAAE,CAAC;QAC/B,KAAK,CAAC,WAAW,GAAG,GAAG,CAAC,aAAa,CAAC;IACxC,CAAC;IACD,IAAI,GAAG,CAAC,cAAc,KAAK,IAAI,EAAE,CAAC;QAChC,KAAK,CAAC,aAAa,GAAG,GAAG,CAAC,cAAc,CAAC;IAC3C,CAAC;IACD,IAAI,GAAG,CAAC,OAAO,KAAK,IAAI,EAAE,CAAC;QACzB,KAAK,CAAC,OAAO,GAAG,aAAa,CAA0B,GAAG,CAAC,OAAO,EAAE,SAAS,EAAE,GAAG,CAAC,QAAQ,CAAC,CAAC;IAC/F,CAAC;IACD,IAAI,GAAG,CAAC,gBAAgB,KAAK,IAAI,EAAE,CAAC;QAClC,KAAK,CAAC,eAAe,GAAG,GAAG,CAAC,gBAAgB,CAAC;IAC/C,CAAC;IACD,IAAI,GAAG,CAAC,WAAW,KAAK,IAAI,EAAE,CAAC;QAC7B,KAAK,CAAC,UAAU,GAAG,GAAG,CAAC,WAAW,CAAC;IACrC,CAAC;IACD,IAAI,GAAG,CAAC,WAAW,KAAK,IAAI,EAAE,CAAC;QAC7B,KAAK,CAAC,UAAU,GAAG,GAAG,CAAC,WAAW,CAAC;IACrC,CAAC;IAED,OAAO,KAAK,CAAC;AACf,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,6BAA6B,CAC3C,EAAqB,EACrB,SAAkB;IAElB,OAAO,IAAI,uBAAuB,CAAC,EAAE,EAAE,SAAS,CAAC,CAAC;AACpD,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"event-store.d.ts","sourceRoot":"","sources":["../src/event-store.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAE,eAAe,EAAE,MAAM,0BAA0B,CAAC;AAE7E,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,8BAA8B,CAAC;AAC/D,OAAO,KAAK,QAAQ,MAAM,gBAAgB,CAAC;AAG3C;;GAEG;AACH,qBAAa,qBAAsB,SAAQ,KAAK;aAE5B,IAAI,EAAE,MAAM;aAEZ,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC;gBAFjC,IAAI,EAAE,MAAM,EAC5B,OAAO,EAAE,MAAM,EACC,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,YAAA;CAKpD;AAED;;GAEG;AACH,eAAO,MAAM,0BAA0B;;;;;CAK7B,CAAC;AAEX;;;;;GAKG;AACH,qBAAa,gBAAiB,YAAW,UAAU;IACjD,OAAO,CAAC,QAAQ,CAAC,EAAE,CAAoB;IACvC,OAAO,CAAC,QAAQ,CAAC,SAAS,CAAS;gBAEvB,EAAE,EAAE,QAAQ,CAAC,QAAQ,EAAE,SAAS,SAAkB;IAa9D;;OAEG;IACH,OAAO,CAAC,UAAU;IA4BlB;;;;OAIG;IACG,MAAM,CAAC,KAAK,EAAE,WAAW,GAAG,OAAO,CAAC,IAAI,CAAC;IAwE/C;;;OAGG;IACH,SAAS,CAAC,WAAW,EAAE,MAAM,GAAG,OAAO,CAAC,WAAW,EAAE,CAAC;IAYtD;;OAEG;IACH,eAAe,CAAC,IAAI,EAAE,eAAe,GAAG,OAAO,CAAC,WAAW,EAAE,CAAC;IAY9D;;;OAGG;IACH,sBAAsB,CAAC,aAAa,EAAE,MAAM,GAAG,OAAO,CAAC,WAAW,EAAE,CAAC;IAYrE;;OAEG;IACH,UAAU,CAAC,WAAW,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;IAgBhD;;OAEG;IACH,KAAK,IAAI,IAAI;CAGd;AAsDD;;GAEG;AACH,wBAAgB,sBAAsB,CACpC,EAAE,EAAE,QAAQ,CAAC,QAAQ,EACrB,SAAS,CAAC,EAAE,MAAM,GACjB,gBAAgB,CAElB"}
1
+ {"version":3,"file":"event-store.d.ts","sourceRoot":"","sources":["../src/event-store.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAE,eAAe,EAAE,MAAM,0BAA0B,CAAC;AAE7E,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,8BAA8B,CAAC;AAC/D,OAAO,KAAK,QAAQ,MAAM,gBAAgB,CAAC;AAG3C;;GAEG;AACH,qBAAa,qBAAsB,SAAQ,KAAK;aAE5B,IAAI,EAAE,MAAM;aAEZ,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC;gBAFjC,IAAI,EAAE,MAAM,EAC5B,OAAO,EAAE,MAAM,EACC,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,YAAA;CAKpD;AAED;;GAEG;AACH,eAAO,MAAM,0BAA0B;;;;;CAK7B,CAAC;AAEX;;;;;GAKG;AACH,qBAAa,gBAAiB,YAAW,UAAU;IACjD,OAAO,CAAC,QAAQ,CAAC,EAAE,CAAoB;IACvC,OAAO,CAAC,QAAQ,CAAC,SAAS,CAAS;gBAEvB,EAAE,EAAE,QAAQ,CAAC,QAAQ,EAAE,SAAS,SAAkB;IAa9D;;OAEG;IACH,OAAO,CAAC,UAAU;IA4BlB;;;;OAIG;IACG,MAAM,CAAC,KAAK,EAAE,WAAW,GAAG,OAAO,CAAC,IAAI,CAAC;IAwE/C;;;OAGG;IACH,SAAS,CAAC,WAAW,EAAE,MAAM,GAAG,OAAO,CAAC,WAAW,EAAE,CAAC;IAYtD;;OAEG;IACH,eAAe,CAAC,IAAI,EAAE,eAAe,GAAG,OAAO,CAAC,WAAW,EAAE,CAAC;IAY9D;;;OAGG;IACH,sBAAsB,CAAC,aAAa,EAAE,MAAM,GAAG,OAAO,CAAC,WAAW,EAAE,CAAC;IAYrE;;OAEG;IACH,UAAU,CAAC,WAAW,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;IAgBhD;;OAEG;IACH,KAAK,IAAI,IAAI;CAGd;AAqED;;GAEG;AACH,wBAAgB,sBAAsB,CACpC,EAAE,EAAE,QAAQ,CAAC,QAAQ,EACrB,SAAS,CAAC,EAAE,MAAM,GACjB,gBAAgB,CAElB"}
@@ -1,4 +1,4 @@
1
- import { getErrorMessage } from '@defai.digital/contracts';
1
+ import { getErrorMessage, MemoryEventTypeSchema } from '@defai.digital/contracts';
2
2
  import { isValidTableName, invalidTableNameMessage } from './validation.js';
3
3
  /**
4
4
  * Error thrown by SQLite event store operations
@@ -192,13 +192,23 @@ function safeJsonParse(json, fieldName, eventId) {
192
192
  throw new SqliteEventStoreError(SqliteEventStoreErrorCodes.DATABASE_ERROR, `Failed to parse ${fieldName} for event ${eventId}: ${getErrorMessage(error, 'Invalid JSON')}`, { eventId, fieldName });
193
193
  }
194
194
  }
195
+ /**
196
+ * Validates event type value from database
197
+ */
198
+ function validateEventType(type, eventId) {
199
+ const result = MemoryEventTypeSchema.safeParse(type);
200
+ if (!result.success) {
201
+ throw new SqliteEventStoreError(SqliteEventStoreErrorCodes.INVALID_EVENT, `Invalid event type in database for event ${eventId}: ${type}`, { eventId, type, validValues: MemoryEventTypeSchema.options });
202
+ }
203
+ return result.data;
204
+ }
195
205
  /**
196
206
  * Converts a database row to a MemoryEvent
197
207
  */
198
208
  function rowToEvent(row) {
199
209
  const event = {
200
210
  eventId: row.event_id,
201
- type: row.type,
211
+ type: validateEventType(row.type, row.event_id),
202
212
  timestamp: row.timestamp,
203
213
  payload: safeJsonParse(row.payload, 'payload', row.event_id),
204
214
  };
@@ -1 +1 @@
1
- {"version":3,"file":"event-store.js","sourceRoot":"","sources":["../src/event-store.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"event-store.js","sourceRoot":"","sources":["../src/event-store.ts"],"names":[],"mappings":"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"}
package/dist/index.d.ts CHANGED
@@ -4,4 +4,5 @@ export { SQLiteFTSStore, FTSStoreError, FTSStoreErrorCodes, createSQLiteFTSStore
4
4
  export { SqliteCheckpointStorage, SqliteCheckpointStoreError, SqliteCheckpointStoreErrorCodes, createSqliteCheckpointStorage, } from './checkpoint-store.js';
5
5
  export { SqliteDeadLetterStorage, SqliteDeadLetterStoreError, SqliteDeadLetterStoreErrorCodes, createSqliteDeadLetterStorage, } from './dead-letter-store.js';
6
6
  export { SqliteSemanticStore, SemanticStoreError, SemanticStoreErrorCodes, createSqliteSemanticStore, } from './semantic-store.js';
7
+ export { SqliteSessionStore, SqliteSessionStoreError, SqliteSessionStoreErrorCodes, createSqliteSessionStore, } from './session-store.js';
7
8
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,gBAAgB,EAChB,qBAAqB,EACrB,0BAA0B,EAC1B,sBAAsB,GACvB,MAAM,kBAAkB,CAAC;AAE1B,OAAO,EACL,gBAAgB,EAChB,qBAAqB,EACrB,0BAA0B,EAC1B,sBAAsB,GACvB,MAAM,kBAAkB,CAAC;AAE1B,OAAO,EACL,cAAc,EACd,aAAa,EACb,kBAAkB,EAClB,oBAAoB,EACpB,KAAK,SAAS,EACd,KAAK,gBAAgB,EACrB,KAAK,OAAO,GACb,MAAM,gBAAgB,CAAC;AAExB,OAAO,EACL,uBAAuB,EACvB,0BAA0B,EAC1B,+BAA+B,EAC/B,6BAA6B,GAC9B,MAAM,uBAAuB,CAAC;AAE/B,OAAO,EACL,uBAAuB,EACvB,0BAA0B,EAC1B,+BAA+B,EAC/B,6BAA6B,GAC9B,MAAM,wBAAwB,CAAC;AAEhC,OAAO,EACL,mBAAmB,EACnB,kBAAkB,EAClB,uBAAuB,EACvB,yBAAyB,GAC1B,MAAM,qBAAqB,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,gBAAgB,EAChB,qBAAqB,EACrB,0BAA0B,EAC1B,sBAAsB,GACvB,MAAM,kBAAkB,CAAC;AAE1B,OAAO,EACL,gBAAgB,EAChB,qBAAqB,EACrB,0BAA0B,EAC1B,sBAAsB,GACvB,MAAM,kBAAkB,CAAC;AAE1B,OAAO,EACL,cAAc,EACd,aAAa,EACb,kBAAkB,EAClB,oBAAoB,EACpB,KAAK,SAAS,EACd,KAAK,gBAAgB,EACrB,KAAK,OAAO,GACb,MAAM,gBAAgB,CAAC;AAExB,OAAO,EACL,uBAAuB,EACvB,0BAA0B,EAC1B,+BAA+B,EAC/B,6BAA6B,GAC9B,MAAM,uBAAuB,CAAC;AAE/B,OAAO,EACL,uBAAuB,EACvB,0BAA0B,EAC1B,+BAA+B,EAC/B,6BAA6B,GAC9B,MAAM,wBAAwB,CAAC;AAEhC,OAAO,EACL,mBAAmB,EACnB,kBAAkB,EAClB,uBAAuB,EACvB,yBAAyB,GAC1B,MAAM,qBAAqB,CAAC;AAE7B,OAAO,EACL,kBAAkB,EAClB,uBAAuB,EACvB,4BAA4B,EAC5B,wBAAwB,GACzB,MAAM,oBAAoB,CAAC"}
package/dist/index.js CHANGED
@@ -4,4 +4,5 @@ export { SQLiteFTSStore, FTSStoreError, FTSStoreErrorCodes, createSQLiteFTSStore
4
4
  export { SqliteCheckpointStorage, SqliteCheckpointStoreError, SqliteCheckpointStoreErrorCodes, createSqliteCheckpointStorage, } from './checkpoint-store.js';
5
5
  export { SqliteDeadLetterStorage, SqliteDeadLetterStoreError, SqliteDeadLetterStoreErrorCodes, createSqliteDeadLetterStorage, } from './dead-letter-store.js';
6
6
  export { SqliteSemanticStore, SemanticStoreError, SemanticStoreErrorCodes, createSqliteSemanticStore, } from './semantic-store.js';
7
+ export { SqliteSessionStore, SqliteSessionStoreError, SqliteSessionStoreErrorCodes, createSqliteSessionStore, } from './session-store.js';
7
8
  //# sourceMappingURL=index.js.map
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,gBAAgB,EAChB,qBAAqB,EACrB,0BAA0B,EAC1B,sBAAsB,GACvB,MAAM,kBAAkB,CAAC;AAE1B,OAAO,EACL,gBAAgB,EAChB,qBAAqB,EACrB,0BAA0B,EAC1B,sBAAsB,GACvB,MAAM,kBAAkB,CAAC;AAE1B,OAAO,EACL,cAAc,EACd,aAAa,EACb,kBAAkB,EAClB,oBAAoB,GAIrB,MAAM,gBAAgB,CAAC;AAExB,OAAO,EACL,uBAAuB,EACvB,0BAA0B,EAC1B,+BAA+B,EAC/B,6BAA6B,GAC9B,MAAM,uBAAuB,CAAC;AAE/B,OAAO,EACL,uBAAuB,EACvB,0BAA0B,EAC1B,+BAA+B,EAC/B,6BAA6B,GAC9B,MAAM,wBAAwB,CAAC;AAEhC,OAAO,EACL,mBAAmB,EACnB,kBAAkB,EAClB,uBAAuB,EACvB,yBAAyB,GAC1B,MAAM,qBAAqB,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,gBAAgB,EAChB,qBAAqB,EACrB,0BAA0B,EAC1B,sBAAsB,GACvB,MAAM,kBAAkB,CAAC;AAE1B,OAAO,EACL,gBAAgB,EAChB,qBAAqB,EACrB,0BAA0B,EAC1B,sBAAsB,GACvB,MAAM,kBAAkB,CAAC;AAE1B,OAAO,EACL,cAAc,EACd,aAAa,EACb,kBAAkB,EAClB,oBAAoB,GAIrB,MAAM,gBAAgB,CAAC;AAExB,OAAO,EACL,uBAAuB,EACvB,0BAA0B,EAC1B,+BAA+B,EAC/B,6BAA6B,GAC9B,MAAM,uBAAuB,CAAC;AAE/B,OAAO,EACL,uBAAuB,EACvB,0BAA0B,EAC1B,+BAA+B,EAC/B,6BAA6B,GAC9B,MAAM,wBAAwB,CAAC;AAEhC,OAAO,EACL,mBAAmB,EACnB,kBAAkB,EAClB,uBAAuB,EACvB,yBAAyB,GAC1B,MAAM,qBAAqB,CAAC;AAE7B,OAAO,EACL,kBAAkB,EAClB,uBAAuB,EACvB,4BAA4B,EAC5B,wBAAwB,GACzB,MAAM,oBAAoB,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"semantic-store.d.ts","sourceRoot":"","sources":["../src/semantic-store.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AAEH,OAAO,KAAK,QAAQ,MAAM,gBAAgB,CAAC;AAE3C,OAAO,KAAK,EACV,YAAY,EACZ,qBAAqB,EACrB,sBAAsB,EACtB,oBAAoB,EACpB,qBAAqB,EACrB,mBAAmB,EACnB,oBAAoB,EACpB,sBAAsB,EACvB,MAAM,0BAA0B,CAAC;AAClC,OAAO,KAAK,EACV,iBAAiB,EACjB,kBAAkB,EACnB,MAAM,iCAAiC,CAAC;AAGzC;;GAEG;AACH,qBAAa,kBAAmB,SAAQ,KAAK;aAEzB,IAAI,EAAE,MAAM;aAEZ,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC;gBAFjC,IAAI,EAAE,MAAM,EAC5B,OAAO,EAAE,MAAM,EACC,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,YAAA;CAKpD;AAED;;GAEG;AACH,eAAO,MAAM,uBAAuB;;;;;;CAM1B,CAAC;AAmEX;;GAEG;AACH,qBAAa,mBAAoB,YAAW,iBAAiB;IAC3D,OAAO,CAAC,QAAQ,CAAC,EAAE,CAAoB;IACvC,OAAO,CAAC,QAAQ,CAAC,SAAS,CAAS;gBAEvB,EAAE,EAAE,QAAQ,CAAC,QAAQ,EAAE,SAAS,SAAmB;IAY/D;;OAEG;IACH,OAAO,CAAC,UAAU;IAgClB;;;OAGG;IACG,KAAK,CAAC,OAAO,EAAE,oBAAoB,GAAG,OAAO,CAAC,qBAAqB,CAAC;IAmE1E;;;;;OAKG;IACG,MAAM,CAAC,OAAO,EAAE,qBAAqB,GAAG,OAAO,CAAC,sBAAsB,CAAC;IAkF7E;;OAEG;IACG,GAAG,CAAC,GAAG,EAAE,MAAM,EAAE,SAAS,SAAY,GAAG,OAAO,CAAC,YAAY,GAAG,IAAI,CAAC;IAY3E;;OAEG;IACG,IAAI,CAAC,OAAO,EAAE,mBAAmB,GAAG,OAAO,CAAC,oBAAoB,CAAC;IAwDvE;;OAEG;IACG,MAAM,CAAC,GAAG,EAAE,MAAM,EAAE,SAAS,SAAY,GAAG,OAAO,CAAC,sBAAsB,CAAC;IAejF;;OAEG;IACG,MAAM,CAAC,GAAG,EAAE,MAAM,EAAE,SAAS,SAAY,GAAG,OAAO,CAAC,OAAO,CAAC;IAUlE;;OAEG;IACG,QAAQ,CAAC,SAAS,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,kBAAkB,CAAC;IA2D/D;;OAEG;IACG,KAAK,CAAC,SAAS,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;IAehD;;OAEG;IACH,OAAO,CAAC,SAAS;CA+BlB;AAED;;GAEG;AACH,wBAAgB,yBAAyB,CACvC,EAAE,EAAE,QAAQ,CAAC,QAAQ,EACrB,SAAS,CAAC,EAAE,MAAM,GACjB,mBAAmB,CAErB"}
1
+ {"version":3,"file":"semantic-store.d.ts","sourceRoot":"","sources":["../src/semantic-store.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AAEH,OAAO,KAAK,QAAQ,MAAM,gBAAgB,CAAC;AAE3C,OAAO,KAAK,EACV,YAAY,EACZ,qBAAqB,EACrB,sBAAsB,EACtB,oBAAoB,EACpB,qBAAqB,EACrB,mBAAmB,EACnB,oBAAoB,EACpB,sBAAsB,EACvB,MAAM,0BAA0B,CAAC;AAClC,OAAO,KAAK,EACV,iBAAiB,EACjB,kBAAkB,EACnB,MAAM,iCAAiC,CAAC;AAGzC;;GAEG;AACH,qBAAa,kBAAmB,SAAQ,KAAK;aAEzB,IAAI,EAAE,MAAM;aAEZ,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC;gBAFjC,IAAI,EAAE,MAAM,EAC5B,OAAO,EAAE,MAAM,EACC,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,YAAA;CAKpD;AAED;;GAEG;AACH,eAAO,MAAM,uBAAuB;;;;;;CAM1B,CAAC;AA6FX;;GAEG;AACH,qBAAa,mBAAoB,YAAW,iBAAiB;IAC3D,OAAO,CAAC,QAAQ,CAAC,EAAE,CAAoB;IACvC,OAAO,CAAC,QAAQ,CAAC,SAAS,CAAS;gBAEvB,EAAE,EAAE,QAAQ,CAAC,QAAQ,EAAE,SAAS,SAAmB;IAY/D;;OAEG;IACH,OAAO,CAAC,UAAU;IAgClB;;;OAGG;IACG,KAAK,CAAC,OAAO,EAAE,oBAAoB,GAAG,OAAO,CAAC,qBAAqB,CAAC;IAmE1E;;;;;OAKG;IACG,MAAM,CAAC,OAAO,EAAE,qBAAqB,GAAG,OAAO,CAAC,sBAAsB,CAAC;IAmF7E;;OAEG;IACG,GAAG,CAAC,GAAG,EAAE,MAAM,EAAE,SAAS,SAAY,GAAG,OAAO,CAAC,YAAY,GAAG,IAAI,CAAC;IAY3E;;OAEG;IACG,IAAI,CAAC,OAAO,EAAE,mBAAmB,GAAG,OAAO,CAAC,oBAAoB,CAAC;IAwDvE;;OAEG;IACG,MAAM,CAAC,GAAG,EAAE,MAAM,EAAE,SAAS,SAAY,GAAG,OAAO,CAAC,sBAAsB,CAAC;IAejF;;OAEG;IACG,MAAM,CAAC,GAAG,EAAE,MAAM,EAAE,SAAS,SAAY,GAAG,OAAO,CAAC,OAAO,CAAC;IAUlE;;OAEG;IACG,QAAQ,CAAC,SAAS,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,kBAAkB,CAAC;IA2D/D;;OAEG;IACG,KAAK,CAAC,SAAS,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;IAehD;;OAEG;IACH,OAAO,CAAC,SAAS;CA+BlB;AAED;;GAEG;AACH,wBAAgB,yBAAyB,CACvC,EAAE,EAAE,QAAQ,CAAC,QAAQ,EACrB,SAAS,CAAC,EAAE,MAAM,GACjB,mBAAmB,CAErB"}
@@ -35,10 +35,26 @@ export const SemanticStoreErrorCodes = {
35
35
  INVALID_TABLE_NAME: 'SEMANTIC_INVALID_TABLE_NAME',
36
36
  DIMENSION_MISMATCH: 'SEMANTIC_DIMENSION_MISMATCH',
37
37
  };
38
+ /**
39
+ * Maximum embedding dimensions to prevent buffer overflow
40
+ * INV-SEM-005: Buffer size validation
41
+ */
42
+ const MAX_EMBEDDING_DIMENSIONS = 16384; // 128KB max buffer size
43
+ /**
44
+ * Escape LIKE wildcards to prevent SQL pattern injection
45
+ * INV-SEM-006: Safe LIKE clause filtering
46
+ */
47
+ function escapeLikeWildcards(value) {
48
+ return value.replace(/[%_\\]/g, '\\$&');
49
+ }
38
50
  /**
39
51
  * Convert embedding array to buffer for storage
52
+ * INV-SEM-005: Validates embedding size to prevent buffer overflow
40
53
  */
41
54
  function embeddingToBuffer(embedding) {
55
+ if (embedding.length > MAX_EMBEDDING_DIMENSIONS) {
56
+ throw new SemanticStoreError(SemanticStoreErrorCodes.DIMENSION_MISMATCH, `Embedding dimension ${embedding.length} exceeds maximum ${MAX_EMBEDDING_DIMENSIONS}`, { dimension: embedding.length, max: MAX_EMBEDDING_DIMENSIONS });
57
+ }
42
58
  const buffer = Buffer.alloc(embedding.length * 8);
43
59
  for (let i = 0; i < embedding.length; i++) {
44
60
  buffer.writeDoubleLE(embedding[i], i * 8);
@@ -58,6 +74,7 @@ function bufferToEmbedding(buffer) {
58
74
  /**
59
75
  * Compute cosine similarity between two embeddings
60
76
  * INV-SEM-003: Returns normalized score in [0, 1]
77
+ * INV-SEM-007: Uses epsilon comparison to handle floating-point edge cases
61
78
  */
62
79
  function cosineSimilarity(a, b) {
63
80
  if (a.length !== b.length)
@@ -73,10 +90,13 @@ function cosineSimilarity(a, b) {
73
90
  normB += b[i] * b[i];
74
91
  }
75
92
  const denom = Math.sqrt(normA) * Math.sqrt(normB);
76
- if (denom === 0)
93
+ // INV-SEM-007: Use epsilon comparison to avoid NaN/Infinity from underflow
94
+ if (denom < Number.EPSILON)
77
95
  return 0;
78
96
  // Normalize from [-1, 1] to [0, 1]
79
- return (dot / denom + 1) / 2;
97
+ const similarity = (dot / denom + 1) / 2;
98
+ // Clamp to [0, 1] to handle floating-point imprecision
99
+ return Math.max(0, Math.min(1, similarity));
80
100
  }
81
101
  /**
82
102
  * SQLite Semantic Store implementation
@@ -198,10 +218,11 @@ export class SqliteSemanticStore {
198
218
  params.push(request.namespace);
199
219
  }
200
220
  // Tag filtering
221
+ // INV-SEM-006: Escape LIKE wildcards to prevent SQL pattern injection
201
222
  if (request.filterTags && request.filterTags.length > 0) {
202
223
  for (const tag of request.filterTags) {
203
- sql += ` AND tags LIKE ?`;
204
- params.push(`%${tag}%`);
224
+ sql += ` AND tags LIKE ? ESCAPE '\\'`;
225
+ params.push(`%${escapeLikeWildcards(tag)}%`);
205
226
  }
206
227
  }
207
228
  const stmt = this.db.prepare(sql);
@@ -1 +1 @@
1
- {"version":3,"file":"semantic-store.js","sourceRoot":"","sources":["../src/semantic-store.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"semantic-store.js","sourceRoot":"","sources":["../src/semantic-store.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,116 @@
1
+ /**
2
+ * SQLite Session Store
3
+ *
4
+ * Provides persistent storage for collaboration sessions.
5
+ *
6
+ * Invariants:
7
+ * - INV-SESS-SQL-001: Sessions are persisted to SQLite
8
+ * - INV-SESS-SQL-002: Optimistic concurrency via version field
9
+ * - INV-SESS-SQL-003: Participants stored as JSON array
10
+ */
11
+ import type { Session, SessionStatus, CreateSessionInput } from '@defai.digital/contracts';
12
+ import type Database from 'better-sqlite3';
13
+ /**
14
+ * Filter options for listing sessions (matches session-domain interface)
15
+ */
16
+ export interface SessionFilter {
17
+ status?: SessionStatus;
18
+ initiator?: string;
19
+ participant?: string;
20
+ workspace?: string;
21
+ createdAfter?: string;
22
+ createdBefore?: string;
23
+ limit?: number;
24
+ }
25
+ /**
26
+ * Session store interface (matches session-domain interface)
27
+ */
28
+ export interface SessionStore {
29
+ create(input: CreateSessionInput): Promise<Session>;
30
+ get(sessionId: string): Promise<Session | undefined>;
31
+ update(sessionId: string, session: Session): Promise<void>;
32
+ delete(sessionId: string): Promise<void>;
33
+ list(filter?: SessionFilter): Promise<Session[]>;
34
+ findActiveForAgent(agentId: string, workspace?: string): Promise<Session | undefined>;
35
+ applyPolicy(sessionId: string, policyId: string): Promise<Session>;
36
+ getAppliedPolicies(sessionId: string): Promise<string[]>;
37
+ closeStuckSessions(maxAgeMs?: number): Promise<number>;
38
+ }
39
+ /**
40
+ * Error thrown by SQLite session store operations
41
+ */
42
+ export declare class SqliteSessionStoreError extends Error {
43
+ readonly code: string;
44
+ readonly details?: Record<string, unknown> | undefined;
45
+ constructor(code: string, message: string, details?: Record<string, unknown> | undefined);
46
+ }
47
+ /**
48
+ * Error codes for SQLite session store
49
+ */
50
+ export declare const SqliteSessionStoreErrorCodes: {
51
+ readonly DATABASE_ERROR: "SQLITE_SESSION_DATABASE_ERROR";
52
+ readonly NOT_FOUND: "SQLITE_SESSION_NOT_FOUND";
53
+ readonly VERSION_CONFLICT: "SQLITE_SESSION_VERSION_CONFLICT";
54
+ readonly INVALID_TABLE_NAME: "SQLITE_SESSION_INVALID_TABLE_NAME";
55
+ readonly JSON_PARSE_ERROR: "SQLITE_SESSION_JSON_PARSE_ERROR";
56
+ };
57
+ /**
58
+ * SQLite implementation of SessionStore
59
+ * INV-SESS-SQL-001: Sessions are persisted to SQLite
60
+ */
61
+ export declare class SqliteSessionStore implements SessionStore {
62
+ private readonly db;
63
+ private readonly tableName;
64
+ constructor(db: Database.Database, tableName?: string);
65
+ /**
66
+ * Initializes the database schema
67
+ */
68
+ private initialize;
69
+ /**
70
+ * Create a new session
71
+ */
72
+ create(input: CreateSessionInput): Promise<Session>;
73
+ /**
74
+ * Get a session by ID
75
+ */
76
+ get(sessionId: string): Promise<Session | undefined>;
77
+ /**
78
+ * Update a session
79
+ * INV-SESS-SQL-002: Optimistic concurrency via version field
80
+ */
81
+ update(sessionId: string, session: Session): Promise<void>;
82
+ /**
83
+ * Delete a session
84
+ */
85
+ delete(sessionId: string): Promise<void>;
86
+ /**
87
+ * List sessions with optional filters
88
+ */
89
+ list(filter?: SessionFilter): Promise<Session[]>;
90
+ /**
91
+ * Find active session for an agent
92
+ */
93
+ findActiveForAgent(agentId: string, workspace?: string): Promise<Session | undefined>;
94
+ /**
95
+ * Apply a governance policy to a session
96
+ */
97
+ applyPolicy(sessionId: string, policyId: string): Promise<Session>;
98
+ /**
99
+ * Get applied policies for a session
100
+ */
101
+ getAppliedPolicies(sessionId: string): Promise<string[]>;
102
+ /**
103
+ * Close stuck sessions that have been active longer than maxAgeMs
104
+ */
105
+ closeStuckSessions(maxAgeMs?: number): Promise<number>;
106
+ /**
107
+ * Convert database row to Session object
108
+ * INV-SESS-SQL-004: Uses safe JSON parsing to handle corrupted data gracefully
109
+ */
110
+ private rowToSession;
111
+ }
112
+ /**
113
+ * Creates a new SQLite session store
114
+ */
115
+ export declare function createSqliteSessionStore(db: Database.Database, tableName?: string): SessionStore;
116
+ //# sourceMappingURL=session-store.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"session-store.d.ts","sourceRoot":"","sources":["../src/session-store.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,370 @@
1
+ /**
2
+ * SQLite Session Store
3
+ *
4
+ * Provides persistent storage for collaboration sessions.
5
+ *
6
+ * Invariants:
7
+ * - INV-SESS-SQL-001: Sessions are persisted to SQLite
8
+ * - INV-SESS-SQL-002: Optimistic concurrency via version field
9
+ * - INV-SESS-SQL-003: Participants stored as JSON array
10
+ */
11
+ import { isValidTableName, invalidTableNameMessage } from './validation.js';
12
+ /**
13
+ * Error thrown by SQLite session store operations
14
+ */
15
+ export class SqliteSessionStoreError extends Error {
16
+ code;
17
+ details;
18
+ constructor(code, message, details) {
19
+ super(message);
20
+ this.code = code;
21
+ this.details = details;
22
+ this.name = 'SqliteSessionStoreError';
23
+ }
24
+ }
25
+ /**
26
+ * Error codes for SQLite session store
27
+ */
28
+ export const SqliteSessionStoreErrorCodes = {
29
+ DATABASE_ERROR: 'SQLITE_SESSION_DATABASE_ERROR',
30
+ NOT_FOUND: 'SQLITE_SESSION_NOT_FOUND',
31
+ VERSION_CONFLICT: 'SQLITE_SESSION_VERSION_CONFLICT',
32
+ INVALID_TABLE_NAME: 'SQLITE_SESSION_INVALID_TABLE_NAME',
33
+ JSON_PARSE_ERROR: 'SQLITE_SESSION_JSON_PARSE_ERROR',
34
+ };
35
+ /**
36
+ * Safely parse JSON with fallback for corrupted data
37
+ * INV-SESS-SQL-004: Safe JSON parsing prevents crashes from corrupted database data
38
+ */
39
+ function safeJsonParse(json, defaultValue, fieldName, sessionId) {
40
+ if (json === null || json === undefined) {
41
+ return defaultValue;
42
+ }
43
+ try {
44
+ return JSON.parse(json);
45
+ }
46
+ catch (error) {
47
+ // Log the error for debugging but don't crash
48
+ console.warn(`[SqliteSessionStore] Failed to parse ${fieldName}${sessionId ? ` for session ${sessionId}` : ''}: ${error instanceof Error ? error.message : 'Unknown error'}. Using default value.`);
49
+ return defaultValue;
50
+ }
51
+ }
52
+ /**
53
+ * SQLite implementation of SessionStore
54
+ * INV-SESS-SQL-001: Sessions are persisted to SQLite
55
+ */
56
+ export class SqliteSessionStore {
57
+ db;
58
+ tableName;
59
+ constructor(db, tableName = 'sessions') {
60
+ // Validate table name to prevent SQL injection
61
+ if (!isValidTableName(tableName)) {
62
+ throw new SqliteSessionStoreError(SqliteSessionStoreErrorCodes.INVALID_TABLE_NAME, invalidTableNameMessage(tableName));
63
+ }
64
+ this.db = db;
65
+ this.tableName = tableName;
66
+ this.initialize();
67
+ }
68
+ /**
69
+ * Initializes the database schema
70
+ */
71
+ initialize() {
72
+ this.db.exec(`
73
+ CREATE TABLE IF NOT EXISTS ${this.tableName} (
74
+ id INTEGER PRIMARY KEY AUTOINCREMENT,
75
+ session_id TEXT NOT NULL UNIQUE,
76
+ initiator TEXT NOT NULL,
77
+ task TEXT NOT NULL,
78
+ status TEXT NOT NULL DEFAULT 'active',
79
+ participants TEXT NOT NULL DEFAULT '[]',
80
+ workspace TEXT,
81
+ metadata TEXT,
82
+ applied_policies TEXT DEFAULT '[]',
83
+ version INTEGER NOT NULL DEFAULT 1,
84
+ created_at TEXT NOT NULL,
85
+ updated_at TEXT NOT NULL,
86
+ completed_at TEXT
87
+ );
88
+
89
+ CREATE INDEX IF NOT EXISTS idx_${this.tableName}_status
90
+ ON ${this.tableName}(status);
91
+
92
+ CREATE INDEX IF NOT EXISTS idx_${this.tableName}_initiator
93
+ ON ${this.tableName}(initiator);
94
+
95
+ CREATE INDEX IF NOT EXISTS idx_${this.tableName}_created_at
96
+ ON ${this.tableName}(created_at DESC);
97
+ `);
98
+ }
99
+ /**
100
+ * Create a new session
101
+ */
102
+ async create(input) {
103
+ const now = new Date().toISOString();
104
+ const sessionId = crypto.randomUUID();
105
+ const session = {
106
+ sessionId,
107
+ initiator: input.initiator,
108
+ task: input.task,
109
+ participants: [
110
+ {
111
+ agentId: input.initiator,
112
+ role: 'initiator',
113
+ joinedAt: now,
114
+ tasks: [],
115
+ },
116
+ ],
117
+ status: 'active',
118
+ createdAt: now,
119
+ updatedAt: now,
120
+ version: 1,
121
+ workspace: input.workspace,
122
+ metadata: input.metadata,
123
+ appliedPolicies: [],
124
+ };
125
+ try {
126
+ const stmt = this.db.prepare(`
127
+ INSERT INTO ${this.tableName} (
128
+ session_id, initiator, task, status, participants,
129
+ workspace, metadata, applied_policies, version, created_at, updated_at
130
+ ) VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?)
131
+ `);
132
+ stmt.run(session.sessionId, session.initiator, session.task, session.status, JSON.stringify(session.participants), session.workspace ?? null, session.metadata ? JSON.stringify(session.metadata) : null, JSON.stringify(session.appliedPolicies), session.version, session.createdAt, session.updatedAt);
133
+ return session;
134
+ }
135
+ catch (error) {
136
+ throw new SqliteSessionStoreError(SqliteSessionStoreErrorCodes.DATABASE_ERROR, `Failed to create session: ${error instanceof Error ? error.message : 'Unknown error'}`);
137
+ }
138
+ }
139
+ /**
140
+ * Get a session by ID
141
+ */
142
+ async get(sessionId) {
143
+ try {
144
+ const stmt = this.db.prepare(`
145
+ SELECT * FROM ${this.tableName} WHERE session_id = ?
146
+ `);
147
+ const row = stmt.get(sessionId);
148
+ if (!row)
149
+ return undefined;
150
+ return this.rowToSession(row);
151
+ }
152
+ catch (error) {
153
+ throw new SqliteSessionStoreError(SqliteSessionStoreErrorCodes.DATABASE_ERROR, `Failed to get session: ${error instanceof Error ? error.message : 'Unknown error'}`);
154
+ }
155
+ }
156
+ /**
157
+ * Update a session
158
+ * INV-SESS-SQL-002: Optimistic concurrency via version field
159
+ */
160
+ async update(sessionId, session) {
161
+ try {
162
+ const now = new Date().toISOString();
163
+ const stmt = this.db.prepare(`
164
+ UPDATE ${this.tableName}
165
+ SET initiator = ?,
166
+ task = ?,
167
+ status = ?,
168
+ participants = ?,
169
+ workspace = ?,
170
+ metadata = ?,
171
+ applied_policies = ?,
172
+ version = ?,
173
+ updated_at = ?,
174
+ completed_at = ?
175
+ WHERE session_id = ? AND version = ?
176
+ `);
177
+ const result = stmt.run(session.initiator, session.task, session.status, JSON.stringify(session.participants), session.workspace ?? null, session.metadata ? JSON.stringify(session.metadata) : null, JSON.stringify(session.appliedPolicies ?? []), session.version, now, session.completedAt ?? null, sessionId, session.version - 1 // Expected previous version
178
+ );
179
+ if (result.changes === 0) {
180
+ // Check if session exists
181
+ const existing = await this.get(sessionId);
182
+ if (!existing) {
183
+ throw new SqliteSessionStoreError(SqliteSessionStoreErrorCodes.NOT_FOUND, `Session ${sessionId} not found`);
184
+ }
185
+ throw new SqliteSessionStoreError(SqliteSessionStoreErrorCodes.VERSION_CONFLICT, `Version conflict for session ${sessionId}: expected ${session.version - 1}, got ${existing.version}`);
186
+ }
187
+ }
188
+ catch (error) {
189
+ if (error instanceof SqliteSessionStoreError)
190
+ throw error;
191
+ throw new SqliteSessionStoreError(SqliteSessionStoreErrorCodes.DATABASE_ERROR, `Failed to update session: ${error instanceof Error ? error.message : 'Unknown error'}`);
192
+ }
193
+ }
194
+ /**
195
+ * Delete a session
196
+ */
197
+ async delete(sessionId) {
198
+ try {
199
+ const stmt = this.db.prepare(`
200
+ DELETE FROM ${this.tableName} WHERE session_id = ?
201
+ `);
202
+ stmt.run(sessionId);
203
+ }
204
+ catch (error) {
205
+ throw new SqliteSessionStoreError(SqliteSessionStoreErrorCodes.DATABASE_ERROR, `Failed to delete session: ${error instanceof Error ? error.message : 'Unknown error'}`);
206
+ }
207
+ }
208
+ /**
209
+ * List sessions with optional filters
210
+ */
211
+ async list(filter) {
212
+ try {
213
+ let sql = `SELECT * FROM ${this.tableName} WHERE 1=1`;
214
+ const params = [];
215
+ if (filter?.status) {
216
+ sql += ' AND status = ?';
217
+ params.push(filter.status);
218
+ }
219
+ if (filter?.initiator) {
220
+ sql += ' AND initiator = ?';
221
+ params.push(filter.initiator);
222
+ }
223
+ if (filter?.workspace) {
224
+ sql += ' AND workspace = ?';
225
+ params.push(filter.workspace);
226
+ }
227
+ if (filter?.createdAfter) {
228
+ sql += ' AND created_at > ?';
229
+ params.push(filter.createdAfter);
230
+ }
231
+ if (filter?.createdBefore) {
232
+ sql += ' AND created_at < ?';
233
+ params.push(filter.createdBefore);
234
+ }
235
+ sql += ' ORDER BY created_at DESC';
236
+ if (filter?.limit) {
237
+ sql += ' LIMIT ?';
238
+ params.push(filter.limit);
239
+ }
240
+ const stmt = this.db.prepare(sql);
241
+ const rows = stmt.all(...params);
242
+ let sessions = rows.map((row) => this.rowToSession(row));
243
+ // Filter by participant (requires post-query filtering due to JSON)
244
+ if (filter?.participant) {
245
+ sessions = sessions.filter((s) => s.participants.some((p) => p.agentId === filter.participant));
246
+ }
247
+ return sessions;
248
+ }
249
+ catch (error) {
250
+ throw new SqliteSessionStoreError(SqliteSessionStoreErrorCodes.DATABASE_ERROR, `Failed to list sessions: ${error instanceof Error ? error.message : 'Unknown error'}`);
251
+ }
252
+ }
253
+ /**
254
+ * Find active session for an agent
255
+ */
256
+ async findActiveForAgent(agentId, workspace) {
257
+ try {
258
+ let sql = `
259
+ SELECT * FROM ${this.tableName}
260
+ WHERE status = 'active'
261
+ `;
262
+ const params = [];
263
+ if (workspace) {
264
+ sql += ' AND workspace = ?';
265
+ params.push(workspace);
266
+ }
267
+ sql += ' ORDER BY created_at DESC';
268
+ const stmt = this.db.prepare(sql);
269
+ const rows = stmt.all(...params);
270
+ for (const row of rows) {
271
+ const session = this.rowToSession(row);
272
+ const isParticipant = session.participants.some((p) => p.agentId === agentId && p.leftAt === undefined);
273
+ if (isParticipant) {
274
+ return session;
275
+ }
276
+ }
277
+ return undefined;
278
+ }
279
+ catch (error) {
280
+ throw new SqliteSessionStoreError(SqliteSessionStoreErrorCodes.DATABASE_ERROR, `Failed to find active session: ${error instanceof Error ? error.message : 'Unknown error'}`);
281
+ }
282
+ }
283
+ /**
284
+ * Apply a governance policy to a session
285
+ */
286
+ async applyPolicy(sessionId, policyId) {
287
+ const session = await this.get(sessionId);
288
+ if (!session) {
289
+ throw new SqliteSessionStoreError(SqliteSessionStoreErrorCodes.NOT_FOUND, `Session ${sessionId} not found`);
290
+ }
291
+ const appliedPolicies = session.appliedPolicies ?? [];
292
+ if (appliedPolicies.includes(policyId)) {
293
+ return session; // Already applied
294
+ }
295
+ const updatedSession = {
296
+ ...session,
297
+ appliedPolicies: [...appliedPolicies, policyId],
298
+ version: session.version + 1,
299
+ };
300
+ await this.update(sessionId, updatedSession);
301
+ return updatedSession;
302
+ }
303
+ /**
304
+ * Get applied policies for a session
305
+ */
306
+ async getAppliedPolicies(sessionId) {
307
+ const session = await this.get(sessionId);
308
+ if (!session) {
309
+ throw new SqliteSessionStoreError(SqliteSessionStoreErrorCodes.NOT_FOUND, `Session ${sessionId} not found`);
310
+ }
311
+ return session.appliedPolicies ?? [];
312
+ }
313
+ /**
314
+ * Close stuck sessions that have been active longer than maxAgeMs
315
+ */
316
+ async closeStuckSessions(maxAgeMs = 86400000) {
317
+ if (maxAgeMs <= 0) {
318
+ throw new Error('maxAgeMs must be a positive number');
319
+ }
320
+ try {
321
+ const cutoff = new Date(Date.now() - maxAgeMs).toISOString();
322
+ const now = new Date().toISOString();
323
+ const stmt = this.db.prepare(`
324
+ UPDATE ${this.tableName}
325
+ SET status = 'failed',
326
+ updated_at = ?,
327
+ completed_at = ?,
328
+ version = version + 1,
329
+ metadata = json_set(
330
+ COALESCE(metadata, '{}'),
331
+ '$.error',
332
+ json('{"code":"SESSION_AUTO_CLOSED","message":"Session closed automatically - exceeded maximum active time"}')
333
+ )
334
+ WHERE status = 'active' AND created_at < ?
335
+ `);
336
+ const result = stmt.run(now, now, cutoff);
337
+ return result.changes;
338
+ }
339
+ catch (error) {
340
+ throw new SqliteSessionStoreError(SqliteSessionStoreErrorCodes.DATABASE_ERROR, `Failed to close stuck sessions: ${error instanceof Error ? error.message : 'Unknown error'}`);
341
+ }
342
+ }
343
+ /**
344
+ * Convert database row to Session object
345
+ * INV-SESS-SQL-004: Uses safe JSON parsing to handle corrupted data gracefully
346
+ */
347
+ rowToSession(row) {
348
+ return {
349
+ sessionId: row.session_id,
350
+ initiator: row.initiator,
351
+ task: row.task,
352
+ status: row.status,
353
+ participants: safeJsonParse(row.participants, [], 'participants', row.session_id),
354
+ workspace: row.workspace ?? undefined,
355
+ metadata: safeJsonParse(row.metadata, undefined, 'metadata', row.session_id),
356
+ appliedPolicies: safeJsonParse(row.applied_policies, [], 'applied_policies', row.session_id),
357
+ version: row.version,
358
+ createdAt: row.created_at,
359
+ updatedAt: row.updated_at,
360
+ completedAt: row.completed_at ?? undefined,
361
+ };
362
+ }
363
+ }
364
+ /**
365
+ * Creates a new SQLite session store
366
+ */
367
+ export function createSqliteSessionStore(db, tableName = 'sessions') {
368
+ return new SqliteSessionStore(db, tableName);
369
+ }
370
+ //# sourceMappingURL=session-store.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"session-store.js","sourceRoot":"","sources":["../src/session-store.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"trace-store.d.ts","sourceRoot":"","sources":["../src/trace-store.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAA6B,MAAM,0BAA0B,CAAC;AAEtF,OAAO,KAAK,EAAE,UAAU,EAAE,YAAY,EAAE,aAAa,EAAE,MAAM,6BAA6B,CAAC;AAC3F,OAAO,KAAK,QAAQ,MAAM,gBAAgB,CAAC;AAG3C;;GAEG;AACH,qBAAa,qBAAsB,SAAQ,KAAK;aAE5B,IAAI,EAAE,MAAM;aAEZ,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC;gBAFjC,IAAI,EAAE,MAAM,EAC5B,OAAO,EAAE,MAAM,EACC,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,YAAA;CAKpD;AAED;;GAEG;AACH,eAAO,MAAM,0BAA0B;;;;CAI7B,CAAC;AAEX;;;;GAIG;AACH,qBAAa,gBAAiB,YAAW,UAAU;IACjD,OAAO,CAAC,QAAQ,CAAC,EAAE,CAAoB;IACvC,OAAO,CAAC,QAAQ,CAAC,WAAW,CAAS;IACrC,OAAO,CAAC,QAAQ,CAAC,cAAc,CAAS;gBAGtC,EAAE,EAAE,QAAQ,CAAC,QAAQ,EACrB,WAAW,SAAiB,EAC5B,cAAc,SAAoB;IAqBpC;;OAEG;IACH,OAAO,CAAC,UAAU;IAkElB;;OAEG;IACH,OAAO,CAAC,uBAAuB;IA2B/B;;;OAGG;IACH,KAAK,CAAC,KAAK,EAAE,UAAU,GAAG,OAAO,CAAC,IAAI,CAAC;IAmCvC;;;OAGG;IACH,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC;IAItB;;;OAGG;IACH,QAAQ,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,UAAU,EAAE,CAAC;IAahD;;OAEG;IACH,QAAQ,CAAC,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,UAAU,GAAG,SAAS,CAAC;IAY3E;;OAEG;IACH,UAAU,CAAC,KAAK,SAAM,GAAG,OAAO,CAAC,YAAY,EAAE,CAAC;IAchD;;OAEG;IACH,OAAO,CAAC,aAAa;IAkGrB;;OAEG;IACH,OAAO,CAAC,gBAAgB;IA0DxB;;;OAGG;IACH,eAAe,CAAC,WAAW,EAAE,MAAM,GAAG,OAAO,CAAC,YAAY,EAAE,CAAC;IAc7D;;;OAGG;IACH,cAAc,CAAC,aAAa,EAAE,MAAM,GAAG,OAAO,CAAC,YAAY,EAAE,CAAC;IAc9D;;;OAGG;IACH,kBAAkB,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,YAAY,EAAE,CAAC;IAc9D;;;OAGG;IACG,YAAY,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,aAAa,GAAG,SAAS,CAAC;IAwDvE;;OAEG;IACH,KAAK,IAAI,IAAI;IAKb;;;;;OAKG;IACG,gBAAgB,CAAC,QAAQ,SAAU,GAAG,OAAO,CAAC,MAAM,CAAC;IAsD3D;;;OAGG;IACH,WAAW,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;CAuB/C;AAqHD;;GAEG;AACH,wBAAgB,sBAAsB,CACpC,EAAE,EAAE,QAAQ,CAAC,QAAQ,EACrB,WAAW,CAAC,EAAE,MAAM,EACpB,cAAc,CAAC,EAAE,MAAM,GACtB,gBAAgB,CAElB"}
1
+ {"version":3,"file":"trace-store.d.ts","sourceRoot":"","sources":["../src/trace-store.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAA6B,MAAM,0BAA0B,CAAC;AAEtF,OAAO,KAAK,EAAE,UAAU,EAAE,YAAY,EAAE,aAAa,EAAE,MAAM,6BAA6B,CAAC;AAC3F,OAAO,KAAK,QAAQ,MAAM,gBAAgB,CAAC;AAG3C;;GAEG;AACH,qBAAa,qBAAsB,SAAQ,KAAK;aAE5B,IAAI,EAAE,MAAM;aAEZ,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC;gBAFjC,IAAI,EAAE,MAAM,EAC5B,OAAO,EAAE,MAAM,EACC,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,YAAA;CAKpD;AAED;;GAEG;AACH,eAAO,MAAM,0BAA0B;;;;CAI7B,CAAC;AAEX;;;;GAIG;AACH,qBAAa,gBAAiB,YAAW,UAAU;IACjD,OAAO,CAAC,QAAQ,CAAC,EAAE,CAAoB;IACvC,OAAO,CAAC,QAAQ,CAAC,WAAW,CAAS;IACrC,OAAO,CAAC,QAAQ,CAAC,cAAc,CAAS;gBAGtC,EAAE,EAAE,QAAQ,CAAC,QAAQ,EACrB,WAAW,SAAiB,EAC5B,cAAc,SAAoB;IAqBpC;;OAEG;IACH,OAAO,CAAC,UAAU;IAkElB;;OAEG;IACH,OAAO,CAAC,uBAAuB;IA2B/B;;;OAGG;IACH,KAAK,CAAC,KAAK,EAAE,UAAU,GAAG,OAAO,CAAC,IAAI,CAAC;IAmCvC;;;OAGG;IACH,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC;IAItB;;;OAGG;IACH,QAAQ,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,UAAU,EAAE,CAAC;IAahD;;OAEG;IACH,QAAQ,CAAC,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,UAAU,GAAG,SAAS,CAAC;IAY3E;;OAEG;IACH,UAAU,CAAC,KAAK,SAAM,GAAG,OAAO,CAAC,YAAY,EAAE,CAAC;IAchD;;OAEG;IACH,OAAO,CAAC,aAAa;IAkGrB;;OAEG;IACH,OAAO,CAAC,gBAAgB;IA0DxB;;;OAGG;IACH,eAAe,CAAC,WAAW,EAAE,MAAM,GAAG,OAAO,CAAC,YAAY,EAAE,CAAC;IAc7D;;;OAGG;IACH,cAAc,CAAC,aAAa,EAAE,MAAM,GAAG,OAAO,CAAC,YAAY,EAAE,CAAC;IAc9D;;;OAGG;IACH,kBAAkB,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,YAAY,EAAE,CAAC;IAc9D;;;OAGG;IACG,YAAY,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,aAAa,GAAG,SAAS,CAAC;IAwEvE;;OAEG;IACH,KAAK,IAAI,IAAI;IAKb;;;;;OAKG;IACG,gBAAgB,CAAC,QAAQ,SAAkB,GAAG,OAAO,CAAC,MAAM,CAAC;IA6DnE;;;OAGG;IACH,WAAW,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;CAuB/C;AAqHD;;GAEG;AACH,wBAAgB,sBAAsB,CACpC,EAAE,EAAE,QAAQ,CAAC,QAAQ,EACrB,WAAW,CAAC,EAAE,MAAM,EACpB,cAAc,CAAC,EAAE,MAAM,GACtB,gBAAgB,CAElB"}
@@ -1,4 +1,4 @@
1
- import { getErrorMessage } from '@defai.digital/contracts';
1
+ import { getErrorMessage, TIMEOUT_SESSION } from '@defai.digital/contracts';
2
2
  import { isValidTableName, invalidTableNameMessage } from './validation.js';
3
3
  /**
4
4
  * Error thrown by SQLite trace store operations
@@ -412,11 +412,25 @@ export class SqliteTraceStore {
412
412
  for (const trace of allTraces) {
413
413
  traceMap.set(trace.traceId, trace);
414
414
  }
415
- // Build tree recursively
416
- const buildNode = (summary) => {
415
+ // Build tree recursively with cycle detection
416
+ // INV-TR-023: Prevent infinite recursion from circular parent references
417
+ const buildNode = (summary, visited = new Set()) => {
418
+ // Detect cycles - if we've already visited this trace, skip its children
419
+ if (visited.has(summary.traceId)) {
420
+ console.warn(`[trace-store] Circular reference detected for trace ${summary.traceId}, breaking cycle`);
421
+ return {
422
+ trace: summary,
423
+ children: [],
424
+ totalDurationMs: summary.durationMs ?? 0,
425
+ totalEventCount: summary.eventCount,
426
+ };
427
+ }
428
+ // Mark this trace as visited
429
+ const newVisited = new Set(visited);
430
+ newVisited.add(summary.traceId);
417
431
  const children = allTraces
418
432
  .filter((t) => t.parentTraceId === summary.traceId)
419
- .map((childSummary) => buildNode(childSummary));
433
+ .map((childSummary) => buildNode(childSummary, newVisited));
420
434
  const childDuration = children.reduce((sum, child) => sum + (child.totalDurationMs ?? 0), 0);
421
435
  const childEventCount = children.reduce((sum, child) => sum + child.totalEventCount, 0);
422
436
  return {
@@ -445,7 +459,7 @@ export class SqliteTraceStore {
445
459
  * @param maxAgeMs Maximum age in milliseconds (default: 1 hour)
446
460
  * @returns number of traces that were closed
447
461
  */
448
- async closeStuckTraces(maxAgeMs = 3600000) {
462
+ async closeStuckTraces(maxAgeMs = TIMEOUT_SESSION) {
449
463
  // Input validation
450
464
  if (maxAgeMs <= 0) {
451
465
  throw new Error('maxAgeMs must be a positive number');
@@ -464,11 +478,18 @@ export class SqliteTraceStore {
464
478
  let closedCount = 0;
465
479
  for (const trace of stuckTraces) {
466
480
  const startTime = new Date(trace.start_time).getTime();
481
+ // INV-TR-026: Guard against invalid timestamps producing NaN duration
482
+ if (Number.isNaN(startTime)) {
483
+ console.warn(`[trace-store] Invalid start_time for trace ${trace.trace_id}, skipping auto-close`);
484
+ continue;
485
+ }
467
486
  const durationMs = currentTime - startTime;
468
487
  // Write a run.end event to close the trace
469
- // Use timestamp in eventId to prevent collisions on repeated cleanup calls
488
+ // Use timestamp + random suffix in eventId to prevent collisions on repeated cleanup calls
489
+ // INV-TR-025: Prevent eventId collision in closeStuckTraces
490
+ const randomSuffix = Math.random().toString(36).slice(2, 8);
470
491
  const endEvent = {
471
- eventId: `${trace.trace_id}-auto-close-${currentTime}`,
492
+ eventId: `${trace.trace_id}-auto-close-${currentTime}-${randomSuffix}`,
472
493
  traceId: trace.trace_id,
473
494
  type: 'run.end',
474
495
  timestamp: new Date().toISOString(),
@@ -1 +1 @@
1
- {"version":3,"file":"trace-store.js","sourceRoot":"","sources":["../src/trace-store.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"trace-store.js","sourceRoot":"","sources":["../src/trace-store.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@defai.digital/sqlite-adapter",
3
- "version": "13.4.5",
3
+ "version": "13.4.8",
4
4
  "type": "module",
5
5
  "license": "BUSL-1.1",
6
6
  "author": "DEFAI Private Limited",
@@ -30,12 +30,12 @@
30
30
  },
31
31
  "dependencies": {
32
32
  "better-sqlite3": "^11.6.0",
33
- "@defai.digital/agent-execution": "13.4.5",
34
- "@defai.digital/contracts": "13.4.5",
35
- "@defai.digital/memory-domain": "13.4.5",
36
- "@defai.digital/cross-cutting": "13.4.5",
37
- "@defai.digital/semantic-context": "13.4.5",
38
- "@defai.digital/trace-domain": "13.4.5"
33
+ "@defai.digital/agent-execution": "13.4.8",
34
+ "@defai.digital/contracts": "13.4.8",
35
+ "@defai.digital/memory-domain": "13.4.8",
36
+ "@defai.digital/cross-cutting": "13.4.8",
37
+ "@defai.digital/semantic-context": "13.4.8",
38
+ "@defai.digital/trace-domain": "13.4.8"
39
39
  },
40
40
  "devDependencies": {
41
41
  "@types/better-sqlite3": "^7.6.11",