@remnic/core 9.54.8 → 9.55.0

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 (574) hide show
  1. package/dist/access-admin-ops-surface.d.ts +11 -11
  2. package/dist/access-admin-ops-surface.js +44 -43
  3. package/dist/access-authorization-probe.d.ts +11 -11
  4. package/dist/access-authorization-probe.js +45 -44
  5. package/dist/access-boundary.d.ts +11 -11
  6. package/dist/access-boundary.js +44 -43
  7. package/dist/access-cli.js +114 -112
  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 +11 -11
  11. package/dist/access-extraction-force-flush.js +44 -43
  12. package/dist/access-health-types.d.ts +1 -1
  13. package/dist/access-http-lcm-compaction.d.ts +11 -11
  14. package/dist/access-http-lifecycle-flush.d.ts +11 -11
  15. package/dist/access-http-offline-stream.d.ts +11 -11
  16. package/dist/access-http-query.js +44 -43
  17. package/dist/access-http.d.ts +12 -12
  18. package/dist/access-http.js +58 -57
  19. package/dist/access-identity-continuity-surface.d.ts +9 -9
  20. package/dist/access-identity-continuity-surface.js +44 -43
  21. package/dist/access-lcm-surface.d.ts +11 -11
  22. package/dist/access-lcm-surface.js +44 -43
  23. package/dist/access-mcp.d.ts +11 -11
  24. package/dist/access-mcp.js +53 -52
  25. package/dist/access-memory-search-fanout.d.ts +2 -2
  26. package/dist/access-memory-search-fanout.js +3 -3
  27. package/dist/{access-namespace-preflight-CCNn_6NE.d.ts → access-namespace-preflight-Bpt-SYP0.d.ts} +1 -1
  28. package/dist/access-namespace-preflight.d.ts +3 -3
  29. package/dist/access-namespace-preflight.js +44 -43
  30. package/dist/access-observe-write-surface.d.ts +11 -11
  31. package/dist/access-observe-write-surface.js +44 -43
  32. package/dist/access-offline-manifest.d.ts +9 -9
  33. package/dist/access-offline-manifest.js +9 -9
  34. package/dist/access-operations-batch.js +48 -47
  35. package/dist/access-operations.d.ts +14 -14
  36. package/dist/access-operations.js +52 -51
  37. package/dist/access-recall-concurrency.d.ts +11 -11
  38. package/dist/access-recall-concurrency.js +44 -43
  39. package/dist/access-recall-response.d.ts +11 -11
  40. package/dist/access-recall-response.js +44 -43
  41. package/dist/access-recall-surface.d.ts +11 -11
  42. package/dist/access-recall-surface.js +44 -43
  43. package/dist/access-schema.d.ts +88 -88
  44. package/dist/access-schema.js +3 -3
  45. package/dist/{access-service-PEduVt8q.d.ts → access-service-4DO8XMq6.d.ts} +71 -71
  46. package/dist/access-service-helpers.d.ts +11 -11
  47. package/dist/access-service.d.ts +11 -11
  48. package/dist/access-service.js +44 -43
  49. package/dist/access-surface-catalog.d.ts +11 -11
  50. package/dist/access-surface-catalog.js +46 -45
  51. package/dist/access-surface-catalog.js.map +1 -1
  52. package/dist/access-wearables-meetings-surface.d.ts +3 -3
  53. package/dist/action-confidence.d.ts +1 -1
  54. package/dist/active-memory-bridge.d.ts +1 -1
  55. package/dist/active-memory-bridge.js +3 -3
  56. package/dist/active-recall.d.ts +1 -1
  57. package/dist/active-recall.js +4 -2
  58. package/dist/active-recall.js.map +1 -1
  59. package/dist/ambient-provenance.d.ts +1 -1
  60. package/dist/artifact-search.d.ts +1 -1
  61. package/dist/{auto-sync-NR3GPCOA.js → auto-sync-5HVRCMGZ.js} +3 -3
  62. package/dist/behavior-learner.d.ts +1 -1
  63. package/dist/behavior-signals.d.ts +1 -1
  64. package/dist/bootstrap.d.ts +9 -9
  65. package/dist/briefing-window.d.ts +2 -2
  66. package/dist/briefing.d.ts +2 -2
  67. package/dist/briefing.js +14 -13
  68. package/dist/buffer-surprise-report.d.ts +1 -1
  69. package/dist/buffer-turn-helpers.d.ts +1 -1
  70. package/dist/buffer.d.ts +2 -2
  71. package/dist/buffer.js +6 -5
  72. package/dist/bulk-import/index.d.ts +3 -3
  73. package/dist/calibration.d.ts +1 -1
  74. package/dist/capabilities.d.ts +8 -8
  75. package/dist/capabilities.js +1 -1
  76. package/dist/{capsule-crypto-7FJQINUR.js → capsule-crypto-YO5QJ6L3.js} +2 -2
  77. package/dist/{catalog-DGFf8mD9.d.ts → catalog-BasnO3Bw.d.ts} +1 -1
  78. package/dist/causal-behavior.d.ts +1 -1
  79. package/dist/causal-behavior.js +2 -2
  80. package/dist/causal-chain.js +2 -2
  81. package/dist/causal-consolidation.d.ts +1 -1
  82. package/dist/causal-consolidation.js +17 -16
  83. package/dist/causal-consolidation.js.map +1 -1
  84. package/dist/causal-retrieval.js +2 -2
  85. package/dist/causal-trajectory-graph.d.ts +1 -1
  86. package/dist/causal-trajectory-graph.js +2 -2
  87. package/dist/causal-trajectory.js +1 -1
  88. package/dist/{chunk-I6WYQSX4.js → chunk-2NKY7OC6.js} +14 -2
  89. package/dist/chunk-2NKY7OC6.js.map +1 -0
  90. package/dist/{chunk-E2GZSFR5.js → chunk-2YREVL4T.js} +2 -2
  91. package/dist/{chunk-PG4QBPVG.js → chunk-3VFVQDZO.js} +8 -4
  92. package/dist/chunk-3VFVQDZO.js.map +1 -0
  93. package/dist/{chunk-KM55SMLG.js → chunk-4KM3V6VS.js} +2 -2
  94. package/dist/{chunk-HAEU3ZW7.js → chunk-4OW2T32G.js} +2 -2
  95. package/dist/{chunk-PCRHFB75.js → chunk-4QFCAKNM.js} +1 -1
  96. package/dist/{chunk-OS5DYALF.js → chunk-4THNU7OF.js} +422 -47
  97. package/dist/chunk-4THNU7OF.js.map +1 -0
  98. package/dist/{chunk-76JJSXK7.js → chunk-5QHDXMXP.js} +1 -1
  99. package/dist/chunk-5QHDXMXP.js.map +1 -0
  100. package/dist/{chunk-OWC42MDT.js → chunk-5ZIWRMZM.js} +2 -2
  101. package/dist/{chunk-GWFSVJ4P.js → chunk-6KTXE6A3.js} +2 -2
  102. package/dist/{chunk-5V64M56S.js → chunk-6P2NUVM5.js} +26 -24
  103. package/dist/chunk-6P2NUVM5.js.map +1 -0
  104. package/dist/chunk-6Q3ZTEF6.js +54 -0
  105. package/dist/chunk-6Q3ZTEF6.js.map +1 -0
  106. package/dist/{chunk-P2FA65P2.js → chunk-7NSC4IVA.js} +2 -2
  107. package/dist/{chunk-QC6BILS7.js → chunk-7PKNOXYB.js} +11 -11
  108. package/dist/{chunk-AHVEHR6K.js → chunk-7ZNJN5WZ.js} +13 -1
  109. package/dist/chunk-7ZNJN5WZ.js.map +1 -0
  110. package/dist/{chunk-RZRUV6N2.js → chunk-ANMIOQPU.js} +2 -2
  111. package/dist/{chunk-RPSYDM6C.js → chunk-BPWZDHFM.js} +2 -2
  112. package/dist/{chunk-JKW663ZN.js → chunk-BVRREV3N.js} +2 -2
  113. package/dist/{chunk-XXRRHING.js → chunk-BWJMBJCY.js} +24 -15
  114. package/dist/chunk-BWJMBJCY.js.map +1 -0
  115. package/dist/{chunk-2NLLXCJG.js → chunk-BXLOS5AJ.js} +2 -2
  116. package/dist/{chunk-ELXP665P.js → chunk-CKSEJD7K.js} +2 -2
  117. package/dist/{chunk-4GE3NA5I.js → chunk-CME347TM.js} +2 -2
  118. package/dist/{chunk-BGLY7EEM.js → chunk-CMRUIKVA.js} +3 -3
  119. package/dist/{chunk-HGJ6NJ4E.js → chunk-D4LVHPOA.js} +2 -2
  120. package/dist/{chunk-YK6BDDHP.js → chunk-DFEODULB.js} +2 -2
  121. package/dist/{chunk-X7Y7WX73.js → chunk-DQEMWVMT.js} +1 -1
  122. package/dist/{chunk-XWZ6KOL6.js → chunk-E57E5SCS.js} +2 -2
  123. package/dist/{chunk-M23RF3LJ.js → chunk-ER4BLWI6.js} +2 -2
  124. package/dist/{chunk-47J4EDGR.js → chunk-F7M36OG2.js} +3 -3
  125. package/dist/{chunk-MTF5EFFF.js → chunk-FK7T55BA.js} +60 -41
  126. package/dist/{chunk-MTF5EFFF.js.map → chunk-FK7T55BA.js.map} +1 -1
  127. package/dist/{chunk-ZUJW327U.js → chunk-FONW766A.js} +2 -2
  128. package/dist/{chunk-FEBHRT2I.js → chunk-FR3FNPCJ.js} +3 -3
  129. package/dist/{chunk-G6DFSS6A.js → chunk-GUNIXT36.js} +2 -2
  130. package/dist/{chunk-K2UGPTYY.js → chunk-H6ZXNH5I.js} +2 -2
  131. package/dist/{chunk-Z463UYI6.js → chunk-HC55YCNK.js} +2 -2
  132. package/dist/{chunk-IEQCHXUS.js → chunk-HQ2VGCGP.js} +14 -14
  133. package/dist/{chunk-ZXGKQQ3L.js → chunk-HXXGZ4KV.js} +1 -1
  134. package/dist/{chunk-YZFPEHXF.js → chunk-HYVBJLEK.js} +5 -5
  135. package/dist/{chunk-FPKKFDO4.js → chunk-IFFW25NG.js} +246 -118
  136. package/dist/chunk-IFFW25NG.js.map +1 -0
  137. package/dist/{chunk-3GD2HFR6.js → chunk-IGWVMA4Y.js} +2 -2
  138. package/dist/{chunk-FONWBCVY.js → chunk-IKT6ZVO7.js} +3 -3
  139. package/dist/{chunk-KMWYZTIE.js → chunk-ION47U3Z.js} +3 -3
  140. package/dist/{chunk-OCIP6YMD.js → chunk-IXGQP4RZ.js} +3 -3
  141. package/dist/{chunk-FYZKFLKY.js → chunk-JFPZEWY3.js} +3 -3
  142. package/dist/{chunk-SMNYAMJD.js → chunk-JKL53MOY.js} +4 -4
  143. package/dist/{chunk-2T5AWWMF.js → chunk-JOA4Q765.js} +3 -3
  144. package/dist/{chunk-2XRE6FLM.js → chunk-JUOZ62Y7.js} +3 -1
  145. package/dist/chunk-JUOZ62Y7.js.map +1 -0
  146. package/dist/{chunk-MLPTFODV.js → chunk-KHQ57QLJ.js} +4 -4
  147. package/dist/{chunk-NSVDUN76.js → chunk-LCU5R6TQ.js} +8 -3
  148. package/dist/chunk-LCU5R6TQ.js.map +1 -0
  149. package/dist/{chunk-OTUFRUV3.js → chunk-LYPG7GOO.js} +4 -4
  150. package/dist/{chunk-OTUFRUV3.js.map → chunk-LYPG7GOO.js.map} +1 -1
  151. package/dist/{chunk-KRTY3ENI.js → chunk-MDVBCPOS.js} +2 -2
  152. package/dist/{chunk-M3UYE6PS.js → chunk-N655QIA2.js} +4 -4
  153. package/dist/{chunk-5NB726GV.js → chunk-NFQB6RJT.js} +3 -3
  154. package/dist/{chunk-OIOV4RJE.js → chunk-NP7FLVZW.js} +2 -2
  155. package/dist/{chunk-CX5SW2EW.js → chunk-NRFU5MVH.js} +4 -4
  156. package/dist/{chunk-QDWDVNWU.js → chunk-O4TTIMOP.js} +2 -2
  157. package/dist/{chunk-XCO2NXPZ.js → chunk-O54B5YNM.js} +3 -3
  158. package/dist/{chunk-UQWUDD7E.js → chunk-ONCWJBWV.js} +3 -3
  159. package/dist/{chunk-Z3SQEEB6.js → chunk-PD66CVSD.js} +2 -2
  160. package/dist/{chunk-QYN5PXDZ.js → chunk-PPUTUOC3.js} +2 -2
  161. package/dist/{chunk-TPWBUKS3.js → chunk-PSH3VFZ7.js} +4 -4
  162. package/dist/{chunk-MK5VEWCR.js → chunk-QKPDN325.js} +2 -2
  163. package/dist/{chunk-EVWWT3KE.js → chunk-QP2IZTUR.js} +2 -2
  164. package/dist/{chunk-4ESX4WX2.js → chunk-QSDPVZPD.js} +5 -5
  165. package/dist/{chunk-LHIBA4G7.js → chunk-QV7OEHFN.js} +2 -2
  166. package/dist/{chunk-3DVG3GRQ.js → chunk-QZR3WT3L.js} +2 -2
  167. package/dist/{chunk-EEAMSNSG.js → chunk-R7TZ2HCS.js} +2 -2
  168. package/dist/{chunk-IOYXIY7W.js → chunk-R7UHWPYI.js} +2 -2
  169. package/dist/{chunk-L6Z5OAS4.js → chunk-RL3EGL7A.js} +2 -2
  170. package/dist/{chunk-7SF5BAWF.js → chunk-S6AH7WSF.js} +3 -3
  171. package/dist/{chunk-QGKCM7C4.js → chunk-SFCJCMZQ.js} +5 -5
  172. package/dist/{chunk-K44N3CFW.js → chunk-T3HC7RJ7.js} +2 -2
  173. package/dist/chunk-T3JQTCCO.js +94 -0
  174. package/dist/chunk-T3JQTCCO.js.map +1 -0
  175. package/dist/{chunk-6PCND4O2.js → chunk-T6EQPZ6E.js} +4 -4
  176. package/dist/{chunk-G7YUH4WT.js → chunk-TAMY4NKO.js} +2 -2
  177. package/dist/{chunk-XDBFSUHX.js → chunk-TAPFJ3ET.js} +2 -2
  178. package/dist/{chunk-MANCJV6J.js → chunk-TF3LMM5E.js} +2 -2
  179. package/dist/{chunk-2GD6MLXD.js → chunk-TFXYQNBH.js} +12 -12
  180. package/dist/{chunk-7DISPKXT.js → chunk-THACANBI.js} +4 -4
  181. package/dist/{chunk-6G4D222J.js → chunk-TLVLJSWS.js} +2 -2
  182. package/dist/{chunk-6QPI2ITJ.js → chunk-TVKWT2CY.js} +4 -4
  183. package/dist/{chunk-H7NAZ3UB.js → chunk-U7BMN33M.js} +2 -2
  184. package/dist/{chunk-BXIMH7MC.js → chunk-UTDMY476.js} +49 -5
  185. package/dist/chunk-UTDMY476.js.map +1 -0
  186. package/dist/{chunk-6LKEUCEM.js → chunk-UXREWVW4.js} +2 -2
  187. package/dist/{chunk-SUPEYLH2.js → chunk-UYCIS6V5.js} +2 -2
  188. package/dist/{chunk-F2BOUJUS.js → chunk-V3IT3XNG.js} +9 -9
  189. package/dist/{chunk-KQAFEZQX.js → chunk-VDX2J7OX.js} +2 -2
  190. package/dist/{chunk-NUA4VM46.js → chunk-VWP5DEHU.js} +2 -2
  191. package/dist/{chunk-NQMSEB5D.js → chunk-X5OIPQME.js} +2 -2
  192. package/dist/{chunk-RBII7637.js → chunk-XRPPHIRI.js} +2 -2
  193. package/dist/{chunk-OLT3YTDH.js → chunk-YMOPYG3K.js} +4 -4
  194. package/dist/{cli-DNvGlD4i.d.ts → cli-CQdYilcx.d.ts} +61 -11
  195. package/dist/cli.d.ts +18 -18
  196. package/dist/cli.js +84 -80
  197. package/dist/coding/pre-action-gate.d.ts +1 -1
  198. package/dist/coding/pre-action-gate.js +2 -2
  199. package/dist/compounding/engine.d.ts +2 -2
  200. package/dist/compounding/engine.js +16 -15
  201. package/dist/compounding/preference-consolidator.d.ts +1 -1
  202. package/dist/compression-optimizer.d.ts +1 -1
  203. package/dist/config-security.d.ts +7 -0
  204. package/dist/config-security.js +12 -0
  205. package/dist/config.d.ts +1 -1
  206. package/dist/config.js +4 -2
  207. package/dist/connectors/codex-materialize-runner.d.ts +1 -1
  208. package/dist/connectors/codex-materialize-runner.js +14 -13
  209. package/dist/connectors/codex-materialize.d.ts +1 -1
  210. package/dist/connectors/index.d.ts +1 -1
  211. package/dist/connectors/index.js +15 -14
  212. package/dist/consolidation-provenance-check.d.ts +2 -2
  213. package/dist/consolidation-undo.d.ts +2 -2
  214. package/dist/contradiction/index.d.ts +2 -2
  215. package/dist/contradiction/index.js +4 -4
  216. package/dist/{contradiction-scan-JDTBXRGW.js → contradiction-scan-522AYLQC.js} +3 -3
  217. package/dist/converge-config.d.ts +1 -1
  218. package/dist/convergence-refresh.d.ts +2 -2
  219. package/dist/convergence-refresh.js +16 -15
  220. package/dist/conversation-index/backend.d.ts +1 -1
  221. package/dist/conversation-index/chunker.d.ts +1 -1
  222. package/dist/conversation-index/faiss-adapter.d.ts +1 -1
  223. package/dist/conversation-index/indexer.d.ts +1 -1
  224. package/dist/conversation-index/search.d.ts +1 -1
  225. package/dist/corpus-watermark.d.ts +1 -1
  226. package/dist/corpus-watermark.js +16 -15
  227. package/dist/day-summary.d.ts +1 -1
  228. package/dist/day-summary.js +2 -2
  229. package/dist/delinearize.d.ts +1 -1
  230. package/dist/dependency-propagation-config.d.ts +1 -1
  231. package/dist/{dependency-propagation-delivery-CzEfB31P.d.ts → dependency-propagation-delivery-C_K_AHcv.d.ts} +1 -1
  232. package/dist/direct-answer-wiring.d.ts +1 -1
  233. package/dist/direct-answer.d.ts +1 -1
  234. package/dist/embedding-fallback.d.ts +1 -1
  235. package/dist/embedding-fallback.js +2 -2
  236. package/dist/enrichment/index.d.ts +1 -1
  237. package/dist/entity-retrieval.d.ts +4 -2
  238. package/dist/entity-retrieval.js +15 -13
  239. package/dist/entity-schema.d.ts +1 -1
  240. package/dist/explicit-capture.d.ts +9 -9
  241. package/dist/explicit-capture.js +6 -6
  242. package/dist/external-wiki-access.d.ts +11 -11
  243. package/dist/external-wiki-access.js +45 -44
  244. package/dist/external-wiki-collection-registration.d.ts +1 -1
  245. package/dist/external-wiki-collection.d.ts +1 -1
  246. package/dist/external-wiki-mcp-tools.d.ts +11 -11
  247. package/dist/extraction-error-classification.d.ts +1 -1
  248. package/dist/extraction-faithfulness.d.ts +1 -1
  249. package/dist/extraction-judge-telemetry.d.ts +1 -1
  250. package/dist/extraction-judge-training.d.ts +1 -1
  251. package/dist/extraction-judge.d.ts +1 -1
  252. package/dist/extraction-liveness.d.ts +1 -1
  253. package/dist/extraction-normalization.d.ts +1 -1
  254. package/dist/extraction-normalization.js +3 -3
  255. package/dist/extraction-prompt.d.ts +1 -1
  256. package/dist/extraction-prompt.js +2 -2
  257. package/dist/extraction-source-grounding-rules.d.ts +1 -1
  258. package/dist/extraction-source-grounding.d.ts +1 -1
  259. package/dist/extraction.d.ts +1 -1
  260. package/dist/extraction.js +25 -24
  261. package/dist/fallback-llm.d.ts +1 -1
  262. package/dist/{first-start-migration-CRZCZAJN.js → first-start-migration-HZ4VPRFQ.js} +2 -2
  263. package/dist/{forget-EHGGJZLX.js → forget-5TWK7CZT.js} +3 -3
  264. package/dist/graph-dashboard-diff.d.ts +1 -1
  265. package/dist/graph-dashboard-key.d.ts +1 -1
  266. package/dist/graph-dashboard-parser.d.ts +1 -1
  267. package/dist/{graph-edge-decay-JI2XDCTY.js → graph-edge-decay-ZXGBXNPW.js} +4 -4
  268. package/dist/graph-edge-reinforcement.d.ts +1 -1
  269. package/dist/graph-path-reconstruction.d.ts +1 -1
  270. package/dist/graph-path-scoring.d.ts +1 -1
  271. package/dist/graph-snapshot.d.ts +1 -1
  272. package/dist/graph-snapshot.js +3 -3
  273. package/dist/graph.d.ts +1 -1
  274. package/dist/graph.js +2 -2
  275. package/dist/harmonic-retrieval.js +1 -1
  276. package/dist/importance.d.ts +1 -1
  277. package/dist/importers/index.d.ts +1 -1
  278. package/dist/in-flight-reads.d.ts +1 -1
  279. package/dist/index.d.ts +755 -706
  280. package/dist/index.js +158 -133
  281. package/dist/intent.d.ts +1 -1
  282. package/dist/lcm/engine.d.ts +1 -1
  283. package/dist/lcm/index.d.ts +1 -1
  284. package/dist/lcm/index.js +3 -3
  285. package/dist/lcm/tools.d.ts +1 -1
  286. package/dist/lifecycle.d.ts +1 -1
  287. package/dist/live-connectors-runner.d.ts +1 -1
  288. package/dist/local-llm.d.ts +1 -1
  289. package/dist/local-llm.js +2 -2
  290. package/dist/local-model-endpoint.d.ts +1 -1
  291. package/dist/maintenance/memory-governance.d.ts +1 -1
  292. package/dist/maintenance/memory-governance.js +14 -13
  293. package/dist/maintenance/rebuild-memory-lifecycle-ledger.d.ts +2 -2
  294. package/dist/maintenance/rebuild-memory-lifecycle-ledger.js +14 -13
  295. package/dist/maintenance/rebuild-memory-projection.d.ts +2 -2
  296. package/dist/maintenance/rebuild-memory-projection.js +15 -14
  297. package/dist/{maintenance-laHYTo0s.d.ts → maintenance-DdP931i9.d.ts} +3 -3
  298. package/dist/mcp-memory-inspector-app.d.ts +11 -11
  299. package/dist/memory-action-policy.d.ts +1 -1
  300. package/dist/memory-cache.d.ts +1 -1
  301. package/dist/memory-lifecycle-ledger-utils.d.ts +1 -1
  302. package/dist/memory-projection-store.d.ts +1 -1
  303. package/dist/memory-provenance.d.ts +1 -1
  304. package/dist/memory-snapshot.d.ts +1 -1
  305. package/dist/memory-worth-outcomes.d.ts +2 -2
  306. package/dist/models-json.d.ts +1 -1
  307. package/dist/namespaces/migrate.d.ts +3 -3
  308. package/dist/namespaces/migrate.js +15 -14
  309. package/dist/namespaces/principal.d.ts +1 -1
  310. package/dist/namespaces/principal.js +2 -2
  311. package/dist/namespaces/search.d.ts +1 -1
  312. package/dist/namespaces/search.js +4 -4
  313. package/dist/namespaces/storage.d.ts +3 -3
  314. package/dist/namespaces/storage.js +14 -13
  315. package/dist/native-knowledge.d.ts +1 -1
  316. package/dist/offline-sync-impression-drain.d.ts +1 -1
  317. package/dist/offline-sync-impression-drain.js +5 -5
  318. package/dist/operator-doctor-corpus.d.ts +1 -1
  319. package/dist/operator-doctor-corpus.js +17 -16
  320. package/dist/operator-doctor-replica.d.ts +1 -1
  321. package/dist/operator-toolkit.d.ts +3 -3
  322. package/dist/operator-toolkit.js +29 -27
  323. package/dist/orchestration/compression-guideline-coordinator.d.ts +2 -2
  324. package/dist/orchestration/compression-guideline-coordinator.js +2 -2
  325. package/dist/orchestration/maintenance.d.ts +4 -4
  326. package/dist/orchestration/maintenance.js +22 -21
  327. package/dist/{orchestrator-Cz2QmqsN.d.ts → orchestrator-DxUWX7gs.d.ts} +26 -20
  328. package/dist/orchestrator.d.ts +9 -9
  329. package/dist/orchestrator.js +114 -112
  330. package/dist/patterns-cli.d.ts +1 -1
  331. package/dist/{pipeline-DPcUifCO.d.ts → pipeline-BKUMU1vU.d.ts} +1 -1
  332. package/dist/policy-runtime.d.ts +1 -1
  333. package/dist/proactive-contention.d.ts +1 -1
  334. package/dist/provenance.d.ts +1 -1
  335. package/dist/{public-http-Dq2iqtcI.d.ts → public-http-Dw0bJhcC.d.ts} +1 -1
  336. package/dist/{qmd-dFCHp1r0.d.ts → qmd-DJP-GLFe.d.ts} +1 -1
  337. package/dist/qmd-preflight.d.ts +2 -2
  338. package/dist/qmd-recall-cache.d.ts +1 -1
  339. package/dist/qmd.d.ts +2 -2
  340. package/dist/recall-concurrency-config.d.ts +1 -1
  341. package/dist/recall-context-composition.d.ts +11 -1
  342. package/dist/recall-context-composition.js +4 -1
  343. package/dist/recall-disclosure-escalation.d.ts +1 -1
  344. package/dist/recall-explain-renderer.d.ts +1 -1
  345. package/dist/recall-explain-renderer.js +3 -3
  346. package/dist/recall-memory-map.d.ts +1 -1
  347. package/dist/recall-planner-llm.d.ts +1 -1
  348. package/dist/recall-state.d.ts +1 -1
  349. package/dist/recall-tag-filter.d.ts +1 -1
  350. package/dist/recall-timings.d.ts +1 -1
  351. package/dist/recall-xray-cli.d.ts +1 -1
  352. package/dist/recall-xray-cli.js +4 -4
  353. package/dist/recall-xray-renderer.d.ts +1 -1
  354. package/dist/recall-xray-renderer.js +3 -3
  355. package/dist/recall-xray.d.ts +1 -1
  356. package/dist/recall-xray.js +2 -2
  357. package/dist/reconcile/cursor.d.ts +1 -1
  358. package/dist/reconcile/manifest.d.ts +1 -1
  359. package/dist/reconcile/manifest.js +3 -3
  360. package/dist/reconcile/plan.d.ts +1 -1
  361. package/dist/replay/normalizers/chatgpt.d.ts +1 -1
  362. package/dist/replay/normalizers/claude.d.ts +1 -1
  363. package/dist/replay/normalizers/openclaw.d.ts +1 -1
  364. package/dist/replay/normalizers/shared.d.ts +1 -1
  365. package/dist/replay/runner.d.ts +1 -1
  366. package/dist/replay/types.d.ts +1 -1
  367. package/dist/replica-divergence.d.ts +1 -1
  368. package/dist/replica-peers-config.d.ts +1 -1
  369. package/dist/{resolution-MMOD5WC4.js → resolution-DKMBPXHI.js} +3 -3
  370. package/dist/resolution-DKMBPXHI.js.map +1 -0
  371. package/dist/resolve-auth-token.d.ts +1 -1
  372. package/dist/resume-bundles.js +5 -3
  373. package/dist/retrieval-agents.d.ts +2 -2
  374. package/dist/retrieval-tiers.d.ts +1 -1
  375. package/dist/routing/engine.d.ts +1 -1
  376. package/dist/routing/store.d.ts +1 -1
  377. package/dist/salvage-envelope.d.ts +1 -1
  378. package/dist/salvage-envelope.js +2 -2
  379. package/dist/schemas.d.ts +138 -138
  380. package/dist/{scope-profiles-DICK7GtN.d.ts → scope-profiles-CaKcnB-6.d.ts} +1 -1
  381. package/dist/search/embed-helper.d.ts +1 -1
  382. package/dist/search/embed-helper.js +2 -2
  383. package/dist/search/factory.d.ts +1 -1
  384. package/dist/search/factory.js +3 -3
  385. package/dist/search/index.d.ts +1 -1
  386. package/dist/search/index.js +3 -3
  387. package/dist/search/lancedb-backend.d.ts +1 -1
  388. package/dist/search/meilisearch-backend.d.ts +1 -1
  389. package/dist/search/noop-backend.d.ts +1 -1
  390. package/dist/search/orama-backend.d.ts +1 -1
  391. package/dist/search/port.d.ts +1 -1
  392. package/dist/search/remote-backend.d.ts +1 -1
  393. package/dist/{semantic-consolidation-BP7NAX0N.d.ts → semantic-consolidation-P0eMWqh-.d.ts} +1 -1
  394. package/dist/semantic-consolidation.d.ts +2 -2
  395. package/dist/semantic-consolidation.js +15 -14
  396. package/dist/semantic-rule-promotion.js +14 -13
  397. package/dist/semantic-rule-verifier.d.ts +1 -1
  398. package/dist/semantic-rule-verifier.js +14 -13
  399. package/dist/{service-D_ddZmpI.d.ts → service-D5GQLxq_.d.ts} +2 -2
  400. package/dist/session-observer-bands.d.ts +1 -1
  401. package/dist/session-observer-state.d.ts +1 -1
  402. package/dist/shared-context/manager.d.ts +9 -9
  403. package/dist/shared-context/manager.js +2 -2
  404. package/dist/signal.d.ts +1 -1
  405. package/dist/source-agent-qualifier.d.ts +1 -1
  406. package/dist/source-agent-qualifier.js +20 -19
  407. package/dist/{storage-Cdz7jb9t.d.ts → storage-DIyil2ll.d.ts} +5 -2
  408. package/dist/storage.d.ts +2 -2
  409. package/dist/storage.js +13 -12
  410. package/dist/summarizer.d.ts +1 -1
  411. package/dist/summarizer.js +3 -3
  412. package/dist/summary-snapshot.d.ts +1 -1
  413. package/dist/support-passport/index.d.ts +14 -14
  414. package/dist/support-passport/index.js +47 -46
  415. package/dist/temporal-supersession.d.ts +2 -2
  416. package/dist/temporal-timeline-recall.d.ts +3 -1
  417. package/dist/temporal-timeline-recall.js +3 -1
  418. package/dist/temporal-validity.d.ts +1 -1
  419. package/dist/threading.d.ts +1 -1
  420. package/dist/tier-migration.d.ts +2 -2
  421. package/dist/tier-routing.d.ts +1 -1
  422. package/dist/{tier-stats-EXYSKSVN.js → tier-stats-7E6OBUSD.js} +2 -2
  423. package/dist/topics.d.ts +1 -1
  424. package/dist/transcript.d.ts +1 -1
  425. package/dist/transfer/backup.js +2 -2
  426. package/dist/transfer/capsule-export.js +2 -2
  427. package/dist/transfer/capsule-import.js +2 -2
  428. package/dist/transfer/types.d.ts +66 -66
  429. package/dist/trust-score-stage.d.ts +1 -1
  430. package/dist/trust-score.d.ts +1 -1
  431. package/dist/{types-ed-SvS2t.d.ts → types-CbXieHKr.d.ts} +15 -3
  432. package/dist/types.d.ts +1 -1
  433. package/dist/types.js +1 -1
  434. package/dist/utility-runtime.d.ts +1 -1
  435. package/dist/verified-recall.js +14 -13
  436. package/dist/write-envelope.d.ts +5 -2
  437. package/dist/write-envelope.js +1 -1
  438. package/package.json +2 -2
  439. package/src/bitemporal-frontmatter.test.ts +20 -1
  440. package/src/capabilities.test.ts +2 -0
  441. package/src/capabilities.ts +17 -17
  442. package/src/cli.ts +14 -0
  443. package/src/config-security.ts +131 -0
  444. package/src/config.test.ts +61 -0
  445. package/src/config.ts +2 -1
  446. package/src/entity-retrieval.ts +31 -24
  447. package/src/index.ts +4 -6
  448. package/src/orchestration/conversation-index-coordinator.ts +13 -2
  449. package/src/orchestration/extraction-injection-gate.ts +154 -0
  450. package/src/orchestration/extraction-origin-context.ts +90 -0
  451. package/src/orchestration/extraction-persist.ts +66 -64
  452. package/src/orchestration/extraction-run.ts +4 -2
  453. package/src/orchestration/extraction-security.test.ts +271 -0
  454. package/src/orchestration/graph-recall-coordinator.ts +2 -0
  455. package/src/orchestration/namespace-read-fanout.ts +1 -0
  456. package/src/orchestration/qmd-result-resolver.ts +1 -0
  457. package/src/orchestration/recall-internal.ts +17 -11
  458. package/src/orchestration/recall-result-formatter.ts +35 -6
  459. package/src/orchestration/recall-search-pipeline.ts +3 -5
  460. package/src/orchestration/recall-search-prefilter.ts +1 -0
  461. package/src/orchestrator.ts +2 -1
  462. package/src/procedural/procedure-recall.ts +11 -1
  463. package/src/recall-authority-fence.test.ts +180 -0
  464. package/src/recall-context-composition.ts +28 -0
  465. package/src/security/audit-memory-cli.ts +42 -0
  466. package/src/security/audit-memory.test.ts +252 -0
  467. package/src/security/audit-memory.ts +318 -0
  468. package/src/security/injection-screen.test.ts +77 -0
  469. package/src/security/injection-screen.ts +158 -0
  470. package/src/security/origin-authority.test.ts +61 -0
  471. package/src/security/origin-authority.ts +88 -0
  472. package/src/security/types.ts +14 -0
  473. package/src/semantic-rule-promotion.ts +1 -1
  474. package/src/storage.ts +10 -2
  475. package/src/temporal-timeline-recall.test.ts +18 -0
  476. package/src/temporal-timeline-recall.ts +12 -1
  477. package/src/types.ts +4 -4
  478. package/src/write-envelope.test.ts +1 -0
  479. package/src/write-envelope.ts +9 -0
  480. package/dist/chunk-2XRE6FLM.js.map +0 -1
  481. package/dist/chunk-5V64M56S.js.map +0 -1
  482. package/dist/chunk-76JJSXK7.js.map +0 -1
  483. package/dist/chunk-AHVEHR6K.js.map +0 -1
  484. package/dist/chunk-BXIMH7MC.js.map +0 -1
  485. package/dist/chunk-FPKKFDO4.js.map +0 -1
  486. package/dist/chunk-I6WYQSX4.js.map +0 -1
  487. package/dist/chunk-NSVDUN76.js.map +0 -1
  488. package/dist/chunk-OS5DYALF.js.map +0 -1
  489. package/dist/chunk-PG4QBPVG.js.map +0 -1
  490. package/dist/chunk-XXRRHING.js.map +0 -1
  491. /package/dist/{auto-sync-NR3GPCOA.js.map → auto-sync-5HVRCMGZ.js.map} +0 -0
  492. /package/dist/{capsule-crypto-7FJQINUR.js.map → capsule-crypto-YO5QJ6L3.js.map} +0 -0
  493. /package/dist/{chunk-E2GZSFR5.js.map → chunk-2YREVL4T.js.map} +0 -0
  494. /package/dist/{chunk-KM55SMLG.js.map → chunk-4KM3V6VS.js.map} +0 -0
  495. /package/dist/{chunk-HAEU3ZW7.js.map → chunk-4OW2T32G.js.map} +0 -0
  496. /package/dist/{chunk-PCRHFB75.js.map → chunk-4QFCAKNM.js.map} +0 -0
  497. /package/dist/{chunk-OWC42MDT.js.map → chunk-5ZIWRMZM.js.map} +0 -0
  498. /package/dist/{chunk-GWFSVJ4P.js.map → chunk-6KTXE6A3.js.map} +0 -0
  499. /package/dist/{chunk-P2FA65P2.js.map → chunk-7NSC4IVA.js.map} +0 -0
  500. /package/dist/{chunk-QC6BILS7.js.map → chunk-7PKNOXYB.js.map} +0 -0
  501. /package/dist/{chunk-RZRUV6N2.js.map → chunk-ANMIOQPU.js.map} +0 -0
  502. /package/dist/{chunk-RPSYDM6C.js.map → chunk-BPWZDHFM.js.map} +0 -0
  503. /package/dist/{chunk-JKW663ZN.js.map → chunk-BVRREV3N.js.map} +0 -0
  504. /package/dist/{chunk-2NLLXCJG.js.map → chunk-BXLOS5AJ.js.map} +0 -0
  505. /package/dist/{chunk-ELXP665P.js.map → chunk-CKSEJD7K.js.map} +0 -0
  506. /package/dist/{chunk-4GE3NA5I.js.map → chunk-CME347TM.js.map} +0 -0
  507. /package/dist/{chunk-BGLY7EEM.js.map → chunk-CMRUIKVA.js.map} +0 -0
  508. /package/dist/{chunk-HGJ6NJ4E.js.map → chunk-D4LVHPOA.js.map} +0 -0
  509. /package/dist/{chunk-YK6BDDHP.js.map → chunk-DFEODULB.js.map} +0 -0
  510. /package/dist/{chunk-X7Y7WX73.js.map → chunk-DQEMWVMT.js.map} +0 -0
  511. /package/dist/{chunk-XWZ6KOL6.js.map → chunk-E57E5SCS.js.map} +0 -0
  512. /package/dist/{chunk-M23RF3LJ.js.map → chunk-ER4BLWI6.js.map} +0 -0
  513. /package/dist/{chunk-47J4EDGR.js.map → chunk-F7M36OG2.js.map} +0 -0
  514. /package/dist/{chunk-ZUJW327U.js.map → chunk-FONW766A.js.map} +0 -0
  515. /package/dist/{chunk-FEBHRT2I.js.map → chunk-FR3FNPCJ.js.map} +0 -0
  516. /package/dist/{chunk-G6DFSS6A.js.map → chunk-GUNIXT36.js.map} +0 -0
  517. /package/dist/{chunk-K2UGPTYY.js.map → chunk-H6ZXNH5I.js.map} +0 -0
  518. /package/dist/{chunk-Z463UYI6.js.map → chunk-HC55YCNK.js.map} +0 -0
  519. /package/dist/{chunk-IEQCHXUS.js.map → chunk-HQ2VGCGP.js.map} +0 -0
  520. /package/dist/{chunk-ZXGKQQ3L.js.map → chunk-HXXGZ4KV.js.map} +0 -0
  521. /package/dist/{chunk-YZFPEHXF.js.map → chunk-HYVBJLEK.js.map} +0 -0
  522. /package/dist/{chunk-3GD2HFR6.js.map → chunk-IGWVMA4Y.js.map} +0 -0
  523. /package/dist/{chunk-FONWBCVY.js.map → chunk-IKT6ZVO7.js.map} +0 -0
  524. /package/dist/{chunk-KMWYZTIE.js.map → chunk-ION47U3Z.js.map} +0 -0
  525. /package/dist/{chunk-OCIP6YMD.js.map → chunk-IXGQP4RZ.js.map} +0 -0
  526. /package/dist/{chunk-FYZKFLKY.js.map → chunk-JFPZEWY3.js.map} +0 -0
  527. /package/dist/{chunk-SMNYAMJD.js.map → chunk-JKL53MOY.js.map} +0 -0
  528. /package/dist/{chunk-2T5AWWMF.js.map → chunk-JOA4Q765.js.map} +0 -0
  529. /package/dist/{chunk-MLPTFODV.js.map → chunk-KHQ57QLJ.js.map} +0 -0
  530. /package/dist/{chunk-KRTY3ENI.js.map → chunk-MDVBCPOS.js.map} +0 -0
  531. /package/dist/{chunk-M3UYE6PS.js.map → chunk-N655QIA2.js.map} +0 -0
  532. /package/dist/{chunk-5NB726GV.js.map → chunk-NFQB6RJT.js.map} +0 -0
  533. /package/dist/{chunk-OIOV4RJE.js.map → chunk-NP7FLVZW.js.map} +0 -0
  534. /package/dist/{chunk-CX5SW2EW.js.map → chunk-NRFU5MVH.js.map} +0 -0
  535. /package/dist/{chunk-QDWDVNWU.js.map → chunk-O4TTIMOP.js.map} +0 -0
  536. /package/dist/{chunk-XCO2NXPZ.js.map → chunk-O54B5YNM.js.map} +0 -0
  537. /package/dist/{chunk-UQWUDD7E.js.map → chunk-ONCWJBWV.js.map} +0 -0
  538. /package/dist/{chunk-Z3SQEEB6.js.map → chunk-PD66CVSD.js.map} +0 -0
  539. /package/dist/{chunk-QYN5PXDZ.js.map → chunk-PPUTUOC3.js.map} +0 -0
  540. /package/dist/{chunk-TPWBUKS3.js.map → chunk-PSH3VFZ7.js.map} +0 -0
  541. /package/dist/{chunk-MK5VEWCR.js.map → chunk-QKPDN325.js.map} +0 -0
  542. /package/dist/{chunk-EVWWT3KE.js.map → chunk-QP2IZTUR.js.map} +0 -0
  543. /package/dist/{chunk-4ESX4WX2.js.map → chunk-QSDPVZPD.js.map} +0 -0
  544. /package/dist/{chunk-LHIBA4G7.js.map → chunk-QV7OEHFN.js.map} +0 -0
  545. /package/dist/{chunk-3DVG3GRQ.js.map → chunk-QZR3WT3L.js.map} +0 -0
  546. /package/dist/{chunk-EEAMSNSG.js.map → chunk-R7TZ2HCS.js.map} +0 -0
  547. /package/dist/{chunk-IOYXIY7W.js.map → chunk-R7UHWPYI.js.map} +0 -0
  548. /package/dist/{chunk-L6Z5OAS4.js.map → chunk-RL3EGL7A.js.map} +0 -0
  549. /package/dist/{chunk-7SF5BAWF.js.map → chunk-S6AH7WSF.js.map} +0 -0
  550. /package/dist/{chunk-QGKCM7C4.js.map → chunk-SFCJCMZQ.js.map} +0 -0
  551. /package/dist/{chunk-K44N3CFW.js.map → chunk-T3HC7RJ7.js.map} +0 -0
  552. /package/dist/{chunk-6PCND4O2.js.map → chunk-T6EQPZ6E.js.map} +0 -0
  553. /package/dist/{chunk-G7YUH4WT.js.map → chunk-TAMY4NKO.js.map} +0 -0
  554. /package/dist/{chunk-XDBFSUHX.js.map → chunk-TAPFJ3ET.js.map} +0 -0
  555. /package/dist/{chunk-MANCJV6J.js.map → chunk-TF3LMM5E.js.map} +0 -0
  556. /package/dist/{chunk-2GD6MLXD.js.map → chunk-TFXYQNBH.js.map} +0 -0
  557. /package/dist/{chunk-7DISPKXT.js.map → chunk-THACANBI.js.map} +0 -0
  558. /package/dist/{chunk-6G4D222J.js.map → chunk-TLVLJSWS.js.map} +0 -0
  559. /package/dist/{chunk-6QPI2ITJ.js.map → chunk-TVKWT2CY.js.map} +0 -0
  560. /package/dist/{chunk-H7NAZ3UB.js.map → chunk-U7BMN33M.js.map} +0 -0
  561. /package/dist/{chunk-6LKEUCEM.js.map → chunk-UXREWVW4.js.map} +0 -0
  562. /package/dist/{chunk-SUPEYLH2.js.map → chunk-UYCIS6V5.js.map} +0 -0
  563. /package/dist/{chunk-F2BOUJUS.js.map → chunk-V3IT3XNG.js.map} +0 -0
  564. /package/dist/{chunk-KQAFEZQX.js.map → chunk-VDX2J7OX.js.map} +0 -0
  565. /package/dist/{chunk-NUA4VM46.js.map → chunk-VWP5DEHU.js.map} +0 -0
  566. /package/dist/{chunk-NQMSEB5D.js.map → chunk-X5OIPQME.js.map} +0 -0
  567. /package/dist/{chunk-RBII7637.js.map → chunk-XRPPHIRI.js.map} +0 -0
  568. /package/dist/{chunk-OLT3YTDH.js.map → chunk-YMOPYG3K.js.map} +0 -0
  569. /package/dist/{contradiction-scan-JDTBXRGW.js.map → config-security.js.map} +0 -0
  570. /package/dist/{graph-edge-decay-JI2XDCTY.js.map → contradiction-scan-522AYLQC.js.map} +0 -0
  571. /package/dist/{first-start-migration-CRZCZAJN.js.map → first-start-migration-HZ4VPRFQ.js.map} +0 -0
  572. /package/dist/{forget-EHGGJZLX.js.map → forget-5TWK7CZT.js.map} +0 -0
  573. /package/dist/{resolution-MMOD5WC4.js.map → graph-edge-decay-ZXGBXNPW.js.map} +0 -0
  574. /package/dist/{tier-stats-EXYSKSVN.js.map → tier-stats-7E6OBUSD.js.map} +0 -0
@@ -7,6 +7,9 @@ import {
7
7
  import {
8
8
  openclawReplayNormalizer
9
9
  } from "./chunk-H4CKS5B2.js";
10
+ import {
11
+ importMarkdownBundle
12
+ } from "./chunk-HDDRVXX4.js";
10
13
  import {
11
14
  importSqlite
12
15
  } from "./chunk-PYHOAXTI.js";
@@ -16,9 +19,6 @@ import {
16
19
  import {
17
20
  exportSqlite
18
21
  } from "./chunk-BV2TIZ4F.js";
19
- import {
20
- importMarkdownBundle
21
- } from "./chunk-HDDRVXX4.js";
22
22
  import {
23
23
  detectImportFormat
24
24
  } from "./chunk-OZKVVUJB.js";
@@ -27,13 +27,16 @@ import {
27
27
  } from "./chunk-2DL3OFLD.js";
28
28
  import {
29
29
  backupMemoryDir
30
- } from "./chunk-2NLLXCJG.js";
30
+ } from "./chunk-BXLOS5AJ.js";
31
31
  import {
32
32
  exportMarkdownBundle
33
33
  } from "./chunk-765K3SAT.js";
34
34
  import {
35
35
  RoutingRulesStore
36
36
  } from "./chunk-XL24QQ63.js";
37
+ import {
38
+ WebDavServer
39
+ } from "./chunk-PYIFUBRK.js";
37
40
  import {
38
41
  buildReplayNormalizerRegistry,
39
42
  clampBatchSize,
@@ -43,36 +46,33 @@ import {
43
46
  isReplaySource,
44
47
  normalizeReplaySessionKey
45
48
  } from "./chunk-AJVLDJU6.js";
49
+ import {
50
+ rebuildObservations
51
+ } from "./chunk-DQTCGVFK.js";
46
52
  import {
47
53
  TailscaleHelper
48
54
  } from "./chunk-EEC4PCG5.js";
49
- import {
50
- WebDavServer
51
- } from "./chunk-PYIFUBRK.js";
52
55
  import {
53
56
  migrateObservations
54
57
  } from "./chunk-IIFFC3RL.js";
55
58
  import {
56
59
  rebuildMemoryLifecycleLedger
57
- } from "./chunk-4GE3NA5I.js";
58
- import {
59
- rebuildObservations
60
- } from "./chunk-DQTCGVFK.js";
60
+ } from "./chunk-CME347TM.js";
61
61
  import {
62
62
  archiveObservations
63
63
  } from "./chunk-YLBE6PLR.js";
64
- import {
65
- runCompatChecks
66
- } from "./chunk-CDKHKZL5.js";
67
64
  import {
68
65
  getBulkImportSource,
69
66
  listBulkImportSources,
70
67
  registerBulkImportSource,
71
68
  runBulkImportPipeline
72
69
  } from "./chunk-HSSERO3E.js";
70
+ import {
71
+ runCompatChecks
72
+ } from "./chunk-CDKHKZL5.js";
73
73
  import {
74
74
  searchVerifiedEpisodes
75
- } from "./chunk-ZUJW327U.js";
75
+ } from "./chunk-FONW766A.js";
76
76
  import {
77
77
  getUtilityLearningStatus,
78
78
  learnUtilityPromotionWeights
@@ -86,15 +86,15 @@ import {
86
86
  } from "./chunk-OJP3N7UK.js";
87
87
  import {
88
88
  promoteSemanticRuleFromMemory
89
- } from "./chunk-OTUFRUV3.js";
89
+ } from "./chunk-LYPG7GOO.js";
90
90
  import {
91
91
  searchVerifiedSemanticRules
92
- } from "./chunk-G7YUH4WT.js";
92
+ } from "./chunk-TAMY4NKO.js";
93
93
  import {
94
94
  buildResumeBundleFromState,
95
95
  getResumeBundleStatus,
96
96
  recordResumeBundle
97
- } from "./chunk-HGJ6NJ4E.js";
97
+ } from "./chunk-D4LVHPOA.js";
98
98
  import {
99
99
  getWorkProductLedgerStatus,
100
100
  recordWorkProductLedgerEntry,
@@ -105,7 +105,7 @@ import {
105
105
  } from "./chunk-HYQJQGD3.js";
106
106
  import {
107
107
  parseXrayCliOptions
108
- } from "./chunk-FONWBCVY.js";
108
+ } from "./chunk-IKT6ZVO7.js";
109
109
  import {
110
110
  readRuntimePolicySnapshot,
111
111
  sanitizeRuntimePolicyValues
@@ -118,7 +118,7 @@ import {
118
118
  runOperatorInventory,
119
119
  runOperatorRepair,
120
120
  runOperatorSetup
121
- } from "./chunk-2GD6MLXD.js";
121
+ } from "./chunk-TFXYQNBH.js";
122
122
  import {
123
123
  analyzeSessionIntegrity,
124
124
  applySessionRepair,
@@ -152,7 +152,7 @@ import {
152
152
  } from "./chunk-6GUG4YNM.js";
153
153
  import {
154
154
  searchHarmonicRetrieval
155
- } from "./chunk-PCRHFB75.js";
155
+ } from "./chunk-4QFCAKNM.js";
156
156
  import {
157
157
  rescoreMemoryImportance
158
158
  } from "./chunk-JXS5PDQ7.js";
@@ -165,17 +165,17 @@ import {
165
165
  runEvalStoredBaselineCiGate,
166
166
  validateEvalBenchmarkPack
167
167
  } from "./chunk-MCA2X4WH.js";
168
+ import {
169
+ GraphDashboardServer
170
+ } from "./chunk-YNDLCWXS.js";
168
171
  import {
169
172
  rebuildMemoryProjection,
170
173
  repairMemoryProjection,
171
174
  verifyMemoryProjection
172
- } from "./chunk-FEBHRT2I.js";
175
+ } from "./chunk-FR3FNPCJ.js";
173
176
  import {
174
177
  getCueAnchorStoreStatus
175
178
  } from "./chunk-ACPCA4NO.js";
176
- import {
177
- GraphDashboardServer
178
- } from "./chunk-YNDLCWXS.js";
179
179
  import {
180
180
  buildConnectorRowsFromDefinitions,
181
181
  parseConnectorsListOptions,
@@ -196,11 +196,11 @@ import {
196
196
  } from "./chunk-UQ7RN5HK.js";
197
197
  import {
198
198
  parseConfig
199
- } from "./chunk-PG4QBPVG.js";
199
+ } from "./chunk-3VFVQDZO.js";
200
200
  import {
201
201
  EngramAccessHttpServer,
202
202
  MeetingsInputError
203
- } from "./chunk-IEQCHXUS.js";
203
+ } from "./chunk-HQ2VGCGP.js";
204
204
  import {
205
205
  WearablesInputError
206
206
  } from "./chunk-V7IZKJI3.js";
@@ -213,13 +213,13 @@ import {
213
213
  createProductionChatLlmAdapter,
214
214
  loadChatSession,
215
215
  sessionBelongsToPrincipal
216
- } from "./chunk-XCO2NXPZ.js";
216
+ } from "./chunk-O54B5YNM.js";
217
217
  import {
218
218
  getAbstractionNodeStoreStatus
219
219
  } from "./chunk-DJUKBGAD.js";
220
220
  import {
221
221
  EngramAccessService
222
- } from "./chunk-MTF5EFFF.js";
222
+ } from "./chunk-FK7T55BA.js";
223
223
  import {
224
224
  WorkStorage
225
225
  } from "./chunk-GDB4J2H3.js";
@@ -236,10 +236,10 @@ import {
236
236
  parseRecallExplainFormat,
237
237
  renderRecallExplain,
238
238
  renderXray
239
- } from "./chunk-H7NAZ3UB.js";
239
+ } from "./chunk-U7BMN33M.js";
240
240
  import {
241
241
  readAggregateExtractionWatermark
242
- } from "./chunk-7SF5BAWF.js";
242
+ } from "./chunk-S6AH7WSF.js";
243
243
  import {
244
244
  getObjectiveStateStoreStatus
245
245
  } from "./chunk-HTP6XRUI.js";
@@ -248,31 +248,31 @@ import {
248
248
  readMemoryGovernanceRunArtifact,
249
249
  restoreMemoryGovernanceRun,
250
250
  runMemoryGovernance
251
- } from "./chunk-P2FA65P2.js";
251
+ } from "./chunk-7NSC4IVA.js";
252
252
  import {
253
253
  listNamespaces,
254
254
  runNamespaceMigration,
255
255
  verifyNamespaces
256
- } from "./chunk-TPWBUKS3.js";
256
+ } from "./chunk-PSH3VFZ7.js";
257
257
  import {
258
258
  analyzeGraphHealth
259
- } from "./chunk-OLT3YTDH.js";
259
+ } from "./chunk-YMOPYG3K.js";
260
260
  import {
261
261
  resolveNamespaceChildRoot
262
- } from "./chunk-Z463UYI6.js";
262
+ } from "./chunk-HC55YCNK.js";
263
263
  import {
264
264
  getCausalTrajectoryStoreStatus
265
- } from "./chunk-ZXGKQQ3L.js";
265
+ } from "./chunk-HXXGZ4KV.js";
266
266
  import {
267
267
  meetingIdDate
268
- } from "./chunk-XXRRHING.js";
268
+ } from "./chunk-BWJMBJCY.js";
269
269
  import {
270
270
  isValidTranscriptDate
271
271
  } from "./chunk-UHVXE24Y.js";
272
272
  import {
273
273
  RECALL_DISCLOSURE_LEVELS,
274
274
  isRecallDisclosure
275
- } from "./chunk-76JJSXK7.js";
275
+ } from "./chunk-5QHDXMXP.js";
276
276
  import {
277
277
  bumpMemoryCorpusVersionForDir
278
278
  } from "./chunk-KMAP7SNQ.js";
@@ -298,6 +298,11 @@ import {
298
298
  import {
299
299
  assertPathInsideRoot
300
300
  } from "./chunk-GCASGYIO.js";
301
+ import {
302
+ inferMemoryStatus,
303
+ isArchivedMemoryPath,
304
+ toMemoryPathRel
305
+ } from "./chunk-7RJUVTVF.js";
301
306
  import {
302
307
  isSupportPassportPrivateMemory
303
308
  } from "./chunk-XX4HPFFM.js";
@@ -321,7 +326,7 @@ import {
321
326
  resolveRecallEnhancementCapabilities,
322
327
  resolveSecurityCapabilities,
323
328
  resolveUtilityLearningCapabilities
324
- } from "./chunk-2XRE6FLM.js";
329
+ } from "./chunk-JUOZ62Y7.js";
325
330
  import {
326
331
  expandTildePath
327
332
  } from "./chunk-EYIEWJNI.js";
@@ -1527,6 +1532,367 @@ async function runRebuildMemoryLifecycleLedgerCliCommand(options) {
1527
1532
  });
1528
1533
  }
1529
1534
 
1535
+ // src/security/injection-screen.ts
1536
+ var RULE_WEIGHTS = {
1537
+ // Direct commands to an agent are high-confidence instructions.
1538
+ "imperative-to-agent": 4,
1539
+ // Tool syntax names an executable operation and its arguments.
1540
+ "tool-invocation-syntax": 4,
1541
+ // Encoded blobs are opaque and cannot receive normal factual review.
1542
+ "encoded-blob": 5,
1543
+ // Instruction resets directly try to replace the active authority.
1544
+ "ignore-previous-family": 4,
1545
+ // Conditional triggers encode a hidden action for a future turn.
1546
+ "conditional-trigger": 3,
1547
+ // Remnic command references can redirect the memory system itself.
1548
+ "authority-escalation": 4
1549
+ };
1550
+ var INJECTION_SCREEN_THRESHOLD = 4;
1551
+ var MAX_EXCERPT_LENGTH = 180;
1552
+ var AUTHORITY_EXECUTABLE_TOOL_REFERENCE = String.raw`(?:remnic|engram)(?:\s+security\s+audit-memory\b|\s+(?:memory_store|suggestion_submit|observe|recall|delete_memory|memory_correct_apply|memory_search)(?:\s+(?:tool|command))?\b|\s+(?:tool|command)\b|[_:-](?:memory_store|suggestion_submit|observe|recall|delete_memory|memory_correct_apply|memory_search)\b)`;
1553
+ var AUTHORITY_OPTIONAL_QUOTE = String.raw`[\`"']?`;
1554
+ var AUTHORITY_DIRECTIVE_PATTERN = new RegExp(
1555
+ String.raw`\b(?:call|invoke|execute|run|use)\s+(?:the\s+)?${AUTHORITY_OPTIONAL_QUOTE}${AUTHORITY_EXECUTABLE_TOOL_REFERENCE}`,
1556
+ "i"
1557
+ );
1558
+ var AUTHORITY_MANDATORY_DIRECTIVE_PATTERN = new RegExp(
1559
+ String.raw`\byou\s+(?:must|should)\s+(?:call|invoke|execute|run|use)\s+(?:the\s+)?${AUTHORITY_OPTIONAL_QUOTE}${AUTHORITY_EXECUTABLE_TOOL_REFERENCE}`,
1560
+ "i"
1561
+ );
1562
+ function excerptFor(content, match) {
1563
+ const start = match?.index ?? 0;
1564
+ const excerpt2 = content.slice(Math.max(0, start - 32), start + MAX_EXCERPT_LENGTH);
1565
+ return excerpt2.length < content.length ? `${excerpt2}\u2026` : excerpt2;
1566
+ }
1567
+ function findingFor(rule, content, pattern) {
1568
+ const match = content.match(pattern);
1569
+ if (!match) return void 0;
1570
+ return { rule, excerpt: excerptFor(content, match) };
1571
+ }
1572
+ function findImperativeToAgent(content) {
1573
+ return findingFor(
1574
+ "imperative-to-agent",
1575
+ content,
1576
+ /\b(?:agent|assistant|ai|model)\s*[,!:.-]\s*(?:please\s+)?(?:ignore|disregard|call|run|execute|send|delete|reveal|email|store|remember|follow|use|do)\b/i
1577
+ ) ?? findingFor(
1578
+ "imperative-to-agent",
1579
+ content,
1580
+ /\b(?:agent|assistant|ai|model)\s+(?:must|should|need to|please)\s+(?:ignore|disregard|call|run|execute|send|delete|reveal|email|store|remember|follow|use|do)\b/i
1581
+ );
1582
+ }
1583
+ function findToolInvocationSyntax(content) {
1584
+ return findingFor(
1585
+ "tool-invocation-syntax",
1586
+ content,
1587
+ /\{\s*["']?(?:tool|function|name)["']?\s*:\s*["'][^"']+["'][\s\S]*["']?(?:args|arguments|parameters)["']?\s*:/i
1588
+ ) ?? findingFor(
1589
+ "tool-invocation-syntax",
1590
+ content,
1591
+ // Bare verbs only count when the target looks like a tool identifier
1592
+ // (namespaced / snake_case / dotted) or is explicitly called a tool —
1593
+ // plain English like "on-call SRE" or "call Sam" must not trip the
1594
+ // screen (#1955 false-positive criterion).
1595
+ /<(?:tool(?:_call)?|function(?:_call)?|invoke)\b[^>]*>|\b(?:call|invoke|execute|run)\s+(?:the\s+)?[a-z][a-z0-9-]*(?:[_:.][a-z0-9-]+)+\b|\b(?:call|invoke|execute|run)\s+the\s+[a-z0-9-]+\s+tool\b/i
1596
+ ) ?? findingFor(
1597
+ "tool-invocation-syntax",
1598
+ content,
1599
+ /\b(?:call|invoke|execute)\s*\(\s*["'][\w:-]+["']/i
1600
+ );
1601
+ }
1602
+ function findEncodedBlob(content) {
1603
+ return findingFor("encoded-blob", content, /\b[0-9a-f]{121,}\b/i) ?? findingFor(
1604
+ "encoded-blob",
1605
+ content,
1606
+ /\b[A-Za-z0-9+/]{121,}={0,2}\b/
1607
+ );
1608
+ }
1609
+ function findIgnorePreviousFamily(content) {
1610
+ return findingFor(
1611
+ "ignore-previous-family",
1612
+ content,
1613
+ /\b(?:ignore|disregard|skip|forget|dismiss)\s+(?:all\s+)?(?:the\s+)?(?:previous|prior|above|earlier|preceding)\s+(?:instructions?|directions?|rules?|messages?|context)\b/i
1614
+ ) ?? findingFor(
1615
+ "ignore-previous-family",
1616
+ content,
1617
+ /\b(?:do\s+not|don't)\s+(?:follow|obey)\s+(?:the\s+)?(?:previous|prior|above|earlier)\s+(?:instructions?|rules?|directions?)\b/i
1618
+ );
1619
+ }
1620
+ function findConditionalTrigger(content) {
1621
+ return findingFor(
1622
+ "conditional-trigger",
1623
+ content,
1624
+ /\b(?:when|if)\b[\s\S]{1,120}\b(?:say|says|see|sees|hear|hears|receive|receives|mention|mentions|contain|contains|encounter|encounters)\b[\s\S]{1,120}\b(?:then\s+)?(?:call|invoke|run|execute|send|delete|reveal|store|use|follow|do|respond)\b/i
1625
+ ) ?? findingFor(
1626
+ "conditional-trigger",
1627
+ content,
1628
+ /\b(?:when|if)\b[\s\S]{1,100},\s*(?:then\s+)?(?:call|invoke|run|execute|send|delete|reveal|store|use|follow|do|respond)\b/i
1629
+ );
1630
+ }
1631
+ function findAuthorityEscalation(content) {
1632
+ return findingFor(
1633
+ "authority-escalation",
1634
+ content,
1635
+ AUTHORITY_DIRECTIVE_PATTERN
1636
+ ) ?? findingFor(
1637
+ "authority-escalation",
1638
+ content,
1639
+ AUTHORITY_MANDATORY_DIRECTIVE_PATTERN
1640
+ );
1641
+ }
1642
+ function screenCandidateFact(content) {
1643
+ const findings = [];
1644
+ const rules = [
1645
+ ["imperative-to-agent", findImperativeToAgent],
1646
+ ["tool-invocation-syntax", findToolInvocationSyntax],
1647
+ ["encoded-blob", findEncodedBlob],
1648
+ ["ignore-previous-family", findIgnorePreviousFamily],
1649
+ ["conditional-trigger", findConditionalTrigger],
1650
+ ["authority-escalation", findAuthorityEscalation]
1651
+ ];
1652
+ for (const [rule, find] of rules) {
1653
+ const finding = find(content);
1654
+ if (finding) findings.push({ rule, excerpt: finding.excerpt });
1655
+ }
1656
+ const score = findings.reduce((sum, finding) => sum + RULE_WEIGHTS[finding.rule], 0);
1657
+ return { score, findings, quarantine: score >= INJECTION_SCREEN_THRESHOLD };
1658
+ }
1659
+
1660
+ // src/security/audit-memory.ts
1661
+ function isActive(memory, memoryDir) {
1662
+ const status = memory.frontmatter.status;
1663
+ if (status !== void 0 && status !== "active") return false;
1664
+ if (memory.frontmatter.archivedAt !== void 0) return false;
1665
+ const pathRel = toMemoryPathRel(memoryDir, memory.path);
1666
+ if (isArchivedMemoryPath(memory.path) || isArchivedMemoryPath(pathRel)) return false;
1667
+ return inferMemoryStatus(memory.frontmatter, pathRel) === "active";
1668
+ }
1669
+ function parseSince(value) {
1670
+ if (value === void 0) return void 0;
1671
+ if (value instanceof Date) {
1672
+ if (Number.isNaN(value.getTime())) throw new Error("invalid --since date");
1673
+ return new Date(value.getTime());
1674
+ }
1675
+ return parseStrictCliDate(value, "--since");
1676
+ }
1677
+ function isInWindow(memory, since) {
1678
+ if (since === void 0) return true;
1679
+ const created = Date.parse(memory.frontmatter.created);
1680
+ const updated = Date.parse(memory.frontmatter.updated);
1681
+ return Number.isFinite(created) && created >= since.getTime() || Number.isFinite(updated) && updated >= since.getTime();
1682
+ }
1683
+ function excerpt(value) {
1684
+ const compact = value.replace(/\s+/g, " ").trim();
1685
+ return compact.length > 180 ? `${compact.slice(0, 177)}...` : compact;
1686
+ }
1687
+ function lineageHint(memory) {
1688
+ const frontmatter = memory.frontmatter;
1689
+ const source = frontmatter.sources?.[0];
1690
+ if (typeof source?.sessionKey === "string" && source.sessionKey.trim().length > 0) {
1691
+ return source.sessionKey.trim();
1692
+ }
1693
+ for (const value of [
1694
+ frontmatter.sourceSessionKey,
1695
+ frontmatter.sessionKey,
1696
+ frontmatter.conversationId,
1697
+ frontmatter.sourceTurnId,
1698
+ frontmatter.sourceConnector,
1699
+ frontmatter.source
1700
+ ]) {
1701
+ if (typeof value === "string" && value.trim().length > 0) return value.trim();
1702
+ }
1703
+ return "unknown";
1704
+ }
1705
+ var GENERIC_LINEAGE_VALUES = {
1706
+ unknown: true,
1707
+ none: true,
1708
+ null: true,
1709
+ "n/a": true,
1710
+ na: true,
1711
+ extraction: true,
1712
+ connector: true
1713
+ };
1714
+ function lineageKey(memory) {
1715
+ const frontmatter = memory.frontmatter;
1716
+ const source = frontmatter.sources?.[0];
1717
+ for (const value of [
1718
+ source?.sessionKey,
1719
+ frontmatter.sourceSessionKey,
1720
+ frontmatter.sessionKey,
1721
+ frontmatter.conversationId
1722
+ ]) {
1723
+ if (typeof value !== "string") continue;
1724
+ const key = value.trim();
1725
+ if (key.length > 0 && GENERIC_LINEAGE_VALUES[key.toLowerCase()] !== true) return key;
1726
+ }
1727
+ return void 0;
1728
+ }
1729
+ function sourceGroups(memories) {
1730
+ const groups = /* @__PURE__ */ new Map();
1731
+ for (const memory of memories) {
1732
+ const lineage = lineageKey(memory);
1733
+ if (lineage === void 0) continue;
1734
+ const day = typeof memory.frontmatter.created === "string" ? memory.frontmatter.created.slice(0, 10) : "";
1735
+ if (!day) continue;
1736
+ const key = `${lineage}@${day}`;
1737
+ const group = groups.get(key) ?? [];
1738
+ group.push(memory);
1739
+ groups.set(key, group);
1740
+ }
1741
+ return groups;
1742
+ }
1743
+ function burstBaseline(counts) {
1744
+ if (counts.length === 0) return { mean: 0, standardDeviation: 0, threshold: 10 };
1745
+ const mean = counts.reduce((sum, count) => sum + count, 0) / counts.length;
1746
+ const variance = counts.reduce((sum, count) => sum + (count - mean) ** 2, 0) / counts.length;
1747
+ const standardDeviation = Math.sqrt(variance);
1748
+ return {
1749
+ mean,
1750
+ standardDeviation,
1751
+ threshold: Math.max(10, mean + 3 * standardDeviation)
1752
+ };
1753
+ }
1754
+ function writeBurstStats(groups) {
1755
+ const entries = [...groups.entries()];
1756
+ const counts = entries.map(([, group]) => group.length);
1757
+ const summary = burstBaseline(counts);
1758
+ const anomalousGroups = entries.filter(([, group], candidateIndex) => {
1759
+ const baselineCounts = counts.filter((_, index) => index !== candidateIndex);
1760
+ const baseline = burstBaseline(baselineCounts);
1761
+ return group.length > baseline.threshold;
1762
+ }).map(([lineage, group]) => ({ lineageHint: lineage, count: group.length }));
1763
+ return {
1764
+ groupCount: counts.length,
1765
+ mean: summary.mean,
1766
+ standardDeviation: summary.standardDeviation,
1767
+ threshold: summary.threshold,
1768
+ anomalousGroups
1769
+ };
1770
+ }
1771
+ async function auditMemoryStore(options) {
1772
+ const since = parseSince(options.since);
1773
+ const storage = options.storage;
1774
+ const hotMemories = await storage.readAllMemories();
1775
+ const coldMemories = storage.readAllColdMemories ? await storage.readAllColdMemories() : [];
1776
+ const allMemories = [...hotMemories, ...coldMemories];
1777
+ const activeMemories = allMemories.filter(
1778
+ (memory) => isActive(memory, options.memoryDir) && isInWindow(memory, since)
1779
+ );
1780
+ const findings = [];
1781
+ const quarantinePaths = /* @__PURE__ */ new Map();
1782
+ for (const memory of activeMemories) {
1783
+ const screened = screenCandidateFact(memory.content);
1784
+ if (screened.quarantine === true) quarantinePaths.set(memory.path, { injection: true, burst: false });
1785
+ for (const screenFinding of screened.findings) {
1786
+ findings.push({
1787
+ memoryId: memory.frontmatter.id,
1788
+ category: "injection-signature",
1789
+ rule: screenFinding.rule,
1790
+ excerpt: excerpt(screenFinding.excerpt || memory.content),
1791
+ lineageHint: lineageHint(memory)
1792
+ });
1793
+ if (screenFinding.rule === "authority-escalation") {
1794
+ findings.push({
1795
+ memoryId: memory.frontmatter.id,
1796
+ category: "authority-escalation",
1797
+ rule: screenFinding.rule,
1798
+ excerpt: excerpt(screenFinding.excerpt || memory.content),
1799
+ lineageHint: lineageHint(memory)
1800
+ });
1801
+ }
1802
+ }
1803
+ }
1804
+ const groups = sourceGroups(activeMemories);
1805
+ const burstStats = writeBurstStats(groups);
1806
+ const anomalousLineages = new Set(burstStats.anomalousGroups.map((group) => group.lineageHint));
1807
+ for (const [lineage, group] of groups) {
1808
+ if (!anomalousLineages.has(lineage)) continue;
1809
+ for (const memory of group) {
1810
+ const q = quarantinePaths.get(memory.path) ?? { injection: false, burst: false };
1811
+ q.burst = true;
1812
+ quarantinePaths.set(memory.path, q);
1813
+ findings.push({
1814
+ memoryId: memory.frontmatter.id,
1815
+ category: "write-burst",
1816
+ rule: "write-burst",
1817
+ excerpt: excerpt(memory.content),
1818
+ lineageHint: lineage
1819
+ });
1820
+ }
1821
+ }
1822
+ const quarantinedMemoryIds = [];
1823
+ if (options.quarantine) {
1824
+ const now = (options.now ?? /* @__PURE__ */ new Date()).toISOString();
1825
+ for (const staleMemory of activeMemories) {
1826
+ const qInfo = quarantinePaths.get(staleMemory.path);
1827
+ if (!qInfo) continue;
1828
+ const memory = await storage.readMemoryByPath(staleMemory.path);
1829
+ if (!memory || !isActive(memory, options.memoryDir)) continue;
1830
+ if (qInfo.injection && !qInfo.burst && !screenCandidateFact(memory.content).quarantine) continue;
1831
+ const changed = await storage.writeMemoryFrontmatterIfUnchanged(memory, {
1832
+ status: "pending_review",
1833
+ updated: now
1834
+ }, {
1835
+ actor: "cli.security.audit-memory",
1836
+ reasonCode: "memory-poisoning-hardening",
1837
+ ruleVersion: "memory-poisoning.v1"
1838
+ });
1839
+ if (changed) quarantinedMemoryIds.push(memory.frontmatter.id);
1840
+ }
1841
+ }
1842
+ return {
1843
+ ...since ? { since: since.toISOString() } : {},
1844
+ scannedMemories: allMemories.length,
1845
+ activeMemories: activeMemories.length,
1846
+ findings,
1847
+ quarantinedMemoryIds,
1848
+ transitions: quarantinedMemoryIds.length,
1849
+ writeBurstStats: burstStats
1850
+ };
1851
+ }
1852
+ function formatAuditMemoryReport(report) {
1853
+ const lines = [
1854
+ "Memory security audit",
1855
+ `Scanned: ${report.scannedMemories} total, ${report.activeMemories} active`,
1856
+ `Findings: ${report.findings.length}`,
1857
+ `Quarantined: ${report.transitions}`,
1858
+ "",
1859
+ "CATEGORY MEMORY ID RULE LINEAGE EXCERPT"
1860
+ ];
1861
+ if (report.findings.length === 0) {
1862
+ lines.push("(none)");
1863
+ } else {
1864
+ for (const finding of report.findings) {
1865
+ lines.push([
1866
+ finding.category.padEnd(22),
1867
+ finding.memoryId.padEnd(25),
1868
+ finding.rule.padEnd(23),
1869
+ finding.lineageHint.slice(0, 19).padEnd(20),
1870
+ finding.excerpt
1871
+ ].join(" "));
1872
+ }
1873
+ }
1874
+ return lines.join("\n");
1875
+ }
1876
+
1877
+ // src/security/audit-memory-cli.ts
1878
+ function registerSecurityCommands(cmd, orchestrator) {
1879
+ const securityCmd = cmd.command("security").description("Memory security audit and hardening workflows");
1880
+ securityCmd.command("audit-memory").description("Audit the memory store for injection signatures, write bursts, and authority escalation").option("--since <date>", "Only scan memories created or updated on or after this ISO date").option("--quarantine", "Move flagged active memories to pending_review").option("--json", "Emit machine-readable JSON only").action(async (...args) => {
1881
+ const options = args[0] ?? {};
1882
+ const report = await runAuditMemoryCliCommand({
1883
+ memoryDir: orchestrator.config.memoryDir,
1884
+ storage: orchestrator.storage,
1885
+ since: typeof options.since === "string" && options.since.trim().length > 0 ? options.since.trim() : void 0,
1886
+ quarantine: options.quarantine === true
1887
+ });
1888
+ if (options.json === true) {
1889
+ console.log(JSON.stringify(report, null, 2));
1890
+ return;
1891
+ }
1892
+ console.log(formatAuditMemoryReport(report));
1893
+ });
1894
+ }
1895
+
1530
1896
  // src/chat/chat-cli.ts
1531
1897
  import { createInterface } from "readline";
1532
1898
  async function readAllStdin() {
@@ -2235,6 +2601,9 @@ async function runMemoryReviewDispositionCliCommand(options) {
2235
2601
  reasonCode: options.reasonCode
2236
2602
  };
2237
2603
  }
2604
+ async function runAuditMemoryCliCommand(options) {
2605
+ return auditMemoryStore(options);
2606
+ }
2238
2607
  async function runMigrateObservationsCliCommand(options) {
2239
2608
  return migrateObservations({
2240
2609
  memoryDir: options.memoryDir,
@@ -3987,7 +4356,7 @@ function registerCli(api, orchestrator, registerOptions = {}) {
3987
4356
  );
3988
4357
  tierCmd.command("list").description("Summarize tier distribution across all memories").option("--json", "Emit machine-readable JSON only").action(async (...args) => {
3989
4358
  const options = args[0] ?? {};
3990
- const { summarizeTiers, formatTierSummaryText } = await import("./tier-stats-EXYSKSVN.js");
4359
+ const { summarizeTiers, formatTierSummaryText } = await import("./tier-stats-7E6OBUSD.js");
3991
4360
  const summary = await summarizeTiers(orchestrator.storage);
3992
4361
  if (reportHasMachineReadableOutput(options)) {
3993
4362
  console.log(JSON.stringify(summary, null, 2));
@@ -3998,7 +4367,7 @@ function registerCli(api, orchestrator, registerOptions = {}) {
3998
4367
  tierCmd.command("explain").description("Explain the tier-transition decision for a single memory").argument("<id>", "Memory id to explain").option("--json", "Emit machine-readable JSON only").action(async (...args) => {
3999
4368
  const idArg = typeof args[0] === "string" ? args[0] : "";
4000
4369
  const options = args[1] ?? {};
4001
- const { explainTierForMemory, formatTierExplainText } = await import("./tier-stats-EXYSKSVN.js");
4370
+ const { explainTierForMemory, formatTierExplainText } = await import("./tier-stats-7E6OBUSD.js");
4002
4371
  try {
4003
4372
  const explain = await explainTierForMemory(
4004
4373
  orchestrator.storage,
@@ -4031,7 +4400,7 @@ function registerCli(api, orchestrator, registerOptions = {}) {
4031
4400
  const idArg = typeof args[0] === "string" ? args[0] : "";
4032
4401
  const options = args[1] ?? {};
4033
4402
  const reason = typeof options.reason === "string" && options.reason.trim().length > 0 ? options.reason.trim() : void 0;
4034
- const { forgetMemory } = await import("./forget-EHGGJZLX.js");
4403
+ const { forgetMemory } = await import("./forget-5TWK7CZT.js");
4035
4404
  try {
4036
4405
  const result = await forgetMemory(orchestrator.storage, {
4037
4406
  id: idArg,
@@ -4589,7 +4958,7 @@ function registerCli(api, orchestrator, registerOptions = {}) {
4589
4958
  }
4590
4959
  }
4591
4960
  if (sourceArchive.endsWith(".enc")) {
4592
- const { isEncryptedCapsuleFile } = await import("./capsule-crypto-7FJQINUR.js");
4961
+ const { isEncryptedCapsuleFile } = await import("./capsule-crypto-YO5QJ6L3.js");
4593
4962
  const encDetected = await isEncryptedCapsuleFile(sourceArchive).catch(() => true);
4594
4963
  if (encDetected) {
4595
4964
  throw new Error(
@@ -4752,7 +5121,7 @@ function registerCli(api, orchestrator, registerOptions = {}) {
4752
5121
  const { parseExportBundle } = await import("./transfer/types.js");
4753
5122
  let decryptedBuf;
4754
5123
  try {
4755
- const { decryptCapsuleFileInMemory } = await import("./capsule-crypto-7FJQINUR.js");
5124
+ const { decryptCapsuleFileInMemory } = await import("./capsule-crypto-YO5QJ6L3.js");
4756
5125
  decryptedBuf = await decryptCapsuleFileInMemory(archivePath, memoryDir);
4757
5126
  } catch (decErr) {
4758
5127
  const msg = decErr instanceof Error ? decErr.message : String(decErr);
@@ -6270,6 +6639,7 @@ ${doc.content}` : doc.content,
6270
6639
  }
6271
6640
  console.log("OK");
6272
6641
  });
6642
+ registerSecurityCommands(cmd, orchestrator);
6273
6643
  cmd.command("governance-run").description("Run memory governance in shadow/apply mode and write audit artifacts").option("--mode <mode>", "Governance mode (shadow|apply)", "shadow").option("--max-memories <n>", "Maximum memories to scan in this run").option("--batch-size <n>", "File-read batch size for bounded governance runs").option("--recent-days <n>", "Only govern memories updated within the last N days").option("--namespace <ns>", "Namespace to govern (default: current default namespace)").action(async (...args) => {
6274
6644
  const options = args[0] ?? {};
6275
6645
  const mode = options.mode === "apply" ? "apply" : "shadow";
@@ -7236,7 +7606,7 @@ Semantic consolidation complete. clusters=${result.clustersFound}, consolidated=
7236
7606
  console.error("--verb is required. Must be one of: keep-a, keep-b, merge, both-valid, needs-more-context");
7237
7607
  process.exit(1);
7238
7608
  }
7239
- const { isValidResolutionVerb, executeResolution } = await import("./resolution-MMOD5WC4.js");
7609
+ const { isValidResolutionVerb, executeResolution } = await import("./resolution-DKMBPXHI.js");
7240
7610
  if (!isValidResolutionVerb(verb)) {
7241
7611
  console.error(`Invalid verb: ${verb}. Must be one of: keep-a, keep-b, merge, both-valid, needs-more-context`);
7242
7612
  process.exit(1);
@@ -7268,7 +7638,7 @@ Semantic consolidation complete. clusters=${result.clustersFound}, consolidated=
7268
7638
  });
7269
7639
  reviewCmd.command("scan").description("Run an on-demand contradiction scan").option("--namespace <ns>", "Namespace to scan").action(async (...args) => {
7270
7640
  const options = args[0] ?? {};
7271
- const { runContradictionScan } = await import("./contradiction-scan-JDTBXRGW.js");
7641
+ const { runContradictionScan } = await import("./contradiction-scan-522AYLQC.js");
7272
7642
  console.log("Running contradiction scan...");
7273
7643
  const result = await runContradictionScan({
7274
7644
  storage: orchestrator.storage,
@@ -7890,6 +8260,10 @@ function parseDuration(duration) {
7890
8260
  }
7891
8261
 
7892
8262
  export {
8263
+ INJECTION_SCREEN_THRESHOLD,
8264
+ screenCandidateFact,
8265
+ auditMemoryStore,
8266
+ formatAuditMemoryReport,
7893
8267
  registerWearableConnector,
7894
8268
  getWearableConnector,
7895
8269
  listWearableConnectors,
@@ -7920,6 +8294,7 @@ export {
7920
8294
  runMemoryGovernanceReportCliCommand,
7921
8295
  runMemoryGovernanceRestoreCliCommand,
7922
8296
  runMemoryReviewDispositionCliCommand,
8297
+ runAuditMemoryCliCommand,
7923
8298
  runMigrateObservationsCliCommand,
7924
8299
  runConversationIndexHealthCliCommand,
7925
8300
  runConversationIndexInspectCliCommand,
@@ -7995,4 +8370,4 @@ export {
7995
8370
  listMemoryMarkdownFilePaths,
7996
8371
  registerCli
7997
8372
  };
7998
- //# sourceMappingURL=chunk-OS5DYALF.js.map
8373
+ //# sourceMappingURL=chunk-4THNU7OF.js.map