@remnic/core 9.65.2 → 9.65.3

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 (449) hide show
  1. package/dist/access-admin-ops-surface.d.ts +44 -44
  2. package/dist/access-admin-ops-surface.js +14 -14
  3. package/dist/access-authorization-probe.d.ts +38 -38
  4. package/dist/access-authorization-probe.js +15 -15
  5. package/dist/access-boundary.d.ts +40 -40
  6. package/dist/access-boundary.js +14 -14
  7. package/dist/access-cli.js +52 -52
  8. package/dist/access-coding-context-resolution.d.ts +3 -1
  9. package/dist/access-extraction-force-flush.d.ts +25 -25
  10. package/dist/access-extraction-force-flush.js +14 -14
  11. package/dist/access-health-types.d.ts +3 -1
  12. package/dist/access-http-lcm-compaction.d.ts +39 -39
  13. package/dist/access-http-lifecycle-flush.d.ts +39 -39
  14. package/dist/access-http-offline-stream.d.ts +25 -25
  15. package/dist/access-http-query.d.ts +4 -2
  16. package/dist/access-http-query.js +16 -16
  17. package/dist/access-http.d.ts +51 -44
  18. package/dist/access-http.js +30 -30
  19. package/dist/access-identity-continuity-surface.d.ts +12 -12
  20. package/dist/access-identity-continuity-surface.js +14 -14
  21. package/dist/access-lcm-surface.d.ts +27 -27
  22. package/dist/access-lcm-surface.js +14 -14
  23. package/dist/access-mcp-admin-tools.d.ts +9 -1
  24. package/dist/access-mcp-admin-tools.js +3 -1
  25. package/dist/access-mcp-output-schemas.js +1 -1
  26. package/dist/access-mcp.d.ts +39 -39
  27. package/dist/access-mcp.js +24 -24
  28. package/dist/access-memory-search-fanout.d.ts +4 -2
  29. package/dist/{access-namespace-preflight-Dhvcl-T0.d.ts → access-namespace-preflight-B7Usyz-K.d.ts} +1 -1
  30. package/dist/access-namespace-preflight.d.ts +5 -3
  31. package/dist/access-namespace-preflight.js +14 -14
  32. package/dist/access-observe-write-surface.d.ts +39 -39
  33. package/dist/access-observe-write-surface.js +14 -14
  34. package/dist/access-offline-manifest.d.ts +12 -12
  35. package/dist/access-operations-batch.js +18 -18
  36. package/dist/access-operations.d.ts +40 -40
  37. package/dist/access-operations.js +21 -21
  38. package/dist/access-recall-concurrency.d.ts +40 -40
  39. package/dist/access-recall-concurrency.js +14 -14
  40. package/dist/access-recall-response.d.ts +24 -24
  41. package/dist/access-recall-response.js +14 -14
  42. package/dist/access-recall-surface.d.ts +24 -24
  43. package/dist/access-recall-surface.js +14 -14
  44. package/dist/access-schema.d.ts +45 -45
  45. package/dist/{access-service-Bke1alZO.d.ts → access-service-DkaIG3n8.d.ts} +219 -75
  46. package/dist/access-service-helpers.d.ts +40 -40
  47. package/dist/access-service.d.ts +47 -47
  48. package/dist/access-service.js +14 -14
  49. package/dist/access-surface-catalog.d.ts +40 -40
  50. package/dist/access-surface-catalog.js +20 -16
  51. package/dist/access-surface-catalog.js.map +1 -1
  52. package/dist/access-wearables-meetings-surface.d.ts +5 -3
  53. package/dist/action-confidence.d.ts +3 -1
  54. package/dist/active-memory-bridge.d.ts +3 -1
  55. package/dist/active-recall.d.ts +3 -1
  56. package/dist/active-recall.js +6 -1
  57. package/dist/active-recall.js.map +1 -1
  58. package/dist/ambient-provenance.d.ts +3 -1
  59. package/dist/artifact-search.d.ts +3 -1
  60. package/dist/behavior-learner.d.ts +3 -1
  61. package/dist/behavior-signals.d.ts +3 -1
  62. package/dist/bootstrap.d.ts +12 -12
  63. package/dist/briefing-window.d.ts +4 -2
  64. package/dist/briefing.d.ts +4 -2
  65. package/dist/briefing.js +3 -3
  66. package/dist/buffer-surprise-report.d.ts +3 -1
  67. package/dist/buffer-turn-helpers.d.ts +3 -1
  68. package/dist/buffer.d.ts +4 -2
  69. package/dist/bulk-import/index.d.ts +5 -3
  70. package/dist/calibration.d.ts +3 -1
  71. package/dist/capabilities.d.ts +3 -1
  72. package/dist/{catalog-DV6qnbr7.d.ts → catalog-CX2BZEJh.d.ts} +1 -1
  73. package/dist/causal-behavior.d.ts +1 -1
  74. package/dist/causal-consolidation.d.ts +3 -1
  75. package/dist/causal-consolidation.js +7 -7
  76. package/dist/causal-trajectory-graph.d.ts +1 -1
  77. package/dist/{chunk-R7JAM2XF.js → chunk-2VXWFYJE.js} +3 -3
  78. package/dist/{chunk-UXO5IMBK.js → chunk-4XDGYCZI.js} +2 -2
  79. package/dist/{chunk-OTHZWLUD.js → chunk-57HVIG5U.js} +2 -2
  80. package/dist/{chunk-EILZG5VC.js → chunk-6TAX66IA.js} +2 -2
  81. package/dist/{chunk-NKKD4ZAU.js → chunk-6VALIZKG.js} +2 -2
  82. package/dist/{chunk-BWLRUMOG.js → chunk-76PL4XLG.js} +435 -1
  83. package/dist/chunk-76PL4XLG.js.map +1 -0
  84. package/dist/{chunk-2E36UXVW.js → chunk-7KFIMGMP.js} +2 -2
  85. package/dist/{chunk-LGO6A7GJ.js → chunk-7QOO4LGC.js} +28 -28
  86. package/dist/{chunk-TBOJ76ER.js → chunk-AB3A7EFH.js} +18 -2
  87. package/dist/{chunk-TBOJ76ER.js.map → chunk-AB3A7EFH.js.map} +1 -1
  88. package/dist/{chunk-DZUJ46DO.js → chunk-AUO2LJ3K.js} +2 -2
  89. package/dist/{chunk-ZO6AXLEH.js → chunk-AYDDB3XI.js} +2 -2
  90. package/dist/{chunk-NTWN6HB2.js → chunk-AYYGRVRP.js} +2 -2
  91. package/dist/{chunk-7YQ4IYS2.js → chunk-AZAA5DNP.js} +2 -2
  92. package/dist/{chunk-4KYOLI6M.js → chunk-BKYPJUQL.js} +120 -14
  93. package/dist/chunk-BKYPJUQL.js.map +1 -0
  94. package/dist/{chunk-Z7PBQPJ4.js → chunk-BQUEAVNW.js} +2 -2
  95. package/dist/{chunk-35NN3ZFA.js → chunk-CTVWELNK.js} +21 -3
  96. package/dist/chunk-CTVWELNK.js.map +1 -0
  97. package/dist/{chunk-5YQ63T4B.js → chunk-D27J626P.js} +2 -2
  98. package/dist/{chunk-LZH5FR2W.js → chunk-DHTQP334.js} +2 -2
  99. package/dist/{chunk-Y7DK7HHJ.js → chunk-E4MVQQVX.js} +2 -2
  100. package/dist/{chunk-JYYBA7TF.js → chunk-EIVIB73I.js} +2 -2
  101. package/dist/{chunk-S2DPMJXH.js → chunk-EV3YFLCB.js} +2 -2
  102. package/dist/{chunk-TZNQUNKL.js → chunk-FC7TIRFS.js} +15 -1
  103. package/dist/chunk-FC7TIRFS.js.map +1 -0
  104. package/dist/{chunk-3I7ASZN3.js → chunk-G57LQRP6.js} +2 -2
  105. package/dist/{chunk-UIN2BWDD.js → chunk-GN55KU2P.js} +2 -2
  106. package/dist/{chunk-PE255F4T.js → chunk-GUXS322H.js} +2 -2
  107. package/dist/{chunk-V3MXUL3D.js → chunk-H5FW4S5Q.js} +319 -643
  108. package/dist/chunk-H5FW4S5Q.js.map +1 -0
  109. package/dist/chunk-I32NKXE2.js +879 -0
  110. package/dist/chunk-I32NKXE2.js.map +1 -0
  111. package/dist/{chunk-YB42WZCY.js → chunk-IQSC3V2E.js} +2 -2
  112. package/dist/{chunk-MN4KB2A4.js → chunk-MBDJJTAT.js} +3 -3
  113. package/dist/{chunk-SQI57UCJ.js → chunk-MRTUN665.js} +2 -2
  114. package/dist/{chunk-SBDCZ2AX.js → chunk-NXKJHSDN.js} +1 -1
  115. package/dist/chunk-NXKJHSDN.js.map +1 -0
  116. package/dist/{chunk-SPUJNJJC.js → chunk-NZWEEALH.js} +2 -2
  117. package/dist/{chunk-2XDWWPTN.js → chunk-OJD4WS2E.js} +2 -2
  118. package/dist/{chunk-ZWXJBFZU.js → chunk-OLWTCWQ2.js} +8 -8
  119. package/dist/{chunk-XRYZRW54.js → chunk-P4DHENRE.js} +2 -2
  120. package/dist/{chunk-J275IYMG.js → chunk-PAYGC3BD.js} +29 -2
  121. package/dist/chunk-PAYGC3BD.js.map +1 -0
  122. package/dist/{chunk-IID2CMUU.js → chunk-PDVQ5JU3.js} +2 -2
  123. package/dist/{chunk-7BY7V4YX.js → chunk-Q4WONDMJ.js} +4 -3
  124. package/dist/{chunk-7BY7V4YX.js.map → chunk-Q4WONDMJ.js.map} +1 -1
  125. package/dist/{chunk-5NM4OH4P.js → chunk-QFMO32TO.js} +3 -3
  126. package/dist/{chunk-SIHSCCUQ.js → chunk-QXIQPCCN.js} +1 -1
  127. package/dist/{chunk-2YI72KM3.js → chunk-R47WINCY.js} +2 -2
  128. package/dist/{chunk-ZQHI2BZB.js → chunk-RK4WXUI2.js} +2 -2
  129. package/dist/{chunk-QOS5LBZN.js → chunk-S7Q5CM7E.js} +2 -2
  130. package/dist/{chunk-GDFVPUJ5.js → chunk-TDKSCV62.js} +2 -2
  131. package/dist/{chunk-OCZIYAE5.js → chunk-TYUS5TLG.js} +3 -3
  132. package/dist/{chunk-GNCCUR6K.js → chunk-URHCUXKI.js} +2 -2
  133. package/dist/{chunk-TF77C7SV.js → chunk-VA5KMSAE.js} +7 -5
  134. package/dist/chunk-VA5KMSAE.js.map +1 -0
  135. package/dist/{chunk-SB7D4BT7.js → chunk-WN5FSGLE.js} +1545 -105
  136. package/dist/chunk-WN5FSGLE.js.map +1 -0
  137. package/dist/{chunk-YLDXWCZP.js → chunk-YF6UHWOV.js} +14 -9
  138. package/dist/chunk-YF6UHWOV.js.map +1 -0
  139. package/dist/{chunk-CT56C22C.js → chunk-Z4RPXHJH.js} +4 -4
  140. package/dist/{cli-cShQ13XG.d.ts → cli-ChKeYMZv.d.ts} +5 -5
  141. package/dist/cli.d.ts +25 -25
  142. package/dist/cli.js +44 -43
  143. package/dist/coding/pre-action-gate.d.ts +2 -60
  144. package/dist/compounding/engine.d.ts +4 -2
  145. package/dist/compounding/engine.js +3 -3
  146. package/dist/compounding/preference-consolidator.d.ts +3 -1
  147. package/dist/compression-optimizer.d.ts +3 -1
  148. package/dist/config.d.ts +3 -1
  149. package/dist/config.js +6 -1
  150. package/dist/connectors/codex-materialize-runner.d.ts +3 -1
  151. package/dist/connectors/codex-materialize-runner.js +3 -3
  152. package/dist/connectors/codex-materialize.d.ts +3 -1
  153. package/dist/connectors/index.d.ts +3 -1
  154. package/dist/connectors/index.js +3 -3
  155. package/dist/consolidation-provenance-check.d.ts +4 -2
  156. package/dist/consolidation-undo.d.ts +4 -2
  157. package/dist/contradiction/index.d.ts +10 -270
  158. package/dist/contradiction/index.js +11 -6
  159. package/dist/{contradiction-review-QKJH5DKD.js → contradiction-review-WRVLRWHS.js} +6 -2
  160. package/dist/{contradiction-scan-VOTQRRSX.js → contradiction-scan-AKUWPX5N.js} +5 -3
  161. package/dist/converge-config.d.ts +3 -1
  162. package/dist/convergence-refresh.d.ts +4 -2
  163. package/dist/convergence-refresh.js +5 -5
  164. package/dist/conversation-index/backend.d.ts +3 -1
  165. package/dist/conversation-index/chunker.d.ts +3 -1
  166. package/dist/conversation-index/faiss-adapter.d.ts +3 -1
  167. package/dist/conversation-index/indexer.d.ts +3 -1
  168. package/dist/conversation-index/search.d.ts +3 -1
  169. package/dist/corpus-watermark.d.ts +3 -1
  170. package/dist/corpus-watermark.js +5 -5
  171. package/dist/cross-lingual-recall.d.ts +3 -1
  172. package/dist/day-summary.d.ts +3 -1
  173. package/dist/delinearize.d.ts +3 -1
  174. package/dist/dependency-propagation-config.d.ts +3 -1
  175. package/dist/{dependency-propagation-delivery-CsGg-VwS.d.ts → dependency-propagation-delivery-B8ZMBBCY.d.ts} +1 -1
  176. package/dist/direct-answer-wiring.d.ts +3 -1
  177. package/dist/direct-answer.d.ts +3 -1
  178. package/dist/embedding-fallback.d.ts +3 -1
  179. package/dist/enrichment/index.d.ts +3 -1
  180. package/dist/entity-origin-fields.d.ts +3 -1
  181. package/dist/entity-retrieval.d.ts +4 -2
  182. package/dist/entity-retrieval.js +3 -3
  183. package/dist/entity-schema.d.ts +3 -1
  184. package/dist/episodic-context.d.ts +3 -1
  185. package/dist/explicit-capture.d.ts +12 -12
  186. package/dist/external-wiki-access.d.ts +40 -40
  187. package/dist/external-wiki-access.js +15 -15
  188. package/dist/external-wiki-collection-registration.d.ts +3 -1
  189. package/dist/external-wiki-collection.d.ts +3 -1
  190. package/dist/external-wiki-mcp-tools.d.ts +40 -40
  191. package/dist/extraction-error-classification.d.ts +3 -1
  192. package/dist/extraction-faithfulness.d.ts +3 -1
  193. package/dist/extraction-judge-telemetry.d.ts +3 -1
  194. package/dist/extraction-judge-training.d.ts +3 -1
  195. package/dist/extraction-judge.d.ts +3 -1
  196. package/dist/extraction-liveness.d.ts +3 -1
  197. package/dist/extraction-normalization.d.ts +3 -1
  198. package/dist/extraction-prompt.d.ts +3 -1
  199. package/dist/extraction-source-grounding-rules.d.ts +3 -1
  200. package/dist/extraction-source-grounding.d.ts +3 -1
  201. package/dist/extraction.d.ts +3 -1
  202. package/dist/extraction.js +3 -3
  203. package/dist/fallback-llm.d.ts +3 -1
  204. package/dist/graph-dashboard-diff.d.ts +3 -1
  205. package/dist/graph-dashboard-key.d.ts +3 -1
  206. package/dist/graph-dashboard-parser.d.ts +3 -1
  207. package/dist/graph-edge-reinforcement.d.ts +3 -1
  208. package/dist/graph-path-reconstruction.d.ts +3 -1
  209. package/dist/graph-path-scoring.d.ts +3 -1
  210. package/dist/graph-snapshot.d.ts +3 -1
  211. package/dist/graph.d.ts +3 -1
  212. package/dist/harmonic-retrieval.js +1 -1
  213. package/dist/importance.d.ts +3 -1
  214. package/dist/importers/index.d.ts +3 -1
  215. package/dist/in-flight-reads.d.ts +3 -1
  216. package/dist/index-CexDrJzC.d.ts +284 -0
  217. package/dist/index.d.ts +251 -29
  218. package/dist/index.js +129 -75
  219. package/dist/intent.d.ts +3 -1
  220. package/dist/lcm/engine.d.ts +3 -1
  221. package/dist/lcm/index.d.ts +3 -1
  222. package/dist/lcm/tools.d.ts +3 -1
  223. package/dist/lifecycle.d.ts +3 -1
  224. package/dist/live-connectors-runner.d.ts +3 -1
  225. package/dist/local-llm.d.ts +3 -1
  226. package/dist/local-model-endpoint.d.ts +3 -1
  227. package/dist/maintenance/memory-governance.d.ts +3 -1
  228. package/dist/maintenance/memory-governance.js +3 -3
  229. package/dist/maintenance/rebuild-memory-lifecycle-ledger.d.ts +4 -2
  230. package/dist/maintenance/rebuild-memory-lifecycle-ledger.js +3 -3
  231. package/dist/maintenance/rebuild-memory-projection.d.ts +4 -2
  232. package/dist/maintenance/rebuild-memory-projection.js +4 -4
  233. package/dist/{maintenance-jhMpeGne.d.ts → maintenance-nkdtSrVr.d.ts} +3 -3
  234. package/dist/mcp-memory-inspector-app.d.ts +37 -37
  235. package/dist/memory-action-policy.d.ts +3 -1
  236. package/dist/memory-cache.d.ts +3 -1
  237. package/dist/memory-lifecycle-ledger-utils.d.ts +3 -1
  238. package/dist/memory-projection-store.d.ts +3 -1
  239. package/dist/memory-provenance.d.ts +3 -1
  240. package/dist/memory-snapshot.d.ts +3 -1
  241. package/dist/memory-subject-cli.d.ts +40 -40
  242. package/dist/memory-subject.d.ts +42 -42
  243. package/dist/memory-worth-outcomes.d.ts +4 -2
  244. package/dist/models-json.d.ts +3 -1
  245. package/dist/namespaces/migrate.d.ts +5 -3
  246. package/dist/namespaces/migrate.js +4 -4
  247. package/dist/namespaces/principal.d.ts +3 -1
  248. package/dist/namespaces/search.d.ts +3 -1
  249. package/dist/namespaces/storage.d.ts +5 -3
  250. package/dist/namespaces/storage.js +3 -3
  251. package/dist/native-knowledge.d.ts +3 -1
  252. package/dist/offline-sync-impression-drain.d.ts +3 -1
  253. package/dist/operator-doctor-corpus.d.ts +3 -1
  254. package/dist/operator-doctor-corpus.js +6 -6
  255. package/dist/operator-doctor-replica.d.ts +3 -1
  256. package/dist/operator-toolkit.d.ts +5 -3
  257. package/dist/operator-toolkit.js +15 -12
  258. package/dist/orchestration/compression-guideline-coordinator.d.ts +4 -2
  259. package/dist/orchestration/maintenance.d.ts +6 -4
  260. package/dist/orchestration/maintenance.js +9 -9
  261. package/dist/{orchestrator-DyGUC7re.d.ts → orchestrator-Bvq1-RQs.d.ts} +23 -9
  262. package/dist/orchestrator.d.ts +12 -12
  263. package/dist/orchestrator.js +52 -52
  264. package/dist/patterns-cli.d.ts +3 -1
  265. package/dist/{pipeline-C25Oxtp1.d.ts → pipeline-C8vfIiTX.d.ts} +1 -1
  266. package/dist/policy-runtime.d.ts +3 -1
  267. package/dist/proactive-contention.d.ts +3 -1
  268. package/dist/provenance.d.ts +3 -1
  269. package/dist/{public-http-CMe7NQzj.d.ts → public-http-Cy0aYbys.d.ts} +1 -1
  270. package/dist/{qmd-DkDVCbgF.d.ts → qmd-B9p1SZTZ.d.ts} +1 -1
  271. package/dist/qmd-preflight.d.ts +4 -2
  272. package/dist/qmd-recall-cache.d.ts +3 -1
  273. package/dist/qmd.d.ts +4 -2
  274. package/dist/recall-concurrency-config.d.ts +3 -1
  275. package/dist/recall-disclosure-escalation.d.ts +3 -1
  276. package/dist/recall-explain-renderer.d.ts +3 -1
  277. package/dist/recall-explain-renderer.js +3 -3
  278. package/dist/recall-memory-map.d.ts +3 -1
  279. package/dist/recall-planner-llm.d.ts +3 -1
  280. package/dist/recall-state.d.ts +3 -1
  281. package/dist/recall-tag-filter.d.ts +3 -1
  282. package/dist/recall-timings.d.ts +3 -1
  283. package/dist/recall-xray-cli.d.ts +3 -1
  284. package/dist/recall-xray-cli.js +4 -4
  285. package/dist/recall-xray-renderer.d.ts +3 -1
  286. package/dist/recall-xray-renderer.js +3 -3
  287. package/dist/recall-xray.d.ts +3 -1
  288. package/dist/recall-xray.js +2 -2
  289. package/dist/reconcile/cursor.d.ts +3 -1
  290. package/dist/reconcile/manifest.d.ts +3 -1
  291. package/dist/reconcile/plan.d.ts +3 -1
  292. package/dist/replay/normalizers/chatgpt.d.ts +3 -1
  293. package/dist/replay/normalizers/claude.d.ts +3 -1
  294. package/dist/replay/normalizers/openclaw.d.ts +3 -1
  295. package/dist/replay/normalizers/shared.d.ts +3 -1
  296. package/dist/replay/runner.d.ts +3 -1
  297. package/dist/replay/types.d.ts +3 -1
  298. package/dist/replica-divergence.d.ts +3 -1
  299. package/dist/replica-peers-config.d.ts +3 -1
  300. package/dist/{resolution-MFY72STR.js → resolution-4552BNRV.js} +13 -3
  301. package/dist/resolve-auth-token.d.ts +3 -1
  302. package/dist/resume-bundles.js +4 -2
  303. package/dist/retrieval-agents.d.ts +4 -2
  304. package/dist/retrieval-tiers.d.ts +3 -1
  305. package/dist/routing/engine.d.ts +3 -1
  306. package/dist/routing/store.d.ts +3 -1
  307. package/dist/salvage-envelope.d.ts +3 -1
  308. package/dist/schemas.d.ts +44 -44
  309. package/dist/{scope-profiles-B9xMoFO-.d.ts → scope-profiles-DLrRxFWR.d.ts} +1 -1
  310. package/dist/search/embed-helper.d.ts +3 -1
  311. package/dist/search/factory.d.ts +3 -1
  312. package/dist/search/index.d.ts +3 -1
  313. package/dist/search/lancedb-backend.d.ts +3 -1
  314. package/dist/search/meilisearch-backend.d.ts +3 -1
  315. package/dist/search/noop-backend.d.ts +3 -1
  316. package/dist/search/orama-backend.d.ts +3 -1
  317. package/dist/search/port.d.ts +3 -1
  318. package/dist/search/remote-backend.d.ts +3 -1
  319. package/dist/{semantic-TddhF0y7.d.ts → semantic-BalR6EXU.d.ts} +1 -1
  320. package/dist/{semantic-consolidation-C4uykW84.d.ts → semantic-consolidation-DlN6xe20.d.ts} +1 -1
  321. package/dist/semantic-consolidation.d.ts +4 -2
  322. package/dist/semantic-consolidation.js +4 -4
  323. package/dist/semantic-rule-promotion.js +3 -3
  324. package/dist/semantic-rule-verifier.d.ts +3 -1
  325. package/dist/semantic-rule-verifier.js +3 -3
  326. package/dist/{service-DCZDZNcV.d.ts → service-GkYyVfm9.d.ts} +2 -2
  327. package/dist/session-observer-bands.d.ts +3 -1
  328. package/dist/session-observer-state.d.ts +3 -1
  329. package/dist/shared-context/manager.d.ts +3 -1
  330. package/dist/signal.d.ts +3 -1
  331. package/dist/source-agent-qualifier.d.ts +3 -1
  332. package/dist/source-agent-qualifier.js +3 -3
  333. package/dist/{storage-CcKmEjL8.d.ts → storage-BIDzuKIn.d.ts} +1 -1
  334. package/dist/storage.d.ts +4 -2
  335. package/dist/storage.js +2 -2
  336. package/dist/subject-config.d.ts +3 -1
  337. package/dist/summarizer.d.ts +3 -1
  338. package/dist/summary-snapshot.d.ts +3 -1
  339. package/dist/support-passport/index.d.ts +43 -43
  340. package/dist/support-passport/index.js +17 -17
  341. package/dist/temporal-supersession.d.ts +4 -2
  342. package/dist/temporal-timeline-recall.d.ts +3 -1
  343. package/dist/temporal-validity.d.ts +3 -1
  344. package/dist/threading.d.ts +3 -1
  345. package/dist/tier-migration.d.ts +4 -2
  346. package/dist/tier-routing.d.ts +3 -1
  347. package/dist/topics.d.ts +3 -1
  348. package/dist/transcript.d.ts +3 -1
  349. package/dist/transfer/types.d.ts +20 -20
  350. package/dist/trust-score-stage.d.ts +3 -1
  351. package/dist/trust-score.d.ts +3 -1
  352. package/dist/{types-Pi0lfaEt.d.ts → types-BxAcOl5Q.d.ts} +323 -4
  353. package/dist/types.d.ts +3 -1
  354. package/dist/types.js +1 -1
  355. package/dist/utility-runtime.d.ts +3 -1
  356. package/dist/verified-recall.js +3 -3
  357. package/dist/who-knows-cli.d.ts +40 -40
  358. package/dist/who-knows-cli.js +4 -4
  359. package/dist/who-knows.d.ts +42 -42
  360. package/dist/who-knows.js +3 -3
  361. package/dist/write-envelope.d.ts +3 -1
  362. package/package.json +2 -2
  363. package/src/access-boundary.ts +4 -0
  364. package/src/access-http.ts +6 -5
  365. package/src/access-mcp-admin-tools.ts +24 -0
  366. package/src/access-mcp-output-schemas.ts +14 -0
  367. package/src/access-mcp.ts +2 -2
  368. package/src/access-operations-batch.ts +5 -0
  369. package/src/access-service.ts +27 -0
  370. package/src/access-surface-catalog.test.ts +24 -0
  371. package/src/access-surface-catalog.ts +4 -0
  372. package/src/coding/action-gate.test.ts +341 -0
  373. package/src/coding/action-gate.ts +556 -0
  374. package/src/config.ts +5 -0
  375. package/src/contradiction/contradiction-review.ts +50 -4
  376. package/src/contradiction/contradiction-scan.ts +14 -3
  377. package/src/contradiction/resolution.ts +50 -2
  378. package/src/index.ts +4 -3
  379. package/src/orchestration/recall-rerank-coordinator.ts +123 -4
  380. package/src/orchestration/recall-result-formatter.ts +6 -2
  381. package/src/orchestration/recall-search-pipeline.ts +14 -1
  382. package/src/preferences/drift-config.ts +118 -0
  383. package/src/preferences/drift-recall.ts +133 -0
  384. package/src/preferences/drift-types.ts +87 -0
  385. package/src/preferences/index.ts +12 -0
  386. package/src/preferences/preference-drift.test.ts +690 -0
  387. package/src/preferences/preference-drift.ts +724 -0
  388. package/src/review/review-deck-access.test.ts +325 -0
  389. package/src/review/review-deck-http-base.ts +133 -0
  390. package/src/review/review-deck-mutation.test.ts +417 -0
  391. package/src/review/review-deck-mutation.ts +677 -0
  392. package/src/review/review-deck-snapshot.ts +196 -0
  393. package/src/review/review-deck-surface.ts +117 -0
  394. package/src/review/review-deck.test.ts +347 -0
  395. package/src/review/review-deck.ts +311 -0
  396. package/src/storage.ts +4 -6
  397. package/src/types.ts +7 -3
  398. package/dist/chunk-35NN3ZFA.js.map +0 -1
  399. package/dist/chunk-4KYOLI6M.js.map +0 -1
  400. package/dist/chunk-BWLRUMOG.js.map +0 -1
  401. package/dist/chunk-J275IYMG.js.map +0 -1
  402. package/dist/chunk-SB7D4BT7.js.map +0 -1
  403. package/dist/chunk-SBDCZ2AX.js.map +0 -1
  404. package/dist/chunk-TF77C7SV.js.map +0 -1
  405. package/dist/chunk-TZNQUNKL.js.map +0 -1
  406. package/dist/chunk-V3MXUL3D.js.map +0 -1
  407. package/dist/chunk-XCTXS7VY.js +0 -402
  408. package/dist/chunk-XCTXS7VY.js.map +0 -1
  409. package/dist/chunk-YLDXWCZP.js.map +0 -1
  410. /package/dist/{chunk-R7JAM2XF.js.map → chunk-2VXWFYJE.js.map} +0 -0
  411. /package/dist/{chunk-UXO5IMBK.js.map → chunk-4XDGYCZI.js.map} +0 -0
  412. /package/dist/{chunk-OTHZWLUD.js.map → chunk-57HVIG5U.js.map} +0 -0
  413. /package/dist/{chunk-EILZG5VC.js.map → chunk-6TAX66IA.js.map} +0 -0
  414. /package/dist/{chunk-NKKD4ZAU.js.map → chunk-6VALIZKG.js.map} +0 -0
  415. /package/dist/{chunk-2E36UXVW.js.map → chunk-7KFIMGMP.js.map} +0 -0
  416. /package/dist/{chunk-LGO6A7GJ.js.map → chunk-7QOO4LGC.js.map} +0 -0
  417. /package/dist/{chunk-DZUJ46DO.js.map → chunk-AUO2LJ3K.js.map} +0 -0
  418. /package/dist/{chunk-ZO6AXLEH.js.map → chunk-AYDDB3XI.js.map} +0 -0
  419. /package/dist/{chunk-NTWN6HB2.js.map → chunk-AYYGRVRP.js.map} +0 -0
  420. /package/dist/{chunk-7YQ4IYS2.js.map → chunk-AZAA5DNP.js.map} +0 -0
  421. /package/dist/{chunk-Z7PBQPJ4.js.map → chunk-BQUEAVNW.js.map} +0 -0
  422. /package/dist/{chunk-5YQ63T4B.js.map → chunk-D27J626P.js.map} +0 -0
  423. /package/dist/{chunk-LZH5FR2W.js.map → chunk-DHTQP334.js.map} +0 -0
  424. /package/dist/{chunk-Y7DK7HHJ.js.map → chunk-E4MVQQVX.js.map} +0 -0
  425. /package/dist/{chunk-JYYBA7TF.js.map → chunk-EIVIB73I.js.map} +0 -0
  426. /package/dist/{chunk-S2DPMJXH.js.map → chunk-EV3YFLCB.js.map} +0 -0
  427. /package/dist/{chunk-3I7ASZN3.js.map → chunk-G57LQRP6.js.map} +0 -0
  428. /package/dist/{chunk-UIN2BWDD.js.map → chunk-GN55KU2P.js.map} +0 -0
  429. /package/dist/{chunk-PE255F4T.js.map → chunk-GUXS322H.js.map} +0 -0
  430. /package/dist/{chunk-YB42WZCY.js.map → chunk-IQSC3V2E.js.map} +0 -0
  431. /package/dist/{chunk-MN4KB2A4.js.map → chunk-MBDJJTAT.js.map} +0 -0
  432. /package/dist/{chunk-SQI57UCJ.js.map → chunk-MRTUN665.js.map} +0 -0
  433. /package/dist/{chunk-SPUJNJJC.js.map → chunk-NZWEEALH.js.map} +0 -0
  434. /package/dist/{chunk-2XDWWPTN.js.map → chunk-OJD4WS2E.js.map} +0 -0
  435. /package/dist/{chunk-ZWXJBFZU.js.map → chunk-OLWTCWQ2.js.map} +0 -0
  436. /package/dist/{chunk-XRYZRW54.js.map → chunk-P4DHENRE.js.map} +0 -0
  437. /package/dist/{chunk-IID2CMUU.js.map → chunk-PDVQ5JU3.js.map} +0 -0
  438. /package/dist/{chunk-5NM4OH4P.js.map → chunk-QFMO32TO.js.map} +0 -0
  439. /package/dist/{chunk-SIHSCCUQ.js.map → chunk-QXIQPCCN.js.map} +0 -0
  440. /package/dist/{chunk-2YI72KM3.js.map → chunk-R47WINCY.js.map} +0 -0
  441. /package/dist/{chunk-ZQHI2BZB.js.map → chunk-RK4WXUI2.js.map} +0 -0
  442. /package/dist/{chunk-QOS5LBZN.js.map → chunk-S7Q5CM7E.js.map} +0 -0
  443. /package/dist/{chunk-GDFVPUJ5.js.map → chunk-TDKSCV62.js.map} +0 -0
  444. /package/dist/{chunk-OCZIYAE5.js.map → chunk-TYUS5TLG.js.map} +0 -0
  445. /package/dist/{chunk-GNCCUR6K.js.map → chunk-URHCUXKI.js.map} +0 -0
  446. /package/dist/{chunk-CT56C22C.js.map → chunk-Z4RPXHJH.js.map} +0 -0
  447. /package/dist/{contradiction-review-QKJH5DKD.js.map → contradiction-review-WRVLRWHS.js.map} +0 -0
  448. /package/dist/{contradiction-scan-VOTQRRSX.js.map → contradiction-scan-AKUWPX5N.js.map} +0 -0
  449. /package/dist/{resolution-MFY72STR.js.map → resolution-4552BNRV.js.map} +0 -0
@@ -3,7 +3,7 @@ import {
3
3
  } from "./chunk-B7RWBZXW.js";
4
4
  import {
5
5
  StorageManager
6
- } from "./chunk-J275IYMG.js";
6
+ } from "./chunk-PAYGC3BD.js";
7
7
  import {
8
8
  getCachedEpisodeMap,
9
9
  setCachedEpisodeMap
@@ -109,4 +109,4 @@ export {
109
109
  compareVerifiedEpisodeResults,
110
110
  searchVerifiedEpisodes
111
111
  };
112
- //# sourceMappingURL=chunk-2E36UXVW.js.map
112
+ //# sourceMappingURL=chunk-7KFIMGMP.js.map
@@ -57,7 +57,7 @@ import {
57
57
  } from "./chunk-IIFFC3RL.js";
58
58
  import {
59
59
  rebuildMemoryLifecycleLedger
60
- } from "./chunk-GDFVPUJ5.js";
60
+ } from "./chunk-TDKSCV62.js";
61
61
  import {
62
62
  archiveObservations
63
63
  } from "./chunk-YLBE6PLR.js";
@@ -80,21 +80,21 @@ import {
80
80
  } from "./chunk-6FC3IZ26.js";
81
81
  import {
82
82
  searchVerifiedEpisodes
83
- } from "./chunk-2E36UXVW.js";
83
+ } from "./chunk-7KFIMGMP.js";
84
84
  import {
85
85
  ThreadingManager
86
86
  } from "./chunk-OJP3N7UK.js";
87
87
  import {
88
88
  promoteSemanticRuleFromMemory
89
- } from "./chunk-UXO5IMBK.js";
89
+ } from "./chunk-4XDGYCZI.js";
90
90
  import {
91
91
  searchVerifiedSemanticRules
92
- } from "./chunk-ZO6AXLEH.js";
92
+ } from "./chunk-AYDDB3XI.js";
93
93
  import {
94
94
  buildResumeBundleFromState,
95
95
  getResumeBundleStatus,
96
96
  recordResumeBundle
97
- } from "./chunk-GNCCUR6K.js";
97
+ } from "./chunk-URHCUXKI.js";
98
98
  import {
99
99
  getWorkProductLedgerStatus,
100
100
  recordWorkProductLedgerEntry,
@@ -105,7 +105,7 @@ import {
105
105
  } from "./chunk-AM4T6CHX.js";
106
106
  import {
107
107
  parseXrayCliOptions
108
- } from "./chunk-R7JAM2XF.js";
108
+ } from "./chunk-2VXWFYJE.js";
109
109
  import {
110
110
  collectPatternMemories,
111
111
  explainPatternMemory,
@@ -127,7 +127,7 @@ import {
127
127
  runOperatorInventory,
128
128
  runOperatorRepair,
129
129
  runOperatorSetup
130
- } from "./chunk-ZWXJBFZU.js";
130
+ } from "./chunk-OLWTCWQ2.js";
131
131
  import {
132
132
  analyzeSessionIntegrity,
133
133
  applySessionRepair,
@@ -152,7 +152,7 @@ import {
152
152
  } from "./chunk-6GUG4YNM.js";
153
153
  import {
154
154
  searchHarmonicRetrieval
155
- } from "./chunk-SIHSCCUQ.js";
155
+ } from "./chunk-QXIQPCCN.js";
156
156
  import {
157
157
  rescoreMemoryImportance
158
158
  } from "./chunk-UOBPK2OS.js";
@@ -175,7 +175,7 @@ import {
175
175
  rebuildMemoryProjection,
176
176
  repairMemoryProjection,
177
177
  verifyMemoryProjection
178
- } from "./chunk-5NM4OH4P.js";
178
+ } from "./chunk-QFMO32TO.js";
179
179
  import {
180
180
  buildConnectorRowsFromDefinitions,
181
181
  parseConnectorsListOptions,
@@ -196,11 +196,11 @@ import {
196
196
  } from "./chunk-6TBIWIAG.js";
197
197
  import {
198
198
  parseConfig
199
- } from "./chunk-BWLRUMOG.js";
199
+ } from "./chunk-76PL4XLG.js";
200
200
  import {
201
201
  EngramAccessHttpServer,
202
202
  MeetingsInputError
203
- } from "./chunk-4KYOLI6M.js";
203
+ } from "./chunk-BKYPJUQL.js";
204
204
  import {
205
205
  WearablesInputError
206
206
  } from "./chunk-V7IZKJI3.js";
@@ -210,13 +210,13 @@ import {
210
210
  loadChatSession,
211
211
  processChatMessage,
212
212
  sessionBelongsToPrincipal
213
- } from "./chunk-TF77C7SV.js";
213
+ } from "./chunk-VA5KMSAE.js";
214
214
  import {
215
215
  getAbstractionNodeStoreStatus
216
216
  } from "./chunk-DJUKBGAD.js";
217
217
  import {
218
218
  EngramAccessService
219
- } from "./chunk-SB7D4BT7.js";
219
+ } from "./chunk-WN5FSGLE.js";
220
220
  import {
221
221
  WorkStorage
222
222
  } from "./chunk-GDB4J2H3.js";
@@ -233,10 +233,10 @@ import {
233
233
  parseRecallExplainFormat,
234
234
  renderRecallExplain,
235
235
  renderXray
236
- } from "./chunk-7YQ4IYS2.js";
236
+ } from "./chunk-AZAA5DNP.js";
237
237
  import {
238
238
  readAggregateExtractionWatermark
239
- } from "./chunk-PE255F4T.js";
239
+ } from "./chunk-GUXS322H.js";
240
240
  import {
241
241
  getObjectiveStateStoreStatus
242
242
  } from "./chunk-HTP6XRUI.js";
@@ -245,33 +245,30 @@ import {
245
245
  readMemoryGovernanceRunArtifact,
246
246
  restoreMemoryGovernanceRun,
247
247
  runMemoryGovernance
248
- } from "./chunk-JYYBA7TF.js";
248
+ } from "./chunk-EIVIB73I.js";
249
249
  import {
250
250
  listNamespaces,
251
251
  runNamespaceMigration,
252
252
  verifyNamespaces
253
- } from "./chunk-2XDWWPTN.js";
253
+ } from "./chunk-OJD4WS2E.js";
254
254
  import {
255
255
  analyzeGraphHealth
256
256
  } from "./chunk-BIJAWZYW.js";
257
257
  import {
258
258
  resolveNamespaceChildRoot
259
- } from "./chunk-QOS5LBZN.js";
260
- import {
261
- getCausalTrajectoryStoreStatus
262
- } from "./chunk-PP7R754B.js";
259
+ } from "./chunk-S7Q5CM7E.js";
263
260
  import {
264
261
  OKF_RESERVED_BASENAMES,
265
262
  meetingIdDate,
266
263
  okfTypeForCategory
267
- } from "./chunk-J275IYMG.js";
264
+ } from "./chunk-PAYGC3BD.js";
268
265
  import {
269
266
  isValidTranscriptDate
270
267
  } from "./chunk-UHVXE24Y.js";
271
268
  import {
272
269
  RECALL_DISCLOSURE_LEVELS,
273
270
  isRecallDisclosure
274
- } from "./chunk-SBDCZ2AX.js";
271
+ } from "./chunk-NXKJHSDN.js";
275
272
  import {
276
273
  bumpMemoryCorpusVersionForDir
277
274
  } from "./chunk-XCB6QDL6.js";
@@ -286,6 +283,9 @@ import {
286
283
  import {
287
284
  renderExtractionLivenessStats
288
285
  } from "./chunk-3SG4FGDV.js";
286
+ import {
287
+ getCausalTrajectoryStoreStatus
288
+ } from "./chunk-PP7R754B.js";
289
289
  import {
290
290
  padEndDisplay,
291
291
  truncateGraphemeSafe
@@ -7741,7 +7741,7 @@ Semantic consolidation complete. clusters=${result.clustersFound}, consolidated=
7741
7741
  process.exit(1);
7742
7742
  }
7743
7743
  const limit = parseInt(options.limit ?? "50", 10);
7744
- const { listPairs } = await import("./contradiction-review-QKJH5DKD.js");
7744
+ const { listPairs } = await import("./contradiction-review-WRVLRWHS.js");
7745
7745
  const result = listPairs(orchestrator.config.memoryDir, {
7746
7746
  filter,
7747
7747
  namespace: options.namespace,
@@ -7768,7 +7768,7 @@ Semantic consolidation complete. clusters=${result.clustersFound}, consolidated=
7768
7768
  console.error("pairId is required");
7769
7769
  process.exit(1);
7770
7770
  }
7771
- const { readPair } = await import("./contradiction-review-QKJH5DKD.js");
7771
+ const { readPair } = await import("./contradiction-review-WRVLRWHS.js");
7772
7772
  const pair = readPair(orchestrator.config.memoryDir, pairId);
7773
7773
  if (!pair) {
7774
7774
  console.error(`Pair ${pairId} not found.`);
@@ -7788,7 +7788,7 @@ Semantic consolidation complete. clusters=${result.clustersFound}, consolidated=
7788
7788
  console.error("--verb is required. Must be one of: keep-a, keep-b, merge, both-valid, needs-more-context");
7789
7789
  process.exit(1);
7790
7790
  }
7791
- const { isValidResolutionVerb, executeResolution } = await import("./resolution-MFY72STR.js");
7791
+ const { isValidResolutionVerb, executeResolution } = await import("./resolution-4552BNRV.js");
7792
7792
  if (!isValidResolutionVerb(verb)) {
7793
7793
  console.error(`Invalid verb: ${verb}. Must be one of: keep-a, keep-b, merge, both-valid, needs-more-context`);
7794
7794
  process.exit(1);
@@ -7820,7 +7820,7 @@ Semantic consolidation complete. clusters=${result.clustersFound}, consolidated=
7820
7820
  });
7821
7821
  reviewCmd.command("scan").description("Run an on-demand contradiction scan").option("--namespace <ns>", "Namespace to scan").action(async (...args) => {
7822
7822
  const options = args[0] ?? {};
7823
- const { runContradictionScan } = await import("./contradiction-scan-VOTQRRSX.js");
7823
+ const { runContradictionScan } = await import("./contradiction-scan-AKUWPX5N.js");
7824
7824
  console.log("Running contradiction scan...");
7825
7825
  const result = await runContradictionScan({
7826
7826
  storage: orchestrator.storage,
@@ -8553,4 +8553,4 @@ export {
8553
8553
  listMemoryMarkdownFilePaths,
8554
8554
  registerCli
8555
8555
  };
8556
- //# sourceMappingURL=chunk-LGO6A7GJ.js.map
8556
+ //# sourceMappingURL=chunk-7QOO4LGC.js.map
@@ -161,11 +161,27 @@ var MCP_ADMIN_OPS_TOOLS = [
161
161
  },
162
162
  additionalProperties: false
163
163
  }
164
+ },
165
+ {
166
+ name: "engram.preference_drift_scan",
167
+ description: "Run a preference drift scan (issue #2371): classify aging preference memories as corroborated / stale / drifted from recent same-namespace evidence. Shadow-first \u2014 the default run reports only. apply=true (and driftDetection.enabled) stamps lastCorroborated / driftState and opens one review item per drifted preference. Never auto-deletes and never auto-supersedes.",
168
+ inputSchema: {
169
+ type: "object",
170
+ properties: {
171
+ namespace: { type: "string" },
172
+ apply: { type: "boolean" }
173
+ },
174
+ additionalProperties: false
175
+ }
164
176
  }
165
177
  ];
178
+ var MCP_ADMIN_OPS_MIGRATED_OPERATIONS = {
179
+ "engram.preference_drift_scan": "preference_drift_scan"
180
+ };
166
181
 
167
182
  export {
168
183
  MCP_GIT_CONTEXT_SCHEMA_PROPS_IGNORED,
169
- MCP_ADMIN_OPS_TOOLS
184
+ MCP_ADMIN_OPS_TOOLS,
185
+ MCP_ADMIN_OPS_MIGRATED_OPERATIONS
170
186
  };
171
- //# sourceMappingURL=chunk-TBOJ76ER.js.map
187
+ //# sourceMappingURL=chunk-AB3A7EFH.js.map
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/access-mcp-admin-tools.ts"],"sourcesContent":["/**\n * MCP tool-listing entries for the admin/maintenance operation surface\n * (capsules, governance, entity synthesis, procedure mining, pattern\n * reinforcement, procedural stats). Extracted from access-mcp.ts (#2136)\n * to keep the transport file under its structural-ratchet ceiling; the\n * dispatch name map and operation handlers stay in their existing homes.\n */\n/** Git-context schema props accepted-and-ignored by every tool (issue #569\n * compatibility surface) — defined here so the tool tables and the transport\n * share one copy without an import cycle. */\nexport const MCP_GIT_CONTEXT_SCHEMA_PROPS_IGNORED: Record<string, unknown> = {\n cwd: {\n type: \"string\",\n description: \"Accepted for MCP client compatibility (git-context auto-injection); ignored by this tool.\",\n },\n projectTag: {\n type: \"string\",\n description: \"Accepted for MCP client compatibility; ignored by this tool.\",\n },\n};\n\nexport const MCP_ADMIN_OPS_TOOLS: Array<{\n name: string;\n description: string;\n inputSchema: Record<string, unknown>;\n}> = [\n{\n name: \"engram.capsule_export\",\n description: \"Export a portable Remnic capsule archive from the namespace-scoped memory store.\",\n inputSchema: {\n type: \"object\",\n properties: {\n name: {\n type: \"string\",\n description: \"Capsule id (alphanumeric with single dashes, max 64 characters).\",\n },\n namespace: { type: \"string\" },\n since: {\n type: \"string\",\n description: \"Only include files modified on or after this ISO 8601 timestamp.\",\n },\n includeKinds: {\n type: \"array\",\n items: { type: \"string\" },\n description: \"Optional top-level directory allow-list.\",\n },\n peerIds: {\n type: \"array\",\n items: { type: \"string\" },\n description: \"Optional peer id allow-list for the peers/ subtree.\",\n },\n includeTranscripts: { type: \"boolean\" },\n encrypt: { type: \"boolean\" },\n ...MCP_GIT_CONTEXT_SCHEMA_PROPS_IGNORED,\n },\n required: [\"name\"],\n additionalProperties: false,\n },\n},\n{\n name: \"engram.capsule_import\",\n description: \"Import a Remnic capsule archive into the namespace-scoped memory store.\",\n inputSchema: {\n type: \"object\",\n properties: {\n archivePath: {\n type: \"string\",\n description: \"Path to a .capsule.json.gz or .capsule.json.gz.enc archive.\",\n },\n namespace: { type: \"string\" },\n mode: {\n type: \"string\",\n enum: [\"skip\", \"overwrite\", \"fork\"],\n description: \"Conflict handling mode. Defaults to skip.\",\n },\n passphrase: {\n type: \"string\",\n description: \"Passphrase for encrypted capsule archives.\",\n },\n ...MCP_GIT_CONTEXT_SCHEMA_PROPS_IGNORED,\n },\n required: [\"archivePath\"],\n additionalProperties: false,\n },\n},\n{\n name: \"engram.capsule_list\",\n description: \"List capsule archives in the namespace-scoped capsule store.\",\n inputSchema: {\n type: \"object\",\n properties: {\n namespace: { type: \"string\" },\n sessionKey: {\n type: \"string\",\n description:\n \"Optional session key used to derive namespace principal when no trusted transport principal is present.\",\n },\n ...MCP_GIT_CONTEXT_SCHEMA_PROPS_IGNORED,\n },\n additionalProperties: false,\n },\n},\n{\n name: \"engram.memory_governance_run\",\n description: \"Run Remnic memory governance in a bounded shadow/apply pass.\",\n inputSchema: {\n type: \"object\",\n properties: {\n namespace: { type: \"string\" },\n mode: { type: \"string\", enum: [\"shadow\", \"apply\"] },\n recentDays: { type: \"number\" },\n maxMemories: { type: \"number\" },\n batchSize: { type: \"number\" },\n },\n additionalProperties: false,\n },\n},\n{\n name: \"engram.entity_synthesis_run\",\n description:\n \"Bulk-drain the entity synthesis queue (issue #2136). Processes up to maxEntities (default 25, max 200) queued entity names into canonical syntheses; loop until processed < requested to drain fully.\",\n inputSchema: {\n type: \"object\",\n properties: {\n namespace: { type: \"string\" },\n maxEntities: { type: \"number\" },\n },\n additionalProperties: false,\n },\n},\n{\n name: \"engram.procedure_mining_run\",\n description:\n \"Run procedural memory mining from causal trajectories (issue #519). Respects procedural.enabled; writes under procedures/ when clusters qualify.\",\n inputSchema: {\n type: \"object\",\n properties: {\n namespace: { type: \"string\" },\n },\n additionalProperties: false,\n },\n},\n{\n name: \"engram.pattern_reinforcement_run\",\n description:\n \"Run the pattern-reinforcement maintenance job (issue #687 PR 2/4). Clusters duplicate non-procedural memories by normalized content, promotes the most-recent member to canonical, and supersedes the older duplicates. Gated on patternReinforcementEnabled and the patternReinforcementCadenceMs floor — pass force=true to bypass the cadence for an ad-hoc operator run.\",\n inputSchema: {\n type: \"object\",\n properties: {\n namespace: { type: \"string\" },\n force: { type: \"boolean\" },\n },\n additionalProperties: false,\n },\n},\n{\n // The canonical `remnic.procedural_stats` alias is added automatically\n // by `withToolAliases` — the dual-naming invariant keeps both names\n // alive for the legacy surface.\n name: \"engram.procedural_stats\",\n description:\n \"Procedural memory stats (issue #567): counts by status, recent write activity, and the active procedural.* config. Read-only, namespace-scoped.\",\n inputSchema: {\n type: \"object\",\n properties: {\n namespace: { type: \"string\" },\n },\n additionalProperties: false,\n },\n},\n{\n name: \"engram.procedure_library_maintenance\",\n description:\n \"Run procedure library health maintenance (issue #2370): merge near-duplicate active procedures, flag stale-tool procedures for repair, and retire failure-dominant or idle ones — from Memory Worth + trajectory telemetry. Shadow-first: default run writes nothing and returns a proposed-transition report. apply=true (and procedural.maintenance.enabled) executes transitions; dryRun=true forces shadow.\",\n inputSchema: {\n type: \"object\",\n properties: {\n namespace: { type: \"string\" },\n apply: { type: \"boolean\" },\n dryRun: { type: \"boolean\" },\n },\n additionalProperties: false,\n },\n},\n];\n"],"mappings":"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","names":[]}
1
+ {"version":3,"sources":["../src/access-mcp-admin-tools.ts"],"sourcesContent":["/**\n * MCP tool-listing entries for the admin/maintenance operation surface\n * (capsules, governance, entity synthesis, procedure mining, pattern\n * reinforcement, procedural stats). Extracted from access-mcp.ts (#2136)\n * to keep the transport file under its structural-ratchet ceiling; the\n * dispatch name map and operation handlers stay in their existing homes.\n */\n/** Git-context schema props accepted-and-ignored by every tool (issue #569\n * compatibility surface) — defined here so the tool tables and the transport\n * share one copy without an import cycle. */\nexport const MCP_GIT_CONTEXT_SCHEMA_PROPS_IGNORED: Record<string, unknown> = {\n cwd: {\n type: \"string\",\n description: \"Accepted for MCP client compatibility (git-context auto-injection); ignored by this tool.\",\n },\n projectTag: {\n type: \"string\",\n description: \"Accepted for MCP client compatibility; ignored by this tool.\",\n },\n};\n\nexport const MCP_ADMIN_OPS_TOOLS: Array<{\n name: string;\n description: string;\n inputSchema: Record<string, unknown>;\n}> = [\n{\n name: \"engram.capsule_export\",\n description: \"Export a portable Remnic capsule archive from the namespace-scoped memory store.\",\n inputSchema: {\n type: \"object\",\n properties: {\n name: {\n type: \"string\",\n description: \"Capsule id (alphanumeric with single dashes, max 64 characters).\",\n },\n namespace: { type: \"string\" },\n since: {\n type: \"string\",\n description: \"Only include files modified on or after this ISO 8601 timestamp.\",\n },\n includeKinds: {\n type: \"array\",\n items: { type: \"string\" },\n description: \"Optional top-level directory allow-list.\",\n },\n peerIds: {\n type: \"array\",\n items: { type: \"string\" },\n description: \"Optional peer id allow-list for the peers/ subtree.\",\n },\n includeTranscripts: { type: \"boolean\" },\n encrypt: { type: \"boolean\" },\n ...MCP_GIT_CONTEXT_SCHEMA_PROPS_IGNORED,\n },\n required: [\"name\"],\n additionalProperties: false,\n },\n},\n{\n name: \"engram.capsule_import\",\n description: \"Import a Remnic capsule archive into the namespace-scoped memory store.\",\n inputSchema: {\n type: \"object\",\n properties: {\n archivePath: {\n type: \"string\",\n description: \"Path to a .capsule.json.gz or .capsule.json.gz.enc archive.\",\n },\n namespace: { type: \"string\" },\n mode: {\n type: \"string\",\n enum: [\"skip\", \"overwrite\", \"fork\"],\n description: \"Conflict handling mode. Defaults to skip.\",\n },\n passphrase: {\n type: \"string\",\n description: \"Passphrase for encrypted capsule archives.\",\n },\n ...MCP_GIT_CONTEXT_SCHEMA_PROPS_IGNORED,\n },\n required: [\"archivePath\"],\n additionalProperties: false,\n },\n},\n{\n name: \"engram.capsule_list\",\n description: \"List capsule archives in the namespace-scoped capsule store.\",\n inputSchema: {\n type: \"object\",\n properties: {\n namespace: { type: \"string\" },\n sessionKey: {\n type: \"string\",\n description:\n \"Optional session key used to derive namespace principal when no trusted transport principal is present.\",\n },\n ...MCP_GIT_CONTEXT_SCHEMA_PROPS_IGNORED,\n },\n additionalProperties: false,\n },\n},\n{\n name: \"engram.memory_governance_run\",\n description: \"Run Remnic memory governance in a bounded shadow/apply pass.\",\n inputSchema: {\n type: \"object\",\n properties: {\n namespace: { type: \"string\" },\n mode: { type: \"string\", enum: [\"shadow\", \"apply\"] },\n recentDays: { type: \"number\" },\n maxMemories: { type: \"number\" },\n batchSize: { type: \"number\" },\n },\n additionalProperties: false,\n },\n},\n{\n name: \"engram.entity_synthesis_run\",\n description:\n \"Bulk-drain the entity synthesis queue (issue #2136). Processes up to maxEntities (default 25, max 200) queued entity names into canonical syntheses; loop until processed < requested to drain fully.\",\n inputSchema: {\n type: \"object\",\n properties: {\n namespace: { type: \"string\" },\n maxEntities: { type: \"number\" },\n },\n additionalProperties: false,\n },\n},\n{\n name: \"engram.procedure_mining_run\",\n description:\n \"Run procedural memory mining from causal trajectories (issue #519). Respects procedural.enabled; writes under procedures/ when clusters qualify.\",\n inputSchema: {\n type: \"object\",\n properties: {\n namespace: { type: \"string\" },\n },\n additionalProperties: false,\n },\n},\n{\n name: \"engram.pattern_reinforcement_run\",\n description:\n \"Run the pattern-reinforcement maintenance job (issue #687 PR 2/4). Clusters duplicate non-procedural memories by normalized content, promotes the most-recent member to canonical, and supersedes the older duplicates. Gated on patternReinforcementEnabled and the patternReinforcementCadenceMs floor — pass force=true to bypass the cadence for an ad-hoc operator run.\",\n inputSchema: {\n type: \"object\",\n properties: {\n namespace: { type: \"string\" },\n force: { type: \"boolean\" },\n },\n additionalProperties: false,\n },\n},\n{\n // The canonical `remnic.procedural_stats` alias is added automatically\n // by `withToolAliases` — the dual-naming invariant keeps both names\n // alive for the legacy surface.\n name: \"engram.procedural_stats\",\n description:\n \"Procedural memory stats (issue #567): counts by status, recent write activity, and the active procedural.* config. Read-only, namespace-scoped.\",\n inputSchema: {\n type: \"object\",\n properties: {\n namespace: { type: \"string\" },\n },\n additionalProperties: false,\n },\n},\n{\n name: \"engram.procedure_library_maintenance\",\n description:\n \"Run procedure library health maintenance (issue #2370): merge near-duplicate active procedures, flag stale-tool procedures for repair, and retire failure-dominant or idle ones — from Memory Worth + trajectory telemetry. Shadow-first: default run writes nothing and returns a proposed-transition report. apply=true (and procedural.maintenance.enabled) executes transitions; dryRun=true forces shadow.\",\n inputSchema: {\n type: \"object\",\n properties: {\n namespace: { type: \"string\" },\n apply: { type: \"boolean\" },\n dryRun: { type: \"boolean\" },\n },\n additionalProperties: false,\n },\n},\n{\n name: \"engram.preference_drift_scan\",\n description:\n \"Run a preference drift scan (issue #2371): classify aging preference memories as corroborated / stale / drifted from recent same-namespace evidence. Shadow-first — the default run reports only. apply=true (and driftDetection.enabled) stamps lastCorroborated / driftState and opens one review item per drifted preference. Never auto-deletes and never auto-supersedes.\",\n inputSchema: {\n type: \"object\",\n properties: {\n namespace: { type: \"string\" },\n apply: { type: \"boolean\" },\n },\n additionalProperties: false,\n },\n},\n];\n\n/**\n * Tool-name → operation-name entries contributed by this module, spread into\n * `MCP_MIGRATED_OPERATIONS` in access-mcp.ts. Declared here (rather than\n * inline in the transport) for the same structural-ratchet reason the tool\n * table above lives here. `remnic.*` aliases resolve by suffix, so only the\n * `engram.*` name is listed.\n */\nexport const MCP_ADMIN_OPS_MIGRATED_OPERATIONS: Readonly<Record<string, string>> = {\n \"engram.preference_drift_scan\": \"preference_drift_scan\",\n};\n"],"mappings":"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","names":[]}
@@ -23,7 +23,7 @@ import {
23
23
  } from "./chunk-7ZNJN5WZ.js";
24
24
  import {
25
25
  compareEntityTimestamps
26
- } from "./chunk-J275IYMG.js";
26
+ } from "./chunk-PAYGC3BD.js";
27
27
  import {
28
28
  normalizeEntityName
29
29
  } from "./chunk-YXZG5TVN.js";
@@ -918,4 +918,4 @@ export {
918
918
  entityIndexVersion,
919
919
  entityRecentTranscriptLookbackHours
920
920
  };
921
- //# sourceMappingURL=chunk-DZUJ46DO.js.map
921
+ //# sourceMappingURL=chunk-AUO2LJ3K.js.map
@@ -1,6 +1,6 @@
1
1
  import {
2
2
  StorageManager
3
- } from "./chunk-J275IYMG.js";
3
+ } from "./chunk-PAYGC3BD.js";
4
4
  import {
5
5
  getCachedRuleMemories,
6
6
  setCachedRuleMemories
@@ -119,4 +119,4 @@ export {
119
119
  compareVerifiedSemanticRuleResults,
120
120
  searchVerifiedSemanticRules
121
121
  };
122
- //# sourceMappingURL=chunk-ZO6AXLEH.js.map
122
+ //# sourceMappingURL=chunk-AYDDB3XI.js.map
@@ -1,6 +1,6 @@
1
1
  import {
2
2
  StorageManager
3
- } from "./chunk-J275IYMG.js";
3
+ } from "./chunk-PAYGC3BD.js";
4
4
  import {
5
5
  normalizeEntityName
6
6
  } from "./chunk-YXZG5TVN.js";
@@ -957,4 +957,4 @@ export {
957
957
  resolveBriefingSaveDir,
958
958
  briefingFilename
959
959
  };
960
- //# sourceMappingURL=chunk-NTWN6HB2.js.map
960
+ //# sourceMappingURL=chunk-AYYGRVRP.js.map
@@ -3,7 +3,7 @@ import {
3
3
  } from "./chunk-SOBJ6NEY.js";
4
4
  import {
5
5
  summarizeDisclosureTokens
6
- } from "./chunk-3I7ASZN3.js";
6
+ } from "./chunk-G57LQRP6.js";
7
7
  import {
8
8
  summarizeRetrievedMemoryProvenance
9
9
  } from "./chunk-I4WBNM3M.js";
@@ -606,4 +606,4 @@ export {
606
606
  renderRecallExplain,
607
607
  parseRecallExplainFormat
608
608
  };
609
- //# sourceMappingURL=chunk-7YQ4IYS2.js.map
609
+ //# sourceMappingURL=chunk-AZAA5DNP.js.map
@@ -12,16 +12,16 @@ import {
12
12
  } from "./chunk-3HSRWJTC.js";
13
13
  import {
14
14
  handleSupportPassportOwnerHttp
15
- } from "./chunk-S2DPMJXH.js";
15
+ } from "./chunk-EV3YFLCB.js";
16
16
  import {
17
17
  buildSupportPassportPublicRequestHandler
18
- } from "./chunk-Z7PBQPJ4.js";
18
+ } from "./chunk-BQUEAVNW.js";
19
19
  import {
20
20
  nonEmptyQueryParam,
21
21
  optionalNamespaceKindQueryParam,
22
22
  optionalQueryString,
23
23
  positiveIntQueryParam
24
- } from "./chunk-5YQ63T4B.js";
24
+ } from "./chunk-D27J626P.js";
25
25
  import {
26
26
  EngramMcpServer,
27
27
  MCP_SUPPORTED_PROTOCOL_VERSIONS,
@@ -31,19 +31,19 @@ import {
31
31
  processChatMessage,
32
32
  sessionBelongsToPrincipal,
33
33
  subscribeChatTranscript
34
- } from "./chunk-TF77C7SV.js";
34
+ } from "./chunk-VA5KMSAE.js";
35
35
  import {
36
36
  RelayMissionStoreError
37
- } from "./chunk-OCZIYAE5.js";
37
+ } from "./chunk-TYUS5TLG.js";
38
38
  import {
39
39
  executeResolution,
40
40
  isValidResolutionVerb
41
- } from "./chunk-XCTXS7VY.js";
41
+ } from "./chunk-I32NKXE2.js";
42
42
  import {
43
43
  isDefaultReviewNamespace,
44
44
  listPairs,
45
45
  readPair
46
- } from "./chunk-35NN3ZFA.js";
46
+ } from "./chunk-CTVWELNK.js";
47
47
  import {
48
48
  validateRequest
49
49
  } from "./chunk-W675UJCZ.js";
@@ -61,15 +61,15 @@ import {
61
61
  authorizationProbeNamespaces,
62
62
  authorizationProbeRequiresPrincipalNamespace,
63
63
  probeOperationAuthorization
64
- } from "./chunk-UIN2BWDD.js";
64
+ } from "./chunk-GN55KU2P.js";
65
65
  import {
66
66
  CorrectionContractError,
67
67
  getOperation,
68
68
  resolveQueryNamespaceWritablePreflight
69
- } from "./chunk-SB7D4BT7.js";
69
+ } from "./chunk-WN5FSGLE.js";
70
70
  import {
71
71
  handleWhoKnowsHttpQuery
72
- } from "./chunk-SPUJNJJC.js";
72
+ } from "./chunk-NZWEEALH.js";
73
73
  import {
74
74
  isTrustZoneName
75
75
  } from "./chunk-5QZR2RA3.js";
@@ -78,7 +78,7 @@ import {
78
78
  } from "./chunk-DEUNUKTD.js";
79
79
  import {
80
80
  isRecallDisclosure
81
- } from "./chunk-SBDCZ2AX.js";
81
+ } from "./chunk-NXKJHSDN.js";
82
82
  import {
83
83
  OFFLINE_SYNC_APPLY_MAX_BODY_BYTES,
84
84
  OFFLINE_SYNC_FILE_CONTENT_MAX_CHUNK_BYTES,
@@ -464,6 +464,111 @@ var SupportPassportAccessHttpBase = class {
464
464
  }
465
465
  };
466
466
 
467
+ // src/review/review-deck-http-base.ts
468
+ var LIST_PATHS = ["/remnic/v1/review/deck", "/engram/v1/review/deck"];
469
+ var ACTION_PATHS = ["/remnic/v1/review/deck/action", "/engram/v1/review/deck/action"];
470
+ var UNDO_PATHS = ["/remnic/v1/review/deck/undo", "/engram/v1/review/deck/undo"];
471
+ var LIMIT_MIN = 1;
472
+ var LIMIT_MAX = 100;
473
+ var CURSOR_RE = /^[^\s%]{1,2048}$/;
474
+ function requiredString(body, field) {
475
+ const value = body[field];
476
+ if (typeof value !== "string" || value.trim().length === 0) {
477
+ throw new EngramAccessInputError(`${field} is required`);
478
+ }
479
+ return value.trim();
480
+ }
481
+ function parseLimit(raw) {
482
+ if (raw === null || raw.length === 0) {
483
+ throw new EngramAccessInputError("limit is required and must be an integer");
484
+ }
485
+ if (!/^(?:0|[1-9]\d*)$/.test(raw)) {
486
+ throw new EngramAccessInputError("limit must be an integer");
487
+ }
488
+ const value = Number(raw);
489
+ if (!Number.isInteger(value) || value < LIMIT_MIN || value > LIMIT_MAX) {
490
+ throw new EngramAccessInputError(`limit must be an integer from ${LIMIT_MIN} to ${LIMIT_MAX}`);
491
+ }
492
+ return value;
493
+ }
494
+ function parseCursor(raw) {
495
+ if (raw === null) return void 0;
496
+ if (!CURSOR_RE.test(raw)) {
497
+ throw new EngramAccessInputError("cursor is malformed");
498
+ }
499
+ return raw;
500
+ }
501
+ function parseActionBody(body) {
502
+ const action = body.action;
503
+ if (action !== "keep" && action !== "not_true" && action !== "prepare_fix") {
504
+ throw new EngramAccessInputError("action must be one of: keep, not_true, prepare_fix");
505
+ }
506
+ const itemId = requiredString(body, "itemId");
507
+ const revision = requiredString(body, "revision");
508
+ const idempotencyKey = requiredString(body, "idempotencyKey");
509
+ if (action === "prepare_fix") {
510
+ const correctionText = requiredString(body, "correctionText");
511
+ return { schemaVersion: 1, itemId, revision, action, correctionText, idempotencyKey };
512
+ }
513
+ return { schemaVersion: 1, itemId, revision, action, idempotencyKey };
514
+ }
515
+ function parseUndoBody(body) {
516
+ return {
517
+ schemaVersion: 1,
518
+ receiptId: requiredString(body, "receiptId"),
519
+ expectedRevision: requiredString(body, "expectedRevision"),
520
+ idempotencyKey: requiredString(body, "idempotencyKey")
521
+ };
522
+ }
523
+ var ReviewDeckAccessHttpBase = class extends SupportPassportAccessHttpBase {
524
+ async handleReviewDeckRequest(req, res, pathname, abortSignal) {
525
+ const method = req.method;
526
+ const isList = method === "GET" && (pathname === LIST_PATHS[0] || pathname === LIST_PATHS[1]);
527
+ const isAction = method === "POST" && (pathname === ACTION_PATHS[0] || pathname === ACTION_PATHS[1]);
528
+ const isUndo = method === "POST" && (pathname === UNDO_PATHS[0] || pathname === UNDO_PATHS[1]);
529
+ if (!isList && !isAction && !isUndo) return false;
530
+ if (!this.service.reviewDeckEnabled) {
531
+ this.respondJson(res, 404, { error: "not_found", code: "not_found" });
532
+ return true;
533
+ }
534
+ const parsed = new URL(req.url ?? "/", "http://127.0.0.1");
535
+ const namespace = this.resolveNamespace(req, parsed.searchParams.get("namespace") ?? void 0);
536
+ const principal = this.resolveRequestPrincipal(req);
537
+ if (isList) {
538
+ this.enforceTokenOp("review_deck_list");
539
+ const page = await this.service.reviewDeckList({
540
+ namespace,
541
+ principal,
542
+ cursor: parseCursor(parsed.searchParams.get("cursor")),
543
+ limit: parseLimit(parsed.searchParams.get("limit"))
544
+ });
545
+ this.respondJson(res, 200, page);
546
+ return true;
547
+ }
548
+ if (isAction) this.enforceTokenOp("review_deck_action");
549
+ else this.enforceTokenOp("review_deck_undo");
550
+ const writeQuota = this.reserveWriteRateLimitSlot(req);
551
+ try {
552
+ const body = await this.readJsonBody(req, this.maxBodyBytes);
553
+ const result = isAction ? await this.service.reviewDeckAction(parseActionBody(body), {
554
+ namespace,
555
+ principal,
556
+ signal: abortSignal
557
+ }) : await this.service.reviewDeckUndo(parseUndoBody(body), {
558
+ namespace,
559
+ principal,
560
+ signal: abortSignal
561
+ });
562
+ writeQuota.commit();
563
+ this.respondJson(res, 200, result);
564
+ } catch (error) {
565
+ writeQuota.release();
566
+ throw error;
567
+ }
568
+ return true;
569
+ }
570
+ };
571
+
467
572
  // src/access-http.ts
468
573
  function resolveDefaultAdminConsolePublicDir(sourceUrl = import.meta.url) {
469
574
  const thisDir = path2.dirname(fileURLToPath(sourceUrl));
@@ -602,7 +707,7 @@ function codingContextFromProjectTag(projectTag) {
602
707
  defaultBranch: null
603
708
  };
604
709
  }
605
- var EngramAccessHttpServer = class extends SupportPassportAccessHttpBase {
710
+ var EngramAccessHttpServer = class extends ReviewDeckAccessHttpBase {
606
711
  service;
607
712
  host;
608
713
  requestedPort;
@@ -1010,6 +1115,7 @@ var EngramAccessHttpServer = class extends SupportPassportAccessHttpBase {
1010
1115
  }
1011
1116
  if (req.method === "POST" && pathname === "/mcp") return this.handleMcpRequest(req, res, abortSignal);
1012
1117
  if (await this.handleSupportPassportOwnerRequest(req, res, pathname, parsed.search.length > 0, abortSignal)) return;
1118
+ if (await this.handleReviewDeckRequest(req, res, pathname, abortSignal)) return;
1013
1119
  if (req.method === "GET" && pathname === "/engram/v1/live") return this.respondJson(res, 200, { ok: true, ready: true });
1014
1120
  if (req.method === "GET" && pathname === "/engram/v1/health") {
1015
1121
  const { degraded, warmupAttempts, lastError } = this.readiness();
@@ -2364,7 +2470,7 @@ var EngramAccessHttpServer = class extends SupportPassportAccessHttpBase {
2364
2470
  if (req.method === "POST" && pathname === "/engram/v1/contradiction-scan") {
2365
2471
  this.enforceTokenOp("contradiction_scan_run");
2366
2472
  const body = await this.readJsonBody(req);
2367
- const { runContradictionScan } = await import("./contradiction-scan-VOTQRRSX.js");
2473
+ const { runContradictionScan } = await import("./contradiction-scan-AKUWPX5N.js");
2368
2474
  const principal = this.resolveRequestPrincipal(req);
2369
2475
  const result = await runContradictionScan({
2370
2476
  storage: this.service.storageRef,
@@ -3388,4 +3494,4 @@ export {
3388
3494
  resolveDefaultAdminConsolePublicDir,
3389
3495
  EngramAccessHttpServer
3390
3496
  };
3391
- //# sourceMappingURL=chunk-4KYOLI6M.js.map
3497
+ //# sourceMappingURL=chunk-BKYPJUQL.js.map