@polpo-ai/core 0.15.41 → 0.15.43

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 (108) hide show
  1. package/README.md +54 -0
  2. package/dist/__tests__/memory-store-policy.test.d.ts +2 -0
  3. package/dist/__tests__/memory-store-policy.test.d.ts.map +1 -0
  4. package/dist/__tests__/memory-store-policy.test.js +141 -0
  5. package/dist/__tests__/memory-store-policy.test.js.map +1 -0
  6. package/dist/__tests__/typed-memory.test.d.ts +2 -0
  7. package/dist/__tests__/typed-memory.test.d.ts.map +1 -0
  8. package/dist/__tests__/typed-memory.test.js +226 -0
  9. package/dist/__tests__/typed-memory.test.js.map +1 -0
  10. package/dist/adapter.d.ts +3 -0
  11. package/dist/adapter.d.ts.map +1 -1
  12. package/dist/index.d.ts +2 -0
  13. package/dist/index.d.ts.map +1 -1
  14. package/dist/index.js +2 -0
  15. package/dist/index.js.map +1 -1
  16. package/dist/memory/compatibility.d.ts +3 -0
  17. package/dist/memory/compatibility.d.ts.map +1 -0
  18. package/dist/memory/compatibility.js +27 -0
  19. package/dist/memory/compatibility.js.map +1 -0
  20. package/dist/memory/dedupe.d.ts +4 -0
  21. package/dist/memory/dedupe.d.ts.map +1 -0
  22. package/dist/memory/dedupe.js +21 -0
  23. package/dist/memory/dedupe.js.map +1 -0
  24. package/dist/memory/errors.d.ts +7 -0
  25. package/dist/memory/errors.d.ts.map +1 -0
  26. package/dist/memory/errors.js +11 -0
  27. package/dist/memory/errors.js.map +1 -0
  28. package/dist/memory/extraction.d.ts +124 -0
  29. package/dist/memory/extraction.d.ts.map +1 -0
  30. package/dist/memory/extraction.js +450 -0
  31. package/dist/memory/extraction.js.map +1 -0
  32. package/dist/memory/extraction.test.d.ts +2 -0
  33. package/dist/memory/extraction.test.d.ts.map +1 -0
  34. package/dist/memory/extraction.test.js +366 -0
  35. package/dist/memory/extraction.test.js.map +1 -0
  36. package/dist/memory/in-memory-extraction-store.d.ts +30 -0
  37. package/dist/memory/in-memory-extraction-store.d.ts.map +1 -0
  38. package/dist/memory/in-memory-extraction-store.js +363 -0
  39. package/dist/memory/in-memory-extraction-store.js.map +1 -0
  40. package/dist/memory/in-memory-store.d.ts +25 -0
  41. package/dist/memory/in-memory-store.d.ts.map +1 -0
  42. package/dist/memory/in-memory-store.js +434 -0
  43. package/dist/memory/in-memory-store.js.map +1 -0
  44. package/dist/memory/index.d.ts +20 -0
  45. package/dist/memory/index.d.ts.map +1 -0
  46. package/dist/memory/index.js +14 -0
  47. package/dist/memory/index.js.map +1 -0
  48. package/dist/memory/item.d.ts +6 -0
  49. package/dist/memory/item.d.ts.map +1 -0
  50. package/dist/memory/item.js +169 -0
  51. package/dist/memory/item.js.map +1 -0
  52. package/dist/memory/lifecycle.d.ts +5 -0
  53. package/dist/memory/lifecycle.d.ts.map +1 -0
  54. package/dist/memory/lifecycle.js +32 -0
  55. package/dist/memory/lifecycle.js.map +1 -0
  56. package/dist/memory/policy.d.ts +27 -0
  57. package/dist/memory/policy.d.ts.map +1 -0
  58. package/dist/memory/policy.js +114 -0
  59. package/dist/memory/policy.js.map +1 -0
  60. package/dist/memory/ranking.d.ts +9 -0
  61. package/dist/memory/ranking.d.ts.map +1 -0
  62. package/dist/memory/ranking.js +65 -0
  63. package/dist/memory/ranking.js.map +1 -0
  64. package/dist/memory/scope.d.ts +5 -0
  65. package/dist/memory/scope.d.ts.map +1 -0
  66. package/dist/memory/scope.js +68 -0
  67. package/dist/memory/scope.js.map +1 -0
  68. package/dist/memory/store-errors.d.ts +10 -0
  69. package/dist/memory/store-errors.d.ts.map +1 -0
  70. package/dist/memory/store-errors.js +19 -0
  71. package/dist/memory/store-errors.js.map +1 -0
  72. package/dist/memory/store-types.d.ts +97 -0
  73. package/dist/memory/store-types.d.ts.map +1 -0
  74. package/dist/memory/store-types.js +2 -0
  75. package/dist/memory/store-types.js.map +1 -0
  76. package/dist/memory/types.d.ts +70 -0
  77. package/dist/memory/types.d.ts.map +1 -0
  78. package/dist/memory/types.js +32 -0
  79. package/dist/memory/types.js.map +1 -0
  80. package/dist/orchestrator-context.d.ts +6 -0
  81. package/dist/orchestrator-context.d.ts.map +1 -1
  82. package/dist/runtime-context/index.d.ts +5 -0
  83. package/dist/runtime-context/index.d.ts.map +1 -0
  84. package/dist/runtime-context/index.js +4 -0
  85. package/dist/runtime-context/index.js.map +1 -0
  86. package/dist/runtime-context/memory-retriever.d.ts +14 -0
  87. package/dist/runtime-context/memory-retriever.d.ts.map +1 -0
  88. package/dist/runtime-context/memory-retriever.js +76 -0
  89. package/dist/runtime-context/memory-retriever.js.map +1 -0
  90. package/dist/runtime-context/runtime-context.d.ts +4 -0
  91. package/dist/runtime-context/runtime-context.d.ts.map +1 -0
  92. package/dist/runtime-context/runtime-context.js +311 -0
  93. package/dist/runtime-context/runtime-context.js.map +1 -0
  94. package/dist/runtime-context/runtime-context.test.d.ts +2 -0
  95. package/dist/runtime-context/runtime-context.test.d.ts.map +1 -0
  96. package/dist/runtime-context/runtime-context.test.js +282 -0
  97. package/dist/runtime-context/runtime-context.test.js.map +1 -0
  98. package/dist/runtime-context/types.d.ts +75 -0
  99. package/dist/runtime-context/types.d.ts.map +1 -0
  100. package/dist/runtime-context/types.js +8 -0
  101. package/dist/runtime-context/types.js.map +1 -0
  102. package/dist/task-runner.d.ts.map +1 -1
  103. package/dist/task-runner.js +16 -0
  104. package/dist/task-runner.js.map +1 -1
  105. package/dist/types/config.d.ts +6 -0
  106. package/dist/types/config.d.ts.map +1 -1
  107. package/dist/types/config.js.map +1 -1
  108. package/package.json +9 -1
@@ -0,0 +1,434 @@
1
+ import { MemoryContractError } from "./errors.js";
2
+ import { createMemoryDedupeIdentity } from "./dedupe.js";
3
+ import { normalizeMemoryItem } from "./item.js";
4
+ import { assertMemoryStatusTransition, isMemoryItemExpired, isMemoryItemRetrievable, } from "./lifecycle.js";
5
+ import { evaluateMemoryWrite } from "./policy.js";
6
+ import { rankMemoryItems, selectMemoryResultsWithinBudget } from "./ranking.js";
7
+ import { canAccessMemoryScope, memoryScopeKey, normalizeMemoryScope, } from "./scope.js";
8
+ import { MemoryAuthorizationError, MemoryConflictError, MemoryPolicyError, } from "./store-errors.js";
9
+ import { MEMORY_KINDS, MEMORY_STATUSES, } from "./types.js";
10
+ const memoryKinds = new Set(MEMORY_KINDS);
11
+ const memoryStatuses = new Set(MEMORY_STATUSES);
12
+ const usageTypes = new Set([
13
+ "retrieved",
14
+ "written",
15
+ "updated",
16
+ "superseded",
17
+ "forgotten",
18
+ ]);
19
+ function text(value, path, max = 512) {
20
+ if (typeof value !== "string") {
21
+ throw new MemoryContractError(`${path} must be a string`, "invalid_item", path);
22
+ }
23
+ const normalized = value.trim();
24
+ if (normalized.length === 0 || normalized.length > max) {
25
+ throw new MemoryContractError(`${path} must contain between 1 and ${max} characters`, "invalid_item", path);
26
+ }
27
+ return normalized;
28
+ }
29
+ function timestamp(value, path) {
30
+ if (!(typeof value === "string" || value instanceof Date)) {
31
+ throw new MemoryContractError(`${path} must be a timestamp`, "invalid_item", path);
32
+ }
33
+ const parsed = value instanceof Date ? value : new Date(value);
34
+ if (!Number.isFinite(parsed.getTime())) {
35
+ throw new MemoryContractError(`${path} must be a timestamp`, "invalid_item", path);
36
+ }
37
+ return parsed.toISOString();
38
+ }
39
+ function normalizeContext(context) {
40
+ if (!context || typeof context !== "object") {
41
+ throw new MemoryContractError("Memory store context is required");
42
+ }
43
+ if (!context.access
44
+ || typeof context.access !== "object"
45
+ || Array.isArray(context.access)) {
46
+ throw new MemoryContractError("Memory store access context is required", "invalid_scope", "access");
47
+ }
48
+ return {
49
+ ...context,
50
+ namespace: text(context.namespace, "namespace"),
51
+ access: { ...context.access },
52
+ ...(context.now ? { now: timestamp(context.now, "now") } : {}),
53
+ };
54
+ }
55
+ function normalizeLimit(value) {
56
+ if (value === undefined)
57
+ return 1_000;
58
+ if (!Number.isInteger(value) || value < 0 || value > 10_000) {
59
+ throw new MemoryContractError("Memory list limit must be an integer between 0 and 10000", "invalid_item", "limit");
60
+ }
61
+ return value;
62
+ }
63
+ function normalizeListCursor(value) {
64
+ if (!value || typeof value !== "object" || Array.isArray(value)) {
65
+ throw new MemoryContractError("Memory list cursor must be an object", "invalid_item", "after");
66
+ }
67
+ const keys = Object.keys(value);
68
+ if (keys.length !== 2
69
+ || !keys.includes("createdAt")
70
+ || !keys.includes("id")) {
71
+ throw new MemoryContractError("Memory list cursor is malformed", "invalid_item", "after");
72
+ }
73
+ return Object.freeze({
74
+ createdAt: timestamp(value.createdAt, "after.createdAt"),
75
+ id: text(value.id, "after.id", 256),
76
+ });
77
+ }
78
+ function compareUnicodeCodePoints(left, right) {
79
+ const leftPoints = [...left];
80
+ const rightPoints = [...right];
81
+ const length = Math.min(leftPoints.length, rightPoints.length);
82
+ for (let index = 0; index < length; index += 1) {
83
+ const leftPoint = leftPoints[index].codePointAt(0);
84
+ const rightPoint = rightPoints[index].codePointAt(0);
85
+ if (leftPoint !== rightPoint)
86
+ return leftPoint - rightPoint;
87
+ }
88
+ return leftPoints.length - rightPoints.length;
89
+ }
90
+ function compareListPositions(left, right) {
91
+ return left.createdAt.localeCompare(right.createdAt)
92
+ || compareUnicodeCodePoints(left.id, right.id);
93
+ }
94
+ function normalizeUsageEvent(value) {
95
+ if (!value || typeof value !== "object" || !usageTypes.has(value.type)) {
96
+ throw new MemoryContractError("Invalid Memory usage event");
97
+ }
98
+ return Object.freeze({
99
+ id: text(value.id, "usage.id", 256),
100
+ memoryId: text(value.memoryId, "usage.memoryId", 256),
101
+ type: value.type,
102
+ at: timestamp(value.at, "usage.at"),
103
+ ...(value.runId ? { runId: text(value.runId, "usage.runId") } : {}),
104
+ ...(value.sessionId
105
+ ? { sessionId: text(value.sessionId, "usage.sessionId") }
106
+ : {}),
107
+ ...(value.requestId
108
+ ? { requestId: text(value.requestId, "usage.requestId") }
109
+ : {}),
110
+ });
111
+ }
112
+ function cloneItem(item) {
113
+ return normalizeMemoryItem(JSON.parse(JSON.stringify(item)));
114
+ }
115
+ function cloneUsage(event) {
116
+ return normalizeUsageEvent(JSON.parse(JSON.stringify(event)));
117
+ }
118
+ export class InMemoryMemoryItemStore {
119
+ writePolicy;
120
+ namespaces = new Map();
121
+ constructor(writePolicy = {}, snapshot) {
122
+ this.writePolicy = writePolicy;
123
+ if (snapshot)
124
+ this.replaceSnapshot(snapshot);
125
+ }
126
+ state(namespace) {
127
+ let state = this.namespaces.get(namespace);
128
+ if (!state) {
129
+ state = { items: new Map(), usage: [] };
130
+ this.namespaces.set(namespace, state);
131
+ }
132
+ return state;
133
+ }
134
+ existing(id, context) {
135
+ const normalized = normalizeContext(context);
136
+ const item = this.namespaces.get(normalized.namespace)?.items.get(text(id, "id", 256));
137
+ if (!item || !canAccessMemoryScope(item.scope, normalized.access)) {
138
+ return undefined;
139
+ }
140
+ return item;
141
+ }
142
+ async assertWriteAllowed(item, context) {
143
+ const decision = await evaluateMemoryWrite(item, context, this.writePolicy);
144
+ const unauthorized = decision.violations.some((violation) => violation.code === "unauthorized_scope");
145
+ if (unauthorized)
146
+ throw new MemoryAuthorizationError();
147
+ if (!decision.allowed) {
148
+ throw new MemoryPolicyError(`Memory write denied: ${decision.violations
149
+ .map((violation) => violation.code)
150
+ .join(", ")}`);
151
+ }
152
+ }
153
+ async create(value, context) {
154
+ const normalizedContext = normalizeContext(context);
155
+ const item = cloneItem(value);
156
+ if (item.status !== "active" && item.status !== "pending") {
157
+ throw new MemoryContractError("New Memory items may only be active or pending", "invalid_item", "status");
158
+ }
159
+ await this.assertWriteAllowed(item, normalizedContext);
160
+ const state = this.state(normalizedContext.namespace);
161
+ if (state.items.has(item.id)) {
162
+ throw new MemoryConflictError(`Memory item "${item.id}" already exists in this namespace`);
163
+ }
164
+ state.items.set(item.id, item);
165
+ return cloneItem(item);
166
+ }
167
+ async get(id, context, options = {}) {
168
+ const item = this.existing(id, context);
169
+ if (!item)
170
+ return undefined;
171
+ const now = options.now ?? context.now ?? new Date();
172
+ if (!options.includeInactive && item.status !== "active")
173
+ return undefined;
174
+ if (!options.includeExpired && isMemoryItemExpired(item, now))
175
+ return undefined;
176
+ return cloneItem(item);
177
+ }
178
+ async list(query, context) {
179
+ const page = await this.listPage(query, context);
180
+ return [...page.items];
181
+ }
182
+ async listPage(query, context) {
183
+ const normalized = normalizeContext(context);
184
+ const state = this.namespaces.get(normalized.namespace);
185
+ if (!state)
186
+ return { items: [] };
187
+ const statuses = query.statuses ?? ["active"];
188
+ for (const status of statuses) {
189
+ if (!memoryStatuses.has(status)) {
190
+ throw new MemoryContractError(`Unknown Memory status: ${status}`);
191
+ }
192
+ }
193
+ const kinds = query.kinds;
194
+ if (kinds) {
195
+ for (const kind of kinds) {
196
+ if (!memoryKinds.has(kind)) {
197
+ throw new MemoryContractError(`Unknown Memory kind: ${kind}`);
198
+ }
199
+ }
200
+ }
201
+ const scopeKey = query.scope
202
+ ? memoryScopeKey(normalizeMemoryScope(query.scope))
203
+ : undefined;
204
+ const now = query.now ?? normalized.now ?? new Date();
205
+ const limit = normalizeLimit(query.limit);
206
+ const after = query.after
207
+ ? normalizeListCursor(query.after)
208
+ : undefined;
209
+ const candidates = [...state.items.values()]
210
+ .filter((item) => canAccessMemoryScope(item.scope, normalized.access))
211
+ .filter((item) => statuses.includes(item.status))
212
+ .filter((item) => !kinds || kinds.includes(item.kind))
213
+ .filter((item) => !scopeKey || memoryScopeKey(item.scope) === scopeKey)
214
+ .filter((item) => query.includeExpired || !isMemoryItemExpired(item, now))
215
+ .sort(compareListPositions);
216
+ const positioned = after
217
+ ? candidates.filter((item) => compareListPositions(item, after) > 0)
218
+ : candidates;
219
+ if (limit === 0)
220
+ return { items: [] };
221
+ const hasMore = positioned.length > limit;
222
+ const items = positioned.slice(0, limit).map(cloneItem);
223
+ const last = items.at(-1);
224
+ return {
225
+ items,
226
+ ...(hasMore && last
227
+ ? {
228
+ nextCursor: Object.freeze({
229
+ createdAt: last.createdAt,
230
+ id: last.id,
231
+ }),
232
+ }
233
+ : {}),
234
+ };
235
+ }
236
+ async update(id, patch, context) {
237
+ const normalized = normalizeContext(context);
238
+ const current = this.existing(id, normalized);
239
+ if (!current)
240
+ return undefined;
241
+ const status = patch.status ?? current.status;
242
+ assertMemoryStatusTransition(current.status, status);
243
+ const candidate = normalizeMemoryItem({
244
+ ...current,
245
+ ...(patch.content === undefined ? {} : { content: patch.content }),
246
+ ...(patch.summary === undefined
247
+ ? {}
248
+ : patch.summary === null
249
+ ? { summary: undefined }
250
+ : { summary: patch.summary }),
251
+ ...(patch.confidence === undefined
252
+ ? {}
253
+ : patch.confidence === null
254
+ ? { confidence: undefined }
255
+ : { confidence: patch.confidence }),
256
+ ...(patch.expiresAt === undefined
257
+ ? {}
258
+ : patch.expiresAt === null
259
+ ? { expiresAt: undefined }
260
+ : { expiresAt: patch.expiresAt }),
261
+ status,
262
+ updatedAt: timestamp(normalized.now ?? new Date(), "now"),
263
+ });
264
+ await this.assertWriteAllowed(candidate, normalized);
265
+ const state = this.state(normalized.namespace);
266
+ if (state.items.get(current.id) !== current) {
267
+ throw new MemoryConflictError(`Memory item "${current.id}" changed during update`);
268
+ }
269
+ state.items.set(candidate.id, candidate);
270
+ return cloneItem(candidate);
271
+ }
272
+ async supersede(id, replacementValue, context) {
273
+ const normalized = normalizeContext(context);
274
+ const current = this.existing(id, normalized);
275
+ if (!current)
276
+ return undefined;
277
+ assertMemoryStatusTransition(current.status, "superseded");
278
+ const replacement = cloneItem(replacementValue);
279
+ if (replacement.status !== "active") {
280
+ throw new MemoryContractError("A superseding Memory replacement must be active", "invalid_item", "status");
281
+ }
282
+ if (replacement.id === current.id) {
283
+ throw new MemoryConflictError("Replacement Memory id must be different");
284
+ }
285
+ const state = this.state(normalized.namespace);
286
+ if (state.items.has(replacement.id)) {
287
+ throw new MemoryConflictError(`Memory item "${replacement.id}" already exists in this namespace`);
288
+ }
289
+ await this.assertWriteAllowed(replacement, normalized);
290
+ if (state.items.get(current.id) !== current) {
291
+ throw new MemoryConflictError(`Memory item "${current.id}" changed during supersede`);
292
+ }
293
+ if (state.items.has(replacement.id)) {
294
+ throw new MemoryConflictError(`Memory item "${replacement.id}" was created during supersede`);
295
+ }
296
+ const updatedAt = timestamp(normalized.now ?? new Date(), "now");
297
+ const superseded = normalizeMemoryItem({
298
+ ...current,
299
+ status: "superseded",
300
+ updatedAt,
301
+ });
302
+ state.items.set(current.id, superseded);
303
+ state.items.set(replacement.id, replacement);
304
+ return {
305
+ superseded: cloneItem(superseded),
306
+ replacement: cloneItem(replacement),
307
+ };
308
+ }
309
+ async forget(id, context) {
310
+ const normalized = normalizeContext(context);
311
+ const current = this.existing(id, normalized);
312
+ if (!current)
313
+ return false;
314
+ assertMemoryStatusTransition(current.status, "deleted");
315
+ const deleted = normalizeMemoryItem({
316
+ ...current,
317
+ status: "deleted",
318
+ updatedAt: timestamp(normalized.now ?? new Date(), "now"),
319
+ });
320
+ this.state(normalized.namespace).items.set(deleted.id, deleted);
321
+ return true;
322
+ }
323
+ async search(query, context) {
324
+ const candidates = await this.list({
325
+ statuses: ["active"],
326
+ kinds: query.kinds,
327
+ scope: query.scope,
328
+ now: query.now,
329
+ limit: 10_000,
330
+ }, context);
331
+ const ranked = rankMemoryItems(candidates.filter((item) => isMemoryItemRetrievable(item, query.now ?? context.now ?? new Date())), query.query);
332
+ return selectMemoryResultsWithinBudget(ranked, {
333
+ tokenBudget: query.tokenBudget ?? Number.MAX_SAFE_INTEGER,
334
+ maxResults: query.maxResults ?? 20,
335
+ });
336
+ }
337
+ async findDedupeCandidate(input, context) {
338
+ const identity = createMemoryDedupeIdentity(input);
339
+ const normalized = normalizeContext(context);
340
+ const state = this.namespaces.get(normalized.namespace);
341
+ if (!state)
342
+ return undefined;
343
+ const now = normalized.now ?? new Date();
344
+ const candidate = [...state.items.values()]
345
+ .filter((item) => canAccessMemoryScope(item.scope, normalized.access))
346
+ .filter((item) => item.status === "active" || item.status === "pending")
347
+ .filter((item) => !isMemoryItemExpired(item, now))
348
+ .filter((item) => createMemoryDedupeIdentity(item) === identity)
349
+ .sort((left, right) => (left.createdAt.localeCompare(right.createdAt)
350
+ || left.id.localeCompare(right.id)))[0];
351
+ return candidate ? cloneItem(candidate) : undefined;
352
+ }
353
+ async appendUsage(value, context) {
354
+ const normalized = normalizeContext(context);
355
+ const item = this.existing(value.memoryId, normalized);
356
+ if (!item)
357
+ throw new MemoryAuthorizationError();
358
+ const event = normalizeUsageEvent(value);
359
+ const state = this.state(normalized.namespace);
360
+ if (state.usage.some((existing) => existing.id === event.id)) {
361
+ throw new MemoryConflictError(`Memory usage event "${event.id}" already exists`);
362
+ }
363
+ state.usage.push(event);
364
+ }
365
+ async listUsage(memoryId, context) {
366
+ const normalized = normalizeContext(context);
367
+ const item = this.existing(memoryId, normalized);
368
+ if (!item)
369
+ return [];
370
+ return (this.namespaces.get(normalized.namespace)?.usage ?? [])
371
+ .filter((event) => event.memoryId === item.id)
372
+ .slice()
373
+ .sort((left, right) => (left.at.localeCompare(right.at)
374
+ || left.id.localeCompare(right.id)))
375
+ .map(cloneUsage);
376
+ }
377
+ exportSnapshot() {
378
+ const namespaces = [...this.namespaces]
379
+ .sort(([left], [right]) => left.localeCompare(right))
380
+ .map(([namespace, state]) => ({
381
+ namespace,
382
+ items: [...state.items.values()]
383
+ .sort((left, right) => left.id.localeCompare(right.id))
384
+ .map(cloneItem),
385
+ usage: state.usage
386
+ .slice()
387
+ .sort((left, right) => left.id.localeCompare(right.id))
388
+ .map(cloneUsage),
389
+ }));
390
+ return Object.freeze({
391
+ version: 1,
392
+ namespaces: Object.freeze(namespaces),
393
+ });
394
+ }
395
+ replaceSnapshot(value) {
396
+ if (!value || value.version !== 1 || !Array.isArray(value.namespaces)) {
397
+ throw new MemoryContractError("Invalid Memory item store snapshot");
398
+ }
399
+ const next = new Map();
400
+ for (const namespaceState of value.namespaces) {
401
+ const namespace = text(namespaceState.namespace, "snapshot.namespace");
402
+ if (next.has(namespace)) {
403
+ throw new MemoryConflictError(`Duplicate Memory namespace "${namespace}"`);
404
+ }
405
+ if (!Array.isArray(namespaceState.items)
406
+ || !Array.isArray(namespaceState.usage)) {
407
+ throw new MemoryContractError("Invalid Memory namespace snapshot");
408
+ }
409
+ const items = new Map();
410
+ for (const valueItem of namespaceState.items) {
411
+ const item = cloneItem(valueItem);
412
+ if (items.has(item.id)) {
413
+ throw new MemoryConflictError(`Duplicate Memory item "${item.id}"`);
414
+ }
415
+ items.set(item.id, item);
416
+ }
417
+ const usage = namespaceState.usage.map((event) => cloneUsage(event));
418
+ if (new Set(usage.map((event) => event.id)).size !== usage.length) {
419
+ throw new MemoryConflictError("Duplicate Memory usage event");
420
+ }
421
+ for (const event of usage) {
422
+ if (!items.has(event.memoryId)) {
423
+ throw new MemoryContractError(`Memory usage references missing item "${event.memoryId}"`);
424
+ }
425
+ }
426
+ next.set(namespace, { items, usage });
427
+ }
428
+ this.namespaces.clear();
429
+ for (const [namespace, state] of next) {
430
+ this.namespaces.set(namespace, state);
431
+ }
432
+ }
433
+ }
434
+ //# sourceMappingURL=in-memory-store.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"in-memory-store.js","sourceRoot":"","sources":["../../src/memory/in-memory-store.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,20 @@
1
+ export { MAX_MEMORY_CONTENT_CHARACTERS, MAX_MEMORY_SUMMARY_CHARACTERS, createMemoryItem, normalizeMemoryItem, } from "./item.js";
2
+ export { canAccessMemoryScope, memoryScopeKey, normalizeMemoryScope, } from "./scope.js";
3
+ export { assertMemoryStatusTransition, isMemoryItemExpired, isMemoryItemRetrievable, } from "./lifecycle.js";
4
+ export { createMemoryDedupeIdentity, normalizeMemoryDedupeContent, } from "./dedupe.js";
5
+ export { renderMemoryItemsMarkdown } from "./compatibility.js";
6
+ export { MemoryContractError } from "./errors.js";
7
+ export type { MemoryContractErrorCode } from "./errors.js";
8
+ export { MemoryAuthorizationError, MemoryConflictError, MemoryPolicyError, } from "./store-errors.js";
9
+ export { detectSensitiveMemoryContent, evaluateMemoryWrite, } from "./policy.js";
10
+ export type { MemoryPolicyViolation, MemorySensitiveContentFinding, MemorySensitiveContentHook, MemoryWriteDecision, MemoryWritePolicy, } from "./policy.js";
11
+ export { estimateMemoryItemTokens, rankMemoryItems, selectMemoryResultsWithinBudget, } from "./ranking.js";
12
+ export { InMemoryMemoryItemStore } from "./in-memory-store.js";
13
+ export { MEMORY_EXTRACTION_AUDIT_TYPES, MEMORY_EXTRACTION_PROPOSAL_ACTIONS, MEMORY_EXTRACTION_STATUSES, createMemoryExtractionCandidate, createMemoryExtractionDecision, memoryExtractionCandidateIdentity, normalizeMemoryExtractionAuditEvent, normalizeMemoryExtractionCandidate, } from "./extraction.js";
14
+ export type { CreateMemoryExtractionCandidateInput, MemoryExtractionApplyInput, MemoryExtractionAuditEvent, MemoryExtractionAuditType, MemoryExtractionCandidate, MemoryExtractionCandidateFactoryOptions, MemoryExtractionCandidateStore, MemoryExtractionDecision, MemoryExtractionDecisionInput, MemoryExtractionListQuery, MemoryExtractionMetadataValue, MemoryExtractionProposal, MemoryExtractionProposalAction, MemoryExtractionProposeResult, MemoryExtractionReviewer, MemoryExtractionSnapshotNamespace, MemoryExtractionSource, MemoryExtractionStatus, MemoryExtractionStoreContext, MemoryExtractionStoreSnapshot, } from "./extraction.js";
15
+ export { InMemoryMemoryExtractionStore, } from "./in-memory-extraction-store.js";
16
+ export type { InMemoryMemoryExtractionStoreOptions, } from "./in-memory-extraction-store.js";
17
+ export { MEMORY_KINDS, MEMORY_PROVENANCE_SOURCES, MEMORY_SCOPE_KINDS, MEMORY_STATUSES, } from "./types.js";
18
+ export type { CreateMemoryItemInput, MemoryDedupeInput, MemoryItem, MemoryItemFactoryOptions, MemoryKind, MemoryProvenance, MemoryProvenanceActor, MemoryProvenanceSource, MemoryScope, MemoryScopeAccess, MemoryScopeKind, MemoryStatus, RenderMemoryItemsOptions, } from "./types.js";
19
+ export type { MemoryGetOptions, MemoryItemPatch, MemoryItemStore, MemoryItemStoreSnapshot, MemoryListCursor, MemoryListPage, MemoryListPageQuery, MemoryListQuery, MemorySearchQuery, MemorySearchResult, MemoryStoreContext, MemoryStoreSnapshotNamespace, MemorySupersedeResult, MemoryUsageEvent, MemoryUsageEventType, MemoryWriteSurface, } from "./store-types.js";
20
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/memory/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,6BAA6B,EAC7B,6BAA6B,EAC7B,gBAAgB,EAChB,mBAAmB,GACpB,MAAM,WAAW,CAAC;AACnB,OAAO,EACL,oBAAoB,EACpB,cAAc,EACd,oBAAoB,GACrB,MAAM,YAAY,CAAC;AACpB,OAAO,EACL,4BAA4B,EAC5B,mBAAmB,EACnB,uBAAuB,GACxB,MAAM,gBAAgB,CAAC;AACxB,OAAO,EACL,0BAA0B,EAC1B,4BAA4B,GAC7B,MAAM,aAAa,CAAC;AACrB,OAAO,EAAE,yBAAyB,EAAE,MAAM,oBAAoB,CAAC;AAC/D,OAAO,EAAE,mBAAmB,EAAE,MAAM,aAAa,CAAC;AAClD,YAAY,EAAE,uBAAuB,EAAE,MAAM,aAAa,CAAC;AAC3D,OAAO,EACL,wBAAwB,EACxB,mBAAmB,EACnB,iBAAiB,GAClB,MAAM,mBAAmB,CAAC;AAC3B,OAAO,EACL,4BAA4B,EAC5B,mBAAmB,GACpB,MAAM,aAAa,CAAC;AACrB,YAAY,EACV,qBAAqB,EACrB,6BAA6B,EAC7B,0BAA0B,EAC1B,mBAAmB,EACnB,iBAAiB,GAClB,MAAM,aAAa,CAAC;AACrB,OAAO,EACL,wBAAwB,EACxB,eAAe,EACf,+BAA+B,GAChC,MAAM,cAAc,CAAC;AACtB,OAAO,EAAE,uBAAuB,EAAE,MAAM,sBAAsB,CAAC;AAC/D,OAAO,EACL,6BAA6B,EAC7B,kCAAkC,EAClC,0BAA0B,EAC1B,+BAA+B,EAC/B,8BAA8B,EAC9B,iCAAiC,EACjC,mCAAmC,EACnC,kCAAkC,GACnC,MAAM,iBAAiB,CAAC;AACzB,YAAY,EACV,oCAAoC,EACpC,0BAA0B,EAC1B,0BAA0B,EAC1B,yBAAyB,EACzB,yBAAyB,EACzB,uCAAuC,EACvC,8BAA8B,EAC9B,wBAAwB,EACxB,6BAA6B,EAC7B,yBAAyB,EACzB,6BAA6B,EAC7B,wBAAwB,EACxB,8BAA8B,EAC9B,6BAA6B,EAC7B,wBAAwB,EACxB,iCAAiC,EACjC,sBAAsB,EACtB,sBAAsB,EACtB,4BAA4B,EAC5B,6BAA6B,GAC9B,MAAM,iBAAiB,CAAC;AACzB,OAAO,EACL,6BAA6B,GAC9B,MAAM,iCAAiC,CAAC;AACzC,YAAY,EACV,oCAAoC,GACrC,MAAM,iCAAiC,CAAC;AACzC,OAAO,EACL,YAAY,EACZ,yBAAyB,EACzB,kBAAkB,EAClB,eAAe,GAChB,MAAM,YAAY,CAAC;AACpB,YAAY,EACV,qBAAqB,EACrB,iBAAiB,EACjB,UAAU,EACV,wBAAwB,EACxB,UAAU,EACV,gBAAgB,EAChB,qBAAqB,EACrB,sBAAsB,EACtB,WAAW,EACX,iBAAiB,EACjB,eAAe,EACf,YAAY,EACZ,wBAAwB,GACzB,MAAM,YAAY,CAAC;AACpB,YAAY,EACV,gBAAgB,EAChB,eAAe,EACf,eAAe,EACf,uBAAuB,EACvB,gBAAgB,EAChB,cAAc,EACd,mBAAmB,EACnB,eAAe,EACf,iBAAiB,EACjB,kBAAkB,EAClB,kBAAkB,EAClB,4BAA4B,EAC5B,qBAAqB,EACrB,gBAAgB,EAChB,oBAAoB,EACpB,kBAAkB,GACnB,MAAM,kBAAkB,CAAC"}
@@ -0,0 +1,14 @@
1
+ export { MAX_MEMORY_CONTENT_CHARACTERS, MAX_MEMORY_SUMMARY_CHARACTERS, createMemoryItem, normalizeMemoryItem, } from "./item.js";
2
+ export { canAccessMemoryScope, memoryScopeKey, normalizeMemoryScope, } from "./scope.js";
3
+ export { assertMemoryStatusTransition, isMemoryItemExpired, isMemoryItemRetrievable, } from "./lifecycle.js";
4
+ export { createMemoryDedupeIdentity, normalizeMemoryDedupeContent, } from "./dedupe.js";
5
+ export { renderMemoryItemsMarkdown } from "./compatibility.js";
6
+ export { MemoryContractError } from "./errors.js";
7
+ export { MemoryAuthorizationError, MemoryConflictError, MemoryPolicyError, } from "./store-errors.js";
8
+ export { detectSensitiveMemoryContent, evaluateMemoryWrite, } from "./policy.js";
9
+ export { estimateMemoryItemTokens, rankMemoryItems, selectMemoryResultsWithinBudget, } from "./ranking.js";
10
+ export { InMemoryMemoryItemStore } from "./in-memory-store.js";
11
+ export { MEMORY_EXTRACTION_AUDIT_TYPES, MEMORY_EXTRACTION_PROPOSAL_ACTIONS, MEMORY_EXTRACTION_STATUSES, createMemoryExtractionCandidate, createMemoryExtractionDecision, memoryExtractionCandidateIdentity, normalizeMemoryExtractionAuditEvent, normalizeMemoryExtractionCandidate, } from "./extraction.js";
12
+ export { InMemoryMemoryExtractionStore, } from "./in-memory-extraction-store.js";
13
+ export { MEMORY_KINDS, MEMORY_PROVENANCE_SOURCES, MEMORY_SCOPE_KINDS, MEMORY_STATUSES, } from "./types.js";
14
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/memory/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,6BAA6B,EAC7B,6BAA6B,EAC7B,gBAAgB,EAChB,mBAAmB,GACpB,MAAM,WAAW,CAAC;AACnB,OAAO,EACL,oBAAoB,EACpB,cAAc,EACd,oBAAoB,GACrB,MAAM,YAAY,CAAC;AACpB,OAAO,EACL,4BAA4B,EAC5B,mBAAmB,EACnB,uBAAuB,GACxB,MAAM,gBAAgB,CAAC;AACxB,OAAO,EACL,0BAA0B,EAC1B,4BAA4B,GAC7B,MAAM,aAAa,CAAC;AACrB,OAAO,EAAE,yBAAyB,EAAE,MAAM,oBAAoB,CAAC;AAC/D,OAAO,EAAE,mBAAmB,EAAE,MAAM,aAAa,CAAC;AAElD,OAAO,EACL,wBAAwB,EACxB,mBAAmB,EACnB,iBAAiB,GAClB,MAAM,mBAAmB,CAAC;AAC3B,OAAO,EACL,4BAA4B,EAC5B,mBAAmB,GACpB,MAAM,aAAa,CAAC;AAQrB,OAAO,EACL,wBAAwB,EACxB,eAAe,EACf,+BAA+B,GAChC,MAAM,cAAc,CAAC;AACtB,OAAO,EAAE,uBAAuB,EAAE,MAAM,sBAAsB,CAAC;AAC/D,OAAO,EACL,6BAA6B,EAC7B,kCAAkC,EAClC,0BAA0B,EAC1B,+BAA+B,EAC/B,8BAA8B,EAC9B,iCAAiC,EACjC,mCAAmC,EACnC,kCAAkC,GACnC,MAAM,iBAAiB,CAAC;AAuBzB,OAAO,EACL,6BAA6B,GAC9B,MAAM,iCAAiC,CAAC;AAIzC,OAAO,EACL,YAAY,EACZ,yBAAyB,EACzB,kBAAkB,EAClB,eAAe,GAChB,MAAM,YAAY,CAAC"}
@@ -0,0 +1,6 @@
1
+ import { type CreateMemoryItemInput, type MemoryItem, type MemoryItemFactoryOptions } from "./types.js";
2
+ export declare const MAX_MEMORY_CONTENT_CHARACTERS = 32000;
3
+ export declare const MAX_MEMORY_SUMMARY_CHARACTERS = 1000;
4
+ export declare function createMemoryItem(input: CreateMemoryItemInput, factory?: MemoryItemFactoryOptions): MemoryItem;
5
+ export declare function normalizeMemoryItem(value: unknown): MemoryItem;
6
+ //# sourceMappingURL=item.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"item.d.ts","sourceRoot":"","sources":["../../src/memory/item.ts"],"names":[],"mappings":"AAGA,OAAO,EAIL,KAAK,qBAAqB,EAC1B,KAAK,UAAU,EACf,KAAK,wBAAwB,EAM9B,MAAM,YAAY,CAAC;AAEpB,eAAO,MAAM,6BAA6B,QAAS,CAAC;AACpD,eAAO,MAAM,6BAA6B,OAAQ,CAAC;AA+OnD,wBAAgB,gBAAgB,CAC9B,KAAK,EAAE,qBAAqB,EAC5B,OAAO,GAAE,wBAA6B,GACrC,UAAU,CA2BZ;AAED,wBAAgB,mBAAmB,CAAC,KAAK,EAAE,OAAO,GAAG,UAAU,CAK9D"}