@superblocksteam/vite-plugin-file-sync 2.0.42 → 2.0.43-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 (456) hide show
  1. package/dist/ai-service/agent/prompts/build-base-system-prompt.d.ts +2 -1
  2. package/dist/ai-service/agent/prompts/build-base-system-prompt.d.ts.map +1 -1
  3. package/dist/ai-service/agent/prompts/build-base-system-prompt.js +31 -2
  4. package/dist/ai-service/agent/prompts/build-base-system-prompt.js.map +1 -1
  5. package/dist/ai-service/agent/subagents/apis/example-selector.d.ts +24 -0
  6. package/dist/ai-service/agent/subagents/apis/example-selector.d.ts.map +1 -0
  7. package/dist/ai-service/agent/subagents/apis/example-selector.js +104 -0
  8. package/dist/ai-service/agent/subagents/apis/example-selector.js.map +1 -0
  9. package/dist/ai-service/agent/subagents/apis/examples.d.ts +55 -0
  10. package/dist/ai-service/agent/subagents/apis/examples.d.ts.map +1 -0
  11. package/dist/ai-service/agent/subagents/apis/examples.js +1229 -0
  12. package/dist/ai-service/agent/subagents/apis/examples.js.map +1 -0
  13. package/dist/ai-service/agent/subagents/apis/generate-api-source.d.ts +83 -0
  14. package/dist/ai-service/agent/subagents/apis/generate-api-source.d.ts.map +1 -0
  15. package/dist/ai-service/agent/{apis.js → subagents/apis/generate-api-source.js} +141 -98
  16. package/dist/ai-service/agent/subagents/apis/generate-api-source.js.map +1 -0
  17. package/dist/ai-service/agent/subagents/apis/prompt-builder.d.ts +39 -0
  18. package/dist/ai-service/agent/subagents/apis/prompt-builder.d.ts.map +1 -0
  19. package/dist/ai-service/agent/subagents/apis/prompt-builder.js +115 -0
  20. package/dist/ai-service/agent/subagents/apis/prompt-builder.js.map +1 -0
  21. package/dist/ai-service/agent/subagents/apis/static-analysis.d.ts +2 -0
  22. package/dist/ai-service/agent/subagents/apis/static-analysis.d.ts.map +1 -0
  23. package/dist/ai-service/agent/subagents/apis/static-analysis.js +766 -0
  24. package/dist/ai-service/agent/subagents/apis/static-analysis.js.map +1 -0
  25. package/dist/ai-service/agent/subagents/apis/system-prompt.d.ts +3 -0
  26. package/dist/ai-service/agent/subagents/apis/system-prompt.d.ts.map +1 -0
  27. package/dist/ai-service/agent/{apis-system-prompt.js → subagents/apis/system-prompt.js} +127 -34
  28. package/dist/ai-service/agent/{apis-system-prompt.js.map → subagents/apis/system-prompt.js.map} +1 -1
  29. package/dist/ai-service/agent/tool-message-utils.d.ts +6 -16
  30. package/dist/ai-service/agent/tool-message-utils.d.ts.map +1 -1
  31. package/dist/ai-service/agent/tool-message-utils.js +75 -204
  32. package/dist/ai-service/agent/tool-message-utils.js.map +1 -1
  33. package/dist/ai-service/agent/tools/build-add-event.d.ts +2 -4
  34. package/dist/ai-service/agent/tools/build-add-event.d.ts.map +1 -1
  35. package/dist/ai-service/agent/tools/build-add-event.js +9 -8
  36. package/dist/ai-service/agent/tools/build-add-event.js.map +1 -1
  37. package/dist/ai-service/agent/tools/build-add-state-var.d.ts +2 -4
  38. package/dist/ai-service/agent/tools/build-add-state-var.d.ts.map +1 -1
  39. package/dist/ai-service/agent/tools/build-add-state-var.js +6 -5
  40. package/dist/ai-service/agent/tools/build-add-state-var.js.map +1 -1
  41. package/dist/ai-service/agent/tools/build-add-timer.d.ts +2 -4
  42. package/dist/ai-service/agent/tools/build-add-timer.d.ts.map +1 -1
  43. package/dist/ai-service/agent/tools/build-add-timer.js +7 -6
  44. package/dist/ai-service/agent/tools/build-add-timer.js.map +1 -1
  45. package/dist/ai-service/agent/tools/build-create-page.d.ts +2 -3
  46. package/dist/ai-service/agent/tools/build-create-page.d.ts.map +1 -1
  47. package/dist/ai-service/agent/tools/build-create-page.js +11 -10
  48. package/dist/ai-service/agent/tools/build-create-page.js.map +1 -1
  49. package/dist/ai-service/agent/tools/build-debug.d.ts +1 -3
  50. package/dist/ai-service/agent/tools/build-debug.d.ts.map +1 -1
  51. package/dist/ai-service/agent/tools/build-debug.js +7 -5
  52. package/dist/ai-service/agent/tools/build-debug.js.map +1 -1
  53. package/dist/ai-service/agent/tools/build-edit-file.d.ts +2 -4
  54. package/dist/ai-service/agent/tools/build-edit-file.d.ts.map +1 -1
  55. package/dist/ai-service/agent/tools/build-edit-file.js +10 -7
  56. package/dist/ai-service/agent/tools/build-edit-file.js.map +1 -1
  57. package/dist/ai-service/agent/tools/build-finalize.d.ts +2 -4
  58. package/dist/ai-service/agent/tools/build-finalize.d.ts.map +1 -1
  59. package/dist/ai-service/agent/tools/build-finalize.js +7 -6
  60. package/dist/ai-service/agent/tools/build-finalize.js.map +1 -1
  61. package/dist/ai-service/agent/tools/build-install-packages.d.ts +2 -4
  62. package/dist/ai-service/agent/tools/build-install-packages.d.ts.map +1 -1
  63. package/dist/ai-service/agent/tools/build-install-packages.js +7 -6
  64. package/dist/ai-service/agent/tools/build-install-packages.js.map +1 -1
  65. package/dist/ai-service/agent/tools/build-list-available-components.d.ts +3 -8
  66. package/dist/ai-service/agent/tools/build-list-available-components.d.ts.map +1 -1
  67. package/dist/ai-service/agent/tools/build-list-available-components.js +30 -9
  68. package/dist/ai-service/agent/tools/build-list-available-components.js.map +1 -1
  69. package/dist/ai-service/agent/tools/build-list-files.d.ts +2 -3
  70. package/dist/ai-service/agent/tools/build-list-files.d.ts.map +1 -1
  71. package/dist/ai-service/agent/tools/build-list-files.js +10 -8
  72. package/dist/ai-service/agent/tools/build-list-files.js.map +1 -1
  73. package/dist/ai-service/agent/tools/build-manage-checklist.d.ts +3 -3
  74. package/dist/ai-service/agent/tools/build-manage-checklist.d.ts.map +1 -1
  75. package/dist/ai-service/agent/tools/build-manage-checklist.js +9 -8
  76. package/dist/ai-service/agent/tools/build-manage-checklist.js.map +1 -1
  77. package/dist/ai-service/agent/tools/build-multi-edit-file.d.ts +2 -4
  78. package/dist/ai-service/agent/tools/build-multi-edit-file.d.ts.map +1 -1
  79. package/dist/ai-service/agent/tools/build-multi-edit-file.js +9 -6
  80. package/dist/ai-service/agent/tools/build-multi-edit-file.js.map +1 -1
  81. package/dist/ai-service/agent/tools/build-read-files.d.ts +2 -4
  82. package/dist/ai-service/agent/tools/build-read-files.d.ts.map +1 -1
  83. package/dist/ai-service/agent/tools/build-read-files.js +10 -8
  84. package/dist/ai-service/agent/tools/build-read-files.js.map +1 -1
  85. package/dist/ai-service/agent/tools/build-register-component-name.d.ts +2 -4
  86. package/dist/ai-service/agent/tools/build-register-component-name.d.ts.map +1 -1
  87. package/dist/ai-service/agent/tools/build-register-component-name.js +9 -8
  88. package/dist/ai-service/agent/tools/build-register-component-name.js.map +1 -1
  89. package/dist/ai-service/agent/tools/build-rename-page.d.ts +2 -3
  90. package/dist/ai-service/agent/tools/build-rename-page.d.ts.map +1 -1
  91. package/dist/ai-service/agent/tools/build-rename-page.js +6 -5
  92. package/dist/ai-service/agent/tools/build-rename-page.js.map +1 -1
  93. package/dist/ai-service/agent/tools/build-set-api-triggers.d.ts +2 -4
  94. package/dist/ai-service/agent/tools/build-set-api-triggers.d.ts.map +1 -1
  95. package/dist/ai-service/agent/tools/build-set-api-triggers.js +6 -5
  96. package/dist/ai-service/agent/tools/build-set-api-triggers.js.map +1 -1
  97. package/dist/ai-service/agent/tools/build-update-state-var.d.ts +2 -3
  98. package/dist/ai-service/agent/tools/build-update-state-var.d.ts.map +1 -1
  99. package/dist/ai-service/agent/tools/build-update-state-var.js +6 -5
  100. package/dist/ai-service/agent/tools/build-update-state-var.js.map +1 -1
  101. package/dist/ai-service/agent/tools/build-validate-icons.d.ts +2 -3
  102. package/dist/ai-service/agent/tools/build-validate-icons.d.ts.map +1 -1
  103. package/dist/ai-service/agent/tools/build-validate-icons.js +8 -6
  104. package/dist/ai-service/agent/tools/build-validate-icons.js.map +1 -1
  105. package/dist/ai-service/agent/tools/build-write-file.d.ts +2 -4
  106. package/dist/ai-service/agent/tools/build-write-file.d.ts.map +1 -1
  107. package/dist/ai-service/agent/tools/build-write-file.js +6 -5
  108. package/dist/ai-service/agent/tools/build-write-file.js.map +1 -1
  109. package/dist/ai-service/agent/tools/debug-cache.d.ts.map +1 -1
  110. package/dist/ai-service/agent/tools/debug-cache.js +4 -1
  111. package/dist/ai-service/agent/tools/debug-cache.js.map +1 -1
  112. package/dist/ai-service/agent/tools/index.d.ts +23 -20
  113. package/dist/ai-service/agent/tools/index.d.ts.map +1 -1
  114. package/dist/ai-service/agent/tools/index.js +23 -20
  115. package/dist/ai-service/agent/tools/index.js.map +1 -1
  116. package/dist/ai-service/agent/tools/integrations/execute-request.d.ts +25 -0
  117. package/dist/ai-service/agent/tools/integrations/execute-request.d.ts.map +1 -0
  118. package/dist/ai-service/agent/tools/integrations/execute-request.js +213 -0
  119. package/dist/ai-service/agent/tools/integrations/execute-request.js.map +1 -0
  120. package/dist/ai-service/agent/tools/integrations/index.d.ts +4 -0
  121. package/dist/ai-service/agent/tools/integrations/index.d.ts.map +1 -0
  122. package/dist/ai-service/agent/tools/integrations/index.js +4 -0
  123. package/dist/ai-service/agent/tools/integrations/index.js.map +1 -0
  124. package/dist/ai-service/agent/tools/integrations/internal.d.ts +3 -0
  125. package/dist/ai-service/agent/tools/integrations/internal.d.ts.map +1 -0
  126. package/dist/ai-service/agent/tools/integrations/internal.js +11 -0
  127. package/dist/ai-service/agent/tools/integrations/internal.js.map +1 -0
  128. package/dist/ai-service/agent/tools/integrations/metadata.d.ts +10 -0
  129. package/dist/ai-service/agent/tools/integrations/metadata.d.ts.map +1 -0
  130. package/dist/ai-service/agent/tools/integrations/metadata.js +80 -0
  131. package/dist/ai-service/agent/tools/integrations/metadata.js.map +1 -0
  132. package/dist/ai-service/agent/tools/integrations/run-code.d.ts +5 -0
  133. package/dist/ai-service/agent/tools/integrations/run-code.d.ts.map +1 -0
  134. package/dist/ai-service/agent/tools/integrations/run-code.js +32 -0
  135. package/dist/ai-service/agent/tools/integrations/run-code.js.map +1 -0
  136. package/dist/ai-service/agent/tools/study-current-app-state.d.ts +2 -4
  137. package/dist/ai-service/agent/tools/study-current-app-state.d.ts.map +1 -1
  138. package/dist/ai-service/agent/tools/study-current-app-state.js +10 -8
  139. package/dist/ai-service/agent/tools/study-current-app-state.js.map +1 -1
  140. package/dist/ai-service/agent/tools.d.ts +3 -280
  141. package/dist/ai-service/agent/tools.d.ts.map +1 -1
  142. package/dist/ai-service/agent/tools.js +68 -55
  143. package/dist/ai-service/agent/tools.js.map +1 -1
  144. package/dist/ai-service/agent/tools2/access-control.d.ts +119 -0
  145. package/dist/ai-service/agent/tools2/access-control.d.ts.map +1 -0
  146. package/dist/ai-service/agent/tools2/access-control.js +216 -0
  147. package/dist/ai-service/agent/tools2/access-control.js.map +1 -0
  148. package/dist/ai-service/agent/tools2/example.d.ts +13 -0
  149. package/dist/ai-service/agent/tools2/example.d.ts.map +1 -0
  150. package/dist/ai-service/agent/tools2/example.js +143 -0
  151. package/dist/ai-service/agent/tools2/example.js.map +1 -0
  152. package/dist/ai-service/agent/tools2/index.d.ts +16 -0
  153. package/dist/ai-service/agent/tools2/index.d.ts.map +1 -0
  154. package/dist/ai-service/agent/tools2/index.js +18 -0
  155. package/dist/ai-service/agent/tools2/index.js.map +1 -0
  156. package/dist/ai-service/agent/tools2/registry.d.ts +167 -0
  157. package/dist/ai-service/agent/tools2/registry.d.ts.map +1 -0
  158. package/dist/ai-service/agent/tools2/registry.js +305 -0
  159. package/dist/ai-service/agent/tools2/registry.js.map +1 -0
  160. package/dist/ai-service/agent/tools2/tools/ask-multi-choice.d.ts +12 -0
  161. package/dist/ai-service/agent/tools2/tools/ask-multi-choice.d.ts.map +1 -0
  162. package/dist/ai-service/agent/tools2/tools/ask-multi-choice.js +73 -0
  163. package/dist/ai-service/agent/tools2/tools/ask-multi-choice.js.map +1 -0
  164. package/dist/ai-service/agent/tools2/tools/bash.d.ts +34 -0
  165. package/dist/ai-service/agent/tools2/tools/bash.d.ts.map +1 -0
  166. package/dist/ai-service/agent/tools2/tools/bash.js +76 -0
  167. package/dist/ai-service/agent/tools2/tools/bash.js.map +1 -0
  168. package/dist/ai-service/agent/tools2/tools/edit.d.ts +14 -0
  169. package/dist/ai-service/agent/tools2/tools/edit.d.ts.map +1 -0
  170. package/dist/ai-service/agent/tools2/tools/edit.js +60 -0
  171. package/dist/ai-service/agent/tools2/tools/edit.js.map +1 -0
  172. package/dist/ai-service/agent/tools2/tools/exit-plan-mode.d.ts +10 -0
  173. package/dist/ai-service/agent/tools2/tools/exit-plan-mode.d.ts.map +1 -0
  174. package/dist/ai-service/agent/tools2/tools/exit-plan-mode.js +66 -0
  175. package/dist/ai-service/agent/tools2/tools/exit-plan-mode.js.map +1 -0
  176. package/dist/ai-service/agent/tools2/tools/glob.d.ts +11 -0
  177. package/dist/ai-service/agent/tools2/tools/glob.d.ts.map +1 -0
  178. package/dist/ai-service/agent/tools2/tools/glob.js +44 -0
  179. package/dist/ai-service/agent/tools2/tools/glob.js.map +1 -0
  180. package/dist/ai-service/agent/tools2/tools/grep.d.ts +21 -0
  181. package/dist/ai-service/agent/tools2/tools/grep.d.ts.map +1 -0
  182. package/dist/ai-service/agent/tools2/tools/grep.js +100 -0
  183. package/dist/ai-service/agent/tools2/tools/grep.js.map +1 -0
  184. package/dist/ai-service/agent/tools2/tools/index.d.ts +13 -0
  185. package/dist/ai-service/agent/tools2/tools/index.d.ts.map +1 -0
  186. package/dist/ai-service/agent/tools2/tools/index.js +13 -0
  187. package/dist/ai-service/agent/tools2/tools/index.js.map +1 -0
  188. package/dist/ai-service/agent/tools2/tools/read.d.ts +9 -0
  189. package/dist/ai-service/agent/tools2/tools/read.d.ts.map +1 -0
  190. package/dist/ai-service/agent/tools2/tools/read.js +43 -0
  191. package/dist/ai-service/agent/tools2/tools/read.js.map +1 -0
  192. package/dist/ai-service/agent/tools2/tools/write.d.ts +11 -0
  193. package/dist/ai-service/agent/tools2/tools/write.d.ts.map +1 -0
  194. package/dist/ai-service/agent/tools2/tools/write.js +28 -0
  195. package/dist/ai-service/agent/tools2/tools/write.js.map +1 -0
  196. package/dist/ai-service/agent/tools2/types.d.ts +148 -0
  197. package/dist/ai-service/agent/tools2/types.d.ts.map +1 -0
  198. package/dist/ai-service/agent/tools2/types.js +55 -0
  199. package/dist/ai-service/agent/tools2/types.js.map +1 -0
  200. package/dist/ai-service/agent/utils.d.ts +2 -3
  201. package/dist/ai-service/agent/utils.d.ts.map +1 -1
  202. package/dist/ai-service/agent/utils.js +14 -13
  203. package/dist/ai-service/agent/utils.js.map +1 -1
  204. package/dist/ai-service/chat/chat-session-store.d.ts +5 -0
  205. package/dist/ai-service/chat/chat-session-store.d.ts.map +1 -1
  206. package/dist/ai-service/chat/chat-session-store.js +484 -345
  207. package/dist/ai-service/chat/chat-session-store.js.map +1 -1
  208. package/dist/ai-service/chat/extract-history.d.ts +1 -0
  209. package/dist/ai-service/chat/extract-history.d.ts.map +1 -1
  210. package/dist/ai-service/chat/extract-history.js +12 -1
  211. package/dist/ai-service/chat/extract-history.js.map +1 -1
  212. package/dist/ai-service/const.d.ts +2 -1
  213. package/dist/ai-service/const.d.ts.map +1 -1
  214. package/dist/ai-service/const.js +7 -1
  215. package/dist/ai-service/const.js.map +1 -1
  216. package/dist/ai-service/index.d.ts +9 -8
  217. package/dist/ai-service/index.d.ts.map +1 -1
  218. package/dist/ai-service/index.js +7 -0
  219. package/dist/ai-service/index.js.map +1 -1
  220. package/dist/ai-service/integrations/metadata/database.d.ts.map +1 -1
  221. package/dist/ai-service/integrations/metadata/database.js +3 -29
  222. package/dist/ai-service/integrations/metadata/database.js.map +1 -1
  223. package/dist/ai-service/integrations/metadata/databricks.d.ts +25 -0
  224. package/dist/ai-service/integrations/metadata/databricks.d.ts.map +1 -0
  225. package/dist/ai-service/integrations/metadata/databricks.js +174 -0
  226. package/dist/ai-service/integrations/metadata/databricks.js.map +1 -0
  227. package/dist/ai-service/integrations/store.d.ts +34 -4
  228. package/dist/ai-service/integrations/store.d.ts.map +1 -1
  229. package/dist/ai-service/integrations/store.js +125 -5
  230. package/dist/ai-service/integrations/store.js.map +1 -1
  231. package/dist/ai-service/llm/context/caching/constants.d.ts +27 -0
  232. package/dist/ai-service/llm/context/caching/constants.d.ts.map +1 -0
  233. package/dist/ai-service/llm/context/caching/constants.js +20 -0
  234. package/dist/ai-service/llm/context/caching/constants.js.map +1 -0
  235. package/dist/ai-service/llm/context/caching/factory.d.ts +12 -0
  236. package/dist/ai-service/llm/context/caching/factory.d.ts.map +1 -0
  237. package/dist/ai-service/llm/context/caching/factory.js +28 -0
  238. package/dist/ai-service/llm/context/caching/factory.js.map +1 -0
  239. package/dist/ai-service/llm/context/caching/index.d.ts +10 -0
  240. package/dist/ai-service/llm/context/caching/index.d.ts.map +1 -0
  241. package/dist/ai-service/llm/context/caching/index.js +9 -0
  242. package/dist/ai-service/llm/context/caching/index.js.map +1 -0
  243. package/dist/ai-service/llm/context/caching/quantized-strategy.d.ts +22 -0
  244. package/dist/ai-service/llm/context/caching/quantized-strategy.d.ts.map +1 -0
  245. package/dist/ai-service/llm/context/caching/quantized-strategy.js +48 -0
  246. package/dist/ai-service/llm/context/caching/quantized-strategy.js.map +1 -0
  247. package/dist/ai-service/llm/context/caching/strategy.d.ts +20 -0
  248. package/dist/ai-service/llm/context/caching/strategy.d.ts.map +1 -0
  249. package/dist/ai-service/llm/context/caching/strategy.js +5 -0
  250. package/dist/ai-service/llm/context/caching/strategy.js.map +1 -0
  251. package/dist/ai-service/llm/context/caching/types.d.ts +34 -0
  252. package/dist/ai-service/llm/context/caching/types.d.ts.map +1 -0
  253. package/dist/ai-service/llm/context/caching/types.js +8 -0
  254. package/dist/ai-service/llm/context/caching/types.js.map +1 -0
  255. package/dist/ai-service/llm/context/config.d.ts +51 -0
  256. package/dist/ai-service/llm/context/config.d.ts.map +1 -0
  257. package/dist/ai-service/llm/context/config.js +58 -0
  258. package/dist/ai-service/llm/context/config.js.map +1 -0
  259. package/dist/ai-service/llm/context/constants.d.ts +106 -0
  260. package/dist/ai-service/llm/context/constants.d.ts.map +1 -0
  261. package/dist/ai-service/llm/context/constants.js +106 -0
  262. package/dist/ai-service/llm/context/constants.js.map +1 -0
  263. package/dist/ai-service/llm/context/context.d.ts +207 -0
  264. package/dist/ai-service/llm/context/context.d.ts.map +1 -0
  265. package/dist/ai-service/llm/context/context.js +742 -0
  266. package/dist/ai-service/llm/context/context.js.map +1 -0
  267. package/dist/ai-service/llm/context/errors.d.ts +45 -0
  268. package/dist/ai-service/llm/context/errors.d.ts.map +1 -0
  269. package/dist/ai-service/llm/context/errors.js +56 -0
  270. package/dist/ai-service/llm/context/errors.js.map +1 -0
  271. package/dist/ai-service/llm/context/index.d.ts +13 -0
  272. package/dist/ai-service/llm/context/index.d.ts.map +1 -0
  273. package/dist/ai-service/llm/context/index.js +17 -0
  274. package/dist/ai-service/llm/context/index.js.map +1 -0
  275. package/dist/ai-service/llm/context/internal-types.d.ts +52 -0
  276. package/dist/ai-service/llm/context/internal-types.d.ts.map +1 -0
  277. package/dist/ai-service/llm/context/internal-types.js +28 -0
  278. package/dist/ai-service/llm/context/internal-types.js.map +1 -0
  279. package/dist/ai-service/llm/context/levels/index.d.ts +12 -0
  280. package/dist/ai-service/llm/context/levels/index.d.ts.map +1 -0
  281. package/dist/ai-service/llm/context/levels/index.js +12 -0
  282. package/dist/ai-service/llm/context/levels/index.js.map +1 -0
  283. package/dist/ai-service/llm/context/levels/l1.d.ts +83 -0
  284. package/dist/ai-service/llm/context/levels/l1.d.ts.map +1 -0
  285. package/dist/ai-service/llm/context/levels/l1.js +143 -0
  286. package/dist/ai-service/llm/context/levels/l1.js.map +1 -0
  287. package/dist/ai-service/llm/context/levels/l2.d.ts +60 -0
  288. package/dist/ai-service/llm/context/levels/l2.d.ts.map +1 -0
  289. package/dist/ai-service/llm/context/levels/l2.js +96 -0
  290. package/dist/ai-service/llm/context/levels/l2.js.map +1 -0
  291. package/dist/ai-service/llm/context/levels/l3.d.ts +46 -0
  292. package/dist/ai-service/llm/context/levels/l3.d.ts.map +1 -0
  293. package/dist/ai-service/llm/context/levels/l3.js +70 -0
  294. package/dist/ai-service/llm/context/levels/l3.js.map +1 -0
  295. package/dist/ai-service/llm/context/logger.d.ts +17 -0
  296. package/dist/ai-service/llm/context/logger.d.ts.map +1 -0
  297. package/dist/ai-service/llm/context/logger.js +26 -0
  298. package/dist/ai-service/llm/context/logger.js.map +1 -0
  299. package/dist/ai-service/llm/context/manager.d.ts +79 -0
  300. package/dist/ai-service/llm/context/manager.d.ts.map +1 -0
  301. package/dist/ai-service/llm/context/manager.js +136 -0
  302. package/dist/ai-service/llm/context/manager.js.map +1 -0
  303. package/dist/ai-service/llm/context/options.d.ts +43 -0
  304. package/dist/ai-service/llm/context/options.d.ts.map +1 -0
  305. package/dist/ai-service/llm/context/options.js +81 -0
  306. package/dist/ai-service/llm/context/options.js.map +1 -0
  307. package/dist/ai-service/llm/context/serialization.d.ts +56 -0
  308. package/dist/ai-service/llm/context/serialization.d.ts.map +1 -0
  309. package/dist/ai-service/llm/context/serialization.js +9 -0
  310. package/dist/ai-service/llm/context/serialization.js.map +1 -0
  311. package/dist/ai-service/llm/context/storage/index.d.ts +10 -0
  312. package/dist/ai-service/llm/context/storage/index.d.ts.map +1 -0
  313. package/dist/ai-service/llm/context/storage/index.js +2 -0
  314. package/dist/ai-service/llm/context/storage/index.js.map +1 -0
  315. package/dist/ai-service/llm/context/storage/local.d.ts +22 -0
  316. package/dist/ai-service/llm/context/storage/local.d.ts.map +1 -0
  317. package/dist/ai-service/llm/context/storage/local.js +42 -0
  318. package/dist/ai-service/llm/context/storage/local.js.map +1 -0
  319. package/dist/ai-service/llm/context/types.d.ts +125 -0
  320. package/dist/ai-service/llm/context/types.d.ts.map +1 -0
  321. package/dist/ai-service/llm/context/types.js +5 -0
  322. package/dist/ai-service/llm/context/types.js.map +1 -0
  323. package/dist/ai-service/llm/context/utils/content-compaction.d.ts +26 -0
  324. package/dist/ai-service/llm/context/utils/content-compaction.d.ts.map +1 -0
  325. package/dist/ai-service/llm/context/utils/content-compaction.js +52 -0
  326. package/dist/ai-service/llm/context/utils/content-compaction.js.map +1 -0
  327. package/dist/ai-service/llm/context/utils/index.d.ts +10 -0
  328. package/dist/ai-service/llm/context/utils/index.d.ts.map +1 -0
  329. package/dist/ai-service/llm/context/utils/index.js +10 -0
  330. package/dist/ai-service/llm/context/utils/index.js.map +1 -0
  331. package/dist/ai-service/llm/context/utils/message-utils.d.ts +34 -0
  332. package/dist/ai-service/llm/context/utils/message-utils.d.ts.map +1 -0
  333. package/dist/ai-service/llm/context/utils/message-utils.js +73 -0
  334. package/dist/ai-service/llm/context/utils/message-utils.js.map +1 -0
  335. package/dist/ai-service/llm/context/utils/token-estimation.d.ts +31 -0
  336. package/dist/ai-service/llm/context/utils/token-estimation.d.ts.map +1 -0
  337. package/dist/ai-service/llm/context/utils/token-estimation.js +52 -0
  338. package/dist/ai-service/llm/context/utils/token-estimation.js.map +1 -0
  339. package/dist/ai-service/llm/context/utils/visualization.d.ts +40 -0
  340. package/dist/ai-service/llm/context/utils/visualization.d.ts.map +1 -0
  341. package/dist/ai-service/llm/context/utils/visualization.js +516 -0
  342. package/dist/ai-service/llm/context/utils/visualization.js.map +1 -0
  343. package/dist/ai-service/llm/impl/anthropic.js +2 -2
  344. package/dist/ai-service/llm/impl/anthropic.js.map +1 -1
  345. package/dist/ai-service/llmobs/helpers.d.ts.map +1 -1
  346. package/dist/ai-service/llmobs/helpers.js +10 -19
  347. package/dist/ai-service/llmobs/helpers.js.map +1 -1
  348. package/dist/ai-service/llmobs/middleware/stream-text.d.ts.map +1 -1
  349. package/dist/ai-service/llmobs/middleware/stream-text.js +16 -11
  350. package/dist/ai-service/llmobs/middleware/stream-text.js.map +1 -1
  351. package/dist/ai-service/prompt-builder-service/static-fragments/library-components/ButtonPropsDocs.js +1 -1
  352. package/dist/ai-service/prompt-builder-service/static-fragments/library-components/CheckboxPropsDocs.js +1 -1
  353. package/dist/ai-service/prompt-builder-service/static-fragments/library-components/ColumnPropsDocs.js +1 -1
  354. package/dist/ai-service/prompt-builder-service/static-fragments/library-components/ContainerPropsDocs.js +1 -1
  355. package/dist/ai-service/prompt-builder-service/static-fragments/library-components/DatePickerPropsDocs.js +1 -1
  356. package/dist/ai-service/prompt-builder-service/static-fragments/library-components/DropdownPropsDocs.js +1 -1
  357. package/dist/ai-service/prompt-builder-service/static-fragments/library-components/IconPropsDocs.js +1 -1
  358. package/dist/ai-service/prompt-builder-service/static-fragments/library-components/ImagePropsDocs.js +1 -1
  359. package/dist/ai-service/prompt-builder-service/static-fragments/library-components/InputPropsDocs.js +1 -1
  360. package/dist/ai-service/prompt-builder-service/static-fragments/library-components/ModalPropsDocs.js +1 -1
  361. package/dist/ai-service/prompt-builder-service/static-fragments/library-components/PagePropsDocs.js +1 -1
  362. package/dist/ai-service/prompt-builder-service/static-fragments/library-components/SectionPropsDocs.js +1 -1
  363. package/dist/ai-service/prompt-builder-service/static-fragments/library-components/SlideoutPropsDocs.js +1 -1
  364. package/dist/ai-service/prompt-builder-service/static-fragments/library-components/SwitchPropsDocs.js +1 -1
  365. package/dist/ai-service/prompt-builder-service/static-fragments/library-components/TablePropsDocs.js +1 -1
  366. package/dist/ai-service/prompt-builder-service/static-fragments/library-components/TextPropsDocs.js +1 -1
  367. package/dist/ai-service/prompt-builder-service/static-fragments/library-typedefs/Dim.js +1 -1
  368. package/dist/ai-service/prompt-builder-service/static-fragments/library-typedefs/EventFlow.js +1 -1
  369. package/dist/ai-service/prompt-builder-service/static-fragments/library-typedefs/TextStyleWithVariant.js +1 -1
  370. package/dist/ai-service/prompt-builder-service/static-fragments/platform-parts/full-examples.js +1 -1
  371. package/dist/ai-service/prompt-builder-service/static-fragments/platform-parts/superblocks-api.js +1 -1
  372. package/dist/ai-service/prompt-builder-service/static-fragments/platform-parts/superblocks-components-rules.js +1 -1
  373. package/dist/ai-service/prompt-builder-service/static-fragments/platform-parts/superblocks-custom-components.js +1 -1
  374. package/dist/ai-service/prompt-builder-service/static-fragments/platform-parts/superblocks-data-filtering.js +1 -1
  375. package/dist/ai-service/prompt-builder-service/static-fragments/platform-parts/superblocks-event-flow.js +1 -1
  376. package/dist/ai-service/prompt-builder-service/static-fragments/platform-parts/superblocks-forms.js +1 -1
  377. package/dist/ai-service/prompt-builder-service/static-fragments/platform-parts/superblocks-layouts.js +1 -1
  378. package/dist/ai-service/prompt-builder-service/static-fragments/platform-parts/superblocks-page.js +1 -1
  379. package/dist/ai-service/prompt-builder-service/static-fragments/platform-parts/superblocks-rbac.js +1 -1
  380. package/dist/ai-service/prompt-builder-service/static-fragments/platform-parts/superblocks-routes.js +1 -1
  381. package/dist/ai-service/prompt-builder-service/static-fragments/platform-parts/superblocks-state.js +1 -1
  382. package/dist/ai-service/prompt-builder-service/static-fragments/platform-parts/superblocks-theming-chakra-new.js +1 -1
  383. package/dist/ai-service/prompt-builder-service/static-fragments/platform-parts/system-base.js +1 -1
  384. package/dist/ai-service/prompt-builder-service/static-fragments/platform-parts/system-incremental.js +1 -1
  385. package/dist/ai-service/prompt-builder-service/static-fragments/platform-parts/system-specific-edit.js +1 -1
  386. package/dist/ai-service/state-machine/clark-fsm.d.ts +9 -5
  387. package/dist/ai-service/state-machine/clark-fsm.d.ts.map +1 -1
  388. package/dist/ai-service/state-machine/clark-fsm.js.map +1 -1
  389. package/dist/ai-service/state-machine/handlers/agent-planning.d.ts.map +1 -1
  390. package/dist/ai-service/state-machine/handlers/agent-planning.js +36 -9
  391. package/dist/ai-service/state-machine/handlers/agent-planning.js.map +1 -1
  392. package/dist/ai-service/state-machine/handlers/llm-generating.d.ts.map +1 -1
  393. package/dist/ai-service/state-machine/handlers/llm-generating.js +161 -104
  394. package/dist/ai-service/state-machine/handlers/llm-generating.js.map +1 -1
  395. package/dist/ai-service/state-machine/helpers/context-id.d.ts +4 -0
  396. package/dist/ai-service/state-machine/helpers/context-id.d.ts.map +1 -0
  397. package/dist/ai-service/state-machine/helpers/context-id.js +16 -0
  398. package/dist/ai-service/state-machine/helpers/context-id.js.map +1 -0
  399. package/dist/ai-service/state-machine/helpers/peer.d.ts.map +1 -1
  400. package/dist/ai-service/state-machine/helpers/peer.js +7 -4
  401. package/dist/ai-service/state-machine/helpers/peer.js.map +1 -1
  402. package/dist/ai-service/state-machine/mocks.d.ts +2 -3
  403. package/dist/ai-service/state-machine/mocks.d.ts.map +1 -1
  404. package/dist/ai-service/state-machine/mocks.js.map +1 -1
  405. package/dist/ai-service/transform/api-builder/to-sdk-transformer.d.ts.map +1 -1
  406. package/dist/ai-service/transform/api-builder/to-sdk-transformer.js +0 -2
  407. package/dist/ai-service/transform/api-builder/to-sdk-transformer.js.map +1 -1
  408. package/dist/ai-service/types.d.ts +3 -0
  409. package/dist/ai-service/types.d.ts.map +1 -1
  410. package/dist/ai-service/types.js.map +1 -1
  411. package/dist/ai-service/util/parse-jwt.d.ts +12 -0
  412. package/dist/ai-service/util/parse-jwt.d.ts.map +1 -0
  413. package/dist/ai-service/util/parse-jwt.js +30 -0
  414. package/dist/ai-service/util/parse-jwt.js.map +1 -0
  415. package/dist/ai-service/util/safe-stringify.d.ts +1 -1
  416. package/dist/ai-service/util/safe-stringify.d.ts.map +1 -1
  417. package/dist/ai-service/util/safe-stringify.js +3 -3
  418. package/dist/ai-service/util/safe-stringify.js.map +1 -1
  419. package/dist/binding-extraction/extract-js-identifiers.d.ts.map +1 -1
  420. package/dist/binding-extraction/extract-js-identifiers.js +1 -1
  421. package/dist/binding-extraction/extract-js-identifiers.js.map +1 -1
  422. package/dist/build-errors.d.ts +10 -0
  423. package/dist/build-errors.d.ts.map +1 -0
  424. package/dist/build-errors.js +14 -0
  425. package/dist/build-errors.js.map +1 -0
  426. package/dist/client-error-overlay.d.ts +7 -0
  427. package/dist/client-error-overlay.d.ts.map +1 -0
  428. package/dist/client-error-overlay.js +124 -0
  429. package/dist/client-error-overlay.js.map +1 -0
  430. package/dist/component-docs-service/index.d.ts.map +1 -1
  431. package/dist/component-docs-service/index.js +0 -2
  432. package/dist/component-docs-service/index.js.map +1 -1
  433. package/dist/file-sync-vite-plugin.d.ts.map +1 -1
  434. package/dist/file-sync-vite-plugin.js +37 -26
  435. package/dist/file-sync-vite-plugin.js.map +1 -1
  436. package/dist/file-system-manager.d.ts.map +1 -1
  437. package/dist/file-system-manager.js +4 -7
  438. package/dist/file-system-manager.js.map +1 -1
  439. package/dist/injected-index.d.ts.map +1 -1
  440. package/dist/injected-index.js +6 -1
  441. package/dist/injected-index.js.map +1 -1
  442. package/dist/parsing/page.d.ts.map +1 -1
  443. package/dist/parsing/page.js +5 -5
  444. package/dist/parsing/page.js.map +1 -1
  445. package/dist/parsing/scope.d.ts.map +1 -1
  446. package/dist/parsing/scope.js +2 -7
  447. package/dist/parsing/scope.js.map +1 -1
  448. package/dist/routing.d.ts.map +1 -1
  449. package/dist/routing.js +0 -18
  450. package/dist/routing.js.map +1 -1
  451. package/package.json +8 -8
  452. package/dist/ai-service/agent/apis-system-prompt.d.ts +0 -3
  453. package/dist/ai-service/agent/apis-system-prompt.d.ts.map +0 -1
  454. package/dist/ai-service/agent/apis.d.ts +0 -55
  455. package/dist/ai-service/agent/apis.d.ts.map +0 -1
  456. package/dist/ai-service/agent/apis.js.map +0 -1
@@ -0,0 +1,96 @@
1
+ /**
2
+ * Level 2 (L2) conversation turn with moderate compression.
3
+ *
4
+ * L2 turns use moderate compression suitable for older conversation history:
5
+ * - Steps flattened into single response array
6
+ * - Tool call inputs replaced with empty objects
7
+ * - Tool results marked as "[tool output trimmed]"
8
+ * - Conversation structure preserved
9
+ *
10
+ * This balances keeping conversation history with reducing token usage.
11
+ */
12
+ import { estimateTokenCount } from "../utils/index.js";
13
+ import { L3Turn } from "./l3.js";
14
+ /**
15
+ * L2 Turn - Moderate compression level.
16
+ *
17
+ * Structure:
18
+ * - User message (required)
19
+ * - Flattened response array (all steps combined)
20
+ * - Tool calls compacted (inputs removed)
21
+ * - Tool results compacted (outputs trimmed)
22
+ */
23
+ export class L2Turn {
24
+ user;
25
+ responses;
26
+ constructor(user, response) {
27
+ this.user = user;
28
+ this.responses = response;
29
+ }
30
+ /**
31
+ * Total token count for this turn.
32
+ */
33
+ get tokenCount() {
34
+ return (this.user.tokenCount +
35
+ this.responses.reduce((sum, msg) => sum + msg.tokenCount, 0));
36
+ }
37
+ /**
38
+ * All messages in this turn.
39
+ */
40
+ get messages() {
41
+ return [this.user, ...this.responses];
42
+ }
43
+ /**
44
+ * Compacts this L2 turn to L3 (maximum compression).
45
+ *
46
+ * Keeps only:
47
+ * - User message
48
+ * - Last assistant message (if any)
49
+ * - Drops all tool interactions
50
+ *
51
+ * @param charactersPerToken - Token estimation ratio
52
+ * @returns New L3 turn
53
+ */
54
+ compact() {
55
+ const lastAssistant = this.responses
56
+ .filter((msg) => msg.role === "assistant")
57
+ .at(-1);
58
+ if (!lastAssistant) {
59
+ return new L3Turn(this.user);
60
+ }
61
+ return new L3Turn(this.user, lastAssistant);
62
+ }
63
+ /**
64
+ * Serializes this turn for persistence.
65
+ */
66
+ toRecord() {
67
+ return {
68
+ user: { ...this.user },
69
+ response: this.responses.map((message) => ({ ...message })),
70
+ };
71
+ }
72
+ /**
73
+ * Deserializes an L2 turn from a record.
74
+ *
75
+ * @param record - Serialized turn data
76
+ * @param charactersPerToken - If provided, recalculates token counts
77
+ */
78
+ static fromRecord(record, charactersPerToken) {
79
+ if (!record?.user) {
80
+ throw new Error("L2TurnRecord missing user message");
81
+ }
82
+ const user = { ...record.user };
83
+ if (charactersPerToken !== undefined) {
84
+ user.tokenCount = estimateTokenCount(user, charactersPerToken);
85
+ }
86
+ const response = (record.response ?? []).map((message) => {
87
+ const clone = { ...message };
88
+ if (charactersPerToken !== undefined) {
89
+ clone.tokenCount = estimateTokenCount(clone, charactersPerToken);
90
+ }
91
+ return clone;
92
+ });
93
+ return new L2Turn(user, response);
94
+ }
95
+ }
96
+ //# sourceMappingURL=l2.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"l2.js","sourceRoot":"","sources":["../../../../../src/ai-service/llm/context/levels/l2.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AAEH,OAAO,EAAE,kBAAkB,EAAE,MAAM,mBAAmB,CAAC;AACvD,OAAO,EAAE,MAAM,EAAE,MAAM,SAAS,CAAC;AASjC;;;;;;;;GAQG;AACH,MAAM,OAAO,MAAM;IACjB,IAAI,CAAuB;IAC3B,SAAS,CAA6B;IAEtC,YACE,IAA0B,EAC1B,QAAoC;QAEpC,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC;QACjB,IAAI,CAAC,SAAS,GAAG,QAAQ,CAAC;IAC5B,CAAC;IAED;;OAEG;IACH,IAAI,UAAU;QACZ,OAAO,CACL,IAAI,CAAC,IAAI,CAAC,UAAU;YACpB,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC,GAAG,EAAE,GAAG,EAAE,EAAE,CAAC,GAAG,GAAG,GAAG,CAAC,UAAU,EAAE,CAAC,CAAC,CAC7D,CAAC;IACJ,CAAC;IAED;;OAEG;IACH,IAAI,QAAQ;QACV,OAAO,CAAC,IAAI,CAAC,IAAI,EAAE,GAAG,IAAI,CAAC,SAAS,CAAC,CAAC;IACxC,CAAC;IAED;;;;;;;;;;OAUG;IACH,OAAO;QACL,MAAM,aAAa,GAAG,IAAI,CAAC,SAAS;aACjC,MAAM,CACL,CAAC,GAAG,EAAoC,EAAE,CAAC,GAAG,CAAC,IAAI,KAAK,WAAW,CACpE;aACA,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC;QAEV,IAAI,CAAC,aAAa,EAAE,CAAC;YACnB,OAAO,IAAI,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAC/B,CAAC;QACD,OAAO,IAAI,MAAM,CAAC,IAAI,CAAC,IAAI,EAAE,aAAa,CAAC,CAAC;IAC9C,CAAC;IAED;;OAEG;IACH,QAAQ;QACN,OAAO;YACL,IAAI,EAAE,EAAE,GAAG,IAAI,CAAC,IAAI,EAAE;YACtB,QAAQ,EAAE,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC,EAAE,GAAG,OAAO,EAAE,CAAC,CAAC;SAC5D,CAAC;IACJ,CAAC;IAED;;;;;OAKG;IACH,MAAM,CAAC,UAAU,CAAC,MAAoB,EAAE,kBAA2B;QACjE,IAAI,CAAC,MAAM,EAAE,IAAI,EAAE,CAAC;YAClB,MAAM,IAAI,KAAK,CAAC,mCAAmC,CAAC,CAAC;QACvD,CAAC;QAED,MAAM,IAAI,GAAG,EAAE,GAAG,MAAM,CAAC,IAAI,EAAE,CAAC;QAChC,IAAI,kBAAkB,KAAK,SAAS,EAAE,CAAC;YACrC,IAAI,CAAC,UAAU,GAAG,kBAAkB,CAAC,IAAI,EAAE,kBAAkB,CAAC,CAAC;QACjE,CAAC;QAED,MAAM,QAAQ,GAAG,CAAC,MAAM,CAAC,QAAQ,IAAI,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,OAAO,EAAE,EAAE;YACvD,MAAM,KAAK,GAAG,EAAE,GAAG,OAAO,EAAE,CAAC;YAC7B,IAAI,kBAAkB,KAAK,SAAS,EAAE,CAAC;gBACrC,KAAK,CAAC,UAAU,GAAG,kBAAkB,CAAC,KAAK,EAAE,kBAAkB,CAAC,CAAC;YACnE,CAAC;YACD,OAAO,KAAK,CAAC;QACf,CAAC,CAAC,CAAC;QAEH,OAAO,IAAI,MAAM,CAAC,IAAI,EAAE,QAAQ,CAAC,CAAC;IACpC,CAAC;CACF"}
@@ -0,0 +1,46 @@
1
+ /**
2
+ * Level 3 (L3) conversation turn with maximum compression.
3
+ *
4
+ * L3 turns represent the oldest conversation history with heavy compression:
5
+ * - Only user message + last assistant response preserved
6
+ * - All tool interactions dropped
7
+ * - Minimal skeleton for conversation continuity
8
+ *
9
+ * This level is used for turns that are important for context but don't
10
+ * need detailed tool interaction history.
11
+ */
12
+ import type { TokenizedUserMessage, TokenizedAssistantMessage, TokenizedMessage } from "../internal-types.js";
13
+ import type { L3TurnRecord } from "../serialization.js";
14
+ /**
15
+ * L3 Turn - Maximum compression level.
16
+ *
17
+ * Structure:
18
+ * - User message (required)
19
+ * - Last assistant message (optional)
20
+ * - No intermediate steps
21
+ */
22
+ export declare class L3Turn {
23
+ user: TokenizedUserMessage;
24
+ assistant?: TokenizedAssistantMessage;
25
+ constructor(user: TokenizedUserMessage, assistant?: TokenizedAssistantMessage);
26
+ /**
27
+ * Total token count for this turn.
28
+ */
29
+ get tokenCount(): number;
30
+ /**
31
+ * All messages in this turn (user + optional assistant).
32
+ */
33
+ get messages(): TokenizedMessage[];
34
+ /**
35
+ * Serializes this turn for persistence.
36
+ */
37
+ toRecord(): L3TurnRecord;
38
+ /**
39
+ * Deserializes an L3 turn from a record.
40
+ *
41
+ * @param record - Serialized turn data
42
+ * @param charactersPerToken - If provided, recalculates token counts
43
+ */
44
+ static fromRecord(record: L3TurnRecord, charactersPerToken?: number): L3Turn;
45
+ }
46
+ //# sourceMappingURL=l3.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"l3.d.ts","sourceRoot":"","sources":["../../../../../src/ai-service/llm/context/levels/l3.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AAGH,OAAO,KAAK,EACV,oBAAoB,EACpB,yBAAyB,EACzB,gBAAgB,EACjB,MAAM,sBAAsB,CAAC;AAC9B,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,qBAAqB,CAAC;AAExD;;;;;;;GAOG;AACH,qBAAa,MAAM;IACjB,IAAI,EAAE,oBAAoB,CAAC;IAC3B,SAAS,CAAC,EAAE,yBAAyB,CAAC;gBAGpC,IAAI,EAAE,oBAAoB,EAC1B,SAAS,CAAC,EAAE,yBAAyB;IAMvC;;OAEG;IACH,IAAI,UAAU,IAAI,MAAM,CAEvB;IAED;;OAEG;IACH,IAAI,QAAQ,IAAI,gBAAgB,EAAE,CAEjC;IAED;;OAEG;IACH,QAAQ,IAAI,YAAY;IAOxB;;;;;OAKG;IACH,MAAM,CAAC,UAAU,CAAC,MAAM,EAAE,YAAY,EAAE,kBAAkB,CAAC,EAAE,MAAM,GAAG,MAAM;CAiB7E"}
@@ -0,0 +1,70 @@
1
+ /**
2
+ * Level 3 (L3) conversation turn with maximum compression.
3
+ *
4
+ * L3 turns represent the oldest conversation history with heavy compression:
5
+ * - Only user message + last assistant response preserved
6
+ * - All tool interactions dropped
7
+ * - Minimal skeleton for conversation continuity
8
+ *
9
+ * This level is used for turns that are important for context but don't
10
+ * need detailed tool interaction history.
11
+ */
12
+ import { estimateTokenCount } from "../utils/index.js";
13
+ /**
14
+ * L3 Turn - Maximum compression level.
15
+ *
16
+ * Structure:
17
+ * - User message (required)
18
+ * - Last assistant message (optional)
19
+ * - No intermediate steps
20
+ */
21
+ export class L3Turn {
22
+ user;
23
+ assistant;
24
+ constructor(user, assistant) {
25
+ this.user = user;
26
+ this.assistant = assistant;
27
+ }
28
+ /**
29
+ * Total token count for this turn.
30
+ */
31
+ get tokenCount() {
32
+ return this.user.tokenCount + (this.assistant?.tokenCount ?? 0);
33
+ }
34
+ /**
35
+ * All messages in this turn (user + optional assistant).
36
+ */
37
+ get messages() {
38
+ return this.assistant ? [this.user, this.assistant] : [this.user];
39
+ }
40
+ /**
41
+ * Serializes this turn for persistence.
42
+ */
43
+ toRecord() {
44
+ return {
45
+ user: { ...this.user },
46
+ assistant: this.assistant ? { ...this.assistant } : undefined,
47
+ };
48
+ }
49
+ /**
50
+ * Deserializes an L3 turn from a record.
51
+ *
52
+ * @param record - Serialized turn data
53
+ * @param charactersPerToken - If provided, recalculates token counts
54
+ */
55
+ static fromRecord(record, charactersPerToken) {
56
+ if (!record?.user) {
57
+ throw new Error("L3TurnRecord missing user message");
58
+ }
59
+ const user = { ...record.user };
60
+ if (charactersPerToken !== undefined) {
61
+ user.tokenCount = estimateTokenCount(user, charactersPerToken);
62
+ }
63
+ const assistant = record.assistant ? { ...record.assistant } : undefined;
64
+ if (assistant && charactersPerToken !== undefined) {
65
+ assistant.tokenCount = estimateTokenCount(assistant, charactersPerToken);
66
+ }
67
+ return new L3Turn(user, assistant);
68
+ }
69
+ }
70
+ //# sourceMappingURL=l3.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"l3.js","sourceRoot":"","sources":["../../../../../src/ai-service/llm/context/levels/l3.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AAEH,OAAO,EAAE,kBAAkB,EAAE,MAAM,mBAAmB,CAAC;AAQvD;;;;;;;GAOG;AACH,MAAM,OAAO,MAAM;IACjB,IAAI,CAAuB;IAC3B,SAAS,CAA6B;IAEtC,YACE,IAA0B,EAC1B,SAAqC;QAErC,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC;QACjB,IAAI,CAAC,SAAS,GAAG,SAAS,CAAC;IAC7B,CAAC;IAED;;OAEG;IACH,IAAI,UAAU;QACZ,OAAO,IAAI,CAAC,IAAI,CAAC,UAAU,GAAG,CAAC,IAAI,CAAC,SAAS,EAAE,UAAU,IAAI,CAAC,CAAC,CAAC;IAClE,CAAC;IAED;;OAEG;IACH,IAAI,QAAQ;QACV,OAAO,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IACpE,CAAC;IAED;;OAEG;IACH,QAAQ;QACN,OAAO;YACL,IAAI,EAAE,EAAE,GAAG,IAAI,CAAC,IAAI,EAAE;YACtB,SAAS,EAAE,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,GAAG,IAAI,CAAC,SAAS,EAAE,CAAC,CAAC,CAAC,SAAS;SAC9D,CAAC;IACJ,CAAC;IAED;;;;;OAKG;IACH,MAAM,CAAC,UAAU,CAAC,MAAoB,EAAE,kBAA2B;QACjE,IAAI,CAAC,MAAM,EAAE,IAAI,EAAE,CAAC;YAClB,MAAM,IAAI,KAAK,CAAC,mCAAmC,CAAC,CAAC;QACvD,CAAC;QAED,MAAM,IAAI,GAAG,EAAE,GAAG,MAAM,CAAC,IAAI,EAAE,CAAC;QAChC,IAAI,kBAAkB,KAAK,SAAS,EAAE,CAAC;YACrC,IAAI,CAAC,UAAU,GAAG,kBAAkB,CAAC,IAAI,EAAE,kBAAkB,CAAC,CAAC;QACjE,CAAC;QAED,MAAM,SAAS,GAAG,MAAM,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,GAAG,MAAM,CAAC,SAAS,EAAE,CAAC,CAAC,CAAC,SAAS,CAAC;QACzE,IAAI,SAAS,IAAI,kBAAkB,KAAK,SAAS,EAAE,CAAC;YAClD,SAAS,CAAC,UAAU,GAAG,kBAAkB,CAAC,SAAS,EAAE,kBAAkB,CAAC,CAAC;QAC3E,CAAC;QAED,OAAO,IAAI,MAAM,CAAC,IAAI,EAAE,SAAS,CAAC,CAAC;IACrC,CAAC;CACF"}
@@ -0,0 +1,17 @@
1
+ /**
2
+ * Logger utilities for the context module.
3
+ */
4
+ /**
5
+ * Creates a logger with automatic prefix application.
6
+ *
7
+ * @param prefix - Prefix to prepend to all log messages
8
+ * @param verbose - If false, debug logs are suppressed (default: true)
9
+ * @returns Logger instance with prefix baked in
10
+ */
11
+ export declare function createPrefixedLogger(prefix: string, verbose?: boolean): {
12
+ debug: (msg: string, meta?: unknown) => void;
13
+ info: (msg: string, meta?: unknown) => void;
14
+ warn: (msg: string, meta?: unknown) => void;
15
+ error: (msg: string, meta?: unknown) => void;
16
+ };
17
+ //# sourceMappingURL=logger.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"logger.d.ts","sourceRoot":"","sources":["../../../../src/ai-service/llm/context/logger.ts"],"names":[],"mappings":"AAAA;;GAEG;AAIH;;;;;;GAMG;AACH,wBAAgB,oBAAoB,CAAC,MAAM,EAAE,MAAM,EAAE,OAAO,GAAE,OAAc;iBAK3D,MAAM,SAAS,OAAO;gBAKvB,MAAM,SAAS,OAAO;gBAEtB,MAAM,SAAS,OAAO;iBAErB,MAAM,SAAS,OAAO;EAGtC"}
@@ -0,0 +1,26 @@
1
+ /**
2
+ * Logger utilities for the context module.
3
+ */
4
+ import { getLogger } from "../../../util/logger.js";
5
+ /**
6
+ * Creates a logger with automatic prefix application.
7
+ *
8
+ * @param prefix - Prefix to prepend to all log messages
9
+ * @param verbose - If false, debug logs are suppressed (default: true)
10
+ * @returns Logger instance with prefix baked in
11
+ */
12
+ export function createPrefixedLogger(prefix, verbose = true) {
13
+ const format = (msg) => `${prefix} ${msg}`;
14
+ const baseLogger = getLogger();
15
+ return {
16
+ debug: (msg, meta) => {
17
+ if (verbose) {
18
+ baseLogger.debug(format(msg), meta);
19
+ }
20
+ },
21
+ info: (msg, meta) => baseLogger.info(format(msg), meta),
22
+ warn: (msg, meta) => baseLogger.warn(format(msg), meta),
23
+ error: (msg, meta) => baseLogger.error(format(msg), meta),
24
+ };
25
+ }
26
+ //# sourceMappingURL=logger.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"logger.js","sourceRoot":"","sources":["../../../../src/ai-service/llm/context/logger.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EAAE,SAAS,EAAE,MAAM,yBAAyB,CAAC;AAEpD;;;;;;GAMG;AACH,MAAM,UAAU,oBAAoB,CAAC,MAAc,EAAE,UAAmB,IAAI;IAC1E,MAAM,MAAM,GAAG,CAAC,GAAW,EAAE,EAAE,CAAC,GAAG,MAAM,IAAI,GAAG,EAAE,CAAC;IACnD,MAAM,UAAU,GAAG,SAAS,EAAE,CAAC;IAE/B,OAAO;QACL,KAAK,EAAE,CAAC,GAAW,EAAE,IAAc,EAAE,EAAE;YACrC,IAAI,OAAO,EAAE,CAAC;gBACZ,UAAU,CAAC,KAAK,CAAC,MAAM,CAAC,GAAG,CAAC,EAAE,IAAW,CAAC,CAAC;YAC7C,CAAC;QACH,CAAC;QACD,IAAI,EAAE,CAAC,GAAW,EAAE,IAAc,EAAE,EAAE,CACpC,UAAU,CAAC,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,EAAE,IAAW,CAAC;QAC3C,IAAI,EAAE,CAAC,GAAW,EAAE,IAAc,EAAE,EAAE,CACpC,UAAU,CAAC,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,EAAE,IAAW,CAAC;QAC3C,KAAK,EAAE,CAAC,GAAW,EAAE,IAAc,EAAE,EAAE,CACrC,UAAU,CAAC,KAAK,CAAC,MAAM,CAAC,GAAG,CAAC,EAAE,IAAW,CAAC;KAC7C,CAAC;AACJ,CAAC"}
@@ -0,0 +1,79 @@
1
+ /**
2
+ * ContextManager manages context lifecycle, caching, and persistence.
3
+ *
4
+ * Responsibilities:
5
+ * - Load/save context state from/to database
6
+ * - Cache active contexts in memory
7
+ * - Create ephemeral contexts for one-off operations
8
+ *
9
+ */
10
+ import { type CacheStrategyType } from "./caching/index.js";
11
+ import { Context } from "./context.js";
12
+ import type { ContextStorage } from "./storage/index.js";
13
+ import type { ContextId, ContextOptions, LoggingOptions } from "./types.js";
14
+ /**
15
+ * Options for configuring the ContextManager.
16
+ */
17
+ export interface ContextManagerOptions {
18
+ /** Storage backend for persisting context state */
19
+ storage: ContextStorage;
20
+ /** Cache strategy to use for all contexts (default: 'quantized') */
21
+ cacheStrategy?: CacheStrategyType;
22
+ /** Logging configuration for all contexts */
23
+ logging?: LoggingOptions;
24
+ }
25
+ /**
26
+ * Manager for creating and managing conversation contexts.
27
+ */
28
+ export declare class ContextManager {
29
+ private storage;
30
+ private cacheStrategyType?;
31
+ private contextOptions?;
32
+ private loggingOptions?;
33
+ private contexts;
34
+ private static readonly logPrefix;
35
+ constructor(options: ContextManagerOptions);
36
+ /**
37
+ * Gets or creates a persistent context.
38
+ *
39
+ * Contexts are:
40
+ * 1. Checked in memory cache first
41
+ * 2. Loaded from storage if not cached
42
+ * 3. Created fresh if not found in storage
43
+ * 4. Cached for subsequent requests
44
+ * 5. Automatically persisted on changes
45
+ *
46
+ * @param id - Unique context identifier
47
+ * @param options - Context configuration options
48
+ * @returns Context instance (cached, loaded, or new)
49
+ */
50
+ getContext(id: ContextId, options?: ContextOptions): Promise<Context>;
51
+ private get logger();
52
+ /**
53
+ * Creates an ephemeral context (no persistence or caching).
54
+ *
55
+ * Useful for:
56
+ * - One-off operations
57
+ * - Testing
58
+ * - Operations that don't need state preservation
59
+ *
60
+ * @param options - Context configuration
61
+ * @returns New context instance (not cached)
62
+ */
63
+ createContext(options?: ContextOptions): Context;
64
+ /**
65
+ * Loads context from persistent storage.
66
+ *
67
+ * @param id - Context identifier
68
+ * @returns Loaded context record or null if not found/error
69
+ */
70
+ private loadContext;
71
+ /**
72
+ * Saves context to persistent storage.
73
+ *
74
+ * @param id - Context identifier
75
+ * @param record - Context state to save
76
+ */
77
+ private saveContext;
78
+ }
79
+ //# sourceMappingURL=manager.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"manager.d.ts","sourceRoot":"","sources":["../../../../src/ai-service/llm/context/manager.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAEH,OAAO,EAEL,KAAK,iBAAiB,EACvB,MAAM,oBAAoB,CAAC;AAE5B,OAAO,EAAE,OAAO,EAAE,MAAM,cAAc,CAAC;AAGvC,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,oBAAoB,CAAC;AACzD,OAAO,KAAK,EAAE,SAAS,EAAE,cAAc,EAAE,cAAc,EAAE,MAAM,YAAY,CAAC;AAE5E;;GAEG;AACH,MAAM,WAAW,qBAAqB;IACpC,mDAAmD;IACnD,OAAO,EAAE,cAAc,CAAC;IACxB,oEAAoE;IACpE,aAAa,CAAC,EAAE,iBAAiB,CAAC;IAClC,6CAA6C;IAC7C,OAAO,CAAC,EAAE,cAAc,CAAC;CAC1B;AAED;;GAEG;AACH,qBAAa,cAAc;IACzB,OAAO,CAAC,OAAO,CAAiB;IAChC,OAAO,CAAC,iBAAiB,CAAC,CAAoB;IAC9C,OAAO,CAAC,cAAc,CAAC,CAAiB;IACxC,OAAO,CAAC,cAAc,CAAC,CAAiB;IACxC,OAAO,CAAC,QAAQ,CAAiC;IACjD,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,SAAS,CAAuB;gBAE5C,OAAO,EAAE,qBAAqB;IAkB1C;;;;;;;;;;;;;OAaG;IACG,UAAU,CAAC,EAAE,EAAE,SAAS,EAAE,OAAO,CAAC,EAAE,cAAc,GAAG,OAAO,CAAC,OAAO,CAAC;IAkC3E,OAAO,KAAK,MAAM,GAEjB;IAED;;;;;;;;;;OAUG;IACH,aAAa,CAAC,OAAO,CAAC,EAAE,cAAc,GAAG,OAAO;IAShD;;;;;OAKG;YACW,WAAW;IAoBzB;;;;;OAKG;YACW,WAAW;CAW1B"}
@@ -0,0 +1,136 @@
1
+ /**
2
+ * ContextManager manages context lifecycle, caching, and persistence.
3
+ *
4
+ * Responsibilities:
5
+ * - Load/save context state from/to database
6
+ * - Cache active contexts in memory
7
+ * - Create ephemeral contexts for one-off operations
8
+ *
9
+ */
10
+ import { CacheStrategyFactory, } from "./caching/index.js";
11
+ import { loadContextConfigFromEnv } from "./config.js";
12
+ import { Context } from "./context.js";
13
+ import { createPrefixedLogger } from "./logger.js";
14
+ /**
15
+ * Manager for creating and managing conversation contexts.
16
+ */
17
+ export class ContextManager {
18
+ storage;
19
+ cacheStrategyType;
20
+ contextOptions;
21
+ loggingOptions;
22
+ contexts = new Map();
23
+ static logPrefix = "[context-manager]";
24
+ constructor(options) {
25
+ this.storage = options.storage;
26
+ // Load config from environment variable (final override)
27
+ const envConfig = loadContextConfigFromEnv();
28
+ // Merge config: defaults < programmatic options < env var (final override)
29
+ this.cacheStrategyType = envConfig?.cacheStrategy ?? options.cacheStrategy;
30
+ this.contextOptions = envConfig?.context;
31
+ this.loggingOptions = envConfig?.logging ?? options.logging;
32
+ if (envConfig) {
33
+ this.logger.info(`Using context configuration from SUPERBLOCKS_CLARK_CONTEXT_CONFIG: cacheStrategy=${this.cacheStrategyType}, logging=${this.loggingOptions?.verbose ? "verbose" : "quiet"}`);
34
+ }
35
+ }
36
+ /**
37
+ * Gets or creates a persistent context.
38
+ *
39
+ * Contexts are:
40
+ * 1. Checked in memory cache first
41
+ * 2. Loaded from storage if not cached
42
+ * 3. Created fresh if not found in storage
43
+ * 4. Cached for subsequent requests
44
+ * 5. Automatically persisted on changes
45
+ *
46
+ * @param id - Unique context identifier
47
+ * @param options - Context configuration options
48
+ * @returns Context instance (cached, loaded, or new)
49
+ */
50
+ async getContext(id, options) {
51
+ // Check cache first
52
+ if (this.contexts.has(id)) {
53
+ return this.contexts.get(id);
54
+ }
55
+ const onPersist = async (record) => {
56
+ await this.saveContext(id, record);
57
+ };
58
+ // Create cache strategy
59
+ const cacheStrategy = CacheStrategyFactory.create(this.cacheStrategyType);
60
+ // Load from storage
61
+ const record = await this.loadContext(id);
62
+ // Create context with persistence callback, cache strategy, and logging
63
+ const params = {
64
+ id,
65
+ options: { ...options, ...this.contextOptions },
66
+ logging: this.loggingOptions,
67
+ onPersist,
68
+ cacheStrategy,
69
+ };
70
+ const context = record
71
+ ? Context.fromRecord(record, params)
72
+ : new Context(params);
73
+ // Cache for future requests
74
+ this.contexts.set(id, context);
75
+ return context;
76
+ }
77
+ get logger() {
78
+ return createPrefixedLogger(ContextManager.logPrefix);
79
+ }
80
+ /**
81
+ * Creates an ephemeral context (no persistence or caching).
82
+ *
83
+ * Useful for:
84
+ * - One-off operations
85
+ * - Testing
86
+ * - Operations that don't need state preservation
87
+ *
88
+ * @param options - Context configuration
89
+ * @returns New context instance (not cached)
90
+ */
91
+ createContext(options) {
92
+ const cacheStrategy = CacheStrategyFactory.create(this.cacheStrategyType);
93
+ return new Context({
94
+ options: { ...options, ...this.contextOptions },
95
+ logging: this.loggingOptions,
96
+ cacheStrategy,
97
+ });
98
+ }
99
+ /**
100
+ * Loads context from persistent storage.
101
+ *
102
+ * @param id - Context identifier
103
+ * @returns Loaded context record or null if not found/error
104
+ */
105
+ async loadContext(id) {
106
+ try {
107
+ const record = await this.storage.loadContext(id);
108
+ if (record === null) {
109
+ this.logger.info(`No existing context found for '${id.name}', starting fresh.`);
110
+ return null;
111
+ }
112
+ this.logger.info(`Loaded existing context for '${id.name}' from storage.`);
113
+ return record;
114
+ }
115
+ catch (err) {
116
+ this.logger.error(`Failed to load context for '${id.name}': ${err}`);
117
+ return null;
118
+ }
119
+ }
120
+ /**
121
+ * Saves context to persistent storage.
122
+ *
123
+ * @param id - Context identifier
124
+ * @param record - Context state to save
125
+ */
126
+ async saveContext(id, record) {
127
+ try {
128
+ await this.storage.saveContext(id, record);
129
+ this.logger.debug(`Saved context for '${id.name}'`);
130
+ }
131
+ catch (err) {
132
+ this.logger.error(`Failed to save context for '${id}': ${err}`);
133
+ }
134
+ }
135
+ }
136
+ //# sourceMappingURL=manager.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"manager.js","sourceRoot":"","sources":["../../../../src/ai-service/llm/context/manager.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,43 @@
1
+ /**
2
+ * Options resolution for context configuration.
3
+ *
4
+ * Handles merging user-provided options with sensible defaults.
5
+ */
6
+ import type { ContextOptions, CompactionOptions, LoggingOptions, VisualizationOptions, CompactionLevelBudgets, TokenEstimationOptions, CachingOptions } from "./types.js";
7
+ /**
8
+ * Internal resolved options with absolute token counts.
9
+ */
10
+ export type ResolvedContextOptions = Required<ContextOptions> & {
11
+ compaction: ResolvedCompactionOptions;
12
+ tokenEstimation: ResolvedTokenEstimationOptions;
13
+ caching: ResolvedCachingOptions;
14
+ };
15
+ /**
16
+ * Resolves ContextOptions with defaults.
17
+ */
18
+ export declare function withContextDefaults(options?: ContextOptions): ResolvedContextOptions;
19
+ /** Internal compaction options with defaults applied. */
20
+ export type ResolvedCompactionOptions = Required<CompactionOptions> & {
21
+ budgets: Required<CompactionLevelBudgets> & {
22
+ l3: number;
23
+ };
24
+ };
25
+ /** Resolved logging options with defaults applied. */
26
+ export type ResolvedLoggingOptions = {
27
+ verbose: boolean;
28
+ visualization: ResolvedVisualizationOptions;
29
+ };
30
+ /**
31
+ * Resolves LoggingOptions with defaults.
32
+ * Exported for use by Context to resolve logging independently.
33
+ */
34
+ export declare function withLoggingDefaults(options?: LoggingOptions): ResolvedLoggingOptions;
35
+ /** Resolved visualization options with defaults applied. */
36
+ export type ResolvedVisualizationOptions = Required<Omit<VisualizationOptions, "outputPath">> & {
37
+ outputPath: string | undefined;
38
+ };
39
+ /** Resolved token estimation options with defaults applied. */
40
+ export type ResolvedTokenEstimationOptions = Required<TokenEstimationOptions>;
41
+ /** Resolved caching options with defaults applied. */
42
+ export type ResolvedCachingOptions = Required<CachingOptions>;
43
+ //# sourceMappingURL=options.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"options.d.ts","sourceRoot":"","sources":["../../../../src/ai-service/llm/context/options.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAsBH,OAAO,KAAK,EACV,cAAc,EACd,iBAAiB,EACjB,cAAc,EACd,oBAAoB,EACpB,sBAAsB,EACtB,sBAAsB,EACtB,cAAc,EACf,MAAM,YAAY,CAAC;AAEpB;;GAEG;AACH,MAAM,MAAM,sBAAsB,GAAG,QAAQ,CAAC,cAAc,CAAC,GAAG;IAC9D,UAAU,EAAE,yBAAyB,CAAC;IACtC,eAAe,EAAE,8BAA8B,CAAC;IAChD,OAAO,EAAE,sBAAsB,CAAC;CACjC,CAAC;AAEF;;GAEG;AACH,wBAAgB,mBAAmB,CACjC,OAAO,GAAE,cAAmB,GAC3B,sBAAsB,CAiBxB;AAED,yDAAyD;AACzD,MAAM,MAAM,yBAAyB,GAAG,QAAQ,CAAC,iBAAiB,CAAC,GAAG;IACpE,OAAO,EAAE,QAAQ,CAAC,sBAAsB,CAAC,GAAG;QAC1C,EAAE,EAAE,MAAM,CAAC;KACZ,CAAC;CACH,CAAC;AAqCF,sDAAsD;AACtD,MAAM,MAAM,sBAAsB,GAAG;IACnC,OAAO,EAAE,OAAO,CAAC;IACjB,aAAa,EAAE,4BAA4B,CAAC;CAC7C,CAAC;AAEF;;;GAGG;AACH,wBAAgB,mBAAmB,CACjC,OAAO,CAAC,EAAE,cAAc,GACvB,sBAAsB,CAKxB;AAED,4DAA4D;AAC5D,MAAM,MAAM,4BAA4B,GAAG,QAAQ,CACjD,IAAI,CAAC,oBAAoB,EAAE,YAAY,CAAC,CACzC,GAAG;IACF,UAAU,EAAE,MAAM,GAAG,SAAS,CAAC;CAChC,CAAC;AAYF,+DAA+D;AAC/D,MAAM,MAAM,8BAA8B,GAAG,QAAQ,CAAC,sBAAsB,CAAC,CAAC;AAe9E,sDAAsD;AACtD,MAAM,MAAM,sBAAsB,GAAG,QAAQ,CAAC,cAAc,CAAC,CAAC"}
@@ -0,0 +1,81 @@
1
+ /**
2
+ * Options resolution for context configuration.
3
+ *
4
+ * Handles merging user-provided options with sensible defaults.
5
+ */
6
+ import { PROVIDER_CACHE_MAX_BREAKPOINTS, PROVIDER_CACHE_MIN_CACHEABLE_TOKENS, } from "./caching/constants.js";
7
+ import { DEFAULT_L1_TARGET_FRACTION, DEFAULT_L2_TARGET_FRACTION, DEFAULT_MIN_TOKENS_FOR_ESTIMATE_UPDATE, DEFAULT_CHARACTERS_PER_TOKEN_MIN, DEFAULT_CHARACTERS_PER_TOKEN_MAX, DEFAULT_PRIORITIZED_STEPS, DEFAULT_MAX_CONTEXT_TOKENS, DEFAULT_INITIAL_CHARS_PER_TOKEN_ESTIMATE, DEFAULT_ALLOW_OVERFLOW, DEFAULT_COMPACTION_TRIGGER_FRACTION, DEFAULT_COMPACTION_TARGET_FRACTION, DEFAULT_VERBOSE_LOGGING_ENABLED, DEFAULT_VISUALIZATION_MODE, DEFAULT_VISUALIZATION_WIDTH, } from "./constants.js";
8
+ /**
9
+ * Resolves ContextOptions with defaults.
10
+ */
11
+ export function withContextDefaults(options = {}) {
12
+ const maxTokens = options.maxTokens ?? DEFAULT_MAX_CONTEXT_TOKENS;
13
+ const charsPerToken = options.charsPerToken ?? DEFAULT_INITIAL_CHARS_PER_TOKEN_ESTIMATE;
14
+ const allowOverflow = options.allowOverflow ?? DEFAULT_ALLOW_OVERFLOW;
15
+ const compaction = withCompactionDefaults(maxTokens, options?.compaction);
16
+ const tokenEstimation = withTokenEstimationDefaults(options.tokenEstimation);
17
+ const caching = withCachingDefaults(options.caching);
18
+ return {
19
+ maxTokens,
20
+ charsPerToken,
21
+ allowOverflow,
22
+ compaction,
23
+ tokenEstimation,
24
+ caching,
25
+ };
26
+ }
27
+ /**
28
+ * Resolves CompactionOptions with defaults.
29
+ */
30
+ function withCompactionDefaults(maxTokens, options) {
31
+ const triggerFraction = options?.trigger ?? DEFAULT_COMPACTION_TRIGGER_FRACTION;
32
+ const targetFraction = options?.target ?? DEFAULT_COMPACTION_TARGET_FRACTION;
33
+ const trigger = Math.floor(triggerFraction * maxTokens);
34
+ const target = Math.floor(targetFraction * maxTokens);
35
+ const l1 = options?.budgets?.l1 ?? DEFAULT_L1_TARGET_FRACTION;
36
+ const l2 = options?.budgets?.l2 ?? DEFAULT_L2_TARGET_FRACTION;
37
+ const l3 = Math.max(1 - l1 - l2, 0);
38
+ const budgets = {
39
+ l1,
40
+ l2,
41
+ l3,
42
+ };
43
+ const prioritizedSteps = options?.prioritizedSteps ?? DEFAULT_PRIORITIZED_STEPS;
44
+ return {
45
+ trigger,
46
+ target,
47
+ budgets,
48
+ prioritizedSteps,
49
+ };
50
+ }
51
+ /**
52
+ * Resolves LoggingOptions with defaults.
53
+ * Exported for use by Context to resolve logging independently.
54
+ */
55
+ export function withLoggingDefaults(options) {
56
+ return {
57
+ verbose: options?.verbose ?? DEFAULT_VERBOSE_LOGGING_ENABLED,
58
+ visualization: withVisualizationDefaults(options?.visualization),
59
+ };
60
+ }
61
+ function withVisualizationDefaults(options) {
62
+ return {
63
+ mode: options?.mode ?? DEFAULT_VISUALIZATION_MODE,
64
+ width: options?.width ?? DEFAULT_VISUALIZATION_WIDTH,
65
+ outputPath: options?.outputPath,
66
+ };
67
+ }
68
+ function withTokenEstimationDefaults(options) {
69
+ return {
70
+ minTokensForUpdate: options?.minTokensForUpdate ?? DEFAULT_MIN_TOKENS_FOR_ESTIMATE_UPDATE,
71
+ minCharsPerToken: options?.minCharsPerToken ?? DEFAULT_CHARACTERS_PER_TOKEN_MIN,
72
+ maxCharsPerToken: options?.maxCharsPerToken ?? DEFAULT_CHARACTERS_PER_TOKEN_MAX,
73
+ };
74
+ }
75
+ function withCachingDefaults(options) {
76
+ return {
77
+ maxBreakpoints: options?.maxBreakpoints ?? PROVIDER_CACHE_MAX_BREAKPOINTS,
78
+ minCacheableTokens: options?.minCacheableTokens ?? PROVIDER_CACHE_MIN_CACHEABLE_TOKENS,
79
+ };
80
+ }
81
+ //# sourceMappingURL=options.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"options.js","sourceRoot":"","sources":["../../../../src/ai-service/llm/context/options.ts"],"names":[],"mappings":"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"}