@remnic/core 9.62.0 → 9.62.2

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 (512) hide show
  1. package/dist/access-admin-ops-surface.d.ts +11 -11
  2. package/dist/access-admin-ops-surface.js +28 -28
  3. package/dist/access-audit.js +2 -2
  4. package/dist/access-authorization-probe.d.ts +11 -11
  5. package/dist/access-authorization-probe.js +29 -29
  6. package/dist/access-boundary.d.ts +11 -11
  7. package/dist/access-boundary.js +28 -28
  8. package/dist/access-cli.js +93 -91
  9. package/dist/access-cli.js.map +1 -1
  10. package/dist/access-coding-context-resolution.d.ts +1 -1
  11. package/dist/access-extraction-force-flush.d.ts +11 -11
  12. package/dist/access-extraction-force-flush.js +28 -28
  13. package/dist/access-health-types.d.ts +1 -1
  14. package/dist/access-http-lcm-compaction.d.ts +11 -11
  15. package/dist/access-http-lifecycle-flush.d.ts +11 -11
  16. package/dist/access-http-offline-stream.d.ts +11 -11
  17. package/dist/access-http-query.js +28 -28
  18. package/dist/access-http.d.ts +12 -12
  19. package/dist/access-http.js +38 -38
  20. package/dist/access-identity-continuity-surface.d.ts +9 -9
  21. package/dist/access-identity-continuity-surface.js +28 -28
  22. package/dist/access-lcm-surface.d.ts +11 -11
  23. package/dist/access-lcm-surface.js +28 -28
  24. package/dist/access-mcp.d.ts +11 -11
  25. package/dist/access-mcp.js +33 -33
  26. package/dist/access-memory-search-fanout.d.ts +2 -2
  27. package/dist/{access-namespace-preflight-EMvicnrb.d.ts → access-namespace-preflight-yO4LMGFH.d.ts} +1 -1
  28. package/dist/access-namespace-preflight.d.ts +3 -3
  29. package/dist/access-namespace-preflight.js +28 -28
  30. package/dist/access-observe-write-surface.d.ts +11 -11
  31. package/dist/access-observe-write-surface.js +28 -28
  32. package/dist/access-offline-manifest.d.ts +9 -9
  33. package/dist/access-offline-manifest.js +2 -2
  34. package/dist/access-operations-batch.js +29 -29
  35. package/dist/access-operations.d.ts +11 -11
  36. package/dist/access-operations.js +32 -32
  37. package/dist/access-recall-concurrency.d.ts +11 -11
  38. package/dist/access-recall-concurrency.js +28 -28
  39. package/dist/access-recall-response.d.ts +11 -11
  40. package/dist/access-recall-response.js +28 -28
  41. package/dist/access-recall-surface.d.ts +11 -11
  42. package/dist/access-recall-surface.js +28 -28
  43. package/dist/{access-service-BeDYQQ62.d.ts → access-service-M4LgO141.d.ts} +7 -7
  44. package/dist/access-service-helpers.d.ts +11 -11
  45. package/dist/access-service.d.ts +11 -11
  46. package/dist/access-service.js +28 -28
  47. package/dist/access-surface-catalog.d.ts +11 -11
  48. package/dist/access-surface-catalog.js +30 -30
  49. package/dist/access-wearables-meetings-surface.d.ts +3 -3
  50. package/dist/action-confidence.d.ts +1 -1
  51. package/dist/active-memory-bridge.d.ts +1 -1
  52. package/dist/active-memory-bridge.js +2 -2
  53. package/dist/active-recall.d.ts +1 -1
  54. package/dist/active-recall.js +3 -3
  55. package/dist/ambient-provenance.d.ts +1 -1
  56. package/dist/artifact-search.d.ts +1 -1
  57. package/dist/{auto-sync-FMWQQB3J.js → auto-sync-Z52VWMNC.js} +3 -3
  58. package/dist/behavior-learner.d.ts +1 -1
  59. package/dist/behavior-learner.js +2 -2
  60. package/dist/behavior-signals.d.ts +1 -1
  61. package/dist/bootstrap.d.ts +9 -9
  62. package/dist/briefing-window.d.ts +2 -2
  63. package/dist/briefing.d.ts +2 -2
  64. package/dist/briefing.js +13 -12
  65. package/dist/buffer-surprise-report.d.ts +1 -1
  66. package/dist/buffer-turn-helpers.d.ts +1 -1
  67. package/dist/buffer.d.ts +2 -2
  68. package/dist/bulk-import/index.d.ts +3 -3
  69. package/dist/calibration.d.ts +1 -1
  70. package/dist/capabilities.d.ts +1 -1
  71. package/dist/{catalog-B2SxZ6LU.d.ts → catalog-CyYTf_ok.d.ts} +1 -1
  72. package/dist/causal-behavior.d.ts +1 -1
  73. package/dist/causal-behavior.js +3 -3
  74. package/dist/causal-chain.js +3 -3
  75. package/dist/causal-consolidation.d.ts +1 -1
  76. package/dist/causal-consolidation.js +16 -16
  77. package/dist/causal-retrieval.js +3 -3
  78. package/dist/causal-trajectory-graph.d.ts +1 -1
  79. package/dist/causal-trajectory.js +2 -2
  80. package/dist/{chunk-B2QHVLJO.js → chunk-256FBCVX.js} +22 -10
  81. package/dist/chunk-256FBCVX.js.map +1 -0
  82. package/dist/{chunk-QP2IZTUR.js → chunk-2TYIAKU5.js} +2 -2
  83. package/dist/{chunk-HQBVQICL.js → chunk-347ZR6D4.js} +2 -2
  84. package/dist/{chunk-76YNCJ5H.js → chunk-3F3CVVDS.js} +2 -2
  85. package/dist/{chunk-TE4MKFT2.js → chunk-3MA7JVXN.js} +4 -4
  86. package/dist/{chunk-KHQ57QLJ.js → chunk-46WM6JX2.js} +7 -3
  87. package/dist/chunk-46WM6JX2.js.map +1 -0
  88. package/dist/chunk-47DU4SGJ.js +92 -0
  89. package/dist/chunk-47DU4SGJ.js.map +1 -0
  90. package/dist/{chunk-AWRJBAIH.js → chunk-4FFROSFG.js} +37 -14
  91. package/dist/{chunk-AWRJBAIH.js.map → chunk-4FFROSFG.js.map} +1 -1
  92. package/dist/{chunk-N4OYPGZS.js → chunk-4HO3542O.js} +2 -2
  93. package/dist/{chunk-HEEEMJ26.js → chunk-4IZ2IT7D.js} +3 -3
  94. package/dist/{chunk-4XAVQLBR.js → chunk-4Y2RHVCV.js} +2 -2
  95. package/dist/{chunk-33JBK2XP.js → chunk-5F6HMNMZ.js} +2 -2
  96. package/dist/{chunk-5WQMORU5.js → chunk-5PFGMO33.js} +2 -2
  97. package/dist/{chunk-6HEM6HTQ.js → chunk-6GGTATZF.js} +2 -2
  98. package/dist/{chunk-W3Y6FYRK.js → chunk-7BJYTX6Q.js} +2 -2
  99. package/dist/{chunk-2GRLJMKJ.js → chunk-7DRSWPUV.js} +3 -3
  100. package/dist/{chunk-TVVEYCNW.js → chunk-7K5Q6COX.js} +4 -4
  101. package/dist/{chunk-HXXGZ4KV.js → chunk-ALNZEWGN.js} +2 -2
  102. package/dist/{chunk-5WVUO6QT.js → chunk-AR253JBM.js} +1 -1
  103. package/dist/chunk-AR253JBM.js.map +1 -0
  104. package/dist/{chunk-S3B3UIQ3.js → chunk-AYIHDC5S.js} +2 -2
  105. package/dist/{chunk-2RIDW23Y.js → chunk-BBHFAVMP.js} +8 -8
  106. package/dist/{chunk-MJ4UGUR6.js → chunk-BHO6RHE5.js} +3 -3
  107. package/dist/{chunk-URN7XWGC.js → chunk-BP6WMYLP.js} +3 -3
  108. package/dist/{chunk-YUIBXMZY.js → chunk-CALURYWR.js} +284 -249
  109. package/dist/chunk-CALURYWR.js.map +1 -0
  110. package/dist/{chunk-D5HDJWNN.js → chunk-CH627RRV.js} +4 -4
  111. package/dist/{chunk-C3R732UY.js → chunk-CLJ5QS6J.js} +257 -60
  112. package/dist/chunk-CLJ5QS6J.js.map +1 -0
  113. package/dist/{chunk-YLHM5BQQ.js → chunk-DCUMFQYM.js} +171 -8
  114. package/dist/chunk-DCUMFQYM.js.map +1 -0
  115. package/dist/{chunk-ZBJMUXZH.js → chunk-DJ7HMNSL.js} +15 -8
  116. package/dist/chunk-DJ7HMNSL.js.map +1 -0
  117. package/dist/{chunk-XDK6ZFLL.js → chunk-DROAPP6N.js} +3 -3
  118. package/dist/{chunk-MU3TPZOV.js → chunk-DTLF2SLZ.js} +2 -2
  119. package/dist/{chunk-I67HKRBF.js → chunk-EFWHCTYJ.js} +2 -2
  120. package/dist/{chunk-XD4VGLDL.js → chunk-FF6E6HOT.js} +56 -52
  121. package/dist/chunk-FF6E6HOT.js.map +1 -0
  122. package/dist/{chunk-NP7FLVZW.js → chunk-G2FCSILA.js} +2 -2
  123. package/dist/{chunk-3GPBFDXH.js → chunk-H23GIXJC.js} +2 -2
  124. package/dist/{chunk-WT6UL3UA.js → chunk-H7PRHUBD.js} +2 -2
  125. package/dist/{chunk-4JGSG7QN.js → chunk-HSBQJRV2.js} +2 -2
  126. package/dist/{chunk-L33N3BCA.js → chunk-HVKMJAEF.js} +2 -2
  127. package/dist/{chunk-CSOYVTRX.js → chunk-IIPJKCZB.js} +3 -3
  128. package/dist/{chunk-E57E5SCS.js → chunk-IRLH4NM2.js} +3 -3
  129. package/dist/{chunk-H32ANIFP.js → chunk-IZRNVNPV.js} +2 -2
  130. package/dist/{chunk-XBR5BAKW.js → chunk-JCJGYNIS.js} +3 -3
  131. package/dist/{chunk-EIQFIJDM.js → chunk-JDI7G6EA.js} +2 -2
  132. package/dist/{chunk-QWPAQLYV.js → chunk-JFLKSD5V.js} +2 -2
  133. package/dist/{chunk-KQS72GCR.js → chunk-LJOIZPJH.js} +2 -2
  134. package/dist/{chunk-N4EPIKSY.js → chunk-LLGDVG52.js} +3 -3
  135. package/dist/{chunk-7N7DB4L5.js → chunk-LTJTP5YQ.js} +10 -9
  136. package/dist/chunk-LTJTP5YQ.js.map +1 -0
  137. package/dist/{chunk-VOELBUS4.js → chunk-NXH34IPL.js} +2 -2
  138. package/dist/{chunk-XL3TATMJ.js → chunk-OQIRBGUU.js} +21 -12
  139. package/dist/chunk-OQIRBGUU.js.map +1 -0
  140. package/dist/chunk-PJKTFXE2.js +119 -0
  141. package/dist/chunk-PJKTFXE2.js.map +1 -0
  142. package/dist/{chunk-JGW2EUCQ.js → chunk-PMRUMGK6.js} +2 -2
  143. package/dist/{chunk-KAB7TZN3.js → chunk-PSNN25DW.js} +2 -2
  144. package/dist/{chunk-LRGSLV7M.js → chunk-PYHOAXTI.js} +4 -4
  145. package/dist/{chunk-PA5OPZX2.js → chunk-QCI73Z7C.js} +2 -2
  146. package/dist/{chunk-EHMMRZOZ.js → chunk-QICOU4RY.js} +2 -2
  147. package/dist/{chunk-FW73HN33.js → chunk-RFH7U5LT.js} +2 -2
  148. package/dist/{chunk-4SGDYYWV.js → chunk-RPKJHYVE.js} +2 -2
  149. package/dist/{chunk-DSA47WBN.js → chunk-RYST72N5.js} +13 -2
  150. package/dist/chunk-RYST72N5.js.map +1 -0
  151. package/dist/{chunk-L4DLLKPN.js → chunk-SZ4HFZKB.js} +2 -2
  152. package/dist/chunk-T3GIETKV.js +152 -0
  153. package/dist/chunk-T3GIETKV.js.map +1 -0
  154. package/dist/{chunk-MYZ4NA43.js → chunk-TGSMU3F2.js} +3 -3
  155. package/dist/{chunk-CM4SZZBN.js → chunk-TIRJV2LW.js} +2 -2
  156. package/dist/{chunk-EGW4O32Z.js → chunk-UDTME32W.js} +7 -4
  157. package/dist/chunk-UDTME32W.js.map +1 -0
  158. package/dist/{chunk-CIA6ZUBA.js → chunk-WMOJIOIG.js} +2 -2
  159. package/dist/{chunk-W4Q54HM3.js → chunk-WR2YKUIW.js} +2 -2
  160. package/dist/{chunk-VWDTV6SH.js → chunk-X6E7TT3A.js} +2 -2
  161. package/dist/{chunk-D4OCJSLV.js → chunk-YDPAE2RD.js} +2 -2
  162. package/dist/{chunk-G3YBWFUC.js → chunk-YIIC5IDU.js} +35 -18
  163. package/dist/chunk-YIIC5IDU.js.map +1 -0
  164. package/dist/{chunk-QRKYABS6.js → chunk-YSR3DXGC.js} +2 -2
  165. package/dist/{chunk-LBJBNWS2.js → chunk-YTHQHH5U.js} +2 -2
  166. package/dist/{chunk-GN7HO2LA.js → chunk-ZPGHA7EO.js} +12 -12
  167. package/dist/{chunk-VUDALPI5.js → chunk-ZQKXRKMR.js} +19 -5
  168. package/dist/chunk-ZQKXRKMR.js.map +1 -0
  169. package/dist/{chunk-FQSDU634.js → chunk-ZS4JADYY.js} +3 -3
  170. package/dist/{cli-DB_uakTc.d.ts → cli-Bw9z-KqX.d.ts} +5 -5
  171. package/dist/cli.d.ts +13 -13
  172. package/dist/cli.js +62 -62
  173. package/dist/coding/pre-action-gate.d.ts +1 -1
  174. package/dist/coding/pre-action-gate.js +3 -3
  175. package/dist/compounding/engine.d.ts +2 -2
  176. package/dist/compounding/engine.js +13 -12
  177. package/dist/compounding/preference-consolidator.d.ts +1 -1
  178. package/dist/compression-optimizer.d.ts +1 -1
  179. package/dist/config.d.ts +1 -1
  180. package/dist/config.js +3 -3
  181. package/dist/connectors/codex-materialize-runner.d.ts +1 -1
  182. package/dist/connectors/codex-materialize-runner.js +13 -12
  183. package/dist/connectors/codex-materialize.d.ts +1 -1
  184. package/dist/connectors/index.d.ts +1 -1
  185. package/dist/connectors/index.js +13 -12
  186. package/dist/consolidation-provenance-check.d.ts +2 -2
  187. package/dist/consolidation-undo.d.ts +2 -2
  188. package/dist/contradiction/index.d.ts +2 -2
  189. package/dist/converge-config.d.ts +1 -1
  190. package/dist/convergence-refresh.d.ts +2 -2
  191. package/dist/convergence-refresh.js +15 -14
  192. package/dist/conversation-index/backend.d.ts +1 -1
  193. package/dist/conversation-index/chunker.d.ts +1 -1
  194. package/dist/conversation-index/faiss-adapter.d.ts +1 -1
  195. package/dist/conversation-index/indexer.d.ts +1 -1
  196. package/dist/conversation-index/search.d.ts +1 -1
  197. package/dist/corpus-watermark.d.ts +1 -1
  198. package/dist/corpus-watermark.js +15 -14
  199. package/dist/day-summary.d.ts +1 -1
  200. package/dist/delinearize.d.ts +1 -1
  201. package/dist/dependency-propagation-config.d.ts +1 -1
  202. package/dist/{dependency-propagation-delivery-DcOVpK3y.d.ts → dependency-propagation-delivery-BxhvAppj.d.ts} +1 -1
  203. package/dist/direct-answer-wiring.d.ts +1 -1
  204. package/dist/direct-answer-wiring.js +3 -3
  205. package/dist/direct-answer.d.ts +1 -1
  206. package/dist/direct-answer.js +2 -2
  207. package/dist/embedding-fallback.d.ts +1 -1
  208. package/dist/enrichment/index.d.ts +1 -1
  209. package/dist/entity-origin-fields.d.ts +1 -1
  210. package/dist/entity-retrieval.d.ts +2 -2
  211. package/dist/entity-retrieval.js +13 -12
  212. package/dist/entity-schema.d.ts +1 -1
  213. package/dist/episodic-context.d.ts +92 -0
  214. package/dist/episodic-context.js +16 -0
  215. package/dist/episodic-context.js.map +1 -0
  216. package/dist/explicit-capture.d.ts +9 -9
  217. package/dist/external-wiki-access.d.ts +11 -11
  218. package/dist/external-wiki-access.js +29 -29
  219. package/dist/external-wiki-collection-registration.d.ts +1 -1
  220. package/dist/external-wiki-collection.d.ts +1 -1
  221. package/dist/external-wiki-mcp-tools.d.ts +11 -11
  222. package/dist/extraction-error-classification.d.ts +1 -1
  223. package/dist/extraction-faithfulness.d.ts +1 -1
  224. package/dist/extraction-judge-telemetry.d.ts +1 -1
  225. package/dist/extraction-judge-training.d.ts +1 -1
  226. package/dist/extraction-judge.d.ts +1 -1
  227. package/dist/extraction-liveness.d.ts +1 -1
  228. package/dist/extraction-normalization.d.ts +1 -1
  229. package/dist/extraction-normalization.js +2 -2
  230. package/dist/extraction-prompt.d.ts +1 -1
  231. package/dist/extraction-source-grounding-rules.d.ts +1 -1
  232. package/dist/extraction-source-grounding.d.ts +1 -1
  233. package/dist/extraction-source-grounding.js +3 -3
  234. package/dist/extraction.d.ts +1 -1
  235. package/dist/extraction.js +18 -18
  236. package/dist/fallback-llm.d.ts +1 -1
  237. package/dist/{forget-5TWK7CZT.js → forget-SZ2BXDGF.js} +2 -2
  238. package/dist/graph-dashboard-diff.d.ts +1 -1
  239. package/dist/graph-dashboard-key.d.ts +1 -1
  240. package/dist/graph-dashboard-parser.d.ts +1 -1
  241. package/dist/graph-edge-reinforcement.d.ts +1 -1
  242. package/dist/graph-path-reconstruction.d.ts +1 -1
  243. package/dist/graph-path-scoring.d.ts +1 -1
  244. package/dist/graph-snapshot.d.ts +1 -1
  245. package/dist/graph.d.ts +1 -1
  246. package/dist/harmonic-construction.js +2 -2
  247. package/dist/harmonic-retrieval.js +2 -2
  248. package/dist/importance.d.ts +1 -1
  249. package/dist/importers/index.d.ts +1 -1
  250. package/dist/in-flight-reads.d.ts +1 -1
  251. package/dist/index.d.ts +22 -21
  252. package/dist/index.js +118 -103
  253. package/dist/intent.d.ts +1 -1
  254. package/dist/lcm/engine.d.ts +8 -2
  255. package/dist/lcm/engine.js +4 -4
  256. package/dist/lcm/index.d.ts +1 -1
  257. package/dist/lcm/index.js +9 -9
  258. package/dist/lcm/tools.d.ts +1 -1
  259. package/dist/lifecycle.d.ts +1 -1
  260. package/dist/live-connectors-runner.d.ts +1 -1
  261. package/dist/local-llm.d.ts +1 -1
  262. package/dist/local-model-endpoint.d.ts +1 -1
  263. package/dist/maintenance/memory-governance.d.ts +1 -1
  264. package/dist/maintenance/memory-governance.js +13 -12
  265. package/dist/maintenance/rebuild-memory-lifecycle-ledger.d.ts +2 -2
  266. package/dist/maintenance/rebuild-memory-lifecycle-ledger.js +13 -12
  267. package/dist/maintenance/rebuild-memory-projection.d.ts +2 -2
  268. package/dist/maintenance/rebuild-memory-projection.js +14 -13
  269. package/dist/{maintenance-5c1olVtB.d.ts → maintenance-uJb74j64.d.ts} +3 -3
  270. package/dist/mcp-memory-inspector-app.d.ts +11 -11
  271. package/dist/memory-action-policy.d.ts +1 -1
  272. package/dist/memory-cache.d.ts +1 -1
  273. package/dist/memory-lifecycle-ledger-utils.d.ts +1 -1
  274. package/dist/memory-projection-store.d.ts +1 -1
  275. package/dist/memory-provenance.d.ts +1 -1
  276. package/dist/memory-snapshot.d.ts +1 -1
  277. package/dist/memory-worth-outcomes.d.ts +2 -2
  278. package/dist/models-json.d.ts +1 -1
  279. package/dist/namespaces/migrate.d.ts +3 -3
  280. package/dist/namespaces/migrate.js +14 -13
  281. package/dist/namespaces/principal.d.ts +1 -1
  282. package/dist/namespaces/search.d.ts +1 -1
  283. package/dist/namespaces/search.js +6 -5
  284. package/dist/namespaces/storage.d.ts +3 -3
  285. package/dist/namespaces/storage.js +13 -12
  286. package/dist/native-knowledge.d.ts +1 -1
  287. package/dist/offline-sync-impression-drain.d.ts +1 -1
  288. package/dist/operator-doctor-corpus.d.ts +1 -1
  289. package/dist/operator-doctor-corpus.js +16 -15
  290. package/dist/operator-doctor-replica.d.ts +1 -1
  291. package/dist/operator-toolkit.d.ts +3 -3
  292. package/dist/operator-toolkit.js +21 -20
  293. package/dist/orchestration/compression-guideline-coordinator.d.ts +2 -2
  294. package/dist/orchestration/maintenance.d.ts +4 -4
  295. package/dist/orchestration/maintenance.js +18 -17
  296. package/dist/{orchestrator-HPuY6I4i.d.ts → orchestrator-CFi-5JSR.d.ts} +23 -8
  297. package/dist/orchestrator.d.ts +9 -9
  298. package/dist/orchestrator.js +93 -91
  299. package/dist/patterns-cli.d.ts +1 -1
  300. package/dist/{pipeline-CvVe1Q2_.d.ts → pipeline-BdF3ferY.d.ts} +1 -1
  301. package/dist/policy-runtime.d.ts +1 -1
  302. package/dist/policy-runtime.js +3 -3
  303. package/dist/proactive-contention.d.ts +1 -1
  304. package/dist/provenance.d.ts +1 -1
  305. package/dist/provenance.js +2 -2
  306. package/dist/{public-http-D0JKFkyf.d.ts → public-http-DK-QwaBu.d.ts} +1 -1
  307. package/dist/{qmd-Bd0Tp76_.d.ts → qmd-D_62bYNl.d.ts} +1 -1
  308. package/dist/qmd-preflight.d.ts +2 -2
  309. package/dist/qmd-recall-cache.d.ts +1 -1
  310. package/dist/qmd.d.ts +2 -2
  311. package/dist/recall-concurrency-config.d.ts +1 -1
  312. package/dist/recall-disclosure-escalation.d.ts +1 -1
  313. package/dist/recall-explain-renderer.d.ts +1 -1
  314. package/dist/recall-explain-renderer.js +3 -3
  315. package/dist/recall-memory-map.d.ts +1 -1
  316. package/dist/recall-planner-llm.d.ts +1 -1
  317. package/dist/recall-query-policy.js +2 -2
  318. package/dist/recall-state.d.ts +1 -1
  319. package/dist/recall-tag-filter.d.ts +1 -1
  320. package/dist/recall-timings.d.ts +1 -1
  321. package/dist/recall-tokenization.d.ts +3 -1
  322. package/dist/recall-tokenization.js +5 -1
  323. package/dist/recall-xray-cli.d.ts +1 -1
  324. package/dist/recall-xray-cli.js +4 -4
  325. package/dist/recall-xray-renderer.d.ts +1 -1
  326. package/dist/recall-xray-renderer.js +3 -3
  327. package/dist/recall-xray.d.ts +1 -1
  328. package/dist/recall-xray.js +2 -2
  329. package/dist/reconcile/cursor.d.ts +1 -1
  330. package/dist/reconcile/manifest.d.ts +10 -1
  331. package/dist/reconcile/manifest.js +1 -1
  332. package/dist/reconcile/plan.d.ts +1 -1
  333. package/dist/replay/normalizers/chatgpt.d.ts +1 -1
  334. package/dist/replay/normalizers/claude.d.ts +1 -1
  335. package/dist/replay/normalizers/openclaw.d.ts +1 -1
  336. package/dist/replay/normalizers/shared.d.ts +1 -1
  337. package/dist/replay/runner.d.ts +1 -1
  338. package/dist/replay/types.d.ts +1 -1
  339. package/dist/replica-divergence.d.ts +1 -1
  340. package/dist/replica-peers-config.d.ts +1 -1
  341. package/dist/resolve-auth-token.d.ts +1 -1
  342. package/dist/resume-bundles.js +6 -6
  343. package/dist/retrieval-agents.d.ts +2 -2
  344. package/dist/retrieval-tiers.d.ts +1 -1
  345. package/dist/routing/engine.d.ts +1 -1
  346. package/dist/routing/store.d.ts +1 -1
  347. package/dist/salvage-envelope.d.ts +1 -1
  348. package/dist/{scope-profiles-ClLtm9gK.d.ts → scope-profiles-CeMv7pP0.d.ts} +1 -1
  349. package/dist/search/embed-helper.d.ts +1 -1
  350. package/dist/search/factory.d.ts +1 -1
  351. package/dist/search/factory.js +5 -4
  352. package/dist/search/index.d.ts +1 -1
  353. package/dist/search/index.js +9 -8
  354. package/dist/search/lancedb-backend.d.ts +14 -1
  355. package/dist/search/lancedb-backend.js +1 -1
  356. package/dist/search/meilisearch-backend.d.ts +1 -1
  357. package/dist/search/noop-backend.d.ts +1 -1
  358. package/dist/search/orama-backend.d.ts +22 -1
  359. package/dist/search/orama-backend.js +2 -1
  360. package/dist/search/port.d.ts +1 -1
  361. package/dist/search/remote-backend.d.ts +1 -1
  362. package/dist/{semantic-consolidation-B1EkeEDj.d.ts → semantic-consolidation-B-85brYj.d.ts} +1 -1
  363. package/dist/semantic-consolidation.d.ts +2 -2
  364. package/dist/semantic-consolidation.js +14 -14
  365. package/dist/semantic-rule-promotion.js +13 -12
  366. package/dist/semantic-rule-verifier.d.ts +1 -1
  367. package/dist/semantic-rule-verifier.js +13 -13
  368. package/dist/{service-Cf3ANQj9.d.ts → service-CoO0HA2E.d.ts} +2 -2
  369. package/dist/session-observer-bands.d.ts +1 -1
  370. package/dist/session-observer-state.d.ts +1 -1
  371. package/dist/shared-context/manager.d.ts +1 -1
  372. package/dist/signal.d.ts +1 -1
  373. package/dist/source-agent-qualifier.d.ts +1 -1
  374. package/dist/source-agent-qualifier.js +15 -14
  375. package/dist/{storage-DS2O_6Qt.d.ts → storage-BVAVitkO.d.ts} +1 -1
  376. package/dist/storage.d.ts +2 -2
  377. package/dist/storage.js +12 -11
  378. package/dist/summarizer.d.ts +1 -1
  379. package/dist/summary-snapshot.d.ts +1 -1
  380. package/dist/support-passport/index.d.ts +14 -14
  381. package/dist/support-passport/index.js +31 -31
  382. package/dist/temporal-supersession.d.ts +2 -2
  383. package/dist/temporal-timeline-recall.d.ts +1 -1
  384. package/dist/temporal-validity.d.ts +1 -1
  385. package/dist/threading.d.ts +1 -1
  386. package/dist/tier-migration.d.ts +2 -2
  387. package/dist/tier-routing.d.ts +1 -1
  388. package/dist/topics.d.ts +1 -1
  389. package/dist/transcript.d.ts +1 -1
  390. package/dist/transfer/import-sqlite.js +2 -2
  391. package/dist/trust-score-stage.d.ts +1 -1
  392. package/dist/trust-score.d.ts +1 -1
  393. package/dist/trust-zones.js +2 -2
  394. package/dist/{types-BOANGhCJ.d.ts → types-DWHOxlZP.d.ts} +3 -0
  395. package/dist/types.d.ts +1 -1
  396. package/dist/types.js +1 -1
  397. package/dist/user-message-cleaning.d.ts +23 -0
  398. package/dist/user-message-cleaning.js +10 -0
  399. package/dist/user-message-cleaning.js.map +1 -0
  400. package/dist/utility-runtime.d.ts +1 -1
  401. package/dist/verified-recall.js +13 -13
  402. package/dist/whitespace.d.ts +26 -1
  403. package/dist/whitespace.js +11 -3
  404. package/dist/work-product-ledger.js +2 -2
  405. package/dist/write-envelope.d.ts +1 -1
  406. package/package.json +12 -2
  407. package/src/access-service-offline-file-content.test.ts +1 -0
  408. package/src/cli.ts +14 -13
  409. package/src/config.ts +11 -0
  410. package/src/entity-retrieval.ts +4 -7
  411. package/src/episodic-context-recall.integration.test.ts +169 -0
  412. package/src/episodic-context.test.ts +266 -0
  413. package/src/episodic-context.ts +274 -0
  414. package/src/harmonic-construction.test.ts +187 -2
  415. package/src/harmonic-retrieval.ts +54 -32
  416. package/src/index.ts +3 -4
  417. package/src/lcm/engine.ts +18 -1
  418. package/src/lifecycle/tombstones.test.ts +134 -0
  419. package/src/lifecycle/tombstones.ts +29 -2
  420. package/src/orchestration/episodic-context-section.ts +255 -0
  421. package/src/orchestration/recall-internal-deps.ts +2 -0
  422. package/src/orchestration/recall-internal.ts +40 -25
  423. package/src/orchestration/recall-result-formatter.ts +37 -0
  424. package/src/orchestration/recall-section-coordinator.ts +20 -14
  425. package/src/recall-tokenization.ts +14 -8
  426. package/src/reconcile/manifest.test.ts +133 -4
  427. package/src/reconcile/manifest.ts +43 -7
  428. package/src/search/factory.ts +1 -0
  429. package/src/search/lancedb-backend.ts +24 -16
  430. package/src/search/orama-backend.test.ts +208 -1
  431. package/src/search/orama-backend.ts +133 -18
  432. package/src/search/orama-cjk-tokenizer.test.ts +108 -0
  433. package/src/search/orama-cjk-tokenizer.ts +143 -0
  434. package/src/storage/tombstone-migration-sources.test.ts +116 -0
  435. package/src/storage/tombstone-migration-sources.ts +90 -0
  436. package/src/storage.ts +13 -34
  437. package/src/types.ts +3 -3
  438. package/src/user-message-cleaning.ts +139 -0
  439. package/src/whitespace.test.ts +178 -0
  440. package/src/whitespace.ts +119 -0
  441. package/dist/chunk-5WVUO6QT.js.map +0 -1
  442. package/dist/chunk-6MKAMLQL.js +0 -16
  443. package/dist/chunk-6MKAMLQL.js.map +0 -1
  444. package/dist/chunk-7N7DB4L5.js.map +0 -1
  445. package/dist/chunk-B2QHVLJO.js.map +0 -1
  446. package/dist/chunk-C3R732UY.js.map +0 -1
  447. package/dist/chunk-DSA47WBN.js.map +0 -1
  448. package/dist/chunk-EGW4O32Z.js.map +0 -1
  449. package/dist/chunk-G3YBWFUC.js.map +0 -1
  450. package/dist/chunk-KHQ57QLJ.js.map +0 -1
  451. package/dist/chunk-VUDALPI5.js.map +0 -1
  452. package/dist/chunk-XD4VGLDL.js.map +0 -1
  453. package/dist/chunk-XL3TATMJ.js.map +0 -1
  454. package/dist/chunk-YLHM5BQQ.js.map +0 -1
  455. package/dist/chunk-YUIBXMZY.js.map +0 -1
  456. package/dist/chunk-ZBJMUXZH.js.map +0 -1
  457. /package/dist/{auto-sync-FMWQQB3J.js.map → auto-sync-Z52VWMNC.js.map} +0 -0
  458. /package/dist/{chunk-QP2IZTUR.js.map → chunk-2TYIAKU5.js.map} +0 -0
  459. /package/dist/{chunk-HQBVQICL.js.map → chunk-347ZR6D4.js.map} +0 -0
  460. /package/dist/{chunk-76YNCJ5H.js.map → chunk-3F3CVVDS.js.map} +0 -0
  461. /package/dist/{chunk-TE4MKFT2.js.map → chunk-3MA7JVXN.js.map} +0 -0
  462. /package/dist/{chunk-N4OYPGZS.js.map → chunk-4HO3542O.js.map} +0 -0
  463. /package/dist/{chunk-HEEEMJ26.js.map → chunk-4IZ2IT7D.js.map} +0 -0
  464. /package/dist/{chunk-4XAVQLBR.js.map → chunk-4Y2RHVCV.js.map} +0 -0
  465. /package/dist/{chunk-33JBK2XP.js.map → chunk-5F6HMNMZ.js.map} +0 -0
  466. /package/dist/{chunk-5WQMORU5.js.map → chunk-5PFGMO33.js.map} +0 -0
  467. /package/dist/{chunk-6HEM6HTQ.js.map → chunk-6GGTATZF.js.map} +0 -0
  468. /package/dist/{chunk-W3Y6FYRK.js.map → chunk-7BJYTX6Q.js.map} +0 -0
  469. /package/dist/{chunk-2GRLJMKJ.js.map → chunk-7DRSWPUV.js.map} +0 -0
  470. /package/dist/{chunk-TVVEYCNW.js.map → chunk-7K5Q6COX.js.map} +0 -0
  471. /package/dist/{chunk-HXXGZ4KV.js.map → chunk-ALNZEWGN.js.map} +0 -0
  472. /package/dist/{chunk-S3B3UIQ3.js.map → chunk-AYIHDC5S.js.map} +0 -0
  473. /package/dist/{chunk-2RIDW23Y.js.map → chunk-BBHFAVMP.js.map} +0 -0
  474. /package/dist/{chunk-MJ4UGUR6.js.map → chunk-BHO6RHE5.js.map} +0 -0
  475. /package/dist/{chunk-URN7XWGC.js.map → chunk-BP6WMYLP.js.map} +0 -0
  476. /package/dist/{chunk-D5HDJWNN.js.map → chunk-CH627RRV.js.map} +0 -0
  477. /package/dist/{chunk-XDK6ZFLL.js.map → chunk-DROAPP6N.js.map} +0 -0
  478. /package/dist/{chunk-MU3TPZOV.js.map → chunk-DTLF2SLZ.js.map} +0 -0
  479. /package/dist/{chunk-I67HKRBF.js.map → chunk-EFWHCTYJ.js.map} +0 -0
  480. /package/dist/{chunk-NP7FLVZW.js.map → chunk-G2FCSILA.js.map} +0 -0
  481. /package/dist/{chunk-3GPBFDXH.js.map → chunk-H23GIXJC.js.map} +0 -0
  482. /package/dist/{chunk-WT6UL3UA.js.map → chunk-H7PRHUBD.js.map} +0 -0
  483. /package/dist/{chunk-4JGSG7QN.js.map → chunk-HSBQJRV2.js.map} +0 -0
  484. /package/dist/{chunk-L33N3BCA.js.map → chunk-HVKMJAEF.js.map} +0 -0
  485. /package/dist/{chunk-CSOYVTRX.js.map → chunk-IIPJKCZB.js.map} +0 -0
  486. /package/dist/{chunk-E57E5SCS.js.map → chunk-IRLH4NM2.js.map} +0 -0
  487. /package/dist/{chunk-H32ANIFP.js.map → chunk-IZRNVNPV.js.map} +0 -0
  488. /package/dist/{chunk-XBR5BAKW.js.map → chunk-JCJGYNIS.js.map} +0 -0
  489. /package/dist/{chunk-EIQFIJDM.js.map → chunk-JDI7G6EA.js.map} +0 -0
  490. /package/dist/{chunk-QWPAQLYV.js.map → chunk-JFLKSD5V.js.map} +0 -0
  491. /package/dist/{chunk-KQS72GCR.js.map → chunk-LJOIZPJH.js.map} +0 -0
  492. /package/dist/{chunk-N4EPIKSY.js.map → chunk-LLGDVG52.js.map} +0 -0
  493. /package/dist/{chunk-VOELBUS4.js.map → chunk-NXH34IPL.js.map} +0 -0
  494. /package/dist/{chunk-JGW2EUCQ.js.map → chunk-PMRUMGK6.js.map} +0 -0
  495. /package/dist/{chunk-KAB7TZN3.js.map → chunk-PSNN25DW.js.map} +0 -0
  496. /package/dist/{chunk-LRGSLV7M.js.map → chunk-PYHOAXTI.js.map} +0 -0
  497. /package/dist/{chunk-PA5OPZX2.js.map → chunk-QCI73Z7C.js.map} +0 -0
  498. /package/dist/{chunk-EHMMRZOZ.js.map → chunk-QICOU4RY.js.map} +0 -0
  499. /package/dist/{chunk-FW73HN33.js.map → chunk-RFH7U5LT.js.map} +0 -0
  500. /package/dist/{chunk-4SGDYYWV.js.map → chunk-RPKJHYVE.js.map} +0 -0
  501. /package/dist/{chunk-L4DLLKPN.js.map → chunk-SZ4HFZKB.js.map} +0 -0
  502. /package/dist/{chunk-MYZ4NA43.js.map → chunk-TGSMU3F2.js.map} +0 -0
  503. /package/dist/{chunk-CM4SZZBN.js.map → chunk-TIRJV2LW.js.map} +0 -0
  504. /package/dist/{chunk-CIA6ZUBA.js.map → chunk-WMOJIOIG.js.map} +0 -0
  505. /package/dist/{chunk-W4Q54HM3.js.map → chunk-WR2YKUIW.js.map} +0 -0
  506. /package/dist/{chunk-VWDTV6SH.js.map → chunk-X6E7TT3A.js.map} +0 -0
  507. /package/dist/{chunk-D4OCJSLV.js.map → chunk-YDPAE2RD.js.map} +0 -0
  508. /package/dist/{chunk-QRKYABS6.js.map → chunk-YSR3DXGC.js.map} +0 -0
  509. /package/dist/{chunk-LBJBNWS2.js.map → chunk-YTHQHH5U.js.map} +0 -0
  510. /package/dist/{chunk-GN7HO2LA.js.map → chunk-ZPGHA7EO.js.map} +0 -0
  511. /package/dist/{chunk-FQSDU634.js.map → chunk-ZS4JADYY.js.map} +0 -0
  512. /package/dist/{forget-5TWK7CZT.js.map → forget-SZ2BXDGF.js.map} +0 -0
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../src/harmonic-retrieval.ts"],"sourcesContent":["import path from \"node:path\";\nimport { listJsonFilesStrict, readJsonFile } from \"./json-store.js\";\nimport { throwIfAborted } from \"./abort-error.js\";\nimport { inferMemoryStatus, toMemoryPathRel } from \"./memory-lifecycle-ledger-utils.js\";\n import {\n HARMONIC_SOURCE_MEMORY_INSERTED_AT_KEY,\n resolveAbstractionNodeStoreDir,\n validateAbstractionNode,\n type AbstractionNode,\n } from \"./abstraction-nodes.js\";\nimport { resolveCueAnchorStoreDir, validateCueAnchor, type CueAnchor, type CueAnchorType } from \"./cue-anchors.js\";\nimport { compareDeterministicStrings } from \"./deterministic-order.js\";\nimport { countRecallTokenOverlap, normalizeRecallTokens } from \"./recall-tokenization.js\";\nimport { stripAttributesSuffix } from \"./structured-attributes.js\";\nimport { isValidityExpiredNow } from \"./temporal-validity.js\";\nimport { isRecord } from \"./store-contract.js\";\nimport type { MemoryFile } from \"./types.js\";\n\ntype SourceMemoryMap = Map<string, MemoryFile>;\n\nasync function readSourceMemories(options: {\n memoryDir: string;\n abortSignal?: AbortSignal;\n}): Promise<SourceMemoryMap> {\n const sourceMemories: SourceMemoryMap = new Map();\n try {\n const { StorageManager } = await import(\"./storage.js\");\n const storage = new StorageManager(options.memoryDir);\n const [hotMemories, coldMemories] = await Promise.all([\n storage.readAllMemories({ abortSignal: options.abortSignal }),\n storage.readAllColdMemories(),\n ]);\n for (const memory of [...hotMemories, ...coldMemories]) {\n throwIfAborted(options.abortSignal, \"harmonic retrieval aborted\");\n sourceMemories.set(memory.frontmatter.id, memory);\n }\n } catch {\n throwIfAborted(options.abortSignal, \"harmonic retrieval aborted\");\n // Source validation fails closed when the authorized memory directory is\n // unreadable. Source-less nodes remain eligible for retrieval.\n sourceMemories.clear();\n }\n return sourceMemories;\n}\n\nfunction parseSourceMemoryInsertedAt(node: AbstractionNode): Map<string, string> {\n const insertedAtById = new Map<string, string>();\n const insertedAtRaw = node.metadata?.[HARMONIC_SOURCE_MEMORY_INSERTED_AT_KEY];\n if (!insertedAtRaw) return insertedAtById;\n try {\n const parsed = JSON.parse(insertedAtRaw) as unknown;\n if (!isRecord(parsed)) return insertedAtById;\n for (const [memoryId, value] of Object.entries(parsed)) {\n if (typeof value === \"string\") insertedAtById.set(memoryId, value);\n }\n } catch {\n // Malformed insertion metadata leaves ordering on the recordedAt fallback.\n }\n return insertedAtById;\n}\n\nfunction projectSourceBackedNode(\n node: AbstractionNode,\n sourceMemories: SourceMemoryMap,\n memoryDir: string,\n temporalExpiredInInjection: boolean,\n nowMs: number\n): AbstractionNode | null {\n const sourceMemoryIds = node.sourceMemoryIds ?? [];\n if (sourceMemoryIds.length === 0) return node;\n\n const activeSourceMemoryIds = sourceMemoryIds.filter((memoryId) => {\n const memory = sourceMemories.get(memoryId);\n return (\n memory !== undefined &&\n inferMemoryStatus(memory.frontmatter, toMemoryPathRel(memoryDir, memory.path)) === \"active\" &&\n (temporalExpiredInInjection || !isValidityExpiredNow(memory.frontmatter, nowMs))\n );\n });\n if (activeSourceMemoryIds.length === 0) return null;\n\n // Newest-first source order keeps the projected title and summary on the most\n // recently inserted facts. Equal or missing timestamps fall back to ascending\n // id order, which matches the stored sourceMemoryIds order.\n const insertedAtById = parseSourceMemoryInsertedAt(node);\n const insertedAtMs = (memoryId: string): number => {\n const parsedMs = Date.parse(insertedAtById.get(memoryId) ?? \"\");\n return Number.isFinite(parsedMs) ? parsedMs : Date.parse(node.recordedAt);\n };\n activeSourceMemoryIds.sort(\n (left, right) =>\n insertedAtMs(right) - insertedAtMs(left) || compareDeterministicStrings(left, right)\n );\n\n const activeMemories = activeSourceMemoryIds.flatMap((memoryId) => {\n const memory = sourceMemories.get(memoryId);\n return memory ? [memory] : [];\n });\n const activeContents = activeMemories.map((memory) =>\n memory.frontmatter.structuredAttributes ? stripAttributesSuffix(memory.content) : memory.content\n );\n let metadata: Record<string, string> | undefined;\n const activeInsertedAt = activeSourceMemoryIds.flatMap((memoryId) => {\n const value = insertedAtById.get(memoryId);\n return typeof value === \"string\" ? [[memoryId, value] as const] : [];\n });\n if (activeInsertedAt.length > 0) {\n metadata = {\n [HARMONIC_SOURCE_MEMORY_INSERTED_AT_KEY]: JSON.stringify(Object.fromEntries(activeInsertedAt)),\n };\n }\n\n return {\n ...node,\n sourceMemoryIds: activeSourceMemoryIds,\n title: activeContents[0]?.slice(0, 80) ?? node.title,\n summary: activeContents.slice(0, 3).join(\"; \").slice(0, 400),\n tags: [...new Set(activeMemories.flatMap((memory) => memory.frontmatter.tags))].sort(compareDeterministicStrings),\n entityRefs: [\n ...new Set(\n activeMemories.flatMap((memory) =>\n typeof memory.frontmatter.entityRef === \"string\" ? [memory.frontmatter.entityRef] : []\n )\n ),\n ].sort(compareDeterministicStrings),\n metadata,\n };\n}\n\nfunction anchorMatchesProjectedNode(\n anchor: CueAnchor,\n nodeRef: string,\n node: AbstractionNode,\n allowLegacyAttribution: boolean\n): boolean {\n const activeSourceMemoryIds = node.sourceMemoryIds ?? [];\n if (activeSourceMemoryIds.length === 0) return true;\n if (!anchor.sourceMemoryIdsByNodeRef) return allowLegacyAttribution;\n const anchorSourceMemoryIds = anchor.sourceMemoryIdsByNodeRef[nodeRef] ?? [];\n return anchorSourceMemoryIds.some((sourceMemoryId) => activeSourceMemoryIds.includes(sourceMemoryId));\n}\n\nexport interface HarmonicMatchedAnchor {\n anchorId: string;\n anchorType: CueAnchorType;\n anchorValue: string;\n}\n\nexport interface HarmonicRetrievalResult {\n node: AbstractionNode;\n score: number;\n nodeScore: number;\n anchorScore: number;\n matchedFields: string[];\n matchedAnchors: HarmonicMatchedAnchor[];\n}\n\ninterface HarmonicCandidate {\n node: AbstractionNode;\n nodeScore: number;\n anchorScore: number;\n matchedFields: Set<string>;\n matchedAnchors: Map<string, HarmonicMatchedAnchor>;\n}\n\nfunction scoreNode(node: AbstractionNode, queryTokens: Set<string>): { score: number; matchedFields: string[] } {\n const matchedFields: string[] = [];\n let score = 0;\n\n const titleMatches = countRecallTokenOverlap(queryTokens, node.title);\n if (titleMatches > 0) {\n score += titleMatches * 3;\n matchedFields.push(\"title\");\n }\n\n const summaryMatches = countRecallTokenOverlap(queryTokens, node.summary);\n if (summaryMatches > 0) {\n score += summaryMatches * 3;\n matchedFields.push(\"summary\");\n }\n\n const tagMatches = countRecallTokenOverlap(queryTokens, node.tags?.join(\" \"));\n if (tagMatches > 0) {\n score += tagMatches * 2;\n matchedFields.push(\"tags\");\n }\n\n const entityMatches = countRecallTokenOverlap(queryTokens, node.entityRefs?.join(\" \"));\n if (entityMatches > 0) {\n score += entityMatches * 2;\n matchedFields.push(\"entityRefs\");\n }\n\n const kindMatches = countRecallTokenOverlap(queryTokens, `${node.kind} ${node.abstractionLevel}`);\n if (kindMatches > 0) {\n score += kindMatches;\n matchedFields.push(\"kind\");\n }\n\n return { score, matchedFields };\n}\n\nfunction scoreAnchor(\n anchor: CueAnchor,\n queryTokens: Set<string>,\n eligibleNodeTags: readonly string[]\n): { score: number; matchedFields: string[] } {\n const matchedFields: string[] = [];\n let score = 0;\n\n const valueMatches = countRecallTokenOverlap(queryTokens, anchor.anchorValue);\n const normalizedMatches = countRecallTokenOverlap(queryTokens, anchor.normalizedCue);\n const cueMatches = Math.max(valueMatches, normalizedMatches);\n if (cueMatches > 0) {\n score += cueMatches * 4;\n if (valueMatches > 0) matchedFields.push(\"anchorValue\");\n if (normalizedMatches > 0) matchedFields.push(\"anchor\");\n }\n\n const typeMatches = countRecallTokenOverlap(queryTokens, anchor.anchorType);\n if (typeMatches > 0) {\n score += typeMatches;\n matchedFields.push(\"anchorType\");\n }\n\n const tagMatches = countRecallTokenOverlap(queryTokens, eligibleNodeTags.join(\" \"));\n if (tagMatches > 0) {\n score += tagMatches * 2;\n matchedFields.push(\"anchorTags\");\n }\n\n return { score, matchedFields };\n}\n\nasync function readAbstractionNodes(options: {\n memoryDir: string;\n abstractionNodeStoreDir?: string;\n}): Promise<AbstractionNode[]> {\n const rootDir = resolveAbstractionNodeStoreDir(options.memoryDir, options.abstractionNodeStoreDir);\n const files = await listJsonFilesStrict(path.join(rootDir, \"nodes\"), { allowMissingDirectory: true });\n const nodes: AbstractionNode[] = [];\n for (const filePath of files) {\n try {\n nodes.push(validateAbstractionNode(await readJsonFile(filePath)));\n } catch {\n // fail-open: invalid artifacts stay visible via status tooling instead of recall\n }\n }\n return nodes;\n}\n\nasync function readCueAnchors(options: {\n memoryDir: string;\n abstractionNodeStoreDir?: string;\n}): Promise<CueAnchor[]> {\n const abstractionRoot = resolveAbstractionNodeStoreDir(options.memoryDir, options.abstractionNodeStoreDir);\n const rootDir = resolveCueAnchorStoreDir(abstractionRoot);\n const files = await listJsonFilesStrict(rootDir, { allowMissingDirectory: true });\n const anchors: CueAnchor[] = [];\n for (const filePath of files) {\n try {\n anchors.push(validateCueAnchor(await readJsonFile(filePath)));\n } catch {\n // fail-open: invalid artifacts stay visible via status tooling instead of recall\n }\n }\n return anchors;\n}\n\nexport async function searchHarmonicRetrieval(options: {\n memoryDir: string;\n abstractionNodeStoreDir?: string;\n query: string;\n maxResults: number;\n sessionKey?: string;\n anchorsEnabled: boolean;\n abortSignal?: AbortSignal;\n temporalExpiredInInjection?: boolean;\n}): Promise<HarmonicRetrievalResult[]> {\n throwIfAborted(options.abortSignal, \"harmonic retrieval aborted\");\n const queryTokens = new Set(normalizeRecallTokens(options.query, [\"what\", \"which\"]));\n if (queryTokens.size === 0 || options.maxResults <= 0) return [];\n\n const nodes = await readAbstractionNodes(options);\n const sourceBackedNodes = nodes.filter((node) => (node.sourceMemoryIds?.length ?? 0) > 0);\n const sourceMemories: SourceMemoryMap =\n sourceBackedNodes.length > 0 ? await readSourceMemories(options) : new Map<string, MemoryFile>();\n const legacyCompatibleNodeRefs = new Set<string>();\n const nowMs = Date.now();\n const eligibleNodes = nodes.flatMap((node) => {\n const projected = projectSourceBackedNode(\n node,\n sourceMemories,\n options.memoryDir,\n options.temporalExpiredInInjection === true,\n nowMs\n );\n if (\n projected &&\n (node.sourceMemoryIds?.length ?? 0) > 0 &&\n projected.sourceMemoryIds?.length === node.sourceMemoryIds?.length\n ) {\n legacyCompatibleNodeRefs.add(node.nodeId);\n }\n return projected ? [projected] : [];\n });\n const candidates = new Map<string, HarmonicCandidate>();\n\n for (const node of eligibleNodes) {\n throwIfAborted(options.abortSignal, \"harmonic retrieval aborted\");\n const { score, matchedFields } = scoreNode(node, queryTokens);\n if (score <= 0) continue;\n candidates.set(node.nodeId, {\n node,\n nodeScore: score,\n anchorScore: 0,\n matchedFields: new Set(matchedFields),\n matchedAnchors: new Map(),\n });\n }\n\n if (options.anchorsEnabled) {\n throwIfAborted(options.abortSignal, \"harmonic retrieval aborted\");\n const anchors = await readCueAnchors(options);\n const nodeIndex = new Map(eligibleNodes.map((node) => [node.nodeId, node]));\n for (const anchor of anchors) {\n throwIfAborted(options.abortSignal, \"harmonic retrieval aborted\");\n const eligibleNodeRefs = anchor.nodeRefs.filter((nodeRef) => {\n const node = nodeIndex.get(nodeRef);\n return (\n node !== undefined &&\n anchorMatchesProjectedNode(anchor, nodeRef, node, legacyCompatibleNodeRefs.has(nodeRef))\n );\n });\n const eligibleNodeTags = new Set(eligibleNodeRefs.flatMap((nodeRef) => nodeIndex.get(nodeRef)?.tags ?? []));\n const eligibleAnchorTags = anchor.tags?.filter((tag) => eligibleNodeTags.has(tag)) ?? [];\n const { score, matchedFields } = scoreAnchor(anchor, queryTokens, eligibleAnchorTags);\n if (score <= 0) continue;\n for (const nodeRef of eligibleNodeRefs) {\n const node = nodeIndex.get(nodeRef);\n if (!node) continue;\n const existing = candidates.get(nodeRef) ?? {\n node,\n nodeScore: 0,\n anchorScore: 0,\n matchedFields: new Set<string>(),\n matchedAnchors: new Map<string, HarmonicMatchedAnchor>(),\n };\n existing.anchorScore += score;\n existing.matchedFields.add(\"anchor\");\n for (const field of matchedFields) existing.matchedFields.add(field);\n existing.matchedAnchors.set(anchor.anchorId, {\n anchorId: anchor.anchorId,\n anchorType: anchor.anchorType,\n anchorValue: anchor.anchorValue,\n });\n candidates.set(nodeRef, existing);\n }\n }\n }\n\n return [...candidates.values()]\n .map((candidate) => {\n let score = candidate.nodeScore + candidate.anchorScore;\n if (options.sessionKey && candidate.node.sessionKey === options.sessionKey) score += 0.5;\n return {\n node: candidate.node,\n score,\n nodeScore: candidate.nodeScore,\n anchorScore: candidate.anchorScore,\n matchedFields: [...candidate.matchedFields].sort(),\n matchedAnchors: [...candidate.matchedAnchors.values()].sort(\n (left, right) =>\n left.anchorType.localeCompare(right.anchorType) || left.anchorValue.localeCompare(right.anchorValue)\n ),\n };\n })\n .filter((result) => result.nodeScore > 0 || result.anchorScore > 0)\n .sort(\n (left, right) =>\n right.score - left.score ||\n right.anchorScore - left.anchorScore ||\n right.node.recordedAt.localeCompare(left.node.recordedAt)\n )\n .slice(0, options.maxResults);\n}\n"],"mappings":"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","names":[]}
@@ -7,7 +7,7 @@ import {
7
7
  } from "./chunk-UYCIS6V5.js";
8
8
  import {
9
9
  StorageManager
10
- } from "./chunk-YUIBXMZY.js";
10
+ } from "./chunk-CALURYWR.js";
11
11
  import {
12
12
  parseContinuityImprovementLoops
13
13
  } from "./chunk-LDXUBPMO.js";
@@ -1283,4 +1283,4 @@ export {
1283
1283
  defaultTierMigrationCycleBudget,
1284
1284
  CompoundingEngine
1285
1285
  };
1286
- //# sourceMappingURL=chunk-QRKYABS6.js.map
1286
+ //# sourceMappingURL=chunk-YSR3DXGC.js.map
@@ -1,6 +1,6 @@
1
1
  import {
2
2
  normalizeRecallTokens
3
- } from "./chunk-ZBJMUXZH.js";
3
+ } from "./chunk-DJ7HMNSL.js";
4
4
 
5
5
  // src/recall-query-policy.ts
6
6
  var DEFAULT_STOPWORDS = [
@@ -188,4 +188,4 @@ export {
188
188
  clampInstructionHeavyTokenCap,
189
189
  buildRecallQueryPolicy
190
190
  };
191
- //# sourceMappingURL=chunk-LBJBNWS2.js.map
191
+ //# sourceMappingURL=chunk-YTHQHH5U.js.map
@@ -1,21 +1,21 @@
1
1
  import {
2
2
  WearablesInputError
3
3
  } from "./chunk-V7IZKJI3.js";
4
- import {
5
- WriteRateLimiter
6
- } from "./chunk-TB6CBZ5V.js";
7
4
  import {
8
5
  AdapterRegistry
9
6
  } from "./chunk-JBPKEARU.js";
7
+ import {
8
+ WriteRateLimiter
9
+ } from "./chunk-TB6CBZ5V.js";
10
10
  import {
11
11
  serializeInlineScriptValue
12
12
  } from "./chunk-3HSRWJTC.js";
13
13
  import {
14
14
  handleSupportPassportOwnerHttp
15
- } from "./chunk-EIQFIJDM.js";
15
+ } from "./chunk-JDI7G6EA.js";
16
16
  import {
17
17
  buildSupportPassportPublicRequestHandler
18
- } from "./chunk-KAB7TZN3.js";
18
+ } from "./chunk-PSNN25DW.js";
19
19
  import {
20
20
  nonEmptyQueryParam,
21
21
  optionalQueryString,
@@ -30,10 +30,10 @@ import {
30
30
  processChatMessage,
31
31
  sessionBelongsToPrincipal,
32
32
  subscribeChatTranscript
33
- } from "./chunk-4JGSG7QN.js";
33
+ } from "./chunk-HSBQJRV2.js";
34
34
  import {
35
35
  RelayMissionStoreError
36
- } from "./chunk-XBR5BAKW.js";
36
+ } from "./chunk-JCJGYNIS.js";
37
37
  import {
38
38
  validateRequest
39
39
  } from "./chunk-JKW663ZN.js";
@@ -60,21 +60,21 @@ import {
60
60
  authorizationProbeNamespaces,
61
61
  authorizationProbeRequiresPrincipalNamespace,
62
62
  probeOperationAuthorization
63
- } from "./chunk-PA5OPZX2.js";
63
+ } from "./chunk-QCI73Z7C.js";
64
64
  import {
65
65
  CorrectionContractError,
66
66
  getOperation,
67
67
  resolveQueryNamespaceWritablePreflight
68
- } from "./chunk-AWRJBAIH.js";
68
+ } from "./chunk-4FFROSFG.js";
69
69
  import {
70
70
  isTrustZoneName
71
- } from "./chunk-KQS72GCR.js";
71
+ } from "./chunk-LJOIZPJH.js";
72
72
  import {
73
73
  subscribeGraphEvents
74
74
  } from "./chunk-DEUNUKTD.js";
75
75
  import {
76
76
  isRecallDisclosure
77
- } from "./chunk-5WVUO6QT.js";
77
+ } from "./chunk-AR253JBM.js";
78
78
  import {
79
79
  OFFLINE_SYNC_APPLY_MAX_BODY_BYTES,
80
80
  OFFLINE_SYNC_FILE_CONTENT_MAX_CHUNK_BYTES,
@@ -3397,4 +3397,4 @@ export {
3397
3397
  resolveDefaultAdminConsolePublicDir,
3398
3398
  EngramAccessHttpServer
3399
3399
  };
3400
- //# sourceMappingURL=chunk-GN7HO2LA.js.map
3400
+ //# sourceMappingURL=chunk-ZPGHA7EO.js.map
@@ -12,7 +12,8 @@ import {
12
12
  ContentHashIndex
13
13
  } from "./chunk-NRFU5MVH.js";
14
14
  import {
15
- computeLegacyContentHash
15
+ computeLegacyContentHash,
16
+ normalizeLegacyContent
16
17
  } from "./chunk-5FVVY2EB.js";
17
18
  import {
18
19
  storedContentIdentityCandidates
@@ -26,6 +27,7 @@ import { createHash } from "crypto";
26
27
  var RECONCILE_MANIFEST_FORMAT = "remnic-reconcile-manifest";
27
28
  var RECONCILE_MANIFEST_SCHEMA_VERSION = 1;
28
29
  var CONTENT_HASH_NORMALIZER_VERSION = 4;
30
+ var IDENTITY_RESOLUTION_VERSION = 2;
29
31
  var SHA256_PATTERN = /^[a-f0-9]{64}$/i;
30
32
  var MEMORY_DIRS = new Set(RECALL_FALLBACK_DIRS);
31
33
  function isMemoryPath(filePath) {
@@ -51,12 +53,24 @@ function parsedMemoryIdentity(filePath, raw, parseMemory, citationTemplate) {
51
53
  const legacyMatch = [...candidates].reverse().find(
52
54
  (content) => computeLegacyContentHash(content) === storedHash
53
55
  );
54
- const contentHash = currentMatch ? ContentHashIndex.computeHash(currentMatch) : legacyMatch ? ContentHashIndex.computeHash(legacyMatch) : storedHash ?? bodyHash;
56
+ let contentHash;
57
+ let contentHashAliases;
58
+ if (currentMatch) {
59
+ contentHash = ContentHashIndex.computeHash(currentMatch);
60
+ } else if (legacyMatch && normalizeLegacyContent(legacyMatch).length > 0) {
61
+ contentHash = storedHash ?? bodyHash;
62
+ const recovered = ContentHashIndex.computeHash(legacyMatch);
63
+ if (recovered !== contentHash) contentHashAliases = [recovered];
64
+ } else {
65
+ contentHash = legacyMatch ? ContentHashIndex.computeHash(legacyMatch) : storedHash ?? bodyHash;
66
+ }
55
67
  return {
56
68
  id: parsed.frontmatter.id,
57
69
  category: parsed.frontmatter.category,
58
70
  contentHash,
71
+ ...contentHashAliases ? { contentHashAliases } : {},
59
72
  normalizerVersion: CONTENT_HASH_NORMALIZER_VERSION,
73
+ identityResolutionVersion: IDENTITY_RESOLUTION_VERSION,
60
74
  status: inferMemoryStatus(parsed.frontmatter, filePath)
61
75
  };
62
76
  }
@@ -83,7 +97,7 @@ async function buildReconcileManifest(options) {
83
97
  const files = [];
84
98
  for (const file of options.files) {
85
99
  const cached = cachedByPath.get(file.path);
86
- if (cached?.sha256.toLowerCase() === file.sha256.toLowerCase() && (cached.memory === void 0 || cached.memory.normalizerVersion === CONTENT_HASH_NORMALIZER_VERSION)) {
100
+ if (cached?.sha256.toLowerCase() === file.sha256.toLowerCase() && (cached.memory === void 0 || cached.memory.normalizerVersion === CONTENT_HASH_NORMALIZER_VERSION && cached.memory.identityResolutionVersion === IDENTITY_RESOLUTION_VERSION)) {
87
101
  files.push({ ...file, ...cached.memory ? { memory: cached.memory } : {} });
88
102
  continue;
89
103
  }
@@ -111,7 +125,7 @@ function activeFactByPath(manifest) {
111
125
  return result;
112
126
  }
113
127
  function memoryIdentityHashes(memory) {
114
- return [memory.contentHash];
128
+ return [memory.contentHash, ...memory.contentHashAliases ?? []];
115
129
  }
116
130
  function contentHashRows(files, contentHash) {
117
131
  const rows = [];
@@ -284,4 +298,4 @@ export {
284
298
  buildReconcileManifest,
285
299
  collapseActiveFactDuplicates
286
300
  };
287
- //# sourceMappingURL=chunk-VUDALPI5.js.map
301
+ //# sourceMappingURL=chunk-ZQKXRKMR.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../src/reconcile/manifest.ts"],"sourcesContent":["import { createHash } from \"node:crypto\";\nimport { computeLegacyContentHash, normalizeLegacyContent } from \"../content-hash.js\";\nimport { inferMemoryStatus } from \"../memory-lifecycle-ledger-utils.js\";\nimport { ContentHashIndex, type ContentHashPathEntry } from \"../storage/content-hash-index.js\";\nimport { DEFAULT_CITATION_FORMAT, stripCitationForTemplate } from \"../source-attribution.js\";\nimport { storedContentIdentityCandidates } from \"../structured-attributes.js\";\nimport type { MemoryFrontmatter, MemoryStatus } from \"../types.js\";\nimport { RECALL_FALLBACK_DIRS } from \"../utils/category-dir.js\";\nimport {\n type ReconcileFileState,\n type ReconcilePlan,\n type ReconcilePlanEntry,\n type ReconcileSemanticAgreement,\n type ReconcileSemanticChange,\n summarizeReconcilePlan,\n} from \"./plan.js\";\n\nexport const RECONCILE_MANIFEST_FORMAT = \"remnic-reconcile-manifest\";\nexport const RECONCILE_MANIFEST_SCHEMA_VERSION = 1;\nconst CONTENT_HASH_NORMALIZER_VERSION = 4;\n/**\n * Version of the identity-resolution LOGIC (alias recovery, candidate\n * ordering), independent of the content normalizer: a cached manifest entry\n * written before an identity-resolution change carries an older value and is\n * reparsed even when its normalizerVersion still matches (issue #2367\n * review round 2). Bump when parsedMemoryIdentity's output shape or\n * semantics change.\n */\nconst IDENTITY_RESOLUTION_VERSION = 2;\n\nexport interface ReconcileMemoryIdentity {\n id: string;\n category: string;\n contentHash: string;\n /**\n * Recovered current-normalizer identities for a record whose persisted hash\n * is ambiguous under the legacy normalizer (issue #2367). The persisted\n * hash stays primary; these participate in duplicate bucketing so a\n * replica carrying the current form of the same fact still collapses.\n */\n contentHashAliases?: readonly string[];\n /** See IDENTITY_RESOLUTION_VERSION; absent on pre-versioning cache entries. */\n normalizerVersion?: number;\n identityResolutionVersion?: number;\n status: MemoryStatus;\n}\n\nexport interface ReconcileManifestFile extends ReconcileFileState {\n memory?: ReconcileMemoryIdentity;\n}\n\ntype ActiveFactManifestFile = ReconcileManifestFile & { memory: ReconcileMemoryIdentity };\n\nexport interface ReconcileManifest {\n format: typeof RECONCILE_MANIFEST_FORMAT;\n schemaVersion: typeof RECONCILE_MANIFEST_SCHEMA_VERSION;\n files: ReconcileManifestFile[];\n}\n\nexport type ReconcileMemoryParser = (\n raw: string,\n) => { frontmatter: MemoryFrontmatter; content: string } | null;\n\nexport interface BuildReconcileManifestOptions {\n files: Iterable<ReconcileFileState>;\n readFile: (file: ReconcileFileState) => Promise<Buffer | string | null>;\n parseMemory: ReconcileMemoryParser;\n cachedFiles?: Iterable<ReconcileManifestFile>;\n citationTemplate?: string;\n}\n\nconst SHA256_PATTERN = /^[a-f0-9]{64}$/i;\nconst MEMORY_DIRS = new Set(RECALL_FALLBACK_DIRS);\n\nfunction isMemoryPath(filePath: string): boolean {\n if (!filePath.endsWith(\".md\")) return false;\n const segments = filePath.split(\"/\");\n let index = 0;\n if (segments[index] === \"cold\" || segments[index] === \"archive\") index += 1;\n return MEMORY_DIRS.has(segments[index] ?? \"\");\n}\n\n\nfunction parsedMemoryIdentity(\n filePath: string,\n raw: Buffer | string,\n parseMemory: ReconcileMemoryParser,\n citationTemplate: string,\n): ReconcileMemoryIdentity | undefined {\n if (!isMemoryPath(filePath)) return undefined;\n const parsed = parseMemory(Buffer.isBuffer(raw) ? raw.toString(\"utf8\") : raw);\n if (!parsed?.frontmatter.id) return undefined;\n\n const storedHash =\n parsed.frontmatter.contentHash &&\n SHA256_PATTERN.test(parsed.frontmatter.contentHash)\n ? parsed.frontmatter.contentHash.toLowerCase()\n : undefined;\n const candidates = storedContentIdentityCandidates(parsed.content, (content) =>\n stripCitationForTemplate(content, citationTemplate)\n );\n const bodyHash = ContentHashIndex.computeHash(candidates[0] ?? \"\");\n const currentMatch = candidates.find(\n (content) => ContentHashIndex.computeHash(content) === storedHash\n );\n const legacyMatch = [...candidates].reverse().find(\n (content) => computeLegacyContentHash(content) === storedHash\n );\n let contentHash: string;\n let contentHashAliases: string[] | undefined;\n if (currentMatch) {\n contentHash = ContentHashIndex.computeHash(currentMatch);\n } else if (legacyMatch && normalizeLegacyContent(legacyMatch).length > 0) {\n // A non-empty legacy equality is ambiguous (issue #2367): the persisted\n // hash may be an explicit contentHashSource identity that merely collides\n // with the body's ASCII skeleton under the lossy legacy normalizer, and\n // nothing in the record proves which it is. Keep the persisted hash as\n // the primary identity and expose the recovered current identity as an\n // alias so replicas carrying either form still collapse.\n contentHash = storedHash ?? bodyHash;\n const recovered = ContentHashIndex.computeHash(legacyMatch);\n if (recovered !== contentHash) contentHashAliases = [recovered];\n } else {\n // An EMPTY legacy skeleton identifies nothing (every non-ASCII body maps\n // to it), so preserving it would collapse unrelated records. Recovering\n // the current identity here is repair, not replacement.\n contentHash = legacyMatch ? ContentHashIndex.computeHash(legacyMatch) : storedHash ?? bodyHash;\n }\n\n return {\n id: parsed.frontmatter.id,\n category: parsed.frontmatter.category,\n contentHash,\n ...(contentHashAliases ? { contentHashAliases } : {}),\n normalizerVersion: CONTENT_HASH_NORMALIZER_VERSION,\n identityResolutionVersion: IDENTITY_RESOLUTION_VERSION,\n status: inferMemoryStatus(parsed.frontmatter, filePath),\n };\n}\n\nexport async function buildReconcileManifestFile(\n file: ReconcileFileState,\n readFile: (file: ReconcileFileState) => Promise<Buffer | string | null>,\n parseMemory: ReconcileMemoryParser,\n citationTemplate = DEFAULT_CITATION_FORMAT,\n): Promise<ReconcileManifestFile> {\n let raw: Buffer | string | null = null;\n if (isMemoryPath(file.path)) {\n try {\n raw = await readFile(file);\n } catch {\n raw = null;\n }\n }\n if (raw !== null && createHash(\"sha256\").update(raw).digest(\"hex\") !== file.sha256.toLowerCase()) {\n raw = null;\n }\n const memory = raw === null ? undefined : parsedMemoryIdentity(file.path, raw, parseMemory, citationTemplate);\n return { ...file, ...(memory ? { memory } : {}) };\n}\n\nexport async function buildReconcileManifest(options: BuildReconcileManifestOptions): Promise<ReconcileManifest> {\n const cachedByPath = new Map<string, ReconcileManifestFile>();\n for (const cached of options.cachedFiles ?? []) {\n cachedByPath.set(cached.path, cached);\n }\n\n const files: ReconcileManifestFile[] = [];\n for (const file of options.files) {\n const cached = cachedByPath.get(file.path);\n if (\n cached?.sha256.toLowerCase() === file.sha256.toLowerCase() &&\n (cached.memory === undefined ||\n (cached.memory.normalizerVersion === CONTENT_HASH_NORMALIZER_VERSION &&\n cached.memory.identityResolutionVersion === IDENTITY_RESOLUTION_VERSION))\n ) {\n files.push({ ...file, ...(cached.memory ? { memory: cached.memory } : {}) });\n continue;\n }\n\n files.push(await buildReconcileManifestFile(\n file,\n options.readFile,\n options.parseMemory,\n options.citationTemplate,\n ));\n }\n files.sort((left, right) => (left.path < right.path ? -1 : left.path > right.path ? 1 : 0));\n return {\n format: RECONCILE_MANIFEST_FORMAT,\n schemaVersion: RECONCILE_MANIFEST_SCHEMA_VERSION,\n files,\n };\n}\n\nfunction activeFactByPath(manifest: ReconcileManifest | undefined): Map<string, ActiveFactManifestFile> {\n const result = new Map<string, ActiveFactManifestFile>();\n for (const file of manifest?.files ?? []) {\n if (file.memory?.category === \"fact\" && file.memory.status === \"active\") {\n result.set(file.path, file as ActiveFactManifestFile);\n }\n }\n return result;\n}\n\nfunction memoryIdentityHashes(memory: ReconcileMemoryIdentity): string[] {\n return [memory.contentHash, ...(memory.contentHashAliases ?? [])];\n}\n\nfunction contentHashRows(\n files: Iterable<ActiveFactManifestFile>,\n contentHash: string,\n): ContentHashPathEntry[] {\n const rows: ContentHashPathEntry[] = [];\n for (const file of files) {\n rows.push({ path: file.path, contentHash });\n }\n return rows;\n}\n\nfunction comparePlanEntries(left: ReconcilePlanEntry, right: ReconcilePlanEntry): number {\n if (left.namespace !== right.namespace) return left.namespace < right.namespace ? -1 : 1;\n return left.path < right.path ? -1 : left.path > right.path ? 1 : 0;\n}\n\nfunction semanticAgreementKey(agreement: ReconcileSemanticAgreement): string {\n return `${agreement.local.path}\\0${agreement.peer.path}`;\n}\n\nfunction classifySemanticChange(\n current: ReconcileSemanticAgreement,\n prior: ReconcileSemanticAgreement | undefined\n): ReconcileSemanticChange {\n if (!prior) return \"unchanged\";\n const localChanged = current.local.sha256 !== prior.local.sha256;\n const peerChanged = current.peer.sha256 !== prior.peer.sha256;\n if (localChanged && peerChanged) return \"both_modified\";\n if (localChanged) return \"local_changed\";\n if (peerChanged) return \"peer_changed\";\n return \"unchanged\";\n}\n\nexport function collapseActiveFactDuplicates(\n plan: ReconcilePlan,\n localManifests: ReadonlyMap<string, ReconcileManifest>,\n peerManifests: ReadonlyMap<string, ReconcileManifest>,\n priorSemanticAgreements?: ReadonlyMap<string, readonly ReconcileSemanticAgreement[]>,\n): ReconcilePlan {\n const entriesByNamespace = new Map<string, ReconcilePlanEntry[]>();\n for (const entry of plan.entries) {\n const entries = entriesByNamespace.get(entry.namespace) ?? [];\n entries.push({ ...entry });\n entriesByNamespace.set(entry.namespace, entries);\n }\n\n let changed = false;\n for (const namespace of new Set([...localManifests.keys(), ...peerManifests.keys()])) {\n const entries = entriesByNamespace.get(namespace) ?? [];\n const localManifest = localManifests.get(namespace);\n const peerManifest = peerManifests.get(namespace);\n const localByPath = activeFactByPath(localManifest);\n const peerByPath = activeFactByPath(peerManifest);\n const localFilesByPath = new Map((localManifest?.files ?? []).map((file) => [file.path, file]));\n const peerFilesByPath = new Map((peerManifest?.files ?? []).map((file) => [file.path, file]));\n const priorSemanticByPathPair = new Map(\n (priorSemanticAgreements?.get(namespace) ?? []).map((agreement) => [\n semanticAgreementKey(agreement),\n agreement,\n ])\n );\n const localByHash = new Map<string, ActiveFactManifestFile[]>();\n const peerByHash = new Map<string, ActiveFactManifestFile[]>();\n\n for (const file of localByPath.values()) {\n for (const hash of memoryIdentityHashes(file.memory)) {\n const bucket = localByHash.get(hash) ?? [];\n bucket.push(file);\n localByHash.set(hash, bucket);\n }\n }\n for (const file of peerByPath.values()) {\n for (const hash of memoryIdentityHashes(file.memory)) {\n const bucket = peerByHash.get(hash) ?? [];\n bucket.push(file);\n peerByHash.set(hash, bucket);\n }\n }\n\n const removed = new Set<ReconcilePlanEntry>();\n const replacements: ReconcilePlanEntry[] = [];\n const processedPathPairs = new Set<string>();\n for (const hash of new Set([...localByHash.keys(), ...peerByHash.keys()])) {\n const localCandidates = (localByHash.get(hash) ?? []).filter((file) => {\n const opposite = peerFilesByPath.get(file.path);\n const activeOpposite = peerByPath.get(file.path);\n return opposite === undefined || (\n activeOpposite !== undefined &&\n memoryIdentityHashes(activeOpposite.memory).includes(hash)\n );\n });\n const peerCandidates = (peerByHash.get(hash) ?? []).filter((file) => {\n const opposite = localFilesByPath.get(file.path);\n const activeOpposite = localByPath.get(file.path);\n return opposite === undefined || (\n activeOpposite !== undefined &&\n memoryIdentityHashes(activeOpposite.memory).includes(hash)\n );\n });\n const localPath = ContentHashIndex.resolvePathByHash(hash, contentHashRows(localCandidates, hash));\n const peerPath = ContentHashIndex.resolvePathByHash(hash, contentHashRows(peerCandidates, hash));\n\n if (localPath && peerPath && localPath !== peerPath) {\n const pathPair = `${localPath}\\0${peerPath}`;\n if (processedPathPairs.has(pathPair)) continue;\n processedPathPairs.add(pathPair);\n const localFile = localByPath.get(localPath);\n const peerFile = peerByPath.get(peerPath);\n if (!localFile || !peerFile) continue;\n const duplicatePaths = new Set([\n ...localCandidates.map((file) => file.path),\n ...peerCandidates.map((file) => file.path),\n ]);\n const authoritativeSamePathEntries = new Set(entries.filter(\n (entry) =>\n duplicatePaths.has(entry.path)\n && localFilesByPath.has(entry.path)\n && peerFilesByPath.has(entry.path)\n && entry.action !== \"identical\"\n ));\n if (authoritativeSamePathEntries.size > 0) {\n for (const entry of entries) {\n if (\n duplicatePaths.has(entry.path)\n && !authoritativeSamePathEntries.has(entry)\n && (entry.action === \"pull\" || entry.action === \"push\" || entry.action === \"identical\")\n ) {\n removed.add(entry);\n changed = true;\n }\n }\n continue;\n }\n const unsafeEntry = entries.some(\n (entry) => duplicatePaths.has(entry.path) && (entry.action === \"suppress\" || entry.action === \"conflict\")\n );\n if (unsafeEntry) continue;\n for (const entry of entries) {\n if (\n duplicatePaths.has(entry.path) &&\n (entry.action === \"pull\" || entry.action === \"push\" || entry.action === \"identical\")\n ) {\n removed.add(entry);\n }\n }\n const semanticAgreement: ReconcileSemanticAgreement = {\n local: { path: localPath, sha256: localFile.sha256 },\n peer: { path: peerPath, sha256: peerFile.sha256 },\n };\n replacements.push({\n path: localPath < peerPath ? localPath : peerPath,\n namespace,\n action: \"identical\",\n reason: \"semantic_duplicate\",\n semanticAgreement,\n semanticChange: classifySemanticChange(\n semanticAgreement,\n priorSemanticByPathPair.get(semanticAgreementKey(semanticAgreement))\n ),\n });\n changed = true;\n continue;\n }\n\n const sameSideEntries = entries.filter((entry) => {\n if (localPath && entry.reason === \"local_only\") {\n return localCandidates.some((file) => file.path === entry.path);\n }\n if (peerPath && entry.reason === \"peer_only\") {\n return peerCandidates.some((file) => file.path === entry.path);\n }\n return false;\n });\n const canonicalPath = localPath ?? peerPath;\n const hasSharedCanonical = localPath !== undefined && localPath === peerPath;\n if (!canonicalPath || sameSideEntries.length === 0 || (!hasSharedCanonical && sameSideEntries.length < 2)) {\n continue;\n }\n for (const entry of sameSideEntries) {\n if (entry.path !== canonicalPath) {\n removed.add(entry);\n changed = true;\n }\n }\n }\n\n if (removed.size > 0 || replacements.length > 0) {\n entriesByNamespace.set(\n namespace,\n [...entries.filter((entry) => !removed.has(entry)), ...replacements].sort(comparePlanEntries)\n );\n }\n }\n\n if (!changed) return plan;\n const entries = [...entriesByNamespace.values()].flat().sort(comparePlanEntries);\n return {\n entries,\n byNamespace: summarizeReconcilePlan(entries),\n converged: entries.every((entry) => entry.action === \"identical\"),\n };\n}\n"],"mappings":"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","names":["entries"]}
@@ -1,7 +1,7 @@
1
1
  import {
2
2
  resolveWorkProductLedgerDir,
3
3
  validateWorkProductLedgerEntry
4
- } from "./chunk-WT6UL3UA.js";
4
+ } from "./chunk-H7PRHUBD.js";
5
5
  import {
6
6
  TranscriptManager
7
7
  } from "./chunk-AM4T6CHX.js";
@@ -11,7 +11,7 @@ import {
11
11
  } from "./chunk-NOB2T2FC.js";
12
12
  import {
13
13
  parseConfig
14
- } from "./chunk-DSA47WBN.js";
14
+ } from "./chunk-RYST72N5.js";
15
15
  import {
16
16
  resolveObjectiveStateStoreDir,
17
17
  validateObjectiveStateSnapshot
@@ -268,4 +268,4 @@ export {
268
268
  recordResumeBundle,
269
269
  getResumeBundleStatus
270
270
  };
271
- //# sourceMappingURL=chunk-FQSDU634.js.map
271
+ //# sourceMappingURL=chunk-ZS4JADYY.js.map
@@ -1,16 +1,16 @@
1
1
  import { CompoundingPromotionReport } from './compounding/engine.js';
2
2
  import { ConversationIndexBackendInspection } from './conversation-index/backend.js';
3
3
  import { MigrateObservationsResult } from './maintenance/migrate-observations.js';
4
- import { M as MemoryFile, l as MemoryFrontmatter, y as MemoryStatus, a6 as BehaviorSignalEvent, Q as QmdSearchResult, ab as BulkImportResult, ag as MemoryActionEvent, J as MemoryLifecycleEvent } from './types-BOANGhCJ.js';
5
- import { C as ConversationIndexCoordinator, T as TierMigrationCoordinator, O as Orchestrator } from './orchestrator-HPuY6I4i.js';
6
- import { S as StorageManager } from './storage-DS2O_6Qt.js';
4
+ import { M as MemoryFile, l as MemoryFrontmatter, y as MemoryStatus, a6 as BehaviorSignalEvent, Q as QmdSearchResult, ab as BulkImportResult, ag as MemoryActionEvent, J as MemoryLifecycleEvent } from './types-DWHOxlZP.js';
5
+ import { C as ConversationIndexCoordinator, T as TierMigrationCoordinator, O as Orchestrator } from './orchestrator-CFi-5JSR.js';
6
+ import { S as StorageManager } from './storage-BVAVitkO.js';
7
7
  import { TrustZoneDemoSeedResult, TrustZoneName, TrustZonePromotionResult, TrustZoneStoreStatus } from './trust-zones.js';
8
- import { f as EngramAccessService } from './access-service-BeDYQQ62.js';
8
+ import { f as EngramAccessService } from './access-service-M4LgO141.js';
9
9
  import { Writable, Readable } from 'node:stream';
10
10
  import { ResolveSecretRefFn } from './resolve-auth-token.js';
11
11
  import { CausalTrajectoryStoreStatus } from './causal-trajectory.js';
12
12
  import { C as ConnectorRunResult, a as ConnectorsOutputFormat } from './connectors-cli-2iaQ5tX2.js';
13
- import { P as ProcessBatchFn } from './pipeline-CvVe1Q2_.js';
13
+ import { P as ProcessBatchFn } from './pipeline-BdF3ferY.js';
14
14
  import { MemoryGovernanceRunResult, MemoryGovernanceSummary, MemoryGovernanceMetrics, MemoryGovernanceQualityScore, MemoryGovernanceReviewQueueEntry, MemoryGovernanceAppliedAction, MemoryGovernanceTransitionReport, MemoryGovernanceManifest, MemoryGovernanceRestoreManifest, RestoreMemoryGovernanceRunResult } from './maintenance/memory-governance.js';
15
15
  import { RebuildMemoryProjectionResult, RepairMemoryProjectionResult, VerifyMemoryProjectionResult } from './maintenance/rebuild-memory-projection.js';
16
16
  import { RebuildObservationsResult } from './maintenance/rebuild-observations.js';
package/dist/cli.d.ts CHANGED
@@ -1,17 +1,17 @@
1
1
  import './compounding/engine.js';
2
2
  import './conversation-index/backend.js';
3
3
  import './maintenance/migrate-observations.js';
4
- import './types-BOANGhCJ.js';
5
- import './orchestrator-HPuY6I4i.js';
6
- import './storage-DS2O_6Qt.js';
4
+ import './types-DWHOxlZP.js';
5
+ import './orchestrator-CFi-5JSR.js';
6
+ import './storage-BVAVitkO.js';
7
7
  import './trust-zones.js';
8
- export { c as AccessHttpServeCliCommandOptions, d as ArchiveObservationsCliCommandOptions, e as AuditMemoryCliCommandOptions, B as BulkImportCliCommandOptions, C as CliApi, g as CliCommand, h as CliProgram, i as CompatCliCommandOptions, j as ConnectorsRunCliOutputOptions, k as ConversationIndexHealthCliOrchestrator, D as DashboardStartCliCommandOptions, l as DedupeCandidate, E as ExactDedupePlan, G as GraphHealthCliCommandOptions, M as MemoryActionAuditCliCommandOptions, m as MemoryActionAuditCliNamespaceSummary, n as MemoryActionAuditCliReport, o as MemoryGovernanceCliCommandOptions, q as MemoryGovernanceReportCliCommandOptions, s as MemoryGovernanceRestoreCliCommandOptions, t as MemoryReviewDispositionCliCommandOptions, u as MemoryTimelineCliCommandOptions, v as MigrateCliOrchestrator, w as MigrateCliReport, x as MigrateObservationsCliCommandOptions, P as PolicyDiffCliReport, y as PolicyDiffEntry, z as PolicyRollbackCliReport, F as PolicyStatusCliReport, H as PolicyTuningCliOrchestrator, R as RebuildMemoryLifecycleLedgerCliCommandOptions, I as RebuildMemoryProjectionCliCommandOptions, J as RebuildObservationsCliCommandOptions, K as RepairMemoryProjectionCliCommandOptions, L as ReplayCliCommandOptions, N as ReplayCliOrchestrator, O as RouteCliCommandOptions, S as SessionIntegrityCliCommandOptions, Q as SessionRepairCliCommandOptions, T as TailscaleStatusCliCommandOptions, U as TailscaleSyncCliCommandOptions, V as TierMigrateCliAdapter, W as TierMigrateCoordinatorCliAdapter, X as TierMigrateLegacyCliAdapter, Y as TierStatusCliAdapter, Z as TierStatusCoordinatorCliAdapter, _ as TierStatusLegacyCliAdapter, $ as TrainingExportCliCommandOptions, a0 as VerifyMemoryProjectionCliCommandOptions, a1 as WebDavServeCliCommandOptions, a2 as WorkProjectCliCommandOptions, a3 as WorkTaskCliCommandOptions, a4 as emitConnectorsRunCliResult, a5 as filterNormalMemorySearchResults, a6 as hasDestructivePurgeFailures, a7 as isNormalRetrievalVisibleMemory, a8 as listMemoryMarkdownFilePaths, a9 as parseDurationToMs, aa as parseStrictCliDate, ab as planAggressiveDuplicateDeletions, ac as planExactDuplicateDeletions, ad as registerCli, ae as resolveAccessPrincipalOverride, af as resolveMemoryDirForNamespace, ag as runAbstractionNodeStatusCliCommand, ah as runAccessHttpServeCliCommand, ai as runAccessHttpStatusCliCommand, aj as runAccessHttpStopCliCommand, ak as runAccessMcpServeCliCommand, al as runArchiveObservationsCliCommand, r as runAuditMemoryCliCommand, am as runBenchmarkBaselineReportCliCommand, an as runBenchmarkBaselineSnapshotCliCommand, ao as runBenchmarkCiGateCliCommand, ap as runBenchmarkImportCliCommand, aq as runBenchmarkStatusCliCommand, ar as runBenchmarkStoredBaselineCiGateCliCommand, as as runBenchmarkValidateCliCommand, b as runBulkImportCliCommand, at as runCausalTrajectoryStatusCliCommand, au as runCommitmentLifecycleCliCommand, av as runCommitmentRecordCliCommand, aw as runCommitmentSetStateCliCommand, ax as runCommitmentStatusCliCommand, ay as runCompatCliCommand, az as runCompoundingPromoteCliCommand, aA as runConversationIndexHealthCliCommand, aB as runConversationIndexInspectCliCommand, aC as runConversationIndexRebuildCliCommand, aD as runCueAnchorStatusCliCommand, aE as runDashboardStartCliCommand, aF as runDashboardStatusCliCommand, aG as runDashboardStopCliCommand, aH as runGraphHealthCliCommand, aI as runHarmonicSearchCliCommand, aJ as runMemoryActionAuditCliCommand, aK as runMemoryGovernanceCliCommand, aL as runMemoryGovernanceReportCliCommand, aM as runMemoryGovernanceRestoreCliCommand, aN as runMemoryReviewDispositionCliCommand, aO as runMemoryTimelineCliCommand, aP as runMigrateNormalizeFrontmatterCliCommand, aQ as runMigrateObservationsCliCommand, aR as runMigrateRechunkCliCommand, aS as runMigrateReextractCliCommand, aT as runMigrateRescoreImportanceCliCommand, aU as runObjectiveStateStatusCliCommand, aV as runPolicyDiffCliCommand, aW as runPolicyRollbackCliCommand, aX as runPolicyStatusCliCommand, aY as runRebuildMemoryLifecycleLedgerCliCommand, aZ as runRebuildMemoryProjectionCliCommand, a_ as runRebuildObservationsCliCommand, a$ as runRepairMemoryProjectionCliCommand, b0 as runReplayCliCommand, b1 as runResumeBundleBuildCliCommand, b2 as runResumeBundleRecordCliCommand, b3 as runResumeBundleStatusCliCommand, b4 as runRouteCliCommand, b5 as runSemanticRulePromoteCliCommand, b6 as runSemanticRuleVerifyCliCommand, b7 as runSessionCheckCliCommand, b8 as runSessionRepairCliCommand, b9 as runTailscaleStatusCliCommand, ba as runTailscaleSyncCliCommand, bb as runTierMigrateCliCommand, bc as runTierStatusCliCommand, bd as runTrainingExportCliCommand, be as runTrustZoneDemoSeedCliCommand, bf as runTrustZonePromoteCliCommand, bg as runTrustZoneStatusCliCommand, bh as runUtilityLearningCliCommand, bi as runUtilityLearningStatusCliCommand, bj as runUtilityTelemetryRecordCliCommand, bk as runUtilityTelemetryStatusCliCommand, bl as runVerifiedRecallSearchCliCommand, bm as runVerifyMemoryProjectionCliCommand, bn as runWebDavServeCliCommand, bo as runWebDavStopCliCommand, bp as runWorkProductRecallSearchCliCommand, bq as runWorkProductRecordCliCommand, br as runWorkProductStatusCliCommand, bs as runWorkProjectCliCommand, bt as runWorkTaskCliCommand } from './cli-DB_uakTc.js';
9
- import './access-service-BeDYQQ62.js';
8
+ export { c as AccessHttpServeCliCommandOptions, d as ArchiveObservationsCliCommandOptions, e as AuditMemoryCliCommandOptions, B as BulkImportCliCommandOptions, C as CliApi, g as CliCommand, h as CliProgram, i as CompatCliCommandOptions, j as ConnectorsRunCliOutputOptions, k as ConversationIndexHealthCliOrchestrator, D as DashboardStartCliCommandOptions, l as DedupeCandidate, E as ExactDedupePlan, G as GraphHealthCliCommandOptions, M as MemoryActionAuditCliCommandOptions, m as MemoryActionAuditCliNamespaceSummary, n as MemoryActionAuditCliReport, o as MemoryGovernanceCliCommandOptions, q as MemoryGovernanceReportCliCommandOptions, s as MemoryGovernanceRestoreCliCommandOptions, t as MemoryReviewDispositionCliCommandOptions, u as MemoryTimelineCliCommandOptions, v as MigrateCliOrchestrator, w as MigrateCliReport, x as MigrateObservationsCliCommandOptions, P as PolicyDiffCliReport, y as PolicyDiffEntry, z as PolicyRollbackCliReport, F as PolicyStatusCliReport, H as PolicyTuningCliOrchestrator, R as RebuildMemoryLifecycleLedgerCliCommandOptions, I as RebuildMemoryProjectionCliCommandOptions, J as RebuildObservationsCliCommandOptions, K as RepairMemoryProjectionCliCommandOptions, L as ReplayCliCommandOptions, N as ReplayCliOrchestrator, O as RouteCliCommandOptions, S as SessionIntegrityCliCommandOptions, Q as SessionRepairCliCommandOptions, T as TailscaleStatusCliCommandOptions, U as TailscaleSyncCliCommandOptions, V as TierMigrateCliAdapter, W as TierMigrateCoordinatorCliAdapter, X as TierMigrateLegacyCliAdapter, Y as TierStatusCliAdapter, Z as TierStatusCoordinatorCliAdapter, _ as TierStatusLegacyCliAdapter, $ as TrainingExportCliCommandOptions, a0 as VerifyMemoryProjectionCliCommandOptions, a1 as WebDavServeCliCommandOptions, a2 as WorkProjectCliCommandOptions, a3 as WorkTaskCliCommandOptions, a4 as emitConnectorsRunCliResult, a5 as filterNormalMemorySearchResults, a6 as hasDestructivePurgeFailures, a7 as isNormalRetrievalVisibleMemory, a8 as listMemoryMarkdownFilePaths, a9 as parseDurationToMs, aa as parseStrictCliDate, ab as planAggressiveDuplicateDeletions, ac as planExactDuplicateDeletions, ad as registerCli, ae as resolveAccessPrincipalOverride, af as resolveMemoryDirForNamespace, ag as runAbstractionNodeStatusCliCommand, ah as runAccessHttpServeCliCommand, ai as runAccessHttpStatusCliCommand, aj as runAccessHttpStopCliCommand, ak as runAccessMcpServeCliCommand, al as runArchiveObservationsCliCommand, r as runAuditMemoryCliCommand, am as runBenchmarkBaselineReportCliCommand, an as runBenchmarkBaselineSnapshotCliCommand, ao as runBenchmarkCiGateCliCommand, ap as runBenchmarkImportCliCommand, aq as runBenchmarkStatusCliCommand, ar as runBenchmarkStoredBaselineCiGateCliCommand, as as runBenchmarkValidateCliCommand, b as runBulkImportCliCommand, at as runCausalTrajectoryStatusCliCommand, au as runCommitmentLifecycleCliCommand, av as runCommitmentRecordCliCommand, aw as runCommitmentSetStateCliCommand, ax as runCommitmentStatusCliCommand, ay as runCompatCliCommand, az as runCompoundingPromoteCliCommand, aA as runConversationIndexHealthCliCommand, aB as runConversationIndexInspectCliCommand, aC as runConversationIndexRebuildCliCommand, aD as runCueAnchorStatusCliCommand, aE as runDashboardStartCliCommand, aF as runDashboardStatusCliCommand, aG as runDashboardStopCliCommand, aH as runGraphHealthCliCommand, aI as runHarmonicSearchCliCommand, aJ as runMemoryActionAuditCliCommand, aK as runMemoryGovernanceCliCommand, aL as runMemoryGovernanceReportCliCommand, aM as runMemoryGovernanceRestoreCliCommand, aN as runMemoryReviewDispositionCliCommand, aO as runMemoryTimelineCliCommand, aP as runMigrateNormalizeFrontmatterCliCommand, aQ as runMigrateObservationsCliCommand, aR as runMigrateRechunkCliCommand, aS as runMigrateReextractCliCommand, aT as runMigrateRescoreImportanceCliCommand, aU as runObjectiveStateStatusCliCommand, aV as runPolicyDiffCliCommand, aW as runPolicyRollbackCliCommand, aX as runPolicyStatusCliCommand, aY as runRebuildMemoryLifecycleLedgerCliCommand, aZ as runRebuildMemoryProjectionCliCommand, a_ as runRebuildObservationsCliCommand, a$ as runRepairMemoryProjectionCliCommand, b0 as runReplayCliCommand, b1 as runResumeBundleBuildCliCommand, b2 as runResumeBundleRecordCliCommand, b3 as runResumeBundleStatusCliCommand, b4 as runRouteCliCommand, b5 as runSemanticRulePromoteCliCommand, b6 as runSemanticRuleVerifyCliCommand, b7 as runSessionCheckCliCommand, b8 as runSessionRepairCliCommand, b9 as runTailscaleStatusCliCommand, ba as runTailscaleSyncCliCommand, bb as runTierMigrateCliCommand, bc as runTierStatusCliCommand, bd as runTrainingExportCliCommand, be as runTrustZoneDemoSeedCliCommand, bf as runTrustZonePromoteCliCommand, bg as runTrustZoneStatusCliCommand, bh as runUtilityLearningCliCommand, bi as runUtilityLearningStatusCliCommand, bj as runUtilityTelemetryRecordCliCommand, bk as runUtilityTelemetryStatusCliCommand, bl as runVerifiedRecallSearchCliCommand, bm as runVerifyMemoryProjectionCliCommand, bn as runWebDavServeCliCommand, bo as runWebDavStopCliCommand, bp as runWorkProductRecallSearchCliCommand, bq as runWorkProductRecordCliCommand, br as runWorkProductStatusCliCommand, bs as runWorkProjectCliCommand, bt as runWorkTaskCliCommand } from './cli-Bw9z-KqX.js';
9
+ import './access-service-M4LgO141.js';
10
10
  import 'node:stream';
11
11
  import './resolve-auth-token.js';
12
12
  import './causal-trajectory.js';
13
13
  import './connectors-cli-2iaQ5tX2.js';
14
- import './pipeline-CvVe1Q2_.js';
14
+ import './pipeline-BdF3ferY.js';
15
15
  import './maintenance/memory-governance.js';
16
16
  import './maintenance/rebuild-memory-projection.js';
17
17
  import './maintenance/rebuild-observations.js';
@@ -73,14 +73,14 @@ import './fallback-llm.js';
73
73
  import './resolve-provider-secret.js';
74
74
  import './transcript.js';
75
75
  import './summarizer.js';
76
- import './maintenance-5c1olVtB.js';
77
- import './catalog-B2SxZ6LU.js';
76
+ import './maintenance-uJb74j64.js';
77
+ import './catalog-CyYTf_ok.js';
78
78
  import './namespaces/search.js';
79
79
  import './utility-runtime.js';
80
80
  import './tier-routing.js';
81
81
  import './lifecycle.js';
82
82
  import './orchestration/compression-guideline-coordinator.js';
83
- import './semantic-consolidation-B1EkeEDj.js';
83
+ import './semantic-consolidation-B-85brYj.js';
84
84
  import './connectors/codex-materialize.js';
85
85
  import './logger.js';
86
86
  import './embedding-fallback.js';
@@ -91,11 +91,11 @@ import './extraction-error-classification.js';
91
91
  import './harmonic-retrieval.js';
92
92
  import './trust-score-stage.js';
93
93
  import './trust-score.js';
94
- import './dependency-propagation-delivery-DcOVpK3y.js';
94
+ import './dependency-propagation-delivery-BxhvAppj.js';
95
95
  import './boxes.js';
96
96
  import './namespaces/storage.js';
97
97
  import './threading.js';
98
- import './scope-profiles-ClLtm9gK.js';
98
+ import './scope-profiles-CeMv7pP0.js';
99
99
  import './recall-xray.js';
100
100
  import './memory-provenance.js';
101
101
  import './user-model.js';
@@ -106,7 +106,7 @@ import './relevance.js';
106
106
  import './negative.js';
107
107
  import './session-observer-state.js';
108
108
  import './semantic-TddhF0y7.js';
109
- import './service-Cf3ANQj9.js';
109
+ import './service-CoO0HA2E.js';
110
110
  import './extraction-judge.js';
111
111
  import './lcm/engine.js';
112
112
  import './lcm/archive.js';
@@ -116,7 +116,7 @@ import './lcm/dag.js';
116
116
  import './lcm/recall.js';
117
117
  import './lcm/queue.js';
118
118
  import './maintenance/rebuild-memory-lifecycle-ledger.js';
119
- import './access-namespace-preflight-EMvicnrb.js';
119
+ import './access-namespace-preflight-yO4LMGFH.js';
120
120
  import './access-token-capabilities.js';
121
121
  import 'node:async_hooks';
122
122
  import './types-B1VHaf2w.js';