@superblocksteam/vite-plugin-file-sync 2.0.77 → 2.0.78-next.1

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 (307) hide show
  1. package/dist/ai-service/agent/prompts/build-base-system-prompt.d.ts.map +1 -1
  2. package/dist/ai-service/agent/prompts/build-base-system-prompt.js +26 -0
  3. package/dist/ai-service/agent/prompts/build-base-system-prompt.js.map +1 -1
  4. package/dist/ai-service/agent/tool-message-utils.d.ts.map +1 -1
  5. package/dist/ai-service/agent/tool-message-utils.js +13 -0
  6. package/dist/ai-service/agent/tool-message-utils.js.map +1 -1
  7. package/dist/ai-service/agent/tools/apis/api-executor.d.ts.map +1 -1
  8. package/dist/ai-service/agent/tools/apis/api-executor.js +102 -7
  9. package/dist/ai-service/agent/tools/apis/api-executor.js.map +1 -1
  10. package/dist/ai-service/agent/tools/apis/build-api-artifact.d.ts +17 -0
  11. package/dist/ai-service/agent/tools/apis/build-api-artifact.d.ts.map +1 -1
  12. package/dist/ai-service/agent/tools/apis/build-api-artifact.js +20 -12
  13. package/dist/ai-service/agent/tools/apis/build-api-artifact.js.map +1 -1
  14. package/dist/ai-service/agent/tools/apis/build-api.d.ts.map +1 -1
  15. package/dist/ai-service/agent/tools/apis/build-api.js +9 -1
  16. package/dist/ai-service/agent/tools/apis/build-api.js.map +1 -1
  17. package/dist/ai-service/agent/tools/apis/get-api-docs.d.ts +46 -0
  18. package/dist/ai-service/agent/tools/apis/get-api-docs.d.ts.map +1 -1
  19. package/dist/ai-service/agent/tools/apis/get-api-docs.js +326 -58
  20. package/dist/ai-service/agent/tools/apis/get-api-docs.js.map +1 -1
  21. package/dist/ai-service/agent/tools/apis/integration-types.d.ts +20 -1
  22. package/dist/ai-service/agent/tools/apis/integration-types.d.ts.map +1 -1
  23. package/dist/ai-service/agent/tools/apis/integration-types.js +1033 -288
  24. package/dist/ai-service/agent/tools/apis/integration-types.js.map +1 -1
  25. package/dist/ai-service/agent/tools/apis/test-api.d.ts +1 -1
  26. package/dist/ai-service/agent/tools/apis/write-api.d.ts +2 -2
  27. package/dist/ai-service/agent/tools/build-manage-checklist.d.ts +1 -1
  28. package/dist/ai-service/agent/tools/build-read-file.d.ts +1 -1
  29. package/dist/ai-service/agent/tools/integrations/execute-request.d.ts +1 -1
  30. package/dist/ai-service/agent/tools/integrations/metadata.js +1 -1
  31. package/dist/ai-service/agent/tools/integrations/metadata.js.map +1 -1
  32. package/dist/ai-service/agent/tools.d.ts.map +1 -1
  33. package/dist/ai-service/agent/tools.js +18 -10
  34. package/dist/ai-service/agent/tools.js.map +1 -1
  35. package/dist/ai-service/agent/tools2/tools/ask-multi-choice.d.ts.map +1 -1
  36. package/dist/ai-service/agent/tools2/tools/ask-multi-choice.js +11 -7
  37. package/dist/ai-service/agent/tools2/tools/ask-multi-choice.js.map +1 -1
  38. package/dist/ai-service/agent/tools2/tools/exit-plan-mode.d.ts.map +1 -1
  39. package/dist/ai-service/agent/tools2/tools/exit-plan-mode.js +27 -5
  40. package/dist/ai-service/agent/tools2/tools/exit-plan-mode.js.map +1 -1
  41. package/dist/ai-service/agent/tools2/tools/grep-metadata-ripgrep.d.ts.map +1 -1
  42. package/dist/ai-service/agent/tools2/tools/grep-metadata-ripgrep.js +78 -7
  43. package/dist/ai-service/agent/tools2/tools/grep-metadata-ripgrep.js.map +1 -1
  44. package/dist/ai-service/agent/tools2/tools/grep-metadata.d.ts +6 -2
  45. package/dist/ai-service/agent/tools2/tools/grep-metadata.d.ts.map +1 -1
  46. package/dist/ai-service/agent/tools2/tools/grep-metadata.js +26 -0
  47. package/dist/ai-service/agent/tools2/tools/grep-metadata.js.map +1 -1
  48. package/dist/ai-service/agent/tools2/tools/index.d.ts +2 -0
  49. package/dist/ai-service/agent/tools2/tools/index.d.ts.map +1 -1
  50. package/dist/ai-service/agent/tools2/tools/index.js +2 -0
  51. package/dist/ai-service/agent/tools2/tools/index.js.map +1 -1
  52. package/dist/ai-service/agent/tools2/tools/list-attachments.d.ts.map +1 -1
  53. package/dist/ai-service/agent/tools2/tools/list-attachments.js +2 -3
  54. package/dist/ai-service/agent/tools2/tools/list-attachments.js.map +1 -1
  55. package/dist/ai-service/agent/tools2/tools/start-test-run.d.ts.map +1 -1
  56. package/dist/ai-service/agent/tools2/tools/start-test-run.js +51 -6
  57. package/dist/ai-service/agent/tools2/tools/start-test-run.js.map +1 -1
  58. package/dist/ai-service/agent/tools2/tools/web-fetch.d.ts +28 -0
  59. package/dist/ai-service/agent/tools2/tools/web-fetch.d.ts.map +1 -0
  60. package/dist/ai-service/agent/tools2/tools/web-fetch.js +274 -0
  61. package/dist/ai-service/agent/tools2/tools/web-fetch.js.map +1 -0
  62. package/dist/ai-service/agent/tools2/tools/web-search.d.ts +25 -0
  63. package/dist/ai-service/agent/tools2/tools/web-search.d.ts.map +1 -0
  64. package/dist/ai-service/agent/tools2/tools/web-search.js +210 -0
  65. package/dist/ai-service/agent/tools2/tools/web-search.js.map +1 -0
  66. package/dist/ai-service/attachments/store.d.ts +4 -4
  67. package/dist/ai-service/attachments/store.d.ts.map +1 -1
  68. package/dist/ai-service/attachments/store.js.map +1 -1
  69. package/dist/ai-service/chat/chat-session-store.d.ts +19 -4
  70. package/dist/ai-service/chat/chat-session-store.d.ts.map +1 -1
  71. package/dist/ai-service/chat/chat-session-store.js +32 -6
  72. package/dist/ai-service/chat/chat-session-store.js.map +1 -1
  73. package/dist/ai-service/clark-provider/clark-language-model.d.ts.map +1 -1
  74. package/dist/ai-service/clark-provider/clark-language-model.js +11 -2
  75. package/dist/ai-service/clark-provider/clark-language-model.js.map +1 -1
  76. package/dist/ai-service/const.d.ts +3 -2
  77. package/dist/ai-service/const.d.ts.map +1 -1
  78. package/dist/ai-service/const.js +3 -2
  79. package/dist/ai-service/const.js.map +1 -1
  80. package/dist/ai-service/context-download.d.ts +4 -1
  81. package/dist/ai-service/context-download.d.ts.map +1 -1
  82. package/dist/ai-service/context-download.js +36 -7
  83. package/dist/ai-service/context-download.js.map +1 -1
  84. package/dist/ai-service/features.d.ts +8 -0
  85. package/dist/ai-service/features.d.ts.map +1 -1
  86. package/dist/ai-service/features.js +8 -0
  87. package/dist/ai-service/features.js.map +1 -1
  88. package/dist/ai-service/index.d.ts +1 -0
  89. package/dist/ai-service/index.d.ts.map +1 -1
  90. package/dist/ai-service/index.js +101 -18
  91. package/dist/ai-service/index.js.map +1 -1
  92. package/dist/ai-service/integrations/store.d.ts +14 -2
  93. package/dist/ai-service/integrations/store.d.ts.map +1 -1
  94. package/dist/ai-service/integrations/store.js +19 -2
  95. package/dist/ai-service/integrations/store.js.map +1 -1
  96. package/dist/ai-service/judge/judge-eval-service-runner.d.ts.map +1 -1
  97. package/dist/ai-service/judge/judge-eval-service-runner.js +7 -0
  98. package/dist/ai-service/judge/judge-eval-service-runner.js.map +1 -1
  99. package/dist/ai-service/llm/client.d.ts +29 -11
  100. package/dist/ai-service/llm/client.d.ts.map +1 -1
  101. package/dist/ai-service/llm/client.js +95 -78
  102. package/dist/ai-service/llm/client.js.map +1 -1
  103. package/dist/ai-service/llm/context/context.d.ts +2 -1
  104. package/dist/ai-service/llm/context/context.d.ts.map +1 -1
  105. package/dist/ai-service/llm/context/context.js.map +1 -1
  106. package/dist/ai-service/llm/context/conversation-context.d.ts +89 -0
  107. package/dist/ai-service/llm/context/conversation-context.d.ts.map +1 -0
  108. package/dist/ai-service/llm/context/conversation-context.js +13 -0
  109. package/dist/ai-service/llm/context/conversation-context.js.map +1 -0
  110. package/dist/ai-service/llm/context/index.d.ts +1 -0
  111. package/dist/ai-service/llm/context/index.d.ts.map +1 -1
  112. package/dist/ai-service/llm/context/utils/get-loaded-context.d.ts +12 -0
  113. package/dist/ai-service/llm/context/utils/get-loaded-context.d.ts.map +1 -0
  114. package/dist/ai-service/llm/context/utils/get-loaded-context.js +7 -0
  115. package/dist/ai-service/llm/context/utils/get-loaded-context.js.map +1 -0
  116. package/dist/ai-service/llm/context/utils/index.d.ts +1 -5
  117. package/dist/ai-service/llm/context/utils/index.d.ts.map +1 -1
  118. package/dist/ai-service/llm/context/utils/index.js +1 -5
  119. package/dist/ai-service/llm/context/utils/index.js.map +1 -1
  120. package/dist/ai-service/llm/context-v2/adapter.d.ts +26 -0
  121. package/dist/ai-service/llm/context-v2/adapter.d.ts.map +1 -0
  122. package/dist/ai-service/llm/context-v2/adapter.js +88 -0
  123. package/dist/ai-service/llm/context-v2/adapter.js.map +1 -0
  124. package/dist/ai-service/llm/context-v2/caching.d.ts +39 -0
  125. package/dist/ai-service/llm/context-v2/caching.d.ts.map +1 -0
  126. package/dist/ai-service/llm/context-v2/caching.js +48 -0
  127. package/dist/ai-service/llm/context-v2/caching.js.map +1 -0
  128. package/dist/ai-service/llm/context-v2/compactor.d.ts +16 -0
  129. package/dist/ai-service/llm/context-v2/compactor.d.ts.map +1 -0
  130. package/dist/ai-service/llm/context-v2/compactor.js +164 -0
  131. package/dist/ai-service/llm/context-v2/compactor.js.map +1 -0
  132. package/dist/ai-service/llm/context-v2/config.d.ts +6 -0
  133. package/dist/ai-service/llm/context-v2/config.d.ts.map +1 -0
  134. package/dist/ai-service/llm/context-v2/config.js +8 -0
  135. package/dist/ai-service/llm/context-v2/config.js.map +1 -0
  136. package/dist/ai-service/llm/context-v2/context.d.ts +61 -0
  137. package/dist/ai-service/llm/context-v2/context.d.ts.map +1 -0
  138. package/dist/ai-service/llm/context-v2/context.js +238 -0
  139. package/dist/ai-service/llm/context-v2/context.js.map +1 -0
  140. package/dist/ai-service/llm/context-v2/index.d.ts +16 -0
  141. package/dist/ai-service/llm/context-v2/index.d.ts.map +1 -0
  142. package/dist/ai-service/llm/context-v2/index.js +16 -0
  143. package/dist/ai-service/llm/context-v2/index.js.map +1 -0
  144. package/dist/ai-service/llm/context-v2/manager.d.ts +57 -0
  145. package/dist/ai-service/llm/context-v2/manager.d.ts.map +1 -0
  146. package/dist/ai-service/llm/context-v2/manager.js +129 -0
  147. package/dist/ai-service/llm/context-v2/manager.js.map +1 -0
  148. package/dist/ai-service/llm/context-v2/migrations/index.d.ts +8 -0
  149. package/dist/ai-service/llm/context-v2/migrations/index.d.ts.map +1 -0
  150. package/dist/ai-service/llm/context-v2/migrations/index.js +8 -0
  151. package/dist/ai-service/llm/context-v2/migrations/index.js.map +1 -0
  152. package/dist/ai-service/llm/context-v2/migrations/registry.d.ts +19 -0
  153. package/dist/ai-service/llm/context-v2/migrations/registry.d.ts.map +1 -0
  154. package/dist/ai-service/llm/context-v2/migrations/registry.js +32 -0
  155. package/dist/ai-service/llm/context-v2/migrations/registry.js.map +1 -0
  156. package/dist/ai-service/llm/context-v2/migrations/runner.d.ts +3 -0
  157. package/dist/ai-service/llm/context-v2/migrations/runner.d.ts.map +1 -0
  158. package/dist/ai-service/llm/context-v2/migrations/runner.js +61 -0
  159. package/dist/ai-service/llm/context-v2/migrations/runner.js.map +1 -0
  160. package/dist/ai-service/llm/context-v2/migrations/types.d.ts +22 -0
  161. package/dist/ai-service/llm/context-v2/migrations/types.d.ts.map +1 -0
  162. package/dist/ai-service/llm/context-v2/migrations/types.js +33 -0
  163. package/dist/ai-service/llm/context-v2/migrations/types.js.map +1 -0
  164. package/dist/ai-service/llm/context-v2/migrations/v1-to-v2.d.ts +29 -0
  165. package/dist/ai-service/llm/context-v2/migrations/v1-to-v2.d.ts.map +1 -0
  166. package/dist/ai-service/llm/context-v2/migrations/v1-to-v2.js +143 -0
  167. package/dist/ai-service/llm/context-v2/migrations/v1-to-v2.js.map +1 -0
  168. package/dist/ai-service/llm/context-v2/operation-queue.d.ts +9 -0
  169. package/dist/ai-service/llm/context-v2/operation-queue.d.ts.map +1 -0
  170. package/dist/ai-service/llm/context-v2/operation-queue.js +13 -0
  171. package/dist/ai-service/llm/context-v2/operation-queue.js.map +1 -0
  172. package/dist/ai-service/llm/context-v2/phase1-tool-summarizer.d.ts +16 -0
  173. package/dist/ai-service/llm/context-v2/phase1-tool-summarizer.d.ts.map +1 -0
  174. package/dist/ai-service/llm/context-v2/phase1-tool-summarizer.js +135 -0
  175. package/dist/ai-service/llm/context-v2/phase1-tool-summarizer.js.map +1 -0
  176. package/dist/ai-service/llm/context-v2/phase2-session-summarizer.d.ts +20 -0
  177. package/dist/ai-service/llm/context-v2/phase2-session-summarizer.d.ts.map +1 -0
  178. package/dist/ai-service/llm/context-v2/phase2-session-summarizer.js +213 -0
  179. package/dist/ai-service/llm/context-v2/phase2-session-summarizer.js.map +1 -0
  180. package/dist/ai-service/llm/context-v2/prompts/compaction.d.ts +11 -0
  181. package/dist/ai-service/llm/context-v2/prompts/compaction.d.ts.map +1 -0
  182. package/dist/ai-service/llm/context-v2/prompts/compaction.js +57 -0
  183. package/dist/ai-service/llm/context-v2/prompts/compaction.js.map +1 -0
  184. package/dist/ai-service/llm/context-v2/session-capture.d.ts +18 -0
  185. package/dist/ai-service/llm/context-v2/session-capture.d.ts.map +1 -0
  186. package/dist/ai-service/llm/context-v2/session-capture.js +64 -0
  187. package/dist/ai-service/llm/context-v2/session-capture.js.map +1 -0
  188. package/dist/ai-service/llm/context-v2/storage/index.d.ts +14 -0
  189. package/dist/ai-service/llm/context-v2/storage/index.d.ts.map +1 -0
  190. package/dist/ai-service/llm/context-v2/storage/index.js +2 -0
  191. package/dist/ai-service/llm/context-v2/storage/index.js.map +1 -0
  192. package/dist/ai-service/llm/context-v2/storage/local.d.ts +25 -0
  193. package/dist/ai-service/llm/context-v2/storage/local.d.ts.map +1 -0
  194. package/dist/ai-service/llm/context-v2/storage/local.js +71 -0
  195. package/dist/ai-service/llm/context-v2/storage/local.js.map +1 -0
  196. package/dist/ai-service/llm/context-v2/storage/types.d.ts +12 -0
  197. package/dist/ai-service/llm/context-v2/storage/types.d.ts.map +1 -0
  198. package/dist/ai-service/llm/context-v2/storage/types.js +2 -0
  199. package/dist/ai-service/llm/context-v2/storage/types.js.map +1 -0
  200. package/dist/ai-service/llm/context-v2/token-tracker.d.ts +4 -0
  201. package/dist/ai-service/llm/context-v2/token-tracker.d.ts.map +1 -0
  202. package/dist/ai-service/llm/context-v2/token-tracker.js +13 -0
  203. package/dist/ai-service/llm/context-v2/token-tracker.js.map +1 -0
  204. package/dist/ai-service/llm/context-v2/truncation-fallback.d.ts +10 -0
  205. package/dist/ai-service/llm/context-v2/truncation-fallback.d.ts.map +1 -0
  206. package/dist/ai-service/llm/context-v2/truncation-fallback.js +120 -0
  207. package/dist/ai-service/llm/context-v2/truncation-fallback.js.map +1 -0
  208. package/dist/ai-service/llm/context-v2/turns.d.ts +23 -0
  209. package/dist/ai-service/llm/context-v2/turns.d.ts.map +1 -0
  210. package/dist/ai-service/llm/context-v2/turns.js +61 -0
  211. package/dist/ai-service/llm/context-v2/turns.js.map +1 -0
  212. package/dist/ai-service/llm/context-v2/types.d.ts +100 -0
  213. package/dist/ai-service/llm/context-v2/types.d.ts.map +1 -0
  214. package/dist/ai-service/llm/context-v2/types.js +262 -0
  215. package/dist/ai-service/llm/context-v2/types.js.map +1 -0
  216. package/dist/ai-service/llm/error.d.ts +4 -0
  217. package/dist/ai-service/llm/error.d.ts.map +1 -1
  218. package/dist/ai-service/llm/error.js +26 -0
  219. package/dist/ai-service/llm/error.js.map +1 -1
  220. package/dist/ai-service/llm/impl/clark.d.ts.map +1 -1
  221. package/dist/ai-service/llm/impl/clark.js +3 -2
  222. package/dist/ai-service/llm/impl/clark.js.map +1 -1
  223. package/dist/ai-service/llm/interaction/adapters/vercel.d.ts.map +1 -1
  224. package/dist/ai-service/llm/interaction/adapters/vercel.js +3 -1
  225. package/dist/ai-service/llm/interaction/adapters/vercel.js.map +1 -1
  226. package/dist/ai-service/llm/provider.d.ts +2 -2
  227. package/dist/ai-service/llm/provider.d.ts.map +1 -1
  228. package/dist/ai-service/llm/provider.js +2 -2
  229. package/dist/ai-service/llm/provider.js.map +1 -1
  230. package/dist/ai-service/llm/stream/event-bus.d.ts +1 -1
  231. package/dist/ai-service/llm/stream/event-bus.d.ts.map +1 -1
  232. package/dist/ai-service/llm/stream/observers/context.d.ts +2 -9
  233. package/dist/ai-service/llm/stream/observers/context.d.ts.map +1 -1
  234. package/dist/ai-service/llm/stream/observers/context.js +4 -4
  235. package/dist/ai-service/llm/stream/observers/context.js.map +1 -1
  236. package/dist/ai-service/llm/stream/observers/llmobs.d.ts.map +1 -1
  237. package/dist/ai-service/llm/stream/observers/llmobs.js +2 -1
  238. package/dist/ai-service/llm/stream/observers/llmobs.js.map +1 -1
  239. package/dist/ai-service/llm/stream/observers/logging.js +1 -1
  240. package/dist/ai-service/llm/stream/observers/logging.js.map +1 -1
  241. package/dist/ai-service/llm/stream/orchestrator.d.ts.map +1 -1
  242. package/dist/ai-service/llm/stream/orchestrator.js +22 -13
  243. package/dist/ai-service/llm/stream/orchestrator.js.map +1 -1
  244. package/dist/ai-service/llm/stream/session.d.ts +3 -0
  245. package/dist/ai-service/llm/stream/session.d.ts.map +1 -1
  246. package/dist/ai-service/llm/stream/session.js +2 -0
  247. package/dist/ai-service/llm/stream/session.js.map +1 -1
  248. package/dist/ai-service/llm/utils.d.ts +2 -2
  249. package/dist/ai-service/llm/utils.d.ts.map +1 -1
  250. package/dist/ai-service/llm/utils.js +27 -10
  251. package/dist/ai-service/llm/utils.js.map +1 -1
  252. package/dist/ai-service/llm/workflow-metrics.d.ts +14 -0
  253. package/dist/ai-service/llm/workflow-metrics.d.ts.map +1 -0
  254. package/dist/ai-service/llm/workflow-metrics.js +19 -0
  255. package/dist/ai-service/llm/workflow-metrics.js.map +1 -0
  256. package/dist/ai-service/security/safety-classifier.d.ts +2 -0
  257. package/dist/ai-service/security/safety-classifier.d.ts.map +1 -1
  258. package/dist/ai-service/security/safety-classifier.js +9 -6
  259. package/dist/ai-service/security/safety-classifier.js.map +1 -1
  260. package/dist/ai-service/state-machine/clark-fsm.d.ts +15 -0
  261. package/dist/ai-service/state-machine/clark-fsm.d.ts.map +1 -1
  262. package/dist/ai-service/state-machine/clark-fsm.js +3 -4
  263. package/dist/ai-service/state-machine/clark-fsm.js.map +1 -1
  264. package/dist/ai-service/state-machine/handlers/agent-planning.d.ts.map +1 -1
  265. package/dist/ai-service/state-machine/handlers/agent-planning.js +32 -18
  266. package/dist/ai-service/state-machine/handlers/agent-planning.js.map +1 -1
  267. package/dist/ai-service/state-machine/handlers/awaiting-user.d.ts.map +1 -1
  268. package/dist/ai-service/state-machine/handlers/awaiting-user.js +34 -0
  269. package/dist/ai-service/state-machine/handlers/awaiting-user.js.map +1 -1
  270. package/dist/ai-service/state-machine/handlers/idle.d.ts.map +1 -1
  271. package/dist/ai-service/state-machine/handlers/idle.js +6 -1
  272. package/dist/ai-service/state-machine/handlers/idle.js.map +1 -1
  273. package/dist/ai-service/state-machine/handlers/llm-generating.d.ts.map +1 -1
  274. package/dist/ai-service/state-machine/handlers/llm-generating.js +84 -1
  275. package/dist/ai-service/state-machine/handlers/llm-generating.js.map +1 -1
  276. package/dist/ai-service/state-machine/handlers/runtime-reviewing.d.ts.map +1 -1
  277. package/dist/ai-service/state-machine/handlers/runtime-reviewing.js +6 -1
  278. package/dist/ai-service/state-machine/handlers/runtime-reviewing.js.map +1 -1
  279. package/dist/ai-service/state-machine/helpers/peer.d.ts +7 -0
  280. package/dist/ai-service/state-machine/helpers/peer.d.ts.map +1 -1
  281. package/dist/ai-service/state-machine/helpers/peer.js +24 -8
  282. package/dist/ai-service/state-machine/helpers/peer.js.map +1 -1
  283. package/dist/ai-service/transform/api-builder/shared.d.ts +5 -0
  284. package/dist/ai-service/transform/api-builder/shared.d.ts.map +1 -1
  285. package/dist/ai-service/transform/api-builder/shared.js +13 -1
  286. package/dist/ai-service/transform/api-builder/shared.js.map +1 -1
  287. package/dist/ai-service/transform/api-builder/to-sdk-transformer.d.ts +11 -0
  288. package/dist/ai-service/transform/api-builder/to-sdk-transformer.d.ts.map +1 -1
  289. package/dist/ai-service/transform/api-builder/to-sdk-transformer.js +11 -4
  290. package/dist/ai-service/transform/api-builder/to-sdk-transformer.js.map +1 -1
  291. package/dist/ai-service/transform/api-builder/to-yaml-transformer.d.ts +4 -0
  292. package/dist/ai-service/transform/api-builder/to-yaml-transformer.d.ts.map +1 -1
  293. package/dist/ai-service/transform/api-builder/to-yaml-transformer.js +7 -0
  294. package/dist/ai-service/transform/api-builder/to-yaml-transformer.js.map +1 -1
  295. package/dist/binding-extraction/extract-identifiers.d.ts.map +1 -1
  296. package/dist/binding-extraction/extract-identifiers.js +39 -3
  297. package/dist/binding-extraction/extract-identifiers.js.map +1 -1
  298. package/dist/clark-log-forwarder.d.ts.map +1 -1
  299. package/dist/clark-log-forwarder.js +1 -0
  300. package/dist/clark-log-forwarder.js.map +1 -1
  301. package/dist/resolver.d.ts.map +1 -1
  302. package/dist/resolver.js +4 -1
  303. package/dist/resolver.js.map +1 -1
  304. package/dist/router-parser.d.ts.map +1 -1
  305. package/dist/router-parser.js +34 -9
  306. package/dist/router-parser.js.map +1 -1
  307. package/package.json +23 -18
@@ -0,0 +1,89 @@
1
+ /**
2
+ * Shared interface for conversation context implementations.
3
+ *
4
+ * Both v1 Context and v2 ContextV2Adapter must implement this interface
5
+ * to ensure compile-time parity and prevent feature drift.
6
+ *
7
+ * This interface defines the minimal set of methods required by:
8
+ * - LLMClient (setSystemPrompt, startTurn, getMessages, initializeWith, storeSummary)
9
+ * - ContextObserver (startStep, endStep, endTurn)
10
+ * - AttachmentsStore (setAttachments, getAttachments)
11
+ */
12
+ import type { CompactionSummary } from "./serialization.js";
13
+ import type { AttachmentsRecord } from "../../attachments/store.js";
14
+ import type { ModelMessage, UserModelMessage, SystemModelMessage, LanguageModelUsage } from "ai";
15
+ /**
16
+ * Core conversation context interface.
17
+ *
18
+ * Implementations:
19
+ * - Context (v1): Full-featured with three-level compaction
20
+ * - ContextV2Adapter (v2): Wrapper around ContextV2 with phase-based compaction
21
+ */
22
+ export interface ConversationContext {
23
+ /**
24
+ * Sets the system prompt for the conversation.
25
+ */
26
+ setSystemPrompt(prompt: SystemModelMessage): void;
27
+ /**
28
+ * Starts a new conversation turn with a user message.
29
+ * May be async in v2 implementation.
30
+ */
31
+ startTurn(user: UserModelMessage): void | Promise<void>;
32
+ /**
33
+ * Starts a new step within the active turn.
34
+ * Called before each LLM inference cycle.
35
+ */
36
+ startStep(): void;
37
+ /**
38
+ * Ends the current step, recording response messages.
39
+ * @param responses - Accumulated assistant/tool messages for the step
40
+ * @param usage - Optional token usage for compaction decisions
41
+ */
42
+ endStep(responses: ModelMessage[], usage?: LanguageModelUsage): void | Promise<void>;
43
+ /**
44
+ * Ends the active turn.
45
+ * @param usage - Optional final token usage
46
+ */
47
+ endTurn(usage?: LanguageModelUsage): void;
48
+ /**
49
+ * Returns all messages in the conversation (system + history).
50
+ * May be async in v2 implementation.
51
+ */
52
+ getMessages(): ModelMessage[] | Promise<ModelMessage[]>;
53
+ /**
54
+ * Initializes the context with existing messages.
55
+ * Used for ephemeral contexts that need pre-existing conversation history.
56
+ * May be async in v2 implementation.
57
+ */
58
+ initializeWith(messages: ModelMessage[]): void | Promise<void>;
59
+ /**
60
+ * Stores a tool call summary for use during compaction.
61
+ * Summaries are used to provide meaningful placeholders when
62
+ * tool outputs are compressed.
63
+ */
64
+ storeSummary(toolCallId: string, summary: CompactionSummary): void;
65
+ /**
66
+ * Sets the attachments record for the context.
67
+ * Used by AttachmentsStore to persist user-uploaded files.
68
+ */
69
+ setAttachments(attachments: AttachmentsRecord): void;
70
+ /**
71
+ * Gets the attachments record from the context.
72
+ * Returns undefined if no attachments have been set.
73
+ */
74
+ getAttachments(): AttachmentsRecord | undefined;
75
+ /**
76
+ * Truncates all messages after a given timestamp.
77
+ * Messages without timestamps are never truncated (treated as permanent).
78
+ */
79
+ truncateAfterTimestamp(timestamp: number): void;
80
+ }
81
+ /**
82
+ * Handle for a context instance with release capability.
83
+ * Used by ContextObserver to manage context lifecycle.
84
+ */
85
+ export interface ContextHandle {
86
+ context: ConversationContext;
87
+ release(): void;
88
+ }
89
+ //# sourceMappingURL=conversation-context.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"conversation-context.d.ts","sourceRoot":"","sources":["../../../../src/ai-service/llm/context/conversation-context.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AAEH,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,oBAAoB,CAAC;AAC5D,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,4BAA4B,CAAC;AACpE,OAAO,KAAK,EACV,YAAY,EACZ,gBAAgB,EAChB,kBAAkB,EAClB,kBAAkB,EACnB,MAAM,IAAI,CAAC;AAEZ;;;;;;GAMG;AACH,MAAM,WAAW,mBAAmB;IAClC;;OAEG;IACH,eAAe,CAAC,MAAM,EAAE,kBAAkB,GAAG,IAAI,CAAC;IAElD;;;OAGG;IACH,SAAS,CAAC,IAAI,EAAE,gBAAgB,GAAG,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAExD;;;OAGG;IACH,SAAS,IAAI,IAAI,CAAC;IAElB;;;;OAIG;IACH,OAAO,CACL,SAAS,EAAE,YAAY,EAAE,EACzB,KAAK,CAAC,EAAE,kBAAkB,GACzB,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAExB;;;OAGG;IACH,OAAO,CAAC,KAAK,CAAC,EAAE,kBAAkB,GAAG,IAAI,CAAC;IAE1C;;;OAGG;IACH,WAAW,IAAI,YAAY,EAAE,GAAG,OAAO,CAAC,YAAY,EAAE,CAAC,CAAC;IAExD;;;;OAIG;IACH,cAAc,CAAC,QAAQ,EAAE,YAAY,EAAE,GAAG,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAE/D;;;;OAIG;IACH,YAAY,CAAC,UAAU,EAAE,MAAM,EAAE,OAAO,EAAE,iBAAiB,GAAG,IAAI,CAAC;IAEnE;;;OAGG;IACH,cAAc,CAAC,WAAW,EAAE,iBAAiB,GAAG,IAAI,CAAC;IAErD;;;OAGG;IACH,cAAc,IAAI,iBAAiB,GAAG,SAAS,CAAC;IAEhD;;;OAGG;IACH,sBAAsB,CAAC,SAAS,EAAE,MAAM,GAAG,IAAI,CAAC;CACjD;AAED;;;GAGG;AACH,MAAM,WAAW,aAAa;IAC5B,OAAO,EAAE,mBAAmB,CAAC;IAC7B,OAAO,IAAI,IAAI,CAAC;CACjB"}
@@ -0,0 +1,13 @@
1
+ /**
2
+ * Shared interface for conversation context implementations.
3
+ *
4
+ * Both v1 Context and v2 ContextV2Adapter must implement this interface
5
+ * to ensure compile-time parity and prevent feature drift.
6
+ *
7
+ * This interface defines the minimal set of methods required by:
8
+ * - LLMClient (setSystemPrompt, startTurn, getMessages, initializeWith, storeSummary)
9
+ * - ContextObserver (startStep, endStep, endTurn)
10
+ * - AttachmentsStore (setAttachments, getAttachments)
11
+ */
12
+ export {};
13
+ //# sourceMappingURL=conversation-context.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"conversation-context.js","sourceRoot":"","sources":["../../../../src/ai-service/llm/context/conversation-context.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG"}
@@ -14,4 +14,5 @@ export { ContextLockManager, ContextLockError, ContextNotOwnedError, type Contex
14
14
  export { loadContextConfigFromEnv, type ContextConfig } from "./config.js";
15
15
  export { UserPromptTooLargeError, ContextLimitExceededError, } from "./errors.js";
16
16
  export * from "./types.js";
17
+ export type { ConversationContext, ContextHandle as ConversationContextHandle, } from "./conversation-context.js";
17
18
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/ai-service/llm/context/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAGH,OAAO,EAAE,OAAO,EAAE,MAAM,cAAc,CAAC;AACvC,OAAO,EAAE,cAAc,EAAE,MAAM,cAAc,CAAC;AAG9C,OAAO,EACL,aAAa,EACb,qBAAqB,EACrB,KAAK,qBAAqB,GAC3B,MAAM,qBAAqB,CAAC;AAE7B,OAAO,EACL,kBAAkB,EAClB,gBAAgB,EAChB,oBAAoB,EACpB,KAAK,WAAW,GACjB,MAAM,mBAAmB,CAAC;AAG3B,OAAO,EAAE,wBAAwB,EAAE,KAAK,aAAa,EAAE,MAAM,aAAa,CAAC;AAG3E,OAAO,EACL,uBAAuB,EACvB,yBAAyB,GAC1B,MAAM,aAAa,CAAC;AAGrB,cAAc,YAAY,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/ai-service/llm/context/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAGH,OAAO,EAAE,OAAO,EAAE,MAAM,cAAc,CAAC;AACvC,OAAO,EAAE,cAAc,EAAE,MAAM,cAAc,CAAC;AAG9C,OAAO,EACL,aAAa,EACb,qBAAqB,EACrB,KAAK,qBAAqB,GAC3B,MAAM,qBAAqB,CAAC;AAE7B,OAAO,EACL,kBAAkB,EAClB,gBAAgB,EAChB,oBAAoB,EACpB,KAAK,WAAW,GACjB,MAAM,mBAAmB,CAAC;AAG3B,OAAO,EAAE,wBAAwB,EAAE,KAAK,aAAa,EAAE,MAAM,aAAa,CAAC;AAG3E,OAAO,EACL,uBAAuB,EACvB,yBAAyB,GAC1B,MAAM,aAAa,CAAC;AAGrB,cAAc,YAAY,CAAC;AAG3B,YAAY,EACV,mBAAmB,EACnB,aAAa,IAAI,yBAAyB,GAC3C,MAAM,2BAA2B,CAAC"}
@@ -0,0 +1,12 @@
1
+ import type { Clark, ClarkStateHandlerParams } from "../../../state-machine/clark-fsm.js";
2
+ import type { ContextV2 } from "../../context-v2/context.js";
3
+ import type { ContextManagerV2 } from "../../context-v2/manager.js";
4
+ import type { Context } from "../context.js";
5
+ import type { ContextManager } from "../manager.js";
6
+ export type LoadedContext = Context | ContextV2;
7
+ export interface ContextManagers {
8
+ contextManager: ContextManager;
9
+ contextManagerV2?: ContextManagerV2;
10
+ }
11
+ export declare function getActiveContext(clark: Clark, services: ContextManagers & Pick<ClarkStateHandlerParams, "applicationId">): LoadedContext | undefined;
12
+ //# sourceMappingURL=get-loaded-context.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"get-loaded-context.d.ts","sourceRoot":"","sources":["../../../../../src/ai-service/llm/context/utils/get-loaded-context.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EACV,KAAK,EACL,uBAAuB,EACxB,MAAM,qCAAqC,CAAC;AAC7C,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,6BAA6B,CAAC;AAC7D,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,6BAA6B,CAAC;AACpE,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,eAAe,CAAC;AAC7C,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,eAAe,CAAC;AAEpD,MAAM,MAAM,aAAa,GAAG,OAAO,GAAG,SAAS,CAAC;AAEhD,MAAM,WAAW,eAAe;IAC9B,cAAc,EAAE,cAAc,CAAC;IAC/B,gBAAgB,CAAC,EAAE,gBAAgB,CAAC;CACrC;AAED,wBAAgB,gBAAgB,CAC9B,KAAK,EAAE,KAAK,EACZ,QAAQ,EAAE,eAAe,GAAG,IAAI,CAAC,uBAAuB,EAAE,eAAe,CAAC,GACzE,aAAa,GAAG,SAAS,CAM3B"}
@@ -0,0 +1,7 @@
1
+ import { getContextId } from "../../../state-machine/helpers/context-id.js";
2
+ export function getActiveContext(clark, services) {
3
+ const contextId = getContextId(clark, services);
4
+ return (services.contextManagerV2?.getLoadedContext(contextId) ??
5
+ services.contextManager.getLoadedContext(contextId));
6
+ }
7
+ //# sourceMappingURL=get-loaded-context.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"get-loaded-context.js","sourceRoot":"","sources":["../../../../../src/ai-service/llm/context/utils/get-loaded-context.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,8CAA8C,CAAC;AAiB5E,MAAM,UAAU,gBAAgB,CAC9B,KAAY,EACZ,QAA0E;IAE1E,MAAM,SAAS,GAAG,YAAY,CAAC,KAAK,EAAE,QAAQ,CAAC,CAAC;IAChD,OAAO,CACL,QAAQ,CAAC,gBAAgB,EAAE,gBAAgB,CAAC,SAAS,CAAC;QACtD,QAAQ,CAAC,cAAc,CAAC,gBAAgB,CAAC,SAAS,CAAC,CACpD,CAAC;AACJ,CAAC"}
@@ -1,10 +1,6 @@
1
- /**
2
- * Utility function exports for context management.
3
- *
4
- * Internal utilities used by Context and Turn classes.
5
- */
6
1
  export { estimateTokenCount, countChars as countChars, } from "./token-estimation.js";
7
2
  export { compactContent } from "./content-compaction.js";
8
3
  export { normalizeToolResultOutput } from "./message-utils.js";
9
4
  export { renderContext } from "./visualization.js";
5
+ export { getActiveContext, type LoadedContext, type ContextManagers, } from "./get-loaded-context.js";
10
6
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../src/ai-service/llm/context/utils/index.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EACL,kBAAkB,EAClB,UAAU,IAAI,UAAU,GACzB,MAAM,uBAAuB,CAAC;AAC/B,OAAO,EAAE,cAAc,EAAE,MAAM,yBAAyB,CAAC;AACzD,OAAO,EAAE,yBAAyB,EAAE,MAAM,oBAAoB,CAAC;AAC/D,OAAO,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../src/ai-service/llm/context/utils/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,kBAAkB,EAClB,UAAU,IAAI,UAAU,GACzB,MAAM,uBAAuB,CAAC;AAC/B,OAAO,EAAE,cAAc,EAAE,MAAM,yBAAyB,CAAC;AACzD,OAAO,EAAE,yBAAyB,EAAE,MAAM,oBAAoB,CAAC;AAC/D,OAAO,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAC;AACnD,OAAO,EACL,gBAAgB,EAChB,KAAK,aAAa,EAClB,KAAK,eAAe,GACrB,MAAM,yBAAyB,CAAC"}
@@ -1,10 +1,6 @@
1
- /**
2
- * Utility function exports for context management.
3
- *
4
- * Internal utilities used by Context and Turn classes.
5
- */
6
1
  export { estimateTokenCount, countChars as countChars, } from "./token-estimation.js";
7
2
  export { compactContent } from "./content-compaction.js";
8
3
  export { normalizeToolResultOutput } from "./message-utils.js";
9
4
  export { renderContext } from "./visualization.js";
5
+ export { getActiveContext, } from "./get-loaded-context.js";
10
6
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../src/ai-service/llm/context/utils/index.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EACL,kBAAkB,EAClB,UAAU,IAAI,UAAU,GACzB,MAAM,uBAAuB,CAAC;AAC/B,OAAO,EAAE,cAAc,EAAE,MAAM,yBAAyB,CAAC;AACzD,OAAO,EAAE,yBAAyB,EAAE,MAAM,oBAAoB,CAAC;AAC/D,OAAO,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../src/ai-service/llm/context/utils/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,kBAAkB,EAClB,UAAU,IAAI,UAAU,GACzB,MAAM,uBAAuB,CAAC;AAC/B,OAAO,EAAE,cAAc,EAAE,MAAM,yBAAyB,CAAC;AACzD,OAAO,EAAE,yBAAyB,EAAE,MAAM,oBAAoB,CAAC;AAC/D,OAAO,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAC;AACnD,OAAO,EACL,gBAAgB,GAGjB,MAAM,yBAAyB,CAAC"}
@@ -0,0 +1,26 @@
1
+ import type { ContextV2 } from "./context.js";
2
+ import type { CompactionCallbacks } from "./types.js";
3
+ import type { AttachmentsRecord } from "../../attachments/store.js";
4
+ import type { ConversationContext } from "../context/conversation-context.js";
5
+ import type { CompactionSummary } from "../context/serialization.js";
6
+ import type { ModelMessage, UserModelMessage, SystemModelMessage, LanguageModelUsage } from "ai";
7
+ export declare class ContextV2Adapter implements ConversationContext {
8
+ private v2;
9
+ private responseCount;
10
+ private lastUsage?;
11
+ private constructor();
12
+ static fromContext(context: ContextV2): ContextV2Adapter;
13
+ setSystemPrompt(prompt: SystemModelMessage): void;
14
+ initializeWith(messages: ModelMessage[]): Promise<void>;
15
+ startTurn(user: UserModelMessage): Promise<void>;
16
+ startStep(): void;
17
+ endStep(responses: ModelMessage[], usage?: LanguageModelUsage): Promise<void>;
18
+ endTurn(_usage?: LanguageModelUsage): void;
19
+ getMessages(): Promise<ModelMessage[]>;
20
+ storeSummary(toolCallId: string, summary: CompactionSummary): void;
21
+ setAttachments(attachments: AttachmentsRecord): void;
22
+ getAttachments(): AttachmentsRecord | undefined;
23
+ truncateAfterTimestamp(timestamp: number): void;
24
+ setCompactionCallbacks(callbacks: CompactionCallbacks | undefined): void;
25
+ }
26
+ //# sourceMappingURL=adapter.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"adapter.d.ts","sourceRoot":"","sources":["../../../../src/ai-service/llm/context-v2/adapter.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC;AAC9C,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,YAAY,CAAC;AACtD,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,4BAA4B,CAAC;AACpE,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,oCAAoC,CAAC;AAC9E,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,6BAA6B,CAAC;AACrE,OAAO,KAAK,EACV,YAAY,EACZ,gBAAgB,EAChB,kBAAkB,EAClB,kBAAkB,EACnB,MAAM,IAAI,CAAC;AAIZ,qBAAa,gBAAiB,YAAW,mBAAmB;IAC1D,OAAO,CAAC,EAAE,CAAY;IACtB,OAAO,CAAC,aAAa,CAAK;IAC1B,OAAO,CAAC,SAAS,CAAC,CAAqB;IAEvC,OAAO;IAIP,MAAM,CAAC,WAAW,CAAC,OAAO,EAAE,SAAS,GAAG,gBAAgB;IAIxD,eAAe,CAAC,MAAM,EAAE,kBAAkB,GAAG,IAAI;IAI3C,cAAc,CAAC,QAAQ,EAAE,YAAY,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC;IAiBvD,SAAS,CAAC,IAAI,EAAE,gBAAgB,GAAG,OAAO,CAAC,IAAI,CAAC;IAKtD,SAAS,IAAI,IAAI;IAIX,OAAO,CACX,SAAS,EAAE,YAAY,EAAE,EACzB,KAAK,CAAC,EAAE,kBAAkB,GACzB,OAAO,CAAC,IAAI,CAAC;IAgChB,OAAO,CAAC,MAAM,CAAC,EAAE,kBAAkB,GAAG,IAAI;IAIpC,WAAW,IAAI,OAAO,CAAC,YAAY,EAAE,CAAC;IAI5C,YAAY,CAAC,UAAU,EAAE,MAAM,EAAE,OAAO,EAAE,iBAAiB,GAAG,IAAI;IAIlE,cAAc,CAAC,WAAW,EAAE,iBAAiB,GAAG,IAAI;IAIpD,cAAc,IAAI,iBAAiB,GAAG,SAAS;IAI/C,sBAAsB,CAAC,SAAS,EAAE,MAAM,GAAG,IAAI;IAI/C,sBAAsB,CAAC,SAAS,EAAE,mBAAmB,GAAG,SAAS,GAAG,IAAI;CAGzE"}
@@ -0,0 +1,88 @@
1
+ import { getPrefixedLogger } from "../../../util/logger.js";
2
+ const logger = getPrefixedLogger("[context-v2-adapter]");
3
+ export class ContextV2Adapter {
4
+ v2;
5
+ responseCount = 0;
6
+ lastUsage;
7
+ constructor(context) {
8
+ this.v2 = context;
9
+ }
10
+ static fromContext(context) {
11
+ return new ContextV2Adapter(context);
12
+ }
13
+ setSystemPrompt(prompt) {
14
+ this.v2.setSystemPrompt(prompt);
15
+ }
16
+ async initializeWith(messages) {
17
+ // Add each message to the context
18
+ for (const msg of messages) {
19
+ if (msg.role === "user") {
20
+ await this.v2.addUserMessage(msg);
21
+ }
22
+ else if (msg.role === "assistant" || msg.role === "tool") {
23
+ // Not sure what we do for usage... for historical ModelMessages from the ai-sdk, we do not have real usage
24
+ const minimalUsage = {
25
+ inputTokens: 0,
26
+ outputTokens: 0,
27
+ totalTokens: 0,
28
+ };
29
+ await this.v2.addResponse(msg, minimalUsage, { skipCompaction: true });
30
+ }
31
+ }
32
+ }
33
+ async startTurn(user) {
34
+ await this.v2.addUserMessage(user);
35
+ this.responseCount = 0;
36
+ }
37
+ startStep() {
38
+ // No-op - v2 doesn't track step boundaries
39
+ }
40
+ async endStep(responses, usage) {
41
+ const newResponses = responses.slice(this.responseCount);
42
+ this.responseCount = responses.length;
43
+ if (!usage) {
44
+ logger.warn("endStep called without usage data - compaction may not trigger");
45
+ }
46
+ this.lastUsage = usage ?? this.lastUsage;
47
+ // at the very least, we will have some data. on the first turn, this is 0. in the future,
48
+ // either `usage` is defined and we will use that, or we will use the last usage.
49
+ const defaultUsage = this.lastUsage ?? {
50
+ inputTokens: 0,
51
+ outputTokens: 0,
52
+ totalTokens: 0,
53
+ };
54
+ // Only run compaction on the last response to avoid duplicate compaction
55
+ // with stale usage data
56
+ for (let i = 0; i < newResponses.length; i++) {
57
+ const response = newResponses[i];
58
+ const isLast = i === newResponses.length - 1;
59
+ if (response) {
60
+ await this.v2.addResponse(response, usage ?? defaultUsage, {
61
+ skipCompaction: !isLast,
62
+ });
63
+ }
64
+ }
65
+ }
66
+ endTurn(_usage) {
67
+ // No-op - v2 handles compaction automatically in addResponse
68
+ }
69
+ async getMessages() {
70
+ return this.v2.getMessages();
71
+ }
72
+ storeSummary(toolCallId, summary) {
73
+ this.v2.storeSummary(toolCallId, summary);
74
+ }
75
+ setAttachments(attachments) {
76
+ this.v2.setAttachments(attachments);
77
+ }
78
+ getAttachments() {
79
+ return this.v2.getAttachments();
80
+ }
81
+ truncateAfterTimestamp(timestamp) {
82
+ this.v2.truncateAfterTimestamp(timestamp);
83
+ }
84
+ setCompactionCallbacks(callbacks) {
85
+ this.v2.setCompactionCallbacks(callbacks);
86
+ }
87
+ }
88
+ //# sourceMappingURL=adapter.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"adapter.js","sourceRoot":"","sources":["../../../../src/ai-service/llm/context-v2/adapter.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,39 @@
1
+ /**
2
+ * Cache breakpoint calculation for prompt caching.
3
+ *
4
+ * Strategy based on Anthropic's recommendations for multi-turn conversations:
5
+ * - Cache system prompt (stable, high reuse across all requests)
6
+ * - Cache incrementally at the end of each turn (enables incremental caching)
7
+ *
8
+ * This approach is more effective than token-interval based placement because:
9
+ * 1. System prompts are identical across requests, maximizing cache hits
10
+ * 2. End-of-conversation caching enables incremental cache growth
11
+ * 3. We use our limited breakpoints (max 4) on meaningful content boundaries
12
+ *
13
+ * @see https://platform.claude.com/docs/en/build-with-claude/prompt-caching#continuing-a-multi-turn-conversation
14
+ */
15
+ import type { CachingConfig } from "./config.js";
16
+ import type { StoredMessage } from "./types.js";
17
+ /**
18
+ * Input for cache breakpoint calculation.
19
+ */
20
+ export interface CacheInput {
21
+ messages: StoredMessage[];
22
+ hasSystemPrompt: boolean;
23
+ config: CachingConfig;
24
+ }
25
+ /**
26
+ * Finds optimal cache breakpoint positions in message array.
27
+ *
28
+ * Strategy (per Anthropic's recommendation):
29
+ * - Always place breakpoint at system prompt (index 0) if present
30
+ * - Place breakpoint at the last message for incremental caching
31
+ *
32
+ * The system automatically checks backwards up to 20 blocks for cache hits,
33
+ * so we don't need to place breakpoints at intermediate positions.
34
+ *
35
+ * @see https://platform.claude.com/docs/en/build-with-claude/prompt-caching
36
+ * @returns Array of message indices where cache breakpoints should be placed
37
+ */
38
+ export declare function findBreakpoints(input: CacheInput): number[];
39
+ //# sourceMappingURL=caching.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"caching.d.ts","sourceRoot":"","sources":["../../../../src/ai-service/llm/context-v2/caching.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;GAaG;AAEH,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AACjD,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,YAAY,CAAC;AAEhD;;GAEG;AACH,MAAM,WAAW,UAAU;IACzB,QAAQ,EAAE,aAAa,EAAE,CAAC;IAC1B,eAAe,EAAE,OAAO,CAAC;IACzB,MAAM,EAAE,aAAa,CAAC;CACvB;AAED;;;;;;;;;;;;GAYG;AACH,wBAAgB,eAAe,CAAC,KAAK,EAAE,UAAU,GAAG,MAAM,EAAE,CAwB3D"}
@@ -0,0 +1,48 @@
1
+ /**
2
+ * Cache breakpoint calculation for prompt caching.
3
+ *
4
+ * Strategy based on Anthropic's recommendations for multi-turn conversations:
5
+ * - Cache system prompt (stable, high reuse across all requests)
6
+ * - Cache incrementally at the end of each turn (enables incremental caching)
7
+ *
8
+ * This approach is more effective than token-interval based placement because:
9
+ * 1. System prompts are identical across requests, maximizing cache hits
10
+ * 2. End-of-conversation caching enables incremental cache growth
11
+ * 3. We use our limited breakpoints (max 4) on meaningful content boundaries
12
+ *
13
+ * @see https://platform.claude.com/docs/en/build-with-claude/prompt-caching#continuing-a-multi-turn-conversation
14
+ */
15
+ /**
16
+ * Finds optimal cache breakpoint positions in message array.
17
+ *
18
+ * Strategy (per Anthropic's recommendation):
19
+ * - Always place breakpoint at system prompt (index 0) if present
20
+ * - Place breakpoint at the last message for incremental caching
21
+ *
22
+ * The system automatically checks backwards up to 20 blocks for cache hits,
23
+ * so we don't need to place breakpoints at intermediate positions.
24
+ *
25
+ * @see https://platform.claude.com/docs/en/build-with-claude/prompt-caching
26
+ * @returns Array of message indices where cache breakpoints should be placed
27
+ */
28
+ export function findBreakpoints(input) {
29
+ const { messages, hasSystemPrompt, config } = input;
30
+ const breakpoints = [];
31
+ if (messages.length === 0) {
32
+ return breakpoints;
33
+ }
34
+ let availableBreakpoints = config.maxBreakpoints;
35
+ // Always cache system prompt if present (stable, high reuse)
36
+ if (hasSystemPrompt && availableBreakpoints > 0) {
37
+ breakpoints.push(0);
38
+ availableBreakpoints -= 1;
39
+ }
40
+ // Cache at the end of the conversation for incremental caching
41
+ // This enables the conversation to grow while reusing cached prefixes
42
+ const lastIndex = messages.length - 1;
43
+ if (availableBreakpoints > 0 && lastIndex > 0) {
44
+ breakpoints.push(lastIndex);
45
+ }
46
+ return breakpoints;
47
+ }
48
+ //# sourceMappingURL=caching.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"caching.js","sourceRoot":"","sources":["../../../../src/ai-service/llm/context-v2/caching.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;GAaG;AAcH;;;;;;;;;;;;GAYG;AACH,MAAM,UAAU,eAAe,CAAC,KAAiB;IAC/C,MAAM,EAAE,QAAQ,EAAE,eAAe,EAAE,MAAM,EAAE,GAAG,KAAK,CAAC;IACpD,MAAM,WAAW,GAAa,EAAE,CAAC;IAEjC,IAAI,QAAQ,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QAC1B,OAAO,WAAW,CAAC;IACrB,CAAC;IAED,IAAI,oBAAoB,GAAG,MAAM,CAAC,cAAc,CAAC;IAEjD,6DAA6D;IAC7D,IAAI,eAAe,IAAI,oBAAoB,GAAG,CAAC,EAAE,CAAC;QAChD,WAAW,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QACpB,oBAAoB,IAAI,CAAC,CAAC;IAC5B,CAAC;IAED,+DAA+D;IAC/D,sEAAsE;IACtE,MAAM,SAAS,GAAG,QAAQ,CAAC,MAAM,GAAG,CAAC,CAAC;IACtC,IAAI,oBAAoB,GAAG,CAAC,IAAI,SAAS,GAAG,CAAC,EAAE,CAAC;QAC9C,WAAW,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;IAC9B,CAAC;IAED,OAAO,WAAW,CAAC;AACrB,CAAC"}
@@ -0,0 +1,16 @@
1
+ import { LLMObsTracer } from "../../llmobs/tracer.js";
2
+ import type { ContextOptionsV2 } from "./config.js";
3
+ import type { StoredMessage, CompactionResult, CompactionCallbacks } from "./types.js";
4
+ import type { LanguageModel, LanguageModelUsage } from "ai";
5
+ export interface CompactOptions {
6
+ messages: StoredMessage[];
7
+ usage: LanguageModelUsage;
8
+ model: LanguageModel;
9
+ rootDir: string;
10
+ config?: Partial<ContextOptionsV2>;
11
+ callbacks?: CompactionCallbacks;
12
+ tracer?: LLMObsTracer;
13
+ }
14
+ export declare function needsCompaction(usage: LanguageModelUsage, options: ContextOptionsV2): boolean;
15
+ export declare function compact(options: CompactOptions): Promise<CompactionResult>;
16
+ //# sourceMappingURL=compactor.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"compactor.d.ts","sourceRoot":"","sources":["../../../../src/ai-service/llm/context-v2/compactor.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,YAAY,EAAE,MAAM,wBAAwB,CAAC;AAStD,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,aAAa,CAAC;AACpD,OAAO,KAAK,EACV,aAAa,EACb,gBAAgB,EAChB,mBAAmB,EACpB,MAAM,YAAY,CAAC;AACpB,OAAO,KAAK,EAAE,aAAa,EAAE,kBAAkB,EAAE,MAAM,IAAI,CAAC;AAE5D,MAAM,WAAW,cAAc;IAC7B,QAAQ,EAAE,aAAa,EAAE,CAAC;IAC1B,KAAK,EAAE,kBAAkB,CAAC;IAC1B,KAAK,EAAE,aAAa,CAAC;IACrB,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,wBAAgB,eAAe,CAC7B,KAAK,EAAE,kBAAkB,EACzB,OAAO,EAAE,gBAAgB,GACxB,OAAO,CAET;AAED,wBAAsB,OAAO,CAC3B,OAAO,EAAE,cAAc,GACtB,OAAO,CAAC,gBAAgB,CAAC,CAkN3B"}
@@ -0,0 +1,164 @@
1
+ import { getPrefixedLogger } from "../../../util/logger.js";
2
+ import { LLMObsTracer } from "../../llmobs/tracer.js";
3
+ import { DEFAULT_OPTIONS } from "./config.js";
4
+ import { summarizeToolOutputs, calculatePruneableTokens, } from "./phase1-tool-summarizer.js";
5
+ import { summarizeSession } from "./phase2-session-summarizer.js";
6
+ import { captureSession } from "./session-capture.js";
7
+ import { isOverflow, getTotalTokens } from "./token-tracker.js";
8
+ const logger = getPrefixedLogger("[context-v2:compactor]");
9
+ export function needsCompaction(usage, options) {
10
+ return isOverflow(usage, options.contextLimit, options.maxOutputTokens);
11
+ }
12
+ export async function compact(options) {
13
+ const { messages, usage, model, config = {}, callbacks, tracer = LLMObsTracer.instance, rootDir, } = options;
14
+ return tracer.trace({ name: "context.compaction", kind: "task" }, async (compactionSpan) => {
15
+ const mergedOptions = {
16
+ ...DEFAULT_OPTIONS,
17
+ ...config,
18
+ };
19
+ const { contextLimit, maxOutputTokens, phase2TargetRatio, phase1Enabled, phase1MinPruneable, phase1ProtectedTokens, } = mergedOptions;
20
+ const initialTokens = getTotalTokens(usage);
21
+ const availableForInput = contextLimit - maxOutputTokens;
22
+ const targetTokens = Math.floor(availableForInput * phase2TargetRatio);
23
+ let currentMessages = messages;
24
+ let phase1Applied = false;
25
+ let phase2Applied = false;
26
+ let tokensSaved = 0;
27
+ captureSession({
28
+ messages,
29
+ usage,
30
+ }, rootDir);
31
+ const pruneableTokens = calculatePruneableTokens(messages, phase1ProtectedTokens);
32
+ if (phase1Enabled && pruneableTokens >= phase1MinPruneable) {
33
+ logger.info(`Phase 1: summarizing tool outputs (${pruneableTokens} pruneable tokens)`);
34
+ const phase1MessageId = crypto.randomUUID();
35
+ callbacks?.onCompactionStart?.("phase1", phase1MessageId);
36
+ const result = tracer.trace({ name: "context.compaction.phase1", kind: "task" }, (phase1Span) => {
37
+ const summarizeResult = summarizeToolOutputs({
38
+ messages: currentMessages,
39
+ protectedTokens: phase1ProtectedTokens,
40
+ });
41
+ const estimatedTokensAfter = initialTokens - pruneableTokens;
42
+ tracer.annotate(phase1Span, {
43
+ metadata: {
44
+ input: {
45
+ messageCount: currentMessages.length,
46
+ pruneableTokens,
47
+ },
48
+ config: {
49
+ protectedTokens: phase1ProtectedTokens,
50
+ },
51
+ result: {
52
+ summarizedCount: summarizeResult.summarizedCount,
53
+ estimatedTokensAfter,
54
+ sufficient: estimatedTokensAfter < targetTokens,
55
+ },
56
+ },
57
+ });
58
+ return summarizeResult;
59
+ });
60
+ currentMessages = result.messages;
61
+ phase1Applied = true;
62
+ logger.info(`Phase 1 complete: summarized ${result.summarizedCount} tool outputs`);
63
+ callbacks?.onCompactionComplete?.("phase1", phase1MessageId);
64
+ // After phase 1, we can't know exact token savings without another LLM call.
65
+ // We'll proceed to phase 2 if we still appear to be over target based on
66
+ // the pruneable tokens we identified.
67
+ const estimatedNewTokens = initialTokens - pruneableTokens;
68
+ if (estimatedNewTokens < targetTokens) {
69
+ tokensSaved = pruneableTokens;
70
+ tracer.annotate(compactionSpan, {
71
+ metadata: {
72
+ input: {
73
+ messageCount: messages.length,
74
+ tokens: initialTokens,
75
+ },
76
+ config: {
77
+ contextLimit,
78
+ maxOutputTokens,
79
+ targetTokens,
80
+ phase1Enabled,
81
+ phase1MinPruneable,
82
+ phase1ProtectedTokens,
83
+ phase2TargetRatio,
84
+ },
85
+ result: {
86
+ tokens: initialTokens - tokensSaved,
87
+ tokensSaved,
88
+ tokensSavedIsEstimate: true,
89
+ phase1Applied,
90
+ phase2Applied,
91
+ },
92
+ },
93
+ });
94
+ return {
95
+ messages: currentMessages,
96
+ phase1Applied,
97
+ phase2Applied,
98
+ tokensSaved,
99
+ };
100
+ }
101
+ }
102
+ logger.info("Phase 2: generating session summary");
103
+ const phase2MessageId = crypto.randomUUID();
104
+ callbacks?.onCompactionStart?.("phase2", phase2MessageId);
105
+ const summaryResult = await tracer.trace({ name: "context.compaction.phase2", kind: "task" }, async (phase2Span) => {
106
+ const result = await summarizeSession({
107
+ messages: currentMessages,
108
+ model,
109
+ targetTokens,
110
+ tracer,
111
+ });
112
+ tracer.annotate(phase2Span, {
113
+ metadata: {
114
+ input: {
115
+ messageCount: currentMessages.length,
116
+ },
117
+ result: {
118
+ messageCount: result.messages.length,
119
+ summary: result.summary,
120
+ summaryLength: result.summary.length,
121
+ },
122
+ },
123
+ });
124
+ return result;
125
+ });
126
+ phase2Applied = true;
127
+ currentMessages = summaryResult.messages;
128
+ const summaryTokens = summaryResult.messages.reduce((sum, msg) => sum + (msg._superblocks?.tokenCount ?? 100), 0);
129
+ tokensSaved = initialTokens - summaryTokens;
130
+ logger.info(`Phase 2 complete: ${initialTokens}→${summaryTokens} tokens (saved ${tokensSaved})`);
131
+ callbacks?.onCompactionComplete?.("phase2", phase2MessageId);
132
+ tracer.annotate(compactionSpan, {
133
+ metadata: {
134
+ input: {
135
+ messageCount: messages.length,
136
+ tokens: initialTokens,
137
+ },
138
+ config: {
139
+ contextLimit,
140
+ maxOutputTokens,
141
+ targetTokens,
142
+ phase1Enabled,
143
+ phase1MinPruneable,
144
+ phase1ProtectedTokens,
145
+ phase2TargetRatio,
146
+ },
147
+ result: {
148
+ tokens: summaryTokens,
149
+ tokensSaved,
150
+ tokensSavedIsEstimate: false,
151
+ phase1Applied,
152
+ phase2Applied,
153
+ },
154
+ },
155
+ });
156
+ return {
157
+ messages: currentMessages,
158
+ phase1Applied,
159
+ phase2Applied,
160
+ tokensSaved,
161
+ };
162
+ });
163
+ }
164
+ //# sourceMappingURL=compactor.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"compactor.js","sourceRoot":"","sources":["../../../../src/ai-service/llm/context-v2/compactor.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,6 @@
1
+ import { type ContextOptionsV2 } from "@superblocksteam/library-shared/types";
2
+ import type { CachingConfig } from "./types.js";
3
+ export type { CachingConfig, ContextOptionsV2 };
4
+ export declare const DEFAULT_CACHING: CachingConfig;
5
+ export declare const DEFAULT_OPTIONS: ContextOptionsV2;
6
+ //# sourceMappingURL=config.d.ts.map
@@ -0,0 +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,EACtB,MAAM,uCAAuC,CAAC;AAK/C,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,YAAY,CAAC;AAEhD,YAAY,EAAE,aAAa,EAAE,gBAAgB,EAAE,CAAC;AAEhD,eAAO,MAAM,eAAe,EAAE,aAG7B,CAAC;AAEF,eAAO,MAAM,eAAe,kBAA6B,CAAC"}
@@ -0,0 +1,8 @@
1
+ import { DEFAULT_CONTEXT_OPTIONS_V2, } from "@superblocksteam/library-shared/types";
2
+ import { PROVIDER_CACHE_MAX_BREAKPOINTS, PROVIDER_CACHE_MIN_CACHEABLE_TOKENS, } from "./types.js";
3
+ export const DEFAULT_CACHING = {
4
+ maxBreakpoints: PROVIDER_CACHE_MAX_BREAKPOINTS,
5
+ minCacheableTokens: PROVIDER_CACHE_MIN_CACHEABLE_TOKENS,
6
+ };
7
+ export const DEFAULT_OPTIONS = DEFAULT_CONTEXT_OPTIONS_V2;
8
+ //# sourceMappingURL=config.js.map