@remnic/core 9.69.42 → 9.69.43

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 (556) hide show
  1. package/dist/access-admin-ops-surface.d.ts +16 -14
  2. package/dist/access-admin-ops-surface.js +33 -25
  3. package/dist/access-authorization-probe.d.ts +16 -14
  4. package/dist/access-authorization-probe.js +34 -26
  5. package/dist/access-boundary.d.ts +16 -14
  6. package/dist/access-boundary.js +33 -25
  7. package/dist/access-cli.js +92 -82
  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 +16 -14
  11. package/dist/access-extraction-force-flush.js +33 -25
  12. package/dist/access-health-types.d.ts +2 -1
  13. package/dist/access-http-briefing.d.ts +16 -14
  14. package/dist/access-http-briefing.js +34 -26
  15. package/dist/access-http-lcm-compaction.d.ts +16 -14
  16. package/dist/access-http-lifecycle-flush.d.ts +16 -14
  17. package/dist/access-http-offline-stream.d.ts +16 -14
  18. package/dist/access-http-query.d.ts +3 -2
  19. package/dist/access-http-query.js +35 -27
  20. package/dist/access-http.d.ts +17 -15
  21. package/dist/access-http.js +55 -45
  22. package/dist/access-identity-continuity-surface.d.ts +12 -11
  23. package/dist/access-identity-continuity-surface.js +33 -25
  24. package/dist/access-lcm-surface.d.ts +16 -14
  25. package/dist/access-lcm-surface.js +33 -25
  26. package/dist/access-mcp-output-schemas.js +1 -1
  27. package/dist/access-mcp-shared-context-tools.d.ts +16 -14
  28. package/dist/access-mcp.d.ts +16 -14
  29. package/dist/access-mcp.js +45 -36
  30. package/dist/access-memory-search-fanout.d.ts +3 -2
  31. package/dist/{access-namespace-preflight-ShnAJ9uL.d.ts → access-namespace-preflight-CE-RrXKu.d.ts} +1 -1
  32. package/dist/access-namespace-preflight.d.ts +4 -3
  33. package/dist/access-namespace-preflight.js +33 -25
  34. package/dist/access-observe-transcript.d.ts +12 -11
  35. package/dist/access-observe-write-category.d.ts +4 -3
  36. package/dist/access-observe-write-category.js +4 -4
  37. package/dist/access-observe-write-surface.d.ts +16 -14
  38. package/dist/access-observe-write-surface.js +33 -25
  39. package/dist/access-offline-manifest.d.ts +12 -11
  40. package/dist/access-operations-batch.js +35 -28
  41. package/dist/access-operations.d.ts +17 -15
  42. package/dist/access-operations.js +41 -33
  43. package/dist/access-recall-concurrency.d.ts +16 -14
  44. package/dist/access-recall-concurrency.js +33 -25
  45. package/dist/access-recall-response.d.ts +16 -14
  46. package/dist/access-recall-response.js +33 -25
  47. package/dist/access-recall-surface.d.ts +16 -14
  48. package/dist/access-recall-surface.js +33 -25
  49. package/dist/access-schema.d.ts +115 -114
  50. package/dist/access-schema.js +3 -3
  51. package/dist/{access-service-DjG_e2cM.d.ts → access-service-DxTTTg9O.d.ts} +77 -74
  52. package/dist/access-service-helpers.d.ts +16 -14
  53. package/dist/access-service.d.ts +16 -14
  54. package/dist/access-service.js +33 -25
  55. package/dist/access-surface-catalog.d.ts +16 -14
  56. package/dist/access-surface-catalog.js +39 -27
  57. package/dist/access-surface-catalog.js.map +1 -1
  58. package/dist/access-wearables-meetings-surface.d.ts +5 -4
  59. package/dist/action-confidence.d.ts +2 -1
  60. package/dist/active-memory-bridge.d.ts +2 -1
  61. package/dist/active-recall.d.ts +2 -1
  62. package/dist/active-recall.js +4 -2
  63. package/dist/active-recall.js.map +1 -1
  64. package/dist/activity/digest.d.ts +2 -1
  65. package/dist/ambient-provenance.d.ts +2 -1
  66. package/dist/artifact-search.d.ts +2 -1
  67. package/dist/background-generation.d.ts +2 -1
  68. package/dist/behavior-learner.d.ts +2 -1
  69. package/dist/behavior-signals.d.ts +2 -1
  70. package/dist/bootstrap.d.ts +12 -11
  71. package/dist/briefing-window.d.ts +3 -2
  72. package/dist/briefing.d.ts +3 -2
  73. package/dist/briefing.js +8 -8
  74. package/dist/buffer-surprise-report.d.ts +2 -1
  75. package/dist/buffer-turn-helpers.d.ts +2 -1
  76. package/dist/buffer.d.ts +3 -2
  77. package/dist/bulk-import/index.d.ts +4 -3
  78. package/dist/calibration.d.ts +2 -1
  79. package/dist/capabilities.d.ts +2 -1
  80. package/dist/{capsule-crypto-YO5QJ6L3.js → capsule-crypto-7FJQINUR.js} +2 -2
  81. package/dist/{catalog-BhuXaQHx.d.ts → catalog-Ya3DDn_T.d.ts} +1 -1
  82. package/dist/causal-behavior.d.ts +2 -1
  83. package/dist/causal-consolidation.d.ts +2 -1
  84. package/dist/causal-consolidation.js +9 -9
  85. package/dist/causal-trajectory-graph.d.ts +2 -1
  86. package/dist/{chunk-QVSRE355.js → chunk-2AV75BJW.js} +29 -1
  87. package/dist/chunk-2AV75BJW.js.map +1 -0
  88. package/dist/{chunk-WNPRRBOE.js → chunk-2HDLDBJW.js} +2 -2
  89. package/dist/{chunk-BXLOS5AJ.js → chunk-2NLLXCJG.js} +2 -2
  90. package/dist/{chunk-LWF6GOII.js → chunk-2PIC6CEN.js} +2 -2
  91. package/dist/chunk-2WFOVXVJ.js +95 -0
  92. package/dist/chunk-2WFOVXVJ.js.map +1 -0
  93. package/dist/{chunk-FSUFKIFS.js → chunk-2YIUUXNK.js} +2 -2
  94. package/dist/{chunk-2PDMIPMP.js → chunk-324HBGS4.js} +6 -6
  95. package/dist/chunk-324HBGS4.js.map +1 -0
  96. package/dist/{chunk-OP722LOG.js → chunk-3254BYQV.js} +1 -1
  97. package/dist/{chunk-CQ4BTPX6.js → chunk-3YQ7VLP3.js} +2 -2
  98. package/dist/{chunk-ZFU6QNRN.js → chunk-4WMGRLTV.js} +2 -2
  99. package/dist/{chunk-U26LB4WA.js → chunk-5AJZ7EUW.js} +2 -2
  100. package/dist/chunk-5KVT6G5U.js +31 -0
  101. package/dist/chunk-5KVT6G5U.js.map +1 -0
  102. package/dist/{chunk-WN2OXGGH.js → chunk-66YUOI53.js} +1 -1
  103. package/dist/chunk-66YUOI53.js.map +1 -0
  104. package/dist/{chunk-R45VFSEV.js → chunk-7F47R4H4.js} +2 -2
  105. package/dist/{chunk-2EYZ32LH.js → chunk-7RGX7BMF.js} +24 -2
  106. package/dist/{chunk-2EYZ32LH.js.map → chunk-7RGX7BMF.js.map} +1 -1
  107. package/dist/{chunk-LVFI5LG7.js → chunk-A7GQBJP5.js} +7 -7
  108. package/dist/{chunk-KJQ4Y2PY.js → chunk-AKB44K3D.js} +8 -8
  109. package/dist/chunk-AS2NOPDM.js +30 -0
  110. package/dist/chunk-AS2NOPDM.js.map +1 -0
  111. package/dist/{chunk-CTETTVDN.js → chunk-BZDK5EOD.js} +2 -2
  112. package/dist/{chunk-PLJ2MQFT.js → chunk-C3YEB7CR.js} +7 -7
  113. package/dist/{chunk-ZOGKZ2XT.js → chunk-CRK6F6N3.js} +2 -2
  114. package/dist/{chunk-XJLTQTAO.js → chunk-D7UUB33A.js} +2 -2
  115. package/dist/{chunk-DMTSKY4W.js → chunk-DABSYX7V.js} +3 -3
  116. package/dist/{chunk-3RLWUW7G.js → chunk-DDGQDNQW.js} +2 -2
  117. package/dist/{chunk-EAARGPWI.js → chunk-F3TURDFG.js} +3 -1
  118. package/dist/chunk-F3TURDFG.js.map +1 -0
  119. package/dist/{chunk-DLPMOSNH.js → chunk-GKKLI23D.js} +2 -2
  120. package/dist/{chunk-I65KB36L.js → chunk-GMU7MAHS.js} +9 -9
  121. package/dist/{chunk-JC2OBYYD.js → chunk-HKQAI6XI.js} +2 -2
  122. package/dist/{chunk-7PSRCGWT.js → chunk-IB7FDRRC.js} +2 -2
  123. package/dist/{chunk-GIM2AGFL.js → chunk-IWHNT35B.js} +3 -3
  124. package/dist/{chunk-AHHFBJX7.js → chunk-JDL5BYYF.js} +3 -3
  125. package/dist/{chunk-HSJU6JFT.js → chunk-JWBDHA4F.js} +12 -6
  126. package/dist/chunk-JWBDHA4F.js.map +1 -0
  127. package/dist/{chunk-JMAP6L6Q.js → chunk-KDLOKVX7.js} +2 -2
  128. package/dist/chunk-KIW3OOZE.js +39 -0
  129. package/dist/chunk-KIW3OOZE.js.map +1 -0
  130. package/dist/{chunk-HO2P3FAX.js → chunk-KOM36ILJ.js} +19 -15
  131. package/dist/chunk-KOM36ILJ.js.map +1 -0
  132. package/dist/{chunk-HK44SV6K.js → chunk-KORQWGUA.js} +2 -2
  133. package/dist/{chunk-VDX2J7OX.js → chunk-KQAFEZQX.js} +2 -2
  134. package/dist/{chunk-GWEZNCGA.js → chunk-KY75VZKG.js} +2 -2
  135. package/dist/{chunk-4IGOLIWM.js → chunk-L63M2PE4.js} +2 -2
  136. package/dist/{chunk-BIANISES.js → chunk-LD22AAJI.js} +2 -2
  137. package/dist/{chunk-L732NBPR.js → chunk-LT4H7SL5.js} +96 -42
  138. package/dist/chunk-LT4H7SL5.js.map +1 -0
  139. package/dist/{chunk-K27INAPR.js → chunk-LUAQHDUI.js} +2 -2
  140. package/dist/chunk-LVTT5AUG.js +79 -0
  141. package/dist/chunk-LVTT5AUG.js.map +1 -0
  142. package/dist/{chunk-IUTYNDFS.js → chunk-LXMZM7LM.js} +293 -43
  143. package/dist/chunk-LXMZM7LM.js.map +1 -0
  144. package/dist/{chunk-RXYO6NA6.js → chunk-M6FKXOYV.js} +2 -2
  145. package/dist/{chunk-AAX22E4K.js → chunk-M7H56FOQ.js} +2 -2
  146. package/dist/{chunk-LCVYO3ON.js → chunk-MOL7JK4F.js} +2 -2
  147. package/dist/{chunk-ADARR5KF.js → chunk-NHFXGNGC.js} +42 -39
  148. package/dist/chunk-NHFXGNGC.js.map +1 -0
  149. package/dist/{chunk-HPMCKAET.js → chunk-OGAKUA7I.js} +2 -2
  150. package/dist/{chunk-AOGICQMH.js → chunk-PF7LQ22G.js} +3 -3
  151. package/dist/{chunk-OCWFKD5Q.js → chunk-PPDZSJXB.js} +2 -2
  152. package/dist/{chunk-AUSRUOMQ.js → chunk-PW4HTWXL.js} +2 -2
  153. package/dist/{chunk-ZYRAY5FL.js → chunk-QCTXQ2HW.js} +2 -2
  154. package/dist/{chunk-ETE3SGAH.js → chunk-QUBPZQED.js} +2 -2
  155. package/dist/chunk-QZ4U67KO.js +98 -0
  156. package/dist/chunk-QZ4U67KO.js.map +1 -0
  157. package/dist/{chunk-G3NTZZWT.js → chunk-R3H2AXO2.js} +2 -2
  158. package/dist/{chunk-AIVRD66I.js → chunk-T3F2HWIG.js} +2 -2
  159. package/dist/chunk-TE6S7KDF.js +47 -0
  160. package/dist/chunk-TE6S7KDF.js.map +1 -0
  161. package/dist/{chunk-ZGXHTV5Y.js → chunk-UCLWIMVW.js} +2 -2
  162. package/dist/{chunk-N7B6V7SG.js → chunk-VHANUT45.js} +5 -5
  163. package/dist/{chunk-E4FRR4MA.js → chunk-VJXMFBVR.js} +2 -2
  164. package/dist/{chunk-KCKXOS4Y.js → chunk-VKDXYEA6.js} +3 -3
  165. package/dist/{chunk-Q62GA5U2.js → chunk-VW5TGNJN.js} +2 -2
  166. package/dist/{chunk-Q62GA5U2.js.map → chunk-VW5TGNJN.js.map} +1 -1
  167. package/dist/chunk-VYDGHJIN.js +17 -0
  168. package/dist/chunk-VYDGHJIN.js.map +1 -0
  169. package/dist/{chunk-GWNSKQDA.js → chunk-W44T2KHG.js} +3 -3
  170. package/dist/{chunk-DQEMWVMT.js → chunk-X7Y7WX73.js} +1 -1
  171. package/dist/{chunk-2UINSKQC.js → chunk-XIJHRQ4A.js} +11 -5
  172. package/dist/chunk-XIJHRQ4A.js.map +1 -0
  173. package/dist/{chunk-VBK6SRNE.js → chunk-XOCGC3FJ.js} +2 -2
  174. package/dist/chunk-YE4JBZO5.js +44 -0
  175. package/dist/chunk-YE4JBZO5.js.map +1 -0
  176. package/dist/{chunk-RTXHUVOD.js → chunk-YPB3Y57U.js} +10 -10
  177. package/dist/{chunk-RSSLDMFX.js → chunk-YTV6J4T6.js} +2 -2
  178. package/dist/{chunk-AAAFZW3U.js → chunk-ZBSP4BSN.js} +2 -2
  179. package/dist/{chunk-VVX5PZFS.js → chunk-ZHXSOMYH.js} +2 -2
  180. package/dist/{cli-Cx9s_VRn.d.ts → cli-BfCl5kWD.d.ts} +5 -5
  181. package/dist/cli.d.ts +18 -16
  182. package/dist/cli.js +76 -66
  183. package/dist/coding/export-okf-codegraph.d.ts +2 -1
  184. package/dist/coding/export-okf-codegraph.js +7 -7
  185. package/dist/coding/pre-action-gate.d.ts +2 -1
  186. package/dist/compounding/engine.d.ts +3 -2
  187. package/dist/compounding/engine.js +8 -8
  188. package/dist/compounding/preference-consolidator.d.ts +2 -1
  189. package/dist/compression-optimizer.d.ts +2 -1
  190. package/dist/config.d.ts +2 -1
  191. package/dist/config.js +4 -2
  192. package/dist/connectors/codex-materialize-runner.d.ts +2 -1
  193. package/dist/connectors/codex-materialize-runner.js +8 -8
  194. package/dist/connectors/codex-materialize.d.ts +2 -1
  195. package/dist/connectors/index.d.ts +2 -1
  196. package/dist/connectors/index.js +8 -8
  197. package/dist/consolidation-provenance-check.d.ts +3 -2
  198. package/dist/consolidation-undo.d.ts +3 -2
  199. package/dist/contradiction/index.d.ts +5 -4
  200. package/dist/converge-config.d.ts +2 -1
  201. package/dist/convergence-refresh.d.ts +3 -2
  202. package/dist/convergence-refresh.js +10 -10
  203. package/dist/conversation-index/backend.d.ts +2 -1
  204. package/dist/conversation-index/chunker.d.ts +2 -1
  205. package/dist/conversation-index/faiss-adapter.d.ts +2 -1
  206. package/dist/conversation-index/indexer.d.ts +2 -1
  207. package/dist/conversation-index/search.d.ts +2 -1
  208. package/dist/corpus-watermark.d.ts +2 -1
  209. package/dist/corpus-watermark.js +10 -10
  210. package/dist/cross-lingual-recall.d.ts +2 -1
  211. package/dist/day-summary.d.ts +2 -1
  212. package/dist/deep-recall-config.d.ts +11 -1
  213. package/dist/deep-recall-config.js +6 -3
  214. package/dist/deep-recall-http-glue.d.ts +16 -14
  215. package/dist/deep-recall-http-glue.js +5 -5
  216. package/dist/deep-recall-mcp-tools.d.ts +16 -14
  217. package/dist/deep-recall-policy-llm.d.ts +3 -2
  218. package/dist/deep-recall-seeds.d.ts +2 -1
  219. package/dist/delinearize.d.ts +2 -1
  220. package/dist/dependency-propagation-config.d.ts +2 -1
  221. package/dist/{dependency-propagation-delivery-C2QFQ97b.d.ts → dependency-propagation-delivery-CggS9BFT.d.ts} +1 -1
  222. package/dist/direct-answer-wiring.d.ts +2 -1
  223. package/dist/direct-answer.d.ts +2 -1
  224. package/dist/embedding-fallback.d.ts +2 -1
  225. package/dist/enrichment/index.d.ts +2 -1
  226. package/dist/entity-origin-fields.d.ts +2 -1
  227. package/dist/entity-retrieval.d.ts +3 -2
  228. package/dist/entity-retrieval.js +8 -8
  229. package/dist/entity-schema.d.ts +2 -1
  230. package/dist/episodic-context.d.ts +2 -1
  231. package/dist/eval-trajectory-contracts.d.ts +2 -1
  232. package/dist/eval-trajectory-store.d.ts +2 -1
  233. package/dist/eval-trajectory.d.ts +2 -1
  234. package/dist/explicit-capture.d.ts +12 -11
  235. package/dist/external-wiki-access.d.ts +16 -14
  236. package/dist/external-wiki-access.js +34 -26
  237. package/dist/external-wiki-collection-registration.d.ts +2 -1
  238. package/dist/external-wiki-collection.d.ts +2 -1
  239. package/dist/external-wiki-mcp-tools.d.ts +16 -14
  240. package/dist/extraction-error-classification.d.ts +2 -1
  241. package/dist/extraction-faithfulness.d.ts +3 -2
  242. package/dist/extraction-judge-telemetry.d.ts +3 -2
  243. package/dist/extraction-judge-training.d.ts +3 -2
  244. package/dist/extraction-judge.d.ts +3 -2
  245. package/dist/extraction-liveness.d.ts +2 -1
  246. package/dist/extraction-normalization.d.ts +2 -1
  247. package/dist/extraction-prompt.d.ts +2 -1
  248. package/dist/extraction-source-grounding-rules.d.ts +2 -1
  249. package/dist/extraction-source-grounding.d.ts +2 -1
  250. package/dist/extraction-span-config.d.ts +2 -1
  251. package/dist/extraction-span-materialize.d.ts +2 -1
  252. package/dist/extraction.d.ts +3 -2
  253. package/dist/extraction.js +8 -8
  254. package/dist/fallback-llm-codex-subscription.d.ts +2 -1
  255. package/dist/fallback-llm.d.ts +2 -1
  256. package/dist/{generic-recall-paths-CeKQsQEn.d.ts → generic-recall-paths-CoXPSnCw.d.ts} +1 -1
  257. package/dist/graph-append-error.d.ts +2 -1
  258. package/dist/graph-dashboard-diff.d.ts +2 -1
  259. package/dist/graph-dashboard-key.d.ts +2 -1
  260. package/dist/graph-dashboard-parser.d.ts +2 -1
  261. package/dist/graph-edge-reinforcement.d.ts +2 -1
  262. package/dist/graph-jsonl.d.ts +2 -1
  263. package/dist/graph-path-reconstruction.d.ts +2 -1
  264. package/dist/graph-path-scoring.d.ts +2 -1
  265. package/dist/graph-snapshot.d.ts +2 -1
  266. package/dist/graph.d.ts +2 -1
  267. package/dist/harmonic-retrieval.js +1 -1
  268. package/dist/importance.d.ts +2 -1
  269. package/dist/importers/index.d.ts +2 -1
  270. package/dist/importers/test-utils.d.ts +2 -1
  271. package/dist/in-flight-reads.d.ts +2 -1
  272. package/dist/{index-Bau-Wl0H.d.ts → index-fdw_oK5a.d.ts} +3 -3
  273. package/dist/index.d.ts +704 -702
  274. package/dist/index.js +106 -85
  275. package/dist/intent.d.ts +2 -1
  276. package/dist/lcm/engine.d.ts +2 -1
  277. package/dist/lcm/engine.js +3 -3
  278. package/dist/lcm/index.d.ts +2 -1
  279. package/dist/lcm/index.js +11 -11
  280. package/dist/lcm/tools.d.ts +2 -1
  281. package/dist/lifecycle.d.ts +2 -1
  282. package/dist/live-connectors-runner.d.ts +2 -1
  283. package/dist/{local-llm-Bj-m01Ro.d.ts → local-llm-3-jtw52a.d.ts} +1 -1
  284. package/dist/local-llm-helpers.d.ts +3 -2
  285. package/dist/local-llm.d.ts +3 -2
  286. package/dist/local-model-endpoint.d.ts +2 -1
  287. package/dist/location/index.d.ts +6 -5
  288. package/dist/location/index.js +10 -10
  289. package/dist/maintenance/memory-governance.d.ts +2 -1
  290. package/dist/maintenance/memory-governance.js +8 -8
  291. package/dist/maintenance/rebuild-memory-lifecycle-ledger.d.ts +3 -2
  292. package/dist/maintenance/rebuild-memory-lifecycle-ledger.js +8 -8
  293. package/dist/maintenance/rebuild-memory-projection.d.ts +3 -2
  294. package/dist/maintenance/rebuild-memory-projection.js +9 -9
  295. package/dist/{maintenance-Ye-y-c7f.d.ts → maintenance-DgeeH0a1.d.ts} +3 -3
  296. package/dist/mcp-memory-inspector-app.d.ts +18 -16
  297. package/dist/mcp-read-only-tools.js +1 -1
  298. package/dist/memory-action-policy.d.ts +2 -1
  299. package/dist/memory-cache.d.ts +2 -1
  300. package/dist/memory-controller.d.ts +2 -1
  301. package/dist/memory-lifecycle-ledger-utils.d.ts +2 -1
  302. package/dist/memory-projection-store.d.ts +2 -1
  303. package/dist/memory-provenance.d.ts +2 -1
  304. package/dist/memory-snapshot.d.ts +2 -1
  305. package/dist/memory-subject-cli.d.ts +16 -14
  306. package/dist/memory-subject.d.ts +16 -14
  307. package/dist/memory-worth-outcomes.d.ts +3 -2
  308. package/dist/models-json.d.ts +2 -1
  309. package/dist/namespaces/migrate.d.ts +4 -3
  310. package/dist/namespaces/migrate.js +9 -9
  311. package/dist/namespaces/principal.d.ts +2 -1
  312. package/dist/namespaces/search.d.ts +2 -1
  313. package/dist/namespaces/search.js +4 -4
  314. package/dist/namespaces/storage.d.ts +4 -3
  315. package/dist/namespaces/storage.js +8 -8
  316. package/dist/native-knowledge.d.ts +2 -1
  317. package/dist/offline-sync-impression-drain.d.ts +2 -1
  318. package/dist/operator-doctor-corpus.d.ts +2 -1
  319. package/dist/operator-doctor-corpus.js +11 -11
  320. package/dist/operator-doctor-replica.d.ts +2 -1
  321. package/dist/operator-toolkit.d.ts +4 -3
  322. package/dist/operator-toolkit.js +19 -18
  323. package/dist/orchestration/compression-guideline-coordinator.d.ts +3 -2
  324. package/dist/orchestration/maintenance.d.ts +5 -4
  325. package/dist/orchestration/maintenance.js +16 -16
  326. package/dist/{orchestrator-fFDDYUUV.d.ts → orchestrator-VXWKdatm.d.ts} +10 -10
  327. package/dist/orchestrator.d.ts +12 -11
  328. package/dist/orchestrator.js +92 -82
  329. package/dist/patterns-cli.d.ts +2 -1
  330. package/dist/{pipeline-D_j5n_Ih.d.ts → pipeline-CwXZBKR5.d.ts} +1 -1
  331. package/dist/policy-runtime.d.ts +2 -1
  332. package/dist/proactive-contention.d.ts +3 -2
  333. package/dist/provenance.d.ts +2 -1
  334. package/dist/{public-http-CjiSqxUx.d.ts → public-http-B55s59aR.d.ts} +1 -1
  335. package/dist/{qmd-CnxVjKrv.d.ts → qmd-DOLTPIQg.d.ts} +1 -1
  336. package/dist/qmd-preflight.d.ts +3 -2
  337. package/dist/qmd-recall-cache.d.ts +2 -1
  338. package/dist/qmd.d.ts +3 -2
  339. package/dist/recall-concurrency-config.d.ts +2 -1
  340. package/dist/recall-disclosure-escalation.d.ts +2 -1
  341. package/dist/recall-explain-renderer.d.ts +2 -1
  342. package/dist/recall-explain-renderer.js +3 -3
  343. package/dist/recall-memory-map.d.ts +2 -1
  344. package/dist/recall-navigate-access.d.ts +2 -1
  345. package/dist/recall-navigate-access.js +2 -2
  346. package/dist/recall-navigate-budget.js +3 -13
  347. package/dist/recall-navigate-budget.js.map +1 -1
  348. package/dist/recall-navigate-disclosure.d.ts +2 -1
  349. package/dist/recall-navigate-disclosure.js +4 -23
  350. package/dist/recall-navigate-disclosure.js.map +1 -1
  351. package/dist/recall-navigate-traverse.js +4 -37
  352. package/dist/recall-navigate-traverse.js.map +1 -1
  353. package/dist/recall-navigate-window.js +4 -26
  354. package/dist/recall-navigate-window.js.map +1 -1
  355. package/dist/recall-navigate.d.ts +2 -1
  356. package/dist/recall-navigate.js +2 -2
  357. package/dist/recall-navigation-config.d.ts +34 -0
  358. package/dist/recall-navigation-config.js +16 -0
  359. package/dist/recall-navigation-config.js.map +1 -0
  360. package/dist/recall-navigation-http-glue.d.ts +171 -0
  361. package/dist/recall-navigation-http-glue.js +9 -0
  362. package/dist/recall-navigation-http-glue.js.map +1 -0
  363. package/dist/recall-navigation-mcp-tools.d.ts +162 -0
  364. package/dist/recall-navigation-mcp-tools.js +8 -0
  365. package/dist/recall-navigation-mcp-tools.js.map +1 -0
  366. package/dist/recall-navigation-operations.d.ts +2 -0
  367. package/dist/recall-navigation-operations.js +245 -0
  368. package/dist/recall-navigation-operations.js.map +1 -0
  369. package/dist/recall-navigation-renderer.d.ts +36 -0
  370. package/dist/recall-navigation-renderer.js +8 -0
  371. package/dist/recall-navigation-renderer.js.map +1 -0
  372. package/dist/recall-navigation.d.ts +121 -0
  373. package/dist/recall-navigation.js +249 -0
  374. package/dist/recall-navigation.js.map +1 -0
  375. package/dist/recall-planner-llm.d.ts +2 -1
  376. package/dist/recall-state-view-admission.d.ts +3 -2
  377. package/dist/recall-state-view-anchors.d.ts +2 -1
  378. package/dist/recall-state.d.ts +2 -1
  379. package/dist/recall-tag-filter.d.ts +2 -1
  380. package/dist/recall-timings.d.ts +2 -1
  381. package/dist/recall-xray-cli.d.ts +2 -1
  382. package/dist/recall-xray-cli.js +4 -4
  383. package/dist/recall-xray-renderer.d.ts +2 -1
  384. package/dist/recall-xray-renderer.js +3 -3
  385. package/dist/recall-xray.d.ts +3 -2
  386. package/dist/recall-xray.js +2 -2
  387. package/dist/reconcile/cursor.d.ts +2 -1
  388. package/dist/reconcile/manifest.d.ts +2 -1
  389. package/dist/reconcile/plan.d.ts +2 -1
  390. package/dist/replay/normalizers/chatgpt.d.ts +2 -1
  391. package/dist/replay/normalizers/claude.d.ts +2 -1
  392. package/dist/replay/normalizers/openclaw.d.ts +2 -1
  393. package/dist/replay/normalizers/shared.d.ts +2 -1
  394. package/dist/replay/runner.d.ts +2 -1
  395. package/dist/replay/types.d.ts +2 -1
  396. package/dist/replica-divergence.d.ts +2 -1
  397. package/dist/replica-peers-config.d.ts +2 -1
  398. package/dist/resolve-auth-token.d.ts +2 -1
  399. package/dist/resume-bundles.js +5 -3
  400. package/dist/retrieval-agents.d.ts +3 -2
  401. package/dist/retrieval-tiers.d.ts +2 -1
  402. package/dist/routing/engine.d.ts +2 -1
  403. package/dist/routing/store.d.ts +2 -1
  404. package/dist/salvage-envelope.d.ts +2 -1
  405. package/dist/schemas.d.ts +160 -160
  406. package/dist/{scope-profiles-BajH5zAT.d.ts → scope-profiles-C564-hrv.d.ts} +1 -1
  407. package/dist/search/embed-helper.d.ts +2 -1
  408. package/dist/search/factory.d.ts +2 -1
  409. package/dist/search/factory.js +3 -3
  410. package/dist/search/index.d.ts +2 -1
  411. package/dist/search/index.js +7 -7
  412. package/dist/search/lancedb-backend.d.ts +2 -1
  413. package/dist/search/meilisearch-backend.d.ts +2 -1
  414. package/dist/search/noop-backend.d.ts +2 -1
  415. package/dist/search/orama-backend.d.ts +2 -1
  416. package/dist/search/port.d.ts +2 -1
  417. package/dist/search/remote-backend.d.ts +2 -1
  418. package/dist/{semantic-consolidation-Bu6d3O7R.d.ts → semantic-consolidation-g6x-ShY8.d.ts} +1 -1
  419. package/dist/semantic-consolidation.d.ts +3 -2
  420. package/dist/semantic-consolidation.js +9 -9
  421. package/dist/semantic-rule-promotion.js +8 -8
  422. package/dist/semantic-rule-verifier.d.ts +2 -1
  423. package/dist/semantic-rule-verifier.js +8 -8
  424. package/dist/{service-ChFwWtLS.d.ts → service-CaCOk0rd.d.ts} +2 -2
  425. package/dist/session-observer-bands.d.ts +2 -1
  426. package/dist/session-observer-state.d.ts +2 -1
  427. package/dist/shared-context/manager.d.ts +8 -7
  428. package/dist/signal.d.ts +2 -1
  429. package/dist/source-agent-qualifier.d.ts +2 -1
  430. package/dist/source-agent-qualifier.js +8 -8
  431. package/dist/standup/build.js +8 -8
  432. package/dist/{storage-BDKQdsmB.d.ts → storage-C9nsZX5Q.d.ts} +1 -1
  433. package/dist/storage.d.ts +3 -2
  434. package/dist/storage.js +7 -7
  435. package/dist/subject-config.d.ts +2 -1
  436. package/dist/summarizer.d.ts +2 -1
  437. package/dist/summary-snapshot.d.ts +2 -1
  438. package/dist/support-passport/index.d.ts +19 -17
  439. package/dist/support-passport/index.js +36 -28
  440. package/dist/{tagging-CwK6um2q.d.ts → tagging-BA4RFdH3.d.ts} +2 -2
  441. package/dist/temporal-supersession.d.ts +3 -2
  442. package/dist/temporal-timeline-recall.d.ts +2 -1
  443. package/dist/temporal-validity.d.ts +2 -1
  444. package/dist/threading.d.ts +2 -1
  445. package/dist/tier-migration.d.ts +3 -2
  446. package/dist/tier-routing.d.ts +2 -1
  447. package/dist/topics.d.ts +2 -1
  448. package/dist/transcript.d.ts +2 -1
  449. package/dist/transfer/backup.js +2 -2
  450. package/dist/transfer/capsule-export.js +2 -2
  451. package/dist/transfer/capsule-import.js +2 -2
  452. package/dist/transfer/export-okf.d.ts +2 -1
  453. package/dist/transfer/export-okf.js +8 -8
  454. package/dist/transfer/types.d.ts +78 -78
  455. package/dist/trust-score-stage.d.ts +2 -1
  456. package/dist/trust-score.d.ts +2 -1
  457. package/dist/{types-B65IoepH.d.ts → types-Sps-lg5I.d.ts} +2 -1
  458. package/dist/types.d.ts +2 -1
  459. package/dist/types.js +1 -1
  460. package/dist/utility-runtime.d.ts +2 -1
  461. package/dist/verified-recall.js +8 -8
  462. package/dist/who-knows-cli.d.ts +16 -14
  463. package/dist/who-knows-cli.js +9 -9
  464. package/dist/who-knows.d.ts +16 -14
  465. package/dist/who-knows.js +8 -8
  466. package/dist/write-envelope.d.ts +2 -1
  467. package/package.json +2 -2
  468. package/src/access-boundary.ts +2 -0
  469. package/src/access-http.ts +3 -3
  470. package/src/access-mcp-output-schemas.ts +30 -0
  471. package/src/access-mcp.ts +3 -3
  472. package/src/access-operations.ts +2 -0
  473. package/src/access-service.ts +13 -23
  474. package/src/access-surface-catalog.test.ts +30 -2
  475. package/src/access-surface-catalog.ts +4 -0
  476. package/src/cli/recall-navigation-commands.ts +85 -0
  477. package/src/cli.ts +2 -2
  478. package/src/config.ts +4 -0
  479. package/src/deep-recall-config.ts +32 -0
  480. package/src/index.ts +1 -2
  481. package/src/mcp-read-only-tools.ts +2 -0
  482. package/src/orchestration/recall-internal.ts +4 -4
  483. package/src/recall-navigation-config.test.ts +56 -0
  484. package/src/recall-navigation-config.ts +107 -0
  485. package/src/recall-navigation-http-glue.ts +141 -0
  486. package/src/recall-navigation-mcp-tools.ts +60 -0
  487. package/src/recall-navigation-operations.ts +111 -0
  488. package/src/recall-navigation-renderer.ts +49 -0
  489. package/src/recall-navigation-surface.test.ts +474 -0
  490. package/src/recall-navigation.test.ts +405 -0
  491. package/src/recall-navigation.ts +429 -0
  492. package/src/recall-xray.ts +1 -1
  493. package/src/types.ts +2 -0
  494. package/dist/chunk-2PDMIPMP.js.map +0 -1
  495. package/dist/chunk-2UINSKQC.js.map +0 -1
  496. package/dist/chunk-ADARR5KF.js.map +0 -1
  497. package/dist/chunk-EAARGPWI.js.map +0 -1
  498. package/dist/chunk-HO2P3FAX.js.map +0 -1
  499. package/dist/chunk-HSJU6JFT.js.map +0 -1
  500. package/dist/chunk-IUTYNDFS.js.map +0 -1
  501. package/dist/chunk-L732NBPR.js.map +0 -1
  502. package/dist/chunk-QVSRE355.js.map +0 -1
  503. package/dist/chunk-WN2OXGGH.js.map +0 -1
  504. /package/dist/{capsule-crypto-YO5QJ6L3.js.map → capsule-crypto-7FJQINUR.js.map} +0 -0
  505. /package/dist/{chunk-WNPRRBOE.js.map → chunk-2HDLDBJW.js.map} +0 -0
  506. /package/dist/{chunk-BXLOS5AJ.js.map → chunk-2NLLXCJG.js.map} +0 -0
  507. /package/dist/{chunk-LWF6GOII.js.map → chunk-2PIC6CEN.js.map} +0 -0
  508. /package/dist/{chunk-FSUFKIFS.js.map → chunk-2YIUUXNK.js.map} +0 -0
  509. /package/dist/{chunk-OP722LOG.js.map → chunk-3254BYQV.js.map} +0 -0
  510. /package/dist/{chunk-CQ4BTPX6.js.map → chunk-3YQ7VLP3.js.map} +0 -0
  511. /package/dist/{chunk-ZFU6QNRN.js.map → chunk-4WMGRLTV.js.map} +0 -0
  512. /package/dist/{chunk-U26LB4WA.js.map → chunk-5AJZ7EUW.js.map} +0 -0
  513. /package/dist/{chunk-R45VFSEV.js.map → chunk-7F47R4H4.js.map} +0 -0
  514. /package/dist/{chunk-LVFI5LG7.js.map → chunk-A7GQBJP5.js.map} +0 -0
  515. /package/dist/{chunk-KJQ4Y2PY.js.map → chunk-AKB44K3D.js.map} +0 -0
  516. /package/dist/{chunk-CTETTVDN.js.map → chunk-BZDK5EOD.js.map} +0 -0
  517. /package/dist/{chunk-PLJ2MQFT.js.map → chunk-C3YEB7CR.js.map} +0 -0
  518. /package/dist/{chunk-ZOGKZ2XT.js.map → chunk-CRK6F6N3.js.map} +0 -0
  519. /package/dist/{chunk-XJLTQTAO.js.map → chunk-D7UUB33A.js.map} +0 -0
  520. /package/dist/{chunk-DMTSKY4W.js.map → chunk-DABSYX7V.js.map} +0 -0
  521. /package/dist/{chunk-3RLWUW7G.js.map → chunk-DDGQDNQW.js.map} +0 -0
  522. /package/dist/{chunk-DLPMOSNH.js.map → chunk-GKKLI23D.js.map} +0 -0
  523. /package/dist/{chunk-I65KB36L.js.map → chunk-GMU7MAHS.js.map} +0 -0
  524. /package/dist/{chunk-JC2OBYYD.js.map → chunk-HKQAI6XI.js.map} +0 -0
  525. /package/dist/{chunk-7PSRCGWT.js.map → chunk-IB7FDRRC.js.map} +0 -0
  526. /package/dist/{chunk-GIM2AGFL.js.map → chunk-IWHNT35B.js.map} +0 -0
  527. /package/dist/{chunk-AHHFBJX7.js.map → chunk-JDL5BYYF.js.map} +0 -0
  528. /package/dist/{chunk-JMAP6L6Q.js.map → chunk-KDLOKVX7.js.map} +0 -0
  529. /package/dist/{chunk-HK44SV6K.js.map → chunk-KORQWGUA.js.map} +0 -0
  530. /package/dist/{chunk-VDX2J7OX.js.map → chunk-KQAFEZQX.js.map} +0 -0
  531. /package/dist/{chunk-GWEZNCGA.js.map → chunk-KY75VZKG.js.map} +0 -0
  532. /package/dist/{chunk-4IGOLIWM.js.map → chunk-L63M2PE4.js.map} +0 -0
  533. /package/dist/{chunk-BIANISES.js.map → chunk-LD22AAJI.js.map} +0 -0
  534. /package/dist/{chunk-K27INAPR.js.map → chunk-LUAQHDUI.js.map} +0 -0
  535. /package/dist/{chunk-RXYO6NA6.js.map → chunk-M6FKXOYV.js.map} +0 -0
  536. /package/dist/{chunk-AAX22E4K.js.map → chunk-M7H56FOQ.js.map} +0 -0
  537. /package/dist/{chunk-LCVYO3ON.js.map → chunk-MOL7JK4F.js.map} +0 -0
  538. /package/dist/{chunk-HPMCKAET.js.map → chunk-OGAKUA7I.js.map} +0 -0
  539. /package/dist/{chunk-AOGICQMH.js.map → chunk-PF7LQ22G.js.map} +0 -0
  540. /package/dist/{chunk-OCWFKD5Q.js.map → chunk-PPDZSJXB.js.map} +0 -0
  541. /package/dist/{chunk-AUSRUOMQ.js.map → chunk-PW4HTWXL.js.map} +0 -0
  542. /package/dist/{chunk-ZYRAY5FL.js.map → chunk-QCTXQ2HW.js.map} +0 -0
  543. /package/dist/{chunk-ETE3SGAH.js.map → chunk-QUBPZQED.js.map} +0 -0
  544. /package/dist/{chunk-G3NTZZWT.js.map → chunk-R3H2AXO2.js.map} +0 -0
  545. /package/dist/{chunk-AIVRD66I.js.map → chunk-T3F2HWIG.js.map} +0 -0
  546. /package/dist/{chunk-ZGXHTV5Y.js.map → chunk-UCLWIMVW.js.map} +0 -0
  547. /package/dist/{chunk-N7B6V7SG.js.map → chunk-VHANUT45.js.map} +0 -0
  548. /package/dist/{chunk-E4FRR4MA.js.map → chunk-VJXMFBVR.js.map} +0 -0
  549. /package/dist/{chunk-KCKXOS4Y.js.map → chunk-VKDXYEA6.js.map} +0 -0
  550. /package/dist/{chunk-GWNSKQDA.js.map → chunk-W44T2KHG.js.map} +0 -0
  551. /package/dist/{chunk-DQEMWVMT.js.map → chunk-X7Y7WX73.js.map} +0 -0
  552. /package/dist/{chunk-VBK6SRNE.js.map → chunk-XOCGC3FJ.js.map} +0 -0
  553. /package/dist/{chunk-RTXHUVOD.js.map → chunk-YPB3Y57U.js.map} +0 -0
  554. /package/dist/{chunk-RSSLDMFX.js.map → chunk-YTV6J4T6.js.map} +0 -0
  555. /package/dist/{chunk-AAAFZW3U.js.map → chunk-ZBSP4BSN.js.map} +0 -0
  556. /package/dist/{chunk-VVX5PZFS.js.map → chunk-ZHXSOMYH.js.map} +0 -0
@@ -11,7 +11,7 @@ import {
11
11
  } from "./chunk-NHLLKEKK.js";
12
12
  import {
13
13
  parseConfig
14
- } from "./chunk-2UINSKQC.js";
14
+ } from "./chunk-XIJHRQ4A.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-K27INAPR.js.map
271
+ //# sourceMappingURL=chunk-LUAQHDUI.js.map
@@ -0,0 +1,79 @@
1
+ import {
2
+ coerceBool,
3
+ coerceNumber
4
+ } from "./chunk-PQVCH2AE.js";
5
+
6
+ // src/recall-navigation-config.ts
7
+ var DEFAULT_NAVIGATION_WINDOW_SNAPSHOTS = 3;
8
+ var RECALL_NAVIGATION_CONFIG_DEFAULTS = {
9
+ enabled: true,
10
+ windowSnapshots: DEFAULT_NAVIGATION_WINDOW_SNAPSHOTS,
11
+ maxNeighbors: 10
12
+ };
13
+ function shouldRecordRecallAuthorityHistory(config) {
14
+ return config.recallMemoryHandles === true || config.recallNavigation?.enabled === true;
15
+ }
16
+ function parseFlag(src, key, fallback) {
17
+ const value = src[key];
18
+ if (value === void 0 || value === null) return fallback;
19
+ const coerced = coerceBool(value);
20
+ if (coerced === void 0) {
21
+ throw new Error(
22
+ `recallNavigation.${key} must be a boolean (or "true"/"false"/"1"/"0"); got ${JSON.stringify(value)}`
23
+ );
24
+ }
25
+ return coerced;
26
+ }
27
+ function parseBoundedInt(src, key, fallback, min, max) {
28
+ const value = src[key];
29
+ if (value === void 0 || value === null) return fallback;
30
+ const coerced = coerceNumber(value);
31
+ if (coerced === void 0 || !Number.isFinite(coerced) || !Number.isInteger(coerced)) {
32
+ throw new Error(
33
+ `recallNavigation.${key} must be an integer between ${min} and ${max}; got ${JSON.stringify(value)}`
34
+ );
35
+ }
36
+ if (coerced < min || coerced > max) {
37
+ throw new Error(
38
+ `recallNavigation.${key} must be an integer between ${min} and ${max}; got ${JSON.stringify(value)}`
39
+ );
40
+ }
41
+ return coerced;
42
+ }
43
+ function parseRecallNavigationConfig(raw) {
44
+ if (raw === void 0 || raw === null) return { ...RECALL_NAVIGATION_CONFIG_DEFAULTS };
45
+ if (typeof raw !== "object" || Array.isArray(raw)) {
46
+ throw new Error(`recallNavigation must be an object; got ${JSON.stringify(raw)}`);
47
+ }
48
+ const src = raw;
49
+ const { enabled: _enabled, windowSnapshots: _windowSnapshots, maxNeighbors: _maxNeighbors, ...unknown } = src;
50
+ const unknownKey = Object.keys(unknown)[0];
51
+ if (unknownKey !== void 0) {
52
+ throw new Error(`recallNavigation contains unknown key ${JSON.stringify(unknownKey)}`);
53
+ }
54
+ return {
55
+ enabled: parseFlag(src, "enabled", RECALL_NAVIGATION_CONFIG_DEFAULTS.enabled),
56
+ windowSnapshots: parseBoundedInt(
57
+ src,
58
+ "windowSnapshots",
59
+ RECALL_NAVIGATION_CONFIG_DEFAULTS.windowSnapshots,
60
+ 1,
61
+ 50
62
+ ),
63
+ maxNeighbors: parseBoundedInt(
64
+ src,
65
+ "maxNeighbors",
66
+ RECALL_NAVIGATION_CONFIG_DEFAULTS.maxNeighbors,
67
+ 1,
68
+ 50
69
+ )
70
+ };
71
+ }
72
+
73
+ export {
74
+ DEFAULT_NAVIGATION_WINDOW_SNAPSHOTS,
75
+ RECALL_NAVIGATION_CONFIG_DEFAULTS,
76
+ shouldRecordRecallAuthorityHistory,
77
+ parseRecallNavigationConfig
78
+ };
79
+ //# sourceMappingURL=chunk-LVTT5AUG.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../src/recall-navigation-config.ts"],"sourcesContent":["/**\n * Recall-navigation config (issue #1956) — the `recallNavigation` block.\n *\n * Parsed the same way `deepRecall` is: shape-validated, string-coercion\n * safe (§24), no silent clamping of documented values (§33). Navigation is\n * a read-only surface over already-served recall results, so it defaults\n * ON; the `conservative` preset pins `enabled: false`.\n */\n\nimport { coerceBool, coerceNumber } from \"./connectors/coerce.js\";\n\nexport interface RecallNavigationConfig {\n /** Master switch. Default true (read-only, additive surface). */\n enabled: boolean;\n /**\n * How many of the session's most recent recall snapshots an expandable\n * or traversable id may come from. Default 3.\n */\n windowSnapshots: number;\n /** Ceiling for a traverse/entity-neighbor limit override. Default 10. */\n maxNeighbors: number;\n}\n\nexport interface RecallNavigationSettings {\n recallNavigation: RecallNavigationConfig;\n}\n\nexport const DEFAULT_NAVIGATION_WINDOW_SNAPSHOTS = 3;\n\nexport const RECALL_NAVIGATION_CONFIG_DEFAULTS: RecallNavigationConfig = {\n enabled: true,\n windowSnapshots: DEFAULT_NAVIGATION_WINDOW_SNAPSHOTS,\n maxNeighbors: 10,\n};\n\n/** Record served ids when display handles or navigation authority needs them. */\nexport function shouldRecordRecallAuthorityHistory(config: {\n recallMemoryHandles?: boolean;\n recallNavigation?: { enabled?: boolean };\n}): boolean {\n return config.recallMemoryHandles === true || config.recallNavigation?.enabled === true;\n}\n\nfunction parseFlag(src: Record<string, unknown>, key: string, fallback: boolean): boolean {\n const value = src[key];\n if (value === undefined || value === null) return fallback;\n const coerced = coerceBool(value);\n if (coerced === undefined) {\n throw new Error(\n `recallNavigation.${key} must be a boolean (or \"true\"/\"false\"/\"1\"/\"0\"); got ${JSON.stringify(value)}`,\n );\n }\n return coerced;\n}\n\nfunction parseBoundedInt(\n src: Record<string, unknown>,\n key: string,\n fallback: number,\n min: number,\n max: number,\n): number {\n const value = src[key];\n if (value === undefined || value === null) return fallback;\n const coerced = coerceNumber(value);\n if (coerced === undefined || !Number.isFinite(coerced) || !Number.isInteger(coerced)) {\n throw new Error(\n `recallNavigation.${key} must be an integer between ${min} and ${max}; got ${JSON.stringify(value)}`,\n );\n }\n if (coerced < min || coerced > max) {\n throw new Error(\n `recallNavigation.${key} must be an integer between ${min} and ${max}; got ${JSON.stringify(value)}`,\n );\n }\n return coerced;\n}\n\nexport function parseRecallNavigationConfig(raw: unknown): RecallNavigationConfig {\n if (raw === undefined || raw === null) return { ...RECALL_NAVIGATION_CONFIG_DEFAULTS };\n if (typeof raw !== \"object\" || Array.isArray(raw)) {\n throw new Error(`recallNavigation must be an object; got ${JSON.stringify(raw)}`);\n }\n const src = raw as Record<string, unknown>;\n const { enabled: _enabled, windowSnapshots: _windowSnapshots, maxNeighbors: _maxNeighbors, ...unknown } = src;\n const unknownKey = Object.keys(unknown)[0];\n if (unknownKey !== undefined) {\n throw new Error(`recallNavigation contains unknown key ${JSON.stringify(unknownKey)}`);\n }\n return {\n enabled: parseFlag(src, \"enabled\", RECALL_NAVIGATION_CONFIG_DEFAULTS.enabled),\n windowSnapshots: parseBoundedInt(\n src,\n \"windowSnapshots\",\n RECALL_NAVIGATION_CONFIG_DEFAULTS.windowSnapshots,\n 1,\n 50,\n ),\n maxNeighbors: parseBoundedInt(\n src,\n \"maxNeighbors\",\n RECALL_NAVIGATION_CONFIG_DEFAULTS.maxNeighbors,\n 1,\n 50,\n ),\n };\n}\n"],"mappings":";;;;;;AA2BO,IAAM,sCAAsC;AAE5C,IAAM,oCAA4D;AAAA,EACvE,SAAS;AAAA,EACT,iBAAiB;AAAA,EACjB,cAAc;AAChB;AAGO,SAAS,mCAAmC,QAGvC;AACV,SAAO,OAAO,wBAAwB,QAAQ,OAAO,kBAAkB,YAAY;AACrF;AAEA,SAAS,UAAU,KAA8B,KAAa,UAA4B;AACxF,QAAM,QAAQ,IAAI,GAAG;AACrB,MAAI,UAAU,UAAa,UAAU,KAAM,QAAO;AAClD,QAAM,UAAU,WAAW,KAAK;AAChC,MAAI,YAAY,QAAW;AACzB,UAAM,IAAI;AAAA,MACR,oBAAoB,GAAG,uDAAuD,KAAK,UAAU,KAAK,CAAC;AAAA,IACrG;AAAA,EACF;AACA,SAAO;AACT;AAEA,SAAS,gBACP,KACA,KACA,UACA,KACA,KACQ;AACR,QAAM,QAAQ,IAAI,GAAG;AACrB,MAAI,UAAU,UAAa,UAAU,KAAM,QAAO;AAClD,QAAM,UAAU,aAAa,KAAK;AAClC,MAAI,YAAY,UAAa,CAAC,OAAO,SAAS,OAAO,KAAK,CAAC,OAAO,UAAU,OAAO,GAAG;AACpF,UAAM,IAAI;AAAA,MACR,oBAAoB,GAAG,+BAA+B,GAAG,QAAQ,GAAG,SAAS,KAAK,UAAU,KAAK,CAAC;AAAA,IACpG;AAAA,EACF;AACA,MAAI,UAAU,OAAO,UAAU,KAAK;AAClC,UAAM,IAAI;AAAA,MACR,oBAAoB,GAAG,+BAA+B,GAAG,QAAQ,GAAG,SAAS,KAAK,UAAU,KAAK,CAAC;AAAA,IACpG;AAAA,EACF;AACA,SAAO;AACT;AAEO,SAAS,4BAA4B,KAAsC;AAChF,MAAI,QAAQ,UAAa,QAAQ,KAAM,QAAO,EAAE,GAAG,kCAAkC;AACrF,MAAI,OAAO,QAAQ,YAAY,MAAM,QAAQ,GAAG,GAAG;AACjD,UAAM,IAAI,MAAM,2CAA2C,KAAK,UAAU,GAAG,CAAC,EAAE;AAAA,EAClF;AACA,QAAM,MAAM;AACZ,QAAM,EAAE,SAAS,UAAU,iBAAiB,kBAAkB,cAAc,eAAe,GAAG,QAAQ,IAAI;AAC1G,QAAM,aAAa,OAAO,KAAK,OAAO,EAAE,CAAC;AACzC,MAAI,eAAe,QAAW;AAC5B,UAAM,IAAI,MAAM,yCAAyC,KAAK,UAAU,UAAU,CAAC,EAAE;AAAA,EACvF;AACA,SAAO;AAAA,IACL,SAAS,UAAU,KAAK,WAAW,kCAAkC,OAAO;AAAA,IAC5E,iBAAiB;AAAA,MACf;AAAA,MACA;AAAA,MACA,kCAAkC;AAAA,MAClC;AAAA,MACA;AAAA,IACF;AAAA,IACA,cAAc;AAAA,MACZ;AAAA,MACA;AAAA,MACA,kCAAkC;AAAA,MAClC;AAAA,MACA;AAAA,IACF;AAAA,EACF;AACF;","names":[]}
@@ -8,7 +8,7 @@ import {
8
8
  } from "./chunk-MPC7TYTZ.js";
9
9
  import {
10
10
  importCapsule
11
- } from "./chunk-VVX5PZFS.js";
11
+ } from "./chunk-ZHXSOMYH.js";
12
12
  import {
13
13
  isSharedContextWriteInputError
14
14
  } from "./chunk-IFBSZGW3.js";
@@ -38,10 +38,16 @@ import {
38
38
  computeWhoKnows,
39
39
  loadWhoKnowsEntities,
40
40
  validateWhoKnowsInput
41
- } from "./chunk-XJLTQTAO.js";
41
+ } from "./chunk-D7UUB33A.js";
42
42
  import {
43
43
  WriteQuarantineStore
44
44
  } from "./chunk-PJSK6OJM.js";
45
+ import {
46
+ trustResultFor
47
+ } from "./chunk-GNVZQ5JN.js";
48
+ import {
49
+ renderEpistemicHedge
50
+ } from "./chunk-YN2UN7N3.js";
45
51
  import {
46
52
  getTrustZoneStoreStatus,
47
53
  isTrustZoneName,
@@ -51,12 +57,6 @@ import {
51
57
  seedTrustZoneDemoDataset,
52
58
  summarizeTrustZonePromotionReadiness
53
59
  } from "./chunk-ROBHL3GL.js";
54
- import {
55
- trustResultFor
56
- } from "./chunk-GNVZQ5JN.js";
57
- import {
58
- renderEpistemicHedge
59
- } from "./chunk-YN2UN7N3.js";
60
60
  import {
61
61
  summarizeHourlyStatus
62
62
  } from "./chunk-J2MGTGKC.js";
@@ -66,18 +66,38 @@ import {
66
66
  import {
67
67
  isSearchExcludedPath
68
68
  } from "./chunk-46FVFU7S.js";
69
+ import {
70
+ renderNavigationResult
71
+ } from "./chunk-KIW3OOZE.js";
72
+ import {
73
+ DEFAULT_TRAVERSE_LIMIT,
74
+ selectTraverseNeighbors
75
+ } from "./chunk-YE4JBZO5.js";
76
+ import {
77
+ assertIdInNavigationWindow
78
+ } from "./chunk-5KVT6G5U.js";
79
+ import {
80
+ takeNavigateBudget
81
+ } from "./chunk-VYDGHJIN.js";
82
+ import {
83
+ planDisclosureStep
84
+ } from "./chunk-AS2NOPDM.js";
85
+ import {
86
+ parseNavigateLinkType
87
+ } from "./chunk-7O5EW7KX.js";
69
88
  import {
70
89
  decideDisclosureEscalation
71
90
  } from "./chunk-H7XKCNR6.js";
72
91
  import {
73
92
  toRecallExplainJson
74
- } from "./chunk-AUSRUOMQ.js";
93
+ } from "./chunk-PW4HTWXL.js";
75
94
  import {
76
- estimateRecallTokens
77
- } from "./chunk-Q62GA5U2.js";
95
+ estimateRecallTokens,
96
+ summarizeDisclosureTokens
97
+ } from "./chunk-VW5TGNJN.js";
78
98
  import {
79
99
  readAggregateExtractionWatermark
80
- } from "./chunk-WNPRRBOE.js";
100
+ } from "./chunk-2HDLDBJW.js";
81
101
  import {
82
102
  ReplicaDivergenceMonitor
83
103
  } from "./chunk-CVILPI77.js";
@@ -98,7 +118,7 @@ import {
98
118
  } from "./chunk-HWLIMQE2.js";
99
119
  import {
100
120
  readProjectedHarmonicGraph
101
- } from "./chunk-OP722LOG.js";
121
+ } from "./chunk-3254BYQV.js";
102
122
  import {
103
123
  wrapWorkLayerContext
104
124
  } from "./chunk-EI6V5UXY.js";
@@ -149,11 +169,11 @@ import {
149
169
  listMemoryGovernanceRuns,
150
170
  readMemoryGovernanceRunArtifact,
151
171
  runMemoryGovernance
152
- } from "./chunk-U26LB4WA.js";
172
+ } from "./chunk-5AJZ7EUW.js";
153
173
  import {
154
174
  CorpusWatermarkCache,
155
175
  computeServiceCorpusCensus
156
- } from "./chunk-JMAP6L6Q.js";
176
+ } from "./chunk-KDLOKVX7.js";
157
177
  import {
158
178
  CrossNamespaceBudget,
159
179
  toBudgetWarning
@@ -170,21 +190,21 @@ import {
170
190
  enqueuePassiveCorrectionNotification,
171
191
  parseBriefingFocus,
172
192
  parseBriefingWindow
173
- } from "./chunk-HPMCKAET.js";
193
+ } from "./chunk-OGAKUA7I.js";
174
194
  import {
175
195
  parseEntityFile,
176
196
  parseFrontmatter,
177
197
  qmdCollectionPathParts,
178
198
  qmdResultPathCandidates,
179
199
  selfDeps
180
- } from "./chunk-I65KB36L.js";
200
+ } from "./chunk-GMU7MAHS.js";
181
201
  import {
182
202
  namespaceCollectionName
183
- } from "./chunk-AIVRD66I.js";
203
+ } from "./chunk-T3F2HWIG.js";
184
204
  import {
185
205
  DEFAULT_RECALL_DISCLOSURE,
186
206
  isRecallDisclosure
187
- } from "./chunk-WN2OXGGH.js";
207
+ } from "./chunk-66YUOI53.js";
188
208
  import {
189
209
  normalizeProjectionPreview,
190
210
  normalizeProjectionTags
@@ -224,10 +244,16 @@ import {
224
244
  import {
225
245
  formatSupersededPrefix
226
246
  } from "./chunk-EH3HNCAM.js";
247
+ import {
248
+ RECALL_NAVIGATION_CONFIG_DEFAULTS
249
+ } from "./chunk-LVTT5AUG.js";
227
250
  import {
228
251
  ExtractionLivenessWarnThrottle,
229
252
  computeExtractionLivenessStatus
230
253
  } from "./chunk-3SG4FGDV.js";
254
+ import {
255
+ resolveEffectiveDeepRecallConfig
256
+ } from "./chunk-7RGX7BMF.js";
231
257
  import {
232
258
  buildProcedurePersistBody,
233
259
  normalizeProcedureSteps,
@@ -255,7 +281,7 @@ import {
255
281
  } from "./chunk-SYOIVK7K.js";
256
282
  import {
257
283
  splitCanonicalWriteRequest
258
- } from "./chunk-RSSLDMFX.js";
284
+ } from "./chunk-YTV6J4T6.js";
259
285
  import {
260
286
  applyBriefingLocationContext,
261
287
  daySummaryAutoOptions
@@ -277,10 +303,10 @@ import {
277
303
  } from "./chunk-VYCOJKSX.js";
278
304
  import {
279
305
  reapplyCategoryCoercion
280
- } from "./chunk-ZOGKZ2XT.js";
306
+ } from "./chunk-CRK6F6N3.js";
281
307
  import {
282
308
  exportCapsule
283
- } from "./chunk-VDX2J7OX.js";
309
+ } from "./chunk-KQAFEZQX.js";
284
310
  import {
285
311
  evaluateActionConfidence
286
312
  } from "./chunk-Z2YFLXHU.js";
@@ -358,7 +384,9 @@ import {
358
384
  } from "./chunk-5GKPFL3S.js";
359
385
  import {
360
386
  buildHandleIndexForResults,
361
- isHandleToken
387
+ isHandleToken,
388
+ parseIdOrHandle,
389
+ resolveHandle
362
390
  } from "./chunk-JAKIDQB2.js";
363
391
  import {
364
392
  OFFLINE_SYNC_SNAPSHOT_FORMAT,
@@ -3709,6 +3737,8 @@ var OPERATION_NAMES = [
3709
3737
  "meetings_get",
3710
3738
  "meetings_build",
3711
3739
  "deep_recall",
3740
+ "memory_expand",
3741
+ "memory_traverse",
3712
3742
  "standup",
3713
3743
  "action_confidence",
3714
3744
  "chatgpt_memory_inspector",
@@ -4453,6 +4483,237 @@ async function promoteMemory(options) {
4453
4483
  };
4454
4484
  }
4455
4485
 
4486
+ // src/recall-navigation.ts
4487
+ function toNavigationItem(summary, extras = {}) {
4488
+ const item = {
4489
+ memoryId: summary.id,
4490
+ path: summary.path,
4491
+ disclosure: summary.disclosure ?? "chunk",
4492
+ estimatedTokens: estimateRecallTokens(summary.content ?? summary.preview),
4493
+ preview: summary.preview
4494
+ };
4495
+ if (summary.content !== void 0) item.content = summary.content;
4496
+ if (extras.linkType !== void 0) item.linkType = extras.linkType;
4497
+ return item;
4498
+ }
4499
+ function applyBudget(request, extras) {
4500
+ const kept = [];
4501
+ let truncated = extras.truncated;
4502
+ for (const item of extras.items) {
4503
+ const candidate = [...kept, item];
4504
+ const cost = structuredCost(request, extras, candidate, truncated);
4505
+ if (!takeNavigateBudget(extras.budgetChars, cost).ok) {
4506
+ if (kept.length === 0) {
4507
+ const shrunk = shrinkItemToBudget(request, extras, item);
4508
+ if (shrunk !== void 0) {
4509
+ return finalizeBudget(request, extras, [shrunk], true);
4510
+ }
4511
+ }
4512
+ truncated = true;
4513
+ break;
4514
+ }
4515
+ kept.push(item);
4516
+ }
4517
+ return finalizeBudget(request, extras, kept, truncated);
4518
+ }
4519
+ function finalizeBudget(request, extras, items, truncated) {
4520
+ let kept = items;
4521
+ let flag = truncated;
4522
+ let used = measuredUsed(request, extras, kept, flag);
4523
+ while (used > extras.budgetChars && kept.length > 0) {
4524
+ kept = kept.slice(0, -1);
4525
+ flag = true;
4526
+ used = measuredUsed(request, extras, kept, flag);
4527
+ }
4528
+ return { items: kept, truncated: flag, used };
4529
+ }
4530
+ function structuredBody(request, extras, items, truncated, used) {
4531
+ return {
4532
+ ok: true,
4533
+ action: request.action,
4534
+ memoryId: extras.memoryId,
4535
+ namespace: extras.namespace,
4536
+ items,
4537
+ truncated,
4538
+ budget: { chars: extras.budgetChars, used },
4539
+ disclosureSpend: summarizeDisclosureTokens(
4540
+ items.map((item) => ({ disclosure: item.disclosure, estimatedTokens: item.estimatedTokens }))
4541
+ )
4542
+ };
4543
+ }
4544
+ function structuredCost(request, extras, items, truncated, used = 0) {
4545
+ return JSON.stringify(structuredBody(request, extras, items, truncated, used)).length;
4546
+ }
4547
+ function measuredUsed(request, extras, items, truncated) {
4548
+ return structuredCost(request, extras, items, truncated, structuredCost(request, extras, items, truncated));
4549
+ }
4550
+ function shrinkItemToBudget(request, extras, item) {
4551
+ let preview = item.preview;
4552
+ let content = item.content ?? "";
4553
+ const hasContent = item.content !== void 0;
4554
+ while (preview.length > 0 || content.length > 0) {
4555
+ const candidate = hasContent ? { ...item, preview, content } : { ...item, preview };
4556
+ if (takeNavigateBudget(extras.budgetChars, structuredCost(request, extras, [candidate], true)).ok) {
4557
+ return candidate;
4558
+ }
4559
+ if (content.length > 0) content = content.slice(0, Math.max(0, content.length - 16));
4560
+ else preview = preview.slice(0, Math.max(0, preview.length - 16));
4561
+ }
4562
+ return void 0;
4563
+ }
4564
+ function errorResult(request, error, message) {
4565
+ return { ok: false, action: request.action, error, message, rendered: renderNavigationResult({ ok: false, action: request.action, error, message }) };
4566
+ }
4567
+ function successResult(request, extras) {
4568
+ const budgeted = applyBudget(request, extras);
4569
+ const result = structuredBody(request, extras, budgeted.items, budgeted.truncated, budgeted.used);
4570
+ return { ...result, rendered: renderNavigationResult(result) };
4571
+ }
4572
+ function resolveRequestedMemoryId(request, snapshots, windowSnapshots) {
4573
+ const parsed = parseIdOrHandle(request.memoryId);
4574
+ if (!parsed.isHandle) return { ok: true, memoryId: parsed.value };
4575
+ const resolved = resolveHandle(
4576
+ request.memoryId,
4577
+ snapshots.map((memoryIds) => ({ memoryIds })),
4578
+ windowSnapshots
4579
+ );
4580
+ if (resolved.ok) return { ok: true, memoryId: resolved.memoryId };
4581
+ if (resolved.reason === "ambiguous") {
4582
+ throw new EngramAccessInputError(
4583
+ `Memory handle ${request.memoryId} is ambiguous in session ${request.sessionKey}: ${resolved.candidates.join(", ")}. Cite a unique memory id instead.`
4584
+ );
4585
+ }
4586
+ return { ok: false };
4587
+ }
4588
+ function clampLimit(requested, ceiling) {
4589
+ if (requested === void 0) return Math.min(DEFAULT_TRAVERSE_LIMIT, ceiling);
4590
+ if (!Number.isInteger(requested) || requested < 1) {
4591
+ throw new EngramAccessInputError(
4592
+ `memory navigation: limit must be a positive integer; got ${JSON.stringify(requested)}`
4593
+ );
4594
+ }
4595
+ return Math.min(requested, ceiling);
4596
+ }
4597
+ async function runRecallNavigation(deps, request) {
4598
+ if (!deps.config.enabled) {
4599
+ return errorResult(request, "disabled", "memory navigation is disabled; set recallNavigation.enabled");
4600
+ }
4601
+ const sessionKey = request.sessionKey?.trim() ?? "";
4602
+ if (sessionKey.length === 0) {
4603
+ throw new EngramAccessInputError(
4604
+ "memory navigation requires a sessionKey: navigation authority is scoped to the session's recent recalls"
4605
+ );
4606
+ }
4607
+ if (request.limit !== void 0) {
4608
+ clampLimit(request.limit, deps.config.maxNeighbors);
4609
+ }
4610
+ const windowSnapshots = deps.config.windowSnapshots;
4611
+ const servedIds = deps.recentServedIds(sessionKey, windowSnapshots);
4612
+ const resolved = resolveRequestedMemoryId(request, servedIds, windowSnapshots);
4613
+ if (!resolved.ok) {
4614
+ return errorResult(
4615
+ request,
4616
+ "not_served",
4617
+ `memory ${request.memoryId} was not served to session ${sessionKey} within the last ${windowSnapshots} recall snapshots; run recall first`
4618
+ );
4619
+ }
4620
+ const authority = assertIdInNavigationWindow({
4621
+ snapshots: servedIds.map((ids) => ({ servedIds: ids })),
4622
+ memoryId: resolved.memoryId,
4623
+ windowSnapshots
4624
+ });
4625
+ if (!authority.ok) {
4626
+ return errorResult(
4627
+ request,
4628
+ "not_served",
4629
+ `memory ${request.memoryId} was not served to session ${sessionKey} within the last ${windowSnapshots} recall snapshots; run recall first`
4630
+ );
4631
+ }
4632
+ const memoryId = authority.memoryId;
4633
+ const namespace = deps.resolveReadableNamespace(request.namespace, request.authenticatedPrincipal);
4634
+ const storage = await deps.getStorage(namespace);
4635
+ const memory = await storage.getMemoryById(memoryId);
4636
+ if (!memory) {
4637
+ return errorResult(
4638
+ request,
4639
+ "not_found",
4640
+ `memory ${memoryId} was not found in namespace ${namespace}; navigation never crosses the resolved namespace`
4641
+ );
4642
+ }
4643
+ if (request.action === "expand") {
4644
+ const target = request.disclosure ?? "raw";
4645
+ const step = planDisclosureStep({ from: "chunk", to: target });
4646
+ if (!step.ok) {
4647
+ const message = step.error === "unknown_level" ? `unknown disclosure level ${JSON.stringify(target)}; valid: chunk, section, raw` : `disclosure ${JSON.stringify(target)} is not deeper than the chunk level already served; expansion must go deeper (chunk \u2192 section \u2192 raw)`;
4648
+ return errorResult(request, step.error, message);
4649
+ }
4650
+ const summary = shapeMemorySummary(memory, storage.dir, target);
4651
+ return successResult(request, {
4652
+ memoryId,
4653
+ namespace,
4654
+ items: [toNavigationItem(summary)],
4655
+ truncated: false,
4656
+ budgetChars: deps.recallBudgetChars
4657
+ });
4658
+ }
4659
+ if (request.action === "traverse") {
4660
+ if (request.relation !== void 0) {
4661
+ const parsedRelation = parseNavigateLinkType(request.relation);
4662
+ if (!parsedRelation.ok) {
4663
+ return errorResult(
4664
+ request,
4665
+ "unknown_relation",
4666
+ `unknown relation ${JSON.stringify(request.relation)}; valid: supports, contradicts, elaborates, causes, caused_by, supersedes, follows, references, related`
4667
+ );
4668
+ }
4669
+ }
4670
+ const links = (memory.frontmatter.links ?? []).map((link) => ({
4671
+ targetId: link.targetId,
4672
+ linkType: link.linkType
4673
+ }));
4674
+ const selection = selectTraverseNeighbors({
4675
+ links,
4676
+ relation: request.relation,
4677
+ limit: clampLimit(request.limit, deps.config.maxNeighbors)
4678
+ });
4679
+ if (!selection.ok) {
4680
+ return errorResult(request, selection.error, `traverse refused: ${selection.error}`);
4681
+ }
4682
+ const items = [];
4683
+ for (const neighbor of selection.neighbors) {
4684
+ const neighborMemory = await storage.getMemoryById(neighbor.targetId);
4685
+ if (!neighborMemory) continue;
4686
+ items.push(toNavigationItem(shapeMemorySummary(neighborMemory, storage.dir, "chunk"), { linkType: neighbor.linkType }));
4687
+ }
4688
+ return successResult(request, {
4689
+ memoryId,
4690
+ namespace,
4691
+ items,
4692
+ truncated: selection.truncated,
4693
+ budgetChars: deps.recallBudgetChars
4694
+ });
4695
+ }
4696
+ const entityRef = memory.frontmatter.entityRef?.trim();
4697
+ if (!entityRef) {
4698
+ return successResult(request, { memoryId, namespace, items: [], truncated: false, budgetChars: deps.recallBudgetChars });
4699
+ }
4700
+ const window = await storage.readMemoriesWindow();
4701
+ const candidates = [];
4702
+ for (const candidate of window.memories) {
4703
+ if (candidate.frontmatter.id === memoryId) continue;
4704
+ if (candidate.frontmatter.entityRef?.trim() !== entityRef) continue;
4705
+ candidates.push(toNavigationItem(shapeMemorySummary(candidate, storage.dir, "chunk")));
4706
+ if (candidates.length >= clampLimit(request.limit, deps.config.maxNeighbors)) break;
4707
+ }
4708
+ return successResult(request, {
4709
+ memoryId,
4710
+ namespace,
4711
+ items: candidates,
4712
+ truncated: false,
4713
+ budgetChars: deps.recallBudgetChars
4714
+ });
4715
+ }
4716
+
4456
4717
  // src/procedural/library-maintenance.ts
4457
4718
  import path7 from "path";
4458
4719
  var MAINTENANCE_ACTOR = "procedure-library-maintenance";
@@ -14291,6 +14552,7 @@ var EngramAccessService = class extends SupportPassportAccessServiceBase {
14291
14552
  this.replicaDivergenceMonitor = new ReplicaDivergenceMonitor({ resolveSecretRef: options.resolveSecretRef });
14292
14553
  this.injectedSupportPassportGatewayRoute = options.supportPassportGatewayRoute ?? null;
14293
14554
  this.reviewDeckEnabled = options.reviewDeckEnabled === true;
14555
+ this.recallNavigationEnabled = (orchestrator.config.recallNavigation ?? RECALL_NAVIGATION_CONFIG_DEFAULTS).enabled;
14294
14556
  const accessCaps = resolveAccessSetupCapabilities(orchestrator.config);
14295
14557
  this.budget = new CrossNamespaceBudget({
14296
14558
  enabled: accessCaps.recallCrossNamespaceBudget,
@@ -14331,6 +14593,7 @@ var EngramAccessService = class extends SupportPassportAccessServiceBase {
14331
14593
  replicaDivergenceMonitor;
14332
14594
  injectedSupportPassportGatewayRoute;
14333
14595
  reviewDeckEnabled;
14596
+ recallNavigationEnabled;
14334
14597
  /** AccessObserveWriteSurface (access-service decomposition). Lazy; selfDeps live wiring. */
14335
14598
  _accessObserveWriteSurface;
14336
14599
  get accessObserveWriteSurface() {
@@ -15325,25 +15588,7 @@ var EngramAccessService = class extends SupportPassportAccessServiceBase {
15325
15588
  if (query.length === 0) {
15326
15589
  throw new EngramAccessInputError("deepRecall: query is required");
15327
15590
  }
15328
- let effective = cfg;
15329
- const requestedSteps = request.maxSteps;
15330
- if (requestedSteps !== void 0) {
15331
- if (typeof requestedSteps !== "number" || !Number.isInteger(requestedSteps) || requestedSteps < 0) {
15332
- throw new EngramAccessInputError("deepRecall: maxSteps must be a non-negative integer");
15333
- }
15334
- if (cfg.maxSteps <= 0) {
15335
- if (requestedSteps > 0) {
15336
- throw new EngramAccessInputError(
15337
- "deepRecall: the policy loop is disabled (deepRecall.maxSteps=0); maxSteps must be 0"
15338
- );
15339
- }
15340
- } else if (requestedSteps > cfg.maxSteps) {
15341
- throw new EngramAccessInputError(
15342
- `deepRecall: maxSteps ${requestedSteps} exceeds the configured ceiling ${cfg.maxSteps}`
15343
- );
15344
- }
15345
- effective = { ...cfg, maxSteps: requestedSteps };
15346
- }
15591
+ const effective = resolveEffectiveDeepRecallConfig(cfg, request.maxSteps);
15347
15592
  const principal = request.authenticatedPrincipal?.trim() || resolvePrincipal(request.sessionKey, this.orchestrator.config);
15348
15593
  const resolvedNamespace = this.resolveReadableNamespace(request.namespace, principal);
15349
15594
  const storage = await this.orchestrator.getStorage(resolvedNamespace);
@@ -15395,6 +15640,10 @@ var EngramAccessService = class extends SupportPassportAccessServiceBase {
15395
15640
  );
15396
15641
  return { ...result, rendered: renderDeepRecallResult(result) };
15397
15642
  }
15643
+ async recallNavigate(request) {
15644
+ const principal = request.authenticatedPrincipal?.trim() || resolvePrincipal(request.sessionKey, this.orchestrator.config);
15645
+ return runRecallNavigation({ config: this.orchestrator.config.recallNavigation ?? RECALL_NAVIGATION_CONFIG_DEFAULTS, recallBudgetChars: this.orchestrator.config.recallBudgetChars, recentServedIds: (sessionKey, depth) => this.orchestrator.handleHistory.recent(sessionKey, depth), resolveReadableNamespace: (ns, p) => this.resolveReadableNamespace(ns, p || void 0), getStorage: (namespace) => this.orchestrator.getStorage(namespace) }, { ...request, authenticatedPrincipal: (principal ?? "").length > 0 ? principal : void 0 });
15646
+ }
15398
15647
  async recallXray(request) {
15399
15648
  return this.accessRecallSurface.recallXray(request);
15400
15649
  }
@@ -17918,6 +18167,7 @@ export {
17918
18167
  resolveNamespaceWritablePreflight,
17919
18168
  resolveAuthorizedNamespaceWritablePreflight,
17920
18169
  resolveQueryNamespaceWritablePreflight,
18170
+ runRecallNavigation,
17921
18171
  runProcedureLibraryMaintenance,
17922
18172
  computeProcedureStats,
17923
18173
  formatProcedureStatsText,
@@ -17988,4 +18238,4 @@ export {
17988
18238
  EngramAccessService,
17989
18239
  AccessAdminOpsSurface
17990
18240
  };
17991
- //# sourceMappingURL=chunk-IUTYNDFS.js.map
18241
+ //# sourceMappingURL=chunk-LXMZM7LM.js.map