@remnic/core 9.48.1 → 9.49.0

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 (240) hide show
  1. package/dist/access-admin-ops-surface.d.ts +6 -5
  2. package/dist/access-admin-ops-surface.js +27 -26
  3. package/dist/access-audit.js +2 -2
  4. package/dist/access-authorization-probe.d.ts +6 -5
  5. package/dist/access-authorization-probe.js +28 -27
  6. package/dist/access-boundary.d.ts +6 -5
  7. package/dist/access-boundary.js +27 -26
  8. package/dist/access-cli.js +64 -63
  9. package/dist/access-cli.js.map +1 -1
  10. package/dist/access-extraction-force-flush.d.ts +6 -5
  11. package/dist/access-extraction-force-flush.js +27 -26
  12. package/dist/access-http-lcm-compaction.d.ts +6 -5
  13. package/dist/access-http-lifecycle-flush.d.ts +6 -5
  14. package/dist/access-http-offline-stream.d.ts +6 -5
  15. package/dist/access-http-query.js +27 -26
  16. package/dist/access-http.d.ts +6 -5
  17. package/dist/access-http.js +35 -34
  18. package/dist/access-identity-continuity-surface.d.ts +5 -4
  19. package/dist/access-identity-continuity-surface.js +27 -26
  20. package/dist/access-lcm-surface.d.ts +6 -5
  21. package/dist/access-lcm-surface.js +27 -26
  22. package/dist/access-mcp.d.ts +6 -5
  23. package/dist/access-mcp.js +33 -32
  24. package/dist/access-namespace-preflight.js +27 -26
  25. package/dist/access-observe-write-surface.d.ts +6 -5
  26. package/dist/access-observe-write-surface.js +27 -26
  27. package/dist/access-offline-manifest.d.ts +5 -4
  28. package/dist/access-operations-batch.js +29 -28
  29. package/dist/access-operations.d.ts +6 -5
  30. package/dist/access-operations.js +32 -31
  31. package/dist/access-recall-concurrency.d.ts +6 -5
  32. package/dist/access-recall-concurrency.js +27 -26
  33. package/dist/access-recall-response.d.ts +6 -5
  34. package/dist/access-recall-response.js +27 -26
  35. package/dist/access-recall-surface.d.ts +6 -5
  36. package/dist/access-recall-surface.js +27 -26
  37. package/dist/access-schema.js +3 -3
  38. package/dist/{access-service-andNjwfD.d.ts → access-service-DvXOzCrM.d.ts} +3 -3
  39. package/dist/access-service-helpers.d.ts +6 -5
  40. package/dist/access-service.d.ts +6 -5
  41. package/dist/access-service.js +27 -26
  42. package/dist/access-surface-catalog.d.ts +6 -5
  43. package/dist/access-wearables-meetings-surface.d.ts +3 -2
  44. package/dist/bootstrap.d.ts +5 -4
  45. package/dist/briefing.d.ts +2 -1
  46. package/dist/briefing.js +7 -6
  47. package/dist/buffer.d.ts +2 -1
  48. package/dist/{capsule-crypto-7FJQINUR.js → capsule-crypto-YO5QJ6L3.js} +2 -2
  49. package/dist/{capsule-merge-Q6AR3XL7.js → capsule-merge-6GFHWECG.js} +4 -4
  50. package/dist/causal-consolidation.js +8 -7
  51. package/dist/causal-consolidation.js.map +1 -1
  52. package/dist/{chunk-FMCHFSZF.js → chunk-2RIWJUSQ.js} +6 -6
  53. package/dist/{chunk-S55OAS5P.js → chunk-2VHLLPTX.js} +4 -4
  54. package/dist/{chunk-GWHPQOUC.js → chunk-3R6D33UF.js} +2 -2
  55. package/dist/{chunk-PELT6ADC.js → chunk-5AGR7SAI.js} +3 -3
  56. package/dist/chunk-5GINB5LC.js +13 -0
  57. package/dist/chunk-5GINB5LC.js.map +1 -0
  58. package/dist/{chunk-FJ2ND6CZ.js → chunk-5JRC6BYS.js} +10 -10
  59. package/dist/{chunk-A2TFK5PG.js → chunk-ABR2HEJO.js} +2 -2
  60. package/dist/{chunk-NXUJRXSF.js → chunk-B6KGGRUL.js} +2 -2
  61. package/dist/{chunk-PRVJH7CY.js → chunk-BMCHFWGX.js} +2 -2
  62. package/dist/{chunk-2NLLXCJG.js → chunk-BXLOS5AJ.js} +2 -2
  63. package/dist/{chunk-ANCC3JJH.js → chunk-C3KVFJH5.js} +2 -2
  64. package/dist/{chunk-JYPO7L3G.js → chunk-CNQQMB67.js} +2 -2
  65. package/dist/{chunk-X7Y7WX73.js → chunk-DQEMWVMT.js} +1 -1
  66. package/dist/{chunk-2EJNXE53.js → chunk-ENEA47UC.js} +2 -2
  67. package/dist/{chunk-PLCZD3LG.js → chunk-EY64JLOM.js} +66 -31
  68. package/dist/chunk-EY64JLOM.js.map +1 -0
  69. package/dist/{chunk-4WBGZYZZ.js → chunk-EYAIZBLM.js} +4 -4
  70. package/dist/chunk-EYAIZBLM.js.map +1 -0
  71. package/dist/{chunk-YNDLCWXS.js → chunk-EZ25VE3G.js} +4 -4
  72. package/dist/{chunk-HAYSYUAB.js → chunk-FMXJ555A.js} +2 -2
  73. package/dist/{chunk-VANZKHTN.js → chunk-G5OB4XZX.js} +4 -4
  74. package/dist/{chunk-DUEEQCTT.js → chunk-I3YHVVT4.js} +2 -2
  75. package/dist/{chunk-3JUYWPFJ.js → chunk-I4TQST3L.js} +2 -2
  76. package/dist/{chunk-HIDEBEAN.js → chunk-IPBNC77A.js} +8 -8
  77. package/dist/{chunk-45OTV7FZ.js → chunk-IXPKESVP.js} +11 -11
  78. package/dist/{chunk-KSGEGHYA.js → chunk-IZANPXMV.js} +34 -34
  79. package/dist/{chunk-IP3DHDU2.js → chunk-JFLOOTXU.js} +3 -3
  80. package/dist/{chunk-XL3TATMJ.js → chunk-JHMAYABJ.js} +4 -4
  81. package/dist/{chunk-HRMEYQRO.js → chunk-JXZ7NLYH.js} +2 -2
  82. package/dist/{chunk-53AJILXF.js → chunk-K7VKAHFE.js} +4 -4
  83. package/dist/{chunk-IJ7HK452.js → chunk-KMAP7SNQ.js} +2 -2
  84. package/dist/{chunk-D5NGH2EW.js → chunk-L6DCVUCA.js} +2 -2
  85. package/dist/{chunk-M4DMO67I.js → chunk-LQL7ARIC.js} +3 -3
  86. package/dist/{chunk-3NDN5P55.js → chunk-MXPB6PJQ.js} +2 -2
  87. package/dist/{chunk-RSPSHRZA.js → chunk-MZZR3J6M.js} +2 -2
  88. package/dist/{chunk-YLHM5BQQ.js → chunk-OLX2HJFW.js} +4 -4
  89. package/dist/{chunk-NIS256NW.js → chunk-QKD65RGL.js} +2 -2
  90. package/dist/{chunk-A4JMGKCD.js → chunk-R5IGA2NH.js} +4 -4
  91. package/dist/chunk-RBOJCG4T.js +77 -0
  92. package/dist/chunk-RBOJCG4T.js.map +1 -0
  93. package/dist/{chunk-7YKVM5H3.js → chunk-RHTO4HTL.js} +2 -2
  94. package/dist/{chunk-GD7UPIBG.js → chunk-RJV6Q2FT.js} +2 -2
  95. package/dist/{chunk-5L7PTX2Q.js → chunk-SHDZNSK4.js} +2 -2
  96. package/dist/{chunk-WOEVJKKQ.js → chunk-SMPVHGHG.js} +3 -3
  97. package/dist/{chunk-7K5Q6COX.js → chunk-TVVEYCNW.js} +4 -4
  98. package/dist/{chunk-52I3YZZ6.js → chunk-ULWHRQEQ.js} +2 -2
  99. package/dist/{chunk-KQAFEZQX.js → chunk-VDX2J7OX.js} +2 -2
  100. package/dist/{chunk-2P3GQVM2.js → chunk-YQIVWS7Y.js} +50 -41
  101. package/dist/chunk-YQIVWS7Y.js.map +1 -0
  102. package/dist/{chunk-G2RBWVFQ.js → chunk-Z4U6U3M3.js} +2 -2
  103. package/dist/{chunk-EZNXW27Q.js → chunk-Z5UC3OKB.js} +6 -6
  104. package/dist/{cli-p_WmVo2h.d.ts → cli-PyAUaozE.d.ts} +3 -3
  105. package/dist/cli.d.ts +7 -6
  106. package/dist/cli.js +52 -51
  107. package/dist/compounding/engine.d.ts +2 -1
  108. package/dist/compounding/engine.js +7 -6
  109. package/dist/connectors/codex-materialize-runner.js +7 -6
  110. package/dist/connectors/index.js +7 -6
  111. package/dist/consolidation-provenance-check.d.ts +2 -1
  112. package/dist/consolidation-provenance-check.js +4 -4
  113. package/dist/consolidation-undo.d.ts +2 -1
  114. package/dist/consolidation-undo.js +3 -3
  115. package/dist/contradiction/index.d.ts +2 -1
  116. package/dist/convergence-refresh.d.ts +2 -1
  117. package/dist/convergence-refresh.js +9 -8
  118. package/dist/corpus-read-cancellation.d.ts +38 -0
  119. package/dist/corpus-read-cancellation.js +9 -0
  120. package/dist/corpus-read-cancellation.js.map +1 -0
  121. package/dist/corpus-watermark.js +16 -15
  122. package/dist/dashboard-runtime.js +2 -2
  123. package/dist/entity-retrieval.d.ts +2 -1
  124. package/dist/entity-retrieval.js +7 -6
  125. package/dist/explicit-capture.d.ts +5 -4
  126. package/dist/external-wiki-access.d.ts +6 -5
  127. package/dist/external-wiki-access.js +28 -27
  128. package/dist/external-wiki-mcp-tools.d.ts +6 -5
  129. package/dist/extraction.js +8 -7
  130. package/dist/in-flight-reads.d.ts +46 -2
  131. package/dist/in-flight-reads.js +5 -3
  132. package/dist/index.d.ts +11 -10
  133. package/dist/index.js +68 -67
  134. package/dist/lcm/index.js +3 -3
  135. package/dist/maintenance/memory-governance.js +7 -6
  136. package/dist/maintenance/rebuild-memory-lifecycle-ledger.d.ts +2 -1
  137. package/dist/maintenance/rebuild-memory-lifecycle-ledger.js +7 -6
  138. package/dist/maintenance/rebuild-memory-projection.d.ts +2 -1
  139. package/dist/maintenance/rebuild-memory-projection.js +8 -7
  140. package/dist/{maintenance-BfcuwfJS.d.ts → maintenance-j7sfNQdK.d.ts} +1 -1
  141. package/dist/mcp-memory-inspector-app.d.ts +6 -5
  142. package/dist/memory-corpus-version.js +2 -2
  143. package/dist/memory-worth-outcomes.d.ts +2 -1
  144. package/dist/namespaces/migrate.d.ts +2 -1
  145. package/dist/namespaces/migrate.js +15 -14
  146. package/dist/namespaces/search.js +7 -7
  147. package/dist/namespaces/storage.d.ts +2 -1
  148. package/dist/namespaces/storage.js +7 -6
  149. package/dist/operator-doctor-corpus.js +17 -16
  150. package/dist/operator-toolkit.d.ts +2 -1
  151. package/dist/operator-toolkit.js +22 -21
  152. package/dist/orchestration/compression-guideline-coordinator.d.ts +2 -1
  153. package/dist/orchestration/maintenance.d.ts +3 -2
  154. package/dist/orchestration/maintenance.js +12 -11
  155. package/dist/{orchestrator-B7nLo4z1.d.ts → orchestrator-Haa9xVPV.d.ts} +3 -3
  156. package/dist/orchestrator.d.ts +5 -4
  157. package/dist/orchestrator.js +64 -63
  158. package/dist/page-versioning.js +3 -3
  159. package/dist/search/factory.js +6 -6
  160. package/dist/search/index.js +11 -11
  161. package/dist/search/lancedb-backend.js +2 -2
  162. package/dist/search/meilisearch-backend.js +2 -2
  163. package/dist/search/orama-backend.js +2 -2
  164. package/dist/semantic-consolidation.js +8 -7
  165. package/dist/semantic-rule-promotion.js +7 -6
  166. package/dist/semantic-rule-verifier.js +7 -6
  167. package/dist/{service-B5W5IYCx.d.ts → service-Da_BI4S8.d.ts} +1 -1
  168. package/dist/source-agent-qualifier.js +7 -6
  169. package/dist/{storage-COL907QF.d.ts → storage-D1apCiCS.d.ts} +4 -3
  170. package/dist/storage.d.ts +2 -1
  171. package/dist/storage.js +6 -5
  172. package/dist/temporal-supersession.d.ts +2 -1
  173. package/dist/tier-migration.d.ts +2 -1
  174. package/dist/transfer/backup.js +2 -2
  175. package/dist/transfer/capsule-export.js +2 -2
  176. package/dist/transfer/capsule-import.js +5 -5
  177. package/dist/verified-recall.js +7 -6
  178. package/package.json +2 -2
  179. package/src/corpus-read-cancellation.ts +42 -0
  180. package/src/entity-retrieval.ts +4 -4
  181. package/src/in-flight-reads.ts +119 -6
  182. package/src/orchestration/namespace-read-fanout.ts +13 -2
  183. package/src/orchestration/recall-internal-deps.ts +2 -0
  184. package/src/orchestration/recall-internal.ts +4 -1
  185. package/src/orchestration/recall-search-pipeline.ts +2 -0
  186. package/src/orchestration/recall-search-prefilter.ts +5 -1
  187. package/src/orchestrator.ts +5 -5
  188. package/src/storage/entity-store.ts +9 -2
  189. package/src/storage/memory-read-store.ts +33 -4
  190. package/src/storage-contract/corpus-read-cancellation.test.ts +408 -0
  191. package/src/storage.ts +61 -19
  192. package/dist/chunk-2P3GQVM2.js.map +0 -1
  193. package/dist/chunk-4WBGZYZZ.js.map +0 -1
  194. package/dist/chunk-PDJTHRAW.js +0 -36
  195. package/dist/chunk-PDJTHRAW.js.map +0 -1
  196. package/dist/chunk-PLCZD3LG.js.map +0 -1
  197. /package/dist/{capsule-crypto-7FJQINUR.js.map → capsule-crypto-YO5QJ6L3.js.map} +0 -0
  198. /package/dist/{capsule-merge-Q6AR3XL7.js.map → capsule-merge-6GFHWECG.js.map} +0 -0
  199. /package/dist/{chunk-FMCHFSZF.js.map → chunk-2RIWJUSQ.js.map} +0 -0
  200. /package/dist/{chunk-S55OAS5P.js.map → chunk-2VHLLPTX.js.map} +0 -0
  201. /package/dist/{chunk-GWHPQOUC.js.map → chunk-3R6D33UF.js.map} +0 -0
  202. /package/dist/{chunk-PELT6ADC.js.map → chunk-5AGR7SAI.js.map} +0 -0
  203. /package/dist/{chunk-FJ2ND6CZ.js.map → chunk-5JRC6BYS.js.map} +0 -0
  204. /package/dist/{chunk-A2TFK5PG.js.map → chunk-ABR2HEJO.js.map} +0 -0
  205. /package/dist/{chunk-NXUJRXSF.js.map → chunk-B6KGGRUL.js.map} +0 -0
  206. /package/dist/{chunk-PRVJH7CY.js.map → chunk-BMCHFWGX.js.map} +0 -0
  207. /package/dist/{chunk-2NLLXCJG.js.map → chunk-BXLOS5AJ.js.map} +0 -0
  208. /package/dist/{chunk-ANCC3JJH.js.map → chunk-C3KVFJH5.js.map} +0 -0
  209. /package/dist/{chunk-JYPO7L3G.js.map → chunk-CNQQMB67.js.map} +0 -0
  210. /package/dist/{chunk-X7Y7WX73.js.map → chunk-DQEMWVMT.js.map} +0 -0
  211. /package/dist/{chunk-2EJNXE53.js.map → chunk-ENEA47UC.js.map} +0 -0
  212. /package/dist/{chunk-YNDLCWXS.js.map → chunk-EZ25VE3G.js.map} +0 -0
  213. /package/dist/{chunk-HAYSYUAB.js.map → chunk-FMXJ555A.js.map} +0 -0
  214. /package/dist/{chunk-VANZKHTN.js.map → chunk-G5OB4XZX.js.map} +0 -0
  215. /package/dist/{chunk-DUEEQCTT.js.map → chunk-I3YHVVT4.js.map} +0 -0
  216. /package/dist/{chunk-3JUYWPFJ.js.map → chunk-I4TQST3L.js.map} +0 -0
  217. /package/dist/{chunk-HIDEBEAN.js.map → chunk-IPBNC77A.js.map} +0 -0
  218. /package/dist/{chunk-45OTV7FZ.js.map → chunk-IXPKESVP.js.map} +0 -0
  219. /package/dist/{chunk-KSGEGHYA.js.map → chunk-IZANPXMV.js.map} +0 -0
  220. /package/dist/{chunk-IP3DHDU2.js.map → chunk-JFLOOTXU.js.map} +0 -0
  221. /package/dist/{chunk-XL3TATMJ.js.map → chunk-JHMAYABJ.js.map} +0 -0
  222. /package/dist/{chunk-HRMEYQRO.js.map → chunk-JXZ7NLYH.js.map} +0 -0
  223. /package/dist/{chunk-53AJILXF.js.map → chunk-K7VKAHFE.js.map} +0 -0
  224. /package/dist/{chunk-IJ7HK452.js.map → chunk-KMAP7SNQ.js.map} +0 -0
  225. /package/dist/{chunk-D5NGH2EW.js.map → chunk-L6DCVUCA.js.map} +0 -0
  226. /package/dist/{chunk-M4DMO67I.js.map → chunk-LQL7ARIC.js.map} +0 -0
  227. /package/dist/{chunk-3NDN5P55.js.map → chunk-MXPB6PJQ.js.map} +0 -0
  228. /package/dist/{chunk-RSPSHRZA.js.map → chunk-MZZR3J6M.js.map} +0 -0
  229. /package/dist/{chunk-YLHM5BQQ.js.map → chunk-OLX2HJFW.js.map} +0 -0
  230. /package/dist/{chunk-NIS256NW.js.map → chunk-QKD65RGL.js.map} +0 -0
  231. /package/dist/{chunk-A4JMGKCD.js.map → chunk-R5IGA2NH.js.map} +0 -0
  232. /package/dist/{chunk-7YKVM5H3.js.map → chunk-RHTO4HTL.js.map} +0 -0
  233. /package/dist/{chunk-GD7UPIBG.js.map → chunk-RJV6Q2FT.js.map} +0 -0
  234. /package/dist/{chunk-5L7PTX2Q.js.map → chunk-SHDZNSK4.js.map} +0 -0
  235. /package/dist/{chunk-WOEVJKKQ.js.map → chunk-SMPVHGHG.js.map} +0 -0
  236. /package/dist/{chunk-7K5Q6COX.js.map → chunk-TVVEYCNW.js.map} +0 -0
  237. /package/dist/{chunk-52I3YZZ6.js.map → chunk-ULWHRQEQ.js.map} +0 -0
  238. /package/dist/{chunk-KQAFEZQX.js.map → chunk-VDX2J7OX.js.map} +0 -0
  239. /package/dist/{chunk-G2RBWVFQ.js.map → chunk-Z4U6U3M3.js.map} +0 -0
  240. /package/dist/{chunk-EZNXW27Q.js.map → chunk-Z5UC3OKB.js.map} +0 -0
@@ -27,6 +27,10 @@ import {
27
27
  SPECULATIVE_TTL_DAYS,
28
28
  confidenceTier
29
29
  } from "./chunk-3S63QIFQ.js";
30
+ import {
31
+ normalizeProjectionPreview,
32
+ normalizeProjectionTags
33
+ } from "./chunk-SCU65EZI.js";
30
34
  import {
31
35
  rewriteProjectedEntityReferences,
32
36
  rewriteProjectedMemoryEntityReference
@@ -34,10 +38,6 @@ import {
34
38
  import {
35
39
  createMemorySnapshot
36
40
  } from "./chunk-S2HLHAZ4.js";
37
- import {
38
- normalizeProjectionPreview,
39
- normalizeProjectionTags
40
- } from "./chunk-SCU65EZI.js";
41
41
  import {
42
42
  rotateMarkdownFileToArchive
43
43
  } from "./chunk-DM2T26WE.js";
@@ -74,20 +74,23 @@ import {
74
74
  import {
75
75
  normalizeEntityName
76
76
  } from "./chunk-YXZG5TVN.js";
77
+ import {
78
+ checkCorpusReadAbort
79
+ } from "./chunk-5GINB5LC.js";
77
80
  import {
78
81
  isConsolidationOperator,
79
82
  isValidDerivedFromEntry
80
83
  } from "./chunk-G7D6GZ5J.js";
81
84
  import {
82
85
  createVersion
83
- } from "./chunk-7YKVM5H3.js";
86
+ } from "./chunk-RHTO4HTL.js";
84
87
  import {
88
+ attachInFlightReader,
89
+ beginCoalescedScan,
85
90
  clearInFlightReads,
86
91
  deleteInFlightRead,
87
- deleteInFlightReadsForDir,
88
- getInFlightRead,
89
- setInFlightRead
90
- } from "./chunk-PDJTHRAW.js";
92
+ deleteInFlightReadsForDir
93
+ } from "./chunk-RBOJCG4T.js";
91
94
  import {
92
95
  ENTITY_CANONICAL_ID_MIGRATION_FILE,
93
96
  ENTITY_CANONICAL_ID_RECONCILE_CONSUMING_MARKER,
@@ -190,6 +193,10 @@ import {
190
193
  import {
191
194
  resolveNamespaceCapabilities
192
195
  } from "./chunk-2XRE6FLM.js";
196
+ import {
197
+ isAbortError,
198
+ raceAbort
199
+ } from "./chunk-BTTPKDIL.js";
193
200
  import {
194
201
  isPathInsideStorageRoot
195
202
  } from "./chunk-FF4KLI5W.js";
@@ -299,7 +306,8 @@ var MemoryReadStore = class {
299
306
  });
300
307
  return days;
301
308
  }
302
- async readAllArtifactsCached() {
309
+ async readAllArtifactsCached(options) {
310
+ checkCorpusReadAbort(options);
303
311
  if (this.deps.artifactIndexCache && Date.now() - this.deps.artifactIndexCache.loadedAtMs <= this.deps.storageManagerClass.ARTIFACT_INDEX_CACHE_TTL_MS && this.deps.artifactIndexCache.writeVersion === this.deps.getArtifactWriteVersion()) {
304
312
  return this.deps.artifactIndexCache.memories;
305
313
  }
@@ -309,6 +317,7 @@ var MemoryReadStore = class {
309
317
  try {
310
318
  const entries = await readdir(dir, { withFileTypes: true });
311
319
  for (const entry of entries) {
320
+ checkCorpusReadAbort(options);
312
321
  const fullPath = path.join(dir, entry.name);
313
322
  if (entry.isDirectory()) {
314
323
  await readDir(fullPath);
@@ -319,7 +328,8 @@ var MemoryReadStore = class {
319
328
  if (!memory) continue;
320
329
  artifacts.push(memory);
321
330
  }
322
- } catch {
331
+ } catch (err) {
332
+ if (isAbortError(err)) throw err;
323
333
  }
324
334
  };
325
335
  await readDir(this.deps.artifactsDir);
@@ -328,10 +338,12 @@ var MemoryReadStore = class {
328
338
  const MAX_REBUILD_RETRIES = 2;
329
339
  let latestArtifacts = [];
330
340
  for (let attempt = 0; attempt <= MAX_REBUILD_RETRIES; attempt += 1) {
341
+ checkCorpusReadAbort(options);
331
342
  const versionBefore = this.deps.getArtifactWriteVersion();
332
343
  const artifacts = await scanArtifacts();
333
344
  const versionAfter = this.deps.getArtifactWriteVersion();
334
345
  latestArtifacts = artifacts;
346
+ checkCorpusReadAbort(options);
335
347
  if (versionAfter === versionBefore) {
336
348
  this.deps.artifactIndexCache = { memories: artifacts, loadedAtMs: Date.now(), writeVersion: versionAfter };
337
349
  return artifacts;
@@ -348,7 +360,7 @@ var MemoryReadStore = class {
348
360
  * consolidation-provenance-check.ts; reuses the shared containment helper.
349
361
  * Paths only — no frontmatter parse.
350
362
  */
351
- async collectContainedMarkdownPaths(startDirs, propagateReadErrors = false) {
363
+ async collectContainedMarkdownPaths(startDirs, propagateReadErrors = false, options) {
352
364
  const filePaths = [];
353
365
  let memoryRootReal;
354
366
  try {
@@ -358,6 +370,7 @@ var MemoryReadStore = class {
358
370
  return filePaths;
359
371
  }
360
372
  const collectPaths = async (dir) => {
373
+ checkCorpusReadAbort(options);
361
374
  let dirStat;
362
375
  try {
363
376
  dirStat = await lstat(dir);
@@ -382,6 +395,7 @@ var MemoryReadStore = class {
382
395
  }
383
396
  const subdirs = [];
384
397
  for (const entry of entries) {
398
+ checkCorpusReadAbort(options);
385
399
  if (entry.isSymbolicLink()) continue;
386
400
  const fullPath = path.join(dir, entry.name);
387
401
  if (entry.isDirectory()) {
@@ -402,12 +416,14 @@ var MemoryReadStore = class {
402
416
  for (const dir of startDirs) {
403
417
  await collectPaths(dir);
404
418
  }
419
+ checkCorpusReadAbort(options);
405
420
  return filePaths;
406
421
  }
407
422
  async collectActiveMemoryPaths(options) {
408
423
  return this.collectContainedMarkdownPaths(
409
424
  RECALL_FALLBACK_DIRS.map((dir) => path.join(this.deps.baseDir, dir)),
410
- options?.propagateReadErrors ?? false
425
+ options?.propagateReadErrors ?? false,
426
+ options
411
427
  );
412
428
  }
413
429
  /**
@@ -422,7 +438,8 @@ var MemoryReadStore = class {
422
438
  async collectColdMemoryPaths(options) {
423
439
  return this.collectContainedMarkdownPaths(
424
440
  [this.deps.resolveTierRootDir("cold")],
425
- options?.propagateReadErrors ?? false
441
+ options?.propagateReadErrors ?? false,
442
+ options
426
443
  );
427
444
  }
428
445
  async readMemoriesWindow(options = {}) {
@@ -1727,7 +1744,8 @@ var EntityStore = class {
1727
1744
  * Read all entity files and return lightweight EntityFile objects.
1728
1745
  * Parsing is fast (~50-100ms for ~1,800 files) since entity files are small.
1729
1746
  */
1730
- async readAllEntityFiles() {
1747
+ async readAllEntityFiles(options) {
1748
+ checkCorpusReadAbort(options);
1731
1749
  const currentVersion = this.deps.getMemoryStatusVersion();
1732
1750
  const cacheKey = [
1733
1751
  this.deps.getEntityCacheSecureStoreKey(),
@@ -1743,6 +1761,7 @@ var EntityStore = class {
1743
1761
  const BATCH_SIZE = 100;
1744
1762
  const entities = [];
1745
1763
  for (let i = 0; i < mdFiles.length; i += BATCH_SIZE) {
1764
+ checkCorpusReadAbort(options);
1746
1765
  const batch = mdFiles.slice(i, i + BATCH_SIZE);
1747
1766
  const results = await Promise.all(
1748
1767
  batch.map(async (entry) => {
@@ -1759,6 +1778,7 @@ var EntityStore = class {
1759
1778
  if (content !== null) entities.push(parseEntityFile(content, this.deps.entitySchemas));
1760
1779
  }
1761
1780
  }
1781
+ checkCorpusReadAbort(options);
1762
1782
  setCachedEntities(this.deps.baseDir, entities, currentVersion, cacheKey);
1763
1783
  return entities;
1764
1784
  } catch (err) {
@@ -8524,12 +8544,12 @@ ${sanitized.text}
8524
8544
  this.artifactIndexCache = null;
8525
8545
  return id;
8526
8546
  }
8527
- async readAllArtifactsCached() {
8528
- return this.memoryReadStore.readAllArtifactsCached();
8547
+ async readAllArtifactsCached(options) {
8548
+ return this.memoryReadStore.readAllArtifactsCached(options);
8529
8549
  }
8530
8550
  async searchArtifacts(query, maxResults, options = {}) {
8531
8551
  return selectArtifactMatches(
8532
- () => this.readAllArtifactsCached(),
8552
+ () => this.readAllArtifactsCached({ abortSignal: options.abortSignal }),
8533
8553
  query,
8534
8554
  maxResults,
8535
8555
  options
@@ -8613,7 +8633,8 @@ ${sanitized.text}
8613
8633
  for (const memory of memories) this.rememberMemorySnapshot(memory);
8614
8634
  return memories;
8615
8635
  }
8616
- async readAllMemories() {
8636
+ async readAllMemories(options) {
8637
+ checkCorpusReadAbort(options);
8617
8638
  if (this.hotMemoriesCacheEnabled) {
8618
8639
  const cached = getCachedMemories(
8619
8640
  this.baseDir,
@@ -8624,20 +8645,32 @@ ${sanitized.text}
8624
8645
  if (cached !== null) return this.rememberMemorySnapshots(cached);
8625
8646
  }
8626
8647
  const keyId = this.hotCacheKeyId();
8627
- const inFlight = getInFlightRead(this.baseDir, keyId);
8628
- if (inFlight) return this.rememberMemorySnapshots(await inFlight);
8648
+ const inFlight = attachInFlightReader(this.baseDir, keyId, options?.abortSignal);
8649
+ if (inFlight) {
8650
+ try {
8651
+ return this.rememberMemorySnapshots(
8652
+ await raceAbort(inFlight.read, options?.abortSignal, "corpus read aborted")
8653
+ );
8654
+ } finally {
8655
+ inFlight.waiter.leave();
8656
+ }
8657
+ }
8658
+ const scan = beginCoalescedScan(this.baseDir, keyId, options?.abortSignal);
8629
8659
  const readPromise = (async () => {
8630
8660
  const version = this.getMemoryCorpusVersion();
8631
- const memories = await this._readAllMemoriesFromDisk();
8661
+ const memories = await this._readAllMemoriesFromDisk({ abortSignal: scan.scanSignal });
8632
8662
  if (this.hotMemoriesCacheEnabled && this.getMemoryCorpusVersion() === version && this.hotCacheKeyId() === keyId) {
8633
8663
  setCachedMemories(this.baseDir, memories, version, keyId, this.hotCacheTtlMs());
8634
8664
  }
8635
8665
  return memories;
8636
8666
  })();
8637
- setInFlightRead(this.baseDir, keyId, readPromise);
8667
+ scan.arm(readPromise);
8638
8668
  try {
8639
- return this.rememberMemorySnapshots(await readPromise);
8669
+ return this.rememberMemorySnapshots(
8670
+ await raceAbort(readPromise, options?.abortSignal, "corpus read aborted")
8671
+ );
8640
8672
  } finally {
8673
+ scan.leave();
8641
8674
  deleteInFlightRead(this.baseDir, keyId, readPromise);
8642
8675
  }
8643
8676
  }
@@ -8821,11 +8854,12 @@ ${sanitized.text}
8821
8854
  getCorpusScanVersion() {
8822
8855
  return `${this.getMemoryCorpusVersion()}:${this.readColdWriteVersion()}`;
8823
8856
  }
8824
- async readParsedMemoriesFromPaths(filePaths, batchSize) {
8857
+ async readParsedMemoriesFromPaths(filePaths, batchSize, options) {
8825
8858
  if (filePaths.length === 0) return [];
8826
8859
  const normalizedBatchSize = this.normalizeMemoryReadBatchSize(batchSize);
8827
8860
  const memories = [];
8828
8861
  for (let i = 0; i < filePaths.length; i += normalizedBatchSize) {
8862
+ checkCorpusReadAbort(options);
8829
8863
  const batch = filePaths.slice(i, i + normalizedBatchSize);
8830
8864
  const results = await Promise.all(
8831
8865
  batch.map(async (fullPath) => {
@@ -8855,6 +8889,7 @@ ${sanitized.text}
8855
8889
  if (memory !== null) memories.push(memory);
8856
8890
  }
8857
8891
  }
8892
+ checkCorpusReadAbort(options);
8858
8893
  return memories;
8859
8894
  }
8860
8895
  async readWindowUpdatedMs(filePath) {
@@ -8936,9 +8971,9 @@ ${sanitized.text}
8936
8971
  async readMemoriesWindow(options = {}) {
8937
8972
  return this.memoryReadStore.readMemoriesWindow(options);
8938
8973
  }
8939
- async _readAllMemoriesFromDisk() {
8940
- const filePaths = await this.collectActiveMemoryPaths();
8941
- return this.readParsedMemoriesFromPaths(filePaths, 50);
8974
+ async _readAllMemoriesFromDisk(options) {
8975
+ const filePaths = await this.collectActiveMemoryPaths(options);
8976
+ return this.readParsedMemoriesFromPaths(filePaths, 50, options);
8942
8977
  }
8943
8978
  async readAllColdMemories() {
8944
8979
  return this.rememberMemorySnapshots(await this.memoryReadStore.readAllColdMemories());
@@ -10127,8 +10162,8 @@ ${reflection}
10127
10162
  // ---------------------------------------------------------------------------
10128
10163
  // Scoring + Knowledge Index (Knowledge Graph v7.0)
10129
10164
  // ---------------------------------------------------------------------------
10130
- async readAllEntityFiles() {
10131
- return this.entityStore.readAllEntityFiles();
10165
+ async readAllEntityFiles(options) {
10166
+ return this.entityStore.readAllEntityFiles(options);
10132
10167
  }
10133
10168
  /**
10134
10169
  * Score an entity based on recency, frequency, activity, type priority,
@@ -10804,4 +10839,4 @@ export {
10804
10839
  isValidBufferSurpriseEvent,
10805
10840
  StorageManager3 as StorageManager
10806
10841
  };
10807
- //# sourceMappingURL=chunk-PLCZD3LG.js.map
10842
+ //# sourceMappingURL=chunk-EY64JLOM.js.map