@remnic/core 9.3.713 → 9.3.715

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 (325) hide show
  1. package/dist/access-boundary.d.ts +6 -6
  2. package/dist/access-boundary.js +17 -16
  3. package/dist/access-cli.js +39 -38
  4. package/dist/access-cli.js.map +1 -1
  5. package/dist/access-http.d.ts +5 -5
  6. package/dist/access-http.js +23 -22
  7. package/dist/access-mcp.d.ts +12 -5
  8. package/dist/access-mcp.js +20 -19
  9. package/dist/access-operations-batch.js +18 -17
  10. package/dist/access-operations.d.ts +6 -5
  11. package/dist/access-operations.js +19 -18
  12. package/dist/{access-service-DwVmvgBg.d.ts → access-service-GgnA--CE.d.ts} +12 -4
  13. package/dist/access-service.d.ts +5 -5
  14. package/dist/access-service.js +16 -15
  15. package/dist/access-surface-catalog.d.ts +5 -5
  16. package/dist/access-surface-catalog.js +6 -1
  17. package/dist/access-surface-catalog.js.map +1 -1
  18. package/dist/action-confidence.d.ts +1 -1
  19. package/dist/active-memory-bridge.d.ts +3 -1
  20. package/dist/active-memory-bridge.js +2 -1
  21. package/dist/active-recall.d.ts +1 -1
  22. package/dist/active-recall.js +4 -3
  23. package/dist/active-recall.js.map +1 -1
  24. package/dist/adapters/index.js +4 -4
  25. package/dist/adapters/registry.js +2 -2
  26. package/dist/behavior-learner.d.ts +1 -1
  27. package/dist/behavior-signals.d.ts +1 -1
  28. package/dist/bootstrap.d.ts +4 -4
  29. package/dist/briefing.d.ts +1 -1
  30. package/dist/briefing.js +8 -7
  31. package/dist/buffer-surprise-report.d.ts +1 -1
  32. package/dist/buffer.d.ts +1 -1
  33. package/dist/calibration.d.ts +1 -1
  34. package/dist/capabilities.d.ts +1 -1
  35. package/dist/{catalog-CadPvH29.d.ts → catalog-CbR0CsUw.d.ts} +1 -1
  36. package/dist/causal-behavior.d.ts +1 -1
  37. package/dist/causal-consolidation.d.ts +1 -1
  38. package/dist/causal-consolidation.js +9 -8
  39. package/dist/causal-consolidation.js.map +1 -1
  40. package/dist/{chunk-OMSTU233.js → chunk-2KAYTPPT.js} +4 -4
  41. package/dist/{chunk-VYZNWH4J.js → chunk-2SXMCQEQ.js} +3 -3
  42. package/dist/{chunk-NXL5CVE7.js → chunk-2Y6LMOQQ.js} +2 -2
  43. package/dist/{chunk-ZDUF7K5V.js → chunk-3VUPWDSE.js} +15 -3
  44. package/dist/{chunk-ZDUF7K5V.js.map → chunk-3VUPWDSE.js.map} +1 -1
  45. package/dist/{chunk-FVQJYWH7.js → chunk-5GKPFL3S.js} +1 -1
  46. package/dist/{chunk-FVQJYWH7.js.map → chunk-5GKPFL3S.js.map} +1 -1
  47. package/dist/{chunk-LQ4J7ELC.js → chunk-67HG7KFE.js} +2 -2
  48. package/dist/{chunk-ZBG4K36I.js → chunk-6FUJ2VYY.js} +3 -3
  49. package/dist/{chunk-GMRNKPWO.js → chunk-6QUPUTT7.js} +2 -2
  50. package/dist/{chunk-Z56IHRVV.js → chunk-6UU43ZGD.js} +2 -2
  51. package/dist/{chunk-APJQ6UEA.js → chunk-AGNBY3VG.js} +4 -4
  52. package/dist/{chunk-OWOKOFXK.js → chunk-AJOIM6UR.js} +2 -2
  53. package/dist/{chunk-JBPKEARU.js → chunk-AU7Q3LSC.js} +4 -4
  54. package/dist/{chunk-UHN2TNSB.js → chunk-BNOAB5HH.js} +38 -11
  55. package/dist/chunk-BNOAB5HH.js.map +1 -0
  56. package/dist/{chunk-VW24K2Q4.js → chunk-CTAHKIG6.js} +169 -8
  57. package/dist/chunk-CTAHKIG6.js.map +1 -0
  58. package/dist/{chunk-K22IJO4R.js → chunk-CTOQEZSN.js} +2 -2
  59. package/dist/{chunk-SINGJCUR.js → chunk-CX77GNMB.js} +14 -3
  60. package/dist/chunk-CX77GNMB.js.map +1 -0
  61. package/dist/{chunk-HSDJCT3V.js → chunk-DXGS5YOQ.js} +3 -3
  62. package/dist/{chunk-HV57RHMD.js → chunk-EH5ED3C6.js} +2 -2
  63. package/dist/{chunk-7NDYFAJS.js → chunk-GM3BMWKR.js} +2 -2
  64. package/dist/{chunk-RMT7PAVW.js → chunk-HHLWSWWF.js} +2 -2
  65. package/dist/chunk-HHLWSWWF.js.map +1 -0
  66. package/dist/{chunk-5QUS24F7.js → chunk-I56LKMF7.js} +2 -2
  67. package/dist/{chunk-VUNI6Y3D.js → chunk-IHMT6XTY.js} +8 -4
  68. package/dist/chunk-IHMT6XTY.js.map +1 -0
  69. package/dist/chunk-JAKIDQB2.js +173 -0
  70. package/dist/chunk-JAKIDQB2.js.map +1 -0
  71. package/dist/{chunk-35YJ6KCV.js → chunk-JEIROMLX.js} +2 -2
  72. package/dist/{chunk-SKQCFAYU.js → chunk-JVEMUX6L.js} +2 -2
  73. package/dist/{chunk-CXMXAC5R.js → chunk-K44MIN6D.js} +3 -3
  74. package/dist/{chunk-JC3MIKR4.js → chunk-MECU6WSH.js} +188 -31
  75. package/dist/chunk-MECU6WSH.js.map +1 -0
  76. package/dist/{chunk-BQCFXAMN.js → chunk-MPHDVHIB.js} +2 -2
  77. package/dist/{chunk-BOGENF7P.js → chunk-MSVSP5VO.js} +1 -1
  78. package/dist/chunk-MSVSP5VO.js.map +1 -0
  79. package/dist/{chunk-QXNFQKWU.js → chunk-MTHNJCOJ.js} +2 -2
  80. package/dist/{chunk-3TCRU4JA.js → chunk-O62P2LFL.js} +2 -2
  81. package/dist/{chunk-JSDZMOT7.js → chunk-OC56UWV5.js} +11 -11
  82. package/dist/{chunk-7IBEWQLG.js → chunk-QOIONSOI.js} +2 -2
  83. package/dist/{chunk-4P5UAL3C.js → chunk-RBHANGVX.js} +6 -6
  84. package/dist/{chunk-SK2CR6MW.js → chunk-RVLB4E6N.js} +2 -2
  85. package/dist/{chunk-DJNKN3XY.js → chunk-SYDHFFAW.js} +1084 -12
  86. package/dist/chunk-SYDHFFAW.js.map +1 -0
  87. package/dist/{chunk-VILEUJXC.js → chunk-UC4YOAC2.js} +74 -2
  88. package/dist/{chunk-VILEUJXC.js.map → chunk-UC4YOAC2.js.map} +1 -1
  89. package/dist/{chunk-CNVIWMQI.js → chunk-UY4JMEAK.js} +2 -2
  90. package/dist/{chunk-S6FQLQGH.js → chunk-V7GDTQ6I.js} +2 -2
  91. package/dist/{chunk-JNOYYWCA.js → chunk-VO4UICII.js} +3 -3
  92. package/dist/{chunk-54TI5GLV.js → chunk-WI4QX7GH.js} +3 -3
  93. package/dist/{chunk-3XHD3XGK.js → chunk-XCTDHF7U.js} +30 -2
  94. package/dist/chunk-XCTDHF7U.js.map +1 -0
  95. package/dist/{chunk-XKU4YE6Z.js → chunk-XZTUMWKQ.js} +2 -2
  96. package/dist/{chunk-GKPIY7EQ.js → chunk-YUJL27ET.js} +160 -61
  97. package/dist/chunk-YUJL27ET.js.map +1 -0
  98. package/dist/{cli-DfDMJqPP.d.ts → cli-Do1YtfnH.d.ts} +3 -3
  99. package/dist/cli.d.ts +6 -6
  100. package/dist/cli.js +42 -41
  101. package/dist/compounding/engine.d.ts +1 -1
  102. package/dist/compounding/engine.js +8 -7
  103. package/dist/compounding/preference-consolidator.d.ts +1 -1
  104. package/dist/compression-optimizer.d.ts +1 -1
  105. package/dist/config.d.ts +1 -1
  106. package/dist/config.js +4 -3
  107. package/dist/connectors/codex-materialize-runner.d.ts +1 -1
  108. package/dist/connectors/codex-materialize-runner.js +8 -7
  109. package/dist/connectors/codex-materialize.d.ts +1 -1
  110. package/dist/connectors/index.d.ts +1 -1
  111. package/dist/connectors/index.js +9 -8
  112. package/dist/consolidation-provenance-check.d.ts +1 -1
  113. package/dist/consolidation-undo.d.ts +1 -1
  114. package/dist/contradiction/index.d.ts +1 -1
  115. package/dist/conversation-index/backend.d.ts +1 -1
  116. package/dist/conversation-index/chunker.d.ts +1 -1
  117. package/dist/conversation-index/faiss-adapter.d.ts +1 -1
  118. package/dist/conversation-index/indexer.d.ts +1 -1
  119. package/dist/conversation-index/search.d.ts +1 -1
  120. package/dist/day-summary.d.ts +1 -1
  121. package/dist/delinearize.d.ts +1 -1
  122. package/dist/direct-answer-wiring.d.ts +1 -1
  123. package/dist/direct-answer.d.ts +1 -1
  124. package/dist/embedding-fallback.d.ts +1 -1
  125. package/dist/enrichment/index.d.ts +1 -1
  126. package/dist/entity-retrieval.d.ts +1 -1
  127. package/dist/entity-retrieval.js +8 -7
  128. package/dist/entity-schema.d.ts +1 -1
  129. package/dist/explicit-capture.d.ts +4 -4
  130. package/dist/explicit-capture.js +3 -2
  131. package/dist/extraction-faithfulness.d.ts +1 -1
  132. package/dist/extraction-judge-telemetry.d.ts +1 -1
  133. package/dist/extraction-judge-training.d.ts +1 -1
  134. package/dist/extraction-judge.d.ts +1 -1
  135. package/dist/extraction.d.ts +1 -1
  136. package/dist/extraction.js +4 -3
  137. package/dist/fallback-llm.d.ts +1 -1
  138. package/dist/identity-continuity.d.ts +1 -1
  139. package/dist/importance.d.ts +1 -1
  140. package/dist/index.d.ts +9 -9
  141. package/dist/index.js +61 -60
  142. package/dist/index.js.map +1 -1
  143. package/dist/intent.d.ts +1 -1
  144. package/dist/lcm/engine.d.ts +1 -1
  145. package/dist/lcm/index.d.ts +1 -1
  146. package/dist/lcm/index.js +3 -3
  147. package/dist/lcm/tools.d.ts +1 -1
  148. package/dist/lifecycle.d.ts +1 -1
  149. package/dist/live-connectors-runner.d.ts +1 -1
  150. package/dist/local-llm.d.ts +1 -1
  151. package/dist/maintenance/memory-governance.d.ts +1 -1
  152. package/dist/maintenance/memory-governance.js +8 -7
  153. package/dist/maintenance/rebuild-memory-lifecycle-ledger.js +8 -7
  154. package/dist/maintenance/rebuild-memory-projection.js +9 -8
  155. package/dist/mcp-memory-inspector-app.d.ts +5 -5
  156. package/dist/memory-action-policy.d.ts +1 -1
  157. package/dist/memory-cache.d.ts +1 -1
  158. package/dist/memory-lifecycle-ledger-utils.d.ts +1 -1
  159. package/dist/memory-projection-store.d.ts +1 -1
  160. package/dist/memory-provenance.d.ts +1 -1
  161. package/dist/memory-worth-outcomes.d.ts +1 -1
  162. package/dist/models-json.d.ts +1 -1
  163. package/dist/namespaces/migrate.d.ts +2 -2
  164. package/dist/namespaces/migrate.js +12 -11
  165. package/dist/namespaces/principal.d.ts +1 -1
  166. package/dist/namespaces/search.d.ts +1 -1
  167. package/dist/namespaces/search.js +3 -3
  168. package/dist/namespaces/storage.d.ts +2 -2
  169. package/dist/namespaces/storage.js +8 -7
  170. package/dist/native-knowledge.d.ts +1 -1
  171. package/dist/operator-toolkit.d.ts +1 -1
  172. package/dist/operator-toolkit.js +17 -16
  173. package/dist/orchestration/maintenance.d.ts +2 -2
  174. package/dist/orchestration/maintenance.js +10 -9
  175. package/dist/{orchestrator-B1iVjEyc.d.ts → orchestrator-BOaVstFG.d.ts} +32 -4
  176. package/dist/orchestrator.d.ts +4 -4
  177. package/dist/orchestrator.js +32 -31
  178. package/dist/patterns-cli.d.ts +1 -1
  179. package/dist/policy-runtime.d.ts +1 -1
  180. package/dist/provenance.d.ts +1 -1
  181. package/dist/provenance.js +3 -2
  182. package/dist/qmd-recall-cache.d.ts +1 -1
  183. package/dist/qmd.d.ts +1 -1
  184. package/dist/recall-disclosure-escalation.d.ts +1 -1
  185. package/dist/recall-explain-renderer.d.ts +1 -1
  186. package/dist/recall-explain-renderer.js +3 -3
  187. package/dist/recall-handles.d.ts +228 -0
  188. package/dist/recall-handles.js +42 -0
  189. package/dist/recall-handles.js.map +1 -0
  190. package/dist/recall-planner-llm.d.ts +1 -1
  191. package/dist/recall-state.d.ts +40 -2
  192. package/dist/recall-state.js +3 -1
  193. package/dist/recall-tag-filter.d.ts +1 -1
  194. package/dist/recall-xray-cli.d.ts +1 -1
  195. package/dist/recall-xray-cli.js +4 -4
  196. package/dist/recall-xray-renderer.d.ts +1 -1
  197. package/dist/recall-xray-renderer.js +3 -3
  198. package/dist/recall-xray.d.ts +1 -1
  199. package/dist/recall-xray.js +2 -2
  200. package/dist/resolve-auth-token.d.ts +1 -1
  201. package/dist/resume-bundles.js +5 -4
  202. package/dist/retrieval-agents.d.ts +1 -1
  203. package/dist/retrieval-tiers.d.ts +1 -1
  204. package/dist/routing/engine.d.ts +1 -1
  205. package/dist/routing/store.d.ts +1 -1
  206. package/dist/sanitize.d.ts +2 -0
  207. package/dist/sanitize.js +6 -2
  208. package/dist/schemas.d.ts +22 -22
  209. package/dist/search/embed-helper.d.ts +1 -1
  210. package/dist/search/factory.d.ts +1 -1
  211. package/dist/search/factory.js +2 -2
  212. package/dist/search/index.d.ts +1 -1
  213. package/dist/search/index.js +4 -4
  214. package/dist/search/lancedb-backend.d.ts +1 -1
  215. package/dist/search/meilisearch-backend.d.ts +1 -1
  216. package/dist/search/noop-backend.d.ts +1 -1
  217. package/dist/search/orama-backend.d.ts +1 -1
  218. package/dist/search/port.d.ts +1 -1
  219. package/dist/search/remote-backend.d.ts +1 -1
  220. package/dist/{semantic-consolidation-CY8uVRNJ.d.ts → semantic-consolidation-DSjMDZ1u.d.ts} +1 -1
  221. package/dist/semantic-consolidation.d.ts +2 -2
  222. package/dist/semantic-consolidation.js +9 -8
  223. package/dist/semantic-rule-promotion.js +8 -7
  224. package/dist/semantic-rule-verifier.d.ts +1 -1
  225. package/dist/semantic-rule-verifier.js +8 -7
  226. package/dist/session-observer-bands.d.ts +1 -1
  227. package/dist/session-observer-state.d.ts +1 -1
  228. package/dist/shared-context/manager.d.ts +3 -3
  229. package/dist/signal.d.ts +1 -1
  230. package/dist/storage.d.ts +1 -1
  231. package/dist/storage.js +7 -6
  232. package/dist/summarizer.d.ts +1 -1
  233. package/dist/summary-snapshot.d.ts +1 -1
  234. package/dist/temporal-supersession.d.ts +1 -1
  235. package/dist/temporal-validity.d.ts +1 -1
  236. package/dist/threading.d.ts +1 -1
  237. package/dist/tier-migration.d.ts +1 -1
  238. package/dist/tier-routing.d.ts +1 -1
  239. package/dist/topics.d.ts +1 -1
  240. package/dist/transcript.d.ts +1 -1
  241. package/dist/transfer/import-sqlite.js +2 -2
  242. package/dist/transfer/types.d.ts +12 -12
  243. package/dist/{types-Dr0Cw3L9.d.ts → types-D9dwzU_x.d.ts} +25 -1
  244. package/dist/types.d.ts +1 -1
  245. package/dist/types.js +1 -1
  246. package/dist/utility-runtime.d.ts +1 -1
  247. package/dist/verified-recall.js +8 -7
  248. package/package.json +2 -2
  249. package/src/access-boundary.ts +4 -1
  250. package/src/access-http.ts +33 -1
  251. package/src/access-mcp.test.ts +28 -0
  252. package/src/access-mcp.ts +67 -2
  253. package/src/access-operations-batch.ts +14 -0
  254. package/src/access-operations.ts +5 -0
  255. package/src/access-service.ts +43 -2
  256. package/src/access-surface-catalog.test.ts +4 -2
  257. package/src/access-surface-catalog.ts +5 -0
  258. package/src/active-memory-bridge.test.ts +72 -0
  259. package/src/active-memory-bridge.ts +21 -2
  260. package/src/chat/chat-cli.test.ts +142 -0
  261. package/src/chat/chat-cli.ts +206 -0
  262. package/src/chat/chat-config.ts +57 -0
  263. package/src/chat/chat-engine.test.ts +272 -0
  264. package/src/chat/chat-engine.ts +518 -0
  265. package/src/chat/chat-executor.ts +133 -0
  266. package/src/chat/chat-factory.ts +161 -0
  267. package/src/chat/chat-http.test.ts +197 -0
  268. package/src/chat/chat-http.ts +222 -0
  269. package/src/chat/chat-llm.ts +229 -0
  270. package/src/chat/chat-mcp.test.ts +135 -0
  271. package/src/chat/chat-security.test.ts +491 -0
  272. package/src/chat/chat-session.ts +296 -0
  273. package/src/chat/chat-system-prompt.ts +76 -0
  274. package/src/chat/chat-tools.ts +255 -0
  275. package/src/chat/chat-types.ts +167 -0
  276. package/src/cli.ts +20 -0
  277. package/src/config.ts +9 -0
  278. package/src/faithfulness-graph-guard.test.ts +214 -8
  279. package/src/orchestrator.ts +167 -22
  280. package/src/recall-handles-wiring.test.ts +477 -0
  281. package/src/recall-handles.test.ts +283 -0
  282. package/src/recall-handles.ts +414 -0
  283. package/src/recall-state.ts +99 -0
  284. package/src/sanitize.ts +6 -0
  285. package/src/types.ts +29 -0
  286. package/dist/chunk-3XHD3XGK.js.map +0 -1
  287. package/dist/chunk-BOGENF7P.js.map +0 -1
  288. package/dist/chunk-DJNKN3XY.js.map +0 -1
  289. package/dist/chunk-GKPIY7EQ.js.map +0 -1
  290. package/dist/chunk-JC3MIKR4.js.map +0 -1
  291. package/dist/chunk-RMT7PAVW.js.map +0 -1
  292. package/dist/chunk-SINGJCUR.js.map +0 -1
  293. package/dist/chunk-UHN2TNSB.js.map +0 -1
  294. package/dist/chunk-VUNI6Y3D.js.map +0 -1
  295. package/dist/chunk-VW24K2Q4.js.map +0 -1
  296. /package/dist/{chunk-OMSTU233.js.map → chunk-2KAYTPPT.js.map} +0 -0
  297. /package/dist/{chunk-VYZNWH4J.js.map → chunk-2SXMCQEQ.js.map} +0 -0
  298. /package/dist/{chunk-NXL5CVE7.js.map → chunk-2Y6LMOQQ.js.map} +0 -0
  299. /package/dist/{chunk-LQ4J7ELC.js.map → chunk-67HG7KFE.js.map} +0 -0
  300. /package/dist/{chunk-ZBG4K36I.js.map → chunk-6FUJ2VYY.js.map} +0 -0
  301. /package/dist/{chunk-GMRNKPWO.js.map → chunk-6QUPUTT7.js.map} +0 -0
  302. /package/dist/{chunk-Z56IHRVV.js.map → chunk-6UU43ZGD.js.map} +0 -0
  303. /package/dist/{chunk-APJQ6UEA.js.map → chunk-AGNBY3VG.js.map} +0 -0
  304. /package/dist/{chunk-OWOKOFXK.js.map → chunk-AJOIM6UR.js.map} +0 -0
  305. /package/dist/{chunk-JBPKEARU.js.map → chunk-AU7Q3LSC.js.map} +0 -0
  306. /package/dist/{chunk-K22IJO4R.js.map → chunk-CTOQEZSN.js.map} +0 -0
  307. /package/dist/{chunk-HSDJCT3V.js.map → chunk-DXGS5YOQ.js.map} +0 -0
  308. /package/dist/{chunk-HV57RHMD.js.map → chunk-EH5ED3C6.js.map} +0 -0
  309. /package/dist/{chunk-7NDYFAJS.js.map → chunk-GM3BMWKR.js.map} +0 -0
  310. /package/dist/{chunk-5QUS24F7.js.map → chunk-I56LKMF7.js.map} +0 -0
  311. /package/dist/{chunk-35YJ6KCV.js.map → chunk-JEIROMLX.js.map} +0 -0
  312. /package/dist/{chunk-SKQCFAYU.js.map → chunk-JVEMUX6L.js.map} +0 -0
  313. /package/dist/{chunk-CXMXAC5R.js.map → chunk-K44MIN6D.js.map} +0 -0
  314. /package/dist/{chunk-BQCFXAMN.js.map → chunk-MPHDVHIB.js.map} +0 -0
  315. /package/dist/{chunk-QXNFQKWU.js.map → chunk-MTHNJCOJ.js.map} +0 -0
  316. /package/dist/{chunk-3TCRU4JA.js.map → chunk-O62P2LFL.js.map} +0 -0
  317. /package/dist/{chunk-JSDZMOT7.js.map → chunk-OC56UWV5.js.map} +0 -0
  318. /package/dist/{chunk-7IBEWQLG.js.map → chunk-QOIONSOI.js.map} +0 -0
  319. /package/dist/{chunk-4P5UAL3C.js.map → chunk-RBHANGVX.js.map} +0 -0
  320. /package/dist/{chunk-SK2CR6MW.js.map → chunk-RVLB4E6N.js.map} +0 -0
  321. /package/dist/{chunk-CNVIWMQI.js.map → chunk-UY4JMEAK.js.map} +0 -0
  322. /package/dist/{chunk-S6FQLQGH.js.map → chunk-V7GDTQ6I.js.map} +0 -0
  323. /package/dist/{chunk-JNOYYWCA.js.map → chunk-VO4UICII.js.map} +0 -0
  324. /package/dist/{chunk-54TI5GLV.js.map → chunk-WI4QX7GH.js.map} +0 -0
  325. /package/dist/{chunk-XKU4YE6Z.js.map → chunk-XZTUMWKQ.js.map} +0 -0
@@ -3,7 +3,7 @@ import {
3
3
  } from "./chunk-TBBDFYXW.js";
4
4
  import {
5
5
  StorageManager
6
- } from "./chunk-JSDZMOT7.js";
6
+ } from "./chunk-OC56UWV5.js";
7
7
  import {
8
8
  assertPathInsideRoot
9
9
  } from "./chunk-5GPPACXK.js";
@@ -751,4 +751,4 @@ export {
751
751
  listMemoryGovernanceRuns,
752
752
  readMemoryGovernanceRunArtifact
753
753
  };
754
- //# sourceMappingURL=chunk-XKU4YE6Z.js.map
754
+ //# sourceMappingURL=chunk-XZTUMWKQ.js.map
@@ -7,7 +7,7 @@ import {
7
7
  } from "./chunk-DGTDRIUO.js";
8
8
  import {
9
9
  MaintenanceScheduler
10
- } from "./chunk-3TCRU4JA.js";
10
+ } from "./chunk-O62P2LFL.js";
11
11
  import {
12
12
  migrateFromEngram
13
13
  } from "./chunk-7HYPN2GC.js";
@@ -23,18 +23,21 @@ import {
23
23
  import {
24
24
  CompoundingEngine,
25
25
  defaultTierMigrationCycleBudget
26
- } from "./chunk-54TI5GLV.js";
26
+ } from "./chunk-WI4QX7GH.js";
27
27
  import {
28
28
  SharedContextManager
29
29
  } from "./chunk-UFS7OXGL.js";
30
- import {
31
- extractTopics
32
- } from "./chunk-UHGBNIOS.js";
33
30
  import {
34
31
  applyUtilityPromotionRuntimePolicy,
35
32
  applyUtilityRankingRuntimeDelta,
36
33
  loadUtilityRuntimeValues
37
34
  } from "./chunk-LXOM6IQU.js";
35
+ import {
36
+ TmtBuilder
37
+ } from "./chunk-ECZU5BJH.js";
38
+ import {
39
+ extractTopics
40
+ } from "./chunk-UHGBNIOS.js";
38
41
  import {
39
42
  CODEX_THREAD_KEY_PREFIX
40
43
  } from "./chunk-4EX5WZ4M.js";
@@ -44,9 +47,6 @@ import {
44
47
  import {
45
48
  decideTierTransition
46
49
  } from "./chunk-S75M5ZRK.js";
47
- import {
48
- TmtBuilder
49
- } from "./chunk-ECZU5BJH.js";
50
50
  import {
51
51
  HourlySummarizer
52
52
  } from "./chunk-IO5NQEGZ.js";
@@ -57,6 +57,12 @@ import {
57
57
  import {
58
58
  SessionObserverState
59
59
  } from "./chunk-DKTSR7EK.js";
60
+ import {
61
+ applyRuntimeRetrievalPolicy
62
+ } from "./chunk-5IZL4DCV.js";
63
+ import {
64
+ RelevanceStore
65
+ } from "./chunk-GG6AJN7A.js";
60
66
  import {
61
67
  RerankCache,
62
68
  rerankLocalOrNoop
@@ -84,25 +90,20 @@ import {
84
90
  resolvePromptTagPrefilterAsync
85
91
  } from "./chunk-MGN7VHWQ.js";
86
92
  import {
87
- applyRuntimeRetrievalPolicy
88
- } from "./chunk-5IZL4DCV.js";
93
+ LastRecallStore,
94
+ RecallHandleHistoryStore,
95
+ TierMigrationStatusStore,
96
+ clampGraphRecallExpandedEntries
97
+ } from "./chunk-UC4YOAC2.js";
89
98
  import {
90
99
  findUnresolvedEntityRefs
91
100
  } from "./chunk-X7XN6YU4.js";
92
- import {
93
- RelevanceStore
94
- } from "./chunk-GG6AJN7A.js";
95
101
  import {
96
102
  reorderRecallResultsWithMmr
97
103
  } from "./chunk-YDBIWGNI.js";
98
104
  import {
99
105
  createRecallSectionMetricRecorder
100
106
  } from "./chunk-VQ34TERH.js";
101
- import {
102
- LastRecallStore,
103
- TierMigrationStatusStore,
104
- clampGraphRecallExpandedEntries
105
- } from "./chunk-VILEUJXC.js";
106
107
  import {
107
108
  applyReasoningTraceBoost
108
109
  } from "./chunk-ZZTOURJI.js";
@@ -138,7 +139,7 @@ import {
138
139
  } from "./chunk-TH7WMHVK.js";
139
140
  import {
140
141
  ExtractionEngine
141
- } from "./chunk-VYZNWH4J.js";
142
+ } from "./chunk-2SXMCQEQ.js";
142
143
  import {
143
144
  parseMemoryActionEligibilityContext
144
145
  } from "./chunk-5GSUBCZM.js";
@@ -175,7 +176,7 @@ import {
175
176
  buildEntityRecallSection,
176
177
  entityRecentTranscriptLookbackHours,
177
178
  readRecentEntityTranscriptEntries
178
- } from "./chunk-HSDJCT3V.js";
179
+ } from "./chunk-DXGS5YOQ.js";
179
180
  import {
180
181
  formatDaySummaryMemories
181
182
  } from "./chunk-EO5QWINU.js";
@@ -188,14 +189,14 @@ import {
188
189
  import {
189
190
  compareVerifiedEpisodeResults,
190
191
  searchVerifiedEpisodes
191
- } from "./chunk-S6FQLQGH.js";
192
+ } from "./chunk-V7GDTQ6I.js";
192
193
  import {
193
194
  ThreadingManager
194
195
  } from "./chunk-QRDOSYOR.js";
195
196
  import {
196
197
  compareVerifiedSemanticRuleResults,
197
198
  searchVerifiedSemanticRules
198
- } from "./chunk-SKQCFAYU.js";
199
+ } from "./chunk-JVEMUX6L.js";
199
200
  import {
200
201
  searchWorkProductLedgerEntries
201
202
  } from "./chunk-ZRWB5D4H.js";
@@ -205,14 +206,14 @@ import {
205
206
  import {
206
207
  runNamespaceMaintenanceFanout,
207
208
  summarizeNamespaceMaintenanceHealth
208
- } from "./chunk-7NDYFAJS.js";
209
+ } from "./chunk-GM3BMWKR.js";
209
210
  import {
210
211
  NamespaceCatalog,
211
212
  planNamespaceMaintenance
212
- } from "./chunk-GMRNKPWO.js";
213
+ } from "./chunk-6QUPUTT7.js";
213
214
  import {
214
215
  NamespaceStorageRouter
215
- } from "./chunk-BQCFXAMN.js";
216
+ } from "./chunk-MPHDVHIB.js";
216
217
  import {
217
218
  PolicyRuntimeManager
218
219
  } from "./chunk-33JBK2XP.js";
@@ -257,7 +258,7 @@ import {
257
258
  materializeAfterSemanticConsolidation,
258
259
  parseConsolidationResponse,
259
260
  parseOperatorAwareConsolidationResponse
260
- } from "./chunk-NXL5CVE7.js";
261
+ } from "./chunk-2Y6LMOQQ.js";
261
262
  import {
262
263
  buildRecallQueryPolicy
263
264
  } from "./chunk-LBJBNWS2.js";
@@ -309,14 +310,14 @@ import {
309
310
  } from "./chunk-FF4KLI5W.js";
310
311
  import {
311
312
  buildXraySnapshot
312
- } from "./chunk-OWOKOFXK.js";
313
+ } from "./chunk-AJOIM6UR.js";
313
314
  import {
314
315
  NamespaceSearchRouter
315
- } from "./chunk-K22IJO4R.js";
316
+ } from "./chunk-CTOQEZSN.js";
316
317
  import {
317
318
  createConversationIndexRuntime,
318
319
  createSearchBackend
319
- } from "./chunk-OMSTU233.js";
320
+ } from "./chunk-2KAYTPPT.js";
320
321
  import {
321
322
  NoopSearchBackend
322
323
  } from "./chunk-CYEPCZN5.js";
@@ -343,7 +344,7 @@ import {
343
344
  } from "./chunk-QDW3E4RD.js";
344
345
  import {
345
346
  shouldSkipImplicitExtraction
346
- } from "./chunk-HV57RHMD.js";
347
+ } from "./chunk-EH5ED3C6.js";
347
348
  import {
348
349
  searchCausalTrajectories
349
350
  } from "./chunk-YI7RZO7Y.js";
@@ -356,7 +357,7 @@ import {
356
357
  } from "./chunk-TBBDFYXW.js";
357
358
  import {
358
359
  buildChainFollowupGenerator
359
- } from "./chunk-35YJ6KCV.js";
360
+ } from "./chunk-JEIROMLX.js";
360
361
  import {
361
362
  ContentHashIndex,
362
363
  StorageManager,
@@ -364,7 +365,10 @@ import {
364
365
  fingerprintEntityStructuredFacts,
365
366
  normalizeAttributePairs,
366
367
  parseEntityFile
367
- } from "./chunk-JSDZMOT7.js";
368
+ } from "./chunk-OC56UWV5.js";
369
+ import {
370
+ buildRetiredFactTombstoneInputs
371
+ } from "./chunk-3JJWNZTT.js";
368
372
  import {
369
373
  isValidTranscriptDate,
370
374
  loadSpeakerRegistry,
@@ -372,9 +376,6 @@ import {
372
376
  saveSpeakerRegistry,
373
377
  speakerRegistryKey
374
378
  } from "./chunk-M7XQSUBB.js";
375
- import {
376
- buildRetiredFactTombstoneInputs
377
- } from "./chunk-3JJWNZTT.js";
378
379
  import {
379
380
  assertPathInsideRoot
380
381
  } from "./chunk-5GPPACXK.js";
@@ -388,17 +389,17 @@ import {
388
389
  isValidAsOf,
389
390
  isValidityExpiredNow
390
391
  } from "./chunk-6CIAGZ6X.js";
391
- import {
392
- stripAttributesSuffix
393
- } from "./chunk-SVOZFLIQ.js";
394
392
  import {
395
393
  attachCitation,
396
394
  hasCitationForTemplate,
397
395
  stripCitationForTemplate
398
396
  } from "./chunk-J6A3CX5N.js";
397
+ import {
398
+ stripAttributesSuffix
399
+ } from "./chunk-SVOZFLIQ.js";
399
400
  import {
400
401
  confidenceTier
401
- } from "./chunk-BOGENF7P.js";
402
+ } from "./chunk-MSVSP5VO.js";
402
403
  import {
403
404
  inferMemoryStatus,
404
405
  isActiveMemoryStatus
@@ -451,10 +452,17 @@ import {
451
452
  } from "./chunk-U3PN77QT.js";
452
453
  import {
453
454
  sanitizeMemoryContent
454
- } from "./chunk-FVQJYWH7.js";
455
+ } from "./chunk-5GKPFL3S.js";
455
456
  import {
456
457
  log
457
458
  } from "./chunk-NU3CSQ4H.js";
459
+ import {
460
+ MEMORY_ID_PATTERN,
461
+ buildHandleIndexForResults,
462
+ parseIdOrHandle,
463
+ resolveHandle,
464
+ stripHandles
465
+ } from "./chunk-JAKIDQB2.js";
458
466
  import {
459
467
  abortError,
460
468
  isAbortError,
@@ -2292,7 +2300,10 @@ function resolveRecentThreadMemoryPaths(options) {
2292
2300
  if (options.threadEpisodeIds.length === 0 || maxRecent === 0) return [];
2293
2301
  const pathById = options.pathById ?? buildMemoryPathById(options.allMemsForGraph, options.storageDir);
2294
2302
  if (pathById.size === 0) return [];
2295
- return options.threadEpisodeIds.filter((id) => id !== options.currentMemoryId).slice(-maxRecent).map((id) => pathById.get(id)).filter((p) => typeof p === "string" && p.length > 0);
2303
+ const pendingReviewIds = new Set(
2304
+ (options.allMemsForGraph ?? []).filter((m) => m.frontmatter.status === "pending_review" && m.frontmatter.id).map((m) => m.frontmatter.id)
2305
+ );
2306
+ return options.threadEpisodeIds.filter((id) => id !== options.currentMemoryId).filter((id) => !pendingReviewIds.has(id)).slice(-maxRecent).map((id) => pathById.get(id)).filter((p) => typeof p === "string" && p.length > 0);
2296
2307
  }
2297
2308
  function buildMemoryPathById(allMemsForGraph, storageDir) {
2298
2309
  const pathById = /* @__PURE__ */ new Map();
@@ -2385,6 +2396,11 @@ var Orchestrator = class _Orchestrator {
2385
2396
  * callers already destructure `persistedIds` by position.
2386
2397
  */
2387
2398
  lastPersistExtractionDeferredCount = 0;
2399
+ /**
2400
+ * Side-channel (#1635): pending_review persisted ids from the last
2401
+ * persistExtraction; runExtraction excludes them from the thread episode set.
2402
+ */
2403
+ lastPersistExtractionPendingReviewIds = [];
2388
2404
  _fastGatewayLlm;
2389
2405
  get fastGatewayLlm() {
2390
2406
  return this._fastGatewayLlm;
@@ -2406,6 +2422,7 @@ var Orchestrator = class _Orchestrator {
2406
2422
  relevance;
2407
2423
  negatives;
2408
2424
  lastRecall;
2425
+ handleHistory;
2409
2426
  tierMigrationStatus;
2410
2427
  /**
2411
2428
  * In-memory X-ray snapshot from the most recent `recall()` call that
@@ -3129,6 +3146,9 @@ var Orchestrator = class _Orchestrator {
3129
3146
  this.relevance = new RelevanceStore(config.memoryDir);
3130
3147
  this.negatives = new NegativeExampleStore(config.memoryDir);
3131
3148
  this.lastRecall = new LastRecallStore(config.memoryDir);
3149
+ this.handleHistory = new RecallHandleHistoryStore(config.memoryDir, {
3150
+ maxDepth: config.recallHandleSnapshotDepth
3151
+ });
3132
3152
  this.tierMigrationStatus = new TierMigrationStatusStore(config.memoryDir);
3133
3153
  this.sessionObserver = new SessionObserverState({
3134
3154
  memoryDir: config.memoryDir,
@@ -3442,6 +3462,7 @@ var Orchestrator = class _Orchestrator {
3442
3462
  await this.relevance.load();
3443
3463
  await this.negatives.load();
3444
3464
  await this.lastRecall.load();
3465
+ await this.handleHistory.load();
3445
3466
  await this.tierMigrationStatus.load();
3446
3467
  await this.sessionObserver.load();
3447
3468
  this.runtimePolicyValues = await this.policyRuntime.loadRuntimeValues();
@@ -9328,7 +9349,7 @@ ${tmtNode.summary}`
9328
9349
  this.appendRecallSection(
9329
9350
  sectionBuckets,
9330
9351
  "workspace-context",
9331
- this.formatQmdResults("Workspace Context", globalResults)
9352
+ this.formatQmdResults("Workspace Context", globalResults, sessionKey)
9332
9353
  );
9333
9354
  }
9334
9355
  recordRecallSectionMetric({
@@ -9942,6 +9963,14 @@ _Context: ${topQuestion.context}_`
9942
9963
  // reviews on #1544).
9943
9964
  backendDegradations: backendDegradations.length > 0 ? backendDegradations : void 0
9944
9965
  }).catch((err) => log.debug(`last recall record failed: ${err}`));
9966
+ if (this.config.recallMemoryHandles && recalledMemoryIds.length > 0) {
9967
+ const handleEligibleIds = recalledMemoryIds.filter(
9968
+ (id) => MEMORY_ID_PATTERN.test(id)
9969
+ );
9970
+ if (handleEligibleIds.length > 0) {
9971
+ this.handleHistory.record(sessionKey, handleEligibleIds).catch((err) => log.debug(`handle history record failed: ${err}`));
9972
+ }
9973
+ }
9945
9974
  }
9946
9975
  if (sessionKey) {
9947
9976
  this.queueEvalShadowRecall({
@@ -10012,9 +10041,10 @@ _Context: ${topQuestion.context}_`
10012
10041
  }
10013
10042
  const bufferKey = typeof options.bufferKey === "string" && options.bufferKey.length > 0 ? options.bufferKey : typeof sessionKey === "string" && sessionKey.length > 0 ? sessionKey : "default";
10014
10043
  const captureTimestamp = (/* @__PURE__ */ new Date()).toISOString();
10044
+ const bufferedContent = this.config.recallMemoryHandles ? stripHandles(content) : content;
10015
10045
  const turn = {
10016
10046
  role,
10017
- content,
10047
+ content: bufferedContent,
10018
10048
  timestamp: captureTimestamp,
10019
10049
  // #1578: anchor live-capture turns to wall-clock when bi-temporal is on;
10020
10050
  // replay/import turns carry sourceValidAt explicitly (codex P1).
@@ -10895,17 +10925,10 @@ ${normalized}`).digest("hex");
10895
10925
  );
10896
10926
  }
10897
10927
  if (this.config.threadingEnabled && threadIdForExtraction && persistedIds.length > 0) {
10898
- try {
10899
- await this.threading.appendEpisodeIds(
10900
- threadIdForExtraction,
10901
- persistedIds
10902
- );
10903
- } catch (err) {
10904
- log.warn(
10905
- "[threading] appendEpisodeIds failed after persistence (non-fatal)",
10906
- err
10907
- );
10908
- }
10928
+ await this.appendPersistedThreadEpisodes(
10929
+ threadIdForExtraction,
10930
+ persistedIds
10931
+ );
10909
10932
  }
10910
10933
  if (this.config.threadingEnabled && threadIdForExtraction) {
10911
10934
  const conversationContent = turns.map((t) => t.content).join(" ");
@@ -11171,13 +11194,17 @@ ${normalized}`).digest("hex");
11171
11194
  };
11172
11195
  return attachCitation(content, citationContext, citationTemplate);
11173
11196
  };
11174
- const supersessionOrderingAt = (validAt) => validAt && validAt.length > 0 ? validAt : (/* @__PURE__ */ new Date()).toISOString();
11175
11197
  const persistedIds = [];
11198
+ const supersessionOrderingAt = (validAt) => validAt && validAt.length > 0 ? validAt : (/* @__PURE__ */ new Date()).toISOString();
11199
+ const pendingReviewPersistedIds = [];
11176
11200
  const persistedIdsByStorage = /* @__PURE__ */ new Map();
11177
11201
  const trackPersistedId = (targetStorage, id, options = {}) => {
11178
11202
  if (options.includeReturnedIds !== false) {
11179
11203
  persistedIds.push(id);
11180
11204
  }
11205
+ if (options.pendingReview) {
11206
+ pendingReviewPersistedIds.push(id);
11207
+ }
11181
11208
  const key = targetStorage.dir;
11182
11209
  const existing = persistedIdsByStorage.get(key);
11183
11210
  if (existing) {
@@ -12010,7 +12037,9 @@ ${normalized}`).digest("hex");
12010
12037
  log.debug(
12011
12038
  `chunked memory ${parentId} into ${chunkResult.chunks.length} chunks`
12012
12039
  );
12013
- trackPersistedId(targetStorage, parentId);
12040
+ trackPersistedId(targetStorage, parentId, {
12041
+ pendingReview: faithfulnessEnforceStatus === "pending_review"
12042
+ });
12014
12043
  if (faithfulnessEnforceStatus !== "pending_review" && threadEpisodeIdsForGraph && !threadEpisodeIdsForGraph.includes(parentId)) {
12015
12044
  threadEpisodeIdsForGraph.push(parentId);
12016
12045
  }
@@ -12208,7 +12237,9 @@ ${normalized}`).digest("hex");
12208
12237
  source: "extraction"
12209
12238
  })
12210
12239
  );
12211
- trackPersistedId(targetStorage, memoryId);
12240
+ trackPersistedId(targetStorage, memoryId, {
12241
+ pendingReview: faithfulnessEnforceStatus === "pending_review"
12242
+ });
12212
12243
  if (faithfulnessEnforceStatus !== "pending_review" && threadEpisodeIdsForGraph && !threadEpisodeIdsForGraph.includes(memoryId)) {
12213
12244
  threadEpisodeIdsForGraph.push(memoryId);
12214
12245
  }
@@ -12419,8 +12450,27 @@ ${normalized}`).digest("hex");
12419
12450
  })().catch(
12420
12451
  (err) => log.debug(`temporal-index update error (non-fatal): ${err}`)
12421
12452
  );
12453
+ this.lastPersistExtractionPendingReviewIds = pendingReviewPersistedIds;
12422
12454
  return persistedIds;
12423
12455
  }
12456
+ /**
12457
+ * Append persisted ids to the thread episode set, excluding pending_review
12458
+ * fact ids (#1635) so they don't re-seed predecessor edges. Fail-open like
12459
+ * the raw appendEpisodeIds call it replaces.
12460
+ */
12461
+ async appendPersistedThreadEpisodes(threadId, persistedIds) {
12462
+ const pendingReviewIds = this.lastPersistExtractionPendingReviewIds ?? [];
12463
+ const episodeIds = pendingReviewIds.length > 0 ? persistedIds.filter((id) => !pendingReviewIds.includes(id)) : persistedIds;
12464
+ if (episodeIds.length === 0) return;
12465
+ try {
12466
+ await this.threading.appendEpisodeIds(threadId, episodeIds);
12467
+ } catch (err) {
12468
+ log.warn(
12469
+ "[threading] appendEpisodeIds failed after persistence (non-fatal)",
12470
+ err
12471
+ );
12472
+ }
12473
+ }
12424
12474
  async indexPersistedMemory(storage, memoryId) {
12425
12475
  if (!this.config.embeddingFallbackEnabled) return;
12426
12476
  if (!await this.embeddingFallback.isAvailable()) return;
@@ -13506,12 +13556,18 @@ ${reflectionsContent.trim()}
13506
13556
  );
13507
13557
  }
13508
13558
  }
13509
- formatQmdResults(title, results) {
13559
+ formatQmdResults(title, results, sessionKey) {
13560
+ const handleByIndex = buildHandleIndexForResults(
13561
+ results,
13562
+ this.config.recallMemoryHandles === true && sessionKey != null
13563
+ );
13510
13564
  const lines = results.map((r, i) => {
13511
13565
  const snippet = r.snippet ? r.snippet.slice(0, 500).replace(/\n/g, " ") : "(no preview)";
13512
13566
  const source = typeof r.line === "number" ? `${r.path}:${r.line}` : r.path;
13513
- return `[${i + 1}] ${source} (score: ${r.score.toFixed(3)})
13567
+ const head = `[${i + 1}] ${source} (score: ${r.score.toFixed(3)})
13514
13568
  ${snippet}`;
13569
+ const handle = handleByIndex.get(i);
13570
+ return handle ? `${head.replace(/\s+$/, "")} ${handle}` : head;
13515
13571
  });
13516
13572
  return `## ${title}
13517
13573
 
@@ -13808,7 +13864,7 @@ ${lines.join("\n\n")}`;
13808
13864
  this.appendRecallSection(
13809
13865
  options.sectionBuckets,
13810
13866
  sectionId,
13811
- this.formatQmdResults(options.title, options.results)
13867
+ this.formatQmdResults(options.title, options.results, options.sessionKey)
13812
13868
  );
13813
13869
  }
13814
13870
  /**
@@ -15080,6 +15136,49 @@ ${lines.join("\n\n")}`;
15080
15136
  getLastRecall(sessionKey) {
15081
15137
  return this.lastRecall.get(sessionKey);
15082
15138
  }
15139
+ /**
15140
+ * Issue #1582 — resolve a memory handle (`[m:4f2a]` / bare hex) to its memory
15141
+ * id against THIS session's recent recall history. Returns the id on a unique
15142
+ * hit, `null` on a miss, and throws on ambiguity (callers must disambiguate —
15143
+ * rule 34/51). Resolution is per-session and snapshot-scoped; there is no
15144
+ * global handle→id map (rule 42).
15145
+ */
15146
+ resolveMemoryHandle(handle, sessionKey) {
15147
+ if (!sessionKey) return null;
15148
+ const depth = this.config.recallHandleSnapshotDepth;
15149
+ const snapshots = this.handleHistory.recent(sessionKey, depth).map((ids) => ({ memoryIds: ids }));
15150
+ const result = resolveHandle(handle, snapshots, depth);
15151
+ if (result.ok) return result.memoryId;
15152
+ if (result.reason === "ambiguous") {
15153
+ throw new Error(
15154
+ `Memory handle ${handle} is ambiguous in session ${sessionKey}: ${result.candidates.join(", ")}. Cite a unique memory id instead.`
15155
+ );
15156
+ }
15157
+ return null;
15158
+ }
15159
+ /**
15160
+ * Issue #1582 — resolve a caller reference that may be EITHER a memory id or
15161
+ * a handle to a concrete memory id. Handles resolve against the session's
15162
+ * recall history; raw ids pass through unchanged. The single shared helper
15163
+ * every surface (memory_get / feedback / outcome / correction targetIds)
15164
+ * calls so handle resolution has one path (rule 22).
15165
+ */
15166
+ resolveMemoryIdOrHandle(ref, sessionKey) {
15167
+ const parsed = parseIdOrHandle(ref);
15168
+ if (!parsed.isHandle) return parsed.value;
15169
+ if (!sessionKey) {
15170
+ throw new Error(
15171
+ `Memory handle ${ref} cannot be resolved without a session key.`
15172
+ );
15173
+ }
15174
+ const resolved = this.resolveMemoryHandle(parsed.value, sessionKey);
15175
+ if (resolved === null) {
15176
+ throw new Error(
15177
+ `Memory handle ${ref} was not found in the recent recall history for session ${sessionKey}.`
15178
+ );
15179
+ }
15180
+ return resolved;
15181
+ }
15083
15182
  /**
15084
15183
  * Check if a new memory contradicts an existing one.
15085
15184
  * Uses QMD to find similar memories, then LLM to verify contradiction.
@@ -15338,4 +15437,4 @@ export {
15338
15437
  resolvePersistedMemoryRelativePath,
15339
15438
  Orchestrator
15340
15439
  };
15341
- //# sourceMappingURL=chunk-GKPIY7EQ.js.map
15440
+ //# sourceMappingURL=chunk-YUJL27ET.js.map