@remnic/core 9.69.9 → 9.69.11

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 (577) hide show
  1. package/dist/access-admin-ops-surface.d.ts +15 -13
  2. package/dist/access-admin-ops-surface.js +41 -28
  3. package/dist/access-authorization-probe.d.ts +13 -11
  4. package/dist/access-authorization-probe.js +42 -29
  5. package/dist/access-boundary.d.ts +13 -11
  6. package/dist/access-boundary.js +41 -28
  7. package/dist/access-cli.js +101 -89
  8. package/dist/access-cli.js.map +1 -1
  9. package/dist/access-coding-context-resolution.d.ts +2 -1
  10. package/dist/access-extraction-force-flush.d.ts +13 -11
  11. package/dist/access-extraction-force-flush.js +41 -28
  12. package/dist/access-health-types.d.ts +2 -1
  13. package/dist/access-http-lcm-compaction.d.ts +13 -11
  14. package/dist/access-http-lifecycle-flush.d.ts +13 -11
  15. package/dist/access-http-offline-stream.d.ts +13 -11
  16. package/dist/access-http-query.d.ts +3 -2
  17. package/dist/access-http-query.js +43 -30
  18. package/dist/access-http.d.ts +14 -12
  19. package/dist/access-http.js +62 -47
  20. package/dist/access-identity-continuity-surface.d.ts +10 -9
  21. package/dist/access-identity-continuity-surface.js +41 -28
  22. package/dist/access-lcm-surface.d.ts +13 -11
  23. package/dist/access-lcm-surface.js +41 -28
  24. package/dist/access-mcp-output-schemas.js +1 -1
  25. package/dist/access-mcp.d.ts +13 -11
  26. package/dist/access-mcp.js +53 -39
  27. package/dist/access-memory-search-fanout.d.ts +3 -2
  28. package/dist/{access-namespace-preflight-S8fhQcCo.d.ts → access-namespace-preflight-Cy0yPsaE.d.ts} +1 -1
  29. package/dist/access-namespace-preflight.d.ts +4 -3
  30. package/dist/access-namespace-preflight.js +41 -28
  31. package/dist/access-observe-write-surface.d.ts +15 -13
  32. package/dist/access-observe-write-surface.js +41 -28
  33. package/dist/access-offline-manifest.d.ts +10 -9
  34. package/dist/access-offline-manifest.js +3 -3
  35. package/dist/access-operations-batch.js +44 -31
  36. package/dist/access-operations.d.ts +19 -17
  37. package/dist/access-operations.js +49 -36
  38. package/dist/access-recall-concurrency.d.ts +13 -11
  39. package/dist/access-recall-concurrency.js +41 -28
  40. package/dist/access-recall-response.d.ts +13 -11
  41. package/dist/access-recall-response.js +41 -28
  42. package/dist/access-recall-surface.d.ts +13 -11
  43. package/dist/access-recall-surface.js +41 -28
  44. package/dist/access-schema.d.ts +107 -90
  45. package/dist/access-schema.js +5 -3
  46. package/dist/{access-service-LbwWl05g.d.ts → access-service-Cqfk3dD1.d.ts} +89 -72
  47. package/dist/access-service-helpers.d.ts +13 -11
  48. package/dist/access-service.d.ts +13 -11
  49. package/dist/access-service.js +41 -28
  50. package/dist/access-surface-catalog.d.ts +13 -11
  51. package/dist/access-surface-catalog.js +45 -30
  52. package/dist/access-surface-catalog.js.map +1 -1
  53. package/dist/access-wearables-meetings-surface.d.ts +4 -3
  54. package/dist/action-confidence.d.ts +2 -1
  55. package/dist/active-memory-bridge.d.ts +2 -1
  56. package/dist/active-recall.d.ts +2 -1
  57. package/dist/active-recall.js +6 -5
  58. package/dist/active-recall.js.map +1 -1
  59. package/dist/adapters/index.js +4 -4
  60. package/dist/adapters/registry.js +2 -2
  61. package/dist/ambient-provenance.d.ts +2 -1
  62. package/dist/artifact-search.d.ts +2 -1
  63. package/dist/behavior-learner.d.ts +2 -1
  64. package/dist/behavior-signals.d.ts +2 -1
  65. package/dist/bootstrap.d.ts +10 -9
  66. package/dist/briefing-window.d.ts +3 -2
  67. package/dist/briefing.d.ts +3 -2
  68. package/dist/briefing.js +8 -8
  69. package/dist/buffer-surprise-report.d.ts +2 -1
  70. package/dist/buffer-turn-helpers.d.ts +2 -1
  71. package/dist/buffer.d.ts +3 -2
  72. package/dist/bulk-import/index.d.ts +4 -3
  73. package/dist/calibration.d.ts +2 -1
  74. package/dist/capabilities.d.ts +2 -1
  75. package/dist/{catalog-BmBXTtOs.d.ts → catalog-9X8WpZNO.d.ts} +1 -1
  76. package/dist/causal-behavior.d.ts +2 -1
  77. package/dist/causal-behavior.js +2 -2
  78. package/dist/causal-chain.js +2 -2
  79. package/dist/causal-consolidation.d.ts +2 -1
  80. package/dist/causal-consolidation.js +11 -11
  81. package/dist/causal-retrieval.js +2 -2
  82. package/dist/causal-trajectory-graph.d.ts +2 -1
  83. package/dist/causal-trajectory-graph.js +2 -2
  84. package/dist/causal-trajectory.js +1 -1
  85. package/dist/{chunk-DKZR56A3.js → chunk-227WJVPY.js} +2 -2
  86. package/dist/{chunk-RXS4SQ5S.js → chunk-2EHDPHMD.js} +2 -2
  87. package/dist/{chunk-ZPN6SSWA.js → chunk-2XJDAEAM.js} +2 -2
  88. package/dist/{chunk-J3JEW5CT.js → chunk-3GCK6ONU.js} +2 -2
  89. package/dist/{chunk-44HBCMOA.js → chunk-3ITTF7YH.js} +51 -51
  90. package/dist/{chunk-754GA2UE.js → chunk-3YKOFCKP.js} +11 -6
  91. package/dist/chunk-3YKOFCKP.js.map +1 -0
  92. package/dist/{chunk-GD7D7WP2.js → chunk-4UVDLNHQ.js} +2 -2
  93. package/dist/{chunk-IGUWU5BD.js → chunk-4WIKMOE3.js} +44 -22
  94. package/dist/chunk-4WIKMOE3.js.map +1 -0
  95. package/dist/{chunk-LVYO2HZJ.js → chunk-5HO3QBAD.js} +11 -6
  96. package/dist/chunk-5HO3QBAD.js.map +1 -0
  97. package/dist/{chunk-3QWF54M4.js → chunk-5P2KNFJZ.js} +149 -25
  98. package/dist/chunk-5P2KNFJZ.js.map +1 -0
  99. package/dist/{chunk-YVMTXBJJ.js → chunk-5YQ7RFSO.js} +2 -2
  100. package/dist/{chunk-4PJYD2L3.js → chunk-6TOWUN2R.js} +3 -3
  101. package/dist/{chunk-HINMCD7V.js → chunk-7NCUHD5U.js} +2 -2
  102. package/dist/{chunk-QHYSECIG.js → chunk-7ZMU4XQT.js} +2 -2
  103. package/dist/{chunk-GISV63M2.js → chunk-APZXA4WI.js} +2 -2
  104. package/dist/{chunk-2QSZNTDO.js → chunk-AU7Q3LSC.js} +4 -4
  105. package/dist/{chunk-G4MCAHMF.js → chunk-B75VCEX5.js} +5 -5
  106. package/dist/{chunk-DJZWNKFO.js → chunk-BE4Y6GK6.js} +2 -2
  107. package/dist/{chunk-E5WTGEWX.js → chunk-BEXFNGQ3.js} +3 -3
  108. package/dist/{chunk-SO73GYOZ.js → chunk-BFDOBESV.js} +2 -2
  109. package/dist/{chunk-OLT3YTDH.js → chunk-BIJAWZYW.js} +4 -4
  110. package/dist/{chunk-X5TGZAP2.js → chunk-BO4PWIJY.js} +3 -3
  111. package/dist/{chunk-JMAG7WZ7.js → chunk-BX6GW4KC.js} +2 -2
  112. package/dist/chunk-C5C7IJ4Q.js +27 -0
  113. package/dist/chunk-C5C7IJ4Q.js.map +1 -0
  114. package/dist/chunk-CC37E3QM.js +198 -0
  115. package/dist/chunk-CC37E3QM.js.map +1 -0
  116. package/dist/{chunk-X5PIDJ3L.js → chunk-DA4ZMCBU.js} +3 -3
  117. package/dist/{chunk-PEOFTEUC.js → chunk-DH3V7RCQ.js} +21 -13
  118. package/dist/chunk-DH3V7RCQ.js.map +1 -0
  119. package/dist/chunk-DXFG2VGN.js +50 -0
  120. package/dist/chunk-DXFG2VGN.js.map +1 -0
  121. package/dist/{chunk-4OFKZAJG.js → chunk-EAARGPWI.js} +2 -1
  122. package/dist/chunk-EAARGPWI.js.map +1 -0
  123. package/dist/{chunk-H6RSANGQ.js → chunk-ETZ7KKOS.js} +2 -2
  124. package/dist/{chunk-K4E3Y3ZX.js → chunk-G7VEQEMG.js} +2 -1
  125. package/dist/chunk-G7VEQEMG.js.map +1 -0
  126. package/dist/{chunk-SXQZMC7R.js → chunk-GR4C3FHT.js} +2 -2
  127. package/dist/{chunk-S6AHHQ6C.js → chunk-H5IIBGDM.js} +2 -2
  128. package/dist/{chunk-GFGQOZGG.js → chunk-HFRGCNFY.js} +10 -10
  129. package/dist/chunk-HRATODNO.js +28 -0
  130. package/dist/chunk-HRATODNO.js.map +1 -0
  131. package/dist/{chunk-MAG6M3B6.js → chunk-HTOWFFAI.js} +2 -2
  132. package/dist/chunk-HUSTM6PU.js +27 -0
  133. package/dist/chunk-HUSTM6PU.js.map +1 -0
  134. package/dist/{chunk-KAVQ5GYY.js → chunk-I4QAH4SY.js} +3 -3
  135. package/dist/{chunk-2MW3UQNX.js → chunk-I6DUKBUI.js} +2 -2
  136. package/dist/{chunk-VI637ILW.js → chunk-IN673LEP.js} +48 -15
  137. package/dist/chunk-IN673LEP.js.map +1 -0
  138. package/dist/{chunk-YHCBJULX.js → chunk-JGXMA6HL.js} +2 -2
  139. package/dist/{chunk-TA7UZZMW.js → chunk-JHTF22NQ.js} +2 -2
  140. package/dist/{chunk-ANN5VMHT.js → chunk-LDOQE34V.js} +2 -2
  141. package/dist/{chunk-MEW53VQJ.js → chunk-LDWIPYJ6.js} +7 -7
  142. package/dist/{chunk-227UFSEQ.js → chunk-LEPOP46W.js} +4 -4
  143. package/dist/{chunk-H3HOC6UT.js → chunk-LF6SHWVV.js} +2 -2
  144. package/dist/{chunk-QGUFN25Q.js → chunk-LJAP4KSW.js} +2 -2
  145. package/dist/{chunk-JAU4MRKB.js → chunk-LJNLLNEM.js} +2 -2
  146. package/dist/{chunk-6C57JBJ3.js → chunk-LUDXSSTW.js} +2 -2
  147. package/dist/{chunk-YJPFTF57.js → chunk-LWBSEYW3.js} +6 -6
  148. package/dist/chunk-M6RORUO5.js +59 -0
  149. package/dist/chunk-M6RORUO5.js.map +1 -0
  150. package/dist/{chunk-PRK4WTPU.js → chunk-M7DGN6JZ.js} +3 -3
  151. package/dist/{chunk-EN75MUTO.js → chunk-MNH2GM4O.js} +5 -5
  152. package/dist/{chunk-LK4TOYPU.js → chunk-NF3NMAG7.js} +2 -2
  153. package/dist/{chunk-M5UJJUON.js → chunk-NHLEFBE2.js} +10 -2
  154. package/dist/chunk-NHLEFBE2.js.map +1 -0
  155. package/dist/chunk-NN5CQTAJ.js +42 -0
  156. package/dist/chunk-NN5CQTAJ.js.map +1 -0
  157. package/dist/{chunk-VGTXHTWU.js → chunk-OASGWNYL.js} +2 -2
  158. package/dist/chunk-OEDW4ER7.js +62 -0
  159. package/dist/chunk-OEDW4ER7.js.map +1 -0
  160. package/dist/{chunk-C2JCVZWX.js → chunk-OLBZ2WGG.js} +2 -2
  161. package/dist/{chunk-Z3SQEEB6.js → chunk-OUKBMQ2O.js} +2 -2
  162. package/dist/{chunk-XXW32OL7.js → chunk-OYV6RKPM.js} +1 -1
  163. package/dist/chunk-OYV6RKPM.js.map +1 -0
  164. package/dist/{chunk-2Z3DG5CQ.js → chunk-P6GKRT2H.js} +1 -1
  165. package/dist/{chunk-A3WMMQAH.js → chunk-P7LVYPIX.js} +3 -3
  166. package/dist/{chunk-26JWBSWD.js → chunk-PGCZLHRB.js} +11 -3
  167. package/dist/chunk-PGCZLHRB.js.map +1 -0
  168. package/dist/{chunk-Y3WMJAZ3.js → chunk-QRDSXR3V.js} +2 -2
  169. package/dist/{chunk-NDE7CH6C.js → chunk-QUVWFZOU.js} +2 -2
  170. package/dist/{chunk-M5GBTETG.js → chunk-R7FXPG4T.js} +2 -2
  171. package/dist/chunk-RF2SMMPP.js +37 -0
  172. package/dist/chunk-RF2SMMPP.js.map +1 -0
  173. package/dist/{chunk-X66BHMAU.js → chunk-RJ57OOCD.js} +2 -2
  174. package/dist/chunk-S5G2LAL7.js +354 -0
  175. package/dist/chunk-S5G2LAL7.js.map +1 -0
  176. package/dist/{chunk-VOPOPTZ7.js → chunk-TRLCMLX7.js} +2 -2
  177. package/dist/{chunk-KZMFU7YL.js → chunk-V3HUBF7T.js} +2 -2
  178. package/dist/{chunk-KLL5SPER.js → chunk-VHAKBUBD.js} +2 -2
  179. package/dist/{chunk-WF2WCZCR.js → chunk-VYD63IFH.js} +3 -3
  180. package/dist/chunk-VZIAVM72.js +49 -0
  181. package/dist/chunk-VZIAVM72.js.map +1 -0
  182. package/dist/chunk-WTWQA7BB.js +28 -0
  183. package/dist/chunk-WTWQA7BB.js.map +1 -0
  184. package/dist/{chunk-J55NAXDH.js → chunk-X4FIZAVQ.js} +82 -40
  185. package/dist/chunk-X4FIZAVQ.js.map +1 -0
  186. package/dist/{chunk-3FXXFLVK.js → chunk-XFPHV65N.js} +2 -2
  187. package/dist/{chunk-JCUG7AXZ.js → chunk-XJJYSX6F.js} +4 -4
  188. package/dist/{chunk-NAZROP6I.js → chunk-XMIAU4CO.js} +2 -2
  189. package/dist/{chunk-LHGIBXVX.js → chunk-XQGFIAG7.js} +2 -2
  190. package/dist/{chunk-5TBO7CDR.js → chunk-YSSAGB2O.js} +4 -23
  191. package/dist/chunk-YSSAGB2O.js.map +1 -0
  192. package/dist/{chunk-IWO4HEOL.js → chunk-YWN3GYI2.js} +2 -2
  193. package/dist/{chunk-IIO4C3YL.js → chunk-Z33VUMKY.js} +3 -3
  194. package/dist/{cli-Bvy4jdBu.d.ts → cli-Dk-lM_tI.d.ts} +5 -5
  195. package/dist/cli.d.ts +15 -13
  196. package/dist/cli.js +80 -68
  197. package/dist/coding/export-okf-codegraph.d.ts +2 -1
  198. package/dist/coding/export-okf-codegraph.js +8 -8
  199. package/dist/coding/pre-action-gate.d.ts +2 -1
  200. package/dist/coding/pre-action-gate.js +2 -2
  201. package/dist/compounding/engine.d.ts +3 -2
  202. package/dist/compounding/engine.js +10 -9
  203. package/dist/compounding/preference-consolidator.d.ts +2 -1
  204. package/dist/compression-optimizer.d.ts +2 -1
  205. package/dist/config.d.ts +2 -1
  206. package/dist/config.js +6 -5
  207. package/dist/connectors/codex-materialize-runner.d.ts +2 -1
  208. package/dist/connectors/codex-materialize-runner.js +8 -8
  209. package/dist/connectors/codex-materialize.d.ts +2 -1
  210. package/dist/connectors/index.d.ts +2 -1
  211. package/dist/connectors/index.js +10 -9
  212. package/dist/consolidation-provenance-check.d.ts +3 -2
  213. package/dist/consolidation-undo.d.ts +3 -2
  214. package/dist/contradiction/index.d.ts +4 -3
  215. package/dist/converge-config.d.ts +2 -1
  216. package/dist/convergence-refresh.d.ts +3 -2
  217. package/dist/convergence-refresh.js +10 -10
  218. package/dist/conversation-index/backend.d.ts +2 -1
  219. package/dist/conversation-index/backend.js +2 -2
  220. package/dist/conversation-index/chunker.d.ts +2 -1
  221. package/dist/conversation-index/faiss-adapter.d.ts +2 -1
  222. package/dist/conversation-index/indexer.d.ts +2 -1
  223. package/dist/conversation-index/search.d.ts +2 -1
  224. package/dist/corpus-watermark.d.ts +2 -1
  225. package/dist/corpus-watermark.js +10 -10
  226. package/dist/cross-lingual-recall.d.ts +2 -1
  227. package/dist/day-summary.d.ts +2 -1
  228. package/dist/deep-recall-config.d.ts +32 -0
  229. package/dist/deep-recall-config.js +12 -0
  230. package/dist/deep-recall-http-glue.d.ts +170 -0
  231. package/dist/deep-recall-http-glue.js +31 -0
  232. package/dist/deep-recall-http-glue.js.map +1 -0
  233. package/dist/deep-recall-mcp-tools.d.ts +144 -0
  234. package/dist/deep-recall-mcp-tools.js +8 -0
  235. package/dist/deep-recall-mcp-tools.js.map +1 -0
  236. package/dist/deep-recall-policy-llm.d.ts +37 -0
  237. package/dist/deep-recall-policy-llm.js +19 -0
  238. package/dist/deep-recall-policy-llm.js.map +1 -0
  239. package/dist/deep-recall-renderer.d.ts +16 -0
  240. package/dist/deep-recall-renderer.js +8 -0
  241. package/dist/deep-recall-renderer.js.map +1 -0
  242. package/dist/deep-recall-seeds.d.ts +83 -0
  243. package/dist/deep-recall-seeds.js +8 -0
  244. package/dist/deep-recall-seeds.js.map +1 -0
  245. package/dist/deep-recall.d.ts +97 -0
  246. package/dist/deep-recall.js +13 -0
  247. package/dist/deep-recall.js.map +1 -0
  248. package/dist/delinearize.d.ts +2 -1
  249. package/dist/dependency-propagation-config.d.ts +2 -1
  250. package/dist/{dependency-propagation-delivery-BC3bCEet.d.ts → dependency-propagation-delivery-BZGUecZf.d.ts} +1 -1
  251. package/dist/direct-answer-wiring.d.ts +2 -1
  252. package/dist/direct-answer.d.ts +2 -1
  253. package/dist/embedding-fallback.d.ts +2 -1
  254. package/dist/enrichment/index.d.ts +2 -1
  255. package/dist/entity-origin-fields.d.ts +2 -1
  256. package/dist/entity-retrieval.d.ts +3 -2
  257. package/dist/entity-retrieval.js +8 -8
  258. package/dist/entity-schema.d.ts +2 -1
  259. package/dist/episodic-context.d.ts +2 -1
  260. package/dist/eval-trajectory-contracts.d.ts +2 -1
  261. package/dist/eval-trajectory-store.d.ts +2 -1
  262. package/dist/eval-trajectory.d.ts +2 -1
  263. package/dist/explicit-capture.d.ts +10 -9
  264. package/dist/external-wiki-access.d.ts +13 -11
  265. package/dist/external-wiki-access.js +42 -29
  266. package/dist/external-wiki-collection-registration.d.ts +2 -1
  267. package/dist/external-wiki-collection.d.ts +2 -1
  268. package/dist/external-wiki-mcp-tools.d.ts +13 -11
  269. package/dist/extraction-error-classification.d.ts +2 -1
  270. package/dist/extraction-faithfulness.d.ts +2 -1
  271. package/dist/extraction-judge-telemetry.d.ts +2 -1
  272. package/dist/extraction-judge-training.d.ts +2 -1
  273. package/dist/extraction-judge.d.ts +2 -1
  274. package/dist/extraction-liveness.d.ts +2 -1
  275. package/dist/extraction-normalization.d.ts +2 -1
  276. package/dist/extraction-prompt.d.ts +2 -1
  277. package/dist/extraction-source-grounding-rules.d.ts +2 -1
  278. package/dist/extraction-source-grounding.d.ts +2 -1
  279. package/dist/extraction.d.ts +2 -1
  280. package/dist/extraction.js +14 -13
  281. package/dist/fallback-llm.d.ts +2 -1
  282. package/dist/graph-dashboard-diff.d.ts +2 -1
  283. package/dist/graph-dashboard-key.d.ts +2 -1
  284. package/dist/graph-dashboard-parser.d.ts +2 -1
  285. package/dist/{graph-edge-decay-DGTBFALQ.js → graph-edge-decay-FXGELBFA.js} +4 -4
  286. package/dist/graph-edge-decay-FXGELBFA.js.map +1 -0
  287. package/dist/graph-edge-reinforcement.d.ts +2 -1
  288. package/dist/graph-path-reconstruction.d.ts +2 -1
  289. package/dist/graph-path-scoring.d.ts +2 -1
  290. package/dist/graph-snapshot.d.ts +2 -1
  291. package/dist/graph-snapshot.js +3 -3
  292. package/dist/graph.d.ts +2 -1
  293. package/dist/graph.js +2 -2
  294. package/dist/harmonic-construction.js +3 -3
  295. package/dist/harmonic-retrieval.d.ts +38 -2
  296. package/dist/harmonic-retrieval.js +12 -3
  297. package/dist/importance.d.ts +2 -1
  298. package/dist/importers/index.d.ts +2 -1
  299. package/dist/in-flight-reads.d.ts +2 -1
  300. package/dist/{index-D4hS9uxK.d.ts → index-B4iTvT-w.d.ts} +2 -2
  301. package/dist/index.d.ts +701 -699
  302. package/dist/index.js +118 -106
  303. package/dist/intent.d.ts +2 -1
  304. package/dist/lcm/engine.d.ts +2 -1
  305. package/dist/lcm/index.d.ts +2 -1
  306. package/dist/lcm/tools.d.ts +2 -1
  307. package/dist/lifecycle.d.ts +2 -1
  308. package/dist/live-connectors-runner.d.ts +2 -1
  309. package/dist/local-llm.d.ts +2 -1
  310. package/dist/local-model-endpoint.d.ts +2 -1
  311. package/dist/location/index.d.ts +4 -3
  312. package/dist/location/index.js +10 -10
  313. package/dist/maintenance/memory-governance.d.ts +2 -1
  314. package/dist/maintenance/memory-governance.js +8 -8
  315. package/dist/maintenance/rebuild-memory-lifecycle-ledger.d.ts +3 -2
  316. package/dist/maintenance/rebuild-memory-lifecycle-ledger.js +8 -8
  317. package/dist/maintenance/rebuild-memory-projection.d.ts +3 -2
  318. package/dist/maintenance/rebuild-memory-projection.js +9 -9
  319. package/dist/{maintenance-BRcc3Hx8.d.ts → maintenance-BBpNqEeJ.d.ts} +3 -3
  320. package/dist/mcp-memory-inspector-app.d.ts +13 -11
  321. package/dist/mcp-read-only-tools.js +1 -1
  322. package/dist/memory-action-policy.d.ts +2 -1
  323. package/dist/memory-cache.d.ts +2 -1
  324. package/dist/memory-controller.d.ts +2 -1
  325. package/dist/memory-lifecycle-ledger-utils.d.ts +2 -1
  326. package/dist/memory-projection-store.d.ts +2 -1
  327. package/dist/memory-provenance.d.ts +2 -1
  328. package/dist/memory-snapshot.d.ts +2 -1
  329. package/dist/memory-subject-cli.d.ts +13 -11
  330. package/dist/memory-subject.d.ts +13 -11
  331. package/dist/memory-worth-outcomes.d.ts +3 -2
  332. package/dist/models-json.d.ts +2 -1
  333. package/dist/namespaces/migrate.d.ts +4 -3
  334. package/dist/namespaces/migrate.js +9 -9
  335. package/dist/namespaces/principal.d.ts +2 -1
  336. package/dist/namespaces/search.d.ts +2 -1
  337. package/dist/namespaces/search.js +4 -4
  338. package/dist/namespaces/storage.d.ts +4 -3
  339. package/dist/namespaces/storage.js +8 -8
  340. package/dist/native-knowledge.d.ts +2 -1
  341. package/dist/offline-sync-impression-drain.d.ts +2 -1
  342. package/dist/offline-sync.js +2 -2
  343. package/dist/operator-doctor-corpus.d.ts +2 -1
  344. package/dist/operator-doctor-corpus.js +11 -11
  345. package/dist/operator-doctor-replica.d.ts +2 -1
  346. package/dist/operator-toolkit.d.ts +4 -3
  347. package/dist/operator-toolkit.js +24 -23
  348. package/dist/orchestration/compression-guideline-coordinator.d.ts +3 -2
  349. package/dist/orchestration/maintenance.d.ts +5 -4
  350. package/dist/orchestration/maintenance.js +16 -16
  351. package/dist/{orchestrator-Btq9lzAN.d.ts → orchestrator-DglY1H0w.d.ts} +8 -8
  352. package/dist/orchestrator.d.ts +10 -9
  353. package/dist/orchestrator.js +101 -89
  354. package/dist/patterns-cli.d.ts +2 -1
  355. package/dist/{pipeline-CZoNdFb5.d.ts → pipeline-C7qRsy6g.d.ts} +1 -1
  356. package/dist/policy-runtime.d.ts +2 -1
  357. package/dist/proactive-contention.d.ts +2 -1
  358. package/dist/provenance.d.ts +2 -1
  359. package/dist/{public-http-2MyshWxl.d.ts → public-http-CPpCsi35.d.ts} +1 -1
  360. package/dist/{qmd-VIjSCKIE.d.ts → qmd-YRLTa3AE.d.ts} +1 -1
  361. package/dist/qmd-preflight.d.ts +3 -2
  362. package/dist/qmd-recall-cache.d.ts +2 -1
  363. package/dist/qmd.d.ts +3 -2
  364. package/dist/recall-concurrency-config.d.ts +2 -1
  365. package/dist/recall-deep-expand-select.js +4 -44
  366. package/dist/recall-deep-expand-select.js.map +1 -1
  367. package/dist/recall-deep-frontier.js +4 -23
  368. package/dist/recall-deep-frontier.js.map +1 -1
  369. package/dist/recall-deep-rewrite.js +4 -23
  370. package/dist/recall-deep-rewrite.js.map +1 -1
  371. package/dist/recall-disclosure-escalation.d.ts +2 -1
  372. package/dist/recall-explain-renderer.d.ts +2 -1
  373. package/dist/recall-explain-renderer.js +3 -3
  374. package/dist/recall-memory-map.d.ts +2 -1
  375. package/dist/recall-navigate-access.d.ts +2 -1
  376. package/dist/recall-navigate-access.js +2 -2
  377. package/dist/recall-navigate-disclosure.d.ts +2 -1
  378. package/dist/recall-navigate-disclosure.js +1 -1
  379. package/dist/recall-navigate.d.ts +2 -1
  380. package/dist/recall-navigate.js +2 -2
  381. package/dist/recall-planner-llm.d.ts +2 -1
  382. package/dist/recall-state.d.ts +2 -1
  383. package/dist/recall-tag-filter.d.ts +2 -1
  384. package/dist/recall-timings.d.ts +2 -1
  385. package/dist/recall-xray-cli.d.ts +2 -1
  386. package/dist/recall-xray-cli.js +4 -4
  387. package/dist/recall-xray-renderer.d.ts +2 -1
  388. package/dist/recall-xray-renderer.js +3 -3
  389. package/dist/recall-xray.d.ts +2 -1
  390. package/dist/recall-xray.js +2 -2
  391. package/dist/reconcile/cursor.d.ts +2 -1
  392. package/dist/reconcile/manifest.d.ts +2 -1
  393. package/dist/reconcile/plan.d.ts +2 -1
  394. package/dist/replay/normalizers/chatgpt.d.ts +2 -1
  395. package/dist/replay/normalizers/claude.d.ts +2 -1
  396. package/dist/replay/normalizers/openclaw.d.ts +2 -1
  397. package/dist/replay/normalizers/shared.d.ts +2 -1
  398. package/dist/replay/runner.d.ts +2 -1
  399. package/dist/replay/types.d.ts +2 -1
  400. package/dist/replica-divergence.d.ts +2 -1
  401. package/dist/replica-peers-config.d.ts +2 -1
  402. package/dist/resolve-auth-token.d.ts +2 -1
  403. package/dist/resume-bundles.js +7 -6
  404. package/dist/retrieval-agents.d.ts +3 -2
  405. package/dist/retrieval-tiers.d.ts +2 -1
  406. package/dist/routing/engine.d.ts +2 -1
  407. package/dist/routing/store.d.ts +2 -1
  408. package/dist/runtime/http-transport.d.ts +4 -0
  409. package/dist/runtime/http-transport.js +10 -0
  410. package/dist/runtime/http-transport.js.map +1 -0
  411. package/dist/salvage-envelope.d.ts +2 -1
  412. package/dist/schemas.d.ts +176 -176
  413. package/dist/{scope-profiles-DqbxQXIS.d.ts → scope-profiles-BVvqVzJX.d.ts} +1 -1
  414. package/dist/search/embed-helper.d.ts +2 -1
  415. package/dist/search/factory.d.ts +2 -1
  416. package/dist/search/factory.js +3 -3
  417. package/dist/search/index.d.ts +2 -1
  418. package/dist/search/index.js +3 -3
  419. package/dist/search/lancedb-backend.d.ts +2 -1
  420. package/dist/search/meilisearch-backend.d.ts +2 -1
  421. package/dist/search/noop-backend.d.ts +2 -1
  422. package/dist/search/orama-backend.d.ts +2 -1
  423. package/dist/search/port.d.ts +2 -1
  424. package/dist/search/remote-backend.d.ts +2 -1
  425. package/dist/{semantic-consolidation-DW3rEUoW.d.ts → semantic-consolidation-BzCI6Kuu.d.ts} +1 -1
  426. package/dist/semantic-consolidation.d.ts +3 -2
  427. package/dist/semantic-consolidation.js +9 -9
  428. package/dist/semantic-rule-promotion.js +8 -8
  429. package/dist/semantic-rule-verifier.d.ts +2 -1
  430. package/dist/semantic-rule-verifier.js +8 -8
  431. package/dist/{service-B2vJU_Bx.d.ts → service-DQ3Gscy5.d.ts} +2 -2
  432. package/dist/session-observer-bands.d.ts +2 -1
  433. package/dist/session-observer-state.d.ts +2 -1
  434. package/dist/shared-context/manager.d.ts +43 -7
  435. package/dist/shared-context/manager.js +2 -1
  436. package/dist/signal.d.ts +2 -1
  437. package/dist/source-agent-qualifier.d.ts +2 -1
  438. package/dist/source-agent-qualifier.js +12 -11
  439. package/dist/standup/build.js +8 -8
  440. package/dist/{storage-6fn7BPmb.d.ts → storage-DmTbQdD0.d.ts} +1 -1
  441. package/dist/storage.d.ts +3 -2
  442. package/dist/storage.js +7 -7
  443. package/dist/subject-config.d.ts +2 -1
  444. package/dist/summarizer.d.ts +2 -1
  445. package/dist/summary-snapshot.d.ts +2 -1
  446. package/dist/support-passport/index.d.ts +16 -14
  447. package/dist/support-passport/index.js +44 -31
  448. package/dist/temporal-supersession.d.ts +3 -2
  449. package/dist/temporal-timeline-recall.d.ts +2 -1
  450. package/dist/temporal-validity.d.ts +2 -1
  451. package/dist/threading.d.ts +2 -1
  452. package/dist/tier-migration.d.ts +3 -2
  453. package/dist/tier-routing.d.ts +2 -1
  454. package/dist/topics.d.ts +2 -1
  455. package/dist/transcript.d.ts +2 -1
  456. package/dist/transfer/export-okf.d.ts +2 -1
  457. package/dist/transfer/export-okf.js +9 -9
  458. package/dist/transfer/types.d.ts +78 -78
  459. package/dist/trust-score-stage.d.ts +2 -1
  460. package/dist/trust-score.d.ts +2 -1
  461. package/dist/{types-eM7QIcX2.d.ts → types-CLRTESSD.d.ts} +3 -1
  462. package/dist/types.d.ts +2 -1
  463. package/dist/types.js +1 -1
  464. package/dist/utility-runtime.d.ts +2 -1
  465. package/dist/verified-recall.js +8 -8
  466. package/dist/who-knows-cli.d.ts +13 -11
  467. package/dist/who-knows-cli.js +9 -9
  468. package/dist/who-knows.d.ts +13 -11
  469. package/dist/who-knows.js +8 -8
  470. package/dist/write-envelope.d.ts +2 -1
  471. package/package.json +12 -2
  472. package/src/access-boundary.ts +1 -0
  473. package/src/access-http.ts +5 -5
  474. package/src/access-mcp-output-schemas.ts +1 -0
  475. package/src/access-mcp.ts +3 -3
  476. package/src/access-operations-batch.ts +3 -1
  477. package/src/access-schema.ts +12 -0
  478. package/src/access-service.ts +162 -5
  479. package/src/access-surface-catalog.ts +2 -0
  480. package/src/cli/deep-recall-commands.ts +60 -0
  481. package/src/cli.ts +2 -2
  482. package/src/config.test.ts +19 -0
  483. package/src/config.ts +7 -0
  484. package/src/deep-recall-config.ts +83 -0
  485. package/src/deep-recall-http-glue.ts +75 -0
  486. package/src/deep-recall-mcp-tools.ts +33 -0
  487. package/src/deep-recall-policy-llm.ts +65 -0
  488. package/src/deep-recall-renderer.ts +41 -0
  489. package/src/deep-recall-seeds.ts +134 -0
  490. package/src/deep-recall-surface.test.ts +902 -0
  491. package/src/deep-recall.test.ts +348 -0
  492. package/src/deep-recall.ts +572 -0
  493. package/src/harmonic-retrieval.ts +78 -25
  494. package/src/mcp-read-only-tools.ts +1 -0
  495. package/src/shared-context/envelope-at.test.ts +23 -0
  496. package/src/shared-context/envelope-at.ts +12 -6
  497. package/src/shared-context/envelope-io.ts +184 -0
  498. package/src/shared-context/envelope-wiring.test.ts +193 -0
  499. package/src/shared-context/governance.ts +28 -9
  500. package/src/shared-context/iso-instant.ts +43 -0
  501. package/src/shared-context/manager.ts +74 -15
  502. package/src/shared-context/provenance.ts +3 -26
  503. package/src/shared-context/write-origin.test.ts +145 -0
  504. package/src/types.ts +3 -1
  505. package/dist/chunk-26JWBSWD.js.map +0 -1
  506. package/dist/chunk-3QWF54M4.js.map +0 -1
  507. package/dist/chunk-4OFKZAJG.js.map +0 -1
  508. package/dist/chunk-5TBO7CDR.js.map +0 -1
  509. package/dist/chunk-754GA2UE.js.map +0 -1
  510. package/dist/chunk-IGUWU5BD.js.map +0 -1
  511. package/dist/chunk-J55NAXDH.js.map +0 -1
  512. package/dist/chunk-K4E3Y3ZX.js.map +0 -1
  513. package/dist/chunk-LVYO2HZJ.js.map +0 -1
  514. package/dist/chunk-M5UJJUON.js.map +0 -1
  515. package/dist/chunk-PEOFTEUC.js.map +0 -1
  516. package/dist/chunk-VI637ILW.js.map +0 -1
  517. package/dist/chunk-XXW32OL7.js.map +0 -1
  518. /package/dist/{chunk-DKZR56A3.js.map → chunk-227WJVPY.js.map} +0 -0
  519. /package/dist/{chunk-RXS4SQ5S.js.map → chunk-2EHDPHMD.js.map} +0 -0
  520. /package/dist/{chunk-ZPN6SSWA.js.map → chunk-2XJDAEAM.js.map} +0 -0
  521. /package/dist/{chunk-J3JEW5CT.js.map → chunk-3GCK6ONU.js.map} +0 -0
  522. /package/dist/{chunk-44HBCMOA.js.map → chunk-3ITTF7YH.js.map} +0 -0
  523. /package/dist/{chunk-GD7D7WP2.js.map → chunk-4UVDLNHQ.js.map} +0 -0
  524. /package/dist/{chunk-YVMTXBJJ.js.map → chunk-5YQ7RFSO.js.map} +0 -0
  525. /package/dist/{chunk-4PJYD2L3.js.map → chunk-6TOWUN2R.js.map} +0 -0
  526. /package/dist/{chunk-HINMCD7V.js.map → chunk-7NCUHD5U.js.map} +0 -0
  527. /package/dist/{chunk-QHYSECIG.js.map → chunk-7ZMU4XQT.js.map} +0 -0
  528. /package/dist/{chunk-GISV63M2.js.map → chunk-APZXA4WI.js.map} +0 -0
  529. /package/dist/{chunk-2QSZNTDO.js.map → chunk-AU7Q3LSC.js.map} +0 -0
  530. /package/dist/{chunk-G4MCAHMF.js.map → chunk-B75VCEX5.js.map} +0 -0
  531. /package/dist/{chunk-DJZWNKFO.js.map → chunk-BE4Y6GK6.js.map} +0 -0
  532. /package/dist/{chunk-E5WTGEWX.js.map → chunk-BEXFNGQ3.js.map} +0 -0
  533. /package/dist/{chunk-SO73GYOZ.js.map → chunk-BFDOBESV.js.map} +0 -0
  534. /package/dist/{chunk-OLT3YTDH.js.map → chunk-BIJAWZYW.js.map} +0 -0
  535. /package/dist/{chunk-X5TGZAP2.js.map → chunk-BO4PWIJY.js.map} +0 -0
  536. /package/dist/{chunk-JMAG7WZ7.js.map → chunk-BX6GW4KC.js.map} +0 -0
  537. /package/dist/{chunk-X5PIDJ3L.js.map → chunk-DA4ZMCBU.js.map} +0 -0
  538. /package/dist/{chunk-H6RSANGQ.js.map → chunk-ETZ7KKOS.js.map} +0 -0
  539. /package/dist/{chunk-SXQZMC7R.js.map → chunk-GR4C3FHT.js.map} +0 -0
  540. /package/dist/{chunk-S6AHHQ6C.js.map → chunk-H5IIBGDM.js.map} +0 -0
  541. /package/dist/{chunk-GFGQOZGG.js.map → chunk-HFRGCNFY.js.map} +0 -0
  542. /package/dist/{chunk-MAG6M3B6.js.map → chunk-HTOWFFAI.js.map} +0 -0
  543. /package/dist/{chunk-KAVQ5GYY.js.map → chunk-I4QAH4SY.js.map} +0 -0
  544. /package/dist/{chunk-2MW3UQNX.js.map → chunk-I6DUKBUI.js.map} +0 -0
  545. /package/dist/{chunk-YHCBJULX.js.map → chunk-JGXMA6HL.js.map} +0 -0
  546. /package/dist/{chunk-TA7UZZMW.js.map → chunk-JHTF22NQ.js.map} +0 -0
  547. /package/dist/{chunk-ANN5VMHT.js.map → chunk-LDOQE34V.js.map} +0 -0
  548. /package/dist/{chunk-MEW53VQJ.js.map → chunk-LDWIPYJ6.js.map} +0 -0
  549. /package/dist/{chunk-227UFSEQ.js.map → chunk-LEPOP46W.js.map} +0 -0
  550. /package/dist/{chunk-H3HOC6UT.js.map → chunk-LF6SHWVV.js.map} +0 -0
  551. /package/dist/{chunk-QGUFN25Q.js.map → chunk-LJAP4KSW.js.map} +0 -0
  552. /package/dist/{chunk-JAU4MRKB.js.map → chunk-LJNLLNEM.js.map} +0 -0
  553. /package/dist/{chunk-6C57JBJ3.js.map → chunk-LUDXSSTW.js.map} +0 -0
  554. /package/dist/{chunk-YJPFTF57.js.map → chunk-LWBSEYW3.js.map} +0 -0
  555. /package/dist/{chunk-PRK4WTPU.js.map → chunk-M7DGN6JZ.js.map} +0 -0
  556. /package/dist/{chunk-EN75MUTO.js.map → chunk-MNH2GM4O.js.map} +0 -0
  557. /package/dist/{chunk-LK4TOYPU.js.map → chunk-NF3NMAG7.js.map} +0 -0
  558. /package/dist/{chunk-VGTXHTWU.js.map → chunk-OASGWNYL.js.map} +0 -0
  559. /package/dist/{chunk-C2JCVZWX.js.map → chunk-OLBZ2WGG.js.map} +0 -0
  560. /package/dist/{chunk-Z3SQEEB6.js.map → chunk-OUKBMQ2O.js.map} +0 -0
  561. /package/dist/{chunk-2Z3DG5CQ.js.map → chunk-P6GKRT2H.js.map} +0 -0
  562. /package/dist/{chunk-A3WMMQAH.js.map → chunk-P7LVYPIX.js.map} +0 -0
  563. /package/dist/{chunk-Y3WMJAZ3.js.map → chunk-QRDSXR3V.js.map} +0 -0
  564. /package/dist/{chunk-NDE7CH6C.js.map → chunk-QUVWFZOU.js.map} +0 -0
  565. /package/dist/{chunk-M5GBTETG.js.map → chunk-R7FXPG4T.js.map} +0 -0
  566. /package/dist/{chunk-X66BHMAU.js.map → chunk-RJ57OOCD.js.map} +0 -0
  567. /package/dist/{chunk-VOPOPTZ7.js.map → chunk-TRLCMLX7.js.map} +0 -0
  568. /package/dist/{chunk-KZMFU7YL.js.map → chunk-V3HUBF7T.js.map} +0 -0
  569. /package/dist/{chunk-KLL5SPER.js.map → chunk-VHAKBUBD.js.map} +0 -0
  570. /package/dist/{chunk-WF2WCZCR.js.map → chunk-VYD63IFH.js.map} +0 -0
  571. /package/dist/{chunk-3FXXFLVK.js.map → chunk-XFPHV65N.js.map} +0 -0
  572. /package/dist/{chunk-JCUG7AXZ.js.map → chunk-XJJYSX6F.js.map} +0 -0
  573. /package/dist/{chunk-NAZROP6I.js.map → chunk-XMIAU4CO.js.map} +0 -0
  574. /package/dist/{chunk-LHGIBXVX.js.map → chunk-XQGFIAG7.js.map} +0 -0
  575. /package/dist/{chunk-IWO4HEOL.js.map → chunk-YWN3GYI2.js.map} +0 -0
  576. /package/dist/{chunk-IIO4C3YL.js.map → chunk-Z33VUMKY.js.map} +0 -0
  577. /package/dist/{graph-edge-decay-DGTBFALQ.js.map → deep-recall-config.js.map} +0 -0
@@ -2,14 +2,6 @@ import {
2
2
  resolveCueAnchorStoreDir,
3
3
  validateCueAnchor
4
4
  } from "./chunk-ACPCA4NO.js";
5
- import {
6
- HARMONIC_SOURCE_MEMORY_INSERTED_AT_KEY,
7
- resolveAbstractionNodeStoreDir,
8
- validateAbstractionNode
9
- } from "./chunk-DJUKBGAD.js";
10
- import {
11
- compareDeterministicStrings
12
- } from "./chunk-G73MCJKL.js";
13
5
  import {
14
6
  isValidityExpiredNow
15
7
  } from "./chunk-6CIAGZ6X.js";
@@ -21,12 +13,23 @@ import {
21
13
  inferMemoryStatus,
22
14
  toMemoryPathRel
23
15
  } from "./chunk-7RJUVTVF.js";
16
+ import {
17
+ isSupportPassportPrivateMemory
18
+ } from "./chunk-EEOUMG3J.js";
24
19
  import {
25
20
  stripAttributesSuffix
26
21
  } from "./chunk-JDSVLVCG.js";
27
22
  import {
28
23
  throwIfAborted
29
24
  } from "./chunk-BTTPKDIL.js";
25
+ import {
26
+ HARMONIC_SOURCE_MEMORY_INSERTED_AT_KEY,
27
+ resolveAbstractionNodeStoreDir,
28
+ validateAbstractionNode
29
+ } from "./chunk-DJUKBGAD.js";
30
+ import {
31
+ compareDeterministicStrings
32
+ } from "./chunk-G73MCJKL.js";
30
33
  import {
31
34
  isRecord
32
35
  } from "./chunk-A2IYSXDQ.js";
@@ -75,7 +78,11 @@ function projectSourceBackedNode(node, sourceMemories, memoryDir, temporalExpire
75
78
  if (sourceMemoryIds.length === 0) return node;
76
79
  const activeSourceMemoryIds = sourceMemoryIds.filter((memoryId) => {
77
80
  const memory = sourceMemories.get(memoryId);
78
- return memory !== void 0 && inferMemoryStatus(memory.frontmatter, toMemoryPathRel(memoryDir, memory.path)) === "active" && (temporalExpiredInInjection || !isValidityExpiredNow(memory.frontmatter, nowMs));
81
+ return memory !== void 0 && // #2332: a private support-passport record leaves the eligible set the
82
+ // same way a rejected one does — a node title or anchor attribution
83
+ // rebuilt from it would leak governed metadata into the deep-recall
84
+ // frontier (and every other graph reader) before any content check runs.
85
+ !isSupportPassportPrivateMemory(memory) && inferMemoryStatus(memory.frontmatter, toMemoryPathRel(memoryDir, memory.path)) === "active" && (temporalExpiredInInjection || !isValidityExpiredNow(memory.frontmatter, nowMs));
79
86
  });
80
87
  if (activeSourceMemoryIds.length === 0) return null;
81
88
  const insertedAtById = parseSourceMemoryInsertedAt(node);
@@ -204,16 +211,14 @@ async function readCueAnchors(options) {
204
211
  }
205
212
  return anchors;
206
213
  }
207
- async function searchHarmonicRetrieval(options) {
214
+ async function readProjectedHarmonicGraph(options) {
208
215
  throwIfAborted(options.abortSignal, "harmonic retrieval aborted");
209
- const queryTokens = new Set(normalizeRecallTokens(options.query, ["what", "which"]));
210
- if (queryTokens.size === 0 || options.maxResults <= 0) return [];
211
216
  const nodes = await readAbstractionNodes(options);
212
- const sourceBackedNodes = nodes.filter((node) => (node.sourceMemoryIds?.length ?? 0) > 0);
213
- const sourceMemories = sourceBackedNodes.length > 0 ? await readSourceMemories(options) : /* @__PURE__ */ new Map();
217
+ const sourceBacked = nodes.some((node) => (node.sourceMemoryIds?.length ?? 0) > 0);
218
+ const sourceMemories = sourceBacked ? await readSourceMemories(options) : /* @__PURE__ */ new Map();
219
+ const nowMs = options.nowMs ?? Date.now();
214
220
  const legacyCompatibleNodeRefs = /* @__PURE__ */ new Set();
215
- const nowMs = Date.now();
216
- const eligibleNodes = nodes.flatMap((node) => {
221
+ const projectedNodes = nodes.flatMap((node) => {
217
222
  const projected = projectSourceBackedNode(
218
223
  node,
219
224
  sourceMemories,
@@ -226,6 +231,24 @@ async function searchHarmonicRetrieval(options) {
226
231
  }
227
232
  return projected ? [projected] : [];
228
233
  });
234
+ if (!options.anchorsEnabled) return { nodes: projectedNodes, anchors: [] };
235
+ throwIfAborted(options.abortSignal, "harmonic retrieval aborted");
236
+ const nodeIndex = new Map(projectedNodes.map((node) => [node.nodeId, node]));
237
+ const anchors = (await readCueAnchors(options)).flatMap((anchor) => {
238
+ throwIfAborted(options.abortSignal, "harmonic retrieval aborted");
239
+ const nodeRefs = anchor.nodeRefs.filter((nodeRef) => {
240
+ const node = nodeIndex.get(nodeRef);
241
+ return node !== void 0 && anchorMatchesProjectedNode(anchor, nodeRef, node, legacyCompatibleNodeRefs.has(nodeRef));
242
+ });
243
+ return nodeRefs.length > 0 ? [{ ...anchor, nodeRefs }] : [];
244
+ });
245
+ return { nodes: projectedNodes, anchors };
246
+ }
247
+ async function searchHarmonicRetrieval(options) {
248
+ throwIfAborted(options.abortSignal, "harmonic retrieval aborted");
249
+ const queryTokens = new Set(normalizeRecallTokens(options.query, ["what", "which"]));
250
+ if (queryTokens.size === 0 || options.maxResults <= 0) return [];
251
+ const { nodes: eligibleNodes, anchors } = await readProjectedHarmonicGraph(options);
229
252
  const candidates = /* @__PURE__ */ new Map();
230
253
  for (const node of eligibleNodes) {
231
254
  throwIfAborted(options.abortSignal, "harmonic retrieval aborted");
@@ -241,14 +264,10 @@ async function searchHarmonicRetrieval(options) {
241
264
  }
242
265
  if (options.anchorsEnabled) {
243
266
  throwIfAborted(options.abortSignal, "harmonic retrieval aborted");
244
- const anchors = await readCueAnchors(options);
245
267
  const nodeIndex = new Map(eligibleNodes.map((node) => [node.nodeId, node]));
246
268
  for (const anchor of anchors) {
247
269
  throwIfAborted(options.abortSignal, "harmonic retrieval aborted");
248
- const eligibleNodeRefs = anchor.nodeRefs.filter((nodeRef) => {
249
- const node = nodeIndex.get(nodeRef);
250
- return node !== void 0 && anchorMatchesProjectedNode(anchor, nodeRef, node, legacyCompatibleNodeRefs.has(nodeRef));
251
- });
270
+ const eligibleNodeRefs = anchor.nodeRefs;
252
271
  const eligibleNodeTags = new Set(eligibleNodeRefs.flatMap((nodeRef) => nodeIndex.get(nodeRef)?.tags ?? []));
253
272
  const eligibleAnchorTags = anchor.tags?.filter((tag) => eligibleNodeTags.has(tag)) ?? [];
254
273
  const { score, matchedFields } = scoreAnchor(anchor, queryTokens, eligibleAnchorTags);
@@ -294,6 +313,9 @@ async function searchHarmonicRetrieval(options) {
294
313
  }
295
314
 
296
315
  export {
316
+ readAbstractionNodes,
317
+ readCueAnchors,
318
+ readProjectedHarmonicGraph,
297
319
  searchHarmonicRetrieval
298
320
  };
299
- //# sourceMappingURL=chunk-IGUWU5BD.js.map
321
+ //# sourceMappingURL=chunk-4WIKMOE3.js.map
@@ -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 { isSupportPassportPrivateMemory } from \"./support-passport/card-projection.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 // #2332: a private support-passport record leaves the eligible set the\n // same way a rejected one does — a node title or anchor attribution\n // rebuilt from it would leak governed metadata into the deep-recall\n // frontier (and every other graph reader) before any content check runs.\n !isSupportPassportPrivateMemory(memory) &&\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\nexport async 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\nexport async 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 interface ProjectedHarmonicGraph {\n nodes: AbstractionNode[];\n anchors: CueAnchor[];\n}\n\n/**\n * Read nodes + anchors and project BOTH against the namespace's current active\n * memories. This is the single projection every graph reader shares: a raw\n * `readAbstractionNodes` / `readCueAnchors` pair still carries the stored title,\n * summary, tags, and anchor attribution of a memory that was later rejected,\n * quarantined, or otherwise moved out of the active set, so a second reader\n * that skipped the projection could leak governed metadata even when the\n * memory itself is excluded from the final results.\n *\n * - A node whose every source memory left the active set is dropped.\n * - A surviving node's title/summary/tags/entityRefs are rebuilt from its\n * active sources only.\n * - An anchor keeps a node reference only while its attribution runs through\n * one of that node's surviving active sources, and is dropped once no\n * reference survives.\n */\nexport async function readProjectedHarmonicGraph(options: {\n memoryDir: string;\n abstractionNodeStoreDir?: string;\n anchorsEnabled: boolean;\n abortSignal?: AbortSignal;\n temporalExpiredInInjection?: boolean;\n nowMs?: number;\n}): Promise<ProjectedHarmonicGraph> {\n throwIfAborted(options.abortSignal, \"harmonic retrieval aborted\");\n const nodes = await readAbstractionNodes(options);\n const sourceBacked = nodes.some((node) => (node.sourceMemoryIds?.length ?? 0) > 0);\n const sourceMemories: SourceMemoryMap = sourceBacked\n ? await readSourceMemories(options)\n : new Map<string, MemoryFile>();\n const nowMs = options.nowMs ?? Date.now();\n // A node whose full stored source set survived projection keeps legacy\n // anchor attribution (an anchor written before per-node source ids existed).\n const legacyCompatibleNodeRefs = new Set<string>();\n const projectedNodes = 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 if (!options.anchorsEnabled) return { nodes: projectedNodes, anchors: [] };\n throwIfAborted(options.abortSignal, \"harmonic retrieval aborted\");\n const nodeIndex = new Map(projectedNodes.map((node) => [node.nodeId, node]));\n const anchors = (await readCueAnchors(options)).flatMap((anchor) => {\n throwIfAborted(options.abortSignal, \"harmonic retrieval aborted\");\n const nodeRefs = 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 return nodeRefs.length > 0 ? [{ ...anchor, nodeRefs }] : [];\n });\n return { nodes: projectedNodes, 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 // One projection for every graph reader: nodes and anchors both arrive\n // already narrowed to the namespace's current active memories.\n const { nodes: eligibleNodes, anchors } = await readProjectedHarmonicGraph(options);\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 nodeIndex = new Map(eligibleNodes.map((node) => [node.nodeId, node]));\n for (const anchor of anchors) {\n throwIfAborted(options.abortSignal, \"harmonic retrieval aborted\");\n // `nodeRefs` are the projection's surviving references already.\n const eligibleNodeRefs = anchor.nodeRefs;\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":[]}
@@ -1,9 +1,12 @@
1
1
  import {
2
2
  MCP_READ_ONLY_TOOL_SUFFIXES
3
- } from "./chunk-4OFKZAJG.js";
3
+ } from "./chunk-EAARGPWI.js";
4
4
  import {
5
5
  EXTERNAL_WIKI_MCP_TOOLS
6
6
  } from "./chunk-A5KNZSNA.js";
7
+ import {
8
+ DEEP_RECALL_MCP_TOOLS
9
+ } from "./chunk-HUSTM6PU.js";
7
10
  import {
8
11
  buildCitationGuidance
9
12
  } from "./chunk-D24OXEPB.js";
@@ -23,7 +26,7 @@ import {
23
26
  } from "./chunk-E4RMZGRS.js";
24
27
  import {
25
28
  validateRequest
26
- } from "./chunk-M5UJJUON.js";
29
+ } from "./chunk-NHLEFBE2.js";
27
30
  import {
28
31
  MCP_ADMIN_OPS_MIGRATED_OPERATIONS,
29
32
  MCP_ADMIN_OPS_TOOLS,
@@ -31,13 +34,13 @@ import {
31
34
  } from "./chunk-AB3A7EFH.js";
32
35
  import {
33
36
  applyToolOutputSchemas
34
- } from "./chunk-K4E3Y3ZX.js";
37
+ } from "./chunk-G7VEQEMG.js";
35
38
  import {
36
39
  getOperation
37
- } from "./chunk-3QWF54M4.js";
40
+ } from "./chunk-5P2KNFJZ.js";
38
41
  import {
39
42
  WHO_KNOWS_MCP_TOOLS
40
- } from "./chunk-6C57JBJ3.js";
43
+ } from "./chunk-LUDXSSTW.js";
41
44
  import {
42
45
  PROMOTION_CANDIDATES_MCP_TOOLS
43
46
  } from "./chunk-ME35HVDJ.js";
@@ -1757,6 +1760,7 @@ var MCP_MIGRATED_OPERATIONS = {
1757
1760
  "engram.dreams_run": "dreams_run",
1758
1761
  ...SUPPORT_PASSPORT_MCP_MIGRATED_OPERATIONS,
1759
1762
  ...MCP_ADMIN_OPS_MIGRATED_OPERATIONS,
1763
+ "engram.deep_recall": "deep_recall",
1760
1764
  "engram.memory_chat": "chat_message"
1761
1765
  };
1762
1766
  var STRICT_MCP_SCHEMA_KEYS = {
@@ -2052,6 +2056,7 @@ var EngramMcpServer = class {
2052
2056
  ...PROMOTION_CANDIDATES_MCP_TOOLS,
2053
2057
  ...LOCATION_MCP_TOOLS,
2054
2058
  ...STANDUP_MCP_TOOLS,
2059
+ ...DEEP_RECALL_MCP_TOOLS,
2055
2060
  ...service.supportPassportEnabled ? SUPPORT_PASSPORT_MCP_TOOLS : [],
2056
2061
  {
2057
2062
  name: "engram.action_confidence",
@@ -4045,4 +4050,4 @@ export {
4045
4050
  MCP_MIGRATED_OPERATIONS,
4046
4051
  EngramMcpServer
4047
4052
  };
4048
- //# sourceMappingURL=chunk-LVYO2HZJ.js.map
4053
+ //# sourceMappingURL=chunk-5HO3QBAD.js.map