@melra/memory 0.3.0-alpha.13 → 0.3.0-alpha.15

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.
package/README.md CHANGED
@@ -42,7 +42,9 @@ task cannot read what another stored by guessing a key.
42
42
 
43
43
  Expired and superseded records are already invisible to every read path;
44
44
  `LocalMemory` reclaims them on the next write to that scope, after
45
- `MemoryRetention.maxAgeDays` (default 30). Pass `maxPerScope` to also cap live
45
+ `MemoryRetention.maxAgeDays` (default 30). The record a live one replaced is
46
+ kept, so deleting a correction always brings back what it corrected; an older
47
+ record in the chain is kept only that long. Pass `maxPerScope` to also cap live
46
48
  memories — that one deletes records you can still read, so it defaults to `0`
47
49
  (no ceiling).
48
50
 
@@ -52,7 +54,7 @@ import { LocalMemory } from "@melra/memory";
52
54
  const bounded = new LocalMemory(store, { maxAgeDays: 7, maxPerScope: 5_000 });
53
55
  ```
54
56
 
55
- Requires Node.js 22 or newer. Full documentation:
57
+ Requires Node.js 22.13 or newer, or 23.4 or newer. Full documentation:
56
58
  [github.com/XAGI-Lab/melra](https://github.com/XAGI-Lab/melra)
57
59
 
58
60
  Apache-2.0
package/dist/index.d.ts CHANGED
@@ -4,10 +4,12 @@ import { SqliteStore, type MemoryRecord } from "@melra/storage-sqlite";
4
4
  * How long an unreachable memory row survives before compaction reclaims it,
5
5
  * and an optional ceiling on live memories per scope.
6
6
  *
7
- * Expired and superseded rows are already filtered out of every read path, so
8
- * removing them changes nothing a caller can observe — it only stops the file
9
- * growing forever. `maxPerScope` is the opposite: it deletes memories that can
10
- * still be read, so `0` (no ceiling) is the default and an operator opts in.
7
+ * Expired and superseded rows are already filtered out of every read path;
8
+ * removing them stops the file growing forever. What a caller can still see is
9
+ * how far back undoing corrections reaches: deleting the live record revives
10
+ * the one it replaced, which compaction keeps, but one replaced before that is
11
+ * kept only `maxAgeDays`. `maxPerScope` deletes memories that can still be
12
+ * read, so `0` (no ceiling) is the default and an operator opts in.
11
13
  */
12
14
  export interface MemoryRetention {
13
15
  maxAgeDays: number;
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,iBAAiB,CAAC;AAEvD,OAAO,EACL,WAAW,EACX,KAAK,YAAY,EAClB,MAAM,uBAAuB,CAAC;AAG/B;;;;;;;;GAQG;AACH,MAAM,WAAW,eAAe;IAC9B,UAAU,EAAE,MAAM,CAAC;IACnB,WAAW,EAAE,MAAM,CAAC;CACrB;AAED,eAAO,MAAM,wBAAwB,EAAE,eAGtC,CAAC;AAKF,wBAAgB,iBAAiB,CAAC,KAAK,EAAE,MAAM,GAAG;IAChD,KAAK,EAAE,MAAM,CAAC;IACd,UAAU,EAAE,MAAM,EAAE,CAAC;CACtB,CAEA;AAED,MAAM,WAAW,YAAa,SAAQ,YAAY;IAChD,KAAK,EAAE,MAAM,CAAC;IACd,cAAc,EAAE;QACd,OAAO,EAAE,MAAM,CAAC;QAChB,MAAM,EAAE,MAAM,CAAC;QACf,UAAU,EAAE,MAAM,CAAC;QACnB,SAAS,EAAE,MAAM,CAAC;QAClB,OAAO,EAAE,MAAM,CAAC;QAChB,OAAO,EAAE,MAAM,CAAC;QAChB,gBAAgB,EAAE,MAAM,CAAC;KAC1B,CAAC;CACH;AAUD,wBAAgB,QAAQ,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,EAAE,CAEhD;AAoBD;;;;;;;;GAQG;AACH,wBAAgB,YAAY,CAC1B,OAAO,EAAE,YAAY,EAAE,EACvB,KAAK,EAAE,MAAM,EACb,KAAK,EAAE,MAAM,EACb,KAAK,SAAa,GACjB,YAAY,EAAE,CAqNhB;AAED,qBAAa,WAAW;IAEpB,OAAO,CAAC,QAAQ,CAAC,KAAK;IACtB,OAAO,CAAC,QAAQ,CAAC,SAAS;gBADT,KAAK,EAAE,WAAW,EAClB,SAAS,GAAE,eAA0C;IAGxE,OAAO,CAAC,SAAS,EAAE,eAAe,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC;CAkK7D"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,iBAAiB,CAAC;AAEvD,OAAO,EACL,WAAW,EACX,KAAK,YAAY,EAClB,MAAM,uBAAuB,CAAC;AAG/B;;;;;;;;;;GAUG;AACH,MAAM,WAAW,eAAe;IAC9B,UAAU,EAAE,MAAM,CAAC;IACnB,WAAW,EAAE,MAAM,CAAC;CACrB;AAED,eAAO,MAAM,wBAAwB,EAAE,eAGtC,CAAC;AAKF,wBAAgB,iBAAiB,CAAC,KAAK,EAAE,MAAM,GAAG;IAChD,KAAK,EAAE,MAAM,CAAC;IACd,UAAU,EAAE,MAAM,EAAE,CAAC;CACtB,CAEA;AAED,MAAM,WAAW,YAAa,SAAQ,YAAY;IAChD,KAAK,EAAE,MAAM,CAAC;IACd,cAAc,EAAE;QACd,OAAO,EAAE,MAAM,CAAC;QAChB,MAAM,EAAE,MAAM,CAAC;QACf,UAAU,EAAE,MAAM,CAAC;QACnB,SAAS,EAAE,MAAM,CAAC;QAClB,OAAO,EAAE,MAAM,CAAC;QAChB,OAAO,EAAE,MAAM,CAAC;QAChB,gBAAgB,EAAE,MAAM,CAAC;KAC1B,CAAC;CACH;AAUD,wBAAgB,QAAQ,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,EAAE,CAEhD;AAoBD;;;;;;;;GAQG;AACH,wBAAgB,YAAY,CAC1B,OAAO,EAAE,YAAY,EAAE,EACvB,KAAK,EAAE,MAAM,EACb,KAAK,EAAE,MAAM,EACb,KAAK,SAAa,GACjB,YAAY,EAAE,CAqNhB;AAED,qBAAa,WAAW;IAEpB,OAAO,CAAC,QAAQ,CAAC,KAAK;IACtB,OAAO,CAAC,QAAQ,CAAC,SAAS;gBADT,KAAK,EAAE,WAAW,EAClB,SAAS,GAAE,eAA0C;IAGxE,OAAO,CAAC,SAAS,EAAE,eAAe,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC;CAiL7D"}
package/dist/index.js CHANGED
@@ -239,77 +239,88 @@ export class LocalMemory {
239
239
  }
240
240
  const now = new Date().toISOString();
241
241
  const redacted = redactMemoryValue(operation.value);
242
+ const redactedKey = redactMemoryValue(operation.key);
242
243
  const redactedSpeaker = operation.speaker === undefined
243
244
  ? undefined
244
245
  : redactMemoryValue(operation.speaker);
245
246
  const redactedEpisodeId = operation.episodeId === undefined
246
247
  ? undefined
247
248
  : redactMemoryValue(operation.episodeId);
248
- const existing = operation.id === undefined
249
- ? undefined
250
- : this.store.getMemory(operation.id);
251
- if (existing !== undefined && existing.scope !== operation.scope) {
252
- throw new Error("memory_scope_mismatch");
253
- }
254
- if (existing?.supersededBy !== undefined) {
255
- throw new Error("memory_superseded_record_immutable");
256
- }
257
- const superseded = operation.supersedesId === undefined
258
- ? undefined
259
- : this.store.getMemory(operation.supersedesId);
260
- if (operation.supersedesId !== undefined &&
261
- (superseded === undefined ||
262
- superseded.scope !== operation.scope ||
263
- operation.supersedesId === operation.id ||
264
- // Already replaced by some other record: superseding it again is
265
- // not possible, and finding that out after the write lost data.
266
- (superseded.supersededBy !== undefined && superseded.supersededBy !== operation.id))) {
267
- throw new Error("memory_supersedes_target_invalid");
268
- }
269
- const memory = {
270
- id: operation.id ?? randomUUID(),
271
- scope: operation.scope,
272
- // Free text a caller writes, like the value: a token pasted into the
273
- // key, the source or a tag is no more meant to be kept than one in
274
- // the value.
275
- key: redactMemoryValue(operation.key).value,
276
- value: redacted.value,
277
- source: redactMemoryValue(operation.source ?? "mcp-client").value,
278
- confidence: operation.confidence,
279
- tags: operation.tags.map((tag) => redactMemoryValue(tag).value),
280
- ...(redactedSpeaker === undefined
281
- ? {}
282
- : { speaker: redactedSpeaker.value }),
283
- ...(redactedEpisodeId === undefined
284
- ? {}
285
- : { episodeId: redactedEpisodeId.value }),
286
- ...(operation.sequence === undefined
287
- ? {}
288
- : { sequence: operation.sequence }),
289
- ...(operation.expiresAt === undefined
290
- ? {}
291
- : { expiresAt: operation.expiresAt }),
292
- ...(operation.supersedesId === undefined
293
- ? {}
294
- : { supersedesId: operation.supersedesId }),
295
- createdAt: existing?.createdAt ?? now,
296
- updatedAt: now,
297
- };
298
- this.store.putMemory(memory);
299
- if (operation.supersedesId !== undefined &&
300
- // Re-putting the record that already superseded it is an edit of
301
- // that record, not a second supersede.
302
- superseded?.supersededBy !== memory.id &&
303
- !this.store.supersedeMemory(operation.supersedesId, operation.scope, memory.id)) {
304
- // Undo the write: put back what was there, or remove what was new.
305
- // Deleting an existing record here lost it and orphaned the one it
306
- // had superseded.
307
- if (existing === undefined)
308
- this.store.deleteMemory(memory.id, memory.scope);
309
- else
310
- this.store.putMemory(existing);
311
- throw new Error("memory_supersedes_target_invalid");
312
- }
249
+ // Read, checked and written as one transaction: another process
250
+ // editing or deleting the same chain in between left a record hidden
251
+ // with nothing pointing at it, or two live records for one fact.
252
+ const memory = this.store.transaction(() => {
253
+ const existing = operation.id === undefined
254
+ ? undefined
255
+ : this.store.getMemory(operation.id);
256
+ if (existing !== undefined && existing.scope !== operation.scope) {
257
+ throw new Error("memory_scope_mismatch");
258
+ }
259
+ if (existing?.supersededBy !== undefined) {
260
+ throw new Error("memory_superseded_record_immutable");
261
+ }
262
+ const superseded = operation.supersedesId === undefined
263
+ ? undefined
264
+ : this.store.getMemory(operation.supersedesId);
265
+ if (operation.supersedesId !== undefined &&
266
+ (superseded === undefined ||
267
+ superseded.scope !== operation.scope ||
268
+ operation.supersedesId === operation.id ||
269
+ // Already replaced by some other record: superseding it again is
270
+ // not possible, and finding that out after the write lost data.
271
+ (superseded.supersededBy !== undefined && superseded.supersededBy !== operation.id))) {
272
+ throw new Error("memory_supersedes_target_invalid");
273
+ }
274
+ const memory = {
275
+ id: operation.id ?? randomUUID(),
276
+ scope: operation.scope,
277
+ // Free text a caller writes, like the value: a token pasted into the
278
+ // key, the source or a tag is no more meant to be kept than one in
279
+ // the value.
280
+ key: redactedKey.value,
281
+ value: redacted.value,
282
+ source: redactMemoryValue(operation.source ?? "mcp-client").value,
283
+ confidence: operation.confidence,
284
+ tags: operation.tags.map((tag) => redactMemoryValue(tag).value),
285
+ ...(redactedSpeaker === undefined
286
+ ? {}
287
+ : { speaker: redactedSpeaker.value }),
288
+ ...(redactedEpisodeId === undefined
289
+ ? {}
290
+ : { episodeId: redactedEpisodeId.value }),
291
+ ...(operation.sequence === undefined
292
+ ? {}
293
+ : { sequence: operation.sequence }),
294
+ ...(operation.expiresAt === undefined
295
+ ? {}
296
+ : { expiresAt: operation.expiresAt }),
297
+ ...(operation.supersedesId === undefined
298
+ ? {}
299
+ : { supersedesId: operation.supersedesId }),
300
+ createdAt: existing?.createdAt ?? now,
301
+ updatedAt: now,
302
+ };
303
+ this.store.putMemory(memory);
304
+ if (operation.supersedesId !== undefined &&
305
+ // Re-putting the record that already superseded it is an edit of
306
+ // that record, not a second supersede.
307
+ superseded?.supersededBy !== memory.id &&
308
+ !this.store.supersedeMemory(operation.supersedesId, operation.scope, memory.id)) {
309
+ // Rolled back with the write: what was there stays, and what was new
310
+ // is gone.
311
+ throw new Error("memory_supersedes_target_invalid");
312
+ }
313
+ // An edit that drops or changes what this record supersedes hands the
314
+ // old one back, as deleting the record would.
315
+ // Not when that record has expired: a lapsed correction revives
316
+ // nothing, as when compaction has removed it already.
317
+ if (existing?.supersedesId !== undefined &&
318
+ existing.supersedesId !== memory.supersedesId &&
319
+ (existing.expiresAt === undefined || existing.expiresAt > now)) {
320
+ this.store.unsupersedeMemory(existing.supersedesId, memory.scope, memory.id);
321
+ }
322
+ return memory;
323
+ });
313
324
  // Compact on the write path rather than on a timer: a scope only grows
314
325
  // when something is put into it, so this is the one moment reclaiming
315
326
  // is worth doing, and a local store is small enough that the cost is a
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@melra/memory",
3
- "version": "0.3.0-alpha.13",
3
+ "version": "0.3.0-alpha.15",
4
4
  "description": "Scoped and redacted operational memory for the MELRA kernel.",
5
5
  "license": "Apache-2.0",
6
6
  "repository": {
@@ -11,6 +11,9 @@
11
11
  "homepage": "https://github.com/XAGI-Lab/melra#readme",
12
12
  "bugs": "https://github.com/XAGI-Lab/melra/issues",
13
13
  "type": "module",
14
+ "engines": {
15
+ "node": "^22.13.0 || >=23.4.0"
16
+ },
14
17
  "exports": {
15
18
  ".": {
16
19
  "types": "./dist/index.d.ts",
@@ -21,9 +24,9 @@
21
24
  "dist"
22
25
  ],
23
26
  "dependencies": {
24
- "@melra/protocol": "0.3.0-alpha.13",
25
- "@melra/receipt-schema": "0.3.0-alpha.13",
26
- "@melra/storage-sqlite": "0.3.0-alpha.13"
27
+ "@melra/receipt-schema": "0.3.0-alpha.15",
28
+ "@melra/storage-sqlite": "0.3.0-alpha.15",
29
+ "@melra/protocol": "0.3.0-alpha.15"
27
30
  },
28
31
  "scripts": {
29
32
  "build": "tsc -p tsconfig.json",