@retaw106/mmc-oc 1.2.2 → 2.0.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 (227) hide show
  1. package/dist/cli.js +7095 -0
  2. package/dist/config/index.d.ts +0 -12
  3. package/dist/config/index.d.ts.map +1 -1
  4. package/dist/config/legacy-harness-blocks.d.ts +27 -0
  5. package/dist/config/legacy-harness-blocks.d.ts.map +1 -0
  6. package/dist/config/live-run-config.d.ts.map +1 -1
  7. package/dist/config/live-snapshot.d.ts +2 -1
  8. package/dist/config/live-snapshot.d.ts.map +1 -1
  9. package/dist/config/project-security.d.ts +4 -5
  10. package/dist/config/project-security.d.ts.map +1 -1
  11. package/dist/config/raw-loader.d.ts +7 -26
  12. package/dist/config/raw-loader.d.ts.map +1 -1
  13. package/dist/config/schema/magic-context.d.ts +164 -259
  14. package/dist/config/schema/magic-context.d.ts.map +1 -1
  15. package/dist/config/variable.d.ts +8 -0
  16. package/dist/config/variable.d.ts.map +1 -1
  17. package/dist/config-init.js +5595 -0
  18. package/dist/{context-a6px04s0.js → context-95zkksn3.js} +2471 -2438
  19. package/dist/{derive-budgets-fhk00zv8.js → derive-budgets-rjjz5f7y.js} +2 -2
  20. package/dist/features/magic-context/compaction-marker.d.ts.map +1 -1
  21. package/dist/features/magic-context/message-index.d.ts +2 -0
  22. package/dist/features/magic-context/message-index.d.ts.map +1 -1
  23. package/dist/features/magic-context/migration-v3-perf-schema.d.ts +8 -0
  24. package/dist/features/magic-context/migration-v3-perf-schema.d.ts.map +1 -0
  25. package/dist/features/magic-context/migration-v4-temporal-decisions.d.ts +12 -0
  26. package/dist/features/magic-context/migration-v4-temporal-decisions.d.ts.map +1 -0
  27. package/dist/features/magic-context/migrations.d.ts.map +1 -1
  28. package/dist/features/magic-context/overflow-detection.d.ts +6 -0
  29. package/dist/features/magic-context/overflow-detection.d.ts.map +1 -1
  30. package/dist/features/magic-context/reclaim-protection.d.ts +15 -10
  31. package/dist/features/magic-context/reclaim-protection.d.ts.map +1 -1
  32. package/dist/features/magic-context/session-cache-ttl.d.ts +4 -2
  33. package/dist/features/magic-context/session-cache-ttl.d.ts.map +1 -1
  34. package/dist/features/magic-context/storage-db.d.ts +1 -1
  35. package/dist/features/magic-context/storage-db.d.ts.map +1 -1
  36. package/dist/features/magic-context/storage-historian-runs.d.ts +2 -0
  37. package/dist/features/magic-context/storage-historian-runs.d.ts.map +1 -1
  38. package/dist/features/magic-context/storage-ops.d.ts +2 -0
  39. package/dist/features/magic-context/storage-ops.d.ts.map +1 -1
  40. package/dist/features/magic-context/storage-session-tables.d.ts.map +1 -1
  41. package/dist/features/magic-context/storage-tags.d.ts +15 -2
  42. package/dist/features/magic-context/storage-tags.d.ts.map +1 -1
  43. package/dist/features/magic-context/storage.d.ts +2 -2
  44. package/dist/features/magic-context/storage.d.ts.map +1 -1
  45. package/dist/features/magic-context/temporal-decisions.d.ts +10 -0
  46. package/dist/features/magic-context/temporal-decisions.d.ts.map +1 -0
  47. package/dist/features/magic-context/tool-definition-tokens.d.ts +3 -0
  48. package/dist/features/magic-context/tool-definition-tokens.d.ts.map +1 -1
  49. package/dist/hooks/magic-context/active-anthropic-turn.d.ts +8 -0
  50. package/dist/hooks/magic-context/active-anthropic-turn.d.ts.map +1 -0
  51. package/dist/hooks/magic-context/apply-operations.d.ts +15 -0
  52. package/dist/hooks/magic-context/apply-operations.d.ts.map +1 -1
  53. package/dist/hooks/magic-context/auto-search-deadline.d.ts +10 -3
  54. package/dist/hooks/magic-context/auto-search-deadline.d.ts.map +1 -1
  55. package/dist/hooks/magic-context/auto-search-runner.d.ts +1 -1
  56. package/dist/hooks/magic-context/auto-search-runner.d.ts.map +1 -1
  57. package/dist/hooks/magic-context/caveman-cleanup.d.ts.map +1 -1
  58. package/dist/hooks/magic-context/channel2-cycle.d.ts +2 -0
  59. package/dist/hooks/magic-context/channel2-cycle.d.ts.map +1 -1
  60. package/dist/hooks/magic-context/compaction-marker-manager.d.ts.map +1 -1
  61. package/dist/hooks/magic-context/compartment-render-epoch.d.ts +8 -0
  62. package/dist/hooks/magic-context/compartment-render-epoch.d.ts.map +1 -1
  63. package/dist/hooks/magic-context/compartment-runner-partial-recomp.d.ts.map +1 -1
  64. package/dist/hooks/magic-context/compartment-runner-recomp.d.ts.map +1 -1
  65. package/dist/hooks/magic-context/compartment-trigger.d.ts +3 -1
  66. package/dist/hooks/magic-context/compartment-trigger.d.ts.map +1 -1
  67. package/dist/hooks/magic-context/ctx-reduce-availability.d.ts +12 -0
  68. package/dist/hooks/magic-context/ctx-reduce-availability.d.ts.map +1 -1
  69. package/dist/hooks/magic-context/decision-calibration.d.ts +3 -0
  70. package/dist/hooks/magic-context/decision-calibration.d.ts.map +1 -1
  71. package/dist/hooks/magic-context/emergency-drop.d.ts +2 -0
  72. package/dist/hooks/magic-context/emergency-drop.d.ts.map +1 -1
  73. package/dist/hooks/magic-context/emergency-fail-closed.d.ts +21 -1
  74. package/dist/hooks/magic-context/emergency-fail-closed.d.ts.map +1 -1
  75. package/dist/hooks/magic-context/final-wire-token-estimate.d.ts +30 -1
  76. package/dist/hooks/magic-context/final-wire-token-estimate.d.ts.map +1 -1
  77. package/dist/hooks/magic-context/heuristic-cleanup.d.ts +2 -0
  78. package/dist/hooks/magic-context/heuristic-cleanup.d.ts.map +1 -1
  79. package/dist/hooks/magic-context/inject-compartments.d.ts +10 -8
  80. package/dist/hooks/magic-context/inject-compartments.d.ts.map +1 -1
  81. package/dist/hooks/magic-context/latest-assistant-turn.d.ts +25 -0
  82. package/dist/hooks/magic-context/latest-assistant-turn.d.ts.map +1 -0
  83. package/dist/hooks/magic-context/lkg-measured-request.d.ts +69 -0
  84. package/dist/hooks/magic-context/lkg-measured-request.d.ts.map +1 -0
  85. package/dist/hooks/magic-context/read-session-formatting.d.ts +3 -0
  86. package/dist/hooks/magic-context/read-session-formatting.d.ts.map +1 -1
  87. package/dist/hooks/magic-context/reasoning-budget-status.d.ts +15 -0
  88. package/dist/hooks/magic-context/reasoning-budget-status.d.ts.map +1 -0
  89. package/dist/hooks/magic-context/reasoning-budget.d.ts +40 -0
  90. package/dist/hooks/magic-context/reasoning-budget.d.ts.map +1 -0
  91. package/dist/hooks/magic-context/reasoning-removal.d.ts +6 -6
  92. package/dist/hooks/magic-context/reasoning-removal.d.ts.map +1 -1
  93. package/dist/hooks/magic-context/recomp-orchestrator.d.ts +2 -0
  94. package/dist/hooks/magic-context/recomp-orchestrator.d.ts.map +1 -1
  95. package/dist/hooks/magic-context/sentinel.d.ts +2 -0
  96. package/dist/hooks/magic-context/sentinel.d.ts.map +1 -1
  97. package/dist/hooks/magic-context/strip-content.d.ts +7 -3
  98. package/dist/hooks/magic-context/strip-content.d.ts.map +1 -1
  99. package/dist/hooks/magic-context/supersession-reclaim.d.ts +4 -0
  100. package/dist/hooks/magic-context/supersession-reclaim.d.ts.map +1 -1
  101. package/dist/hooks/magic-context/tag-messages.d.ts +13 -0
  102. package/dist/hooks/magic-context/tag-messages.d.ts.map +1 -1
  103. package/dist/hooks/magic-context/tail-hygiene-walk.d.ts +5 -0
  104. package/dist/hooks/magic-context/tail-hygiene-walk.d.ts.map +1 -1
  105. package/dist/hooks/magic-context/temporal-awareness.d.ts +6 -3
  106. package/dist/hooks/magic-context/temporal-awareness.d.ts.map +1 -1
  107. package/dist/hooks/magic-context/temporal-served-projection.d.ts +4 -0
  108. package/dist/hooks/magic-context/temporal-served-projection.d.ts.map +1 -0
  109. package/dist/hooks/magic-context/tool-reclaim.d.ts +2 -0
  110. package/dist/hooks/magic-context/tool-reclaim.d.ts.map +1 -1
  111. package/dist/hooks/magic-context/transform-postprocess-phase.d.ts +34 -12
  112. package/dist/hooks/magic-context/transform-postprocess-phase.d.ts.map +1 -1
  113. package/dist/hooks/magic-context/transform.d.ts +11 -5
  114. package/dist/hooks/magic-context/transform.d.ts.map +1 -1
  115. package/dist/hooks/magic-context/wrapup-orchestrator.d.ts.map +1 -1
  116. package/dist/{index-wgt4gamw.js → index-1mjhzqq7.js} +422 -31
  117. package/dist/index-33gprt9g.js +30 -0
  118. package/dist/{index-zx63j2e2.js → index-5cep2r9n.js} +3 -2
  119. package/dist/{index-by6h2pav.js → index-bdt9my9y.js} +374 -239
  120. package/dist/{index-3wagyrnj.js → index-x37vg474.js} +5 -1
  121. package/dist/{index-1vs6anwz.js → index-xt7y10x6.js} +2 -1
  122. package/dist/{index-me3zcj5t.js → index-z2g20msd.js} +4 -8
  123. package/dist/index.js +2 -2
  124. package/dist/{message-time-backfill-5ewk0axe.js → message-time-backfill-zfernxbw.js} +1 -1
  125. package/dist/{model-resolution-5haaxnpt.js → model-resolution-wazv26n0.js} +1 -1
  126. package/dist/plugin/rpc-handlers.d.ts +4 -0
  127. package/dist/plugin/rpc-handlers.d.ts.map +1 -1
  128. package/dist/{read-session-chunk-apjwrttc.js → read-session-chunk-hp464g13.js} +2 -2
  129. package/dist/{recomp-orchestrator-gyeevxaw.js → recomp-orchestrator-3qxeqwb9.js} +6 -6
  130. package/dist/shared/auto-search-lifecycle.d.ts +7 -0
  131. package/dist/shared/auto-search-lifecycle.d.ts.map +1 -0
  132. package/dist/shared/cache-ttl-display.d.ts +6 -4
  133. package/dist/shared/cache-ttl-display.d.ts.map +1 -1
  134. package/dist/shared/model-cache-ttl.d.ts +1 -1
  135. package/dist/shared/model-cache-ttl.d.ts.map +1 -1
  136. package/dist/shared/model-resolution.d.ts +5 -2
  137. package/dist/shared/model-resolution.d.ts.map +1 -1
  138. package/dist/shared/model-suggestion-retry.d.ts +2 -0
  139. package/dist/shared/model-suggestion-retry.d.ts.map +1 -1
  140. package/dist/shared/protected-tools-policy.d.ts +6 -0
  141. package/dist/shared/protected-tools-policy.d.ts.map +1 -0
  142. package/dist/shared/provider-output-failure.d.ts +19 -0
  143. package/dist/shared/provider-output-failure.d.ts.map +1 -0
  144. package/dist/shared/temporal-upgrade-fixture.d.ts +19 -0
  145. package/dist/shared/temporal-upgrade-fixture.d.ts.map +1 -0
  146. package/dist/shared/window-geometry.d.ts +4 -0
  147. package/dist/shared/window-geometry.d.ts.map +1 -1
  148. package/dist/shared/write-transaction-timing.d.ts +8 -1
  149. package/dist/shared/write-transaction-timing.d.ts.map +1 -1
  150. package/dist/tools/ctx-reduce/tools.d.ts +2 -0
  151. package/dist/tools/ctx-reduce/tools.d.ts.map +1 -1
  152. package/dist/v2/hidden-child-native.d.ts +7 -0
  153. package/dist/v2/hidden-child-native.d.ts.map +1 -1
  154. package/dist/v2/hidden-child-record.d.ts +13 -0
  155. package/dist/v2/hidden-child-record.d.ts.map +1 -1
  156. package/dist/v2/hidden-completion.d.ts.map +1 -1
  157. package/dist/v2/hooks/context.d.ts.map +1 -1
  158. package/dist/v2/hooks/hidden-child.d.ts +46 -2
  159. package/dist/v2/hooks/hidden-child.d.ts.map +1 -1
  160. package/dist/v2/hooks/payload.d.ts.map +1 -1
  161. package/dist/v2/hooks/store.d.ts.map +1 -1
  162. package/dist/v2/hooks/tools.d.ts.map +1 -1
  163. package/dist/v2/hooks/types.d.ts +8 -0
  164. package/dist/v2/hooks/types.d.ts.map +1 -1
  165. package/dist/v2/server.js +4540 -3889
  166. package/dist/v2/tool-result.d.ts +8 -0
  167. package/dist/v2/tool-result.d.ts.map +1 -0
  168. package/dist/web/api.d.ts +6 -0
  169. package/dist/web/api.d.ts.map +1 -1
  170. package/dist/web/context-store.d.ts +13 -0
  171. package/dist/web/context-store.d.ts.map +1 -1
  172. package/dist/web/display-path.d.ts +28 -0
  173. package/dist/web/display-path.d.ts.map +1 -0
  174. package/dist/web/entry-args.d.ts +33 -0
  175. package/dist/web/entry-args.d.ts.map +1 -0
  176. package/dist/web/host-pi.d.ts +2 -0
  177. package/dist/web/host-pi.d.ts.map +1 -1
  178. package/dist/web/main.d.ts +4 -6
  179. package/dist/web/main.d.ts.map +1 -1
  180. package/dist/web/main.js +772 -77
  181. package/dist/web/message-stats.d.ts +45 -0
  182. package/dist/web/message-stats.d.ts.map +1 -0
  183. package/dist/web/ui/index.html +1 -0
  184. package/dist/web/ui/panel.css +5 -0
  185. package/dist/web/ui/panel.js +220 -70
  186. package/dist/web/views.d.ts +23 -0
  187. package/dist/web/views.d.ts.map +1 -1
  188. package/dist/{wrapup-orchestrator-z9sqpqjf.js → wrapup-orchestrator-wgb2nd19.js} +7 -6
  189. package/package.json +7 -2
  190. package/src/config/index.test.ts +257 -126
  191. package/src/config/index.ts +45 -39
  192. package/src/config/legacy-harness-blocks.test.ts +78 -0
  193. package/src/config/legacy-harness-blocks.ts +71 -0
  194. package/src/config/live-run-config.test.ts +49 -5
  195. package/src/config/live-run-config.ts +1 -0
  196. package/src/config/live-snapshot.ts +5 -1
  197. package/src/config/profiles.ts +1 -1
  198. package/src/config/project-config-trust-boundary.test.ts +2 -2
  199. package/src/config/project-security.hostile-matrix.test.ts +51 -65
  200. package/src/config/project-security.test.ts +6 -1
  201. package/src/config/project-security.ts +13 -12
  202. package/src/config/protected-tokens.test.ts +1 -1
  203. package/src/config/raw-loader.test.ts +29 -352
  204. package/src/config/raw-loader.ts +17 -406
  205. package/src/config/removed-config-keys.test.ts +1 -1
  206. package/src/config/schema/magic-context.test.ts +60 -64
  207. package/src/config/schema/magic-context.ts +105 -137
  208. package/src/config/variable.ts +21 -12
  209. package/src/shared/auto-search-lifecycle.ts +27 -0
  210. package/src/shared/cache-ttl-display.test.ts +1 -1
  211. package/src/shared/cache-ttl-display.ts +17 -16
  212. package/src/shared/model-cache-ttl.test.ts +2 -2
  213. package/src/shared/model-cache-ttl.ts +8 -4
  214. package/src/shared/model-resolution.test.ts +22 -32
  215. package/src/shared/model-resolution.ts +13 -18
  216. package/src/shared/model-suggestion-retry.ts +63 -7
  217. package/src/shared/protected-tools-policy.ts +25 -0
  218. package/src/shared/provider-output-failure.ts +176 -0
  219. package/src/shared/status-detail-text.test.ts +1 -1
  220. package/src/shared/status-view.test.ts +1 -1
  221. package/src/shared/temporal-upgrade-fixture.ts +50 -0
  222. package/src/shared/window-geometry.ts +10 -0
  223. package/src/shared/write-transaction-timing.ts +25 -1
  224. package/dist/features/magic-context/window-report-ledger.d.ts +0 -70
  225. package/dist/features/magic-context/window-report-ledger.d.ts.map +0 -1
  226. package/dist/index-e1q8002h.js +0 -16
  227. package/src/config/misplaced-agent-model.test.ts +0 -55
@@ -1 +1 @@
1
- {"version":3,"file":"compaction-marker-manager.d.ts","sourceRoot":"","sources":["../../../src/hooks/magic-context/compaction-marker-manager.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;GAYG;AAgBH,OAAO,EAEH,KAAK,uBAAuB,EAG/B,MAAM,qDAAqD,CAAC;AAY7D,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,qBAAqB,CAAC;AAKpD,mFAAmF;AACnF,eAAO,MAAM,mBAAmB,iFAC6C,CAAC;AAwB9E;;;;;;GAMG;AACH,MAAM,MAAM,mBAAmB,GACzB;IACI,IAAI,EAAE,SAAS,CAAC;IAChB,aAAa,EAAE,MAAM,CAAC;CACzB,GACD;IAAE,IAAI,EAAE,iBAAiB,CAAA;CAAE,GAC3B;IACI,IAAI,EAAE,YAAY,CAAC;IACnB,MAAM,EAAE,qBAAqB,GAAG,mBAAmB,CAAC;CACvD,GACD;IAAE,IAAI,EAAE,mBAAmB,CAAC;IAAC,KAAK,EAAE,KAAK,CAAA;CAAE,CAAC;AA6IlD;;;;;;;;;;;;;;;;GAgBG;AACH,MAAM,WAAW,qCAAqC;IAClD,UAAU,EAAE,MAAM,CAAC;IACnB,OAAO,EAAE,MAAM,CAAC;IAChB,YAAY,EAAE,MAAM,CAAC;CACxB;AAED,wBAAgB,6BAA6B,CACzC,EAAE,EAAE,QAAQ,EACZ,SAAS,EAAE,MAAM,EACjB,OAAO,EAAE,uBAAuB,EAChC,SAAS,CAAC,EAAE,MAAM,EAClB,eAAe,CAAC,EAAE,qCAAqC,GACxD,mBAAmB,CA0GrB;AAED;;;;;;;;GAQG;AACH,wBAAgB,sCAAsC,CAClD,EAAE,EAAE,QAAQ,EACZ,SAAS,EAAE,MAAM,EACjB,kBAAkB,EAAE,MAAM,EAC1B,SAAS,CAAC,EAAE,MAAM,GACnB,OAAO,CAoFT;AAED;;GAEG;AACH,wBAAgB,gCAAgC,CAAC,EAAE,EAAE,QAAQ,EAAE,SAAS,EAAE,MAAM,GAAG,IAAI,CAmBtF;AAED;;;;;;;GAOG;AACH,MAAM,WAAW,2BAA2B;IACxC,OAAO,EAAE,MAAM,CAAC;IAChB,MAAM,EAAE,OAAO,CAAC;CACnB;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAmCG;AACH,wBAAgB,sCAAsC,CAClD,EAAE,EAAE,QAAQ,EACZ,SAAS,EAAE,MAAM,GAClB,2BAA2B,CAoF7B;AAED;;GAEG;AACH,wBAAgB,+BAA+B,IAAI,IAAI,CAEtD;AAED;;;;;;;;;;;;;;;;;;;;;;;;;GAyBG;AACH,wBAAgB,gCAAgC,CAAC,EAAE,EAAE,QAAQ,GAAG,IAAI,CA6EnE"}
1
+ {"version":3,"file":"compaction-marker-manager.d.ts","sourceRoot":"","sources":["../../../src/hooks/magic-context/compaction-marker-manager.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;GAYG;AAgBH,OAAO,EAEH,KAAK,uBAAuB,EAG/B,MAAM,qDAAqD,CAAC;AAY7D,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,qBAAqB,CAAC;AAKpD,mFAAmF;AACnF,eAAO,MAAM,mBAAmB,iFAC6C,CAAC;AAwB9E;;;;;;GAMG;AACH,MAAM,MAAM,mBAAmB,GACzB;IACI,IAAI,EAAE,SAAS,CAAC;IAChB,aAAa,EAAE,MAAM,CAAC;CACzB,GACD;IAAE,IAAI,EAAE,iBAAiB,CAAA;CAAE,GAC3B;IACI,IAAI,EAAE,YAAY,CAAC;IACnB,MAAM,EAAE,qBAAqB,GAAG,mBAAmB,CAAC;CACvD,GACD;IAAE,IAAI,EAAE,mBAAmB,CAAC;IAAC,KAAK,EAAE,KAAK,CAAA;CAAE,CAAC;AA6IlD;;;;;;;;;;;;;;;;GAgBG;AACH,MAAM,WAAW,qCAAqC;IAClD,UAAU,EAAE,MAAM,CAAC;IACnB,OAAO,EAAE,MAAM,CAAC;IAChB,YAAY,EAAE,MAAM,CAAC;CACxB;AAED,wBAAgB,6BAA6B,CACzC,EAAE,EAAE,QAAQ,EACZ,SAAS,EAAE,MAAM,EACjB,OAAO,EAAE,uBAAuB,EAChC,SAAS,CAAC,EAAE,MAAM,EAClB,eAAe,CAAC,EAAE,qCAAqC,GACxD,mBAAmB,CAyHrB;AAED;;;;;;;;GAQG;AACH,wBAAgB,sCAAsC,CAClD,EAAE,EAAE,QAAQ,EACZ,SAAS,EAAE,MAAM,EACjB,kBAAkB,EAAE,MAAM,EAC1B,SAAS,CAAC,EAAE,MAAM,GACnB,OAAO,CAoFT;AAED;;GAEG;AACH,wBAAgB,gCAAgC,CAAC,EAAE,EAAE,QAAQ,EAAE,SAAS,EAAE,MAAM,GAAG,IAAI,CAmBtF;AAED;;;;;;;GAOG;AACH,MAAM,WAAW,2BAA2B;IACxC,OAAO,EAAE,MAAM,CAAC;IAChB,MAAM,EAAE,OAAO,CAAC;CACnB;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAmCG;AACH,wBAAgB,sCAAsC,CAClD,EAAE,EAAE,QAAQ,EACZ,SAAS,EAAE,MAAM,GAClB,2BAA2B,CAoF7B;AAED;;GAEG;AACH,wBAAgB,+BAA+B,IAAI,IAAI,CAEtD;AAED;;;;;;;;;;;;;;;;;;;;;;;;;GAyBG;AACH,wBAAgB,gCAAgC,CAAC,EAAE,EAAE,QAAQ,GAAG,IAAI,CA6EnE"}
@@ -14,6 +14,14 @@ export interface CachedM0UpgradeIdentity {
14
14
  */
15
15
  export declare function encodeCachedM0UpgradeIdentity(upgradeState: string | null, compartmentRenderEpoch?: string | null, muralEnabled?: boolean | null, renderBudgetIdentity?: string | null, memoryRenderEpoch?: string | null, renderedBudgets?: string | null): string | null;
16
16
  export declare function decodeCachedM0UpgradeIdentity(value: string | null): CachedM0UpgradeIdentity;
17
+ /**
18
+ * Keep the frozen m[0] selection separate from the visible m[0]+m[1] manifest.
19
+ * A forced replacement in m[1] can be below the baseline id watermark, so the
20
+ * watermark alone cannot recover m[0]'s ids on the next refresh. Recording them
21
+ * in the existing snapshot metadata avoids parsing ids out of memory content.
22
+ */
23
+ export declare function withCachedM0MemoryIds(identity: string | null, ids: readonly number[]): string;
24
+ export declare function readCachedM0MemoryIds(identity: string | null, legacyVisibleIds: readonly number[], maxMemoryId: number): number[];
17
25
  /** Compare recorded render budgets while lazily adopting older numeric history identities. */
18
26
  export declare function renderBudgetIdentityChanged(cached: string, current: string): boolean;
19
27
  /** Numeric allowances supplied to a render, separate from its stable config identity. */
@@ -1 +1 @@
1
- {"version":3,"file":"compartment-render-epoch.d.ts","sourceRoot":"","sources":["../../../src/hooks/magic-context/compartment-render-epoch.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,wBAAwB,SAAS,CAAC;AAC/C,eAAO,MAAM,0BAA0B,SAAS,CAAC;AAQjD,MAAM,WAAW,uBAAuB;IACpC,YAAY,EAAE,MAAM,GAAG,IAAI,CAAC;IAC5B,sBAAsB,EAAE,MAAM,GAAG,IAAI,CAAC;IACtC,iBAAiB,EAAE,MAAM,GAAG,IAAI,CAAC;IACjC,YAAY,EAAE,OAAO,GAAG,IAAI,CAAC;IAC7B,oBAAoB,EAAE,MAAM,GAAG,IAAI,CAAC;IACpC,eAAe,EAAE,MAAM,GAAG,IAAI,CAAC;CAClC;AAED;;;GAGG;AACH,wBAAgB,6BAA6B,CACzC,YAAY,EAAE,MAAM,GAAG,IAAI,EAC3B,sBAAsB,GAAE,MAAM,GAAG,IAA+B,EAChE,YAAY,GAAE,OAAO,GAAG,IAAW,EACnC,oBAAoB,GAAE,MAAM,GAAG,IAAW,EAC1C,iBAAiB,GAAE,MAAM,GAAG,IAAiC,EAC7D,eAAe,GAAE,MAAM,GAAG,IAAW,GACtC,MAAM,GAAG,IAAI,CAkBf;AAWD,wBAAgB,6BAA6B,CAAC,KAAK,EAAE,MAAM,GAAG,IAAI,GAAG,uBAAuB,CA6B3F;AAED,8FAA8F;AAC9F,wBAAgB,2BAA2B,CAAC,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,OAAO,CAUpF;AAED,yFAAyF;AACzF,wBAAgB,sBAAsB,CAAC,YAAY,EAAE,MAAM,EAAE,aAAa,EAAE,MAAM,GAAG,MAAM,CAE1F;AAYD;;;;GAIG;AACH,wBAAgB,0BAA0B,CACtC,MAAM,EAAE,MAAM,GAAG,IAAI,GAAG,SAAS,EACjC,OAAO,EAAE,MAAM,GAAG,IAAI,GAAG,SAAS,GACnC,MAAM,GAAG,IAAI,CAYf"}
1
+ {"version":3,"file":"compartment-render-epoch.d.ts","sourceRoot":"","sources":["../../../src/hooks/magic-context/compartment-render-epoch.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,wBAAwB,SAAS,CAAC;AAC/C,eAAO,MAAM,0BAA0B,SAAS,CAAC;AASjD,MAAM,WAAW,uBAAuB;IACpC,YAAY,EAAE,MAAM,GAAG,IAAI,CAAC;IAC5B,sBAAsB,EAAE,MAAM,GAAG,IAAI,CAAC;IACtC,iBAAiB,EAAE,MAAM,GAAG,IAAI,CAAC;IACjC,YAAY,EAAE,OAAO,GAAG,IAAI,CAAC;IAC7B,oBAAoB,EAAE,MAAM,GAAG,IAAI,CAAC;IACpC,eAAe,EAAE,MAAM,GAAG,IAAI,CAAC;CAClC;AAED;;;GAGG;AACH,wBAAgB,6BAA6B,CACzC,YAAY,EAAE,MAAM,GAAG,IAAI,EAC3B,sBAAsB,GAAE,MAAM,GAAG,IAA+B,EAChE,YAAY,GAAE,OAAO,GAAG,IAAW,EACnC,oBAAoB,GAAE,MAAM,GAAG,IAAW,EAC1C,iBAAiB,GAAE,MAAM,GAAG,IAAiC,EAC7D,eAAe,GAAE,MAAM,GAAG,IAAW,GACtC,MAAM,GAAG,IAAI,CAkBf;AAWD,wBAAgB,6BAA6B,CAAC,KAAK,EAAE,MAAM,GAAG,IAAI,GAAG,uBAAuB,CA8B3F;AAED;;;;;GAKG;AACH,wBAAgB,qBAAqB,CAAC,QAAQ,EAAE,MAAM,GAAG,IAAI,EAAE,GAAG,EAAE,SAAS,MAAM,EAAE,GAAG,MAAM,CAG7F;AAED,wBAAgB,qBAAqB,CACjC,QAAQ,EAAE,MAAM,GAAG,IAAI,EACvB,gBAAgB,EAAE,SAAS,MAAM,EAAE,EACnC,WAAW,EAAE,MAAM,GACpB,MAAM,EAAE,CAeV;AAED,8FAA8F;AAC9F,wBAAgB,2BAA2B,CAAC,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,OAAO,CAUpF;AAED,yFAAyF;AACzF,wBAAgB,sBAAsB,CAAC,YAAY,EAAE,MAAM,EAAE,aAAa,EAAE,MAAM,GAAG,MAAM,CAE1F;AAYD;;;;GAIG;AACH,wBAAgB,0BAA0B,CACtC,MAAM,EAAE,MAAM,GAAG,IAAI,GAAG,SAAS,EACjC,OAAO,EAAE,MAAM,GAAG,IAAI,GAAG,SAAS,GACnC,MAAM,GAAG,IAAI,CAYf"}
@@ -1 +1 @@
1
- {"version":3,"file":"compartment-runner-partial-recomp.d.ts","sourceRoot":"","sources":["../../../src/hooks/magic-context/compartment-runner-partial-recomp.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EACR,WAAW,EAEd,MAAM,kDAAkD,CAAC;AAuB1D,OAAO,KAAK,EAAwB,qBAAqB,EAAE,MAAM,4BAA4B,CAAC;AAW9F,MAAM,WAAW,kBAAkB;IAC/B,8DAA8D;IAC9D,KAAK,EAAE,MAAM,CAAC;IACd,2DAA2D;IAC3D,GAAG,EAAE,MAAM,CAAC;CACf;AAED,MAAM,WAAW,mBAAmB;IAChC,kEAAkE;IAClE,SAAS,EAAE,MAAM,CAAC;IAClB,6DAA6D;IAC7D,OAAO,EAAE,MAAM,CAAC;IAChB,iBAAiB,EAAE,WAAW,EAAE,CAAC;IACjC,iBAAiB,EAAE,WAAW,EAAE,CAAC;IACjC,gBAAgB,EAAE,WAAW,EAAE,CAAC;CACnC;AAED;;;;;;GAMG;AACH,wBAAgB,uBAAuB,CACnC,YAAY,EAAE,WAAW,EAAE,EAC3B,KAAK,EAAE,kBAAkB,GAC1B,mBAAmB,GAAG;IAAE,KAAK,EAAE,MAAM,CAAA;CAAE,CA2CzC;AAuBD,wBAAsB,4BAA4B,CAC9C,IAAI,EAAE,qBAAqB,EAC3B,KAAK,EAAE,kBAAkB,GAC1B,OAAO,CAAC,MAAM,CAAC,CA6ZjB"}
1
+ {"version":3,"file":"compartment-runner-partial-recomp.d.ts","sourceRoot":"","sources":["../../../src/hooks/magic-context/compartment-runner-partial-recomp.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EACR,WAAW,EAEd,MAAM,kDAAkD,CAAC;AAuB1D,OAAO,KAAK,EAAwB,qBAAqB,EAAE,MAAM,4BAA4B,CAAC;AAW9F,MAAM,WAAW,kBAAkB;IAC/B,8DAA8D;IAC9D,KAAK,EAAE,MAAM,CAAC;IACd,2DAA2D;IAC3D,GAAG,EAAE,MAAM,CAAC;CACf;AAED,MAAM,WAAW,mBAAmB;IAChC,kEAAkE;IAClE,SAAS,EAAE,MAAM,CAAC;IAClB,6DAA6D;IAC7D,OAAO,EAAE,MAAM,CAAC;IAChB,iBAAiB,EAAE,WAAW,EAAE,CAAC;IACjC,iBAAiB,EAAE,WAAW,EAAE,CAAC;IACjC,gBAAgB,EAAE,WAAW,EAAE,CAAC;CACnC;AAED;;;;;;GAMG;AACH,wBAAgB,uBAAuB,CACnC,YAAY,EAAE,WAAW,EAAE,EAC3B,KAAK,EAAE,kBAAkB,GAC1B,mBAAmB,GAAG;IAAE,KAAK,EAAE,MAAM,CAAA;CAAE,CA2CzC;AAuBD,wBAAsB,4BAA4B,CAC9C,IAAI,EAAE,qBAAqB,EAC3B,KAAK,EAAE,kBAAkB,GAC1B,OAAO,CAAC,MAAM,CAAC,CA0ZjB"}
@@ -1 +1 @@
1
- {"version":3,"file":"compartment-runner-recomp.d.ts","sourceRoot":"","sources":["../../../src/hooks/magic-context/compartment-runner-recomp.ts"],"names":[],"mappings":"AAwBA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,qBAAqB,CAAC;AAQpD,OAAO,KAAK,EAAE,oBAAoB,EAAE,qBAAqB,EAAE,MAAM,4BAA4B,CAAC;AAuD9F,wBAAgB,kCAAkC,CAC9C,EAAE,EAAE,QAAQ,EACZ,SAAS,EAAE,MAAM,EACjB,QAAQ,EAAE,MAAM,GACjB;IACC,YAAY,EAAE,oBAAoB,EAAE,CAAC;IACrC,KAAK,EAAE,KAAK,CAAC;QAAE,QAAQ,EAAE,MAAM,CAAC;QAAC,OAAO,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;CACvD,GAAG,IAAI,CAkDP;AAED,wBAAsB,4BAA4B,CAAC,IAAI,EAAE,qBAAqB,GAAG,OAAO,CAAC,MAAM,CAAC,CA+jB/F"}
1
+ {"version":3,"file":"compartment-runner-recomp.d.ts","sourceRoot":"","sources":["../../../src/hooks/magic-context/compartment-runner-recomp.ts"],"names":[],"mappings":"AAwBA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,qBAAqB,CAAC;AAQpD,OAAO,KAAK,EAAE,oBAAoB,EAAE,qBAAqB,EAAE,MAAM,4BAA4B,CAAC;AAuD9F,wBAAgB,kCAAkC,CAC9C,EAAE,EAAE,QAAQ,EACZ,SAAS,EAAE,MAAM,EACjB,QAAQ,EAAE,MAAM,GACjB;IACC,YAAY,EAAE,oBAAoB,EAAE,CAAC;IACrC,KAAK,EAAE,KAAK,CAAC;QAAE,QAAQ,EAAE,MAAM,CAAC;QAAC,OAAO,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;CACvD,GAAG,IAAI,CAkDP;AAED,wBAAsB,4BAA4B,CAAC,IAAI,EAAE,qBAAqB,GAAG,OAAO,CAAC,MAAM,CAAC,CA0jB/F"}
@@ -39,6 +39,8 @@ export interface InMemoryTailSource {
39
39
  export interface ReasoningProjectionCapability {
40
40
  providerID?: string;
41
41
  canClearReasoning?: boolean;
42
+ /** Host-message projection uses the same costs as the transform; absent on DB-only paths. */
43
+ budgetCutoff?: number;
42
44
  }
43
45
  /**
44
46
  * Deferred tail conversion for callers that have already tagged the live wire.
@@ -70,7 +72,7 @@ export type LazyInMemoryTailSource = () => InMemoryTailSource | undefined;
70
72
  export declare function buildTriggerInMemoryTail(db: Database, sessionId: string, messages: readonly InMemoryMessageView[]): InMemoryTailSource | undefined;
71
73
  export declare function getProactiveCompartmentTriggerPercentage(executeThresholdPercentage: number): number;
72
74
  export declare function formatProjectedPostDropPercentage(value: number | null): string;
73
- export declare function checkCompartmentTrigger(db: Database, sessionId: string, sessionMeta: SessionMeta, usage: ContextUsage, _previousPercentage: number, executeThresholdPercentage: number, triggerBudget: number, clearReasoningAge?: number, commitClusterTrigger?: {
75
+ export declare function checkCompartmentTrigger(db: Database, sessionId: string, sessionMeta: SessionMeta, usage: ContextUsage, _previousPercentage: number, executeThresholdPercentage: number, triggerBudget: number, keepReasoningTokens?: number, commitClusterTrigger?: {
74
76
  enabled: boolean;
75
77
  min_clusters: number;
76
78
  }, preloadedActiveTags?: readonly TagEntry[], contextLimit?: number, inMemoryTail?: InMemoryTailSource | LazyInMemoryTailSource, taggerFloorOverride?: number, reasoningProjection?: ReasoningProjectionCapability, reclaimRide?: ReclaimRideSignals, storedTotalsExcludeToolTags?: boolean): CompartmentTriggerResult;
@@ -1 +1 @@
1
- {"version":3,"file":"compartment-trigger.d.ts","sourceRoot":"","sources":["../../../src/hooks/magic-context/compartment-trigger.ts"],"names":[],"mappings":"AAYA,OAAO,KAAK,EAAE,YAAY,EAAE,WAAW,EAAE,QAAQ,EAAE,MAAM,oCAAoC,CAAC;AAG9F,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,qBAAqB,CAAC;AACpD,OAAO,EAAkB,KAAK,kBAAkB,EAAoB,MAAM,yBAAyB,CAAC;AACpG,OAAO,EAIH,KAAK,6BAA6B,EAErC,MAAM,2BAA2B,CAAC;AAOnC,OAAO,EAEH,KAAK,mBAAmB,EACxB,KAAK,UAAU,EAClB,MAAM,oBAAoB,CAAC;AAK5B,QAAA,MAAM,sBAAsB,OAAO,CAAC;AAKpC,QAAA,MAAM,2BAA2B,KAAK,CAAC;AAGvC,OAAO,EAAE,2BAA2B,EAAE,sBAAsB,EAAE,CAAC;AAE/D,MAAM,WAAW,wBAAwB;IACrC,UAAU,EAAE,OAAO,CAAC;IACpB,MAAM,CAAC,EAAE,oBAAoB,GAAG,YAAY,GAAG,iBAAiB,GAAG,WAAW,CAAC;IAC/E;;;;;;;OAOG;IACH,gBAAgB,CAAC,EAAE,6BAA6B,CAAC;CACpD;AAED;;;;;;;GAOG;AACH,MAAM,WAAW,kBAAkB;IAC/B,QAAQ,EAAE,UAAU,EAAE,CAAC;IACvB,oBAAoB,EAAE,MAAM,CAAC;CAChC;AAED;;;;GAIG;AACH,MAAM,WAAW,6BAA6B;IAC1C,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,iBAAiB,CAAC,EAAE,OAAO,CAAC;CAC/B;AAED;;;;GAIG;AACH,MAAM,MAAM,sBAAsB,GAAG,MAAM,kBAAkB,GAAG,SAAS,CAAC;AAyE1E;;;;;;;;;;;;;;;;;;;;GAoBG;AACH,wBAAgB,wBAAwB,CACpC,EAAE,EAAE,QAAQ,EACZ,SAAS,EAAE,MAAM,EACjB,QAAQ,EAAE,SAAS,mBAAmB,EAAE,GACzC,kBAAkB,GAAG,SAAS,CAchC;AAED,wBAAgB,wCAAwC,CACpD,0BAA0B,EAAE,MAAM,GACnC,MAAM,CAER;AA2ND,wBAAgB,iCAAiC,CAAC,KAAK,EAAE,MAAM,GAAG,IAAI,GAAG,MAAM,CAE9E;AAED,wBAAgB,uBAAuB,CACnC,EAAE,EAAE,QAAQ,EACZ,SAAS,EAAE,MAAM,EACjB,WAAW,EAAE,WAAW,EACxB,KAAK,EAAE,YAAY,EACnB,mBAAmB,EAAE,MAAM,EAC3B,0BAA0B,EAAE,MAAM,EAClC,aAAa,EAAE,MAAM,EACrB,iBAAiB,CAAC,EAAE,MAAM,EAC1B,oBAAoB,CAAC,EAAE;IAAE,OAAO,EAAE,OAAO,CAAC;IAAC,YAAY,EAAE,MAAM,CAAA;CAAE,EACjE,mBAAmB,CAAC,EAAE,SAAS,QAAQ,EAAE,EACzC,YAAY,CAAC,EAAE,MAAM,EACrB,YAAY,CAAC,EAAE,kBAAkB,GAAG,sBAAsB,EAC1D,mBAAmB,CAAC,EAAE,MAAM,EAC5B,mBAAmB,CAAC,EAAE,6BAA6B,EACnD,WAAW,CAAC,EAAE,kBAAkB,EAChC,2BAA2B,CAAC,EAAE,OAAO,GACtC,wBAAwB,CAgW1B"}
1
+ {"version":3,"file":"compartment-trigger.d.ts","sourceRoot":"","sources":["../../../src/hooks/magic-context/compartment-trigger.ts"],"names":[],"mappings":"AAaA,OAAO,KAAK,EAAE,YAAY,EAAE,WAAW,EAAE,QAAQ,EAAE,MAAM,oCAAoC,CAAC;AAG9F,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,qBAAqB,CAAC;AACpD,OAAO,EAAkB,KAAK,kBAAkB,EAAoB,MAAM,yBAAyB,CAAC;AACpG,OAAO,EAIH,KAAK,6BAA6B,EAErC,MAAM,2BAA2B,CAAC;AAOnC,OAAO,EAEH,KAAK,mBAAmB,EACxB,KAAK,UAAU,EAClB,MAAM,oBAAoB,CAAC;AAM5B,QAAA,MAAM,sBAAsB,OAAO,CAAC;AAKpC,QAAA,MAAM,2BAA2B,KAAK,CAAC;AAGvC,OAAO,EAAE,2BAA2B,EAAE,sBAAsB,EAAE,CAAC;AAE/D,MAAM,WAAW,wBAAwB;IACrC,UAAU,EAAE,OAAO,CAAC;IACpB,MAAM,CAAC,EAAE,oBAAoB,GAAG,YAAY,GAAG,iBAAiB,GAAG,WAAW,CAAC;IAC/E;;;;;;;OAOG;IACH,gBAAgB,CAAC,EAAE,6BAA6B,CAAC;CACpD;AAED;;;;;;;GAOG;AACH,MAAM,WAAW,kBAAkB;IAC/B,QAAQ,EAAE,UAAU,EAAE,CAAC;IACvB,oBAAoB,EAAE,MAAM,CAAC;CAChC;AAED;;;;GAIG;AACH,MAAM,WAAW,6BAA6B;IAC1C,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,iBAAiB,CAAC,EAAE,OAAO,CAAC;IAC5B,6FAA6F;IAC7F,YAAY,CAAC,EAAE,MAAM,CAAC;CACzB;AAED;;;;GAIG;AACH,MAAM,MAAM,sBAAsB,GAAG,MAAM,kBAAkB,GAAG,SAAS,CAAC;AAyE1E;;;;;;;;;;;;;;;;;;;;GAoBG;AACH,wBAAgB,wBAAwB,CACpC,EAAE,EAAE,QAAQ,EACZ,SAAS,EAAE,MAAM,EACjB,QAAQ,EAAE,SAAS,mBAAmB,EAAE,GACzC,kBAAkB,GAAG,SAAS,CAchC;AAED,wBAAgB,wCAAwC,CACpD,0BAA0B,EAAE,MAAM,GACnC,MAAM,CAER;AAmPD,wBAAgB,iCAAiC,CAAC,KAAK,EAAE,MAAM,GAAG,IAAI,GAAG,MAAM,CAE9E;AAED,wBAAgB,uBAAuB,CACnC,EAAE,EAAE,QAAQ,EACZ,SAAS,EAAE,MAAM,EACjB,WAAW,EAAE,WAAW,EACxB,KAAK,EAAE,YAAY,EACnB,mBAAmB,EAAE,MAAM,EAC3B,0BAA0B,EAAE,MAAM,EAClC,aAAa,EAAE,MAAM,EACrB,mBAAmB,CAAC,EAAE,MAAM,EAC5B,oBAAoB,CAAC,EAAE;IAAE,OAAO,EAAE,OAAO,CAAC;IAAC,YAAY,EAAE,MAAM,CAAA;CAAE,EACjE,mBAAmB,CAAC,EAAE,SAAS,QAAQ,EAAE,EACzC,YAAY,CAAC,EAAE,MAAM,EACrB,YAAY,CAAC,EAAE,kBAAkB,GAAG,sBAAsB,EAC1D,mBAAmB,CAAC,EAAE,MAAM,EAC5B,mBAAmB,CAAC,EAAE,6BAA6B,EACnD,WAAW,CAAC,EAAE,kBAAkB,EAChC,2BAA2B,CAAC,EAAE,OAAO,GACtC,wBAAwB,CAiW1B"}
@@ -158,6 +158,18 @@ export declare function cachedToolPermissionDenied(sessionId: string, toolName:
158
158
  export declare function clearToolPermissionDenied(sessionId: string, toolName?: string): void;
159
159
  export declare function hasLoggedCtxReducePermissionDeny(sessionId: string): boolean;
160
160
  export declare function markCtxReducePermissionDenyLogged(sessionId: string): void;
161
+ /**
162
+ * Start a background read of the live mmc_reduce permission and log once when
163
+ * OpenCode denies it after the session's verdict froze.
164
+ *
165
+ * The read only feeds that log line: a deny added after the freeze cannot change
166
+ * the frozen verdict without rewriting the cached prefix, so nothing on the wire
167
+ * depends on it. The transform therefore never waits for it. Awaiting it inline
168
+ * made every cache-busting pass wait for two OpenCode API round trips (agents
169
+ * and session), which took 14 seconds on a loaded host. At most one read per
170
+ * session is in flight, so a slow host cannot pile up reads across passes.
171
+ */
172
+ export declare function observeCtxReducePermissionDeny(client: PluginContext["client"], sessionId: string, activeAgent?: string): Promise<void> | undefined;
161
173
  export declare function resolveTodowriteAvailabilityFromMessages(sessionId: string, messages: ReadonlyArray<{
162
174
  info?: {
163
175
  role?: string;
@@ -1 +1 @@
1
- {"version":3,"file":"ctx-reduce-availability.d.ts","sourceRoot":"","sources":["../../../src/hooks/magic-context/ctx-reduce-availability.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"ctx-reduce-availability.d.ts","sourceRoot":"","sources":["../../../src/hooks/magic-context/ctx-reduce-availability.ts"],"names":[],"mappings":"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"}
@@ -13,6 +13,9 @@ export interface LocalMass {
13
13
  tools?: number;
14
14
  prose?: number;
15
15
  }
16
+ /** Family/provider ratios can estimate fit for admission (deciding whether to send),
17
+ * but cannot prove that a request does not fit. */
18
+ export declare function hasMeasuredDecisionCalibration(seed: DecisionCalibration): boolean;
16
19
  /** Accumulate fractional provider mass, then ceil once at the decision boundary. */
17
20
  export declare function providerMass(raw: LocalMass, seed: DecisionCalibration, fit?: boolean): number;
18
21
  /** Available real-token budgets round down so rendered local mass cannot overspend them. */
@@ -1 +1 @@
1
- {"version":3,"file":"decision-calibration.d.ts","sourceRoot":"","sources":["../../../src/hooks/magic-context/decision-calibration.ts"],"names":[],"mappings":"AAAA,OAAO,EAGH,KAAK,gBAAgB,EAGxB,MAAM,yBAAyB,CAAC;AAEjC,wFAAwF;AACxF,MAAM,WAAW,mBAAoB,SAAQ,QAAQ,CAAC,gBAAgB,CAAC;IACnE,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;IAC1B,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;IAC1B,QAAQ,CAAC,aAAa,CAAC,EAAE,MAAM,CAAC;IAChC,QAAQ,CAAC,MAAM,EAAE,OAAO,CAAC;IACzB,QAAQ,CAAC,MAAM,EAAE,MAAM,GAAG,iBAAiB,GAAG,UAAU,CAAC;CAC5D;AAED,wBAAgB,0BAA0B,CACtC,UAAU,EAAE,MAAM,GAAG,SAAS,EAC9B,OAAO,EAAE,MAAM,GAAG,SAAS,GAC5B,mBAAmB,CAerB;AAED,MAAM,WAAW,SAAS;IACtB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,KAAK,CAAC,EAAE,MAAM,CAAC;CAClB;AAED,oFAAoF;AACpF,wBAAgB,YAAY,CAAC,GAAG,EAAE,SAAS,EAAE,IAAI,EAAE,mBAAmB,EAAE,GAAG,UAAQ,GAAG,MAAM,CAe3F;AAED,4FAA4F;AAC5F,wBAAgB,WAAW,CAAC,cAAc,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,MAAM,CASzE;AAED,gGAAgG;AAChG,wBAAgB,sBAAsB,CAAC,QAAQ,EAAE,MAAM,GAAG,IAAI,GAAG,SAAS,GAAG,mBAAmB,CAK/F;AAED,qGAAqG;AACrG,wBAAgB,kBAAkB,CAC9B,cAAc,EAAE,MAAM,EACtB,QAAQ,EAAE,MAAM,GAAG,IAAI,GAAG,SAAS,GACpC,MAAM,CAIR"}
1
+ {"version":3,"file":"decision-calibration.d.ts","sourceRoot":"","sources":["../../../src/hooks/magic-context/decision-calibration.ts"],"names":[],"mappings":"AAAA,OAAO,EAGH,KAAK,gBAAgB,EAGxB,MAAM,yBAAyB,CAAC;AAEjC,wFAAwF;AACxF,MAAM,WAAW,mBAAoB,SAAQ,QAAQ,CAAC,gBAAgB,CAAC;IACnE,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;IAC1B,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;IAC1B,QAAQ,CAAC,aAAa,CAAC,EAAE,MAAM,CAAC;IAChC,QAAQ,CAAC,MAAM,EAAE,OAAO,CAAC;IACzB,QAAQ,CAAC,MAAM,EAAE,MAAM,GAAG,iBAAiB,GAAG,UAAU,CAAC;CAC5D;AAED,wBAAgB,0BAA0B,CACtC,UAAU,EAAE,MAAM,GAAG,SAAS,EAC9B,OAAO,EAAE,MAAM,GAAG,SAAS,GAC5B,mBAAmB,CAerB;AAED,MAAM,WAAW,SAAS;IACtB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,KAAK,CAAC,EAAE,MAAM,CAAC;CAClB;AAED;mDACmD;AACnD,wBAAgB,8BAA8B,CAAC,IAAI,EAAE,mBAAmB,GAAG,OAAO,CAKjF;AAED,oFAAoF;AACpF,wBAAgB,YAAY,CAAC,GAAG,EAAE,SAAS,EAAE,IAAI,EAAE,mBAAmB,EAAE,GAAG,UAAQ,GAAG,MAAM,CAe3F;AAED,4FAA4F;AAC5F,wBAAgB,WAAW,CAAC,cAAc,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,MAAM,CASzE;AAED,gGAAgG;AAChG,wBAAgB,sBAAsB,CAAC,QAAQ,EAAE,MAAM,GAAG,IAAI,GAAG,SAAS,GAAG,mBAAmB,CAK/F;AAED,qGAAqG;AACrG,wBAAgB,kBAAkB,CAC9B,cAAc,EAAE,MAAM,EACtB,QAAQ,EAAE,MAAM,GAAG,IAAI,GAAG,SAAS,GACpC,MAAM,CAIR"}
@@ -70,6 +70,8 @@ export declare function estimateEmergencyDropReclaimTokens(tag: EmergencyDropTag
70
70
  export declare function planEmergencyDrop(input: {
71
71
  /** Evictable candidates: active tool tags with a working drop target. */
72
72
  tags: readonly EmergencyDropTag[];
73
+ protectedTools?: Readonly<Record<string, number>>;
74
+ protectedToolTags?: ReadonlySet<number>;
73
75
  /**
74
76
  * FULL active live-window tag set (all types) — floor accounting only.
75
77
  * See the fixedFloor contract above.
@@ -1 +1 @@
1
- {"version":3,"file":"emergency-drop.d.ts","sourceRoot":"","sources":["../../../src/hooks/magic-context/emergency-drop.ts"],"names":[],"mappings":"AAsBA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAC;AAEhD,8EAA8E;AAC9E,eAAO,MAAM,eAAe,MAAM,CAAC;AAEnC,oFAAoF;AACpF,eAAO,MAAM,oBAAoB,MAAM,CAAC;AAExC;;;;GAIG;AACH,eAAO,MAAM,0BAA0B,OAAO,CAAC;AAE/C;;;;;;;GAOG;AACH,eAAO,MAAM,uCAAuC,OAA6B,CAAC;AAElF,MAAM,MAAM,IAAI,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;AAiB7B;;;;GAIG;AACH,wBAAgB,eAAe,CAAC,QAAQ,EAAE,MAAM,GAAG,IAAI,GAAG,IAAI,CAK7D;AAED,kFAAkF;AAClF,MAAM,WAAW,gBAAgB;IAC7B,SAAS,EAAE,MAAM,CAAC;IAClB,IAAI,EAAE,SAAS,GAAG,MAAM,GAAG,MAAM,CAAC;IAClC,MAAM,EAAE,QAAQ,GAAG,SAAS,GAAG,WAAW,CAAC;IAC3C,QAAQ,EAAE,MAAM,GAAG,IAAI,CAAC;IACxB,QAAQ,EAAE,MAAM,CAAC;IACjB,8EAA8E;IAC9E,aAAa,EAAE,MAAM,CAAC;IACtB,iBAAiB,EAAE,MAAM,CAAC;IAC1B,mGAAmG;IACnG,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,iBAAiB,CAAC,EAAE,MAAM,CAAC;CAC9B;AAaD,MAAM,WAAW,iBAAiB;IAC9B,4DAA4D;IAC5D,UAAU,EAAE,OAAO,CAAC;IACpB,4EAA4E;IAC5E,UAAU,EAAE,MAAM,EAAE,CAAC;IACrB,8CAA8C;IAC9C,aAAa,EAAE,MAAM,CAAC;IACtB,2EAA2E;IAC3E,MAAM,EAAE,MAAM,CAAC;CAClB;AAED,wBAAgB,kCAAkC,CAAC,GAAG,EAAE,gBAAgB,GAAG,MAAM,CAIhF;AAED;;;;;;;;;;;;;;;;GAgBG;AACH,wBAAgB,iBAAiB,CAAC,KAAK,EAAE;IACrC,yEAAyE;IACzE,IAAI,EAAE,SAAS,gBAAgB,EAAE,CAAC;IAClC;;;OAGG;IACH,SAAS,EAAE,SAAS,gBAAgB,EAAE,CAAC;IACvC,MAAM,EAAE,MAAM,CAAC;IACf;;;;OAIG;IACH,eAAe,EAAE,MAAM,GAAG,IAAI,CAAC;IAC/B,0FAA0F;IAC1F,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,uBAAuB,EAAE,MAAM,CAAC;IAChC,kDAAkD;IAClD,aAAa,EAAE,MAAM,CAAC;IACtB;;;;;;OAMG;IACH,gBAAgB,EAAE,MAAM,CAAC;IACzB,mEAAmE;IACnE,YAAY,EAAE,OAAO,CAAC;IACtB;;;;OAIG;IACH,iBAAiB,CAAC,EAAE,OAAO,CAAC;CAC/B,GAAG,iBAAiB,CA+JpB;AAED,uGAAuG;AACvG,wBAAgB,mBAAmB,CAAC,CAAC,SAAS,gBAAgB,EAC1D,GAAG,EAAE,CAAC,EACN,MAAM,EAAE,SAAS,GAAG,SAAS,EAC7B,WAAW,EAAE;IAAE,UAAU,EAAE,MAAM,CAAC;IAAC,UAAU,EAAE,MAAM,CAAA;CAAE,EACvD,QAAQ,EAAE,OAAO,GAClB,CAAC,GAAG,gBAAgB,CAkBtB"}
1
+ {"version":3,"file":"emergency-drop.d.ts","sourceRoot":"","sources":["../../../src/hooks/magic-context/emergency-drop.ts"],"names":[],"mappings":"AAsBA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAC;AAEhD,8EAA8E;AAC9E,eAAO,MAAM,eAAe,MAAM,CAAC;AAEnC,oFAAoF;AACpF,eAAO,MAAM,oBAAoB,MAAM,CAAC;AAExC;;;;GAIG;AACH,eAAO,MAAM,0BAA0B,OAAO,CAAC;AAE/C;;;;;;;GAOG;AACH,eAAO,MAAM,uCAAuC,OAA6B,CAAC;AAElF,MAAM,MAAM,IAAI,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;AAiB7B;;;;GAIG;AACH,wBAAgB,eAAe,CAAC,QAAQ,EAAE,MAAM,GAAG,IAAI,GAAG,IAAI,CAK7D;AAED,kFAAkF;AAClF,MAAM,WAAW,gBAAgB;IAC7B,SAAS,EAAE,MAAM,CAAC;IAClB,IAAI,EAAE,SAAS,GAAG,MAAM,GAAG,MAAM,CAAC;IAClC,MAAM,EAAE,QAAQ,GAAG,SAAS,GAAG,WAAW,CAAC;IAC3C,QAAQ,EAAE,MAAM,GAAG,IAAI,CAAC;IACxB,QAAQ,EAAE,MAAM,CAAC;IACjB,8EAA8E;IAC9E,aAAa,EAAE,MAAM,CAAC;IACtB,iBAAiB,EAAE,MAAM,CAAC;IAC1B,mGAAmG;IACnG,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,iBAAiB,CAAC,EAAE,MAAM,CAAC;CAC9B;AAaD,MAAM,WAAW,iBAAiB;IAC9B,4DAA4D;IAC5D,UAAU,EAAE,OAAO,CAAC;IACpB,4EAA4E;IAC5E,UAAU,EAAE,MAAM,EAAE,CAAC;IACrB,8CAA8C;IAC9C,aAAa,EAAE,MAAM,CAAC;IACtB,2EAA2E;IAC3E,MAAM,EAAE,MAAM,CAAC;CAClB;AAED,wBAAgB,kCAAkC,CAAC,GAAG,EAAE,gBAAgB,GAAG,MAAM,CAIhF;AAED;;;;;;;;;;;;;;;;GAgBG;AACH,wBAAgB,iBAAiB,CAAC,KAAK,EAAE;IACrC,yEAAyE;IACzE,IAAI,EAAE,SAAS,gBAAgB,EAAE,CAAC;IAClC,cAAc,CAAC,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,CAAC;IAClD,iBAAiB,CAAC,EAAE,WAAW,CAAC,MAAM,CAAC,CAAC;IACxC;;;OAGG;IACH,SAAS,EAAE,SAAS,gBAAgB,EAAE,CAAC;IACvC,MAAM,EAAE,MAAM,CAAC;IACf;;;;OAIG;IACH,eAAe,EAAE,MAAM,GAAG,IAAI,CAAC;IAC/B,0FAA0F;IAC1F,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,uBAAuB,EAAE,MAAM,CAAC;IAChC,kDAAkD;IAClD,aAAa,EAAE,MAAM,CAAC;IACtB;;;;;;OAMG;IACH,gBAAgB,EAAE,MAAM,CAAC;IACzB,mEAAmE;IACnE,YAAY,EAAE,OAAO,CAAC;IACtB;;;;OAIG;IACH,iBAAiB,CAAC,EAAE,OAAO,CAAC;CAC/B,GAAG,iBAAiB,CA8JpB;AAED,uGAAuG;AACvG,wBAAgB,mBAAmB,CAAC,CAAC,SAAS,gBAAgB,EAC1D,GAAG,EAAE,CAAC,EACN,MAAM,EAAE,SAAS,GAAG,SAAS,EAC7B,WAAW,EAAE;IAAE,UAAU,EAAE,MAAM,CAAC;IAAC,UAAU,EAAE,MAAM,CAAA;CAAE,EACvD,QAAQ,EAAE,OAAO,GAClB,CAAC,GAAG,gBAAgB,CAkBtB"}
@@ -5,10 +5,30 @@
5
5
  * that accompany the throw, not the primary message a user reads.
6
6
  */
7
7
  export declare const ENGINE_RECONNECTING_USER_MESSAGE = "Magic Context's engine is reconnecting. Send your message again in a few seconds.";
8
+ export declare const PROTECTED_TOOL_RESULTS_OVER_LIMIT = "The tool results kept by protected_tools are larger than this model's context window, so this turn was not sent. Lower the protected_tools counts.";
9
+ export declare const PROTECTED_TOOL_RESULTS_OVER_LIMIT_CODE = "protected_tool_results_over_limit";
10
+ export declare function contextRefusalError(message: string): EmergencyFailClosedError;
11
+ export declare function protectedToolRefusal(error: unknown): EmergencyFailClosedError | undefined;
12
+ export interface ContextRefusalEstimate {
13
+ tokens: number;
14
+ /** Completeness for admission (deciding whether to send); may use a conservative
15
+ * fit multiplier. */
16
+ trusted: boolean;
17
+ /** Refusal-grade evidence: complete, calibrated proof for this route that the
18
+ * request does not fit. */
19
+ refusalGrade?: boolean;
20
+ refusalTokens?: number;
21
+ }
22
+ /** Only protected results that cannot fit by themselves justify a new healthy
23
+ * refusal. Other pressure keeps the provider-overflow and fold behavior: a
24
+ * complete estimate, or even usage from an accepted reply, is not a new reason
25
+ * to stop a turn whose protected results fit. */
26
+ export declare function outgoingContextRefusal(estimate: ContextRefusalEstimate | undefined, limit: number | undefined, protectedToolTokens?: number): string | undefined;
8
27
  export declare class EmergencyFailClosedError extends Error {
9
- readonly code = "EMERGENCY_FAIL_CLOSED";
28
+ readonly code: string;
10
29
  constructor(message: string, options?: {
11
30
  cause?: unknown;
31
+ code?: string;
12
32
  });
13
33
  }
14
34
  //# sourceMappingURL=emergency-fail-closed.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"emergency-fail-closed.d.ts","sourceRoot":"","sources":["../../../src/hooks/magic-context/emergency-fail-closed.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AACH,eAAO,MAAM,gCAAgC,sFAC0C,CAAC;AAExF,qBAAa,wBAAyB,SAAQ,KAAK;IAC/C,QAAQ,CAAC,IAAI,2BAA2B;gBAE5B,OAAO,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE;QAAE,KAAK,CAAC,EAAE,OAAO,CAAA;KAAE;CAI7D"}
1
+ {"version":3,"file":"emergency-fail-closed.d.ts","sourceRoot":"","sources":["../../../src/hooks/magic-context/emergency-fail-closed.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AACH,eAAO,MAAM,gCAAgC,sFAC0C,CAAC;AAExF,eAAO,MAAM,iCAAiC,uJAC0G,CAAC;AACzJ,eAAO,MAAM,sCAAsC,sCAAsC,CAAC;AAE1F,wBAAgB,mBAAmB,CAAC,OAAO,EAAE,MAAM,GAAG,wBAAwB,CAO7E;AAED,wBAAgB,oBAAoB,CAAC,KAAK,EAAE,OAAO,GAAG,wBAAwB,GAAG,SAAS,CAUzF;AAED,MAAM,WAAW,sBAAsB;IACnC,MAAM,EAAE,MAAM,CAAC;IACf;yBACqB;IACrB,OAAO,EAAE,OAAO,CAAC;IACjB;+BAC2B;IAC3B,YAAY,CAAC,EAAE,OAAO,CAAC;IACvB,aAAa,CAAC,EAAE,MAAM,CAAC;CAC1B;AAED;;;iDAGiD;AACjD,wBAAgB,sBAAsB,CAClC,QAAQ,EAAE,sBAAsB,GAAG,SAAS,EAC5C,KAAK,EAAE,MAAM,GAAG,SAAS,EACzB,mBAAmB,SAAI,GACxB,MAAM,GAAG,SAAS,CAcpB;AAED,qBAAa,wBAAyB,SAAQ,KAAK;IAC/C,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;gBAEV,OAAO,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE;QAAE,KAAK,CAAC,EAAE,OAAO,CAAC;QAAC,IAAI,CAAC,EAAE,MAAM,CAAA;KAAE;CAK5E"}
@@ -6,7 +6,7 @@ export interface MessageTokenEstimate {
6
6
  /** Describe the final three post-transform messages without serializing content. */
7
7
  export declare function describeFinalWireTail(messages: readonly MessageLike[]): string;
8
8
  /** Count the token-bearing fields in the message representation sent to OpenCode. */
9
- export declare function estimateMessageTokens(message: MessageLike): MessageTokenEstimate;
9
+ export declare function estimateMessageTokens(message: MessageLike, bounded?: boolean): MessageTokenEstimate;
10
10
  /**
11
11
  * The UTF-8 bytes of the fields `messages` put on the provider wire, the same
12
12
  * fields `estimateMessageTokens` counts; an image counts as `bytesPerToken` bytes
@@ -24,10 +24,33 @@ export interface FinalWireTokenEstimateInput {
24
24
  providerID: string | undefined;
25
25
  modelID: string | undefined;
26
26
  agentName: string | undefined;
27
+ systemPromptHash?: string;
28
+ /** Bound tokenizer work for refusal checks; ordinary admission uses its
29
+ * separate fit estimator. */
30
+ boundedTokenization?: boolean;
31
+ /** Counts from a prior provider request, reusable only after matching its
32
+ * exact route, envelope and prefix. */
33
+ measuredPrefix?: {
34
+ inputTokens: number;
35
+ appendedMessages: readonly MessageLike[];
36
+ };
27
37
  }
38
+ /** Keep only exact served requests. A usage sample is reusable solely when the
39
+ * same route/envelope and complete prefix survive, followed by its own reply.
40
+ * No durable session aggregate or another route's usage can stand in for this.
41
+ */
42
+ export declare function createFinalWireUsageTracker(): {
43
+ estimate(sessionId: string, input: FinalWireTokenEstimateInput, limit?: number): FinalWireTokenEstimate;
44
+ capture(sessionId: string, input: FinalWireTokenEstimateInput): void;
45
+ };
28
46
  export interface FinalWireTokenEstimate {
29
47
  tokens: number;
30
48
  trusted: boolean;
49
+ /** Proof of non-fit, excluding unknown/family multipliers and tool counts
50
+ * borrowed from another route. */
51
+ refusalGrade?: boolean;
52
+ refusalTokens?: number;
53
+ refusalBasis?: "calibrated" | "provider-prefix" | "byte-bound";
31
54
  messageTokens: MessageTokenEstimate;
32
55
  systemTokens: number;
33
56
  toolDefinitionTokens: number | undefined;
@@ -52,5 +75,11 @@ export interface FinalWireTokenEstimate {
52
75
  * This is not exact provider tokenization: provider framing remains unmeasured.
53
76
  * Fit callers must require trusted, not merely compare a numeric partial estimate.
54
77
  */
78
+ /** Before tokenizing with the byte-pair encoder, refusal checks use byte bounds
79
+ * when those bounds settle whether the request fits. Admission (deciding whether
80
+ * to send) continues to use its separate fit policy and complete envelope. */
81
+ export declare function estimateOutgoingWireForRefusal(input: FinalWireTokenEstimateInput, limit?: number): FinalWireTokenEstimate;
55
82
  export declare function estimateFinalWireInputTokens(input: FinalWireTokenEstimateInput): FinalWireTokenEstimate;
83
+ /** A measured request already paid for its envelope; estimate only new messages. */
84
+ export declare function estimateAppendedWireTokens(input: Pick<FinalWireTokenEstimateInput, "messages" | "providerID" | "modelID">): FinalWireTokenEstimate;
56
85
  //# sourceMappingURL=final-wire-token-estimate.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"final-wire-token-estimate.d.ts","sourceRoot":"","sources":["../../../src/hooks/magic-context/final-wire-token-estimate.ts"],"names":[],"mappings":"AAUA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAC;AAGlD,MAAM,WAAW,oBAAoB;IACjC,YAAY,EAAE,MAAM,CAAC;IACrB,QAAQ,EAAE,MAAM,CAAC;CACpB;AAwBD,oFAAoF;AACpF,wBAAgB,qBAAqB,CAAC,QAAQ,EAAE,SAAS,WAAW,EAAE,GAAG,MAAM,CAS9E;AA4GD,qFAAqF;AACrF,wBAAgB,qBAAqB,CAAC,OAAO,EAAE,WAAW,GAAG,oBAAoB,CAWhF;AAED;;;;;;GAMG;AACH,wBAAgB,gBAAgB,CAC5B,QAAQ,EAAE,SAAS,WAAW,EAAE,EAChC,eAAe,EAAE,MAAM,EACvB,aAAa,EAAE,MAAM,GACtB;IAAE,KAAK,EAAE,MAAM,CAAC;IAAC,OAAO,EAAE,OAAO,CAAA;CAAE,GAAG,IAAI,CAkB5C;AAED,MAAM,WAAW,2BAA2B;IACxC,QAAQ,EAAE,SAAS,WAAW,EAAE,CAAC;IACjC,kBAAkB,EAAE,MAAM,CAAC;IAC3B,UAAU,EAAE,MAAM,GAAG,SAAS,CAAC;IAC/B,OAAO,EAAE,MAAM,GAAG,SAAS,CAAC;IAC5B,SAAS,EAAE,MAAM,GAAG,SAAS,CAAC;CACjC;AAED,MAAM,WAAW,sBAAsB;IACnC,MAAM,EAAE,MAAM,CAAC;IACf,OAAO,EAAE,OAAO,CAAC;IACjB,aAAa,EAAE,oBAAoB,CAAC;IACpC,YAAY,EAAE,MAAM,CAAC;IACrB,oBAAoB,EAAE,MAAM,GAAG,SAAS,CAAC;IACzC;;;;OAIG;IACH,uBAAuB,CAAC,EAAE,OAAO,CAAC;IAClC,wFAAwF;IACxF,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,aAAa,CAAC,EAAE;QAAE,MAAM,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,MAAM,CAAA;KAAE,CAAC;IACjE,YAAY,CAAC,EAAE,UAAU,GAAG,SAAS,CAAC;IACtC,kBAAkB,CAAC,EAAE,OAAO,CAAC;CAChC;AAED;;;;GAIG;AACH,wBAAgB,4BAA4B,CACxC,KAAK,EAAE,2BAA2B,GACnC,sBAAsB,CAkExB"}
1
+ {"version":3,"file":"final-wire-token-estimate.d.ts","sourceRoot":"","sources":["../../../src/hooks/magic-context/final-wire-token-estimate.ts"],"names":[],"mappings":"AAmBA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAC;AAGlD,MAAM,WAAW,oBAAoB;IACjC,YAAY,EAAE,MAAM,CAAC;IACrB,QAAQ,EAAE,MAAM,CAAC;CACpB;AAwBD,oFAAoF;AACpF,wBAAgB,qBAAqB,CAAC,QAAQ,EAAE,SAAS,WAAW,EAAE,GAAG,MAAM,CAS9E;AA6GD,qFAAqF;AACrF,wBAAgB,qBAAqB,CAAC,OAAO,EAAE,WAAW,EAAE,OAAO,UAAQ,GAAG,oBAAoB,CAWjG;AAED;;;;;;GAMG;AACH,wBAAgB,gBAAgB,CAC5B,QAAQ,EAAE,SAAS,WAAW,EAAE,EAChC,eAAe,EAAE,MAAM,EACvB,aAAa,EAAE,MAAM,GACtB;IAAE,KAAK,EAAE,MAAM,CAAC;IAAC,OAAO,EAAE,OAAO,CAAA;CAAE,GAAG,IAAI,CAkB5C;AAED,MAAM,WAAW,2BAA2B;IACxC,QAAQ,EAAE,SAAS,WAAW,EAAE,CAAC;IACjC,kBAAkB,EAAE,MAAM,CAAC;IAC3B,UAAU,EAAE,MAAM,GAAG,SAAS,CAAC;IAC/B,OAAO,EAAE,MAAM,GAAG,SAAS,CAAC;IAC5B,SAAS,EAAE,MAAM,GAAG,SAAS,CAAC;IAC9B,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B;iCAC6B;IAC7B,mBAAmB,CAAC,EAAE,OAAO,CAAC;IAC9B;2CACuC;IACvC,cAAc,CAAC,EAAE;QAAE,WAAW,EAAE,MAAM,CAAC;QAAC,gBAAgB,EAAE,SAAS,WAAW,EAAE,CAAA;KAAE,CAAC;CACtF;AAED;;;GAGG;AACH,wBAAgB,2BAA2B;wBAqCpB,MAAM,SACV,2BAA2B,UAC1B,MAAM,GACf,sBAAsB;uBA4CN,MAAM,SAAS,2BAA2B,GAAG,IAAI;EAqB3E;AAED,MAAM,WAAW,sBAAsB;IACnC,MAAM,EAAE,MAAM,CAAC;IACf,OAAO,EAAE,OAAO,CAAC;IACjB;sCACkC;IAClC,YAAY,CAAC,EAAE,OAAO,CAAC;IACvB,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,YAAY,CAAC,EAAE,YAAY,GAAG,iBAAiB,GAAG,YAAY,CAAC;IAC/D,aAAa,EAAE,oBAAoB,CAAC;IACpC,YAAY,EAAE,MAAM,CAAC;IACrB,oBAAoB,EAAE,MAAM,GAAG,SAAS,CAAC;IACzC;;;;OAIG;IACH,uBAAuB,CAAC,EAAE,OAAO,CAAC;IAClC,wFAAwF;IACxF,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,aAAa,CAAC,EAAE;QAAE,MAAM,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,MAAM,CAAA;KAAE,CAAC;IACjE,YAAY,CAAC,EAAE,UAAU,GAAG,SAAS,CAAC;IACtC,kBAAkB,CAAC,EAAE,OAAO,CAAC;CAChC;AAED;;;;GAIG;AACH;;8EAE8E;AAC9E,wBAAgB,8BAA8B,CAC1C,KAAK,EAAE,2BAA2B,EAClC,KAAK,CAAC,EAAE,MAAM,GACf,sBAAsB,CAqDxB;AAED,wBAAgB,4BAA4B,CACxC,KAAK,EAAE,2BAA2B,GACnC,sBAAsB,CAoGxB;AAaD,oFAAoF;AACpF,wBAAgB,0BAA0B,CACtC,KAAK,EAAE,IAAI,CAAC,2BAA2B,EAAE,UAAU,GAAG,YAAY,GAAG,SAAS,CAAC,GAChF,sBAAsB,CA0BxB"}
@@ -4,6 +4,8 @@ import { type CavemanCleanupConfig } from "./caveman-cleanup";
4
4
  import type { DroppedTokenReduction } from "./dropped-token-estimate";
5
5
  import type { MessageLike, TagTarget } from "./tag-messages";
6
6
  export declare function applyHeuristicCleanup(sessionId: string, db: ContextDatabase, targets: Map<number, TagTarget>, messageTagNumbers: Map<MessageLike, number>, config: {
7
+ protectedTools?: Readonly<Record<string, number>>;
8
+ protectedToolTags?: ReadonlySet<number>;
7
9
  /** Exact token-window membership in tag-number space. */
8
10
  protectedTagNumbers: ReadonlySet<number>;
9
11
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"heuristic-cleanup.d.ts","sourceRoot":"","sources":["../../../src/hooks/magic-context/heuristic-cleanup.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,sCAAsC,CAAC;AAY5E,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,oCAAoC,CAAC;AAGnE,OAAO,EAAuB,KAAK,oBAAoB,EAAE,MAAM,mBAAmB,CAAC;AACnF,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,0BAA0B,CAAC;AAQtE,OAAO,KAAK,EAAE,WAAW,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAC;AA6B7D,wBAAgB,qBAAqB,CACjC,SAAS,EAAE,MAAM,EACjB,EAAE,EAAE,eAAe,EACnB,OAAO,EAAE,GAAG,CAAC,MAAM,EAAE,SAAS,CAAC,EAC/B,iBAAiB,EAAE,GAAG,CAAC,WAAW,EAAE,MAAM,CAAC,EAC3C,MAAM,EAAE;IACJ,yDAAyD;IACzD,mBAAmB,EAAE,WAAW,CAAC,MAAM,CAAC,CAAC;IACzC;;;OAGG;IACH,eAAe,EAAE,MAAM,GAAG,IAAI,CAAC;IAC/B;;;;;OAKG;IACH,SAAS,CAAC,EAAE;QACR,uBAAuB,EAAE,MAAM,CAAC;QAChC,aAAa,EAAE,MAAM,CAAC;QACtB,eAAe,CAAC,EAAE,MAAM,CAAC;QACzB,wEAAwE;QACxE,iBAAiB,CAAC,EAAE,OAAO,CAAC;KAC/B,CAAC;IACF;;;;OAIG;IACH,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB;;;OAGG;IACH,OAAO,CAAC,EAAE,oBAAoB,CAAC;CAClC,EACD,aAAa,CAAC,EAAE,QAAQ,EAAE,GAC3B;IACC,YAAY,EAAE,MAAM,CAAC;IACrB,iBAAiB,EAAE,MAAM,CAAC;IAC1B,iBAAiB,EAAE,MAAM,CAAC;IAC1B,qBAAqB,EAAE,MAAM,CAAC;IAC9B,wBAAwB,EAAE,MAAM,CAAC;IACjC,kBAAkB,EAAE,MAAM,CAAC;IAC3B,eAAe,EAAE,MAAM,CAAC;IACxB,sBAAsB,EAAE,qBAAqB,EAAE,CAAC;CACnD,CAwSA"}
1
+ {"version":3,"file":"heuristic-cleanup.d.ts","sourceRoot":"","sources":["../../../src/hooks/magic-context/heuristic-cleanup.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,sCAAsC,CAAC;AAY5E,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,oCAAoC,CAAC;AAGnE,OAAO,EAAuB,KAAK,oBAAoB,EAAE,MAAM,mBAAmB,CAAC;AACnF,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,0BAA0B,CAAC;AAQtE,OAAO,KAAK,EAAE,WAAW,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAC;AA6B7D,wBAAgB,qBAAqB,CACjC,SAAS,EAAE,MAAM,EACjB,EAAE,EAAE,eAAe,EACnB,OAAO,EAAE,GAAG,CAAC,MAAM,EAAE,SAAS,CAAC,EAC/B,iBAAiB,EAAE,GAAG,CAAC,WAAW,EAAE,MAAM,CAAC,EAC3C,MAAM,EAAE;IACJ,cAAc,CAAC,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,CAAC;IAClD,iBAAiB,CAAC,EAAE,WAAW,CAAC,MAAM,CAAC,CAAC;IACxC,yDAAyD;IACzD,mBAAmB,EAAE,WAAW,CAAC,MAAM,CAAC,CAAC;IACzC;;;OAGG;IACH,eAAe,EAAE,MAAM,GAAG,IAAI,CAAC;IAC/B;;;;;OAKG;IACH,SAAS,CAAC,EAAE;QACR,uBAAuB,EAAE,MAAM,CAAC;QAChC,aAAa,EAAE,MAAM,CAAC;QACtB,eAAe,CAAC,EAAE,MAAM,CAAC;QACzB,wEAAwE;QACxE,iBAAiB,CAAC,EAAE,OAAO,CAAC;KAC/B,CAAC;IACF;;;;OAIG;IACH,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB;;;OAGG;IACH,OAAO,CAAC,EAAE,oBAAoB,CAAC;CAClC,EACD,aAAa,CAAC,EAAE,QAAQ,EAAE,GAC3B;IACC,YAAY,EAAE,MAAM,CAAC;IACrB,iBAAiB,EAAE,MAAM,CAAC;IAC1B,iBAAiB,EAAE,MAAM,CAAC;IAC1B,qBAAqB,EAAE,MAAM,CAAC;IAC9B,wBAAwB,EAAE,MAAM,CAAC;IACjC,kBAAkB,EAAE,MAAM,CAAC;IAC3B,eAAe,EAAE,MAAM,CAAC;IACxB,sBAAsB,EAAE,qBAAqB,EAAE,CAAC;CACnD,CA4SA"}
@@ -214,18 +214,20 @@ export interface M0M1RenderOptions {
214
214
  hardSignals?: M0HardSignals;
215
215
  workspaceIdentitySet?: WorkspaceIdentitySet;
216
216
  beforePhase3ForTest?: () => void;
217
+ /** Runs before writer admission, not between m[1] rendering and its writes. */
218
+ beforeCacheCommitForTest?: () => void;
217
219
  /**
218
- * Runs inside the transaction that records a HARD fold, just before it
219
- * commits (and again on each contention retry, whose earlier attempt rolled
220
- * back). Writes that must land only together with an executed fold, such as
221
- * converting legacy dropped-tool skeletons, go here. `rendered` carries the
222
- * bytes this fold is about to persist, so the caller can tell whether the
223
- * fold changes the served prefix or re-renders it byte-identically.
220
+ * Prepare wire-dependent fold side effects before writer admission, on every
221
+ * retry. The returned callback receives the locked render, validates its tag
222
+ * snapshot and persists writes atomically; it must not traverse the wire.
223
+ * `rendered` carries the bytes this fold is about to persist, so the caller
224
+ * can tell whether the fold changes the served prefix or re-renders it
225
+ * byte-identically.
224
226
  */
225
- onFoldCommit?: (db: Database, rendered: {
227
+ onFoldPrepare?: () => ((db: Database, rendered: {
226
228
  m0Bytes: Buffer;
227
229
  m1Bytes: Buffer;
228
- }) => void;
230
+ }) => void) | undefined;
229
231
  }
230
232
  export interface MaterializeDecision {
231
233
  value: boolean;
@@ -1 +1 @@
1
- {"version":3,"file":"inject-compartments.d.ts","sourceRoot":"","sources":["../../../src/hooks/magic-context/inject-compartments.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"inject-compartments.d.ts","sourceRoot":"","sources":["../../../src/hooks/magic-context/inject-compartments.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,25 @@
1
+ import type { MessageLike, TagTarget } from "./tag-messages";
2
+ /**
3
+ * First index of the active Anthropic turn: everything after the last real user
4
+ * request. Tool-result carriers and synthesized context messages do not end the
5
+ * turn. The boundary itself comes from `isInActiveAnthropicTurn`, the single
6
+ * definition shared with reasoning retention, so both lanes always agree on
7
+ * which messages belong to the current turn. With no real user request the
8
+ * active turn is empty.
9
+ */
10
+ export declare function latestAssistantTurnStart(messages: readonly unknown[]): number;
11
+ /** Signed blocks are frozen for the whole tool loop, not just its newest step. */
12
+ export declare function latestAssistantTurnMessages<T>(messages: readonly T[]): Set<T>;
13
+ export declare function hasActiveAnthropicThinkingTurn(messages: readonly unknown[], provider?: string, model?: string): boolean;
14
+ /** First-application safety view. Never use this map for already-frozen replay. */
15
+ export declare function protectNewTagMutations(messages: MessageLike[], targets: Map<number, TagTarget>, protectedParts: ReadonlySet<unknown>, prefixBound: boolean): Map<number, TagTarget>;
16
+ /** Discover retained active thinking after reproducing only persisted decisions. */
17
+ export declare function retainedActiveThinkingParts(args: {
18
+ messages: MessageLike[];
19
+ providerID?: string;
20
+ modelID?: string;
21
+ mergedIds: ReadonlySet<string>;
22
+ bindingIds: ReadonlySet<string>;
23
+ removedIds?: ReadonlySet<string>;
24
+ }): Set<unknown>;
25
+ //# sourceMappingURL=latest-assistant-turn.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"latest-assistant-turn.d.ts","sourceRoot":"","sources":["../../../src/hooks/magic-context/latest-assistant-turn.ts"],"names":[],"mappings":"AASA,OAAO,KAAK,EAAE,WAAW,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAC;AAc7D;;;;;;;GAOG;AACH,wBAAgB,wBAAwB,CAAC,QAAQ,EAAE,SAAS,OAAO,EAAE,GAAG,MAAM,CAW7E;AAED,kFAAkF;AAClF,wBAAgB,2BAA2B,CAAC,CAAC,EAAE,QAAQ,EAAE,SAAS,CAAC,EAAE,GAAG,GAAG,CAAC,CAAC,CAAC,CAE7E;AAED,wBAAgB,8BAA8B,CAC1C,QAAQ,EAAE,SAAS,OAAO,EAAE,EAC5B,QAAQ,CAAC,EAAE,MAAM,EACjB,KAAK,CAAC,EAAE,MAAM,GACf,OAAO,CAiBT;AAED,mFAAmF;AACnF,wBAAgB,sBAAsB,CAClC,QAAQ,EAAE,WAAW,EAAE,EACvB,OAAO,EAAE,GAAG,CAAC,MAAM,EAAE,SAAS,CAAC,EAC/B,cAAc,EAAE,WAAW,CAAC,OAAO,CAAC,EACpC,WAAW,EAAE,OAAO,GACrB,GAAG,CAAC,MAAM,EAAE,SAAS,CAAC,CA0CxB;AAED,oFAAoF;AACpF,wBAAgB,2BAA2B,CAAC,IAAI,EAAE;IAC9C,QAAQ,EAAE,WAAW,EAAE,CAAC;IACxB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,SAAS,EAAE,WAAW,CAAC,MAAM,CAAC,CAAC;IAC/B,UAAU,EAAE,WAAW,CAAC,MAAM,CAAC,CAAC;IAChC,UAAU,CAAC,EAAE,WAAW,CAAC,MAAM,CAAC,CAAC;CACpC,GAAG,GAAG,CAAC,OAAO,CAAC,CAoCf"}
@@ -0,0 +1,69 @@
1
+ import type { LkgSlot } from "./lkg-slot";
2
+ import type { MessageLike } from "./transform-operations";
3
+ export type LkgRequestIdentity = {
4
+ kind: "v1";
5
+ responseId: string;
6
+ modelKey: string;
7
+ } | {
8
+ kind: "v2";
9
+ previousResponseId: string | undefined;
10
+ startedAt: number;
11
+ modelKey: string;
12
+ };
13
+ export declare function lkgProviderInputTotal(tokens?: {
14
+ input?: number;
15
+ cache?: {
16
+ read?: number;
17
+ write?: number;
18
+ };
19
+ }): number;
20
+ /** On OpenCode 2 the assistant reply row for a request is only created after the
21
+ * context hook has run, so the request is remembered by the reply row that came
22
+ * before it. Usage read later from that earlier row belongs to the previous
23
+ * request and must never be credited to this one. */
24
+ export declare function beginV2LkgRequest(sessionId: string, modelKey: string, previousResponseId?: string): void;
25
+ /** Take the request identity when the request is prepared, not when its saved
26
+ * copy (last-known-good request) is committed: in Rust mode that commit can
27
+ * finish after the next turn has already started, and that turn's identity
28
+ * must not be attached to this request's copy. */
29
+ export declare function claimLkgRequestIdentity(sessionId: string): LkgRequestIdentity | undefined;
30
+ export declare function noteCapturedLkgRequest(args: {
31
+ sessionId: string;
32
+ slot: LkgSlot;
33
+ request?: LkgRequestIdentity;
34
+ systemPromptTokens: number;
35
+ agentName?: string;
36
+ }): void;
37
+ /** Record the provider's measured input size (cache reads and writes, system
38
+ * prompt and tools included) against the exact request whose bytes were saved
39
+ * as the last-known-good request. The session's most recent usage reading may
40
+ * belong to a different request, so it is never used in its place. */
41
+ export declare function noteLkgProviderResponse(args: {
42
+ sessionId: string;
43
+ responseId?: string;
44
+ modelKey?: string;
45
+ inputTokens: number;
46
+ completedAt?: number;
47
+ finish?: string;
48
+ error?: unknown;
49
+ v2?: boolean;
50
+ createdAt?: number;
51
+ }): void;
52
+ export declare function measuredLkgPrefix(args: {
53
+ sessionId: string;
54
+ slot: LkgSlot | undefined;
55
+ messages: readonly MessageLike[];
56
+ modelKey: string;
57
+ systemPromptTokens: number;
58
+ agentName?: string;
59
+ }): {
60
+ inputTokens: number;
61
+ appendedMessages: readonly MessageLike[];
62
+ } | undefined;
63
+ export declare function clearLkgMeasuredRequest(sessionId: string): void;
64
+ /** A pass that rebuilds the cached prefix discards the previously saved request
65
+ * before saving the current one. Only the saved measurement is cleared here: the
66
+ * current response identity stays, so the new saved request can still be
67
+ * matched to its usage when the reply arrives. */
68
+ export declare function clearCapturedLkgMeasurement(sessionId: string): void;
69
+ //# sourceMappingURL=lkg-measured-request.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"lkg-measured-request.d.ts","sourceRoot":"","sources":["../../../src/hooks/magic-context/lkg-measured-request.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,YAAY,CAAC;AAC1C,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,wBAAwB,CAAC;AAE1D,MAAM,MAAM,kBAAkB,GACxB;IAAE,IAAI,EAAE,IAAI,CAAC;IAAC,UAAU,EAAE,MAAM,CAAC;IAAC,QAAQ,EAAE,MAAM,CAAA;CAAE,GACpD;IAAE,IAAI,EAAE,IAAI,CAAC;IAAC,kBAAkB,EAAE,MAAM,GAAG,SAAS,CAAC;IAAC,SAAS,EAAE,MAAM,CAAC;IAAC,QAAQ,EAAE,MAAM,CAAA;CAAE,CAAC;AAYlG,wBAAgB,qBAAqB,CAAC,MAAM,CAAC,EAAE;IAC3C,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,KAAK,CAAC,EAAE;QAAE,IAAI,CAAC,EAAE,MAAM,CAAC;QAAC,KAAK,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC;CAC7C,GAAG,MAAM,CAKT;AAiCD;;;qDAGqD;AACrD,wBAAgB,iBAAiB,CAC7B,SAAS,EAAE,MAAM,EACjB,QAAQ,EAAE,MAAM,EAChB,kBAAkB,CAAC,EAAE,MAAM,GAC5B,IAAI,CAEN;AAED;;;kDAGkD;AAClD,wBAAgB,uBAAuB,CAAC,SAAS,EAAE,MAAM,GAAG,kBAAkB,GAAG,SAAS,CAKzF;AAED,wBAAgB,sBAAsB,CAAC,IAAI,EAAE;IACzC,SAAS,EAAE,MAAM,CAAC;IAClB,IAAI,EAAE,OAAO,CAAC;IACd,OAAO,CAAC,EAAE,kBAAkB,CAAC;IAC7B,kBAAkB,EAAE,MAAM,CAAC;IAC3B,SAAS,CAAC,EAAE,MAAM,CAAC;CACtB,GAAG,IAAI,CAYP;AAED;;;sEAGsE;AACtE,wBAAgB,uBAAuB,CAAC,IAAI,EAAE;IAC1C,SAAS,EAAE,MAAM,CAAC;IAClB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,WAAW,EAAE,MAAM,CAAC;IACpB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB,EAAE,CAAC,EAAE,OAAO,CAAC;IACb,SAAS,CAAC,EAAE,MAAM,CAAC;CACtB,GAAG,IAAI,CAwCP;AAED,wBAAgB,iBAAiB,CAAC,IAAI,EAAE;IACpC,SAAS,EAAE,MAAM,CAAC;IAClB,IAAI,EAAE,OAAO,GAAG,SAAS,CAAC;IAC1B,QAAQ,EAAE,SAAS,WAAW,EAAE,CAAC;IACjC,QAAQ,EAAE,MAAM,CAAC;IACjB,kBAAkB,EAAE,MAAM,CAAC;IAC3B,SAAS,CAAC,EAAE,MAAM,CAAC;CACtB,GAAG;IAAE,WAAW,EAAE,MAAM,CAAC;IAAC,gBAAgB,EAAE,SAAS,WAAW,EAAE,CAAA;CAAE,GAAG,SAAS,CAoBhF;AAED,wBAAgB,uBAAuB,CAAC,SAAS,EAAE,MAAM,GAAG,IAAI,CAG/D;AAED;;;kDAGkD;AAClD,wBAAgB,2BAA2B,CAAC,SAAS,EAAE,MAAM,GAAG,IAAI,CAEnE"}
@@ -48,6 +48,9 @@ export declare function preloadTokenizer(): Promise<boolean>;
48
48
  export declare function getTokenEstimatorFingerprint(): string;
49
49
  /** Admission must refuse rather than treating a heuristic fallback as an exact count. */
50
50
  export declare function hasTokenizerForFit(): boolean;
51
+ /** True when counting this text exactly would cost too much (huge or
52
+ * pathological); callers bound such text to bytes for refusal-grade estimates. */
53
+ export declare function tokenCountUsesByteBound(text: string): boolean;
51
54
  export declare function estimateTokens(text: string): number;
52
55
  /** Exact-content, bounded counts; fallback invalidates counts from the previous tokenizer. */
53
56
  export declare function createTokenCountMemo(maxEntries: number, maxBytes: number): (text: string) => number;
@@ -1 +1 @@
1
- {"version":3,"file":"read-session-formatting.d.ts","sourceRoot":"","sources":["../../../src/hooks/magic-context/read-session-formatting.ts"],"names":[],"mappings":"AASA,MAAM,WAAW,gBAAgB;IAC7B,OAAO,EAAE,MAAM,CAAC;IAChB,SAAS,EAAE,MAAM,CAAC;CACrB;AAED,MAAM,WAAW,UAAU;IACvB,IAAI,EAAE,MAAM,CAAC;IACb,YAAY,EAAE,MAAM,CAAC;IACrB,UAAU,EAAE,MAAM,CAAC;IACnB,KAAK,EAAE,MAAM,EAAE,CAAC;IAChB,QAAQ,EAAE,KAAK,CAAC;QAAE,OAAO,EAAE,MAAM,CAAC;QAAC,oBAAoB,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;IACnE,IAAI,EAAE,gBAAgB,EAAE,CAAC;IACzB,YAAY,EAAE,MAAM,EAAE,CAAC;IACvB;;;;;OAKG;IACH,UAAU,EAAE,OAAO,CAAC;CACvB;AAID,wBAAgB,qBAAqB,CAAC,KAAK,EAAE,OAAO,EAAE,GAAG,OAAO,CAiB/D;AAED,wBAAgB,YAAY,CAAC,KAAK,EAAE,OAAO,EAAE,GAAG,MAAM,EAAE,CAUvD;AAED,kGAAkG;AAClG,wBAAgB,2BAA2B,CAAC,KAAK,EAAE,OAAO,EAAE,GAAG,MAAM,CAcpE;AAED;4EAC4E;AAC5E,wBAAgB,wBAAwB,CAAC,KAAK,EAAE,OAAO,EAAE,GAAG,MAAM,EAAE,CA2BnE;AAiJD,MAAM,WAAW,0BAA0B;IACvC,MAAM,EAAE,OAAO,CAAC;IAChB,aAAa,EAAE,OAAO,CAAC;IACvB,UAAU,EAAE,MAAM,GAAG,IAAI,CAAC;IAC1B,SAAS,EAAE,MAAM,GAAG,IAAI,CAAC;CAC5B;AAgCD,uFAAuF;AACvF,wBAAgB,6BAA6B,IAAI,0BAA0B,CAY1E;AAYD,wBAAsB,gBAAgB,IAAI,OAAO,CAAC,OAAO,CAAC,CAuBzD;AAwBD;;;;;;;GAOG;AACH,wBAAgB,4BAA4B,IAAI,MAAM,CAgBrD;AAED,yFAAyF;AACzF,wBAAgB,kBAAkB,IAAI,OAAO,CAE5C;AAED,wBAAgB,cAAc,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAiBnD;AAED,8FAA8F;AAC9F,wBAAgB,oBAAoB,CAChC,UAAU,EAAE,MAAM,EAClB,QAAQ,EAAE,MAAM,GACjB,CAAC,IAAI,EAAE,MAAM,KAAK,MAAM,CA0B1B;AASD,uGAAuG;AACvG,wBAAgB,yBAAyB,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CA2B9D;AAED,wBAAgB,aAAa,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAElD;AAED,wBAAgB,WAAW,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAIhD;AAED,wBAAgB,WAAW,CAAC,KAAK,EAAE,UAAU,GAAG,MAAM,CAQrD;AAED,wBAAgB,mBAAmB,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,EAAE,CAW1D;AAED,wBAAgB,qBAAqB,CACjC,IAAI,EAAE,MAAM,EACZ,IAAI,EAAE,MAAM,GACb;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,YAAY,EAAE,MAAM,EAAE,CAAA;CAAE,CAmB1C;AAED,wBAAgB,iBAAiB,CAAC,QAAQ,EAAE,MAAM,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,GAAG,MAAM,EAAE,CAS9E"}
1
+ {"version":3,"file":"read-session-formatting.d.ts","sourceRoot":"","sources":["../../../src/hooks/magic-context/read-session-formatting.ts"],"names":[],"mappings":"AASA,MAAM,WAAW,gBAAgB;IAC7B,OAAO,EAAE,MAAM,CAAC;IAChB,SAAS,EAAE,MAAM,CAAC;CACrB;AAED,MAAM,WAAW,UAAU;IACvB,IAAI,EAAE,MAAM,CAAC;IACb,YAAY,EAAE,MAAM,CAAC;IACrB,UAAU,EAAE,MAAM,CAAC;IACnB,KAAK,EAAE,MAAM,EAAE,CAAC;IAChB,QAAQ,EAAE,KAAK,CAAC;QAAE,OAAO,EAAE,MAAM,CAAC;QAAC,oBAAoB,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;IACnE,IAAI,EAAE,gBAAgB,EAAE,CAAC;IACzB,YAAY,EAAE,MAAM,EAAE,CAAC;IACvB;;;;;OAKG;IACH,UAAU,EAAE,OAAO,CAAC;CACvB;AAID,wBAAgB,qBAAqB,CAAC,KAAK,EAAE,OAAO,EAAE,GAAG,OAAO,CAiB/D;AAED,wBAAgB,YAAY,CAAC,KAAK,EAAE,OAAO,EAAE,GAAG,MAAM,EAAE,CAUvD;AAED,kGAAkG;AAClG,wBAAgB,2BAA2B,CAAC,KAAK,EAAE,OAAO,EAAE,GAAG,MAAM,CAcpE;AAED;4EAC4E;AAC5E,wBAAgB,wBAAwB,CAAC,KAAK,EAAE,OAAO,EAAE,GAAG,MAAM,EAAE,CA2BnE;AAiJD,MAAM,WAAW,0BAA0B;IACvC,MAAM,EAAE,OAAO,CAAC;IAChB,aAAa,EAAE,OAAO,CAAC;IACvB,UAAU,EAAE,MAAM,GAAG,IAAI,CAAC;IAC1B,SAAS,EAAE,MAAM,GAAG,IAAI,CAAC;CAC5B;AAgCD,uFAAuF;AACvF,wBAAgB,6BAA6B,IAAI,0BAA0B,CAY1E;AAYD,wBAAsB,gBAAgB,IAAI,OAAO,CAAC,OAAO,CAAC,CAuBzD;AAwBD;;;;;;;GAOG;AACH,wBAAgB,4BAA4B,IAAI,MAAM,CAgBrD;AAED,yFAAyF;AACzF,wBAAgB,kBAAkB,IAAI,OAAO,CAE5C;AAED;kFACkF;AAClF,wBAAgB,uBAAuB,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAE7D;AAED,wBAAgB,cAAc,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAiBnD;AAED,8FAA8F;AAC9F,wBAAgB,oBAAoB,CAChC,UAAU,EAAE,MAAM,EAClB,QAAQ,EAAE,MAAM,GACjB,CAAC,IAAI,EAAE,MAAM,KAAK,MAAM,CA0B1B;AASD,uGAAuG;AACvG,wBAAgB,yBAAyB,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CA2B9D;AAED,wBAAgB,aAAa,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAElD;AAED,wBAAgB,WAAW,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAIhD;AAED,wBAAgB,WAAW,CAAC,KAAK,EAAE,UAAU,GAAG,MAAM,CAQrD;AAED,wBAAgB,mBAAmB,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,EAAE,CAW1D;AAED,wBAAgB,qBAAqB,CACjC,IAAI,EAAE,MAAM,EACZ,IAAI,EAAE,MAAM,GACb;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,YAAY,EAAE,MAAM,EAAE,CAAA;CAAE,CAmB1C;AAED,wBAAgB,iBAAiB,CAAC,QAAQ,EAAE,MAAM,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,GAAG,MAAM,EAAE,CAS9E"}
@@ -0,0 +1,15 @@
1
+ import type { MessageLike } from "./tag-messages";
2
+ export interface ReasoningBudgetStatus {
3
+ kept: number;
4
+ budget: number;
5
+ estimated: boolean;
6
+ overrun?: "newest step" | "signed prefix" | "awaiting rebuild";
7
+ }
8
+ /** Capture only wire facts, never an adapter's transform dependencies or tool handlers.
9
+ * Retaining a pass closure would keep an undisposed host adapter alive through status.
10
+ */
11
+ export declare function captureOpencodeReasoningBudgetStatus(sessionId: string, messages: MessageLike[], budget: number, prefixBound: boolean, proseRatio?: number): void;
12
+ export declare function reasoningBudgetStatusLine(sessionId: string): string | undefined;
13
+ export declare function formatReasoningBudgetStatus(status: ReasoningBudgetStatus): string;
14
+ export declare function opencodeReasoningBudgetStatus(messages: MessageLike[], budget: number, prefixBound: boolean, proseRatio?: number): ReasoningBudgetStatus;
15
+ //# sourceMappingURL=reasoning-budget-status.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"reasoning-budget-status.d.ts","sourceRoot":"","sources":["../../../src/hooks/magic-context/reasoning-budget-status.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAC;AAElD,MAAM,WAAW,qBAAqB;IAClC,IAAI,EAAE,MAAM,CAAC;IACb,MAAM,EAAE,MAAM,CAAC;IACf,SAAS,EAAE,OAAO,CAAC;IACnB,OAAO,CAAC,EAAE,aAAa,GAAG,eAAe,GAAG,kBAAkB,CAAC;CAClE;AAeD;;GAEG;AACH,wBAAgB,oCAAoC,CAChD,SAAS,EAAE,MAAM,EACjB,QAAQ,EAAE,WAAW,EAAE,EACvB,MAAM,EAAE,MAAM,EACd,WAAW,EAAE,OAAO,EACpB,UAAU,SAAI,GACf,IAAI,CA+DN;AACD,wBAAgB,yBAAyB,CAAC,SAAS,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,CAc/E;AACD,wBAAgB,2BAA2B,CAAC,MAAM,EAAE,qBAAqB,GAAG,MAAM,CAIjF;AACD,wBAAgB,6BAA6B,CACzC,QAAQ,EAAE,WAAW,EAAE,EACvB,MAAM,EAAE,MAAM,EACd,WAAW,EAAE,OAAO,EACpB,UAAU,SAAI,GACf,qBAAqB,CA6CvB"}
@@ -0,0 +1,40 @@
1
+ import type { ContextDatabase } from "../../features/magic-context/storage";
2
+ import type { MessageLike } from "./tag-messages";
3
+ /** Read-only historian projection. DB-only/cold-start callers may use tag estimates instead. */
4
+ export declare function projectOpencodeReasoningBudgetCutoff(db: ContextDatabase, sessionId: string, messages: MessageLike[], budget: number, watermark: number, proseRatio: number): number;
5
+ export declare const DEFAULT_KEEP_REASONING_TOKENS = 10000;
6
+ export declare const UNKNOWN_REASONING_STEP_TOKENS = 1000;
7
+ export type KeepReasoningTokens = number | Record<string, number>;
8
+ export declare function resolveKeepReasoningTokens(config: KeepReasoningTokens | undefined, modelKey: string | undefined): number;
9
+ export declare function reasoningStepCost(reported: number | undefined, textEstimate: number, opaque: boolean): number;
10
+ export interface ReasoningBudgetStep {
11
+ tag: number;
12
+ cost: number | (() => number);
13
+ exempt?: boolean;
14
+ alreadyRemoved?: boolean;
15
+ }
16
+ /** Oldest-first input; only the newest fitting suffix is retained, never part of a step.
17
+ * Exempt reasoning is charged first because it cannot leave the wire. Cost callbacks
18
+ * bound fallback tokenization to the retained suffix plus its first non-fitting step.
19
+ */
20
+ export declare function reasoningBudgetCutoff(steps: readonly ReasoningBudgetStep[], budget: number): number;
21
+ /** Visible thinking only: signatures and encrypted transport are never tokenized. */
22
+ export declare function reasoningTextAndOpaque(parts: readonly unknown[]): {
23
+ text: string;
24
+ inlineText: string;
25
+ opaque: boolean;
26
+ hasReasoning: boolean;
27
+ };
28
+ export declare function opencodeReasoningBudgetCutoff(args: {
29
+ messages: MessageLike[];
30
+ messageTagNumbers: ReadonlyMap<MessageLike, number>;
31
+ budget: number;
32
+ alreadyRemoved?: ReadonlySet<string>;
33
+ alsoGone?: ReadonlySet<string>;
34
+ textEstimateByMessageId?: ReadonlyMap<string, number>;
35
+ proseRatio?: number;
36
+ countNeutralized?: boolean;
37
+ anthropic?: boolean;
38
+ frozenMergedIds?: ReadonlySet<string>;
39
+ }): number;
40
+ //# sourceMappingURL=reasoning-budget.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"reasoning-budget.d.ts","sourceRoot":"","sources":["../../../src/hooks/magic-context/reasoning-budget.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,sCAAsC,CAAC;AAoB5E,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAC;AAElD,gGAAgG;AAChG,wBAAgB,oCAAoC,CAChD,EAAE,EAAE,eAAe,EACnB,SAAS,EAAE,MAAM,EACjB,QAAQ,EAAE,WAAW,EAAE,EACvB,MAAM,EAAE,MAAM,EACd,SAAS,EAAE,MAAM,EACjB,UAAU,EAAE,MAAM,GACnB,MAAM,CA6BR;AAED,eAAO,MAAM,6BAA6B,QAAS,CAAC;AACpD,eAAO,MAAM,6BAA6B,OAAQ,CAAC;AACnD,MAAM,MAAM,mBAAmB,GAAG,MAAM,GAAG,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;AAElE,wBAAgB,0BAA0B,CACtC,MAAM,EAAE,mBAAmB,GAAG,SAAS,EACvC,QAAQ,EAAE,MAAM,GAAG,SAAS,GAC7B,MAAM,CAWR;AAED,wBAAgB,iBAAiB,CAC7B,QAAQ,EAAE,MAAM,GAAG,SAAS,EAC5B,YAAY,EAAE,MAAM,EACpB,MAAM,EAAE,OAAO,GAChB,MAAM,CAIR;AAED,MAAM,WAAW,mBAAmB;IAChC,GAAG,EAAE,MAAM,CAAC;IACZ,IAAI,EAAE,MAAM,GAAG,CAAC,MAAM,MAAM,CAAC,CAAC;IAC9B,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,cAAc,CAAC,EAAE,OAAO,CAAC;CAC5B;AAED;;;GAGG;AACH,wBAAgB,qBAAqB,CACjC,KAAK,EAAE,SAAS,mBAAmB,EAAE,EACrC,MAAM,EAAE,MAAM,GACf,MAAM,CAwBR;AAED,qFAAqF;AACrF,wBAAgB,sBAAsB,CAAC,KAAK,EAAE,SAAS,OAAO,EAAE,GAAG;IAC/D,IAAI,EAAE,MAAM,CAAC;IACb,UAAU,EAAE,MAAM,CAAC;IACnB,MAAM,EAAE,OAAO,CAAC;IAChB,YAAY,EAAE,OAAO,CAAC;CACzB,CAsDA;AAED,wBAAgB,6BAA6B,CAAC,IAAI,EAAE;IAChD,QAAQ,EAAE,WAAW,EAAE,CAAC;IACxB,iBAAiB,EAAE,WAAW,CAAC,WAAW,EAAE,MAAM,CAAC,CAAC;IACpD,MAAM,EAAE,MAAM,CAAC;IACf,cAAc,CAAC,EAAE,WAAW,CAAC,MAAM,CAAC,CAAC;IACrC,QAAQ,CAAC,EAAE,WAAW,CAAC,MAAM,CAAC,CAAC;IAC/B,uBAAuB,CAAC,EAAE,WAAW,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IACtD,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,gBAAgB,CAAC,EAAE,OAAO,CAAC;IAC3B,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,eAAe,CAAC,EAAE,WAAW,CAAC,MAAM,CAAC,CAAC;CACzC,GAAG,MAAM,CA+CT"}