@mono-agent/memory-supermemory 0.11.3 → 0.11.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.
- package/README.md +45 -14
- package/dist/store.d.ts +15 -6
- package/dist/store.d.ts.map +1 -1
- package/dist/store.js +37 -7
- package/dist/store.js.map +1 -1
- package/package.json +7 -2
package/README.md
CHANGED
|
@@ -52,12 +52,21 @@ const block = await store.load("conv-1", "preferences");
|
|
|
52
52
|
markdown block capped at `maxBytes`. Degrades to `undefined` on any error.
|
|
53
53
|
- `persistCompletedTurn` → one awaited `POST /v3/documents` containing the deterministic
|
|
54
54
|
summary and optional full capture text. A SHA-256-derived custom id keyed only by `runId`
|
|
55
|
-
keeps remote retries on one logical upsert.
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
55
|
+
keeps remote retries on one logical upsert. The store retains a bounded LRU of the 10,000 most
|
|
56
|
+
recently completed or exactly retried run fingerprints by default. Direct constructor users can
|
|
57
|
+
tune `SupermemoryStoreOptions.completedTurnCacheMaxEntries` up to a hard limit of 1,000,000; the
|
|
58
|
+
standard factory and agent JSON/env config deliberately use the bounded default. An exact
|
|
59
|
+
retained retry returns as a duplicate without another request and refreshes its LRU position;
|
|
60
|
+
conflicting reuse of a retained run id fails before a request. Inserting past the bound evicts
|
|
61
|
+
the least-recently-used successful completion. Failed and still-in-flight admissions do not
|
|
62
|
+
consume that completed-entry budget, and concurrent exact retries remain coalesced separately.
|
|
63
|
+
The cache retains at most two SHA-256 digests per entry—never raw run ids, conversation ids, or
|
|
64
|
+
turn content. A retry after eviction or process restart repeats the same stable-id upsert, so it
|
|
65
|
+
still converges remotely on one logical document, but the remote API does not expose enough
|
|
66
|
+
conditional/read state for mono-agent to classify that request as a duplicate or detect an old
|
|
67
|
+
conflicting payload. A different post-eviction payload can therefore replace the remote document
|
|
68
|
+
at that stable id; once its request starts, it becomes the new in-flight/local fingerprint and
|
|
69
|
+
concurrent alternatives fail as conflicts. Success returns the stable custom id after remote
|
|
61
70
|
admission, while any failure emits a constant content-free warning and is thrown so the harness
|
|
62
71
|
can report degradation. Raw run and
|
|
63
72
|
conversation ids are not placed in remote metadata. Documents over 1,000,000 bytes are
|
|
@@ -69,14 +78,36 @@ const block = await store.load("conv-1", "preferences");
|
|
|
69
78
|
|
|
70
79
|
## Public API
|
|
71
80
|
|
|
72
|
-
-
|
|
73
|
-
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
-
|
|
78
|
-
|
|
79
|
-
|
|
81
|
+
<!-- public-api-inventory:start -->
|
|
82
|
+
<!-- Generated by scripts/generate-public-api-docs.mjs. Do not edit by hand. -->
|
|
83
|
+
|
|
84
|
+
Every symbol exported by each public code entrypoint is listed below.
|
|
85
|
+
|
|
86
|
+
**`@mono-agent/memory-supermemory`**
|
|
87
|
+
|
|
88
|
+
```text
|
|
89
|
+
CreateSupermemoryStoreConfig
|
|
90
|
+
SUPERMEMORY_SOURCE
|
|
91
|
+
SupermemoryAddParams
|
|
92
|
+
SupermemoryClient
|
|
93
|
+
SupermemoryConfigValidation
|
|
94
|
+
SupermemoryFetch
|
|
95
|
+
SupermemoryFetchResponse
|
|
96
|
+
SupermemoryHit
|
|
97
|
+
SupermemoryHttpClientConfig
|
|
98
|
+
SupermemoryMemoryStore
|
|
99
|
+
SupermemoryMetadataValue
|
|
100
|
+
SupermemoryRecallHit
|
|
101
|
+
SupermemorySearchMode
|
|
102
|
+
SupermemorySearchParams
|
|
103
|
+
SupermemoryStoreOptions
|
|
104
|
+
createSupermemoryHttpClient
|
|
105
|
+
createSupermemoryStore
|
|
106
|
+
formatHitsAsBlock
|
|
107
|
+
validateSupermemoryConfig
|
|
108
|
+
```
|
|
109
|
+
|
|
110
|
+
<!-- public-api-inventory:end -->
|
|
80
111
|
|
|
81
112
|
## Dependency Boundary
|
|
82
113
|
|
package/dist/store.d.ts
CHANGED
|
@@ -5,6 +5,12 @@ export interface SupermemoryStoreOptions {
|
|
|
5
5
|
readonly maxBytes?: number;
|
|
6
6
|
/** Max hits to request per recall (passed through to the client). */
|
|
7
7
|
readonly recallLimit?: number;
|
|
8
|
+
/**
|
|
9
|
+
* Successful completed-turn fingerprints retained for same-process duplicate/conflict checks.
|
|
10
|
+
* Exact duplicates refresh this bounded LRU; older entries fall back to the remote stable-id upsert.
|
|
11
|
+
* This is a direct-constructor tuning seam; the standard factory deliberately uses the default.
|
|
12
|
+
*/
|
|
13
|
+
readonly completedTurnCacheMaxEntries?: number;
|
|
8
14
|
readonly logger?: {
|
|
9
15
|
warn(message: string): void;
|
|
10
16
|
};
|
|
@@ -21,10 +27,10 @@ export interface SupermemoryRecallHit {
|
|
|
21
27
|
* MemoryStore backed by an external Supermemory instance (local OSS binary or hosted cloud).
|
|
22
28
|
*
|
|
23
29
|
* The strong `persistCompletedTurn` path awaits one run-keyed remote upsert, coalesces exact
|
|
24
|
-
* same-process retries, rejects
|
|
25
|
-
* harness can report degradation without changing the provider answer.
|
|
26
|
-
* writes remain best-effort and NEVER throw: `appendHostSummary` returns `bytesWritten: 0`
|
|
27
|
-
* failure; `scheduleCapture` is fire-and-forget, serialized through a single chain so captures
|
|
30
|
+
* same-process retries, rejects payload conflicts retained in a bounded same-process LRU, and
|
|
31
|
+
* propagates failure so the harness can report degradation without changing the provider answer.
|
|
32
|
+
* Legacy writes remain best-effort and NEVER throw: `appendHostSummary` returns `bytesWritten: 0`
|
|
33
|
+
* on failure; `scheduleCapture` is fire-and-forget, serialized through a single chain so captures
|
|
28
34
|
* cannot overlap or reject the chain. Supermemory does extraction/consolidation server-side, so
|
|
29
35
|
* ingestion is async and a just-admitted turn may not be immediately searchable.
|
|
30
36
|
*
|
|
@@ -34,9 +40,10 @@ export interface SupermemoryRecallHit {
|
|
|
34
40
|
export declare class SupermemoryMemoryStore implements MemoryStore {
|
|
35
41
|
private readonly client;
|
|
36
42
|
private captureChain;
|
|
37
|
-
/**
|
|
43
|
+
/** Bounded LRU of successful run/payload digests; never retains raw ids or content. */
|
|
38
44
|
private readonly completedTurns;
|
|
39
45
|
private readonly completedTurnInflight;
|
|
46
|
+
private readonly completedTurnCacheMaxEntries;
|
|
40
47
|
private readonly maxBytes;
|
|
41
48
|
private readonly recallLimit;
|
|
42
49
|
private readonly logger;
|
|
@@ -46,7 +53,8 @@ export declare class SupermemoryMemoryStore implements MemoryStore {
|
|
|
46
53
|
/**
|
|
47
54
|
* Strong, awaited completed-turn admission. The remote custom id is derived
|
|
48
55
|
* only from the stable run id, so a cross-process retry upserts the same
|
|
49
|
-
* logical document;
|
|
56
|
+
* logical document; digests distinguish exact retry from conflict only while
|
|
57
|
+
* they remain in the bounded local LRU.
|
|
50
58
|
* Unlike the legacy write methods, any failure is logged and propagated for
|
|
51
59
|
* the harness to surface as memory degradation.
|
|
52
60
|
*/
|
|
@@ -63,5 +71,6 @@ export declare class SupermemoryMemoryStore implements MemoryStore {
|
|
|
63
71
|
readonly topK?: number;
|
|
64
72
|
}): Promise<SupermemoryRecallHit[]>;
|
|
65
73
|
private search;
|
|
74
|
+
private rememberCompletedTurn;
|
|
66
75
|
}
|
|
67
76
|
//# sourceMappingURL=store.d.ts.map
|
package/dist/store.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"store.d.ts","sourceRoot":"","sources":["../src/store.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EACV,WAAW,EACX,mBAAmB,EACnB,yBAAyB,EACzB,WAAW,EACX,iBAAiB,EAClB,MAAM,6BAA6B,CAAC;AAErC,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,aAAa,CAAC;
|
|
1
|
+
{"version":3,"file":"store.d.ts","sourceRoot":"","sources":["../src/store.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EACV,WAAW,EACX,mBAAmB,EACnB,yBAAyB,EACzB,WAAW,EACX,iBAAiB,EAClB,MAAM,6BAA6B,CAAC;AAErC,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,aAAa,CAAC;AAgBrD,MAAM,WAAW,uBAAuB;IACtC,wDAAwD;IACxD,QAAQ,CAAC,QAAQ,CAAC,EAAE,MAAM,CAAC;IAC3B,qEAAqE;IACrE,QAAQ,CAAC,WAAW,CAAC,EAAE,MAAM,CAAC;IAC9B;;;;OAIG;IACH,QAAQ,CAAC,4BAA4B,CAAC,EAAE,MAAM,CAAC;IAC/C,QAAQ,CAAC,MAAM,CAAC,EAAE;QAAE,IAAI,CAAC,OAAO,EAAE,MAAM,GAAG,IAAI,CAAA;KAAE,CAAC;CACnD;AAED,mGAAmG;AACnG,MAAM,WAAW,oBAAoB;IACnC,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;IACvB,QAAQ,CAAC,MAAM,EAAE;QAAE,QAAQ,CAAC,EAAE,EAAE,MAAM,CAAC;QAAC,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAA;KAAE,CAAC;CACjE;AAID;;;;;;;;;;;;;GAaG;AACH,qBAAa,sBAAuB,YAAW,WAAW;IActD,OAAO,CAAC,QAAQ,CAAC,MAAM;IAbzB,OAAO,CAAC,YAAY,CAAoC;IACxD,uFAAuF;IACvF,OAAO,CAAC,QAAQ,CAAC,cAAc,CAA6B;IAC5D,OAAO,CAAC,QAAQ,CAAC,qBAAqB,CAGjC;IACL,OAAO,CAAC,QAAQ,CAAC,4BAA4B,CAAS;IACtD,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAS;IAClC,OAAO,CAAC,QAAQ,CAAC,WAAW,CAAqB;IACjD,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAkC;gBAGtC,MAAM,EAAE,iBAAiB,EAC1C,OAAO,GAAE,uBAA4B;IAUjC,IAAI,CAAC,cAAc,EAAE,MAAM,EAAE,KAAK,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,WAAW,GAAG,SAAS,CAAC;IAc9E,iBAAiB,CAAC,cAAc,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,iBAAiB,CAAC;IAkB5F;;;;;;;OAOG;IACG,oBAAoB,CAAC,IAAI,EAAE,mBAAmB,GAAG,OAAO,CAAC,yBAAyB,CAAC;IAuDzF,eAAe,CAAC,cAAc,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,IAAI;IAarD,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC;IAI5B,mEAAmE;IAC7D,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC;IAI5B;;;OAGG;IACG,MAAM,CAAC,KAAK,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE;QAAE,QAAQ,CAAC,IAAI,CAAC,EAAE,MAAM,CAAA;KAAE,GAAG,OAAO,CAAC,oBAAoB,EAAE,CAAC;YAKpF,MAAM;IAKpB,OAAO,CAAC,qBAAqB;CAW9B"}
|
package/dist/store.js
CHANGED
|
@@ -4,6 +4,10 @@ import { formatHitsAsBlock, SUPERMEMORY_SOURCE } from "./format.js";
|
|
|
4
4
|
const DEFAULT_MAX_BYTES = 64_000;
|
|
5
5
|
/** Refuse oversized remote writes instead of silently dropping part of a completed turn. */
|
|
6
6
|
const MAX_COMPLETED_TURN_BYTES = 1_000_000;
|
|
7
|
+
/** Bound same-process completion fingerprints while covering a generous retry working set. */
|
|
8
|
+
const DEFAULT_COMPLETED_TURN_CACHE_MAX_ENTRIES = 10_000;
|
|
9
|
+
/** Keep even an explicitly enlarged cache within a finite, reviewable memory bound. */
|
|
10
|
+
const COMPLETED_TURN_CACHE_MAX_ENTRIES_LIMIT = 1_000_000;
|
|
7
11
|
const RECALL_WARNING = "supermemory recall failed; continuing without remote memory.";
|
|
8
12
|
const SUMMARY_WARNING = "supermemory appendHostSummary failed; the turn continues.";
|
|
9
13
|
const COMPLETED_TURN_WARNING = "supermemory persistCompletedTurn failed; the provider response remains valid.";
|
|
@@ -13,10 +17,10 @@ const NOOP_LOGGER = { warn: (_message) => { } };
|
|
|
13
17
|
* MemoryStore backed by an external Supermemory instance (local OSS binary or hosted cloud).
|
|
14
18
|
*
|
|
15
19
|
* The strong `persistCompletedTurn` path awaits one run-keyed remote upsert, coalesces exact
|
|
16
|
-
* same-process retries, rejects
|
|
17
|
-
* harness can report degradation without changing the provider answer.
|
|
18
|
-
* writes remain best-effort and NEVER throw: `appendHostSummary` returns `bytesWritten: 0`
|
|
19
|
-
* failure; `scheduleCapture` is fire-and-forget, serialized through a single chain so captures
|
|
20
|
+
* same-process retries, rejects payload conflicts retained in a bounded same-process LRU, and
|
|
21
|
+
* propagates failure so the harness can report degradation without changing the provider answer.
|
|
22
|
+
* Legacy writes remain best-effort and NEVER throw: `appendHostSummary` returns `bytesWritten: 0`
|
|
23
|
+
* on failure; `scheduleCapture` is fire-and-forget, serialized through a single chain so captures
|
|
20
24
|
* cannot overlap or reject the chain. Supermemory does extraction/consolidation server-side, so
|
|
21
25
|
* ingestion is async and a just-admitted turn may not be immediately searchable.
|
|
22
26
|
*
|
|
@@ -26,9 +30,10 @@ const NOOP_LOGGER = { warn: (_message) => { } };
|
|
|
26
30
|
export class SupermemoryMemoryStore {
|
|
27
31
|
client;
|
|
28
32
|
captureChain = Promise.resolve();
|
|
29
|
-
/**
|
|
33
|
+
/** Bounded LRU of successful run/payload digests; never retains raw ids or content. */
|
|
30
34
|
completedTurns = new Map();
|
|
31
35
|
completedTurnInflight = new Map();
|
|
36
|
+
completedTurnCacheMaxEntries;
|
|
32
37
|
maxBytes;
|
|
33
38
|
recallLimit;
|
|
34
39
|
logger;
|
|
@@ -36,6 +41,7 @@ export class SupermemoryMemoryStore {
|
|
|
36
41
|
this.client = client;
|
|
37
42
|
this.maxBytes = options.maxBytes ?? DEFAULT_MAX_BYTES;
|
|
38
43
|
this.recallLimit = options.recallLimit;
|
|
44
|
+
this.completedTurnCacheMaxEntries = normalizeCompletedTurnCacheMaxEntries(options.completedTurnCacheMaxEntries);
|
|
39
45
|
this.logger = options.logger ?? NOOP_LOGGER;
|
|
40
46
|
}
|
|
41
47
|
async load(conversationId, query) {
|
|
@@ -73,7 +79,8 @@ export class SupermemoryMemoryStore {
|
|
|
73
79
|
/**
|
|
74
80
|
* Strong, awaited completed-turn admission. The remote custom id is derived
|
|
75
81
|
* only from the stable run id, so a cross-process retry upserts the same
|
|
76
|
-
* logical document;
|
|
82
|
+
* logical document; digests distinguish exact retry from conflict only while
|
|
83
|
+
* they remain in the bounded local LRU.
|
|
77
84
|
* Unlike the legacy write methods, any failure is logged and propagated for
|
|
78
85
|
* the harness to surface as memory degradation.
|
|
79
86
|
*/
|
|
@@ -91,12 +98,15 @@ export class SupermemoryMemoryStore {
|
|
|
91
98
|
const completed = this.completedTurns.get(runIdHash);
|
|
92
99
|
if (completed !== undefined) {
|
|
93
100
|
assertMatchingCompletedTurn(completed, payloadDigest);
|
|
101
|
+
this.rememberCompletedTurn(runIdHash, completed);
|
|
94
102
|
return completedTurnResult(turn, customId, 0, "duplicate");
|
|
95
103
|
}
|
|
96
104
|
const inflight = this.completedTurnInflight.get(runIdHash);
|
|
97
105
|
if (inflight !== undefined) {
|
|
98
106
|
assertMatchingCompletedTurn(inflight.payloadDigest, payloadDigest);
|
|
99
107
|
await inflight.promise;
|
|
108
|
+
// Another run may have completed and evicted this fingerprint before this waiter resumed.
|
|
109
|
+
this.rememberCompletedTurn(runIdHash, payloadDigest);
|
|
100
110
|
return completedTurnResult(turn, customId, 0, "duplicate");
|
|
101
111
|
}
|
|
102
112
|
const result = completedTurnResult(turn, customId, bytesWritten, "admitted");
|
|
@@ -111,7 +121,7 @@ export class SupermemoryMemoryStore {
|
|
|
111
121
|
hasCapture: turn.captureText !== undefined,
|
|
112
122
|
},
|
|
113
123
|
});
|
|
114
|
-
this.
|
|
124
|
+
this.rememberCompletedTurn(runIdHash, payloadDigest);
|
|
115
125
|
return result;
|
|
116
126
|
})();
|
|
117
127
|
this.completedTurnInflight.set(runIdHash, { payloadDigest, promise });
|
|
@@ -161,6 +171,17 @@ export class SupermemoryMemoryStore {
|
|
|
161
171
|
const limit = topK ?? this.recallLimit;
|
|
162
172
|
return this.client.search({ query, ...(limit === undefined ? {} : { limit }) });
|
|
163
173
|
}
|
|
174
|
+
rememberCompletedTurn(runIdHash, payloadDigest) {
|
|
175
|
+
// Map iteration is insertion ordered. Reinsert exact retries so the first key is always the LRU.
|
|
176
|
+
this.completedTurns.delete(runIdHash);
|
|
177
|
+
this.completedTurns.set(runIdHash, payloadDigest);
|
|
178
|
+
if (this.completedTurns.size > this.completedTurnCacheMaxEntries) {
|
|
179
|
+
const oldestRunIdHash = this.completedTurns.keys().next().value;
|
|
180
|
+
if (oldestRunIdHash !== undefined) {
|
|
181
|
+
this.completedTurns.delete(oldestRunIdHash);
|
|
182
|
+
}
|
|
183
|
+
}
|
|
184
|
+
}
|
|
164
185
|
}
|
|
165
186
|
function stableId(input) {
|
|
166
187
|
return createHash("sha1").update(input).digest("hex").slice(0, 24);
|
|
@@ -180,6 +201,15 @@ function assertMatchingCompletedTurn(existing, incoming) {
|
|
|
180
201
|
throw new Error("supermemory: completed-turn run id conflicts with an already admitted payload");
|
|
181
202
|
}
|
|
182
203
|
}
|
|
204
|
+
function normalizeCompletedTurnCacheMaxEntries(value) {
|
|
205
|
+
const maxEntries = value ?? DEFAULT_COMPLETED_TURN_CACHE_MAX_ENTRIES;
|
|
206
|
+
if (!Number.isSafeInteger(maxEntries)
|
|
207
|
+
|| maxEntries < 1
|
|
208
|
+
|| maxEntries > COMPLETED_TURN_CACHE_MAX_ENTRIES_LIMIT) {
|
|
209
|
+
throw new RangeError(`completedTurnCacheMaxEntries must be an integer from 1 to ${COMPLETED_TURN_CACHE_MAX_ENTRIES_LIMIT}`);
|
|
210
|
+
}
|
|
211
|
+
return maxEntries;
|
|
212
|
+
}
|
|
183
213
|
function completedTurnResult(turn, id, bytesWritten, admissionStatus) {
|
|
184
214
|
return {
|
|
185
215
|
id,
|
package/dist/store.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"store.js","sourceRoot":"","sources":["../src/store.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AAWzC,OAAO,EAAE,iBAAiB,EAAE,kBAAkB,EAAE,MAAM,aAAa,CAAC;AAEpE,4FAA4F;AAC5F,MAAM,iBAAiB,GAAG,MAAM,CAAC;AACjC,4FAA4F;AAC5F,MAAM,wBAAwB,GAAG,SAAS,CAAC;AAC3C,MAAM,cAAc,GAAG,8DAA8D,CAAC;AACtF,MAAM,eAAe,GAAG,2DAA2D,CAAC;AACpF,MAAM,sBAAsB,GAAG,+EAA+E,CAAC;AAC/G,MAAM,eAAe,GAAG,wDAAwD,CAAC;
|
|
1
|
+
{"version":3,"file":"store.js","sourceRoot":"","sources":["../src/store.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,9 +1,14 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@mono-agent/memory-supermemory",
|
|
3
|
-
"version": "0.11.
|
|
3
|
+
"version": "0.11.4",
|
|
4
4
|
"description": "Supermemory external memory backend: a MemoryStore over Supermemory's REST API (local OSS binary or hosted cloud).",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"license": "GPL-3.0-only",
|
|
7
|
+
"repository": {
|
|
8
|
+
"type": "git",
|
|
9
|
+
"url": "git+https://github.com/robertsreberski/mono-agent.git",
|
|
10
|
+
"directory": "extras/memory-supermemory"
|
|
11
|
+
},
|
|
7
12
|
"private": false,
|
|
8
13
|
"engines": {
|
|
9
14
|
"node": ">=22.19.0"
|
|
@@ -24,7 +29,7 @@
|
|
|
24
29
|
"README.md"
|
|
25
30
|
],
|
|
26
31
|
"dependencies": {
|
|
27
|
-
"@mono-agent/agent-contracts": "0.11.
|
|
32
|
+
"@mono-agent/agent-contracts": "0.11.4"
|
|
28
33
|
},
|
|
29
34
|
"publishConfig": {
|
|
30
35
|
"access": "public"
|