@remnic/core 9.54.4 → 9.54.5

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 (526) hide show
  1. package/dist/access-admin-ops-surface.d.ts +12 -11
  2. package/dist/access-admin-ops-surface.js +46 -44
  3. package/dist/access-authorization-probe.d.ts +12 -11
  4. package/dist/access-authorization-probe.js +47 -45
  5. package/dist/access-boundary.d.ts +12 -11
  6. package/dist/access-boundary.js +46 -44
  7. package/dist/access-cli.js +92 -90
  8. package/dist/access-cli.js.map +1 -1
  9. package/dist/access-coding-context-resolution.d.ts +1 -1
  10. package/dist/access-extraction-force-flush.d.ts +12 -11
  11. package/dist/access-extraction-force-flush.js +46 -44
  12. package/dist/access-health-types.d.ts +1 -1
  13. package/dist/access-http-lcm-compaction.d.ts +12 -11
  14. package/dist/access-http-lifecycle-flush.d.ts +12 -11
  15. package/dist/access-http-offline-stream.d.ts +12 -11
  16. package/dist/access-http-query.js +46 -44
  17. package/dist/access-http.d.ts +12 -11
  18. package/dist/access-http.js +56 -54
  19. package/dist/access-identity-continuity-surface.d.ts +9 -9
  20. package/dist/access-identity-continuity-surface.js +46 -44
  21. package/dist/access-lcm-surface.d.ts +12 -11
  22. package/dist/access-lcm-surface.js +46 -44
  23. package/dist/access-mcp.d.ts +12 -11
  24. package/dist/access-mcp.js +52 -50
  25. package/dist/access-memory-search-fanout.d.ts +22 -2
  26. package/dist/access-memory-search-fanout.js +1 -1
  27. package/dist/{access-namespace-preflight-C7n4tgWC.d.ts → access-namespace-preflight-BdHlGd_T.d.ts} +1 -1
  28. package/dist/access-namespace-preflight.d.ts +3 -3
  29. package/dist/access-namespace-preflight.js +46 -44
  30. package/dist/access-observe-write-surface.d.ts +12 -11
  31. package/dist/access-observe-write-surface.js +46 -44
  32. package/dist/access-offline-manifest.d.ts +10 -9
  33. package/dist/access-offline-manifest.js +12 -10
  34. package/dist/access-operations-batch.js +48 -46
  35. package/dist/access-operations.d.ts +15 -14
  36. package/dist/access-operations.js +51 -49
  37. package/dist/access-recall-concurrency.d.ts +12 -11
  38. package/dist/access-recall-concurrency.js +46 -44
  39. package/dist/access-recall-response.d.ts +12 -11
  40. package/dist/access-recall-response.js +46 -44
  41. package/dist/access-recall-surface.d.ts +12 -11
  42. package/dist/access-recall-surface.js +46 -44
  43. package/dist/access-schema.d.ts +90 -90
  44. package/dist/access-schema.js +3 -2
  45. package/dist/{access-service-CXvbxLK-.d.ts → access-service-DL7X9hrg.d.ts} +7 -7
  46. package/dist/access-service-helpers.d.ts +12 -11
  47. package/dist/access-service.d.ts +12 -11
  48. package/dist/access-service.js +46 -44
  49. package/dist/access-surface-catalog.d.ts +12 -11
  50. package/dist/access-wearables-meetings-surface.d.ts +3 -3
  51. package/dist/action-confidence.d.ts +1 -1
  52. package/dist/active-memory-bridge.d.ts +13 -1
  53. package/dist/active-memory-bridge.js +6 -1
  54. package/dist/active-recall.d.ts +1 -1
  55. package/dist/active-recall.js +3 -2
  56. package/dist/active-recall.js.map +1 -1
  57. package/dist/adapters/index.js +4 -4
  58. package/dist/adapters/registry.js +2 -2
  59. package/dist/ambient-provenance.d.ts +1 -1
  60. package/dist/artifact-search.d.ts +1 -1
  61. package/dist/behavior-learner.d.ts +1 -1
  62. package/dist/behavior-signals.d.ts +1 -1
  63. package/dist/bootstrap.d.ts +9 -9
  64. package/dist/briefing.d.ts +2 -2
  65. package/dist/briefing.js +30 -9
  66. package/dist/buffer-surprise-report.d.ts +1 -1
  67. package/dist/buffer-turn-helpers.d.ts +1 -1
  68. package/dist/buffer.d.ts +2 -2
  69. package/dist/buffer.js +3 -3
  70. package/dist/bulk-import/index.d.ts +3 -3
  71. package/dist/calibration.d.ts +1 -1
  72. package/dist/capabilities.d.ts +1 -1
  73. package/dist/{catalog-BOOxl-I2.d.ts → catalog-B90is4d8.d.ts} +1 -1
  74. package/dist/causal-behavior.d.ts +1 -1
  75. package/dist/causal-consolidation.d.ts +1 -1
  76. package/dist/causal-consolidation.js +31 -10
  77. package/dist/causal-consolidation.js.map +1 -1
  78. package/dist/causal-trajectory-graph.d.ts +1 -1
  79. package/dist/{chunk-6LAPLZOS.js → chunk-2DD6ZHOM.js} +8 -3
  80. package/dist/chunk-2DD6ZHOM.js.map +1 -0
  81. package/dist/{chunk-47P3RYZP.js → chunk-2INWPC6E.js} +2 -2
  82. package/dist/{chunk-3CSX3ETE.js → chunk-2LWQSV6A.js} +23 -11
  83. package/dist/chunk-2LWQSV6A.js.map +1 -0
  84. package/dist/{chunk-7BZOBA5J.js → chunk-2PNXOQ4P.js} +69 -11
  85. package/dist/chunk-2PNXOQ4P.js.map +1 -0
  86. package/dist/{chunk-WOPA3SGI.js → chunk-3OTSVCPK.js} +8 -8
  87. package/dist/{chunk-PX2LSHYM.js → chunk-3SXLD5T3.js} +3 -3
  88. package/dist/{chunk-T2JHZWH6.js → chunk-3WGI7F4V.js} +237 -93
  89. package/dist/chunk-3WGI7F4V.js.map +1 -0
  90. package/dist/{chunk-C4ZNGVK3.js → chunk-5JKUSBMX.js} +2 -2
  91. package/dist/{chunk-S75M5ZRK.js → chunk-6LEIWWAF.js} +16 -1
  92. package/dist/chunk-6LEIWWAF.js.map +1 -0
  93. package/dist/{chunk-MAXVH44E.js → chunk-6NNNURLK.js} +4 -4
  94. package/dist/{chunk-LJS7KUPV.js → chunk-6PZGKGAO.js} +2 -2
  95. package/dist/{chunk-YN6ASZUG.js → chunk-6QPI2ITJ.js} +5 -5
  96. package/dist/{chunk-CYF6WVE7.js → chunk-7HG7MGAP.js} +2688 -496
  97. package/dist/chunk-7HG7MGAP.js.map +1 -0
  98. package/dist/{chunk-CGVHPCP2.js → chunk-7Q7JWLQ4.js} +2 -2
  99. package/dist/{chunk-227UFSEQ.js → chunk-7RZJWZ46.js} +5 -5
  100. package/dist/{chunk-JBPKEARU.js → chunk-AU7Q3LSC.js} +4 -4
  101. package/dist/{chunk-PDDTI7IC.js → chunk-B4T3FQMT.js} +1 -1
  102. package/dist/{chunk-UU3G6GUP.js → chunk-BIF4SHMD.js} +1 -1
  103. package/dist/{chunk-UU3G6GUP.js.map → chunk-BIF4SHMD.js.map} +1 -1
  104. package/dist/{chunk-APPFNGX6.js → chunk-BSXGTDVJ.js} +2 -2
  105. package/dist/{chunk-4IIFL7GC.js → chunk-CLKBV3Z3.js} +10 -10
  106. package/dist/{chunk-ZYLC7NFO.js → chunk-CSY44OKU.js} +4 -4
  107. package/dist/{chunk-HLYR2TQL.js → chunk-CUTFSLSD.js} +2 -2
  108. package/dist/{chunk-RDJRFDJY.js → chunk-DBY26JJJ.js} +2 -2
  109. package/dist/{chunk-QWGE2PUH.js → chunk-DDA55IVB.js} +10 -10
  110. package/dist/{chunk-VMMQDEN5.js → chunk-DN2IDKI5.js} +2 -2
  111. package/dist/{chunk-2GFK22OZ.js → chunk-DOOWFDWN.js} +2 -2
  112. package/dist/{chunk-7FGL6CGA.js → chunk-DVYRD4HY.js} +2 -2
  113. package/dist/{chunk-YGLY6QFV.js → chunk-F2Y6I74C.js} +2 -2
  114. package/dist/{chunk-UU7TRFNE.js → chunk-FFEBSFVT.js} +2 -2
  115. package/dist/chunk-HNDIND7P.js +331 -0
  116. package/dist/chunk-HNDIND7P.js.map +1 -0
  117. package/dist/{chunk-NIS256NW.js → chunk-JKW663ZN.js} +2 -2
  118. package/dist/{chunk-G7A5HLUS.js → chunk-KJH6W2I7.js} +2 -2
  119. package/dist/{chunk-IXEBUYO4.js → chunk-KM55SMLG.js} +11 -2
  120. package/dist/{chunk-IXEBUYO4.js.map → chunk-KM55SMLG.js.map} +1 -1
  121. package/dist/{chunk-G2LUMAUF.js → chunk-L7RTUEDG.js} +12 -5
  122. package/dist/chunk-L7RTUEDG.js.map +1 -0
  123. package/dist/chunk-LC2BDILZ.js +57 -0
  124. package/dist/chunk-LC2BDILZ.js.map +1 -0
  125. package/dist/{chunk-JV5YUBIZ.js → chunk-LC3FD4BV.js} +52 -46
  126. package/dist/chunk-LC3FD4BV.js.map +1 -0
  127. package/dist/{chunk-HWRD23DW.js → chunk-LVKYLMSM.js} +3 -3
  128. package/dist/{chunk-RUMNY5DT.js → chunk-MRGJZ75M.js} +6 -2
  129. package/dist/chunk-MRGJZ75M.js.map +1 -0
  130. package/dist/{chunk-ZMYDYNI4.js → chunk-N7CXQ5TA.js} +4 -4
  131. package/dist/{chunk-3JLPGJ43.js → chunk-NGT35IGQ.js} +5 -5
  132. package/dist/{chunk-GUKBW4HL.js → chunk-NQMSEB5D.js} +6 -6
  133. package/dist/{chunk-WRJVB3C2.js → chunk-PO7NXBG2.js} +2 -2
  134. package/dist/{chunk-WM65LU67.js → chunk-QOQQMVR2.js} +2 -2
  135. package/dist/{chunk-QHFV6VNU.js → chunk-QPAQSG3F.js} +2 -2
  136. package/dist/{chunk-UTRO5UJU.js → chunk-QPW3PAIH.js} +5 -1
  137. package/dist/chunk-QPW3PAIH.js.map +1 -0
  138. package/dist/{chunk-6R4G7N4S.js → chunk-QQXWFDRD.js} +128 -74
  139. package/dist/chunk-QQXWFDRD.js.map +1 -0
  140. package/dist/{chunk-UES4BHA2.js → chunk-QTO6BMQZ.js} +2 -2
  141. package/dist/{chunk-THPPCISA.js → chunk-RBII7637.js} +5 -5
  142. package/dist/{chunk-QT2FRYI4.js → chunk-RG426DJO.js} +2 -2
  143. package/dist/{chunk-XUAMCLY4.js → chunk-TKFGFDPJ.js} +17 -13
  144. package/dist/chunk-TKFGFDPJ.js.map +1 -0
  145. package/dist/{chunk-VKXWK44Q.js → chunk-TY6MKIWP.js} +3 -3
  146. package/dist/{chunk-AZM4CCAC.js → chunk-UWJNKGBA.js} +5 -5
  147. package/dist/{chunk-JDZPNCMA.js → chunk-UYOXFFEY.js} +6 -3
  148. package/dist/chunk-UYOXFFEY.js.map +1 -0
  149. package/dist/{chunk-ZPJ4QSGP.js → chunk-VTU5IEKY.js} +2 -2
  150. package/dist/{chunk-RZ4XGKOJ.js → chunk-VYQ4URQB.js} +8 -8
  151. package/dist/{chunk-WDBX6VER.js → chunk-VZRFGJCH.js} +5 -5
  152. package/dist/{chunk-IBKR2TFR.js → chunk-WM5LD6AT.js} +2 -2
  153. package/dist/{chunk-K4QS7LXU.js → chunk-WZWZRZ2V.js} +2 -2
  154. package/dist/{chunk-G4T7L557.js → chunk-XKAR4RF6.js} +2 -2
  155. package/dist/{chunk-DZD576ZU.js → chunk-XSV2YDCJ.js} +2 -2
  156. package/dist/{chunk-G7Z6EENO.js → chunk-YDWPYDML.js} +4 -4
  157. package/dist/{chunk-6HPHEFXT.js → chunk-YKZLOPTC.js} +2 -2
  158. package/dist/{chunk-NH5IR2WM.js → chunk-YR65W7BV.js} +6 -2
  159. package/dist/chunk-YR65W7BV.js.map +1 -0
  160. package/dist/{chunk-GYPQL6XN.js → chunk-Z4N7SVVF.js} +35 -47
  161. package/dist/chunk-Z4N7SVVF.js.map +1 -0
  162. package/dist/{cli-DVUFIa5E.d.ts → cli-jfuZXixq.d.ts} +5 -5
  163. package/dist/cli.d.ts +14 -13
  164. package/dist/cli.js +74 -72
  165. package/dist/coding/pre-action-gate.d.ts +1 -1
  166. package/dist/compounding/engine.d.ts +2 -2
  167. package/dist/compounding/engine.js +30 -9
  168. package/dist/compounding/preference-consolidator.d.ts +1 -1
  169. package/dist/compression-optimizer.d.ts +1 -1
  170. package/dist/config.d.ts +1 -1
  171. package/dist/config.js +3 -2
  172. package/dist/connectors/codex-materialize-runner.d.ts +1 -1
  173. package/dist/connectors/codex-materialize-runner.js +30 -9
  174. package/dist/connectors/codex-materialize.d.ts +1 -1
  175. package/dist/connectors/index.d.ts +1 -1
  176. package/dist/connectors/index.js +29 -9
  177. package/dist/consolidation-provenance-check.d.ts +2 -2
  178. package/dist/consolidation-undo.d.ts +2 -2
  179. package/dist/contradiction/index.d.ts +2 -2
  180. package/dist/contradiction/index.js +3 -1
  181. package/dist/contradiction-scan-KCADHXPE.js +20 -0
  182. package/dist/converge-config.d.ts +1 -1
  183. package/dist/convergence-refresh.d.ts +2 -2
  184. package/dist/convergence-refresh.js +32 -11
  185. package/dist/conversation-index/backend.d.ts +1 -1
  186. package/dist/conversation-index/backend.js +2 -2
  187. package/dist/conversation-index/chunker.d.ts +1 -1
  188. package/dist/conversation-index/faiss-adapter.d.ts +1 -1
  189. package/dist/conversation-index/indexer.d.ts +1 -1
  190. package/dist/conversation-index/search.d.ts +1 -1
  191. package/dist/corpus-watermark.d.ts +1 -1
  192. package/dist/corpus-watermark.js +21 -20
  193. package/dist/day-summary.d.ts +1 -1
  194. package/dist/delinearize.d.ts +1 -1
  195. package/dist/dependency-propagation-config.d.ts +1 -1
  196. package/dist/{dependency-propagation-delivery-XzF76C9n.d.ts → dependency-propagation-delivery-CTDuAVJc.d.ts} +1 -1
  197. package/dist/direct-answer-wiring.d.ts +1 -1
  198. package/dist/direct-answer.d.ts +1 -1
  199. package/dist/embedding-fallback.d.ts +1 -1
  200. package/dist/enrichment/index.d.ts +1 -1
  201. package/dist/entity-retrieval.d.ts +2 -2
  202. package/dist/entity-retrieval.js +30 -9
  203. package/dist/entity-schema.d.ts +1 -1
  204. package/dist/explicit-capture.d.ts +9 -9
  205. package/dist/explicit-capture.js +6 -4
  206. package/dist/external-wiki-access.d.ts +12 -11
  207. package/dist/external-wiki-access.js +47 -45
  208. package/dist/external-wiki-collection-registration.d.ts +1 -1
  209. package/dist/external-wiki-collection.d.ts +1 -1
  210. package/dist/external-wiki-mcp-tools.d.ts +12 -11
  211. package/dist/extraction-error-classification.d.ts +1 -1
  212. package/dist/extraction-faithfulness.d.ts +1 -1
  213. package/dist/extraction-judge-telemetry.d.ts +1 -1
  214. package/dist/extraction-judge-training.d.ts +1 -1
  215. package/dist/extraction-judge.d.ts +1 -1
  216. package/dist/extraction-liveness.d.ts +1 -1
  217. package/dist/extraction-normalization.d.ts +1 -1
  218. package/dist/extraction-prompt.d.ts +1 -1
  219. package/dist/extraction-source-grounding-rules.d.ts +1 -1
  220. package/dist/extraction-source-grounding.d.ts +1 -1
  221. package/dist/extraction.d.ts +1 -1
  222. package/dist/extraction.js +29 -13
  223. package/dist/fallback-llm.d.ts +1 -1
  224. package/dist/{first-start-migration-626C5554.js → first-start-migration-LMMZFLKK.js} +13 -5
  225. package/dist/first-start-migration-LMMZFLKK.js.map +1 -0
  226. package/dist/graph-dashboard-diff.d.ts +1 -1
  227. package/dist/graph-dashboard-key.d.ts +1 -1
  228. package/dist/graph-dashboard-parser.d.ts +1 -1
  229. package/dist/graph-edge-reinforcement.d.ts +1 -1
  230. package/dist/graph-path-reconstruction.d.ts +1 -1
  231. package/dist/graph-path-scoring.d.ts +1 -1
  232. package/dist/graph-snapshot.d.ts +1 -1
  233. package/dist/graph.d.ts +1 -1
  234. package/dist/harmonic-retrieval.js +1 -1
  235. package/dist/importance.d.ts +1 -1
  236. package/dist/importers/index.d.ts +1 -1
  237. package/dist/in-flight-reads.d.ts +1 -1
  238. package/dist/index.d.ts +1439 -716
  239. package/dist/index.js +207 -121
  240. package/dist/intent.d.ts +1 -1
  241. package/dist/lcm/engine.d.ts +1 -1
  242. package/dist/lcm/engine.js +2 -2
  243. package/dist/lcm/index.d.ts +1 -1
  244. package/dist/lcm/index.js +5 -5
  245. package/dist/lcm/tools.d.ts +1 -1
  246. package/dist/lifecycle.d.ts +1 -1
  247. package/dist/live-connectors-runner.d.ts +1 -1
  248. package/dist/local-llm.d.ts +1 -1
  249. package/dist/local-model-endpoint.d.ts +1 -1
  250. package/dist/maintenance/memory-governance.d.ts +1 -1
  251. package/dist/maintenance/memory-governance.js +30 -9
  252. package/dist/maintenance/rebuild-memory-lifecycle-ledger.d.ts +2 -2
  253. package/dist/maintenance/rebuild-memory-lifecycle-ledger.js +30 -9
  254. package/dist/maintenance/rebuild-memory-projection.d.ts +2 -2
  255. package/dist/maintenance/rebuild-memory-projection.js +31 -10
  256. package/dist/{maintenance-BJzNIKBE.d.ts → maintenance-heMZSq7G.d.ts} +3 -3
  257. package/dist/mcp-memory-inspector-app.d.ts +12 -11
  258. package/dist/memory-action-policy.d.ts +1 -1
  259. package/dist/memory-cache.d.ts +1 -1
  260. package/dist/memory-lifecycle-ledger-utils.d.ts +1 -1
  261. package/dist/memory-projection-mutations.js +2 -2
  262. package/dist/memory-projection-store.d.ts +6 -2
  263. package/dist/memory-projection-store.js +1 -1
  264. package/dist/memory-provenance.d.ts +1 -1
  265. package/dist/memory-snapshot.d.ts +1 -1
  266. package/dist/memory-worth-outcomes.d.ts +2 -2
  267. package/dist/models-json.d.ts +1 -1
  268. package/dist/namespaces/migrate.d.ts +3 -3
  269. package/dist/namespaces/migrate.js +20 -19
  270. package/dist/namespaces/principal.d.ts +1 -1
  271. package/dist/namespaces/search.d.ts +1 -1
  272. package/dist/namespaces/search.js +6 -6
  273. package/dist/namespaces/storage.d.ts +3 -3
  274. package/dist/namespaces/storage.js +30 -9
  275. package/dist/native-knowledge.d.ts +1 -1
  276. package/dist/offline-sync-file-io.d.ts +20 -0
  277. package/dist/offline-sync-file-io.js +18 -0
  278. package/dist/offline-sync-file-io.js.map +1 -0
  279. package/dist/offline-sync-impression-drain.d.ts +1 -1
  280. package/dist/offline-sync-impression-drain.js +5 -5
  281. package/dist/offline-sync.d.ts +8 -6
  282. package/dist/offline-sync.js +2 -1
  283. package/dist/operator-doctor-corpus.d.ts +1 -1
  284. package/dist/operator-doctor-corpus.js +22 -21
  285. package/dist/operator-doctor-replica.d.ts +1 -1
  286. package/dist/operator-toolkit.d.ts +3 -3
  287. package/dist/operator-toolkit.js +34 -32
  288. package/dist/orchestration/compression-guideline-coordinator.d.ts +2 -2
  289. package/dist/orchestration/maintenance.d.ts +4 -4
  290. package/dist/orchestration/maintenance.js +35 -15
  291. package/dist/{orchestrator-BiXgBJBQ.d.ts → orchestrator-BQQPsSjs.d.ts} +11 -8
  292. package/dist/orchestrator.d.ts +9 -9
  293. package/dist/orchestrator.js +93 -91
  294. package/dist/patterns-cli.d.ts +1 -1
  295. package/dist/{pipeline-sz_dcuLg.d.ts → pipeline-DFfmsnGk.d.ts} +1 -1
  296. package/dist/policy-runtime.d.ts +1 -1
  297. package/dist/proactive-contention.d.ts +1 -1
  298. package/dist/provenance.d.ts +1 -1
  299. package/dist/{purge-533FZLS4.js → purge-GB7PZHT2.js} +2 -2
  300. package/dist/{qmd-eAWObK4M.d.ts → qmd-BF5bcVRs.d.ts} +1 -1
  301. package/dist/qmd-preflight.d.ts +2 -2
  302. package/dist/qmd-recall-cache.d.ts +1 -1
  303. package/dist/qmd.d.ts +2 -2
  304. package/dist/recall-concurrency-config.d.ts +1 -1
  305. package/dist/recall-disclosure-escalation.d.ts +1 -1
  306. package/dist/recall-explain-renderer.d.ts +1 -1
  307. package/dist/recall-explain-renderer.js +3 -3
  308. package/dist/recall-memory-map.d.ts +1 -1
  309. package/dist/recall-planner-llm.d.ts +1 -1
  310. package/dist/recall-state.d.ts +1 -1
  311. package/dist/recall-tag-filter.d.ts +1 -1
  312. package/dist/recall-timings.d.ts +1 -1
  313. package/dist/recall-xray-cli.d.ts +1 -1
  314. package/dist/recall-xray-cli.js +4 -4
  315. package/dist/recall-xray-renderer.d.ts +1 -1
  316. package/dist/recall-xray-renderer.js +3 -3
  317. package/dist/recall-xray.d.ts +1 -1
  318. package/dist/recall-xray.js +2 -2
  319. package/dist/reconcile/cursor.d.ts +2 -1
  320. package/dist/reconcile/manifest.d.ts +2 -1
  321. package/dist/reconcile/manifest.js +6 -5
  322. package/dist/reconcile/plan.d.ts +2 -1
  323. package/dist/reconcile/plan.js +3 -2
  324. package/dist/replay/normalizers/chatgpt.d.ts +1 -1
  325. package/dist/replay/normalizers/claude.d.ts +1 -1
  326. package/dist/replay/normalizers/openclaw.d.ts +1 -1
  327. package/dist/replay/normalizers/shared.d.ts +1 -1
  328. package/dist/replay/runner.d.ts +1 -1
  329. package/dist/replay/types.d.ts +1 -1
  330. package/dist/replica-divergence.d.ts +1 -1
  331. package/dist/replica-peers-config.d.ts +1 -1
  332. package/dist/resolve-auth-token.d.ts +1 -1
  333. package/dist/resume-bundles.js +4 -3
  334. package/dist/retrieval-agents.d.ts +2 -2
  335. package/dist/retrieval-tiers.d.ts +1 -1
  336. package/dist/routing/engine.d.ts +1 -1
  337. package/dist/routing/store.d.ts +1 -1
  338. package/dist/salvage-envelope.d.ts +1 -1
  339. package/dist/schemas.d.ts +138 -138
  340. package/dist/{scope-profiles-BBQsXuyj.d.ts → scope-profiles-CbUOsE_E.d.ts} +1 -1
  341. package/dist/search/embed-helper.d.ts +1 -1
  342. package/dist/search/factory.d.ts +1 -1
  343. package/dist/search/factory.js +4 -4
  344. package/dist/search/index.d.ts +1 -1
  345. package/dist/search/index.js +6 -6
  346. package/dist/search/lancedb-backend.d.ts +1 -1
  347. package/dist/search/meilisearch-backend.d.ts +1 -1
  348. package/dist/search/noop-backend.d.ts +1 -1
  349. package/dist/search/orama-backend.d.ts +1 -1
  350. package/dist/search/port.d.ts +1 -1
  351. package/dist/search/remote-backend.d.ts +1 -1
  352. package/dist/{semantic-consolidation-HD8RkzVA.d.ts → semantic-consolidation-DAB3xdKM.d.ts} +1 -1
  353. package/dist/semantic-consolidation.d.ts +2 -2
  354. package/dist/semantic-consolidation.js +31 -10
  355. package/dist/semantic-rule-promotion.js +30 -9
  356. package/dist/semantic-rule-verifier.d.ts +1 -1
  357. package/dist/semantic-rule-verifier.js +30 -9
  358. package/dist/{service-DIrtHHEg.d.ts → service-DGKg2O6r.d.ts} +2 -2
  359. package/dist/session-observer-bands.d.ts +1 -1
  360. package/dist/session-observer-state.d.ts +1 -1
  361. package/dist/shared-context/manager.d.ts +9 -9
  362. package/dist/signal.d.ts +1 -1
  363. package/dist/source-agent-qualifier.d.ts +1 -1
  364. package/dist/source-agent-qualifier.js +28 -12
  365. package/dist/{storage-DqCzXi56.d.ts → storage-CC1jKcWg.d.ts} +46 -13
  366. package/dist/storage.d.ts +2 -2
  367. package/dist/storage.js +30 -9
  368. package/dist/summarizer.d.ts +1 -1
  369. package/dist/summary-snapshot.d.ts +1 -1
  370. package/dist/temporal-supersession.d.ts +2 -2
  371. package/dist/temporal-timeline-recall.d.ts +1 -1
  372. package/dist/temporal-validity.d.ts +1 -1
  373. package/dist/threading.d.ts +1 -1
  374. package/dist/tier-migration.d.ts +2 -2
  375. package/dist/tier-routing.d.ts +2 -2
  376. package/dist/tier-routing.js +7 -1
  377. package/dist/{tier-stats-2JCZYEF7.js → tier-stats-JDN6HRNT.js} +8 -2
  378. package/dist/{tier-stats-2JCZYEF7.js.map → tier-stats-JDN6HRNT.js.map} +1 -1
  379. package/dist/topics.d.ts +1 -1
  380. package/dist/transcript.d.ts +1 -1
  381. package/dist/transfer/types.d.ts +66 -66
  382. package/dist/trust-score-stage.d.ts +1 -1
  383. package/dist/trust-score.d.ts +1 -1
  384. package/dist/{types-d_j4vC6N.d.ts → types-BnQza1y8.d.ts} +2 -1
  385. package/dist/types.d.ts +1 -1
  386. package/dist/types.js +1 -1
  387. package/dist/utility-runtime.d.ts +2 -2
  388. package/dist/verified-recall.js +30 -9
  389. package/dist/write-envelope.d.ts +1 -1
  390. package/package.json +2 -2
  391. package/src/access-http.test.ts +31 -0
  392. package/src/access-memory-search-fanout.ts +24 -1
  393. package/src/access-offline-manifest.ts +5 -0
  394. package/src/access-service-namespace.test.ts +14 -0
  395. package/src/access-service-observe-scope.test.ts +2 -0
  396. package/src/access-service-offline-file-content.test.ts +211 -0
  397. package/src/access-service.ts +20 -43
  398. package/src/active-memory-bridge.test.ts +151 -0
  399. package/src/active-memory-bridge.ts +87 -11
  400. package/src/briefing.test.ts +38 -0
  401. package/src/briefing.ts +3 -3
  402. package/src/cli.ts +6 -1
  403. package/src/connectors/codex-materialize-runner.ts +2 -0
  404. package/src/contradiction/contradiction-scan.ts +2 -0
  405. package/src/contradiction/contradiction.test.ts +42 -0
  406. package/src/correction/correction-access-wiring.ts +8 -2
  407. package/src/correction/correction-storage-integration.test.ts +7 -0
  408. package/src/explicit-capture.test.ts +24 -0
  409. package/src/explicit-capture.ts +2 -0
  410. package/src/index.ts +3 -0
  411. package/src/maintenance/first-start-migration.ts +2 -1
  412. package/src/maintenance/memory-governance.test.ts +25 -0
  413. package/src/maintenance/memory-governance.ts +4 -1
  414. package/src/maintenance/pattern-reinforcement.test.ts +20 -0
  415. package/src/maintenance/pattern-reinforcement.ts +2 -1
  416. package/src/maintenance/rebuild-memory-projection.ts +8 -8
  417. package/src/memory-projection-store.ts +25 -27
  418. package/src/offline-sync-file-io.ts +68 -0
  419. package/src/offline-sync.ts +43 -57
  420. package/src/orchestration/consolidation-run.ts +5 -4
  421. package/src/orchestration/contradiction-linking-coordinator.ts +7 -0
  422. package/src/orchestration/contradiction-localization.integration.test.ts +115 -0
  423. package/src/orchestration/lifecycle-policy-coordinator.ts +2 -1
  424. package/src/orchestration/qmd-result-resolver.test.ts +215 -14
  425. package/src/orchestration/qmd-result-resolver.ts +142 -82
  426. package/src/orchestration/recall-search-pipeline.test.ts +41 -0
  427. package/src/orchestration/recall-search-pipeline.ts +12 -0
  428. package/src/orchestration/semantic-consolidation-coordinator.ts +2 -1
  429. package/src/orchestration/tier-migration-coordinator.ts +23 -56
  430. package/src/orchestration/workspace-ops.test.ts +37 -0
  431. package/src/orchestration/workspace-ops.ts +5 -29
  432. package/src/orchestrator.ts +7 -8
  433. package/src/storage/supersession-audit.ts +7 -1
  434. package/src/storage/supersession-side-effects.ts +17 -5
  435. package/src/storage.ts +18 -19
  436. package/src/support-passport/card-projection.test.ts +129 -0
  437. package/src/support-passport/card-projection.ts +287 -0
  438. package/src/support-passport/card-service.test.ts +2462 -0
  439. package/src/support-passport/card-service.ts +1042 -0
  440. package/src/support-passport/contracts.test.ts +143 -0
  441. package/src/support-passport/contracts.ts +136 -0
  442. package/src/support-passport/errors.ts +24 -0
  443. package/src/support-passport/grant-contracts.ts +139 -0
  444. package/src/support-passport/grant-service-cache.test.ts +148 -0
  445. package/src/support-passport/grant-service-cancellation.test.ts +81 -0
  446. package/src/support-passport/grant-service.test.ts +2882 -0
  447. package/src/support-passport/grant-service.ts +364 -0
  448. package/src/support-passport/grant-store-commit-hook.test.ts +123 -0
  449. package/src/support-passport/grant-store-order.test.ts +60 -0
  450. package/src/support-passport/grant-store-path-safety.test.ts +30 -0
  451. package/src/support-passport/grant-store-recovery.test.ts +448 -0
  452. package/src/support-passport/grant-store.ts +902 -0
  453. package/src/support-passport/index.ts +7 -0
  454. package/src/support-passport/offline-sync-guard.ts +230 -0
  455. package/src/support-passport/owner-lock.ts +53 -0
  456. package/src/support-passport/private-file.ts +371 -0
  457. package/src/tier-routing.ts +28 -17
  458. package/src/training-export/converter.test.ts +24 -0
  459. package/src/training-export/converter.ts +2 -0
  460. package/src/types.ts +1 -1
  461. package/src/wearables/service.test.ts +13 -0
  462. package/src/wearables/service.ts +2 -0
  463. package/dist/chunk-3CSX3ETE.js.map +0 -1
  464. package/dist/chunk-6LAPLZOS.js.map +0 -1
  465. package/dist/chunk-6R4G7N4S.js.map +0 -1
  466. package/dist/chunk-7BZOBA5J.js.map +0 -1
  467. package/dist/chunk-CYF6WVE7.js.map +0 -1
  468. package/dist/chunk-G2LUMAUF.js.map +0 -1
  469. package/dist/chunk-GYPQL6XN.js.map +0 -1
  470. package/dist/chunk-JDZPNCMA.js.map +0 -1
  471. package/dist/chunk-JV5YUBIZ.js.map +0 -1
  472. package/dist/chunk-NH5IR2WM.js.map +0 -1
  473. package/dist/chunk-RUMNY5DT.js.map +0 -1
  474. package/dist/chunk-S75M5ZRK.js.map +0 -1
  475. package/dist/chunk-T2JHZWH6.js.map +0 -1
  476. package/dist/chunk-UTRO5UJU.js.map +0 -1
  477. package/dist/chunk-XUAMCLY4.js.map +0 -1
  478. package/dist/contradiction-scan-HYLIRMJ2.js +0 -14
  479. package/dist/first-start-migration-626C5554.js.map +0 -1
  480. /package/dist/{chunk-47P3RYZP.js.map → chunk-2INWPC6E.js.map} +0 -0
  481. /package/dist/{chunk-WOPA3SGI.js.map → chunk-3OTSVCPK.js.map} +0 -0
  482. /package/dist/{chunk-PX2LSHYM.js.map → chunk-3SXLD5T3.js.map} +0 -0
  483. /package/dist/{chunk-C4ZNGVK3.js.map → chunk-5JKUSBMX.js.map} +0 -0
  484. /package/dist/{chunk-MAXVH44E.js.map → chunk-6NNNURLK.js.map} +0 -0
  485. /package/dist/{chunk-LJS7KUPV.js.map → chunk-6PZGKGAO.js.map} +0 -0
  486. /package/dist/{chunk-YN6ASZUG.js.map → chunk-6QPI2ITJ.js.map} +0 -0
  487. /package/dist/{chunk-CGVHPCP2.js.map → chunk-7Q7JWLQ4.js.map} +0 -0
  488. /package/dist/{chunk-227UFSEQ.js.map → chunk-7RZJWZ46.js.map} +0 -0
  489. /package/dist/{chunk-JBPKEARU.js.map → chunk-AU7Q3LSC.js.map} +0 -0
  490. /package/dist/{chunk-PDDTI7IC.js.map → chunk-B4T3FQMT.js.map} +0 -0
  491. /package/dist/{chunk-APPFNGX6.js.map → chunk-BSXGTDVJ.js.map} +0 -0
  492. /package/dist/{chunk-4IIFL7GC.js.map → chunk-CLKBV3Z3.js.map} +0 -0
  493. /package/dist/{chunk-ZYLC7NFO.js.map → chunk-CSY44OKU.js.map} +0 -0
  494. /package/dist/{chunk-HLYR2TQL.js.map → chunk-CUTFSLSD.js.map} +0 -0
  495. /package/dist/{chunk-RDJRFDJY.js.map → chunk-DBY26JJJ.js.map} +0 -0
  496. /package/dist/{chunk-QWGE2PUH.js.map → chunk-DDA55IVB.js.map} +0 -0
  497. /package/dist/{chunk-VMMQDEN5.js.map → chunk-DN2IDKI5.js.map} +0 -0
  498. /package/dist/{chunk-2GFK22OZ.js.map → chunk-DOOWFDWN.js.map} +0 -0
  499. /package/dist/{chunk-7FGL6CGA.js.map → chunk-DVYRD4HY.js.map} +0 -0
  500. /package/dist/{chunk-YGLY6QFV.js.map → chunk-F2Y6I74C.js.map} +0 -0
  501. /package/dist/{chunk-UU7TRFNE.js.map → chunk-FFEBSFVT.js.map} +0 -0
  502. /package/dist/{chunk-NIS256NW.js.map → chunk-JKW663ZN.js.map} +0 -0
  503. /package/dist/{chunk-G7A5HLUS.js.map → chunk-KJH6W2I7.js.map} +0 -0
  504. /package/dist/{chunk-HWRD23DW.js.map → chunk-LVKYLMSM.js.map} +0 -0
  505. /package/dist/{chunk-ZMYDYNI4.js.map → chunk-N7CXQ5TA.js.map} +0 -0
  506. /package/dist/{chunk-3JLPGJ43.js.map → chunk-NGT35IGQ.js.map} +0 -0
  507. /package/dist/{chunk-GUKBW4HL.js.map → chunk-NQMSEB5D.js.map} +0 -0
  508. /package/dist/{chunk-WRJVB3C2.js.map → chunk-PO7NXBG2.js.map} +0 -0
  509. /package/dist/{chunk-WM65LU67.js.map → chunk-QOQQMVR2.js.map} +0 -0
  510. /package/dist/{chunk-QHFV6VNU.js.map → chunk-QPAQSG3F.js.map} +0 -0
  511. /package/dist/{chunk-UES4BHA2.js.map → chunk-QTO6BMQZ.js.map} +0 -0
  512. /package/dist/{chunk-THPPCISA.js.map → chunk-RBII7637.js.map} +0 -0
  513. /package/dist/{chunk-QT2FRYI4.js.map → chunk-RG426DJO.js.map} +0 -0
  514. /package/dist/{chunk-VKXWK44Q.js.map → chunk-TY6MKIWP.js.map} +0 -0
  515. /package/dist/{chunk-AZM4CCAC.js.map → chunk-UWJNKGBA.js.map} +0 -0
  516. /package/dist/{chunk-ZPJ4QSGP.js.map → chunk-VTU5IEKY.js.map} +0 -0
  517. /package/dist/{chunk-RZ4XGKOJ.js.map → chunk-VYQ4URQB.js.map} +0 -0
  518. /package/dist/{chunk-WDBX6VER.js.map → chunk-VZRFGJCH.js.map} +0 -0
  519. /package/dist/{chunk-IBKR2TFR.js.map → chunk-WM5LD6AT.js.map} +0 -0
  520. /package/dist/{chunk-K4QS7LXU.js.map → chunk-WZWZRZ2V.js.map} +0 -0
  521. /package/dist/{chunk-G4T7L557.js.map → chunk-XKAR4RF6.js.map} +0 -0
  522. /package/dist/{chunk-DZD576ZU.js.map → chunk-XSV2YDCJ.js.map} +0 -0
  523. /package/dist/{chunk-G7Z6EENO.js.map → chunk-YDWPYDML.js.map} +0 -0
  524. /package/dist/{chunk-6HPHEFXT.js.map → chunk-YKZLOPTC.js.map} +0 -0
  525. /package/dist/{contradiction-scan-HYLIRMJ2.js.map → contradiction-scan-KCADHXPE.js.map} +0 -0
  526. /package/dist/{purge-533FZLS4.js.map → purge-GB7PZHT2.js.map} +0 -0
@@ -15,13 +15,16 @@ import {
15
15
  buildRetiredFactTombstoneInputs,
16
16
  collectRetiredMemoriesForRebuild
17
17
  } from "./chunk-MLPTFODV.js";
18
+ import {
19
+ normalizeQmdResultPath
20
+ } from "./chunk-DN2IDKI5.js";
18
21
  import {
19
22
  withholdToolScopedFromSharedNamespace
20
23
  } from "./chunk-S2V7RUCL.js";
21
24
  import {
22
25
  SPECULATIVE_TTL_DAYS,
23
26
  confidenceTier
24
- } from "./chunk-UU3G6GUP.js";
27
+ } from "./chunk-BIF4SHMD.js";
25
28
  import {
26
29
  normalizeProjectionPreview,
27
30
  normalizeProjectionTags
@@ -29,7 +32,7 @@ import {
29
32
  import {
30
33
  rewriteProjectedEntityReferences,
31
34
  rewriteProjectedMemoryEntityReference
32
- } from "./chunk-WRJVB3C2.js";
35
+ } from "./chunk-PO7NXBG2.js";
33
36
  import {
34
37
  createMemorySnapshot
35
38
  } from "./chunk-S2HLHAZ4.js";
@@ -56,7 +59,7 @@ import {
56
59
  isQueuedReviewMemory,
57
60
  parseTombstoneBlockedOfflineSyncMemory,
58
61
  tombstoneBlocked
59
- } from "./chunk-K4QS7LXU.js";
62
+ } from "./chunk-WZWZRZ2V.js";
60
63
  import {
61
64
  composeMemoryEnvelope,
62
65
  isSealedMemoryEnvelope,
@@ -153,10 +156,7 @@ import {
153
156
  readMemoryActionEventRowsFromLines,
154
157
  readProjectionRebuiltAt,
155
158
  serializeLifecycleAppendPayload
156
- } from "./chunk-7FGL6CGA.js";
157
- import {
158
- namespaceIdentityFromToken
159
- } from "./chunk-EGGE52UU.js";
159
+ } from "./chunk-DVYRD4HY.js";
160
160
  import {
161
161
  assertMemoryFrontmatterId,
162
162
  warnProjectionFallback
@@ -182,18 +182,24 @@ import {
182
182
  readProjectedMemoryState,
183
183
  readProjectedMemoryTimeline,
184
184
  updateProjectedMemoryPath
185
- } from "./chunk-3CSX3ETE.js";
186
- import {
187
- assemblePersistedBody,
188
- storedContentIdentityCandidates,
189
- stripAttributesSuffix
190
- } from "./chunk-JDSVLVCG.js";
185
+ } from "./chunk-2LWQSV6A.js";
191
186
  import {
192
187
  withHeldFileLock
193
188
  } from "./chunk-FFAZ2XFU.js";
194
189
  import {
195
190
  computeLegacyContentHash
196
191
  } from "./chunk-5FVVY2EB.js";
192
+ import {
193
+ isSupportPassportPrivateMemory
194
+ } from "./chunk-HNDIND7P.js";
195
+ import {
196
+ namespaceIdentityFromToken
197
+ } from "./chunk-EGGE52UU.js";
198
+ import {
199
+ assemblePersistedBody,
200
+ storedContentIdentityCandidates,
201
+ stripAttributesSuffix
202
+ } from "./chunk-JDSVLVCG.js";
197
203
  import {
198
204
  sanitizeMemoryContent
199
205
  } from "./chunk-5GKPFL3S.js";
@@ -224,6 +230,7 @@ import {
224
230
  isErrnoCode
225
231
  } from "./chunk-5UZXUTVO.js";
226
232
  import {
233
+ ALL_CATEGORY_DIRS,
227
234
  RECALL_FALLBACK_DIRS,
228
235
  categoryDirName,
229
236
  getCategoryDir
@@ -3783,8 +3790,39 @@ function decodeYamlScalar(value) {
3783
3790
 
3784
3791
  // src/orchestration/qmd-result-resolver.ts
3785
3792
  import path7 from "path";
3793
+ var INTERNAL_QMD_ROOTS = /* @__PURE__ */ new Set([
3794
+ ...ALL_CATEGORY_DIRS,
3795
+ "activity",
3796
+ "archive",
3797
+ "artifacts",
3798
+ "cold",
3799
+ "config",
3800
+ "entities",
3801
+ "identity",
3802
+ "meetings",
3803
+ "namespaces",
3804
+ "state",
3805
+ "summaries",
3806
+ "transcripts",
3807
+ "wearables",
3808
+ "work",
3809
+ "workspace"
3810
+ ]);
3811
+ var PRIVATE_RESULT_RESOLUTION_CONCURRENCY = 16;
3786
3812
  function qmdCollectionPathParts(resultPath) {
3787
3813
  if (!resultPath || path7.isAbsolute(resultPath)) return null;
3814
+ if (resultPath.trim().startsWith("qmd://")) {
3815
+ try {
3816
+ const parsed = new URL(resultPath.trim());
3817
+ if (parsed.protocol !== "qmd:" || !parsed.hostname) return null;
3818
+ const collection2 = parsed.hostname;
3819
+ const relativePath = normalizeQmdResultPath(resultPath, collection2).replace(/\\/g, "/").replace(/^\/+/, "");
3820
+ if (!relativePath) return null;
3821
+ return { collection: collection2, relativePath };
3822
+ } catch {
3823
+ return null;
3824
+ }
3825
+ }
3788
3826
  const normalized = resultPath.replace(/\\/g, "/").replace(/^\/+/, "");
3789
3827
  const slashIndex = normalized.indexOf("/");
3790
3828
  if (slashIndex <= 0 || slashIndex >= normalized.length - 1) return null;
@@ -3848,6 +3886,7 @@ var QmdResultResolver = class {
3848
3886
  const fallbackStorageDir = storageDirOrNull(fallbackStorage);
3849
3887
  const config = this.getConfig();
3850
3888
  const coldCollection = config.qmdColdCollection ?? "openclaw-engram-cold";
3889
+ const fallbackResultPath = resultPath.trim().startsWith("qmd://") && parts?.collection === config.qmdCollection ? parts.relativePath : resultPath;
3851
3890
  if (parts && parts.collection === coldCollection) {
3852
3891
  const storages = [];
3853
3892
  const seenStorageDirs = /* @__PURE__ */ new Set();
@@ -3884,10 +3923,7 @@ var QmdResultResolver = class {
3884
3923
  }
3885
3924
  try {
3886
3925
  const coldRoot = path7.join(storageDir, "cold");
3887
- for (const candidate of qmdResultPathCandidates(
3888
- coldRoot,
3889
- parts.relativePath
3890
- )) {
3926
+ for (const candidate of qmdResultPathCandidates(coldRoot, parts.relativePath)) {
3891
3927
  const memory = await storage.readMemoryByPath(candidate);
3892
3928
  if (memory) return memory;
3893
3929
  }
@@ -3906,10 +3942,7 @@ var QmdResultResolver = class {
3906
3942
  if (parts && collectionNamespace) {
3907
3943
  try {
3908
3944
  const collectionStorage = await this.storageFor(collectionNamespace);
3909
- for (const candidate of qmdResultPathCandidates(
3910
- collectionStorage.dir,
3911
- parts.relativePath
3912
- )) {
3945
+ for (const candidate of qmdResultPathCandidates(collectionStorage.dir, parts.relativePath)) {
3913
3946
  const memory = await collectionStorage.readMemoryByPath(candidate);
3914
3947
  if (memory) return memory;
3915
3948
  }
@@ -3927,10 +3960,7 @@ var QmdResultResolver = class {
3927
3960
  if (preferredNamespace) {
3928
3961
  try {
3929
3962
  const preferredStorage = await this.storageFor(preferredNamespace);
3930
- for (const candidate of qmdResultPathCandidates(
3931
- preferredStorage.dir,
3932
- resultPath
3933
- )) {
3963
+ for (const candidate of qmdResultPathCandidates(preferredStorage.dir, fallbackResultPath)) {
3934
3964
  const memory = await preferredStorage.readMemoryByPath(candidate);
3935
3965
  if (memory) return memory;
3936
3966
  }
@@ -3942,54 +3972,77 @@ var QmdResultResolver = class {
3942
3972
  error: err.message
3943
3973
  });
3944
3974
  }
3945
- if (!path7.isAbsolute(resultPath)) return null;
3975
+ if (!path7.isAbsolute(fallbackResultPath)) return null;
3946
3976
  }
3947
- if (path7.isAbsolute(resultPath)) {
3977
+ if (path7.isAbsolute(fallbackResultPath)) {
3948
3978
  if (!fallbackStorageDir) {
3949
- return await fallbackStorage.readMemoryByPath(resultPath);
3979
+ return await fallbackStorage.readMemoryByPath(fallbackResultPath);
3950
3980
  }
3951
3981
  const ownerStorage = await this.storageForAbsoluteQmdResultPath(
3952
- resultPath,
3982
+ fallbackResultPath,
3953
3983
  fallbackStorage,
3954
3984
  recallNamespaces
3955
3985
  );
3956
3986
  if (!ownerStorage) return null;
3957
- for (const candidate of qmdResultPathCandidates(
3958
- ownerStorage.dir,
3959
- resultPath
3960
- )) {
3987
+ for (const candidate of qmdResultPathCandidates(ownerStorage.dir, fallbackResultPath)) {
3961
3988
  const memory = await ownerStorage.storage.readMemoryByPath(candidate);
3962
3989
  if (memory) return memory;
3963
3990
  }
3964
3991
  return null;
3965
3992
  }
3966
3993
  if (!fallbackStorageDir) {
3967
- return await fallbackStorage.readMemoryByPath(resultPath);
3994
+ return await fallbackStorage.readMemoryByPath(fallbackResultPath);
3968
3995
  }
3969
- for (const candidate of qmdResultPathCandidates(
3970
- fallbackStorageDir,
3971
- resultPath
3972
- )) {
3996
+ for (const candidate of qmdResultPathCandidates(fallbackStorageDir, fallbackResultPath)) {
3973
3997
  const memory = await fallbackStorage.readMemoryByPath(candidate);
3974
3998
  if (memory) return memory;
3975
3999
  }
3976
4000
  return null;
3977
4001
  }
4002
+ async filterPrivateSearchResults(results, fallbackStorage, namespaces = [], preserveUnresolved = false, visibilityCache = /* @__PURE__ */ new Map()) {
4003
+ const namespaceKey = namespaces.join("\0");
4004
+ const entries = results.filter((result) => Boolean(result.path)).map((result) => ({
4005
+ result,
4006
+ cacheKey: `${namespaceKey}\0${preserveUnresolved ? "1" : "0"}\0${result.namespace ?? ""}\0${result.path}`
4007
+ }));
4008
+ const pending = /* @__PURE__ */ new Map();
4009
+ for (const { result, cacheKey } of entries) {
4010
+ if (!visibilityCache.has(cacheKey)) pending.set(cacheKey, result);
4011
+ }
4012
+ const unresolved = [...pending];
4013
+ for (let offset = 0; offset < unresolved.length; offset += PRIVATE_RESULT_RESOLUTION_CONCURRENCY) {
4014
+ await Promise.all(
4015
+ unresolved.slice(offset, offset + PRIVATE_RESULT_RESOLUTION_CONCURRENCY).map(async ([cacheKey, result]) => {
4016
+ visibilityCache.set(
4017
+ cacheKey,
4018
+ await this.isVisibleSearchResult(result, fallbackStorage, namespaces, preserveUnresolved)
4019
+ );
4020
+ })
4021
+ );
4022
+ }
4023
+ return entries.filter(({ cacheKey }) => visibilityCache.get(cacheKey) === true).map(({ result }) => result);
4024
+ }
4025
+ async isVisibleSearchResult(result, fallbackStorage, namespaces, preserveUnresolved) {
4026
+ const parts = qmdCollectionPathParts(result.path);
4027
+ const config = this.getConfig();
4028
+ const collectionIsKnownInternal = parts !== null && INTERNAL_QMD_ROOTS.has(parts.collection);
4029
+ const collectionIsConfigured = parts !== null && (parts.collection === config.qmdCollection || parts.collection === (config.qmdColdCollection ?? "openclaw-engram-cold") || this.qmdCollectionNamespaceFromPrefix(parts.collection) !== null);
4030
+ let memory = await this.readQmdResultMemory(result.path, fallbackStorage, namespaces, result.namespace);
4031
+ if (!memory && parts && !collectionIsKnownInternal && !collectionIsConfigured) {
4032
+ memory = await this.readQmdResultMemory(parts.relativePath, fallbackStorage, namespaces, result.namespace);
4033
+ }
4034
+ const absoluteInsideMemoryRoot = path7.isAbsolute(result.path) && isPathInsideStorageRoot(path7.resolve(config.memoryDir), path7.resolve(result.path));
4035
+ const hasExplicitQmdCollection = result.path.trim().startsWith("qmd://");
4036
+ const unresolvedInternalPath = !memory && (absoluteInsideMemoryRoot || collectionIsKnownInternal && (!preserveUnresolved || hasExplicitQmdCollection) || hasExplicitQmdCollection && collectionIsConfigured);
4037
+ const unresolvedExternalCollection = !memory && (parts !== null && !collectionIsKnownInternal && !collectionIsConfigured || path7.isAbsolute(result.path) && !isPathInsideStorageRoot(path7.resolve(config.memoryDir), path7.resolve(result.path)));
4038
+ return memory !== null && !isSupportPassportPrivateMemory(memory) || !memory && !unresolvedInternalPath && (preserveUnresolved || unresolvedExternalCollection);
4039
+ }
3978
4040
  async resolveColdQmdResultForRecall(result, fallbackStorage, recallNamespaces = []) {
3979
- const memory = await this.readQmdResultMemory(
3980
- result.path,
3981
- fallbackStorage,
3982
- recallNamespaces,
3983
- result.namespace
3984
- );
4041
+ const memory = await this.readQmdResultMemory(result.path, fallbackStorage, recallNamespaces, result.namespace);
3985
4042
  if (!memory) return null;
3986
4043
  let ownerNamespace = null;
3987
4044
  if (path7.isAbsolute(memory.path)) {
3988
- const ownerStorage = await this.storageForAbsoluteQmdResultPath(
3989
- memory.path,
3990
- fallbackStorage,
3991
- recallNamespaces
3992
- );
4045
+ const ownerStorage = await this.storageForAbsoluteQmdResultPath(memory.path, fallbackStorage, recallNamespaces);
3993
4046
  ownerNamespace = ownerStorage?.namespace ?? null;
3994
4047
  if (!ownerNamespace && resolveNamespaceCapabilities(this.getConfig()).namespaces) return null;
3995
4048
  }
@@ -4039,9 +4092,7 @@ var QmdResultResolver = class {
4039
4092
  const relativeToNamespaces = path7.relative(namespacesRoot, resolvedPath);
4040
4093
  const [namespaceSegment] = relativeToNamespaces.split(/[\\/]/);
4041
4094
  if (namespaceSegment) {
4042
- candidateNamespaces.add(
4043
- namespaceIdentityFromToken(namespaceSegment) ?? namespaceSegment
4044
- );
4095
+ candidateNamespaces.add(namespaceIdentityFromToken(namespaceSegment) ?? namespaceSegment);
4045
4096
  }
4046
4097
  }
4047
4098
  for (const policy of config.namespacePolicies ?? []) {
@@ -4052,7 +4103,6 @@ var QmdResultResolver = class {
4052
4103
  try {
4053
4104
  maybeAddStorage(await this.storageFor(ns), ns);
4054
4105
  } catch {
4055
- continue;
4056
4106
  }
4057
4107
  }
4058
4108
  matches.sort((a, b) => b.dir.length - a.dir.length);
@@ -5443,7 +5493,7 @@ var SORT_STR = (a, b) => a < b ? -1 : a > b ? 1 : 0;
5443
5493
  // src/storage/supersession-audit.ts
5444
5494
  import { readdir as readdir5 } from "fs/promises";
5445
5495
  import path10 from "path";
5446
- async function hasSupersessionAudit(lookup, oldMemoryId, newMemoryId, auditBody) {
5496
+ async function hasSupersessionAudit(lookup, oldMemoryId, newMemoryId, auditBody, structuredAttributes) {
5447
5497
  let entries;
5448
5498
  try {
5449
5499
  entries = await readdir5(lookup.correctionsDir, { withFileTypes: true });
@@ -5454,7 +5504,9 @@ async function hasSupersessionAudit(lookup, oldMemoryId, newMemoryId, auditBody)
5454
5504
  for (const entry of entries) {
5455
5505
  if (!entry.isFile() || !entry.name.endsWith(".md")) continue;
5456
5506
  const memory = await lookup.readMemoryByPath(path10.join(lookup.correctionsDir, entry.name));
5457
- if (memory?.frontmatter.category === "correction" && (memory.frontmatter.sourceMemoryId === oldMemoryId || memory.frontmatter.sourceMemoryId === void 0 && memory.frontmatter.lineage?.includes(oldMemoryId)) && memory.frontmatter.lineage?.includes(newMemoryId) && memory.content === auditBody) {
5507
+ if (memory?.frontmatter.category === "correction" && (memory.frontmatter.sourceMemoryId === oldMemoryId || memory.frontmatter.sourceMemoryId === void 0 && memory.frontmatter.lineage?.includes(oldMemoryId)) && memory.frontmatter.lineage?.includes(newMemoryId) && stripAttributesSuffix(memory.content) === auditBody && (structuredAttributes === void 0 || Object.entries(structuredAttributes).every(
5508
+ ([key, value]) => memory.frontmatter.structuredAttributes?.[key] === value
5509
+ ))) {
5458
5510
  return true;
5459
5511
  }
5460
5512
  }
@@ -5502,7 +5554,7 @@ async function runSupersessionSideEffects(options) {
5502
5554
  if (!exists) await options.appendTombstone(exactInput);
5503
5555
  }
5504
5556
  }
5505
- const auditBody = `Superseded: ${currentBefore.content}
5557
+ const auditBody = `Superseded: ${options.audit?.content ?? currentBefore.content}
5506
5558
 
5507
5559
  Reason: ${reason}`;
5508
5560
  const auditExists = await hasSupersessionAudit(
@@ -5512,7 +5564,8 @@ Reason: ${reason}`;
5512
5564
  },
5513
5565
  oldMemoryId,
5514
5566
  newMemoryId,
5515
- auditBody
5567
+ auditBody,
5568
+ options.audit?.structuredAttributes
5516
5569
  );
5517
5570
  if (!auditExists) {
5518
5571
  const auditEnvelope = composeMemoryEnvelope(
@@ -5520,11 +5573,13 @@ Reason: ${reason}`;
5520
5573
  content: auditBody,
5521
5574
  category: "correction",
5522
5575
  confidence: 1,
5523
- tags: ["supersession", "auto-resolved"]
5576
+ tags: options.audit?.tags ?? ["supersession", "auto-resolved"],
5577
+ structuredAttributes: options.audit?.structuredAttributes
5524
5578
  },
5525
- { source: "contradiction-detection" }
5579
+ { source: options.audit?.source ?? "contradiction-detection" }
5526
5580
  );
5527
5581
  await options.writeSealedMemory(auditEnvelope, {
5582
+ actor: options.actor,
5528
5583
  lineage: [oldMemoryId, newMemoryId],
5529
5584
  sourceMemoryId: oldMemoryId
5530
5585
  });
@@ -8693,7 +8748,8 @@ ${sanitized.text}
8693
8748
  id: duplicateBlocked.frontmatter.id,
8694
8749
  tombstoneBlocked: true,
8695
8750
  blockedBy: duplicateBlocked.frontmatter.blockedBy,
8696
- duplicateOf: duplicateBlocked.frontmatter.id
8751
+ duplicateOf: duplicateBlocked.frontmatter.id,
8752
+ memory: duplicateBlocked
8697
8753
  };
8698
8754
  }
8699
8755
  await this.patchHotMemoriesCache({ addedPath: filePath }, "memory-create");
@@ -8724,7 +8780,7 @@ ${sanitized.text}
8724
8780
  }
8725
8781
  }
8726
8782
  log.debug(`wrote memory ${id} to ${filePath}`);
8727
- return { id, tombstoneBlocked: tombstoneBlocked2, ...fm.blockedBy ? { blockedBy: fm.blockedBy } : {} };
8783
+ return { id, tombstoneBlocked: tombstoneBlocked2, ...fm.blockedBy ? { blockedBy: fm.blockedBy } : {}, memory: { path: filePath, frontmatter: fm, content: sanitized.text } };
8728
8784
  }
8729
8785
  /**
8730
8786
  * Sealed-envelope write entry point (issue #1989 PR2).
@@ -10763,20 +10819,15 @@ ${current.content}
10763
10819
  }
10764
10820
  return updated;
10765
10821
  }
10766
- /**
10767
- * Get a memory by its ID.
10768
- */
10769
10822
  async getMemoryById(id) {
10770
10823
  const memories = await this.readAllMemories();
10771
10824
  return memories.find((m) => m.frontmatter.id === id) ?? null;
10772
10825
  }
10773
- /**
10774
- * Resolve existing active memory IDs to their on-disk paths.
10775
- *
10776
- * Uses a lightweight directory scan (collectActiveMemoryPaths) that reads
10777
- * file names without parsing frontmatter much cheaper than readAllMemories()
10778
- * for citation usage tracking and other existence checks.
10779
- */
10826
+ async getMemoryByIdIncludingArchived(id) {
10827
+ const active = await this.getMemoryById(id);
10828
+ return active ?? (await this.readAllColdMemories()).find((memory) => memory.frontmatter.id === id) ?? (await this.readArchivedMemories()).find((memory) => memory.frontmatter.id === id) ?? null;
10829
+ }
10830
+ /** Resolve existing active memory IDs through a lightweight directory scan. */
10780
10831
  async findExistingMemoryPaths(ids, preferredPaths = /* @__PURE__ */ new Map()) {
10781
10832
  if (ids.length === 0) return /* @__PURE__ */ new Map();
10782
10833
  const wantedIds = new Set(ids);
@@ -10862,7 +10913,8 @@ ${current.content}
10862
10913
  accessCount: memory.frontmatter.accessCount,
10863
10914
  lastAccessed: memory.frontmatter.lastAccessed,
10864
10915
  tags: normalizeProjectionTags(memory.frontmatter.tags),
10865
- preview: normalizeProjectionPreview(memory.content)
10916
+ preview: normalizeProjectionPreview(memory.content),
10917
+ privateRecord: isSupportPassportPrivateMemory(memory)
10866
10918
  };
10867
10919
  }
10868
10920
  async getMemoryTimeline(memoryId, limit = 200) {
@@ -11081,6 +11133,8 @@ ${current.content}
11081
11133
  exactReplay,
11082
11134
  currentBefore,
11083
11135
  updatedFm,
11136
+ actor: options.actor,
11137
+ audit: options.audit,
11084
11138
  citationTemplate: this.citationTemplate,
11085
11139
  correctionsDir: this.correctionsDir,
11086
11140
  readMemoryByPath: (filePath) => this.readMemoryByPath(filePath),
@@ -11104,7 +11158,7 @@ ${current.content}
11104
11158
  memoryId: oldMemoryId,
11105
11159
  eventType: "superseded",
11106
11160
  timestamp: supersededAt,
11107
- actor: "storage.supersedeMemory",
11161
+ actor: options.actor ?? "storage.supersedeMemory",
11108
11162
  reasonCode: reason,
11109
11163
  before: exactReplay ? { ...beforeState, status: "active" } : beforeState,
11110
11164
  after: afterState,
@@ -11332,4 +11386,4 @@ export {
11332
11386
  isValidBufferSurpriseEvent,
11333
11387
  StorageManager3 as StorageManager
11334
11388
  };
11335
- //# sourceMappingURL=chunk-6R4G7N4S.js.map
11389
+ //# sourceMappingURL=chunk-QQXWFDRD.js.map