@remnic/core 9.30.1 → 9.31.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 (493) hide show
  1. package/dist/access-admin-ops-surface.d.ts +10 -10
  2. package/dist/access-admin-ops-surface.js +50 -44
  3. package/dist/access-authorization-probe.d.ts +10 -10
  4. package/dist/access-authorization-probe.js +51 -45
  5. package/dist/access-boundary.d.ts +13 -11
  6. package/dist/access-boundary.js +50 -44
  7. package/dist/access-cli.js +168 -123
  8. package/dist/access-cli.js.map +1 -1
  9. package/dist/access-extraction-force-flush.d.ts +119 -0
  10. package/dist/access-extraction-force-flush.js +166 -0
  11. package/dist/access-health-types.d.ts +1 -1
  12. package/dist/access-http-lcm-compaction.d.ts +47 -13
  13. package/dist/access-http-lcm-compaction.js +7 -3
  14. package/dist/access-http-lifecycle-flush.d.ts +132 -0
  15. package/dist/access-http-lifecycle-flush.js +9 -0
  16. package/dist/access-http-lifecycle-flush.js.map +1 -0
  17. package/dist/access-http.d.ts +11 -10
  18. package/dist/access-http.js +66 -59
  19. package/dist/access-identity-continuity-surface.d.ts +8 -8
  20. package/dist/access-identity-continuity-surface.js +50 -44
  21. package/dist/access-lcm-surface.d.ts +10 -10
  22. package/dist/access-lcm-surface.js +50 -44
  23. package/dist/access-mcp-output-schemas.js +1 -1
  24. package/dist/access-mcp.d.ts +16 -10
  25. package/dist/access-mcp.js +58 -52
  26. package/dist/access-memory-search-fanout.d.ts +2 -2
  27. package/dist/{access-namespace-preflight-VfXssvoI.d.ts → access-namespace-preflight-D4vW97H1.d.ts} +1 -1
  28. package/dist/access-namespace-preflight.d.ts +3 -3
  29. package/dist/access-namespace-preflight.js +50 -44
  30. package/dist/access-observe-helpers.d.ts +22 -0
  31. package/dist/access-observe-helpers.js +10 -0
  32. package/dist/access-observe-helpers.js.map +1 -0
  33. package/dist/access-observe-write-surface.d.ts +51 -47
  34. package/dist/access-observe-write-surface.js +50 -44
  35. package/dist/access-operations-batch.js +53 -47
  36. package/dist/access-operations.d.ts +11 -11
  37. package/dist/access-operations.js +55 -49
  38. package/dist/access-recall-concurrency.d.ts +10 -10
  39. package/dist/access-recall-concurrency.js +50 -44
  40. package/dist/access-recall-response.d.ts +10 -10
  41. package/dist/access-recall-response.js +50 -44
  42. package/dist/access-recall-surface.d.ts +10 -10
  43. package/dist/access-recall-surface.js +50 -44
  44. package/dist/access-schema.d.ts +37 -7
  45. package/dist/access-schema.js +5 -3
  46. package/dist/{access-service-B5RwVsTV.d.ts → access-service-B6PZ_xUL.d.ts} +44 -20
  47. package/dist/access-service-helpers.d.ts +113 -0
  48. package/dist/access-service-helpers.js +8 -0
  49. package/dist/access-service-helpers.js.map +1 -0
  50. package/dist/access-service.d.ts +10 -10
  51. package/dist/access-service.js +50 -44
  52. package/dist/access-surface-catalog.d.ts +10 -10
  53. package/dist/access-surface-catalog.js +2 -0
  54. package/dist/access-surface-catalog.js.map +1 -1
  55. package/dist/access-wearables-meetings-surface.d.ts +3 -3
  56. package/dist/action-confidence.d.ts +1 -1
  57. package/dist/active-memory-bridge.d.ts +1 -1
  58. package/dist/active-recall.d.ts +1 -1
  59. package/dist/active-recall.js +1 -1
  60. package/dist/adapters/index.js +7 -7
  61. package/dist/adapters/registry.js +3 -3
  62. package/dist/behavior-learner.d.ts +1 -1
  63. package/dist/behavior-signals.d.ts +1 -1
  64. package/dist/bootstrap.d.ts +8 -8
  65. package/dist/briefing.d.ts +2 -2
  66. package/dist/briefing.js +14 -14
  67. package/dist/buffer-surprise-report.d.ts +1 -1
  68. package/dist/buffer-turn-helpers.d.ts +5 -0
  69. package/dist/buffer-turn-helpers.js +24 -0
  70. package/dist/buffer-turn-helpers.js.map +1 -0
  71. package/dist/buffer.d.ts +17 -4
  72. package/dist/buffer.js +21 -1
  73. package/dist/bulk-import/index.d.ts +3 -3
  74. package/dist/calibration.d.ts +1 -1
  75. package/dist/capabilities.d.ts +1 -1
  76. package/dist/{capsule-crypto-GWVG7LGC.js → capsule-crypto-7FJQINUR.js} +2 -2
  77. package/dist/capsule-crypto-7FJQINUR.js.map +1 -0
  78. package/dist/{capsule-merge-5KKJQBWQ.js → capsule-merge-2H2IUTBT.js} +4 -4
  79. package/dist/{catalog-V7inUQdp.d.ts → catalog-CGFYmTT8.d.ts} +1 -1
  80. package/dist/causal-behavior.d.ts +1 -1
  81. package/dist/causal-behavior.js +2 -2
  82. package/dist/causal-chain.js +2 -2
  83. package/dist/causal-consolidation.d.ts +1 -1
  84. package/dist/causal-consolidation.js +19 -19
  85. package/dist/causal-retrieval.js +2 -2
  86. package/dist/causal-trajectory-graph.d.ts +1 -1
  87. package/dist/causal-trajectory.js +1 -1
  88. package/dist/{chunk-LEPOP46W.js → chunk-227UFSEQ.js} +4 -4
  89. package/dist/{chunk-GIBMDSJ2.js → chunk-27P5YVDU.js} +2 -2
  90. package/dist/{chunk-2SA56WMI.js → chunk-2LTDWSR6.js} +4 -4
  91. package/dist/{chunk-OWHERGF2.js → chunk-2NLLXCJG.js} +2 -2
  92. package/dist/{chunk-YTSNAUXN.js → chunk-3F2LKUMU.js} +22 -8
  93. package/dist/chunk-3F2LKUMU.js.map +1 -0
  94. package/dist/chunk-3QL24R5Y.js +9 -0
  95. package/dist/chunk-3QL24R5Y.js.map +1 -0
  96. package/dist/chunk-4RNZMRAV.js +60 -0
  97. package/dist/chunk-4RNZMRAV.js.map +1 -0
  98. package/dist/{chunk-6U7F52DE.js → chunk-4XHR3I67.js} +60 -60
  99. package/dist/chunk-5IVLTFOV.js +65 -0
  100. package/dist/chunk-5IVLTFOV.js.map +1 -0
  101. package/dist/{chunk-2EUVEDF5.js → chunk-5XA7PQ5I.js} +2 -2
  102. package/dist/{chunk-ALSGMEJR.js → chunk-65ZPVYTA.js} +7 -7
  103. package/dist/{chunk-5VQJBH2G.js → chunk-6TAUHL33.js} +2 -2
  104. package/dist/{chunk-HUHX2OCX.js → chunk-7DRETLP5.js} +1 -1
  105. package/dist/chunk-7DRETLP5.js.map +1 -0
  106. package/dist/{chunk-RGIWINDN.js → chunk-7G5MH4NT.js} +30 -30
  107. package/dist/{chunk-WVO4G37W.js → chunk-7TEZUUGM.js} +3 -3
  108. package/dist/{chunk-MJCGLM25.js → chunk-7VUAG236.js} +5 -5
  109. package/dist/{chunk-M3C2V3PV.js → chunk-AJEMDQNA.js} +12 -12
  110. package/dist/{chunk-RKNJBZ55.js → chunk-AU7Q3LSC.js} +7 -7
  111. package/dist/{chunk-ACXPX4AG.js → chunk-BR2K43MK.js} +2 -2
  112. package/dist/{chunk-IYZ5K7MU.js → chunk-BUE5E2HL.js} +4 -187
  113. package/dist/chunk-BUE5E2HL.js.map +1 -0
  114. package/dist/{chunk-CZRYLSSW.js → chunk-BUGVGH4N.js} +2 -2
  115. package/dist/{chunk-YTQNQ4KB.js → chunk-C4VQMFVM.js} +3 -3
  116. package/dist/{chunk-ZPSVBSOF.js → chunk-CIVDJD6P.js} +3 -3
  117. package/dist/{chunk-K5GB36ME.js → chunk-CZDOT5I2.js} +2 -2
  118. package/dist/{chunk-VI2JQPNQ.js → chunk-E4PWACUN.js} +2 -2
  119. package/dist/{chunk-D2ANTDGO.js → chunk-E6BMSH7U.js} +2 -2
  120. package/dist/{chunk-P5PXWTW7.js → chunk-EJCAV3QZ.js} +3 -3
  121. package/dist/{chunk-CKMO4RDY.js → chunk-EMDLM3LW.js} +4 -4
  122. package/dist/chunk-ER7W6H4T.js +112 -0
  123. package/dist/chunk-ER7W6H4T.js.map +1 -0
  124. package/dist/{chunk-6FUPCJUL.js → chunk-FI4F5X2V.js} +54 -54
  125. package/dist/chunk-FI4F5X2V.js.map +1 -0
  126. package/dist/{chunk-LGHKJABJ.js → chunk-GOUILH55.js} +40 -18
  127. package/dist/chunk-GOUILH55.js.map +1 -0
  128. package/dist/{chunk-G5R3D5UP.js → chunk-GTTAHHD3.js} +2 -2
  129. package/dist/{chunk-H5CPS5JP.js → chunk-H36LJIPD.js} +3 -3
  130. package/dist/{chunk-AITCS2RC.js → chunk-IJ7HK452.js} +4 -4
  131. package/dist/{chunk-D3LMYTBV.js → chunk-J7WZUL2K.js} +9 -9
  132. package/dist/{chunk-5W4ZLBEZ.js → chunk-JCFTIQBR.js} +2 -2
  133. package/dist/{chunk-XOZ4ALGB.js → chunk-KE353EWI.js} +3 -3
  134. package/dist/{chunk-W5EG6LE3.js → chunk-KIT6M7EB.js} +3 -3
  135. package/dist/{chunk-5W7CTZ2E.js → chunk-KQAFEZQX.js} +4 -4
  136. package/dist/{chunk-Z54EM5YZ.js → chunk-MAXVH44E.js} +7 -7
  137. package/dist/{chunk-WZFAPHIK.js → chunk-MU7ZHSZE.js} +2 -2
  138. package/dist/chunk-N5Z4EVOR.js +123 -0
  139. package/dist/chunk-N5Z4EVOR.js.map +1 -0
  140. package/dist/{chunk-66772WBP.js → chunk-NFXQJHJD.js} +5 -5
  141. package/dist/{chunk-AZ5BTEKX.js → chunk-NQUF7XKR.js} +2 -2
  142. package/dist/{chunk-W4FBGYGK.js → chunk-NRV4Y3PM.js} +1 -1
  143. package/dist/{chunk-NHWB6HG2.js → chunk-NYCGIQRA.js} +2 -2
  144. package/dist/{chunk-4WKA6I65.js → chunk-OGCNZPKX.js} +1119 -309
  145. package/dist/chunk-OGCNZPKX.js.map +1 -0
  146. package/dist/{chunk-QJAQNXWI.js → chunk-ONHRRJZM.js} +6 -6
  147. package/dist/{chunk-FDAMS4PK.js → chunk-PNPOWBGC.js} +2 -2
  148. package/dist/{chunk-IC6CBHCA.js → chunk-QGENAYVS.js} +2 -2
  149. package/dist/{chunk-GBJ4RDFR.js → chunk-QIHIHZYC.js} +66 -91
  150. package/dist/chunk-QIHIHZYC.js.map +1 -0
  151. package/dist/{chunk-YNQBRLC5.js → chunk-RUYJ7TWU.js} +517 -2011
  152. package/dist/chunk-RUYJ7TWU.js.map +1 -0
  153. package/dist/{chunk-4A6YGWQN.js → chunk-TL4TO3EA.js} +115 -120
  154. package/dist/chunk-TL4TO3EA.js.map +1 -0
  155. package/dist/{chunk-SPJXKAVF.js → chunk-U52AKICI.js} +14 -13
  156. package/dist/chunk-U52AKICI.js.map +1 -0
  157. package/dist/chunk-ULARSG5Z.js +203 -0
  158. package/dist/chunk-ULARSG5Z.js.map +1 -0
  159. package/dist/{chunk-62U4J2GN.js → chunk-UR77VKF7.js} +2 -2
  160. package/dist/{chunk-JCBWCYEJ.js → chunk-VANLTS5F.js} +2 -2
  161. package/dist/{chunk-4Z4XNEWZ.js → chunk-VCD4PSK2.js} +56 -12
  162. package/dist/chunk-VCD4PSK2.js.map +1 -0
  163. package/dist/{chunk-RMMVQQA6.js → chunk-WDISJRMG.js} +2 -2
  164. package/dist/{chunk-B6JDYXL7.js → chunk-WWUVONGW.js} +7 -1
  165. package/dist/chunk-WWUVONGW.js.map +1 -0
  166. package/dist/{chunk-UVYI6VIX.js → chunk-X7Y7WX73.js} +1 -1
  167. package/dist/{chunk-TH2LSRMG.js → chunk-XHDIB4T4.js} +2 -2
  168. package/dist/{chunk-CVILPI77.js → chunk-XOQSEF7X.js} +6 -6
  169. package/dist/{chunk-LBOD4U5B.js → chunk-YFOMN2II.js} +6 -6
  170. package/dist/{chunk-RPW2NOU6.js → chunk-YIAA2X3D.js} +41 -1
  171. package/dist/chunk-YIAA2X3D.js.map +1 -0
  172. package/dist/chunk-YPC7W6GA.js +1604 -0
  173. package/dist/chunk-YPC7W6GA.js.map +1 -0
  174. package/dist/{chunk-I5NLEENJ.js → chunk-Z4SWV4VW.js} +3 -3
  175. package/dist/{chunk-PHWUFPCO.js → chunk-ZCPP5OW6.js} +61 -53
  176. package/dist/chunk-ZCPP5OW6.js.map +1 -0
  177. package/dist/{cli-C4GbETPC.d.ts → cli-BptUDTtp.d.ts} +5 -5
  178. package/dist/cli.d.ts +12 -12
  179. package/dist/cli.js +91 -84
  180. package/dist/compounding/engine.d.ts +2 -2
  181. package/dist/compounding/engine.js +14 -14
  182. package/dist/compounding/preference-consolidator.d.ts +1 -1
  183. package/dist/compression-optimizer.d.ts +1 -1
  184. package/dist/config.d.ts +1 -1
  185. package/dist/config.js +1 -1
  186. package/dist/connectors/codex-materialize-runner.d.ts +1 -1
  187. package/dist/connectors/codex-materialize-runner.js +14 -14
  188. package/dist/connectors/codex-materialize.d.ts +1 -1
  189. package/dist/connectors/index.d.ts +1 -1
  190. package/dist/connectors/index.js +17 -17
  191. package/dist/consolidation-provenance-check.d.ts +2 -2
  192. package/dist/consolidation-provenance-check.js +5 -5
  193. package/dist/consolidation-undo.d.ts +2 -2
  194. package/dist/consolidation-undo.js +3 -3
  195. package/dist/contradiction/index.d.ts +2 -2
  196. package/dist/contradiction/index.js +4 -4
  197. package/dist/conversation-index/backend.d.ts +1 -1
  198. package/dist/conversation-index/backend.js +2 -2
  199. package/dist/conversation-index/chunker.d.ts +1 -1
  200. package/dist/conversation-index/faiss-adapter.d.ts +1 -1
  201. package/dist/conversation-index/indexer.d.ts +1 -1
  202. package/dist/conversation-index/search.d.ts +1 -1
  203. package/dist/corpus-watermark.d.ts +1 -1
  204. package/dist/corpus-watermark.js +26 -26
  205. package/dist/day-summary.d.ts +1 -1
  206. package/dist/delinearize.d.ts +1 -1
  207. package/dist/direct-answer-wiring.d.ts +1 -1
  208. package/dist/direct-answer.d.ts +1 -1
  209. package/dist/embedding-fallback.d.ts +1 -1
  210. package/dist/enrichment/index.d.ts +1 -1
  211. package/dist/entity-retrieval.d.ts +2 -2
  212. package/dist/entity-retrieval.js +14 -14
  213. package/dist/entity-schema.d.ts +1 -1
  214. package/dist/explicit-capture.d.ts +8 -8
  215. package/dist/extraction-error-classification.d.ts +1 -1
  216. package/dist/extraction-faithfulness.d.ts +1 -1
  217. package/dist/extraction-judge-telemetry.d.ts +1 -1
  218. package/dist/extraction-judge-training.d.ts +1 -1
  219. package/dist/extraction-judge.d.ts +1 -1
  220. package/dist/extraction-liveness.d.ts +1 -1
  221. package/dist/extraction-source-grounding-rules.d.ts +1 -1
  222. package/dist/extraction-source-grounding.d.ts +15 -2
  223. package/dist/extraction-source-grounding.js +10 -1
  224. package/dist/extraction.d.ts +2 -15
  225. package/dist/extraction.js +5 -4
  226. package/dist/fallback-llm.d.ts +1 -1
  227. package/dist/graph-dashboard-diff.d.ts +1 -1
  228. package/dist/graph-dashboard-key.d.ts +1 -1
  229. package/dist/graph-dashboard-parser.d.ts +1 -1
  230. package/dist/graph-edge-reinforcement.d.ts +1 -1
  231. package/dist/graph-snapshot.d.ts +1 -1
  232. package/dist/graph.d.ts +1 -1
  233. package/dist/importance.d.ts +1 -1
  234. package/dist/importers/index.d.ts +1 -1
  235. package/dist/in-flight-reads.d.ts +1 -1
  236. package/dist/index.d.ts +19 -19
  237. package/dist/index.js +215 -207
  238. package/dist/intent.d.ts +1 -1
  239. package/dist/lcm/engine.d.ts +1 -1
  240. package/dist/lcm/engine.js +3 -3
  241. package/dist/lcm/index.d.ts +1 -1
  242. package/dist/lcm/index.js +6 -6
  243. package/dist/lcm/tools.d.ts +1 -1
  244. package/dist/lifecycle.d.ts +1 -1
  245. package/dist/live-connectors-runner.d.ts +1 -1
  246. package/dist/local-llm-helpers.d.ts +7 -0
  247. package/dist/local-llm-helpers.js +16 -0
  248. package/dist/local-llm-helpers.js.map +1 -0
  249. package/dist/local-llm.d.ts +3 -6
  250. package/dist/local-llm.js +2 -1
  251. package/dist/local-model-endpoint.d.ts +1 -1
  252. package/dist/maintenance/memory-governance.d.ts +1 -1
  253. package/dist/maintenance/memory-governance.js +14 -14
  254. package/dist/maintenance/rebuild-memory-lifecycle-ledger.d.ts +2 -2
  255. package/dist/maintenance/rebuild-memory-lifecycle-ledger.js +14 -14
  256. package/dist/maintenance/rebuild-memory-projection.d.ts +2 -2
  257. package/dist/maintenance/rebuild-memory-projection.js +15 -15
  258. package/dist/{maintenance-CL30NWtc.d.ts → maintenance-b6f92bRz.d.ts} +3 -3
  259. package/dist/mcp-memory-inspector-app.d.ts +10 -10
  260. package/dist/memory-action-policy.d.ts +1 -1
  261. package/dist/memory-cache.d.ts +1 -1
  262. package/dist/memory-corpus-version.js +2 -2
  263. package/dist/memory-lifecycle-ledger-utils.d.ts +1 -1
  264. package/dist/memory-projection-store.d.ts +1 -1
  265. package/dist/memory-provenance.d.ts +1 -1
  266. package/dist/memory-worth-outcomes.d.ts +2 -2
  267. package/dist/models-json.d.ts +1 -1
  268. package/dist/namespaces/migrate.d.ts +3 -3
  269. package/dist/namespaces/migrate.js +24 -24
  270. package/dist/namespaces/principal.d.ts +1 -1
  271. package/dist/namespaces/search.d.ts +1 -1
  272. package/dist/namespaces/search.js +9 -9
  273. package/dist/namespaces/storage.d.ts +3 -3
  274. package/dist/namespaces/storage.js +14 -14
  275. package/dist/native-knowledge.d.ts +1 -1
  276. package/dist/offline-sync-impression-drain.d.ts +1 -1
  277. package/dist/offline-sync-impression-drain.js +6 -5
  278. package/dist/operator-doctor-corpus.d.ts +1 -1
  279. package/dist/operator-doctor-corpus.js +29 -29
  280. package/dist/operator-doctor-replica.d.ts +1 -1
  281. package/dist/operator-doctor-replica.js +3 -3
  282. package/dist/operator-toolkit.d.ts +3 -3
  283. package/dist/operator-toolkit.js +38 -37
  284. package/dist/orchestration/compression-guideline-coordinator.d.ts +2 -2
  285. package/dist/orchestration/maintenance.d.ts +4 -4
  286. package/dist/orchestration/maintenance.js +22 -21
  287. package/dist/{orchestrator-CKTCRwWV.d.ts → orchestrator-3uGxC1qO.d.ts} +72 -34
  288. package/dist/orchestrator.d.ts +8 -8
  289. package/dist/orchestrator.js +167 -159
  290. package/dist/page-versioning.js +3 -3
  291. package/dist/patterns-cli.d.ts +1 -1
  292. package/dist/{pipeline-B7wj4rRZ.d.ts → pipeline-DepuNr-m.d.ts} +1 -1
  293. package/dist/policy-runtime.d.ts +1 -1
  294. package/dist/proactive-contention.d.ts +1 -1
  295. package/dist/provenance.d.ts +1 -1
  296. package/dist/{qmd-q9tg4dHp.d.ts → qmd-Dalr3Jby.d.ts} +1 -1
  297. package/dist/qmd-preflight.d.ts +2 -2
  298. package/dist/qmd-recall-cache.d.ts +1 -1
  299. package/dist/qmd.d.ts +2 -2
  300. package/dist/qmd.js +4 -4
  301. package/dist/recall-concurrency-config.d.ts +1 -1
  302. package/dist/recall-disclosure-escalation.d.ts +1 -1
  303. package/dist/recall-explain-renderer.d.ts +1 -1
  304. package/dist/recall-explain-renderer.js +3 -3
  305. package/dist/recall-memory-map.d.ts +1 -1
  306. package/dist/recall-planner-llm.d.ts +1 -1
  307. package/dist/recall-state.d.ts +1 -1
  308. package/dist/recall-tag-filter.d.ts +1 -1
  309. package/dist/recall-timings.d.ts +1 -1
  310. package/dist/recall-xray-cli.d.ts +1 -1
  311. package/dist/recall-xray-cli.js +4 -4
  312. package/dist/recall-xray-renderer.d.ts +1 -1
  313. package/dist/recall-xray-renderer.js +3 -3
  314. package/dist/recall-xray.d.ts +1 -1
  315. package/dist/recall-xray.js +2 -2
  316. package/dist/replay/normalizers/chatgpt.d.ts +1 -1
  317. package/dist/replay/normalizers/claude.d.ts +1 -1
  318. package/dist/replay/normalizers/openclaw.d.ts +1 -1
  319. package/dist/replay/normalizers/shared.d.ts +1 -1
  320. package/dist/replay/runner.d.ts +1 -1
  321. package/dist/replay/types.d.ts +1 -1
  322. package/dist/replica-divergence.d.ts +1 -1
  323. package/dist/replica-divergence.js +2 -2
  324. package/dist/replica-peers-config.d.ts +1 -1
  325. package/dist/resolve-auth-token.d.ts +1 -1
  326. package/dist/resume-bundles.js +1 -1
  327. package/dist/retrieval-agents.d.ts +2 -2
  328. package/dist/retrieval-tiers.d.ts +1 -1
  329. package/dist/routing/engine.d.ts +1 -1
  330. package/dist/routing/store.d.ts +1 -1
  331. package/dist/salvage-envelope.d.ts +1 -1
  332. package/dist/{scope-profiles-CWDyglPM.d.ts → scope-profiles-BpiM5hTU.d.ts} +1 -1
  333. package/dist/search/embed-helper.d.ts +1 -1
  334. package/dist/search/factory.d.ts +1 -1
  335. package/dist/search/factory.js +8 -8
  336. package/dist/search/index.d.ts +1 -1
  337. package/dist/search/index.js +12 -12
  338. package/dist/search/lancedb-backend.d.ts +1 -1
  339. package/dist/search/meilisearch-backend.d.ts +1 -1
  340. package/dist/search/noop-backend.d.ts +1 -1
  341. package/dist/search/orama-backend.d.ts +1 -1
  342. package/dist/search/port.d.ts +1 -1
  343. package/dist/search/remote-backend.d.ts +1 -1
  344. package/dist/{semantic-consolidation-BUE3deLn.d.ts → semantic-consolidation-CMtVrf9f.d.ts} +1 -1
  345. package/dist/semantic-consolidation.d.ts +2 -2
  346. package/dist/semantic-consolidation.js +16 -16
  347. package/dist/semantic-rule-promotion.js +14 -14
  348. package/dist/semantic-rule-verifier.d.ts +1 -1
  349. package/dist/semantic-rule-verifier.js +14 -14
  350. package/dist/{service-CXgM0bQG.d.ts → service-DuAxwSgg.d.ts} +2 -2
  351. package/dist/session-observer-bands.d.ts +1 -1
  352. package/dist/session-observer-state.d.ts +1 -1
  353. package/dist/shared-context/manager.d.ts +1 -1
  354. package/dist/signal.d.ts +1 -1
  355. package/dist/{storage-DysJq-XH.d.ts → storage-CF0Ih8GP.d.ts} +1 -1
  356. package/dist/storage.d.ts +2 -2
  357. package/dist/storage.js +13 -13
  358. package/dist/summarizer.d.ts +1 -1
  359. package/dist/summarizer.js +3 -2
  360. package/dist/summary-snapshot.d.ts +1 -1
  361. package/dist/temporal-supersession.d.ts +2 -2
  362. package/dist/temporal-timeline-recall.d.ts +1 -1
  363. package/dist/temporal-validity.d.ts +1 -1
  364. package/dist/threading.d.ts +1 -1
  365. package/dist/tier-migration.d.ts +2 -2
  366. package/dist/tier-routing.d.ts +1 -1
  367. package/dist/tokens.js +2 -2
  368. package/dist/topics.d.ts +1 -1
  369. package/dist/transcript.d.ts +1 -1
  370. package/dist/transfer/backup.js +2 -2
  371. package/dist/transfer/capsule-export.js +2 -2
  372. package/dist/transfer/capsule-import.js +5 -5
  373. package/dist/trust-score-stage.d.ts +1 -1
  374. package/dist/trust-score.d.ts +1 -1
  375. package/dist/{types-aPPzhnjT.d.ts → types-BpaYvJ6v.d.ts} +22 -2
  376. package/dist/types.d.ts +1 -1
  377. package/dist/types.js +1 -1
  378. package/dist/utility-runtime.d.ts +1 -1
  379. package/dist/verified-recall.js +14 -14
  380. package/dist/write-envelope.d.ts +1 -1
  381. package/package.json +2 -2
  382. package/src/access-boundary.ts +3 -0
  383. package/src/access-cli.test.ts +93 -0
  384. package/src/access-cli.ts +56 -2
  385. package/src/access-extraction-force-flush.ts +177 -0
  386. package/src/access-http-extraction-force-flush.test.ts +132 -0
  387. package/src/access-http-lcm-compaction.ts +99 -22
  388. package/src/access-http-lifecycle-flush.ts +81 -0
  389. package/src/access-http.test.ts +227 -0
  390. package/src/access-http.ts +33 -40
  391. package/src/access-mcp-output-schemas.ts +6 -0
  392. package/src/access-mcp.test.ts +40 -0
  393. package/src/access-mcp.ts +32 -1
  394. package/src/access-observe-helpers.ts +180 -0
  395. package/src/access-observe-write-surface.ts +78 -19
  396. package/src/access-operations-batch.ts +2 -1
  397. package/src/access-schema-pi.test.ts +17 -0
  398. package/src/access-schema.ts +28 -11
  399. package/src/access-service-helpers.ts +46 -0
  400. package/src/access-service-observe-lcm-parity.test.ts +781 -31
  401. package/src/access-service-observe-scope.test.ts +88 -0
  402. package/src/access-service.ts +46 -128
  403. package/src/access-surface-catalog.test.ts +32 -0
  404. package/src/access-surface-catalog.ts +2 -0
  405. package/src/buffer-session.test.ts +148 -0
  406. package/src/buffer-turn-helpers.ts +152 -0
  407. package/src/buffer.ts +126 -201
  408. package/src/correction/correction-access-wiring.ts +79 -27
  409. package/src/correction/correction-executor.test.ts +542 -1
  410. package/src/correction/correction-executor.ts +309 -89
  411. package/src/correction/correction-planner.test.ts +35 -1
  412. package/src/correction/correction-planner.ts +50 -3
  413. package/src/correction/correction-service.ts +12 -7
  414. package/src/correction/correction-storage-integration.test.ts +172 -1
  415. package/src/correction/passive-capture.test.ts +35 -0
  416. package/src/correction/passive-capture.ts +17 -3
  417. package/src/extraction-source-grounding.ts +55 -1
  418. package/src/extraction-timeout.test.ts +51 -0
  419. package/src/extraction.ts +64 -90
  420. package/src/local-llm-headers-timeout.test.ts +48 -0
  421. package/src/local-llm-helpers.ts +58 -0
  422. package/src/local-llm.ts +62 -58
  423. package/src/orchestration/extraction-run-helpers.ts +309 -0
  424. package/src/orchestration/extraction-run.test.ts +350 -7
  425. package/src/orchestration/extraction-run.ts +327 -250
  426. package/src/orchestration/session-context.ts +193 -18
  427. package/src/orchestration/turn-ingestion.ts +61 -11
  428. package/src/orchestrator-flush.test.ts +511 -5
  429. package/src/orchestrator.ts +8 -6
  430. package/src/types.ts +2 -2
  431. package/dist/chunk-4A6YGWQN.js.map +0 -1
  432. package/dist/chunk-4WKA6I65.js.map +0 -1
  433. package/dist/chunk-4Z4XNEWZ.js.map +0 -1
  434. package/dist/chunk-6FUPCJUL.js.map +0 -1
  435. package/dist/chunk-B6JDYXL7.js.map +0 -1
  436. package/dist/chunk-GBJ4RDFR.js.map +0 -1
  437. package/dist/chunk-HUHX2OCX.js.map +0 -1
  438. package/dist/chunk-IYZ5K7MU.js.map +0 -1
  439. package/dist/chunk-LGHKJABJ.js.map +0 -1
  440. package/dist/chunk-PHWUFPCO.js.map +0 -1
  441. package/dist/chunk-RPW2NOU6.js.map +0 -1
  442. package/dist/chunk-SPJXKAVF.js.map +0 -1
  443. package/dist/chunk-YNQBRLC5.js.map +0 -1
  444. package/dist/chunk-YTSNAUXN.js.map +0 -1
  445. /package/dist/{capsule-crypto-GWVG7LGC.js.map → access-extraction-force-flush.js.map} +0 -0
  446. /package/dist/{capsule-merge-5KKJQBWQ.js.map → capsule-merge-2H2IUTBT.js.map} +0 -0
  447. /package/dist/{chunk-LEPOP46W.js.map → chunk-227UFSEQ.js.map} +0 -0
  448. /package/dist/{chunk-GIBMDSJ2.js.map → chunk-27P5YVDU.js.map} +0 -0
  449. /package/dist/{chunk-2SA56WMI.js.map → chunk-2LTDWSR6.js.map} +0 -0
  450. /package/dist/{chunk-OWHERGF2.js.map → chunk-2NLLXCJG.js.map} +0 -0
  451. /package/dist/{chunk-6U7F52DE.js.map → chunk-4XHR3I67.js.map} +0 -0
  452. /package/dist/{chunk-2EUVEDF5.js.map → chunk-5XA7PQ5I.js.map} +0 -0
  453. /package/dist/{chunk-ALSGMEJR.js.map → chunk-65ZPVYTA.js.map} +0 -0
  454. /package/dist/{chunk-5VQJBH2G.js.map → chunk-6TAUHL33.js.map} +0 -0
  455. /package/dist/{chunk-RGIWINDN.js.map → chunk-7G5MH4NT.js.map} +0 -0
  456. /package/dist/{chunk-WVO4G37W.js.map → chunk-7TEZUUGM.js.map} +0 -0
  457. /package/dist/{chunk-MJCGLM25.js.map → chunk-7VUAG236.js.map} +0 -0
  458. /package/dist/{chunk-M3C2V3PV.js.map → chunk-AJEMDQNA.js.map} +0 -0
  459. /package/dist/{chunk-RKNJBZ55.js.map → chunk-AU7Q3LSC.js.map} +0 -0
  460. /package/dist/{chunk-ACXPX4AG.js.map → chunk-BR2K43MK.js.map} +0 -0
  461. /package/dist/{chunk-CZRYLSSW.js.map → chunk-BUGVGH4N.js.map} +0 -0
  462. /package/dist/{chunk-YTQNQ4KB.js.map → chunk-C4VQMFVM.js.map} +0 -0
  463. /package/dist/{chunk-ZPSVBSOF.js.map → chunk-CIVDJD6P.js.map} +0 -0
  464. /package/dist/{chunk-K5GB36ME.js.map → chunk-CZDOT5I2.js.map} +0 -0
  465. /package/dist/{chunk-VI2JQPNQ.js.map → chunk-E4PWACUN.js.map} +0 -0
  466. /package/dist/{chunk-D2ANTDGO.js.map → chunk-E6BMSH7U.js.map} +0 -0
  467. /package/dist/{chunk-P5PXWTW7.js.map → chunk-EJCAV3QZ.js.map} +0 -0
  468. /package/dist/{chunk-CKMO4RDY.js.map → chunk-EMDLM3LW.js.map} +0 -0
  469. /package/dist/{chunk-G5R3D5UP.js.map → chunk-GTTAHHD3.js.map} +0 -0
  470. /package/dist/{chunk-H5CPS5JP.js.map → chunk-H36LJIPD.js.map} +0 -0
  471. /package/dist/{chunk-AITCS2RC.js.map → chunk-IJ7HK452.js.map} +0 -0
  472. /package/dist/{chunk-D3LMYTBV.js.map → chunk-J7WZUL2K.js.map} +0 -0
  473. /package/dist/{chunk-5W4ZLBEZ.js.map → chunk-JCFTIQBR.js.map} +0 -0
  474. /package/dist/{chunk-XOZ4ALGB.js.map → chunk-KE353EWI.js.map} +0 -0
  475. /package/dist/{chunk-W5EG6LE3.js.map → chunk-KIT6M7EB.js.map} +0 -0
  476. /package/dist/{chunk-5W7CTZ2E.js.map → chunk-KQAFEZQX.js.map} +0 -0
  477. /package/dist/{chunk-Z54EM5YZ.js.map → chunk-MAXVH44E.js.map} +0 -0
  478. /package/dist/{chunk-WZFAPHIK.js.map → chunk-MU7ZHSZE.js.map} +0 -0
  479. /package/dist/{chunk-66772WBP.js.map → chunk-NFXQJHJD.js.map} +0 -0
  480. /package/dist/{chunk-AZ5BTEKX.js.map → chunk-NQUF7XKR.js.map} +0 -0
  481. /package/dist/{chunk-W4FBGYGK.js.map → chunk-NRV4Y3PM.js.map} +0 -0
  482. /package/dist/{chunk-NHWB6HG2.js.map → chunk-NYCGIQRA.js.map} +0 -0
  483. /package/dist/{chunk-QJAQNXWI.js.map → chunk-ONHRRJZM.js.map} +0 -0
  484. /package/dist/{chunk-FDAMS4PK.js.map → chunk-PNPOWBGC.js.map} +0 -0
  485. /package/dist/{chunk-IC6CBHCA.js.map → chunk-QGENAYVS.js.map} +0 -0
  486. /package/dist/{chunk-62U4J2GN.js.map → chunk-UR77VKF7.js.map} +0 -0
  487. /package/dist/{chunk-JCBWCYEJ.js.map → chunk-VANLTS5F.js.map} +0 -0
  488. /package/dist/{chunk-RMMVQQA6.js.map → chunk-WDISJRMG.js.map} +0 -0
  489. /package/dist/{chunk-UVYI6VIX.js.map → chunk-X7Y7WX73.js.map} +0 -0
  490. /package/dist/{chunk-TH2LSRMG.js.map → chunk-XHDIB4T4.js.map} +0 -0
  491. /package/dist/{chunk-CVILPI77.js.map → chunk-XOQSEF7X.js.map} +0 -0
  492. /package/dist/{chunk-LBOD4U5B.js.map → chunk-YFOMN2II.js.map} +0 -0
  493. /package/dist/{chunk-I5NLEENJ.js.map → chunk-Z4SWV4VW.js.map} +0 -0
@@ -1,6 +1,11 @@
1
1
  import {
2
2
  resolveEnsureCollectionArgs
3
3
  } from "./chunk-YV32N67O.js";
4
+ import {
5
+ EMPTY_QMD_STATUS,
6
+ embedQmdFiles,
7
+ fetchQmdStatus
8
+ } from "./chunk-IUM3VSHI.js";
4
9
  import {
5
10
  QMD_PROBE_RETRY_BACKOFF_MS,
6
11
  QMD_PROBE_TIMEOUT_MS,
@@ -13,11 +18,6 @@ import {
13
18
  qmdVersionToString,
14
19
  resolveQmdCapabilities
15
20
  } from "./chunk-64UDOIMI.js";
16
- import {
17
- EMPTY_QMD_STATUS,
18
- embedQmdFiles,
19
- fetchQmdStatus
20
- } from "./chunk-IUM3VSHI.js";
21
21
  import {
22
22
  launchProcess
23
23
  } from "./chunk-O75CRYGF.js";
@@ -2228,4 +2228,4 @@ export {
2228
2228
  sharedDaemonSessionCountForTest,
2229
2229
  QmdClient
2230
2230
  };
2231
- //# sourceMappingURL=chunk-QJAQNXWI.js.map
2231
+ //# sourceMappingURL=chunk-ONHRRJZM.js.map
@@ -1,6 +1,6 @@
1
1
  import {
2
2
  runPostConsolidationMaterialize
3
- } from "./chunk-NHWB6HG2.js";
3
+ } from "./chunk-NYCGIQRA.js";
4
4
  import {
5
5
  discoverMemoryExtensions,
6
6
  renderExtensionsBlock,
@@ -220,4 +220,4 @@ export {
220
220
  buildExtensionsBlockForConsolidation,
221
221
  materializeAfterSemanticConsolidation
222
222
  };
223
- //# sourceMappingURL=chunk-FDAMS4PK.js.map
223
+ //# sourceMappingURL=chunk-PNPOWBGC.js.map
@@ -1,6 +1,6 @@
1
1
  import {
2
2
  StorageManager
3
- } from "./chunk-RGIWINDN.js";
3
+ } from "./chunk-7G5MH4NT.js";
4
4
  import {
5
5
  namespaceIdentityToken,
6
6
  normalizeNamespaceIdentity
@@ -388,4 +388,4 @@ export {
388
388
  resolveNamespaceStorageRoot,
389
389
  NamespaceStorageRouter
390
390
  };
391
- //# sourceMappingURL=chunk-IC6CBHCA.js.map
391
+ //# sourceMappingURL=chunk-QGENAYVS.js.map
@@ -21,22 +21,23 @@ import {
21
21
  } from "./chunk-WLZYGLJ4.js";
22
22
  import {
23
23
  LocalLlmClient
24
- } from "./chunk-PHWUFPCO.js";
24
+ } from "./chunk-ZCPP5OW6.js";
25
25
  import {
26
- applyExtractionSourceGrounding
27
- } from "./chunk-RPW2NOU6.js";
26
+ applyExtractionSourceGrounding,
27
+ attachExtractionProvenance
28
+ } from "./chunk-YIAA2X3D.js";
28
29
  import {
29
30
  classifyExtractionThrownError,
30
31
  classifyFallbackParseFailure
31
32
  } from "./chunk-BLDBT6HZ.js";
32
- import {
33
- delinearize
34
- } from "./chunk-VEWZZM3H.js";
35
33
  import {
36
34
  buildExtensionsFooterForSummary,
37
35
  formatDaySummaryMemories,
38
36
  loadDaySummaryPrompt
39
37
  } from "./chunk-RPSYDM6C.js";
38
+ import {
39
+ delinearize
40
+ } from "./chunk-VEWZZM3H.js";
40
41
  import {
41
42
  applyWorkExtractionBoundary
42
43
  } from "./chunk-EI6V5UXY.js";
@@ -61,9 +62,6 @@ import {
61
62
  import {
62
63
  extractJsonCandidates
63
64
  } from "./chunk-RGMVMVMF.js";
64
- import {
65
- buildFactProvenance
66
- } from "./chunk-5I4M26Q7.js";
67
65
  import {
68
66
  sanitizeMemoryContent
69
67
  } from "./chunk-5GKPFL3S.js";
@@ -183,6 +181,11 @@ function normalizeProfileUpdateKey(update) {
183
181
  function shouldEnableLocalExtractionThinking(config, conversationChars) {
184
182
  return config.localLlmDisableThinking && config.localLlmThinkingThresholdChars > 0 && conversationChars < config.localLlmThinkingThresholdChars;
185
183
  }
184
+ function throwIfExtractionAborted(signal) {
185
+ if (!signal?.aborted) return;
186
+ const reason = signal.reason;
187
+ throw reason instanceof Error ? reason : new Error("extraction aborted");
188
+ }
186
189
  var ExtractionEngine = class {
187
190
  constructor(config, profilerArg, localLlm, gatewayConfig, modelRegistry) {
188
191
  this.config = config;
@@ -474,18 +477,19 @@ var ExtractionEngine = class {
474
477
  const entityUpdates = (Array.isArray(result.entityUpdates) ? result.entityUpdates : []).map((entity) => this.normalizeEntityUpdate(entity)).filter((entity) => entity !== void 0 && entity.name.length > 0);
475
478
  return { items, profileUpdates, entityUpdates };
476
479
  }
477
- async applyProactiveQuestionPass(conversation, base, groundingSource, assertionSource, messageTimestamp, roleAssertionSources) {
480
+ async applyProactiveQuestionPass(conversation, base, groundingSource, assertionSource, messageTimestamp, roleAssertionSources, signal) {
478
481
  if (!resolvePipelineProcessingCapabilities(this.config).proactiveExtraction) return base;
479
482
  const maxAdditional = Math.max(0, Math.floor(this.config.maxProactiveQuestionsPerExtraction));
480
483
  if (!shouldRunProactivePass(this.config, maxAdditional, this.shouldUseLocalLlm, this.localLlm)) return base;
481
484
  try {
482
- const proactive = await this.generateProactiveQuestions(conversation, base, maxAdditional);
485
+ const proactive = await this.generateProactiveQuestions(conversation, base, maxAdditional, signal);
483
486
  if (proactive.length === 0) return base;
484
487
  const proactiveAdditions = await this.answerProactiveQuestions(
485
488
  conversation,
486
489
  base,
487
490
  proactive,
488
- maxAdditional
491
+ maxAdditional,
492
+ signal
489
493
  );
490
494
  const sanitizedAdditions = this.sanitizeExtractionResult(proactiveAdditions, messageTimestamp);
491
495
  const groundedAdditions = this.applySourceGrounding(
@@ -498,6 +502,7 @@ var ExtractionEngine = class {
498
502
  if (!this.hasExtractionOutputs(groundedAdditions)) return base;
499
503
  return this.mergeProactiveExtractionPass(base, groundedAdditions, maxAdditional);
500
504
  } catch (err) {
505
+ if (signal?.aborted) throw err;
501
506
  log.debug(`proactive extraction question pass failed (ignored): ${err}`);
502
507
  return base;
503
508
  }
@@ -526,7 +531,7 @@ var ExtractionEngine = class {
526
531
  }
527
532
  return null;
528
533
  }
529
- async generateProactiveQuestions(conversation, base, maxAdditional) {
534
+ async generateProactiveQuestions(conversation, base, maxAdditional, signal) {
530
535
  const existingQuestionKeys = new Set(
531
536
  (base.questions ?? []).map((q) => q.question.trim().toLowerCase()).filter((q) => q.length > 0)
532
537
  );
@@ -562,9 +567,11 @@ var ExtractionEngine = class {
562
567
  maxTokens: this.config.proactiveExtractionMaxTokens,
563
568
  timeoutMs: this.config.proactiveExtractionTimeoutMs,
564
569
  operation: "proactive_extraction",
565
- priority: "background"
570
+ priority: "background",
571
+ signal
566
572
  }
567
573
  );
574
+ throwIfExtractionAborted(signal);
568
575
  if (localResponse?.content) {
569
576
  const localParsed = this.parseProactiveQuestionsFromText(
570
577
  localResponse.content.trim(),
@@ -578,7 +585,7 @@ var ExtractionEngine = class {
578
585
  return [];
579
586
  }
580
587
  } catch (err) {
581
- if (!this.config.localLlmFallback) {
588
+ if (signal?.aborted || !this.config.localLlmFallback) {
582
589
  throw err;
583
590
  }
584
591
  }
@@ -595,13 +602,14 @@ var ExtractionEngine = class {
595
602
  this.withGatewayAgent({
596
603
  temperature: 0.2,
597
604
  maxTokens: this.config.proactiveExtractionMaxTokens,
598
- timeoutMs: this.config.proactiveExtractionTimeoutMs
605
+ timeoutMs: this.config.proactiveExtractionTimeoutMs,
606
+ signal
599
607
  })
600
608
  );
601
609
  if (!fallbackResult?.questions) return [];
602
610
  return fallbackResult.questions.map((q) => normalizeQuestion(q)).filter((q) => q.question.length > 0).filter((q) => !existingQuestionKeys.has(q.question.toLowerCase())).slice(0, maxAdditional);
603
611
  }
604
- async answerProactiveQuestions(conversation, base, proactiveQuestions, maxAdditional) {
612
+ async answerProactiveQuestions(conversation, base, proactiveQuestions, maxAdditional, signal) {
605
613
  const factsPreview = base.facts.slice(0, 8).map((f) => `- (${f.category}) ${f.content}`).join("\n");
606
614
  const entitiesPreview = base.entities.slice(0, 8).map((entity) => `- (${entity.type}) ${entity.name}: ${entity.facts.join("; ") || "(no facts)"}`).join("\n");
607
615
  const proactivePreview = proactiveQuestions.slice(0, maxAdditional).map((question, index) => `${index + 1}. ${question.question}${question.context ? `
@@ -646,9 +654,11 @@ var ExtractionEngine = class {
646
654
  maxTokens: this.config.proactiveExtractionMaxTokens,
647
655
  timeoutMs: this.config.proactiveExtractionTimeoutMs,
648
656
  operation: "proactive_extraction",
649
- priority: "background"
657
+ priority: "background",
658
+ signal
650
659
  }
651
660
  );
661
+ throwIfExtractionAborted(signal);
652
662
  if (localResponse?.content) {
653
663
  const parsed = this.parseProactiveExtractionResultFromText(localResponse.content.trim());
654
664
  if (parsed) {
@@ -659,7 +669,7 @@ var ExtractionEngine = class {
659
669
  return { facts: [], profileUpdates: [], entities: [], questions: [] };
660
670
  }
661
671
  } catch (err) {
662
- if (!this.config.localLlmFallback) {
672
+ if (signal?.aborted || !this.config.localLlmFallback) {
663
673
  throw err;
664
674
  }
665
675
  }
@@ -676,7 +686,8 @@ var ExtractionEngine = class {
676
686
  this.withGatewayAgent({
677
687
  temperature: 0.2,
678
688
  maxTokens: this.config.proactiveExtractionMaxTokens,
679
- timeoutMs: this.config.proactiveExtractionTimeoutMs
689
+ timeoutMs: this.config.proactiveExtractionTimeoutMs,
690
+ signal
680
691
  })
681
692
  );
682
693
  if (!fallbackResult) {
@@ -818,54 +829,6 @@ var ExtractionEngine = class {
818
829
  }
819
830
  return null;
820
831
  }
821
- /**
822
- * Attach claim-level provenance spans to each fact in the extraction result
823
- * (issue #1575 PR 2). Runs once at write time, after sanitize + proactive
824
- * pass so ALL facts (base + proactive additions) get verified spans before
825
- * the result is returned for persistence.
826
- *
827
- * The validator locates each fact's LLM-provided `quote` in the buffered
828
- * turns and builds a `ProvenanceSource[]` with verified offsets. Never
829
- * throws, never drops a fact — an unverifiable span is a tagged state, not
830
- * a silent failure (rule 34 spirit). When `provenance.enabled` is false,
831
- * this is a no-op (byte-identical to pre-feature behavior, rule 39).
832
- */
833
- attachProvenanceToResult(result, turns) {
834
- if (!this.config.provenance?.enabled) {
835
- if (result.facts.length === 0) return result;
836
- return {
837
- ...result,
838
- facts: result.facts.map((fact) => {
839
- if (fact.quote === void 0) return fact;
840
- const { quote: _stripped, ...rest } = fact;
841
- return rest;
842
- })
843
- };
844
- }
845
- if (result.facts.length === 0) return result;
846
- const provenanceTurns = turns.map((t) => ({
847
- content: t.content,
848
- sessionKey: t.sessionKey,
849
- logicalSessionKey: t.logicalSessionKey,
850
- timestamp: t.timestamp,
851
- turnId: t.turnFingerprint
852
- }));
853
- const facts = result.facts.map((fact) => {
854
- const built = buildFactProvenance(
855
- fact.quote,
856
- provenanceTurns,
857
- this.config.provenance
858
- );
859
- const { quote: _stripped, ...factWithoutQuote } = fact;
860
- return {
861
- ...factWithoutQuote,
862
- ...built.sources && built.sources.length > 0 ? { sources: built.sources } : {},
863
- ...built.provenance !== "none" ? { provenance: built.provenance } : {},
864
- ...built.requireSpansPending ? { requireSpansPending: true } : {}
865
- };
866
- });
867
- return { ...result, facts };
868
- }
869
832
  applySourceGrounding(result, sourceText, assertionSourceText = sourceText, roleAssertionSources, messageTimestamp) {
870
833
  const capabilities = resolvePipelineProcessingCapabilities(this.config);
871
834
  return applyExtractionSourceGrounding(
@@ -881,9 +844,9 @@ var ExtractionEngine = class {
881
844
  );
882
845
  }
883
846
  finalizeExtractionResult(result, turns) {
884
- return this.attachProvenanceToResult(result, turns);
847
+ return attachExtractionProvenance(result, turns, this.config.provenance);
885
848
  }
886
- async extract(turns, existingEntities) {
849
+ async extract(turns, existingEntities, signal) {
887
850
  const lifecycleCaps = resolveMemoryLifecycleCapabilities(this.config);
888
851
  const substantiveTurns = turns.filter((t) => t.content.trim().length > 0);
889
852
  if (substantiveTurns.length === 0) {
@@ -937,7 +900,8 @@ var ExtractionEngine = class {
937
900
  this.profiler.startSpan("local-llm", extractionTraceId);
938
901
  primaryExtractorAttempted = true;
939
902
  try {
940
- const localResult = await this.extractWithLocalLlm(conversation, existingEntities);
903
+ const localResult = await this.extractWithLocalLlm(conversation, existingEntities, signal);
904
+ throwIfExtractionAborted(signal);
941
905
  if (localResult) {
942
906
  const durationMs = Date.now() - startTime;
943
907
  this.profiler.endSpan("local-llm", extractionTraceId);
@@ -957,7 +921,8 @@ var ExtractionEngine = class {
957
921
  groundingSource,
958
922
  assertionSource,
959
923
  messageTimestamp,
960
- roleAssertionSources
924
+ roleAssertionSources,
925
+ signal
961
926
  );
962
927
  return this.finalizeExtractionResult(finalResult, boundedTurns);
963
928
  }
@@ -974,6 +939,7 @@ var ExtractionEngine = class {
974
939
  }
975
940
  log.info("extraction: local LLM unavailable, falling back to gateway default AI");
976
941
  } catch (err) {
942
+ if (signal?.aborted) throw err;
977
943
  if (!this.config.localLlmFallback) {
978
944
  log.warn("extraction: local LLM error and fallback disabled:", err);
979
945
  return {
@@ -997,7 +963,7 @@ var ExtractionEngine = class {
997
963
  this.profiler.startSpan("direct-client", extractionTraceId);
998
964
  primaryExtractorAttempted = true;
999
965
  try {
1000
- const directResult = await this.extractWithDirectClient(conversation, existingEntities);
966
+ const directResult = await this.extractWithDirectClient(conversation, existingEntities, signal);
1001
967
  if (directResult) {
1002
968
  const durationMs = Date.now() - startTime;
1003
969
  this.profiler.endSpan("direct-client", extractionTraceId);
@@ -1017,7 +983,8 @@ var ExtractionEngine = class {
1017
983
  groundingSource,
1018
984
  assertionSource,
1019
985
  messageTimestamp,
1020
- roleAssertionSources
986
+ roleAssertionSources,
987
+ signal
1021
988
  );
1022
989
  return this.finalizeExtractionResult(finalResult, boundedTurns);
1023
990
  }
@@ -1035,6 +1002,7 @@ var ExtractionEngine = class {
1035
1002
  closedDirectTrace = true;
1036
1003
  log.info("extraction: direct client returned no result, falling back to gateway AI");
1037
1004
  } catch (err) {
1005
+ if (signal?.aborted) throw err;
1038
1006
  try {
1039
1007
  this.emit({
1040
1008
  kind: "llm_error",
@@ -1090,7 +1058,8 @@ var ExtractionEngine = class {
1090
1058
  this.withGatewayAgent({
1091
1059
  temperature: 0.3,
1092
1060
  maxTokens: this.config.extractionMaxOutputTokens,
1093
- timeoutMs: this.config.localLlmTimeoutMs
1061
+ timeoutMs: this.config.localLlmTimeoutMs,
1062
+ signal
1094
1063
  })
1095
1064
  );
1096
1065
  const fallbackDurationMs = Date.now() - fallbackStartTime;
@@ -1122,7 +1091,8 @@ var ExtractionEngine = class {
1122
1091
  groundingSource,
1123
1092
  assertionSource,
1124
1093
  messageTimestamp,
1125
- roleAssertionSources
1094
+ roleAssertionSources,
1095
+ signal
1126
1096
  );
1127
1097
  return this.finalizeExtractionResult(finalResult, boundedTurns);
1128
1098
  }
@@ -1149,6 +1119,7 @@ var ExtractionEngine = class {
1149
1119
  extractionFailureClass: fallbackParseFailureClass
1150
1120
  };
1151
1121
  } catch (err) {
1122
+ if (signal?.aborted) throw err;
1152
1123
  this.emit({
1153
1124
  kind: "llm_error",
1154
1125
  traceId: fallbackTraceId,
@@ -1181,7 +1152,7 @@ var ExtractionEngine = class {
1181
1152
  * Extract memories using local LLM with JSON mode.
1182
1153
  * Uses a minimal prompt to fit within local model context limits (typically 4k-8k).
1183
1154
  */
1184
- async extractWithLocalLlm(conversation, existingEntities) {
1155
+ async extractWithLocalLlm(conversation, existingEntities, signal) {
1185
1156
  const lifecycleCaps = resolveMemoryLifecycleCapabilities(this.config);
1186
1157
  log.debug(
1187
1158
  `extractWithLocalLlm: starting extraction, localLlmEnabled=${this.shouldUseLocalLlm}, model=${this.config.localLlmModel}`
@@ -1241,7 +1212,8 @@ ${truncatedConversation}`;
1241
1212
  maxTokens: contextSizes.maxOutputTokens,
1242
1213
  operation: "extraction",
1243
1214
  disableThinking: shouldEnableLocalExtractionThinking(this.config, conversation.length) ? false : void 0,
1244
- priority: "background"
1215
+ priority: "background",
1216
+ signal
1245
1217
  }
1246
1218
  );
1247
1219
  if (!response?.content) {
@@ -1279,26 +1251,29 @@ ${truncatedConversation}`;
1279
1251
  * Extract memories using direct OpenAI-compatible client (Chat Completions API).
1280
1252
  * Works with Scryr, OpenRouter, and other OpenAI-compatible endpoints.
1281
1253
  */
1282
- async extractWithDirectClient(conversation, existingEntities) {
1254
+ async extractWithDirectClient(conversation, existingEntities, signal) {
1283
1255
  if (!this.client) return null;
1284
1256
  const tokenParams = buildChatCompletionTokenLimit(this.config.model, this.config.extractionMaxOutputTokens, {
1285
1257
  assumeOpenAI: this.directClientUsesOpenAiTokenSemantics()
1286
1258
  });
1287
1259
  log.debug(`extractWithDirectClient: calling model=${this.config.model} tokenParams=${JSON.stringify(tokenParams)}`);
1288
- const response = await this.client.chat.completions.create({
1289
- model: this.config.model,
1290
- messages: [
1291
- {
1292
- role: "system",
1293
- content: this.buildExtractionInstructions(existingEntities) + `
1260
+ const response = await this.client.chat.completions.create(
1261
+ {
1262
+ model: this.config.model,
1263
+ messages: [
1264
+ {
1265
+ role: "system",
1266
+ content: this.buildExtractionInstructions(existingEntities) + `
1294
1267
 
1295
1268
  Return only valid JSON matching this shape. Placeholder text describes field shape only and is never source evidence:
1296
1269
  ${EXTRACTION_RESPONSE_SHAPE}`
1297
- },
1298
- { role: "user", content: conversation }
1299
- ],
1300
- ...tokenParams
1301
- });
1270
+ },
1271
+ { role: "user", content: conversation }
1272
+ ],
1273
+ ...tokenParams
1274
+ },
1275
+ signal ? { signal } : void 0
1276
+ );
1302
1277
  const content = response.choices?.[0]?.message?.content?.trim();
1303
1278
  if (!content) {
1304
1279
  log.info(`extractWithDirectClient: empty response \u2014 choices=${JSON.stringify(response.choices?.length ?? 0)} finishReason=${response.choices?.[0]?.finish_reason ?? "n/a"}`);
@@ -2507,4 +2482,4 @@ export {
2507
2482
  shouldEnableLocalExtractionThinking,
2508
2483
  ExtractionEngine
2509
2484
  };
2510
- //# sourceMappingURL=chunk-GBJ4RDFR.js.map
2485
+ //# sourceMappingURL=chunk-QIHIHZYC.js.map