@remnic/core 9.4.1 → 9.5.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 (339) hide show
  1. package/dist/access-admin-ops-surface.d.ts +5 -5
  2. package/dist/access-admin-ops-surface.js +26 -26
  3. package/dist/access-boundary.d.ts +26 -7
  4. package/dist/access-boundary.js +31 -27
  5. package/dist/access-cli.js +79 -77
  6. package/dist/access-cli.js.map +1 -1
  7. package/dist/access-http.d.ts +51 -5
  8. package/dist/access-http.js +38 -36
  9. package/dist/access-identity-continuity-surface.d.ts +4 -4
  10. package/dist/access-identity-continuity-surface.js +26 -26
  11. package/dist/access-lcm-surface.d.ts +5 -5
  12. package/dist/access-lcm-surface.js +26 -26
  13. package/dist/access-mcp.d.ts +15 -5
  14. package/dist/access-mcp.js +35 -33
  15. package/dist/access-observe-write-surface.d.ts +5 -5
  16. package/dist/access-observe-write-surface.js +26 -26
  17. package/dist/access-operations-batch.js +31 -30
  18. package/dist/access-operations.d.ts +7 -7
  19. package/dist/access-operations.js +33 -32
  20. package/dist/access-recall-surface.d.ts +5 -5
  21. package/dist/access-recall-surface.js +26 -26
  22. package/dist/access-schema.js +4 -4
  23. package/dist/{access-service-m-2VO_Ig.d.ts → access-service-DZX0sYAv.d.ts} +3 -3
  24. package/dist/access-service.d.ts +5 -5
  25. package/dist/access-service.js +26 -26
  26. package/dist/access-surface-catalog.d.ts +5 -5
  27. package/dist/access-surface-catalog.js +1 -0
  28. package/dist/access-surface-catalog.js.map +1 -1
  29. package/dist/access-token-capabilities.d.ts +174 -0
  30. package/dist/access-token-capabilities.js +33 -0
  31. package/dist/action-confidence.d.ts +1 -1
  32. package/dist/active-memory-bridge.d.ts +1 -1
  33. package/dist/active-recall.d.ts +1 -1
  34. package/dist/active-recall.js +1 -1
  35. package/dist/adapters/index.js +4 -4
  36. package/dist/adapters/registry.js +2 -2
  37. package/dist/{auto-sync-HMHQHUAG.js → auto-sync-G6IU7L6C.js} +3 -3
  38. package/dist/behavior-learner.d.ts +1 -1
  39. package/dist/behavior-signals.d.ts +1 -1
  40. package/dist/bootstrap.d.ts +4 -4
  41. package/dist/briefing.d.ts +1 -1
  42. package/dist/briefing.js +7 -7
  43. package/dist/buffer-surprise-report.d.ts +1 -1
  44. package/dist/buffer.d.ts +1 -1
  45. package/dist/calibration.d.ts +1 -1
  46. package/dist/capabilities.d.ts +1 -1
  47. package/dist/{capsule-crypto-CZJSLEFG.js → capsule-crypto-RAARDY3M.js} +2 -2
  48. package/dist/capsule-crypto-RAARDY3M.js.map +1 -0
  49. package/dist/{catalog-BxWokdC2.d.ts → catalog-DoH2b0OR.d.ts} +1 -1
  50. package/dist/causal-behavior.d.ts +1 -1
  51. package/dist/causal-behavior.js +5 -5
  52. package/dist/causal-chain.js +3 -3
  53. package/dist/causal-consolidation.d.ts +1 -1
  54. package/dist/causal-consolidation.js +11 -11
  55. package/dist/causal-retrieval.js +3 -3
  56. package/dist/causal-trajectory-graph.d.ts +1 -1
  57. package/dist/causal-trajectory.js +1 -1
  58. package/dist/{chunk-7QWMTOIF.js → chunk-2B7DP7AP.js} +31 -31
  59. package/dist/{chunk-4BFRBP45.js → chunk-2JFDHI2K.js} +2 -2
  60. package/dist/{chunk-OHDJ34CC.js → chunk-2SFEFR5I.js} +2 -2
  61. package/dist/{chunk-E2SPGGUI.js → chunk-4OKLXWDZ.js} +13 -6
  62. package/dist/chunk-4OKLXWDZ.js.map +1 -0
  63. package/dist/{chunk-ILFJ7AVS.js → chunk-4WNLSSHL.js} +35 -21
  64. package/dist/chunk-4WNLSSHL.js.map +1 -0
  65. package/dist/{chunk-YDSWRD33.js → chunk-5K5VEDFY.js} +4 -4
  66. package/dist/{chunk-CZAZX7JP.js → chunk-7BAJAXGB.js} +4 -4
  67. package/dist/{chunk-CXLNZXG5.js → chunk-7XGSIUP5.js} +1 -1
  68. package/dist/{chunk-ZPOROUTX.js → chunk-AOYJVCFN.js} +5 -5
  69. package/dist/{chunk-IC6QX5TC.js → chunk-BGMSRN6I.js} +5 -5
  70. package/dist/{chunk-5QZDMSSN.js → chunk-CXEL3Y22.js} +70 -70
  71. package/dist/{chunk-M5QKGHCR.js → chunk-CYWCKFCL.js} +5 -5
  72. package/dist/{chunk-2U2A5HF4.js → chunk-D2XYYU5Q.js} +5 -5
  73. package/dist/chunk-D7FOKIY5.js +173 -0
  74. package/dist/chunk-D7FOKIY5.js.map +1 -0
  75. package/dist/{chunk-DGYCWCQ7.js → chunk-DZSAXE3T.js} +2 -2
  76. package/dist/{chunk-2BFLDH5F.js → chunk-EEIROWEG.js} +2 -2
  77. package/dist/{chunk-6ZIETXZ2.js → chunk-H5PFR5ZT.js} +2 -2
  78. package/dist/{chunk-2FOD2YY3.js → chunk-I74ZEBMA.js} +236 -103
  79. package/dist/chunk-I74ZEBMA.js.map +1 -0
  80. package/dist/chunk-IC2TCZJ2.js +54 -0
  81. package/dist/chunk-IC2TCZJ2.js.map +1 -0
  82. package/dist/{chunk-66FLU5BT.js → chunk-II6WHCCW.js} +6 -6
  83. package/dist/{chunk-YPEMNNNY.js → chunk-ITWTKT2R.js} +6 -6
  84. package/dist/{chunk-AKUCU7CI.js → chunk-JI5AVXYO.js} +5 -5
  85. package/dist/{chunk-27FLVMDC.js → chunk-KMF67QDQ.js} +7 -7
  86. package/dist/{chunk-FLVL4L3L.js → chunk-KTULX4YO.js} +4 -4
  87. package/dist/{chunk-FZGGZAAU.js → chunk-L2QJQSHL.js} +146 -2
  88. package/dist/chunk-L2QJQSHL.js.map +1 -0
  89. package/dist/{chunk-4P4626RY.js → chunk-L4UZBJNM.js} +4 -4
  90. package/dist/{chunk-JLR3JSTL.js → chunk-L6V3WJ55.js} +3 -3
  91. package/dist/{chunk-6BISDEN6.js → chunk-LNHJ32NK.js} +14 -14
  92. package/dist/{chunk-437S3G37.js → chunk-LNQUAJNC.js} +1 -1
  93. package/dist/{chunk-LOR6ZM5R.js → chunk-MFDJ63U5.js} +2 -2
  94. package/dist/{chunk-HRCACVHL.js → chunk-NFTABV56.js} +2 -2
  95. package/dist/{chunk-OUMTBFSQ.js → chunk-NKCPUHCI.js} +5 -5
  96. package/dist/{chunk-KCJ5H6XQ.js → chunk-ODSYJXDU.js} +2 -2
  97. package/dist/{chunk-2QSZNTDO.js → chunk-RKNJBZ55.js} +4 -4
  98. package/dist/{chunk-NG7YBCJO.js → chunk-SNBEVJBX.js} +4 -4
  99. package/dist/{chunk-CZAA5N5S.js → chunk-SNNIUDRS.js} +2 -2
  100. package/dist/{chunk-P6SYWE4G.js → chunk-STCCFQU5.js} +9 -9
  101. package/dist/{chunk-X4A62ET7.js → chunk-TI7IHDBQ.js} +17 -17
  102. package/dist/{chunk-BGTAL46Y.js → chunk-TV7C3HCB.js} +2 -2
  103. package/dist/{chunk-EPGWWCZF.js → chunk-UBGAOYBP.js} +6 -6
  104. package/dist/{chunk-M7GGMGMZ.js → chunk-UDCDGP6A.js} +15 -15
  105. package/dist/{chunk-2MR3MFQB.js → chunk-UPSAT4PY.js} +2 -2
  106. package/dist/{chunk-CGS7UKWM.js → chunk-VCW74PNH.js} +2 -2
  107. package/dist/{chunk-DR6PEJU3.js → chunk-VWEWK2BM.js} +44 -59
  108. package/dist/chunk-VWEWK2BM.js.map +1 -0
  109. package/dist/{chunk-CLX5VDNY.js → chunk-Y4RKAQZ7.js} +4 -4
  110. package/dist/{chunk-EZ25VE3G.js → chunk-YNDLCWXS.js} +4 -4
  111. package/dist/{cli-EiBBOt3r.d.ts → cli-1dghPCO2.d.ts} +3 -3
  112. package/dist/cli.d.ts +6 -6
  113. package/dist/cli.js +57 -55
  114. package/dist/compounding/engine.d.ts +1 -1
  115. package/dist/compounding/engine.js +7 -7
  116. package/dist/compounding/preference-consolidator.d.ts +1 -1
  117. package/dist/compression-optimizer.d.ts +1 -1
  118. package/dist/config.d.ts +1 -1
  119. package/dist/config.js +1 -1
  120. package/dist/connectors/codex-materialize-runner.d.ts +1 -1
  121. package/dist/connectors/codex-materialize-runner.js +7 -7
  122. package/dist/connectors/codex-materialize.d.ts +1 -1
  123. package/dist/connectors/index.d.ts +1 -1
  124. package/dist/connectors/index.js +11 -9
  125. package/dist/consolidation-provenance-check.d.ts +1 -1
  126. package/dist/consolidation-undo.d.ts +1 -1
  127. package/dist/contradiction/index.d.ts +1 -1
  128. package/dist/contradiction/index.js +4 -4
  129. package/dist/conversation-index/backend.d.ts +1 -1
  130. package/dist/conversation-index/backend.js +2 -2
  131. package/dist/conversation-index/chunker.d.ts +1 -1
  132. package/dist/conversation-index/faiss-adapter.d.ts +1 -1
  133. package/dist/conversation-index/indexer.d.ts +1 -1
  134. package/dist/conversation-index/search.d.ts +1 -1
  135. package/dist/dashboard-runtime.js +2 -2
  136. package/dist/day-summary.d.ts +1 -1
  137. package/dist/delinearize.d.ts +1 -1
  138. package/dist/direct-answer-wiring.d.ts +1 -1
  139. package/dist/direct-answer.d.ts +1 -1
  140. package/dist/embedding-fallback.d.ts +1 -1
  141. package/dist/enrichment/index.d.ts +1 -1
  142. package/dist/entity-retrieval.d.ts +1 -1
  143. package/dist/entity-retrieval.js +7 -7
  144. package/dist/entity-schema.d.ts +1 -1
  145. package/dist/explicit-capture.d.ts +4 -4
  146. package/dist/extraction-faithfulness.d.ts +1 -1
  147. package/dist/extraction-judge-telemetry.d.ts +1 -1
  148. package/dist/extraction-judge-training.d.ts +1 -1
  149. package/dist/extraction-judge.d.ts +1 -1
  150. package/dist/extraction.d.ts +1 -1
  151. package/dist/fallback-llm.d.ts +1 -1
  152. package/dist/{first-start-migration-DY6YCRC2.js → first-start-migration-VBJQL6OI.js} +5 -5
  153. package/dist/graph-dashboard-diff.d.ts +1 -1
  154. package/dist/graph-dashboard-key.d.ts +1 -1
  155. package/dist/graph-dashboard-parser.d.ts +1 -1
  156. package/dist/graph-edge-reinforcement.d.ts +1 -1
  157. package/dist/graph-snapshot.d.ts +1 -1
  158. package/dist/graph.d.ts +1 -1
  159. package/dist/identity-continuity.d.ts +1 -1
  160. package/dist/importance.d.ts +1 -1
  161. package/dist/index.d.ts +13 -10
  162. package/dist/index.js +115 -93
  163. package/dist/intent.d.ts +1 -1
  164. package/dist/lcm/engine.d.ts +1 -1
  165. package/dist/lcm/engine.js +2 -2
  166. package/dist/lcm/index.d.ts +1 -1
  167. package/dist/lcm/index.js +2 -2
  168. package/dist/lcm/tools.d.ts +1 -1
  169. package/dist/lifecycle.d.ts +1 -1
  170. package/dist/live-connectors-runner.d.ts +1 -1
  171. package/dist/local-llm.d.ts +1 -1
  172. package/dist/local-model-endpoint.d.ts +1 -1
  173. package/dist/maintenance/memory-governance.d.ts +1 -1
  174. package/dist/maintenance/memory-governance.js +8 -8
  175. package/dist/maintenance/rebuild-memory-lifecycle-ledger.js +7 -7
  176. package/dist/maintenance/rebuild-memory-projection.js +9 -9
  177. package/dist/mcp-memory-inspector-app.d.ts +5 -5
  178. package/dist/mcp-read-only-tools.d.ts +16 -0
  179. package/dist/mcp-read-only-tools.js +8 -0
  180. package/dist/mcp-read-only-tools.js.map +1 -0
  181. package/dist/memory-action-policy.d.ts +1 -1
  182. package/dist/memory-cache.d.ts +1 -1
  183. package/dist/memory-lifecycle-ledger-utils.d.ts +1 -1
  184. package/dist/memory-projection-store.d.ts +1 -1
  185. package/dist/memory-provenance.d.ts +1 -1
  186. package/dist/memory-worth-outcomes.d.ts +1 -1
  187. package/dist/models-json.d.ts +1 -1
  188. package/dist/namespaces/migrate.d.ts +2 -2
  189. package/dist/namespaces/migrate.js +17 -17
  190. package/dist/namespaces/principal.d.ts +1 -1
  191. package/dist/namespaces/search.d.ts +1 -1
  192. package/dist/namespaces/search.js +9 -9
  193. package/dist/namespaces/storage.d.ts +2 -2
  194. package/dist/namespaces/storage.js +7 -7
  195. package/dist/native-knowledge.d.ts +1 -1
  196. package/dist/operator-toolkit.d.ts +1 -1
  197. package/dist/operator-toolkit.js +22 -22
  198. package/dist/orchestration/compression-guideline-coordinator.d.ts +1 -1
  199. package/dist/orchestration/maintenance.d.ts +2 -2
  200. package/dist/orchestration/maintenance.js +9 -9
  201. package/dist/{orchestrator-B2Y28Z9t.d.ts → orchestrator-Dh3WSW_O.d.ts} +3 -3
  202. package/dist/orchestrator.d.ts +4 -4
  203. package/dist/orchestrator.js +81 -79
  204. package/dist/patterns-cli.d.ts +1 -1
  205. package/dist/policy-runtime.d.ts +1 -1
  206. package/dist/provenance.d.ts +1 -1
  207. package/dist/{qmd-Db9mOkzB.d.ts → qmd-DoUVxqND.d.ts} +1 -1
  208. package/dist/qmd-preflight.d.ts +2 -2
  209. package/dist/qmd-recall-cache.d.ts +1 -1
  210. package/dist/qmd.d.ts +2 -2
  211. package/dist/recall-disclosure-escalation.d.ts +1 -1
  212. package/dist/recall-explain-renderer.d.ts +1 -1
  213. package/dist/recall-planner-llm.d.ts +1 -1
  214. package/dist/recall-state.d.ts +1 -1
  215. package/dist/recall-tag-filter.d.ts +1 -1
  216. package/dist/recall-timings.d.ts +1 -1
  217. package/dist/recall-xray-cli.d.ts +1 -1
  218. package/dist/recall-xray-renderer.d.ts +1 -1
  219. package/dist/recall-xray.d.ts +1 -1
  220. package/dist/resolve-auth-token.d.ts +1 -1
  221. package/dist/resume-bundles.js +2 -2
  222. package/dist/retrieval-agents.d.ts +2 -2
  223. package/dist/retrieval-tiers.d.ts +1 -1
  224. package/dist/routing/engine.d.ts +1 -1
  225. package/dist/routing/store.d.ts +1 -1
  226. package/dist/schemas.d.ts +22 -22
  227. package/dist/search/embed-helper.d.ts +1 -1
  228. package/dist/search/factory.d.ts +1 -1
  229. package/dist/search/factory.js +8 -8
  230. package/dist/search/index.d.ts +1 -1
  231. package/dist/search/index.js +12 -12
  232. package/dist/search/lancedb-backend.d.ts +1 -1
  233. package/dist/search/lancedb-backend.js +2 -2
  234. package/dist/search/meilisearch-backend.d.ts +1 -1
  235. package/dist/search/meilisearch-backend.js +2 -2
  236. package/dist/search/noop-backend.d.ts +1 -1
  237. package/dist/search/orama-backend.d.ts +1 -1
  238. package/dist/search/orama-backend.js +2 -2
  239. package/dist/search/port.d.ts +1 -1
  240. package/dist/search/remote-backend.d.ts +1 -1
  241. package/dist/{semantic-consolidation-BDVIbLRw.d.ts → semantic-consolidation-Dof1865o.d.ts} +1 -1
  242. package/dist/semantic-consolidation.d.ts +2 -2
  243. package/dist/semantic-consolidation.js +9 -9
  244. package/dist/semantic-rule-promotion.js +7 -7
  245. package/dist/semantic-rule-verifier.d.ts +1 -1
  246. package/dist/semantic-rule-verifier.js +8 -8
  247. package/dist/session-observer-bands.d.ts +1 -1
  248. package/dist/session-observer-state.d.ts +1 -1
  249. package/dist/shared-context/manager.d.ts +1 -1
  250. package/dist/signal.d.ts +1 -1
  251. package/dist/storage.d.ts +1 -1
  252. package/dist/storage.js +6 -6
  253. package/dist/summarizer.d.ts +1 -1
  254. package/dist/summary-snapshot.d.ts +1 -1
  255. package/dist/temporal-supersession.d.ts +1 -1
  256. package/dist/temporal-validity.d.ts +1 -1
  257. package/dist/threading.d.ts +1 -1
  258. package/dist/tier-migration.d.ts +1 -1
  259. package/dist/tier-routing.d.ts +1 -1
  260. package/dist/{tier-stats-TG6GUZ6N.js → tier-stats-5XF4UBRQ.js} +4 -4
  261. package/dist/tokens.d.ts +17 -2
  262. package/dist/tokens.js +3 -1
  263. package/dist/topics.d.ts +1 -1
  264. package/dist/transcript.d.ts +1 -1
  265. package/dist/transfer/backup.js +2 -2
  266. package/dist/transfer/capsule-export.js +3 -3
  267. package/dist/transfer/capsule-import.js +3 -3
  268. package/dist/transfer/types.d.ts +12 -12
  269. package/dist/trust-score-stage.d.ts +1 -1
  270. package/dist/trust-score.d.ts +1 -1
  271. package/dist/{types-ljkd82rn.d.ts → types-C7HUgOuA.d.ts} +1 -1
  272. package/dist/types.d.ts +1 -1
  273. package/dist/utility-runtime.d.ts +1 -1
  274. package/dist/verified-recall.js +8 -8
  275. package/package.json +2 -2
  276. package/src/access-boundary.test.ts +62 -0
  277. package/src/access-boundary.ts +165 -126
  278. package/src/access-http.test.ts +781 -0
  279. package/src/access-http.ts +334 -108
  280. package/src/access-mcp.test.ts +264 -0
  281. package/src/access-mcp.ts +45 -70
  282. package/src/access-operations-batch.ts +35 -12
  283. package/src/access-surface-catalog.test.ts +22 -14
  284. package/src/access-surface-catalog.ts +6 -3
  285. package/src/access-token-capabilities.test.ts +844 -0
  286. package/src/access-token-capabilities.ts +391 -0
  287. package/src/chat/chat-mcp.test.ts +232 -0
  288. package/src/chat/chat-session.ts +34 -0
  289. package/src/index.ts +14 -0
  290. package/src/mcp-read-only-tools.ts +61 -0
  291. package/src/tokens.ts +32 -3
  292. package/dist/chunk-2FOD2YY3.js.map +0 -1
  293. package/dist/chunk-DR6PEJU3.js.map +0 -1
  294. package/dist/chunk-E2SPGGUI.js.map +0 -1
  295. package/dist/chunk-FZGGZAAU.js.map +0 -1
  296. package/dist/chunk-ILFJ7AVS.js.map +0 -1
  297. /package/dist/{capsule-crypto-CZJSLEFG.js.map → access-token-capabilities.js.map} +0 -0
  298. /package/dist/{auto-sync-HMHQHUAG.js.map → auto-sync-G6IU7L6C.js.map} +0 -0
  299. /package/dist/{chunk-7QWMTOIF.js.map → chunk-2B7DP7AP.js.map} +0 -0
  300. /package/dist/{chunk-4BFRBP45.js.map → chunk-2JFDHI2K.js.map} +0 -0
  301. /package/dist/{chunk-OHDJ34CC.js.map → chunk-2SFEFR5I.js.map} +0 -0
  302. /package/dist/{chunk-YDSWRD33.js.map → chunk-5K5VEDFY.js.map} +0 -0
  303. /package/dist/{chunk-CZAZX7JP.js.map → chunk-7BAJAXGB.js.map} +0 -0
  304. /package/dist/{chunk-CXLNZXG5.js.map → chunk-7XGSIUP5.js.map} +0 -0
  305. /package/dist/{chunk-ZPOROUTX.js.map → chunk-AOYJVCFN.js.map} +0 -0
  306. /package/dist/{chunk-IC6QX5TC.js.map → chunk-BGMSRN6I.js.map} +0 -0
  307. /package/dist/{chunk-5QZDMSSN.js.map → chunk-CXEL3Y22.js.map} +0 -0
  308. /package/dist/{chunk-M5QKGHCR.js.map → chunk-CYWCKFCL.js.map} +0 -0
  309. /package/dist/{chunk-2U2A5HF4.js.map → chunk-D2XYYU5Q.js.map} +0 -0
  310. /package/dist/{chunk-DGYCWCQ7.js.map → chunk-DZSAXE3T.js.map} +0 -0
  311. /package/dist/{chunk-2BFLDH5F.js.map → chunk-EEIROWEG.js.map} +0 -0
  312. /package/dist/{chunk-6ZIETXZ2.js.map → chunk-H5PFR5ZT.js.map} +0 -0
  313. /package/dist/{chunk-66FLU5BT.js.map → chunk-II6WHCCW.js.map} +0 -0
  314. /package/dist/{chunk-YPEMNNNY.js.map → chunk-ITWTKT2R.js.map} +0 -0
  315. /package/dist/{chunk-AKUCU7CI.js.map → chunk-JI5AVXYO.js.map} +0 -0
  316. /package/dist/{chunk-27FLVMDC.js.map → chunk-KMF67QDQ.js.map} +0 -0
  317. /package/dist/{chunk-FLVL4L3L.js.map → chunk-KTULX4YO.js.map} +0 -0
  318. /package/dist/{chunk-4P4626RY.js.map → chunk-L4UZBJNM.js.map} +0 -0
  319. /package/dist/{chunk-JLR3JSTL.js.map → chunk-L6V3WJ55.js.map} +0 -0
  320. /package/dist/{chunk-6BISDEN6.js.map → chunk-LNHJ32NK.js.map} +0 -0
  321. /package/dist/{chunk-437S3G37.js.map → chunk-LNQUAJNC.js.map} +0 -0
  322. /package/dist/{chunk-LOR6ZM5R.js.map → chunk-MFDJ63U5.js.map} +0 -0
  323. /package/dist/{chunk-HRCACVHL.js.map → chunk-NFTABV56.js.map} +0 -0
  324. /package/dist/{chunk-OUMTBFSQ.js.map → chunk-NKCPUHCI.js.map} +0 -0
  325. /package/dist/{chunk-KCJ5H6XQ.js.map → chunk-ODSYJXDU.js.map} +0 -0
  326. /package/dist/{chunk-2QSZNTDO.js.map → chunk-RKNJBZ55.js.map} +0 -0
  327. /package/dist/{chunk-NG7YBCJO.js.map → chunk-SNBEVJBX.js.map} +0 -0
  328. /package/dist/{chunk-CZAA5N5S.js.map → chunk-SNNIUDRS.js.map} +0 -0
  329. /package/dist/{chunk-P6SYWE4G.js.map → chunk-STCCFQU5.js.map} +0 -0
  330. /package/dist/{chunk-X4A62ET7.js.map → chunk-TI7IHDBQ.js.map} +0 -0
  331. /package/dist/{chunk-BGTAL46Y.js.map → chunk-TV7C3HCB.js.map} +0 -0
  332. /package/dist/{chunk-EPGWWCZF.js.map → chunk-UBGAOYBP.js.map} +0 -0
  333. /package/dist/{chunk-M7GGMGMZ.js.map → chunk-UDCDGP6A.js.map} +0 -0
  334. /package/dist/{chunk-2MR3MFQB.js.map → chunk-UPSAT4PY.js.map} +0 -0
  335. /package/dist/{chunk-CGS7UKWM.js.map → chunk-VCW74PNH.js.map} +0 -0
  336. /package/dist/{chunk-CLX5VDNY.js.map → chunk-Y4RKAQZ7.js.map} +0 -0
  337. /package/dist/{chunk-EZ25VE3G.js.map → chunk-YNDLCWXS.js.map} +0 -0
  338. /package/dist/{first-start-migration-DY6YCRC2.js.map → first-start-migration-VBJQL6OI.js.map} +0 -0
  339. /package/dist/{tier-stats-TG6GUZ6N.js.map → tier-stats-5XF4UBRQ.js.map} +0 -0
@@ -17,6 +17,7 @@
17
17
 
18
18
  import { z } from "zod";
19
19
  import { EngramAccessInputError, type EngramAccessService } from "./access-service.js";
20
+ import { assertFleetWideOperationAllowed, assertOperationAllowed, tokenCapabilityStore } from "./access-token-capabilities.js";
20
21
  import { expandTildePath } from "./utils/path.js";
21
22
 
22
23
  // ---------------------------------------------------------------------------
@@ -30,138 +31,150 @@ import { expandTildePath } from "./utils/path.js";
30
31
  * lands; the fitness test in `access-surface-catalog.test.ts` treats the
31
32
  * registered set as the migration state.
32
33
  */
33
- export type OperationName =
34
- | "memory_get"
35
- | "memory_search"
36
- | "memory_store"
37
- | "coding_decision"
38
- | "coding_architecture"
34
+ export const OPERATION_NAMES = [
35
+ "memory_get",
36
+ "memory_search",
37
+ "memory_store",
38
+ "coding_decision",
39
+ "coding_architecture",
39
40
  // codegraph parity tools (issue #1554) -- each maps to one codegraph_*
40
41
  // boundary operation that delegates to the surface handler in
41
42
  // coding/codegraph-surfaces.ts. Names match the external tool suffixes.
42
- | "codegraph_index"
43
- | "codegraph_list_projects"
44
- | "codegraph_delete_project"
45
- | "codegraph_index_status"
46
- | "codegraph_search_graph"
47
- | "codegraph_trace_path"
48
- | "codegraph_detect_changes"
49
- | "codegraph_query_graph"
50
- | "codegraph_get_schema"
51
- | "codegraph_get_snippet"
52
- | "codegraph_get_architecture"
53
- | "codegraph_search_code"
54
- | "codegraph_manage_adr"
55
- | "codegraph_ingest_traces"
56
- | "memory_correct_plan"
57
- | "memory_correct_apply"
58
- | "coding_delta"
43
+ "codegraph_index",
44
+ "codegraph_list_projects",
45
+ "codegraph_delete_project",
46
+ "codegraph_index_status",
47
+ "codegraph_search_graph",
48
+ "codegraph_trace_path",
49
+ "codegraph_detect_changes",
50
+ "codegraph_query_graph",
51
+ "codegraph_get_schema",
52
+ "codegraph_get_snippet",
53
+ "codegraph_get_architecture",
54
+ "codegraph_search_code",
55
+ "codegraph_manage_adr",
56
+ "codegraph_ingest_traces",
57
+ "memory_correct_plan",
58
+ "memory_correct_apply",
59
+ "coding_delta",
59
60
  // Remaining MCP/HTTP handlers migrated through the boundary (issue #1525).
60
- | "recall"
61
- | "recall_explain"
62
- | "set_coding_context"
63
- | "recall_tier_explain"
64
- | "recall_xray"
65
- | "wearables_status"
66
- | "wearables_sync"
67
- | "transcript_day"
68
- | "transcript_search"
69
- | "transcript_memories"
70
- | "action_confidence"
71
- | "chatgpt_memory_inspector"
72
- | "day_summary"
73
- | "capsule_export"
74
- | "capsule_import"
75
- | "capsule_list"
76
- | "memory_governance_run"
77
- | "procedure_mining_run"
78
- | "pattern_reinforcement_run"
79
- | "procedural_stats"
80
- | "memory_timeline"
81
- | "suggestion_submit"
82
- | "entity_get"
83
- | "review_queue_list"
84
- | "correction_pending"
85
- | "observe"
86
- | "lcm_search"
87
- | "lcm_compaction_flush"
88
- | "lcm_compaction_record"
89
- | "continuity_audit_generate"
90
- | "continuity_incident_open"
91
- | "continuity_incident_close"
92
- | "continuity_incident_list"
93
- | "continuity_loop_add_or_update"
94
- | "continuity_loop_review"
95
- | "identity_anchor_get"
96
- | "identity_anchor_update"
97
- | "memory_identity"
98
- | "work_task"
99
- | "work_project"
100
- | "work_board"
101
- | "shared_context_write_output"
102
- | "shared_feedback_record"
103
- | "shared_priorities_append"
104
- | "shared_context_cross_signals_run"
105
- | "shared_context_curate_daily"
106
- | "compounding_weekly_synthesize"
107
- | "compounding_promote_candidate"
108
- | "compression_guidelines_optimize"
109
- | "compression_guidelines_activate"
110
- | "memory_profile"
111
- | "memory_entities_list"
112
- | "memory_questions"
113
- | "memory_last_recall"
114
- | "memory_intent_debug"
115
- | "memory_qmd_debug"
116
- | "memory_graph_explain"
117
- | "graph_snapshot"
118
- | "memory_feedback"
119
- | "memory_promote"
120
- | "memory_outcome"
121
- | "memory_action_apply"
122
- | "context_checkpoint"
123
- | "briefing"
124
- | "review_list"
125
- | "review_resolve"
126
- | "contradiction_scan_run"
127
- | "memory_summarize_hourly"
128
- | "conversation_index_update"
129
- | "profiling_report"
130
- | "graph_edge_decay_run"
131
- | "live_connectors_run"
132
- | "peer_list"
133
- | "peer_get"
134
- | "peer_set"
135
- | "peer_delete"
136
- | "peer_profile_get"
137
- | "peer_forget"
138
- | "console_state"
139
- | "dreams_status"
140
- | "dreams_run"
61
+ "recall",
62
+ "recall_explain",
63
+ "set_coding_context",
64
+ "recall_tier_explain",
65
+ "recall_xray",
66
+ "wearables_status",
67
+ "wearables_sync",
68
+ "transcript_day",
69
+ "transcript_search",
70
+ "transcript_memories",
71
+ "action_confidence",
72
+ "chatgpt_memory_inspector",
73
+ "day_summary",
74
+ "capsule_export",
75
+ "capsule_import",
76
+ "capsule_list",
77
+ "memory_governance_run",
78
+ "procedure_mining_run",
79
+ "pattern_reinforcement_run",
80
+ "procedural_stats",
81
+ "memory_timeline",
82
+ "suggestion_submit",
83
+ "entity_get",
84
+ "review_queue_list",
85
+ "correction_pending",
86
+ "observe",
87
+ "lcm_search",
88
+ "lcm_compaction_flush",
89
+ "lcm_compaction_record",
90
+ "continuity_audit_generate",
91
+ "continuity_incident_open",
92
+ "continuity_incident_close",
93
+ "continuity_incident_list",
94
+ "continuity_loop_add_or_update",
95
+ "continuity_loop_review",
96
+ "identity_anchor_get",
97
+ "identity_anchor_update",
98
+ "memory_identity",
99
+ "work_task",
100
+ "work_project",
101
+ "work_board",
102
+ "shared_context_write_output",
103
+ "shared_feedback_record",
104
+ "shared_priorities_append",
105
+ "shared_context_cross_signals_run",
106
+ "shared_context_curate_daily",
107
+ "compounding_weekly_synthesize",
108
+ "compounding_promote_candidate",
109
+ "compression_guidelines_optimize",
110
+ "compression_guidelines_activate",
111
+ "memory_profile",
112
+ "memory_entities_list",
113
+ "memory_questions",
114
+ "memory_last_recall",
115
+ "memory_intent_debug",
116
+ "memory_qmd_debug",
117
+ "memory_graph_explain",
118
+ "graph_snapshot",
119
+ "memory_feedback",
120
+ "memory_promote",
121
+ "memory_outcome",
122
+ "memory_action_apply",
123
+ "context_checkpoint",
124
+ "briefing",
125
+ "review_list",
126
+ "review_resolve",
127
+ "contradiction_scan_run",
128
+ "memory_summarize_hourly",
129
+ "conversation_index_update",
130
+ "profiling_report",
131
+ "graph_edge_decay_run",
132
+ "live_connectors_run",
133
+ "peer_list",
134
+ "peer_get",
135
+ "peer_set",
136
+ "peer_delete",
137
+ "peer_profile_get",
138
+ "peer_forget",
139
+ "console_state",
140
+ "dreams_status",
141
+ "dreams_run",
141
142
  // HTTP-only routes (no direct MCP tool equivalent).
142
- | "offline_sync_snapshot"
143
- | "offline_sync_snapshot_stream"
144
- | "offline_sync_files"
145
- | "offline_sync_file_content"
146
- | "offline_sync_apply_file_content"
147
- | "offline_sync_apply"
148
- | "lcm_status"
149
- | "memory_list"
150
- | "recall_timings"
151
- | "entity_list"
152
- | "maintenance_status"
153
- | "quality_status"
154
- | "trust_zones_status"
155
- | "trust_zones_records"
156
- | "review_disposition"
157
- | "trust_zones_promote"
158
- | "trust_zones_demo_seed"
159
- | "citations_observed"
160
- | "contradiction_detail"
161
- | "graph_events"
143
+ "adapters_status",
144
+ "offline_sync_snapshot",
145
+ "offline_sync_snapshot_stream",
146
+ "offline_sync_files",
147
+ "offline_sync_file_content",
148
+ "offline_sync_apply_file_content",
149
+ "offline_sync_apply",
150
+ "lcm_status",
151
+ "memory_list",
152
+ "recall_timings",
153
+ "entity_list",
154
+ "maintenance_status",
155
+ "quality_status",
156
+ "trust_zones_status",
157
+ "trust_zones_records",
158
+ "review_disposition",
159
+ "trust_zones_promote",
160
+ "trust_zones_demo_seed",
161
+ "citations_observed",
162
+ "contradiction_detail",
163
+ "graph_events",
162
164
  // Chat surface — conversational memory inspection/correction (issue #1583).
163
- | "chat_message"
164
- | "chat_events";
165
+ "chat_message",
166
+ "chat_events",
167
+ ] as const;
168
+
169
+ /**
170
+ * Canonical operation ids. One id is shared by the MCP tool, the HTTP route,
171
+ * and the CLI command that expose the same operation. Derived from
172
+ * {@link OPERATION_NAMES} (single source of truth) so the runtime catalog
173
+ * used for token-capability validation cannot drift from the type. The
174
+ * fitness test in `access-surface-catalog.test.ts` treats the registered set
175
+ * as the migration state.
176
+ */
177
+ export type OperationName = (typeof OPERATION_NAMES)[number];
165
178
 
166
179
  // ---------------------------------------------------------------------------
167
180
  // Operation context — what every handler receives
@@ -206,6 +219,16 @@ export interface OperationSpec<In, Out> {
206
219
  readonly schema: z.ZodType<In>;
207
220
  /** Handler invoked with the parsed input; throws EngramAccessInputError for domain faults. */
208
221
  readonly handler: (input: In, ctx: OperationContext) => Promise<Out>;
222
+ /**
223
+ * Marks an operation as inherently FLEET-WIDE / global — it runs across ALL
224
+ * namespaces (or against a single non-namespaced global layer) and carries no
225
+ * `namespace` argument, so the MCP `tools/call` effective-namespace chokepoint
226
+ * never applies. When set, {@link defineOperation}'s run wrapper rejects any
227
+ * namespace-SCOPED token (fail closed) via assertFleetWideOperationAllowed
228
+ * BEFORE the handler — no side effect on denial. Unrestricted/legacy tokens
229
+ * (cron, internal callers, no capability record) are unaffected (issue #1850).
230
+ */
231
+ readonly fleetWide?: boolean;
209
232
  }
210
233
 
211
234
  export interface BoundOperation<In = unknown, Out = unknown> {
@@ -372,6 +395,22 @@ export function defineOperation<In, Out>(spec: OperationSpec<In, Out>): BoundOpe
372
395
  if (!parseResult.success) {
373
396
  throw new EngramAccessInputError(formatZodIssues(parseResult.error));
374
397
  }
398
+ // Per-token capability enforcement (issue #1837): when the presenting
399
+ // token carries an ops allow-list, reject operations not in it. The
400
+ // capability record is carried via AsyncLocalStorage, set once per
401
+ // authorized HTTP/MCP request; absent (CLI/tests/direct callers) ⇒
402
+ // unrestricted. Default-deny ONLY when an ops axis is present — legacy
403
+ // tokens (absent record) and explicit-unrestricted new tokens are
404
+ // unaffected.
405
+ assertOperationAllowed(tokenCapabilityStore.getStore(), spec.name);
406
+ // Fleet-wide / global maintenance ops (issue #1850 round 10): these run
407
+ // across all namespaces with no `namespace` arg, so the tools/call
408
+ // effective-namespace gate never fires. A namespace-SCOPED token must not
409
+ // trigger cross-namespace maintenance — fail closed BEFORE the handler so
410
+ // a denial never leaks a partial mutation. No-op for unrestricted/legacy.
411
+ if (spec.fleetWide) {
412
+ assertFleetWideOperationAllowed(tokenCapabilityStore.getStore());
413
+ }
375
414
  return spec.handler(parseResult.data, ctx);
376
415
  },
377
416
  };