@superblocksteam/vite-plugin-file-sync 2.0.151 → 2.0.152-next.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 (224) hide show
  1. package/dist/ai-service/agent/middleware.d.ts.map +1 -1
  2. package/dist/ai-service/agent/middleware.js +10 -1
  3. package/dist/ai-service/agent/middleware.js.map +1 -1
  4. package/dist/ai-service/agent/prompts/build-base-system-prompt.d.ts.map +1 -1
  5. package/dist/ai-service/agent/prompts/build-base-system-prompt.js +25 -6
  6. package/dist/ai-service/agent/prompts/build-base-system-prompt.js.map +1 -1
  7. package/dist/ai-service/agent/prompts/build-security-scan-prompt.d.ts.map +1 -1
  8. package/dist/ai-service/agent/prompts/build-security-scan-prompt.js +7 -2
  9. package/dist/ai-service/agent/prompts/build-security-scan-prompt.js.map +1 -1
  10. package/dist/ai-service/agent/tools/apis/get-sdk-api-docs.d.ts +47 -1
  11. package/dist/ai-service/agent/tools/apis/get-sdk-api-docs.d.ts.map +1 -1
  12. package/dist/ai-service/agent/tools/apis/get-sdk-api-docs.js +129 -15
  13. package/dist/ai-service/agent/tools/apis/get-sdk-api-docs.js.map +1 -1
  14. package/dist/ai-service/agent/tools/apis/test-api.d.ts.map +1 -1
  15. package/dist/ai-service/agent/tools/apis/test-api.js +1 -24
  16. package/dist/ai-service/agent/tools/apis/test-api.js.map +1 -1
  17. package/dist/ai-service/agent/tools/databases/dev-database-tasks.d.ts +53 -9
  18. package/dist/ai-service/agent/tools/databases/dev-database-tasks.d.ts.map +1 -1
  19. package/dist/ai-service/agent/tools/databases/dev-database-tasks.js +304 -67
  20. package/dist/ai-service/agent/tools/databases/dev-database-tasks.js.map +1 -1
  21. package/dist/ai-service/agent/tools/databases/dev-database-tools.d.ts +47 -1
  22. package/dist/ai-service/agent/tools/databases/dev-database-tools.d.ts.map +1 -1
  23. package/dist/ai-service/agent/tools/databases/dev-database-tools.js +38 -1
  24. package/dist/ai-service/agent/tools/databases/dev-database-tools.js.map +1 -1
  25. package/dist/ai-service/agent/tools/integrations/execute-request.d.ts +391 -0
  26. package/dist/ai-service/agent/tools/integrations/execute-request.d.ts.map +1 -1
  27. package/dist/ai-service/agent/tools/integrations/execute-request.js +257 -44
  28. package/dist/ai-service/agent/tools/integrations/execute-request.js.map +1 -1
  29. package/dist/ai-service/agent/tools/integrations/index.d.ts +1 -1
  30. package/dist/ai-service/agent/tools/integrations/index.d.ts.map +1 -1
  31. package/dist/ai-service/agent/tools/integrations/index.js +1 -1
  32. package/dist/ai-service/agent/tools/integrations/index.js.map +1 -1
  33. package/dist/ai-service/agent/tools/integrations/managed-app-database.d.ts +16 -0
  34. package/dist/ai-service/agent/tools/integrations/managed-app-database.d.ts.map +1 -0
  35. package/dist/ai-service/agent/tools/integrations/managed-app-database.js +31 -0
  36. package/dist/ai-service/agent/tools/integrations/managed-app-database.js.map +1 -0
  37. package/dist/ai-service/agent/tools/integrations/sql-classification.d.ts +44 -0
  38. package/dist/ai-service/agent/tools/integrations/sql-classification.d.ts.map +1 -0
  39. package/dist/ai-service/agent/tools/integrations/sql-classification.js +352 -0
  40. package/dist/ai-service/agent/tools/integrations/sql-classification.js.map +1 -0
  41. package/dist/ai-service/agent/tools/report-security-findings.d.ts +5 -5
  42. package/dist/ai-service/agent/tools.d.ts.map +1 -1
  43. package/dist/ai-service/agent/tools.js +5 -1
  44. package/dist/ai-service/agent/tools.js.map +1 -1
  45. package/dist/ai-service/agent/tools2/registry.d.ts.map +1 -1
  46. package/dist/ai-service/agent/tools2/registry.js +2 -0
  47. package/dist/ai-service/agent/tools2/registry.js.map +1 -1
  48. package/dist/ai-service/agent/tools2/tools/check-task.d.ts.map +1 -1
  49. package/dist/ai-service/agent/tools2/tools/check-task.js +4 -1
  50. package/dist/ai-service/agent/tools2/tools/check-task.js.map +1 -1
  51. package/dist/ai-service/agent/tools2/tools/exit-plan-mode.d.ts.map +1 -1
  52. package/dist/ai-service/agent/tools2/tools/exit-plan-mode.js +12 -1
  53. package/dist/ai-service/agent/tools2/tools/exit-plan-mode.js.map +1 -1
  54. package/dist/ai-service/agent/tools2/tools/wait-for-task.d.ts.map +1 -1
  55. package/dist/ai-service/agent/tools2/tools/wait-for-task.js +5 -1
  56. package/dist/ai-service/agent/tools2/tools/wait-for-task.js.map +1 -1
  57. package/dist/ai-service/chat/chat-session-store.d.ts +10 -1
  58. package/dist/ai-service/chat/chat-session-store.d.ts.map +1 -1
  59. package/dist/ai-service/chat/chat-session-store.js +65 -15
  60. package/dist/ai-service/chat/chat-session-store.js.map +1 -1
  61. package/dist/ai-service/context-archive-paths.d.ts +7 -0
  62. package/dist/ai-service/context-archive-paths.d.ts.map +1 -1
  63. package/dist/ai-service/context-archive-paths.js +7 -0
  64. package/dist/ai-service/context-archive-paths.js.map +1 -1
  65. package/dist/ai-service/context-download.d.ts.map +1 -1
  66. package/dist/ai-service/context-download.js +8 -10
  67. package/dist/ai-service/context-download.js.map +1 -1
  68. package/dist/ai-service/context-flush.d.ts +36 -0
  69. package/dist/ai-service/context-flush.d.ts.map +1 -0
  70. package/dist/ai-service/context-flush.js +90 -0
  71. package/dist/ai-service/context-flush.js.map +1 -0
  72. package/dist/ai-service/context-restore.d.ts +64 -0
  73. package/dist/ai-service/context-restore.d.ts.map +1 -0
  74. package/dist/ai-service/context-restore.js +136 -0
  75. package/dist/ai-service/context-restore.js.map +1 -0
  76. package/dist/ai-service/context-upload.d.ts +13 -4
  77. package/dist/ai-service/context-upload.d.ts.map +1 -1
  78. package/dist/ai-service/context-upload.js +28 -18
  79. package/dist/ai-service/context-upload.js.map +1 -1
  80. package/dist/ai-service/dev-database-client.d.ts +51 -0
  81. package/dist/ai-service/dev-database-client.d.ts.map +1 -1
  82. package/dist/ai-service/dev-database-client.js +3 -0
  83. package/dist/ai-service/dev-database-client.js.map +1 -1
  84. package/dist/ai-service/index.d.ts +19 -0
  85. package/dist/ai-service/index.d.ts.map +1 -1
  86. package/dist/ai-service/index.js +449 -182
  87. package/dist/ai-service/index.js.map +1 -1
  88. package/dist/ai-service/llm/context-v2/adapter.d.ts.map +1 -1
  89. package/dist/ai-service/llm/context-v2/adapter.js +1 -0
  90. package/dist/ai-service/llm/context-v2/adapter.js.map +1 -1
  91. package/dist/ai-service/llm/context-v2/compaction/client-side.d.ts +30 -0
  92. package/dist/ai-service/llm/context-v2/compaction/client-side.d.ts.map +1 -1
  93. package/dist/ai-service/llm/context-v2/compaction/client-side.js +77 -4
  94. package/dist/ai-service/llm/context-v2/compaction/client-side.js.map +1 -1
  95. package/dist/ai-service/llm/context-v2/compaction/compaction-strategy.d.ts +5 -0
  96. package/dist/ai-service/llm/context-v2/compaction/compaction-strategy.d.ts.map +1 -1
  97. package/dist/ai-service/llm/context-v2/compaction/server-side.d.ts +1 -0
  98. package/dist/ai-service/llm/context-v2/compaction/server-side.d.ts.map +1 -1
  99. package/dist/ai-service/llm/context-v2/compaction/server-side.js +3 -0
  100. package/dist/ai-service/llm/context-v2/compaction/server-side.js.map +1 -1
  101. package/dist/ai-service/llm/context-v2/compactor.d.ts.map +1 -1
  102. package/dist/ai-service/llm/context-v2/compactor.js +57 -6
  103. package/dist/ai-service/llm/context-v2/compactor.js.map +1 -1
  104. package/dist/ai-service/llm/context-v2/config.d.ts +13 -1
  105. package/dist/ai-service/llm/context-v2/config.d.ts.map +1 -1
  106. package/dist/ai-service/llm/context-v2/config.js +39 -2
  107. package/dist/ai-service/llm/context-v2/config.js.map +1 -1
  108. package/dist/ai-service/llm/context-v2/context-metrics.d.ts +23 -0
  109. package/dist/ai-service/llm/context-v2/context-metrics.d.ts.map +1 -1
  110. package/dist/ai-service/llm/context-v2/context-metrics.js +52 -1
  111. package/dist/ai-service/llm/context-v2/context-metrics.js.map +1 -1
  112. package/dist/ai-service/llm/context-v2/context.d.ts +27 -3
  113. package/dist/ai-service/llm/context-v2/context.d.ts.map +1 -1
  114. package/dist/ai-service/llm/context-v2/context.js +107 -10
  115. package/dist/ai-service/llm/context-v2/context.js.map +1 -1
  116. package/dist/ai-service/llm/context-v2/manager.d.ts +66 -0
  117. package/dist/ai-service/llm/context-v2/manager.d.ts.map +1 -1
  118. package/dist/ai-service/llm/context-v2/manager.js +194 -2
  119. package/dist/ai-service/llm/context-v2/manager.js.map +1 -1
  120. package/dist/ai-service/llm/context-v2/storage/event-store.d.ts +31 -5
  121. package/dist/ai-service/llm/context-v2/storage/event-store.d.ts.map +1 -1
  122. package/dist/ai-service/llm/context-v2/storage/jsonl-event-store.d.ts +30 -9
  123. package/dist/ai-service/llm/context-v2/storage/jsonl-event-store.d.ts.map +1 -1
  124. package/dist/ai-service/llm/context-v2/storage/jsonl-event-store.js +96 -13
  125. package/dist/ai-service/llm/context-v2/storage/jsonl-event-store.js.map +1 -1
  126. package/dist/ai-service/llm/context-v2/storage/legacy-context-adoption.d.ts +46 -0
  127. package/dist/ai-service/llm/context-v2/storage/legacy-context-adoption.d.ts.map +1 -0
  128. package/dist/ai-service/llm/context-v2/storage/legacy-context-adoption.js +240 -0
  129. package/dist/ai-service/llm/context-v2/storage/legacy-context-adoption.js.map +1 -0
  130. package/dist/ai-service/llm/context-v2/storage/local.d.ts +1 -1
  131. package/dist/ai-service/llm/context-v2/storage/local.d.ts.map +1 -1
  132. package/dist/ai-service/llm/context-v2/storage/local.js +3 -2
  133. package/dist/ai-service/llm/context-v2/storage/local.js.map +1 -1
  134. package/dist/ai-service/llm/context-v2/types.d.ts +5 -1
  135. package/dist/ai-service/llm/context-v2/types.d.ts.map +1 -1
  136. package/dist/ai-service/llm/context-v2/types.js.map +1 -1
  137. package/dist/ai-service/llm/stream/config.d.ts +4 -3
  138. package/dist/ai-service/llm/stream/config.d.ts.map +1 -1
  139. package/dist/ai-service/llm/stream/config.js.map +1 -1
  140. package/dist/ai-service/llm/stream/idle-monitor.d.ts +37 -4
  141. package/dist/ai-service/llm/stream/idle-monitor.d.ts.map +1 -1
  142. package/dist/ai-service/llm/stream/idle-monitor.js +38 -3
  143. package/dist/ai-service/llm/stream/idle-monitor.js.map +1 -1
  144. package/dist/ai-service/policy-agent-metrics.d.ts +18 -0
  145. package/dist/ai-service/policy-agent-metrics.d.ts.map +1 -0
  146. package/dist/ai-service/policy-agent-metrics.js +99 -0
  147. package/dist/ai-service/policy-agent-metrics.js.map +1 -0
  148. package/dist/ai-service/state-machine/clark-fsm.d.ts +9 -0
  149. package/dist/ai-service/state-machine/clark-fsm.d.ts.map +1 -1
  150. package/dist/ai-service/state-machine/helpers/prompt-request-metrics.d.ts +9 -0
  151. package/dist/ai-service/state-machine/helpers/prompt-request-metrics.d.ts.map +1 -1
  152. package/dist/ai-service/state-machine/helpers/prompt-request-metrics.js +27 -0
  153. package/dist/ai-service/state-machine/helpers/prompt-request-metrics.js.map +1 -1
  154. package/dist/ai-service/tasks/factory.d.ts +7 -0
  155. package/dist/ai-service/tasks/factory.d.ts.map +1 -1
  156. package/dist/ai-service/tasks/factory.js +5 -0
  157. package/dist/ai-service/tasks/factory.js.map +1 -1
  158. package/dist/ai-service/tasks/task-store.d.ts +11 -1
  159. package/dist/ai-service/tasks/task-store.d.ts.map +1 -1
  160. package/dist/ai-service/tasks/task-store.js +104 -29
  161. package/dist/ai-service/tasks/task-store.js.map +1 -1
  162. package/dist/ai-service/tasks/types.d.ts +9 -1
  163. package/dist/ai-service/tasks/types.d.ts.map +1 -1
  164. package/dist/extract-api-integrations.d.ts +76 -0
  165. package/dist/extract-api-integrations.d.ts.map +1 -1
  166. package/dist/extract-api-integrations.js +428 -109
  167. package/dist/extract-api-integrations.js.map +1 -1
  168. package/dist/file-sync-vite-plugin.d.ts +1 -1
  169. package/dist/file-sync-vite-plugin.d.ts.map +1 -1
  170. package/dist/file-sync-vite-plugin.js +42 -79
  171. package/dist/file-sync-vite-plugin.js.map +1 -1
  172. package/dist/file-system-helpers.d.ts +1 -1
  173. package/dist/file-system-helpers.d.ts.map +1 -1
  174. package/dist/file-system-helpers.js +1 -0
  175. package/dist/file-system-helpers.js.map +1 -1
  176. package/dist/git-auth-state.d.ts +4 -0
  177. package/dist/git-auth-state.d.ts.map +1 -0
  178. package/dist/git-auth-state.js +25 -0
  179. package/dist/git-auth-state.js.map +1 -0
  180. package/dist/git-service/checkpoint-commit-metrics.d.ts +2 -0
  181. package/dist/git-service/checkpoint-commit-metrics.d.ts.map +1 -0
  182. package/dist/git-service/checkpoint-commit-metrics.js +15 -0
  183. package/dist/git-service/checkpoint-commit-metrics.js.map +1 -0
  184. package/dist/git-service/checkpoint-committer.d.ts +22 -0
  185. package/dist/git-service/checkpoint-committer.d.ts.map +1 -0
  186. package/dist/git-service/checkpoint-committer.js +91 -0
  187. package/dist/git-service/checkpoint-committer.js.map +1 -0
  188. package/dist/git-service/commit-live-branch.d.ts +17 -0
  189. package/dist/git-service/commit-live-branch.d.ts.map +1 -0
  190. package/dist/git-service/commit-live-branch.js +28 -0
  191. package/dist/git-service/commit-live-branch.js.map +1 -0
  192. package/dist/git-service/provider-workflow-files.d.ts +12 -0
  193. package/dist/git-service/provider-workflow-files.d.ts.map +1 -0
  194. package/dist/git-service/provider-workflow-files.js +36 -0
  195. package/dist/git-service/provider-workflow-files.js.map +1 -0
  196. package/dist/plugin-options.d.ts +8 -0
  197. package/dist/plugin-options.d.ts.map +1 -1
  198. package/dist/plugin-options.js.map +1 -1
  199. package/dist/policy-gate-runner.d.ts.map +1 -1
  200. package/dist/policy-gate-runner.js +7 -9
  201. package/dist/policy-gate-runner.js.map +1 -1
  202. package/dist/server-rpc/client.d.ts.map +1 -1
  203. package/dist/server-rpc/client.js +2 -0
  204. package/dist/server-rpc/client.js.map +1 -1
  205. package/dist/server-rpc/index.d.ts +43 -1
  206. package/dist/server-rpc/index.d.ts.map +1 -1
  207. package/dist/server-rpc/index.js +143 -5
  208. package/dist/server-rpc/index.js.map +1 -1
  209. package/dist/server-rpc/request-abort-context.d.ts +3 -0
  210. package/dist/server-rpc/request-abort-context.d.ts.map +1 -0
  211. package/dist/server-rpc/request-abort-context.js +23 -0
  212. package/dist/server-rpc/request-abort-context.js.map +1 -0
  213. package/dist/server-rpc/rpc-invalidate-metrics.d.ts +20 -0
  214. package/dist/server-rpc/rpc-invalidate-metrics.d.ts.map +1 -0
  215. package/dist/server-rpc/rpc-invalidate-metrics.js +86 -0
  216. package/dist/server-rpc/rpc-invalidate-metrics.js.map +1 -0
  217. package/dist/socket-manager.d.ts.map +1 -1
  218. package/dist/socket-manager.js +21 -60
  219. package/dist/socket-manager.js.map +1 -1
  220. package/dist/sync-service/index.d.ts +26 -2
  221. package/dist/sync-service/index.d.ts.map +1 -1
  222. package/dist/sync-service/index.js +74 -37
  223. package/dist/sync-service/index.js.map +1 -1
  224. package/package.json +9 -8
@@ -1 +1 @@
1
- {"version":3,"file":"adapter.js","sourceRoot":"","sources":["../../../../src/ai-service/llm/context-v2/adapter.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"adapter.js","sourceRoot":"","sources":["../../../../src/ai-service/llm/context-v2/adapter.ts"],"names":[],"mappings":"AAOA,OAAO,EAAE,iBAAiB,EAAE,MAAM,yBAAyB,CAAC;AAM5D,MAAM,MAAM,GAAG,iBAAiB,CAAC,sBAAsB,CAAC,CAAC;AAEzD,MAAM,WAAW,GAAG,CAClB,cAAsB,CAAC,EACvB,eAAuB,CAAC,EACJ,EAAE,CAAC,CAAC;IACxB,WAAW;IACX,YAAY;IACZ,WAAW,EAAE,WAAW,GAAG,YAAY;IACvC,iBAAiB,EAAE;QACjB,aAAa,EAAE,WAAW;QAC1B,eAAe,EAAE,CAAC;QAClB,gBAAgB,EAAE,CAAC;KACpB;IACD,kBAAkB,EAAE;QAClB,UAAU,EAAE,YAAY;QACxB,eAAe,EAAE,CAAC;KACnB;CACF,CAAC,CAAC;AAEH,MAAM,OAAO,gBAAgB;IACnB,EAAE,CAAY;IACd,aAAa,GAAG,CAAC,CAAC;IAClB,SAAS,CAAsB;IAEvC,YAAoB,OAAkB;QACpC,IAAI,CAAC,EAAE,GAAG,OAAO,CAAC;IACpB,CAAC;IAED,MAAM,CAAC,WAAW,CAAC,OAAkB;QACnC,OAAO,IAAI,gBAAgB,CAAC,OAAO,CAAC,CAAC;IACvC,CAAC;IAED,eAAe,CAAC,MAA0B;QACxC,IAAI,CAAC,EAAE,CAAC,eAAe,CAAC,MAAM,CAAC,CAAC;IAClC,CAAC;IAED,KAAK,CAAC,cAAc,CAAC,QAAwB;QAC3C,OAAO,IAAI,CAAC,EAAE,CAAC,cAAc,CAAC,QAAQ,CAAC,CAAC;IAC1C,CAAC;IAED,KAAK,CAAC,SAAS,CAAC,IAAsB;QACpC,IAAI,CAAC,EAAE,CAAC,SAAS,EAAE,CAAC;QACpB,MAAM,IAAI,CAAC,EAAE,CAAC,cAAc,CAAC,IAAI,CAAC,CAAC;QACnC,IAAI,CAAC,aAAa,GAAG,CAAC,CAAC;IACzB,CAAC;IAED,SAAS;QACP,2CAA2C;IAC7C,CAAC;IAED,KAAK,CAAC,OAAO,CACX,SAAyB,EACzB,KAA0B;QAE1B,MAAM,YAAY,GAAG,SAAS,CAAC,KAAK,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC;QACzD,IAAI,CAAC,aAAa,GAAG,SAAS,CAAC,MAAM,CAAC;QAEtC,IAAI,CAAC,KAAK,EAAE,CAAC;YACX,MAAM,CAAC,IAAI,CACT,gEAAgE,CACjE,CAAC;QACJ,CAAC;QAED,IAAI,CAAC,SAAS,GAAG,KAAK,IAAI,IAAI,CAAC,SAAS,CAAC;QACzC,0FAA0F;QAC1F,iFAAiF;QACjF,MAAM,cAAc,GAClB,KAAK,IAAI,IAAI,CAAC,SAAS,IAAI,WAAW,EAAE,CAAC;QAE3C,4EAA4E;QAC5E,oEAAoE;QACpE,MAAM,IAAI,CAAC,EAAE,CAAC,YAAY,CAAC,YAAY,CAAC,MAAM,CAAC,OAAO,CAAC,EAAE,cAAc,CAAC,CAAC;IAC3E,CAAC;IAED,KAAK,CAAC,OAAO,CAAC,MAA2B;QACvC,oEAAoE;QACpE,sEAAsE;QACtE,MAAM,IAAI,CAAC,EAAE,CAAC,OAAO,EAAE,CAAC;IAC1B,CAAC;IAED,KAAK,CAAC,WAAW;QACf,OAAO,IAAI,CAAC,EAAE,CAAC,WAAW,EAAE,CAAC;IAC/B,CAAC;IAED,YAAY,CAAC,UAAkB,EAAE,OAA0B;QACzD,IAAI,CAAC,EAAE,CAAC,YAAY,CAAC,UAAU,EAAE,OAAO,CAAC,CAAC;IAC5C,CAAC;IAED,sBAAsB,CAAC,SAA0C;QAC/D,IAAI,CAAC,EAAE,CAAC,sBAAsB,CAAC,SAAS,CAAC,CAAC;IAC5C,CAAC;IAED,oBAAoB;QAClB,IAAI,CAAC,EAAE,CAAC,oBAAoB,EAAE,CAAC;IACjC,CAAC;IAED,6BAA6B;QAC3B,OAAO,IAAI,CAAC,EAAE,CAAC,6BAA6B,EAAE,CAAC;IACjD,CAAC;IAED,cAAc,CAAC,WAA8B;QAC3C,IAAI,CAAC,EAAE,CAAC,cAAc,CAAC,WAAW,CAAC,CAAC;IACtC,CAAC;IAED,cAAc;QACZ,OAAO,IAAI,CAAC,EAAE,CAAC,cAAc,EAAE,CAAC;IAClC,CAAC;IAED,sBAAsB,CAAC,SAAiB;QACtC,IAAI,CAAC,EAAE,CAAC,sBAAsB,CAAC,SAAS,CAAC,CAAC;IAC5C,CAAC;IAED,qBAAqB;QACnB,OAAO,IAAI,CAAC,EAAE,CAAC,qBAAqB,EAAE,CAAC;IACzC,CAAC;IAED,yBAAyB;QACvB,IAAI,CAAC,EAAE,CAAC,yBAAyB,EAAE,CAAC;IACtC,CAAC;IAED,2BAA2B;QACzB,IAAI,CAAC,EAAE,CAAC,2BAA2B,EAAE,CAAC;IACxC,CAAC;IAED,6BAA6B;QAC3B,IAAI,CAAC,EAAE,CAAC,6BAA6B,EAAE,CAAC;IAC1C,CAAC;IAED,KAAK,CAAC,oBAAoB;QACxB,MAAM,IAAI,CAAC,EAAE,CAAC,oBAAoB,EAAE,CAAC;IACvC,CAAC;CACF"}
@@ -46,8 +46,38 @@ export declare class ClientSideCompactionStrategy implements CompactionStrategy
46
46
  private pendingOutputSummaries;
47
47
  private pendingProtection;
48
48
  private callbacks?;
49
+ /**
50
+ * MEASURED post-compaction input floor of this turn's last applied
51
+ * compaction, armed only when that floor is itself still over the
52
+ * compaction threshold (a STUCK floor); 0 otherwise. Guards same-instance
53
+ * per-step re-fire: a second compaction is blocked until input grows past
54
+ * this floor + `reArmDeltaTokens`. A stuck floor - the fixed per-step floor
55
+ * of system prompt plus the always-injected knowledge and skills Phase 2
56
+ * forces to reload - means re-compacting provably lands back at the same
57
+ * level, so suppressing is a pure win. A floor at or below threshold proves
58
+ * the compaction took effect and never arms: later over-threshold regrowth
59
+ * carries (input - floor) of new reclaimable content, and arming would
60
+ * suppress it up to floor + delta, which for a floor inside
61
+ * (threshold - delta, threshold] overhangs the threshold and lets the
62
+ * prompt eat the `maxOutputTokens` reservation. Reset each turn via
63
+ * {@link onTurnStart}.
64
+ */
65
+ private lastCompactionFloorTokens;
66
+ /**
67
+ * Set right after a compaction applies; the next step's provider-reported
68
+ * input becomes {@link lastCompactionFloorTokens}. The floor must be
69
+ * MEASURED, not estimated from the compactor's `tokensSaved`: that value
70
+ * counts conversation-message shrinkage only (`input - summaryTokens`) and
71
+ * cannot see the fixed per-step floor - system prompt, tools, and the
72
+ * knowledge/skills Phase 2 forces to reload - which is exactly what
73
+ * dominates the next step in the stuck-floor regime. An estimated
74
+ * floor (`input - tokensSaved` ~= summary size) sits far below the real
75
+ * one, so the redundant re-fire would pass the gate.
76
+ */
77
+ private pendingFloorMeasurement;
49
78
  constructor(options: ClientSideCompactionOptions);
50
79
  updateConfig(config: Partial<ContextOptionsV2>): void;
80
+ onTurnStart(): void;
51
81
  storeSummary(toolCallId: string, summary: CompactionSummary): void;
52
82
  setCallbacks(callbacks: CompactionCallbacks | undefined): void;
53
83
  collectAssistantMetadata(message: ModelMessage): Partial<SuperblocksMetadata> | undefined;
@@ -1 +1 @@
1
- {"version":3,"file":"client-side.d.ts","sourceRoot":"","sources":["../../../../../src/ai-service/llm/context-v2/compaction/client-side.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAIH,OAAO,KAAK,EAAE,aAAa,EAAE,kBAAkB,EAAE,YAAY,EAAE,MAAM,IAAI,CAAC;AAG1E,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,2BAA2B,CAAC;AAG9D,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,cAAc,CAAC;AAGrD,OAAO,KAAK,EACV,cAAc,EACd,uBAAuB,EACxB,MAAM,iCAAiC,CAAC;AAGzC,OAAO,KAAK,EACV,aAAa,EACb,mBAAmB,EACnB,iBAAiB,EACjB,mBAAmB,EACnB,SAAS,EACV,MAAM,aAAa,CAAC;AACrB,OAAO,KAAK,EACV,kBAAkB,EAClB,wBAAwB,EACzB,MAAM,0BAA0B,CAAC;AAIlC,UAAU,2BAA2B;IACnC,QAAQ,CAAC,kBAAkB,CAAC,EAAE,aAAa,CAAC;IAC5C;;;;;;OAMG;IACH,QAAQ,CAAC,YAAY,CAAC,EAAE,cAAc,CAAC;IACvC;;;;;OAKG;IACH,QAAQ,CAAC,2BAA2B,CAAC,EAAE,uBAAuB,CAAC;IAC/D,QAAQ,CAAC,MAAM,CAAC,EAAE,OAAO,CAAC,gBAAgB,CAAC,CAAC;IAC5C,QAAQ,CAAC,YAAY,CAAC,EAAE,MAAM,SAAS,GAAG,SAAS,CAAC;IACpD,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;IACzB,QAAQ,CAAC,MAAM,CAAC,EAAE,YAAY,CAAC;CAChC;AAED;;;GAGG;AACH,qBAAa,4BAA6B,YAAW,kBAAkB;IACrE,OAAO,CAAC,QAAQ,CAAC,kBAAkB,CAAC,CAAgB;IACpD,OAAO,CAAC,QAAQ,CAAC,YAAY,CAAC,CAAiB;IAC/C,OAAO,CAAC,QAAQ,CAAC,2BAA2B,CAAC,CAA0B;IACvE,OAAO,CAAC,MAAM,CAAmB;IACjC,OAAO,CAAC,QAAQ,CAAC,YAAY,CAAC,CAA8B;IAC5D,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAS;IACjC,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAe;IAEvC,OAAO,CAAC,qBAAqB,CAA6B;IAC1D,OAAO,CAAC,sBAAsB,CAA6B;IAC3D,OAAO,CAAC,iBAAiB,CAAqB;IAC9C,OAAO,CAAC,SAAS,CAAC,CAAsB;gBAE5B,OAAO,EAAE,2BAA2B;IAUhD,YAAY,CAAC,MAAM,EAAE,OAAO,CAAC,gBAAgB,CAAC,GAAG,IAAI;IAIrD,YAAY,CAAC,UAAU,EAAE,MAAM,EAAE,OAAO,EAAE,iBAAiB,GAAG,IAAI;IAUlE,YAAY,CAAC,SAAS,EAAE,mBAAmB,GAAG,SAAS,GAAG,IAAI;IAI9D,wBAAwB,CACtB,OAAO,EAAE,YAAY,GACpB,OAAO,CAAC,mBAAmB,CAAC,GAAG,SAAS;IAyB3C,mBAAmB,CACjB,OAAO,EAAE,YAAY,GACpB,OAAO,CAAC,mBAAmB,CAAC,GAAG,SAAS;IAsCrC,aAAa,CAAC,MAAM,EAAE;QAC1B,QAAQ,EAAE,aAAa,EAAE,CAAC;QAC1B,KAAK,EAAE,kBAAkB,CAAC;KAC3B,GAAG,OAAO,CAAC,wBAAwB,CAAC;IAyHrC,oBAAoB,CAAC,SAAS,EAAE,aAAa,EAAE,GAAG,wBAAwB;IAI1E,qBAAqB,CAAC,SAAS,EAAE,aAAa,EAAE,GAAG,MAAM,EAAE;CAG5D"}
1
+ {"version":3,"file":"client-side.d.ts","sourceRoot":"","sources":["../../../../../src/ai-service/llm/context-v2/compaction/client-side.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAIH,OAAO,KAAK,EAAE,aAAa,EAAE,kBAAkB,EAAE,YAAY,EAAE,MAAM,IAAI,CAAC;AAG1E,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,2BAA2B,CAAC;AAG9D,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,cAAc,CAAC;AASrD,OAAO,KAAK,EACV,cAAc,EACd,uBAAuB,EACxB,MAAM,iCAAiC,CAAC;AAGzC,OAAO,KAAK,EACV,aAAa,EACb,mBAAmB,EACnB,iBAAiB,EACjB,mBAAmB,EACnB,SAAS,EACV,MAAM,aAAa,CAAC;AACrB,OAAO,KAAK,EACV,kBAAkB,EAClB,wBAAwB,EACzB,MAAM,0BAA0B,CAAC;AAIlC,UAAU,2BAA2B;IACnC,QAAQ,CAAC,kBAAkB,CAAC,EAAE,aAAa,CAAC;IAC5C;;;;;;OAMG;IACH,QAAQ,CAAC,YAAY,CAAC,EAAE,cAAc,CAAC;IACvC;;;;;OAKG;IACH,QAAQ,CAAC,2BAA2B,CAAC,EAAE,uBAAuB,CAAC;IAC/D,QAAQ,CAAC,MAAM,CAAC,EAAE,OAAO,CAAC,gBAAgB,CAAC,CAAC;IAC5C,QAAQ,CAAC,YAAY,CAAC,EAAE,MAAM,SAAS,GAAG,SAAS,CAAC;IACpD,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;IACzB,QAAQ,CAAC,MAAM,CAAC,EAAE,YAAY,CAAC;CAChC;AAED;;;GAGG;AACH,qBAAa,4BAA6B,YAAW,kBAAkB;IACrE,OAAO,CAAC,QAAQ,CAAC,kBAAkB,CAAC,CAAgB;IACpD,OAAO,CAAC,QAAQ,CAAC,YAAY,CAAC,CAAiB;IAC/C,OAAO,CAAC,QAAQ,CAAC,2BAA2B,CAAC,CAA0B;IACvE,OAAO,CAAC,MAAM,CAAmB;IACjC,OAAO,CAAC,QAAQ,CAAC,YAAY,CAAC,CAA8B;IAC5D,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAS;IACjC,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAe;IAEvC,OAAO,CAAC,qBAAqB,CAA6B;IAC1D,OAAO,CAAC,sBAAsB,CAA6B;IAC3D,OAAO,CAAC,iBAAiB,CAAqB;IAC9C,OAAO,CAAC,SAAS,CAAC,CAAsB;IAExC;;;;;;;;;;;;;;;OAeG;IACH,OAAO,CAAC,yBAAyB,CAAK;IAEtC;;;;;;;;;;OAUG;IACH,OAAO,CAAC,uBAAuB,CAAS;gBAE5B,OAAO,EAAE,2BAA2B;IAUhD,YAAY,CAAC,MAAM,EAAE,OAAO,CAAC,gBAAgB,CAAC,GAAG,IAAI;IAIrD,WAAW,IAAI,IAAI;IAKnB,YAAY,CAAC,UAAU,EAAE,MAAM,EAAE,OAAO,EAAE,iBAAiB,GAAG,IAAI;IAUlE,YAAY,CAAC,SAAS,EAAE,mBAAmB,GAAG,SAAS,GAAG,IAAI;IAI9D,wBAAwB,CACtB,OAAO,EAAE,YAAY,GACpB,OAAO,CAAC,mBAAmB,CAAC,GAAG,SAAS;IAyB3C,mBAAmB,CACjB,OAAO,EAAE,YAAY,GACpB,OAAO,CAAC,mBAAmB,CAAC,GAAG,SAAS;IAsCrC,aAAa,CAAC,MAAM,EAAE;QAC1B,QAAQ,EAAE,aAAa,EAAE,CAAC;QAC1B,KAAK,EAAE,kBAAkB,CAAC;KAC3B,GAAG,OAAO,CAAC,wBAAwB,CAAC;IAwKrC,oBAAoB,CAAC,SAAS,EAAE,aAAa,EAAE,GAAG,wBAAwB;IAI1E,qBAAqB,CAAC,SAAS,EAAE,aAAa,EAAE,GAAG,MAAM,EAAE;CAG5D"}
@@ -6,8 +6,8 @@ import { performance } from "node:perf_hooks";
6
6
  import { getPrefixedLogger } from "../../../../util/logger.js";
7
7
  import { buildModeMessage } from "../../../util/mode-message.js";
8
8
  import { compact } from "../compactor.js";
9
- import { DEFAULT_OPTIONS, compactionThresholdTokens } from "../config.js";
10
- import { recordCompaction } from "../context-metrics.js";
9
+ import { compactionThresholdTokens, resolveContextOptionsV2, } from "../config.js";
10
+ import { recordCompaction, recordCompactionSkipped, } from "../context-metrics.js";
11
11
  import { computeContextUsed } from "../token-tracker.js";
12
12
  import { toStoredMessage } from "../types.js";
13
13
  const logger = getPrefixedLogger("[compaction:client-side]");
@@ -27,17 +27,50 @@ export class ClientSideCompactionStrategy {
27
27
  pendingOutputSummaries = new Map();
28
28
  pendingProtection = new Set();
29
29
  callbacks;
30
+ /**
31
+ * MEASURED post-compaction input floor of this turn's last applied
32
+ * compaction, armed only when that floor is itself still over the
33
+ * compaction threshold (a STUCK floor); 0 otherwise. Guards same-instance
34
+ * per-step re-fire: a second compaction is blocked until input grows past
35
+ * this floor + `reArmDeltaTokens`. A stuck floor - the fixed per-step floor
36
+ * of system prompt plus the always-injected knowledge and skills Phase 2
37
+ * forces to reload - means re-compacting provably lands back at the same
38
+ * level, so suppressing is a pure win. A floor at or below threshold proves
39
+ * the compaction took effect and never arms: later over-threshold regrowth
40
+ * carries (input - floor) of new reclaimable content, and arming would
41
+ * suppress it up to floor + delta, which for a floor inside
42
+ * (threshold - delta, threshold] overhangs the threshold and lets the
43
+ * prompt eat the `maxOutputTokens` reservation. Reset each turn via
44
+ * {@link onTurnStart}.
45
+ */
46
+ lastCompactionFloorTokens = 0;
47
+ /**
48
+ * Set right after a compaction applies; the next step's provider-reported
49
+ * input becomes {@link lastCompactionFloorTokens}. The floor must be
50
+ * MEASURED, not estimated from the compactor's `tokensSaved`: that value
51
+ * counts conversation-message shrinkage only (`input - summaryTokens`) and
52
+ * cannot see the fixed per-step floor - system prompt, tools, and the
53
+ * knowledge/skills Phase 2 forces to reload - which is exactly what
54
+ * dominates the next step in the stuck-floor regime. An estimated
55
+ * floor (`input - tokensSaved` ~= summary size) sits far below the real
56
+ * one, so the redundant re-fire would pass the gate.
57
+ */
58
+ pendingFloorMeasurement = false;
30
59
  constructor(options) {
31
60
  this.summarizationModel = options.summarizationModel;
32
61
  this.summarizeLLM = options.summarizeLLM;
33
62
  this.summarizationProviderConfig = options.summarizationProviderConfig;
34
- this.config = { ...DEFAULT_OPTIONS, ...options.config };
63
+ this.config = resolveContextOptionsV2(options.config);
35
64
  this.getModeState = options.getModeState;
36
65
  this.rootDir = options.rootDir;
37
66
  this.tracer = options.tracer;
38
67
  }
39
68
  updateConfig(config) {
40
- this.config = { ...this.config, ...config };
69
+ this.config = resolveContextOptionsV2({ ...this.config, ...config });
70
+ }
71
+ onTurnStart() {
72
+ this.lastCompactionFloorTokens = 0;
73
+ this.pendingFloorMeasurement = false;
41
74
  }
42
75
  storeSummary(toolCallId, summary) {
43
76
  if (summary.input) {
@@ -107,9 +140,36 @@ export class ClientSideCompactionStrategy {
107
140
  logger.warn("Compaction threshold check skipped because provider usage reported 0 input context tokens");
108
141
  return {};
109
142
  }
143
+ // Resolve the post-compaction floor (see `pendingFloorMeasurement`).
144
+ // Ordered before the threshold gate so a below-threshold step still
145
+ // resolves the measurement, and before the re-arm gate so a stuck floor
146
+ // is compared against itself (and skipped) on this very step.
147
+ if (this.pendingFloorMeasurement) {
148
+ this.pendingFloorMeasurement = false;
149
+ this.lastCompactionFloorTokens =
150
+ inputContextUsed > threshold ? inputContextUsed : 0;
151
+ }
110
152
  if (inputContextUsed <= threshold) {
111
153
  return {};
112
154
  }
155
+ // Re-arm latch: skip a redundant same-turn re-fire at a stuck floor unless
156
+ // the context grew past it by more than `reArmDeltaTokens`. See the
157
+ // {@link lastCompactionFloorTokens} docs for why only a stuck floor arms.
158
+ // Known ambiguity: a single step that both compacts effectively AND
159
+ // regrows past threshold before the next measurement reads as a stuck
160
+ // floor and is skipped - the suppression is bounded by the delta band and
161
+ // continued growth re-fires.
162
+ const { reArmDeltaTokens } = this.config;
163
+ if (this.lastCompactionFloorTokens > 0 &&
164
+ inputContextUsed <= this.lastCompactionFloorTokens + reArmDeltaTokens) {
165
+ logger.info(`Re-arm latch: skipping redundant compaction (${inputContextUsed} tokens <= ` +
166
+ `${this.lastCompactionFloorTokens} floor + ${reArmDeltaTokens} delta)`);
167
+ // Emit a counter, not just a log line, so the suppression path this PR
168
+ // introduces is queryable: "compaction not needed" (never reaches here)
169
+ // stays distinguishable from "needed but suppressed by the latch".
170
+ recordCompactionSkipped({ reason: "rearm_latch" });
171
+ return {};
172
+ }
113
173
  logger.info(`Compaction triggered: ${inputContextUsed} tokens > ${threshold} threshold ` +
114
174
  `(${params.messages.length} messages)`);
115
175
  if (!this.summarizationModel ||
@@ -132,6 +192,19 @@ export class ClientSideCompactionStrategy {
132
192
  tracer: this.tracer,
133
193
  rootDir: this.rootDir,
134
194
  });
195
+ // Ask the next step to measure the post-compaction floor; a later step is
196
+ // then gated against re-firing until it grows past that floor + delta.
197
+ // Do NOT estimate the floor from `result.tokensSaved` (see the
198
+ // `pendingFloorMeasurement` doc for why the estimate is blind to the
199
+ // fixed floor Phase 2 reloads). Arm on a phase-1-only pass too: it is
200
+ // still a real compaction. The measured floor is self-correcting - if the
201
+ // compaction reclaimed a lot the floor lands below threshold and the gate
202
+ // goes inert (genuine regrowth compacts); if it reclaimed little the
203
+ // floor stays high and holding blocks the redundant re-fire.
204
+ if (result.phase1Applied || result.phase2Applied) {
205
+ this.pendingFloorMeasurement = true;
206
+ this.lastCompactionFloorTokens = 0;
207
+ }
135
208
  let phase = "none";
136
209
  if (result.phase2Applied) {
137
210
  phase = "phase1+phase2";
@@ -1 +1 @@
1
- {"version":3,"file":"client-side.js","sourceRoot":"","sources":["../../../../../src/ai-service/llm/context-v2/compaction/client-side.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"client-side.js","sourceRoot":"","sources":["../../../../../src/ai-service/llm/context-v2/compaction/client-side.ts"],"names":[],"mappings":"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"}
@@ -52,5 +52,10 @@ export interface CompactionStrategy {
52
52
  getProtectedToolNames(messages: StoredMessage[]): string[];
53
53
  /** Propagate context config updates (e.g., contextLimit) into the strategy. */
54
54
  updateConfig(config: Partial<ContextOptionsV2>): void;
55
+ /**
56
+ * Reset per-turn compaction state (the re-arm latch) at the start of a user
57
+ * turn. Client-side clears its high-water mark; server-side no-ops.
58
+ */
59
+ onTurnStart(): void;
55
60
  }
56
61
  //# sourceMappingURL=compaction-strategy.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"compaction-strategy.d.ts","sourceRoot":"","sources":["../../../../../src/ai-service/llm/context-v2/compaction/compaction-strategy.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,OAAO,KAAK,EAAE,kBAAkB,EAAE,YAAY,EAAE,MAAM,IAAI,CAAC;AAE3D,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,cAAc,CAAC;AACrD,OAAO,KAAK,EACV,aAAa,EACb,mBAAmB,EACnB,iBAAiB,EACjB,mBAAmB,EACpB,MAAM,aAAa,CAAC;AAErB;;GAEG;AACH,MAAM,WAAW,wBAAwB;IACvC,+CAA+C;IAC/C,QAAQ,CAAC,EAAE,aAAa,EAAE,CAAC;IAC3B,0DAA0D;IAC1D,gBAAgB,CAAC,EAAE,OAAO,CAAC;IAC3B,yFAAyF;IACzF,cAAc,CAAC,EAAE,OAAO,CAAC;CAC1B;AAED;;;;;;;GAOG;AACH,MAAM,WAAW,kBAAkB;IACjC,4FAA4F;IAC5F,YAAY,CAAC,UAAU,EAAE,MAAM,EAAE,OAAO,EAAE,iBAAiB,GAAG,IAAI,CAAC;IAEnE,sFAAsF;IACtF,YAAY,CAAC,SAAS,EAAE,mBAAmB,GAAG,SAAS,GAAG,IAAI,CAAC;IAE/D,oEAAoE;IACpE,wBAAwB,CACtB,OAAO,EAAE,YAAY,GACpB,OAAO,CAAC,mBAAmB,CAAC,GAAG,SAAS,CAAC;IAE5C,8DAA8D;IAC9D,mBAAmB,CACjB,OAAO,EAAE,YAAY,GACpB,OAAO,CAAC,mBAAmB,CAAC,GAAG,SAAS,CAAC;IAE5C;;;;;OAKG;IACH,aAAa,CAAC,MAAM,EAAE;QACpB,QAAQ,EAAE,aAAa,EAAE,CAAC;QAC1B,KAAK,EAAE,kBAAkB,CAAC;KAC3B,GAAG,OAAO,CAAC,wBAAwB,CAAC,CAAC;IAEtC,qFAAqF;IACrF,oBAAoB,CAAC,QAAQ,EAAE,aAAa,EAAE,GAAG,wBAAwB,CAAC;IAE1E,yDAAyD;IACzD,qBAAqB,CAAC,QAAQ,EAAE,aAAa,EAAE,GAAG,MAAM,EAAE,CAAC;IAE3D,+EAA+E;IAC/E,YAAY,CAAC,MAAM,EAAE,OAAO,CAAC,gBAAgB,CAAC,GAAG,IAAI,CAAC;CACvD"}
1
+ {"version":3,"file":"compaction-strategy.d.ts","sourceRoot":"","sources":["../../../../../src/ai-service/llm/context-v2/compaction/compaction-strategy.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,OAAO,KAAK,EAAE,kBAAkB,EAAE,YAAY,EAAE,MAAM,IAAI,CAAC;AAE3D,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,cAAc,CAAC;AACrD,OAAO,KAAK,EACV,aAAa,EACb,mBAAmB,EACnB,iBAAiB,EACjB,mBAAmB,EACpB,MAAM,aAAa,CAAC;AAErB;;GAEG;AACH,MAAM,WAAW,wBAAwB;IACvC,+CAA+C;IAC/C,QAAQ,CAAC,EAAE,aAAa,EAAE,CAAC;IAC3B,0DAA0D;IAC1D,gBAAgB,CAAC,EAAE,OAAO,CAAC;IAC3B,yFAAyF;IACzF,cAAc,CAAC,EAAE,OAAO,CAAC;CAC1B;AAED;;;;;;;GAOG;AACH,MAAM,WAAW,kBAAkB;IACjC,4FAA4F;IAC5F,YAAY,CAAC,UAAU,EAAE,MAAM,EAAE,OAAO,EAAE,iBAAiB,GAAG,IAAI,CAAC;IAEnE,sFAAsF;IACtF,YAAY,CAAC,SAAS,EAAE,mBAAmB,GAAG,SAAS,GAAG,IAAI,CAAC;IAE/D,oEAAoE;IACpE,wBAAwB,CACtB,OAAO,EAAE,YAAY,GACpB,OAAO,CAAC,mBAAmB,CAAC,GAAG,SAAS,CAAC;IAE5C,8DAA8D;IAC9D,mBAAmB,CACjB,OAAO,EAAE,YAAY,GACpB,OAAO,CAAC,mBAAmB,CAAC,GAAG,SAAS,CAAC;IAE5C;;;;;OAKG;IACH,aAAa,CAAC,MAAM,EAAE;QACpB,QAAQ,EAAE,aAAa,EAAE,CAAC;QAC1B,KAAK,EAAE,kBAAkB,CAAC;KAC3B,GAAG,OAAO,CAAC,wBAAwB,CAAC,CAAC;IAEtC,qFAAqF;IACrF,oBAAoB,CAAC,QAAQ,EAAE,aAAa,EAAE,GAAG,wBAAwB,CAAC;IAE1E,yDAAyD;IACzD,qBAAqB,CAAC,QAAQ,EAAE,aAAa,EAAE,GAAG,MAAM,EAAE,CAAC;IAE3D,+EAA+E;IAC/E,YAAY,CAAC,MAAM,EAAE,OAAO,CAAC,gBAAgB,CAAC,GAAG,IAAI,CAAC;IAEtD;;;OAGG;IACH,WAAW,IAAI,IAAI,CAAC;CACrB"}
@@ -18,6 +18,7 @@ export declare const SERVER_COMPACTION_INTERRUPTED_SUMMARY = "Server-side compac
18
18
  export declare class ServerSideCompactionStrategy implements CompactionStrategy {
19
19
  private pendingProtection;
20
20
  updateConfig(_config: Partial<ContextOptionsV2>): void;
21
+ onTurnStart(): void;
21
22
  storeSummary(toolCallId: string, summary: CompactionSummary): void;
22
23
  setCallbacks(_callbacks: CompactionCallbacks | undefined): void;
23
24
  collectAssistantMetadata(_message: ModelMessage): Partial<SuperblocksMetadata> | undefined;
@@ -1 +1 @@
1
- {"version":3,"file":"server-side.d.ts","sourceRoot":"","sources":["../../../../../src/ai-service/llm/context-v2/compaction/server-side.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,KAAK,EAAE,kBAAkB,EAAE,YAAY,EAAE,MAAM,IAAI,CAAC;AAG3D,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,cAAc,CAAC;AACrD,OAAO,KAAK,EACV,aAAa,EACb,mBAAmB,EACnB,iBAAiB,EACjB,mBAAmB,EACpB,MAAM,aAAa,CAAC;AACrB,OAAO,KAAK,EACV,kBAAkB,EAClB,wBAAwB,EACzB,MAAM,0BAA0B,CAAC;AAGlC,eAAO,MAAM,yBAAyB,mCAAmC,CAAC;AAC1E,eAAO,MAAM,qCAAqC,yDACM,CAAC;AAEzD;;;;GAIG;AACH,qBAAa,4BAA6B,YAAW,kBAAkB;IACrE,OAAO,CAAC,iBAAiB,CAAqB;IAE9C,YAAY,CAAC,OAAO,EAAE,OAAO,CAAC,gBAAgB,CAAC,GAAG,IAAI;IAItD,YAAY,CAAC,UAAU,EAAE,MAAM,EAAE,OAAO,EAAE,iBAAiB,GAAG,IAAI;IAMlE,YAAY,CAAC,UAAU,EAAE,mBAAmB,GAAG,SAAS,GAAG,IAAI;IAM/D,wBAAwB,CACtB,QAAQ,EAAE,YAAY,GACrB,OAAO,CAAC,mBAAmB,CAAC,GAAG,SAAS;IAI3C,mBAAmB,CACjB,OAAO,EAAE,YAAY,GACpB,OAAO,CAAC,mBAAmB,CAAC,GAAG,SAAS;IAwBrC,aAAa,CAAC,OAAO,EAAE;QAC3B,QAAQ,EAAE,aAAa,EAAE,CAAC;QAC1B,KAAK,EAAE,kBAAkB,CAAC;KAC3B,GAAG,OAAO,CAAC,wBAAwB,CAAC;IAIrC,oBAAoB,CAAC,QAAQ,EAAE,aAAa,EAAE,GAAG,wBAAwB;IAiEzE,qBAAqB,CAAC,QAAQ,EAAE,aAAa,EAAE,GAAG,MAAM,EAAE;CA6B3D"}
1
+ {"version":3,"file":"server-side.d.ts","sourceRoot":"","sources":["../../../../../src/ai-service/llm/context-v2/compaction/server-side.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,KAAK,EAAE,kBAAkB,EAAE,YAAY,EAAE,MAAM,IAAI,CAAC;AAG3D,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,cAAc,CAAC;AACrD,OAAO,KAAK,EACV,aAAa,EACb,mBAAmB,EACnB,iBAAiB,EACjB,mBAAmB,EACpB,MAAM,aAAa,CAAC;AACrB,OAAO,KAAK,EACV,kBAAkB,EAClB,wBAAwB,EACzB,MAAM,0BAA0B,CAAC;AAGlC,eAAO,MAAM,yBAAyB,mCAAmC,CAAC;AAC1E,eAAO,MAAM,qCAAqC,yDACM,CAAC;AAEzD;;;;GAIG;AACH,qBAAa,4BAA6B,YAAW,kBAAkB;IACrE,OAAO,CAAC,iBAAiB,CAAqB;IAE9C,YAAY,CAAC,OAAO,EAAE,OAAO,CAAC,gBAAgB,CAAC,GAAG,IAAI;IAItD,WAAW,IAAI,IAAI;IAInB,YAAY,CAAC,UAAU,EAAE,MAAM,EAAE,OAAO,EAAE,iBAAiB,GAAG,IAAI;IAMlE,YAAY,CAAC,UAAU,EAAE,mBAAmB,GAAG,SAAS,GAAG,IAAI;IAM/D,wBAAwB,CACtB,QAAQ,EAAE,YAAY,GACrB,OAAO,CAAC,mBAAmB,CAAC,GAAG,SAAS;IAI3C,mBAAmB,CACjB,OAAO,EAAE,YAAY,GACpB,OAAO,CAAC,mBAAmB,CAAC,GAAG,SAAS;IAwBrC,aAAa,CAAC,OAAO,EAAE;QAC3B,QAAQ,EAAE,aAAa,EAAE,CAAC;QAC1B,KAAK,EAAE,kBAAkB,CAAC;KAC3B,GAAG,OAAO,CAAC,wBAAwB,CAAC;IAIrC,oBAAoB,CAAC,QAAQ,EAAE,aAAa,EAAE,GAAG,wBAAwB;IAiEzE,qBAAqB,CAAC,QAAQ,EAAE,aAAa,EAAE,GAAG,MAAM,EAAE;CA6B3D"}
@@ -18,6 +18,9 @@ export class ServerSideCompactionStrategy {
18
18
  updateConfig(_config) {
19
19
  // No-op — server-side compaction holds no config that varies at runtime.
20
20
  }
21
+ onTurnStart() {
22
+ // No-op — server-side compaction has no per-turn re-arm latch.
23
+ }
21
24
  storeSummary(toolCallId, summary) {
22
25
  if (summary.protected) {
23
26
  this.pendingProtection.add(toolCallId);
@@ -1 +1 @@
1
- {"version":3,"file":"server-side.js","sourceRoot":"","sources":["../../../../../src/ai-service/llm/context-v2/compaction/server-side.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"server-side.js","sourceRoot":"","sources":["../../../../../src/ai-service/llm/context-v2/compaction/server-side.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"compactor.d.ts","sourceRoot":"","sources":["../../../../src/ai-service/llm/context-v2/compactor.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,kBAAkB,EAAE,MAAM,IAAI,CAAC;AAG5D,OAAO,EAAE,YAAY,EAAE,MAAM,wBAAwB,CAAC;AAEtD,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,aAAa,CAAC;AAOpD,OAAO,KAAK,EACV,cAAc,EACd,uBAAuB,EACxB,MAAM,gCAAgC,CAAC;AAGxC,OAAO,KAAK,EACV,aAAa,EACb,gBAAgB,EAChB,mBAAmB,EACpB,MAAM,YAAY,CAAC;AAEpB,UAAU,cAAc;IACtB,QAAQ,EAAE,aAAa,EAAE,CAAC;IAC1B,KAAK,EAAE,kBAAkB,CAAC;IAC1B,KAAK,EAAE,aAAa,CAAC;IACrB;;;;;OAKG;IACH,YAAY,EAAE,cAAc,CAAC;IAC7B,sFAAsF;IACtF,cAAc,CAAC,EAAE,uBAAuB,CAAC;IACzC,OAAO,EAAE,MAAM,CAAC;IAChB,MAAM,CAAC,EAAE,OAAO,CAAC,gBAAgB,CAAC,CAAC;IACnC,SAAS,CAAC,EAAE,mBAAmB,CAAC;IAChC,MAAM,CAAC,EAAE,YAAY,CAAC;CACvB;AAID,wBAAsB,OAAO,CAC3B,OAAO,EAAE,cAAc,GACtB,OAAO,CAAC,gBAAgB,CAAC,CAuP3B"}
1
+ {"version":3,"file":"compactor.d.ts","sourceRoot":"","sources":["../../../../src/ai-service/llm/context-v2/compactor.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,kBAAkB,EAAE,MAAM,IAAI,CAAC;AAG5D,OAAO,EAAE,YAAY,EAAE,MAAM,wBAAwB,CAAC;AAEtD,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,aAAa,CAAC;AAOpD,OAAO,KAAK,EACV,cAAc,EACd,uBAAuB,EACxB,MAAM,gCAAgC,CAAC;AAGxC,OAAO,KAAK,EACV,aAAa,EACb,gBAAgB,EAChB,mBAAmB,EACpB,MAAM,YAAY,CAAC;AAEpB,UAAU,cAAc;IACtB,QAAQ,EAAE,aAAa,EAAE,CAAC;IAC1B,KAAK,EAAE,kBAAkB,CAAC;IAC1B,KAAK,EAAE,aAAa,CAAC;IACrB;;;;;OAKG;IACH,YAAY,EAAE,cAAc,CAAC;IAC7B,sFAAsF;IACtF,cAAc,CAAC,EAAE,uBAAuB,CAAC;IACzC,OAAO,EAAE,MAAM,CAAC;IAChB,MAAM,CAAC,EAAE,OAAO,CAAC,gBAAgB,CAAC,CAAC;IACnC,SAAS,CAAC,EAAE,mBAAmB,CAAC;IAChC,MAAM,CAAC,EAAE,YAAY,CAAC;CACvB;AAID,wBAAsB,OAAO,CAC3B,OAAO,EAAE,cAAc,GACtB,OAAO,CAAC,gBAAgB,CAAC,CAgT3B"}
@@ -1,6 +1,6 @@
1
1
  import { getPrefixedLogger } from "../../../util/logger.js";
2
2
  import { LLMObsTracer } from "../../llmobs/tracer.js";
3
- import { DEFAULT_OPTIONS } from "./config.js";
3
+ import { resolveContextOptionsV2 } from "./config.js";
4
4
  import { summarizeToolOutputs, calculatePruneableTokens, calculatePhase1EligibleTokens, } from "./phase1-tool-summarizer.js";
5
5
  import { summarizeSession } from "./phase2-session-summarizer.js";
6
6
  import { captureSession } from "./session-capture.js";
@@ -9,11 +9,8 @@ const logger = getPrefixedLogger("[context-v2:compactor]");
9
9
  export async function compact(options) {
10
10
  const { messages, usage, model, summarizeLLM, providerConfig, config = {}, callbacks, tracer = LLMObsTracer.instance, rootDir, } = options;
11
11
  return tracer.trace({ name: "context.compaction", kind: "task" }, async (compactionSpan) => {
12
- const mergedOptions = {
13
- ...DEFAULT_OPTIONS,
14
- ...config,
15
- };
16
- const { contextLimit, maxOutputTokens, phase2TargetRatio, phase1Enabled, phase1MinPruneable, phase1ProtectedTokens, phase1ProtectedToolUseCount, } = mergedOptions;
12
+ const mergedOptions = resolveContextOptionsV2(config);
13
+ const { contextLimit, maxOutputTokens, phase2TargetRatio, phase1Enabled, phase2Enabled, phase1MinPruneable, phase1ProtectedTokens, phase1ProtectedToolUseCount, } = mergedOptions;
17
14
  const inputContextTokens = computeContextUsed(usage);
18
15
  const availableForInput = contextLimit - maxOutputTokens;
19
16
  const targetTokens = Math.floor(availableForInput * phase2TargetRatio);
@@ -106,6 +103,60 @@ export async function compact(options) {
106
103
  };
107
104
  }
108
105
  }
106
+ if (!phase2Enabled) {
107
+ // Bounded one-shot nested generations (e.g. exitPlanMode) inherit the
108
+ // conversation and generate once; a redundant Phase-2 session summary
109
+ // here duplicates work the parent already did and burns 30-70s. The
110
+ // Opus 1M window tolerates the larger prompt, so skip Phase 2 and keep
111
+ // whatever Phase 1 reclaimed.
112
+ logger.info("Phase 2 disabled by config; skipping session summarization");
113
+ // Report the phase-1 savings when phase 1 applied but was not
114
+ // sufficient (the branch that reaches here); otherwise `tokensSaved`
115
+ // is still 0. Keeps the caller's eventLogAnchor / savings telemetry
116
+ // accurate when phase 2 is disabled.
117
+ const phase2DisabledTokensSaved = phase1Applied
118
+ ? phase1EstimatedSavings
119
+ : tokensSaved;
120
+ // Annotate the compaction span like both sibling exits (phase-1
121
+ // sufficient, phase-2 complete) do; otherwise every phase2-disabled
122
+ // compaction whose Phase 1 alone is insufficient emits a metadata-less
123
+ // context.compaction span - no input tokens, no config, no result.
124
+ tracer.annotate(compactionSpan, {
125
+ metadata: {
126
+ input: {
127
+ messageCount: messages.length,
128
+ tokens: inputContextTokens,
129
+ // Discriminator: `tokens` reports input-only context (via
130
+ // computeContextUsed), not input+output - filter/annotate on this
131
+ // field so absolute-value dashboards can account for the step down.
132
+ tokensMetric: "inputContext",
133
+ },
134
+ config: {
135
+ contextLimit,
136
+ maxOutputTokens,
137
+ targetTokens,
138
+ phase1Enabled,
139
+ phase1MinPruneable,
140
+ phase1ProtectedTokens,
141
+ phase1ProtectedToolUseCount,
142
+ phase2TargetRatio,
143
+ },
144
+ result: {
145
+ tokens: inputContextTokens - phase2DisabledTokensSaved,
146
+ tokensSaved: phase2DisabledTokensSaved,
147
+ tokensSavedIsEstimate: true,
148
+ phase1Applied,
149
+ phase2Applied: false,
150
+ },
151
+ },
152
+ });
153
+ return {
154
+ messages: currentMessages,
155
+ phase1Applied,
156
+ phase2Applied: false,
157
+ tokensSaved: phase2DisabledTokensSaved,
158
+ };
159
+ }
109
160
  logger.info("Phase 2: generating session summary");
110
161
  const phase2MessageId = crypto.randomUUID();
111
162
  callbacks?.onCompactionStart?.("phase2", phase2MessageId);
@@ -1 +1 @@
1
- {"version":3,"file":"compactor.js","sourceRoot":"","sources":["../../../../src/ai-service/llm/context-v2/compactor.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"compactor.js","sourceRoot":"","sources":["../../../../src/ai-service/llm/context-v2/compactor.ts"],"names":[],"mappings":"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"}
@@ -4,7 +4,19 @@ export type ContextOptionsV2 = SharedContextOptionsV2;
4
4
  export type { CachingConfig };
5
5
  export declare const DEFAULT_CACHING: CachingConfig;
6
6
  export declare const DEFAULT_OPTIONS: SharedContextOptionsV2;
7
- /** Merge partial overrides onto the shared V2 defaults. */
7
+ /**
8
+ * Merge partial overrides onto the shared V2 defaults, discarding numeric
9
+ * overrides that are not finite and non-negative.
10
+ *
11
+ * Overrides originate in the `ai.context-v2.options` LaunchDarkly payload,
12
+ * which reaches the plugin cast to `Partial<ContextOptionsV2>` rather than
13
+ * parsed, so any numeric field can arrive as NaN or negative. Every consumer
14
+ * does arithmetic on these, and NaN propagates silently: a NaN `contextLimit`
15
+ * makes {@link compactionThresholdTokens} NaN, which makes every
16
+ * `input > threshold` comparison false and stops compaction firing at all.
17
+ * Validating here - the one place a partial payload becomes a full config -
18
+ * covers every field, so no consumer needs its own guard.
19
+ */
8
20
  export declare function resolveContextOptionsV2(overrides?: Partial<ContextOptionsV2>): ContextOptionsV2;
9
21
  /**
10
22
  * Token budget below which client-side compaction triggers. Shared by the
@@ -1 +1 @@
1
- {"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../../../../src/ai-service/llm/context-v2/config.ts"],"names":[],"mappings":"AAAA,OAAO,EAEL,KAAK,gBAAgB,IAAI,sBAAsB,EAChD,MAAM,uCAAuC,CAAC;AAM/C,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,YAAY,CAAC;AAEhD,MAAM,MAAM,gBAAgB,GAAG,sBAAsB,CAAC;AACtD,YAAY,EAAE,aAAa,EAAE,CAAC;AAE9B,eAAO,MAAM,eAAe,EAAE,aAG7B,CAAC;AAEF,eAAO,MAAM,eAAe,wBAA6B,CAAC;AAE1D,2DAA2D;AAC3D,wBAAgB,uBAAuB,CACrC,SAAS,CAAC,EAAE,OAAO,CAAC,gBAAgB,CAAC,GACpC,gBAAgB,CAElB;AAED;;;;GAIG;AACH,wBAAgB,yBAAyB,CACvC,SAAS,CAAC,EAAE,OAAO,CAAC,gBAAgB,CAAC,GACpC,MAAM,CAKR"}
1
+ {"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../../../../src/ai-service/llm/context-v2/config.ts"],"names":[],"mappings":"AAAA,OAAO,EAEL,KAAK,gBAAgB,IAAI,sBAAsB,EAChD,MAAM,uCAAuC,CAAC;AAM/C,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,YAAY,CAAC;AAEhD,MAAM,MAAM,gBAAgB,GAAG,sBAAsB,CAAC;AACtD,YAAY,EAAE,aAAa,EAAE,CAAC;AAE9B,eAAO,MAAM,eAAe,EAAE,aAG7B,CAAC;AAEF,eAAO,MAAM,eAAe,wBAA6B,CAAC;AAE1D;;;;;;;;;;;;GAYG;AACH,wBAAgB,uBAAuB,CACrC,SAAS,CAAC,EAAE,OAAO,CAAC,gBAAgB,CAAC,GACpC,gBAAgB,CAiDlB;AAaD;;;;GAIG;AACH,wBAAgB,yBAAyB,CACvC,SAAS,CAAC,EAAE,OAAO,CAAC,gBAAgB,CAAC,GACpC,MAAM,CAKR"}
@@ -5,9 +5,46 @@ export const DEFAULT_CACHING = {
5
5
  minCacheableTokens: PROVIDER_CACHE_MIN_CACHEABLE_TOKENS,
6
6
  };
7
7
  export const DEFAULT_OPTIONS = DEFAULT_CONTEXT_OPTIONS_V2;
8
- /** Merge partial overrides onto the shared V2 defaults. */
8
+ /**
9
+ * Merge partial overrides onto the shared V2 defaults, discarding numeric
10
+ * overrides that are not finite and non-negative.
11
+ *
12
+ * Overrides originate in the `ai.context-v2.options` LaunchDarkly payload,
13
+ * which reaches the plugin cast to `Partial<ContextOptionsV2>` rather than
14
+ * parsed, so any numeric field can arrive as NaN or negative. Every consumer
15
+ * does arithmetic on these, and NaN propagates silently: a NaN `contextLimit`
16
+ * makes {@link compactionThresholdTokens} NaN, which makes every
17
+ * `input > threshold` comparison false and stops compaction firing at all.
18
+ * Validating here - the one place a partial payload becomes a full config -
19
+ * covers every field, so no consumer needs its own guard.
20
+ */
9
21
  export function resolveContextOptionsV2(overrides) {
10
- return { ...DEFAULT_OPTIONS, ...overrides };
22
+ if (!overrides) {
23
+ return { ...DEFAULT_OPTIONS };
24
+ }
25
+ // Spelled out field by field rather than looped so a new option cannot be
26
+ // added to ContextOptionsV2 without deciding how it is validated.
27
+ return {
28
+ contextLimit: validNumber(overrides.contextLimit, DEFAULT_OPTIONS.contextLimit),
29
+ contextBufferTokens: validNumber(overrides.contextBufferTokens, DEFAULT_OPTIONS.contextBufferTokens),
30
+ maxOutputTokens: validNumber(overrides.maxOutputTokens, DEFAULT_OPTIONS.maxOutputTokens),
31
+ phase1Enabled: validBoolean(overrides.phase1Enabled, DEFAULT_OPTIONS.phase1Enabled),
32
+ phase1MinPruneable: validNumber(overrides.phase1MinPruneable, DEFAULT_OPTIONS.phase1MinPruneable),
33
+ phase1ProtectedTokens: validNumber(overrides.phase1ProtectedTokens, DEFAULT_OPTIONS.phase1ProtectedTokens),
34
+ phase1ProtectedToolUseCount: validNumber(overrides.phase1ProtectedToolUseCount, DEFAULT_OPTIONS.phase1ProtectedToolUseCount),
35
+ phase2Enabled: validBoolean(overrides.phase2Enabled, DEFAULT_OPTIONS.phase2Enabled),
36
+ phase2TargetRatio: validNumber(overrides.phase2TargetRatio, DEFAULT_OPTIONS.phase2TargetRatio),
37
+ reArmDeltaTokens: validNumber(overrides.reArmDeltaTokens, DEFAULT_OPTIONS.reArmDeltaTokens),
38
+ };
39
+ }
40
+ /** Every numeric option is a token budget, a count, or a ratio - all >= 0. */
41
+ function validNumber(value, fallback) {
42
+ return typeof value === "number" && Number.isFinite(value) && value >= 0
43
+ ? value
44
+ : fallback;
45
+ }
46
+ function validBoolean(value, fallback) {
47
+ return typeof value === "boolean" ? value : fallback;
11
48
  }
12
49
  /**
13
50
  * Token budget below which client-side compaction triggers. Shared by the
@@ -1 +1 @@
1
- {"version":3,"file":"config.js","sourceRoot":"","sources":["../../../../src/ai-service/llm/context-v2/config.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,0BAA0B,GAE3B,MAAM,uCAAuC,CAAC;AAE/C,OAAO,EACL,8BAA8B,EAC9B,mCAAmC,GACpC,MAAM,YAAY,CAAC;AAMpB,MAAM,CAAC,MAAM,eAAe,GAAkB;IAC5C,cAAc,EAAE,8BAA8B;IAC9C,kBAAkB,EAAE,mCAAmC;CACxD,CAAC;AAEF,MAAM,CAAC,MAAM,eAAe,GAAG,0BAA0B,CAAC;AAE1D,2DAA2D;AAC3D,MAAM,UAAU,uBAAuB,CACrC,SAAqC;IAErC,OAAO,EAAE,GAAG,eAAe,EAAE,GAAG,SAAS,EAAE,CAAC;AAC9C,CAAC;AAED;;;;GAIG;AACH,MAAM,UAAU,yBAAyB,CACvC,SAAqC;IAErC,MAAM,MAAM,GAAG,uBAAuB,CAAC,SAAS,CAAC,CAAC;IAClD,OAAO,CACL,MAAM,CAAC,YAAY,GAAG,MAAM,CAAC,eAAe,GAAG,MAAM,CAAC,mBAAmB,CAC1E,CAAC;AACJ,CAAC"}
1
+ {"version":3,"file":"config.js","sourceRoot":"","sources":["../../../../src/ai-service/llm/context-v2/config.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,0BAA0B,GAE3B,MAAM,uCAAuC,CAAC;AAE/C,OAAO,EACL,8BAA8B,EAC9B,mCAAmC,GACpC,MAAM,YAAY,CAAC;AAMpB,MAAM,CAAC,MAAM,eAAe,GAAkB;IAC5C,cAAc,EAAE,8BAA8B;IAC9C,kBAAkB,EAAE,mCAAmC;CACxD,CAAC;AAEF,MAAM,CAAC,MAAM,eAAe,GAAG,0BAA0B,CAAC;AAE1D;;;;;;;;;;;;GAYG;AACH,MAAM,UAAU,uBAAuB,CACrC,SAAqC;IAErC,IAAI,CAAC,SAAS,EAAE,CAAC;QACf,OAAO,EAAE,GAAG,eAAe,EAAE,CAAC;IAChC,CAAC;IAED,0EAA0E;IAC1E,kEAAkE;IAClE,OAAO;QACL,YAAY,EAAE,WAAW,CACvB,SAAS,CAAC,YAAY,EACtB,eAAe,CAAC,YAAY,CAC7B;QACD,mBAAmB,EAAE,WAAW,CAC9B,SAAS,CAAC,mBAAmB,EAC7B,eAAe,CAAC,mBAAmB,CACpC;QACD,eAAe,EAAE,WAAW,CAC1B,SAAS,CAAC,eAAe,EACzB,eAAe,CAAC,eAAe,CAChC;QACD,aAAa,EAAE,YAAY,CACzB,SAAS,CAAC,aAAa,EACvB,eAAe,CAAC,aAAa,CAC9B;QACD,kBAAkB,EAAE,WAAW,CAC7B,SAAS,CAAC,kBAAkB,EAC5B,eAAe,CAAC,kBAAkB,CACnC;QACD,qBAAqB,EAAE,WAAW,CAChC,SAAS,CAAC,qBAAqB,EAC/B,eAAe,CAAC,qBAAqB,CACtC;QACD,2BAA2B,EAAE,WAAW,CACtC,SAAS,CAAC,2BAA2B,EACrC,eAAe,CAAC,2BAA2B,CAC5C;QACD,aAAa,EAAE,YAAY,CACzB,SAAS,CAAC,aAAa,EACvB,eAAe,CAAC,aAAa,CAC9B;QACD,iBAAiB,EAAE,WAAW,CAC5B,SAAS,CAAC,iBAAiB,EAC3B,eAAe,CAAC,iBAAiB,CAClC;QACD,gBAAgB,EAAE,WAAW,CAC3B,SAAS,CAAC,gBAAgB,EAC1B,eAAe,CAAC,gBAAgB,CACjC;KACF,CAAC;AACJ,CAAC;AAED,8EAA8E;AAC9E,SAAS,WAAW,CAAC,KAAyB,EAAE,QAAgB;IAC9D,OAAO,OAAO,KAAK,KAAK,QAAQ,IAAI,MAAM,CAAC,QAAQ,CAAC,KAAK,CAAC,IAAI,KAAK,IAAI,CAAC;QACtE,CAAC,CAAC,KAAK;QACP,CAAC,CAAC,QAAQ,CAAC;AACf,CAAC;AAED,SAAS,YAAY,CAAC,KAA0B,EAAE,QAAiB;IACjE,OAAO,OAAO,KAAK,KAAK,SAAS,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,QAAQ,CAAC;AACvD,CAAC;AAED;;;;GAIG;AACH,MAAM,UAAU,yBAAyB,CACvC,SAAqC;IAErC,MAAM,MAAM,GAAG,uBAAuB,CAAC,SAAS,CAAC,CAAC;IAClD,OAAO,CACL,MAAM,CAAC,YAAY,GAAG,MAAM,CAAC,eAAe,GAAG,MAAM,CAAC,mBAAmB,CAC1E,CAAC;AACJ,CAAC"}
@@ -13,11 +13,30 @@ export declare const CONTEXT_DOCUMENT_MODES: readonly ["inline", "reference"];
13
13
  type ContextDocumentMode = (typeof CONTEXT_DOCUMENT_MODES)[number];
14
14
  export declare const COMPACTION_PATHS: readonly ["client", "server"];
15
15
  export type CompactionPath = (typeof COMPACTION_PATHS)[number];
16
+ /** Why a client-side compaction was skipped instead of running. */
17
+ export declare const COMPACTION_SKIP_REASONS: readonly ["rearm_latch"];
18
+ export type CompactionSkipReason = (typeof COMPACTION_SKIP_REASONS)[number];
16
19
  export declare const SERVER_COMPACTION_STATUSES: readonly ["cancelled", "completed", "interrupted"];
17
20
  type ServerCompactionStatus = (typeof SERVER_COMPACTION_STATUSES)[number];
18
21
  /** Outcome of persisting a prompt's uploaded attachments into the context. */
19
22
  export declare const ATTACHMENT_PERSIST_STATUSES: readonly ["failure", "success"];
20
23
  type AttachmentPersistStatus = (typeof ATTACHMENT_PERSIST_STATUSES)[number];
24
+ /**
25
+ * Final outcome of a checkpoint restore (version rollback). Low-cardinality so
26
+ * the rare failure branches are countable/alertable instead of only appearing
27
+ * as log lines:
28
+ * - `restored`: context rolled back and the server chat truncated to match.
29
+ * - `chat_truncate_failed`: context rolled back but the server chat truncation
30
+ * failed after retries — context and chat diverge (needs attention).
31
+ * - `aborted`: the event-log truncation threw; the rollback was not confirmed
32
+ * (warm path: nothing was mutated; cold path: the archive was installed but
33
+ * could not be truncated).
34
+ * - `unhealed`: the snapshot could not be made consistent, so the rollback was
35
+ * not applied and the chat was preserved.
36
+ * - `no_checkpoint`: the cold (remote) restore found no checkpoint to install.
37
+ */
38
+ export declare const CHECKPOINT_RESTORE_OUTCOMES: readonly ["aborted", "chat_truncate_failed", "no_checkpoint", "restored", "unhealed"];
39
+ export type CheckpointRestoreOutcome = (typeof CHECKPOINT_RESTORE_OUTCOMES)[number];
21
40
  export interface ContextMetricIdentity {
22
41
  applicationId?: string;
23
42
  organizationId?: string;
@@ -37,6 +56,7 @@ export declare function recordContextLoadOutcome(input: {
37
56
  source: ContextLoadSource;
38
57
  }): void;
39
58
  export declare function recordContextRestoreEmptyCreated(): void;
59
+ export declare function recordCheckpointRestore(outcome: CheckpointRestoreOutcome): void;
40
60
  export declare function recordContextFileBytes(input: {
41
61
  operation: ContextFileOperation;
42
62
  bytes: number;
@@ -60,6 +80,9 @@ export declare function recordCompaction(input: {
60
80
  path: CompactionPath;
61
81
  status: ServerCompactionStatus;
62
82
  } & ContextMetricIdentity): void;
83
+ export declare function recordCompactionSkipped(input: {
84
+ reason: CompactionSkipReason;
85
+ }): void;
63
86
  export declare function recordContextOccupancy(tokens: number): void;
64
87
  export declare function recordPromptContextHeadroom(input: {
65
88
  dedupeKey: string | undefined;
@@ -1 +1 @@
1
- {"version":3,"file":"context-metrics.d.ts","sourceRoot":"","sources":["../../../../src/ai-service/llm/context-v2/context-metrics.ts"],"names":[],"mappings":"AAmDA,0EAA0E;AAC1E,eAAO,MAAM,oBAAoB,4DAMvB,CAAC;AACX,MAAM,MAAM,iBAAiB,GAAG,CAAC,OAAO,oBAAoB,CAAC,CAAC,MAAM,CAAC,CAAC;AAEtE,sEAAsE;AACtE,eAAO,MAAM,wBAAwB,sFAO3B,CAAC;AACX,MAAM,MAAM,qBAAqB,GAAG,CAAC,OAAO,wBAAwB,CAAC,CAAC,MAAM,CAAC,CAAC;AAE9E,eAAO,MAAM,qBAAqB,uGAMxB,CAAC;AACX,MAAM,MAAM,kBAAkB,GAAG,CAAC,OAAO,qBAAqB,CAAC,CAAC,MAAM,CAAC,CAAC;AAExE,iEAAiE;AACjE,eAAO,MAAM,uBAAuB,8BAA+B,CAAC;AACpE,KAAK,oBAAoB,GAAG,CAAC,OAAO,uBAAuB,CAAC,CAAC,MAAM,CAAC,CAAC;AAErE,eAAO,MAAM,sBAAsB,kCAAmC,CAAC;AACvE,KAAK,mBAAmB,GAAG,CAAC,OAAO,sBAAsB,CAAC,CAAC,MAAM,CAAC,CAAC;AAEnE,eAAO,MAAM,gBAAgB,+BAAgC,CAAC;AAC9D,MAAM,MAAM,cAAc,GAAG,CAAC,OAAO,gBAAgB,CAAC,CAAC,MAAM,CAAC,CAAC;AAE/D,eAAO,MAAM,0BAA0B,oDAI7B,CAAC;AACX,KAAK,sBAAsB,GAAG,CAAC,OAAO,0BAA0B,CAAC,CAAC,MAAM,CAAC,CAAC;AAE1E,8EAA8E;AAC9E,eAAO,MAAM,2BAA2B,iCAAkC,CAAC;AAC3E,KAAK,uBAAuB,GAAG,CAAC,OAAO,2BAA2B,CAAC,CAAC,MAAM,CAAC,CAAC;AAE5E,MAAM,WAAW,qBAAqB;IACpC,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,cAAc,CAAC,EAAE,MAAM,CAAC;CACzB;AAkjBD,wBAAgB,iBAAiB,CAAC,KAAK,EAAE;IACvC,MAAM,EAAE,iBAAiB,CAAC;IAC1B,UAAU,EAAE,MAAM,CAAC;IACnB,QAAQ,CAAC,EAAE,qBAAqB,CAAC;CAClC,GAAG,IAAI,CAEP;AAED,wBAAgB,oBAAoB,CAAC,KAAK,EAAE;IAC1C,OAAO,EAAE,qBAAqB,CAAC;IAC/B,UAAU,EAAE,MAAM,CAAC;IACnB,QAAQ,CAAC,EAAE,qBAAqB,CAAC;CAClC,GAAG,IAAI,CAEP;AAED,wBAAgB,wBAAwB,CAAC,KAAK,EAAE;IAC9C,OAAO,EAAE,kBAAkB,CAAC;IAC5B,MAAM,EAAE,iBAAiB,CAAC;CAC3B,GAAG,IAAI,CAEP;AAED,wBAAgB,gCAAgC,IAAI,IAAI,CAEvD;AAED,wBAAgB,sBAAsB,CAAC,KAAK,EAAE;IAC5C,SAAS,EAAE,oBAAoB,CAAC;IAChC,KAAK,EAAE,MAAM,CAAC;IACd,QAAQ,CAAC,EAAE,qBAAqB,CAAC;CAClC,GAAG,IAAI,CAEP;AAED,wBAAgB,sBAAsB,CAAC,KAAK,EAAE;IAC5C,KAAK,EAAE,MAAM,CAAC;IACd,OAAO,EAAE,MAAM,CAAC;IAChB,OAAO,EAAE,MAAM,CAAC;IAChB,IAAI,EAAE,mBAAmB,CAAC;CAC3B,GAAG,IAAI,CAEP;AAED,wBAAgB,uBAAuB,CAAC,KAAK,EAAE;IAC7C,MAAM,EAAE,uBAAuB,CAAC;CACjC,GAAG,IAAI,CAEP;AAED,wBAAgB,gBAAgB,CAC9B,KAAK,EAAE;IACL,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,IAAI,EAAE,cAAc,CAAC;IACrB,MAAM,EAAE,sBAAsB,CAAC;CAChC,GAAG,qBAAqB,GACxB,IAAI,CAON;AAED,wBAAgB,sBAAsB,CAAC,MAAM,EAAE,MAAM,GAAG,IAAI,CAE3D;AAED,wBAAgB,2BAA2B,CAAC,KAAK,EAAE;IACjD,SAAS,EAAE,MAAM,GAAG,SAAS,CAAC;IAC9B,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B,eAAe,CAAC,EAAE,MAAM,CAAC;CAC1B,GAAG,IAAI,CASP;AAED,wBAAgB,8BAA8B,CAAC,KAAK,EAAE,MAAM,GAAG,IAAI,CAElE;AAED,wBAAgB,sBAAsB,CACpC,KAAK,EAAE;IACL,MAAM,EAAE,sBAAsB,CAAC;IAC/B,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B,gBAAgB,CAAC,EAAE,MAAM,CAAC;CAC3B,GAAG,qBAAqB,GACxB,IAAI,CAON;AAED,wBAAgB,yBAAyB,CACvC,KAAK,EAAE;IACL,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,kBAAkB,CAAC,EAAE,MAAM,CAAC;CAC7B,GAAG,qBAAqB,GACxB,IAAI,CAON;AAED,wBAAgB,mCAAmC,IAAI,IAAI,CAE1D"}
1
+ {"version":3,"file":"context-metrics.d.ts","sourceRoot":"","sources":["../../../../src/ai-service/llm/context-v2/context-metrics.ts"],"names":[],"mappings":"AAuDA,0EAA0E;AAC1E,eAAO,MAAM,oBAAoB,4DAMvB,CAAC;AACX,MAAM,MAAM,iBAAiB,GAAG,CAAC,OAAO,oBAAoB,CAAC,CAAC,MAAM,CAAC,CAAC;AAEtE,sEAAsE;AACtE,eAAO,MAAM,wBAAwB,sFAO3B,CAAC;AACX,MAAM,MAAM,qBAAqB,GAAG,CAAC,OAAO,wBAAwB,CAAC,CAAC,MAAM,CAAC,CAAC;AAE9E,eAAO,MAAM,qBAAqB,uGAMxB,CAAC;AACX,MAAM,MAAM,kBAAkB,GAAG,CAAC,OAAO,qBAAqB,CAAC,CAAC,MAAM,CAAC,CAAC;AAExE,iEAAiE;AACjE,eAAO,MAAM,uBAAuB,8BAA+B,CAAC;AACpE,KAAK,oBAAoB,GAAG,CAAC,OAAO,uBAAuB,CAAC,CAAC,MAAM,CAAC,CAAC;AAErE,eAAO,MAAM,sBAAsB,kCAAmC,CAAC;AACvE,KAAK,mBAAmB,GAAG,CAAC,OAAO,sBAAsB,CAAC,CAAC,MAAM,CAAC,CAAC;AAEnE,eAAO,MAAM,gBAAgB,+BAAgC,CAAC;AAC9D,MAAM,MAAM,cAAc,GAAG,CAAC,OAAO,gBAAgB,CAAC,CAAC,MAAM,CAAC,CAAC;AAE/D,mEAAmE;AACnE,eAAO,MAAM,uBAAuB,0BAA2B,CAAC;AAChE,MAAM,MAAM,oBAAoB,GAAG,CAAC,OAAO,uBAAuB,CAAC,CAAC,MAAM,CAAC,CAAC;AAE5E,eAAO,MAAM,0BAA0B,oDAI7B,CAAC;AACX,KAAK,sBAAsB,GAAG,CAAC,OAAO,0BAA0B,CAAC,CAAC,MAAM,CAAC,CAAC;AAE1E,8EAA8E;AAC9E,eAAO,MAAM,2BAA2B,iCAAkC,CAAC;AAC3E,KAAK,uBAAuB,GAAG,CAAC,OAAO,2BAA2B,CAAC,CAAC,MAAM,CAAC,CAAC;AAE5E;;;;;;;;;;;;;GAaG;AACH,eAAO,MAAM,2BAA2B,uFAM9B,CAAC;AACX,MAAM,MAAM,wBAAwB,GAClC,CAAC,OAAO,2BAA2B,CAAC,CAAC,MAAM,CAAC,CAAC;AAE/C,MAAM,WAAW,qBAAqB;IACpC,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,cAAc,CAAC,EAAE,MAAM,CAAC;CACzB;AA4kBD,wBAAgB,iBAAiB,CAAC,KAAK,EAAE;IACvC,MAAM,EAAE,iBAAiB,CAAC;IAC1B,UAAU,EAAE,MAAM,CAAC;IACnB,QAAQ,CAAC,EAAE,qBAAqB,CAAC;CAClC,GAAG,IAAI,CAEP;AAED,wBAAgB,oBAAoB,CAAC,KAAK,EAAE;IAC1C,OAAO,EAAE,qBAAqB,CAAC;IAC/B,UAAU,EAAE,MAAM,CAAC;IACnB,QAAQ,CAAC,EAAE,qBAAqB,CAAC;CAClC,GAAG,IAAI,CAEP;AAED,wBAAgB,wBAAwB,CAAC,KAAK,EAAE;IAC9C,OAAO,EAAE,kBAAkB,CAAC;IAC5B,MAAM,EAAE,iBAAiB,CAAC;CAC3B,GAAG,IAAI,CAEP;AAED,wBAAgB,gCAAgC,IAAI,IAAI,CAEvD;AAED,wBAAgB,uBAAuB,CACrC,OAAO,EAAE,wBAAwB,GAChC,IAAI,CAEN;AAED,wBAAgB,sBAAsB,CAAC,KAAK,EAAE;IAC5C,SAAS,EAAE,oBAAoB,CAAC;IAChC,KAAK,EAAE,MAAM,CAAC;IACd,QAAQ,CAAC,EAAE,qBAAqB,CAAC;CAClC,GAAG,IAAI,CAEP;AAED,wBAAgB,sBAAsB,CAAC,KAAK,EAAE;IAC5C,KAAK,EAAE,MAAM,CAAC;IACd,OAAO,EAAE,MAAM,CAAC;IAChB,OAAO,EAAE,MAAM,CAAC;IAChB,IAAI,EAAE,mBAAmB,CAAC;CAC3B,GAAG,IAAI,CAEP;AAED,wBAAgB,uBAAuB,CAAC,KAAK,EAAE;IAC7C,MAAM,EAAE,uBAAuB,CAAC;CACjC,GAAG,IAAI,CAEP;AAED,wBAAgB,gBAAgB,CAC9B,KAAK,EAAE;IACL,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,IAAI,EAAE,cAAc,CAAC;IACrB,MAAM,EAAE,sBAAsB,CAAC;CAChC,GAAG,qBAAqB,GACxB,IAAI,CAON;AAED,wBAAgB,uBAAuB,CAAC,KAAK,EAAE;IAC7C,MAAM,EAAE,oBAAoB,CAAC;CAC9B,GAAG,IAAI,CAEP;AAED,wBAAgB,sBAAsB,CAAC,MAAM,EAAE,MAAM,GAAG,IAAI,CAE3D;AAED,wBAAgB,2BAA2B,CAAC,KAAK,EAAE;IACjD,SAAS,EAAE,MAAM,GAAG,SAAS,CAAC;IAC9B,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B,eAAe,CAAC,EAAE,MAAM,CAAC;CAC1B,GAAG,IAAI,CASP;AAED,wBAAgB,8BAA8B,CAAC,KAAK,EAAE,MAAM,GAAG,IAAI,CAElE;AAED,wBAAgB,sBAAsB,CACpC,KAAK,EAAE;IACL,MAAM,EAAE,sBAAsB,CAAC;IAC/B,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B,gBAAgB,CAAC,EAAE,MAAM,CAAC;CAC3B,GAAG,qBAAqB,GACxB,IAAI,CAON;AAED,wBAAgB,yBAAyB,CACvC,KAAK,EAAE;IACL,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,kBAAkB,CAAC,EAAE,MAAM,CAAC;CAC7B,GAAG,qBAAqB,GACxB,IAAI,CAON;AAED,wBAAgB,mCAAmC,IAAI,IAAI,CAE1D"}