@superblocksteam/vite-plugin-file-sync 2.0.72-next.12 → 2.0.72-next.14

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 (284) 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 +18 -2
  4. package/dist/ai-service/agent/prompts/build-base-system-prompt.js.map +1 -1
  5. package/dist/ai-service/agent/subagents/testing/index.d.ts +3 -0
  6. package/dist/ai-service/agent/subagents/testing/index.d.ts.map +1 -0
  7. package/dist/ai-service/agent/subagents/testing/index.js +2 -0
  8. package/dist/ai-service/agent/subagents/testing/index.js.map +1 -0
  9. package/dist/ai-service/agent/subagents/testing/prompt-builder.d.ts +10 -0
  10. package/dist/ai-service/agent/subagents/testing/prompt-builder.d.ts.map +1 -0
  11. package/dist/ai-service/agent/subagents/testing/prompt-builder.js +162 -0
  12. package/dist/ai-service/agent/subagents/testing/prompt-builder.js.map +1 -0
  13. package/dist/ai-service/agent/subagents/testing/types.d.ts +67 -0
  14. package/dist/ai-service/agent/subagents/testing/types.d.ts.map +1 -0
  15. package/dist/ai-service/agent/subagents/testing/types.js +2 -0
  16. package/dist/ai-service/agent/subagents/testing/types.js.map +1 -0
  17. package/dist/ai-service/agent/subagents/types.d.ts +9 -8
  18. package/dist/ai-service/agent/subagents/types.d.ts.map +1 -1
  19. package/dist/ai-service/agent/subagents/types.js +9 -9
  20. package/dist/ai-service/agent/subagents/types.js.map +1 -1
  21. package/dist/ai-service/agent/tool-message-utils.d.ts +7 -2
  22. package/dist/ai-service/agent/tool-message-utils.d.ts.map +1 -1
  23. package/dist/ai-service/agent/tool-message-utils.js +21 -2
  24. package/dist/ai-service/agent/tool-message-utils.js.map +1 -1
  25. package/dist/ai-service/agent/tools/apis/api-source.d.ts +1 -1
  26. package/dist/ai-service/agent/tools/apis/api-source.d.ts.map +1 -1
  27. package/dist/ai-service/agent/tools/apis/api-source.js +37 -9
  28. package/dist/ai-service/agent/tools/apis/api-source.js.map +1 -1
  29. package/dist/ai-service/agent/tools/apis/test-api.js +1 -1
  30. package/dist/ai-service/agent/tools/apis/test-api.js.map +1 -1
  31. package/dist/ai-service/agent/tools/build-capture-screenshot.d.ts +1 -0
  32. package/dist/ai-service/agent/tools/build-capture-screenshot.d.ts.map +1 -1
  33. package/dist/ai-service/agent/tools/build-capture-screenshot.js +4 -2
  34. package/dist/ai-service/agent/tools/build-capture-screenshot.js.map +1 -1
  35. package/dist/ai-service/agent/tools/build-delete-file.d.ts +1 -1
  36. package/dist/ai-service/agent/tools/build-manage-checklist.d.ts +1 -1
  37. package/dist/ai-service/agent/tools/{build-read-files.d.ts → build-read-file.d.ts} +10 -6
  38. package/dist/ai-service/agent/tools/build-read-file.d.ts.map +1 -0
  39. package/dist/ai-service/agent/tools/build-read-file.js +139 -0
  40. package/dist/ai-service/agent/tools/build-read-file.js.map +1 -0
  41. package/dist/ai-service/agent/tools/build-reload-file.d.ts +9 -3
  42. package/dist/ai-service/agent/tools/build-reload-file.d.ts.map +1 -1
  43. package/dist/ai-service/agent/tools/build-reload-file.js +20 -9
  44. package/dist/ai-service/agent/tools/build-reload-file.js.map +1 -1
  45. package/dist/ai-service/agent/tools/get-console-logs.js +1 -1
  46. package/dist/ai-service/agent/tools/get-console-logs.js.map +1 -1
  47. package/dist/ai-service/agent/tools/get-runtime-errors.js +1 -1
  48. package/dist/ai-service/agent/tools/get-runtime-errors.js.map +1 -1
  49. package/dist/ai-service/agent/tools/index.d.ts +5 -1
  50. package/dist/ai-service/agent/tools/index.d.ts.map +1 -1
  51. package/dist/ai-service/agent/tools/index.js +5 -1
  52. package/dist/ai-service/agent/tools/index.js.map +1 -1
  53. package/dist/ai-service/agent/tools/integrations/execute-request.d.ts +1 -1
  54. package/dist/ai-service/agent/tools/integrations/internal.d.ts.map +1 -1
  55. package/dist/ai-service/agent/tools/integrations/internal.js +8 -1
  56. package/dist/ai-service/agent/tools/integrations/internal.js.map +1 -1
  57. package/dist/ai-service/agent/tools.d.ts.map +1 -1
  58. package/dist/ai-service/agent/tools.js +124 -31
  59. package/dist/ai-service/agent/tools.js.map +1 -1
  60. package/dist/ai-service/agent/tools2/access-control.d.ts +23 -1
  61. package/dist/ai-service/agent/tools2/access-control.d.ts.map +1 -1
  62. package/dist/ai-service/agent/tools2/access-control.js +67 -1
  63. package/dist/ai-service/agent/tools2/access-control.js.map +1 -1
  64. package/dist/ai-service/agent/tools2/entity-permissions.d.ts +26 -0
  65. package/dist/ai-service/agent/tools2/entity-permissions.d.ts.map +1 -1
  66. package/dist/ai-service/agent/tools2/entity-permissions.js +15 -0
  67. package/dist/ai-service/agent/tools2/entity-permissions.js.map +1 -1
  68. package/dist/ai-service/agent/tools2/example.d.ts.map +1 -1
  69. package/dist/ai-service/agent/tools2/example.js +2 -4
  70. package/dist/ai-service/agent/tools2/example.js.map +1 -1
  71. package/dist/ai-service/agent/tools2/index.d.ts +1 -1
  72. package/dist/ai-service/agent/tools2/index.d.ts.map +1 -1
  73. package/dist/ai-service/agent/tools2/index.js +1 -1
  74. package/dist/ai-service/agent/tools2/index.js.map +1 -1
  75. package/dist/ai-service/agent/tools2/registry.d.ts.map +1 -1
  76. package/dist/ai-service/agent/tools2/registry.js +37 -23
  77. package/dist/ai-service/agent/tools2/registry.js.map +1 -1
  78. package/dist/ai-service/agent/tools2/tools/ask-multi-choice.d.ts +0 -1
  79. package/dist/ai-service/agent/tools2/tools/ask-multi-choice.d.ts.map +1 -1
  80. package/dist/ai-service/agent/tools2/tools/ask-multi-choice.js +1 -6
  81. package/dist/ai-service/agent/tools2/tools/ask-multi-choice.js.map +1 -1
  82. package/dist/ai-service/agent/tools2/tools/end-test-run.d.ts +31 -0
  83. package/dist/ai-service/agent/tools2/tools/end-test-run.d.ts.map +1 -0
  84. package/dist/ai-service/agent/tools2/tools/end-test-run.js +107 -0
  85. package/dist/ai-service/agent/tools2/tools/end-test-run.js.map +1 -0
  86. package/dist/ai-service/agent/tools2/tools/exit-plan-mode.d.ts +2 -1
  87. package/dist/ai-service/agent/tools2/tools/exit-plan-mode.d.ts.map +1 -1
  88. package/dist/ai-service/agent/tools2/tools/exit-plan-mode.js +63 -76
  89. package/dist/ai-service/agent/tools2/tools/exit-plan-mode.js.map +1 -1
  90. package/dist/ai-service/agent/tools2/tools/list-attachments.d.ts +15 -0
  91. package/dist/ai-service/agent/tools2/tools/list-attachments.d.ts.map +1 -0
  92. package/dist/ai-service/agent/tools2/tools/list-attachments.js +47 -0
  93. package/dist/ai-service/agent/tools2/tools/list-attachments.js.map +1 -0
  94. package/dist/ai-service/agent/tools2/tools/start-test-run.d.ts +24 -0
  95. package/dist/ai-service/agent/tools2/tools/start-test-run.d.ts.map +1 -0
  96. package/dist/ai-service/agent/tools2/tools/start-test-run.js +340 -0
  97. package/dist/ai-service/agent/tools2/tools/start-test-run.js.map +1 -0
  98. package/dist/ai-service/agent/tools2/tools/update-test-case-status.d.ts +29 -0
  99. package/dist/ai-service/agent/tools2/tools/update-test-case-status.d.ts.map +1 -0
  100. package/dist/ai-service/agent/tools2/tools/update-test-case-status.js +106 -0
  101. package/dist/ai-service/agent/tools2/tools/update-test-case-status.js.map +1 -0
  102. package/dist/ai-service/agent/tools2/types.d.ts +6 -24
  103. package/dist/ai-service/agent/tools2/types.d.ts.map +1 -1
  104. package/dist/ai-service/agent/tools2/types.js +4 -15
  105. package/dist/ai-service/agent/tools2/types.js.map +1 -1
  106. package/dist/ai-service/agent/utils.d.ts +10 -0
  107. package/dist/ai-service/agent/utils.d.ts.map +1 -1
  108. package/dist/ai-service/agent/utils.js +160 -2
  109. package/dist/ai-service/agent/utils.js.map +1 -1
  110. package/dist/ai-service/attachments/index.d.ts +2 -0
  111. package/dist/ai-service/attachments/index.d.ts.map +1 -0
  112. package/dist/ai-service/attachments/index.js +2 -0
  113. package/dist/ai-service/attachments/index.js.map +1 -0
  114. package/dist/ai-service/attachments/store.d.ts +65 -0
  115. package/dist/ai-service/attachments/store.d.ts.map +1 -0
  116. package/dist/ai-service/attachments/store.js +158 -0
  117. package/dist/ai-service/attachments/store.js.map +1 -0
  118. package/dist/ai-service/chat/chat-session-store.d.ts.map +1 -1
  119. package/dist/ai-service/chat/chat-session-store.js +133 -1
  120. package/dist/ai-service/chat/chat-session-store.js.map +1 -1
  121. package/dist/ai-service/context-download.d.ts +24 -0
  122. package/dist/ai-service/context-download.d.ts.map +1 -0
  123. package/dist/ai-service/context-download.js +127 -0
  124. package/dist/ai-service/context-download.js.map +1 -0
  125. package/dist/ai-service/context-upload.d.ts +17 -0
  126. package/dist/ai-service/context-upload.d.ts.map +1 -0
  127. package/dist/ai-service/context-upload.js +100 -0
  128. package/dist/ai-service/context-upload.js.map +1 -0
  129. package/dist/ai-service/features.d.ts +4 -0
  130. package/dist/ai-service/features.d.ts.map +1 -1
  131. package/dist/ai-service/features.js +4 -0
  132. package/dist/ai-service/features.js.map +1 -1
  133. package/dist/ai-service/index.d.ts +27 -3
  134. package/dist/ai-service/index.d.ts.map +1 -1
  135. package/dist/ai-service/index.js +259 -20
  136. package/dist/ai-service/index.js.map +1 -1
  137. package/dist/ai-service/judge/integration/mcp-client.d.ts +3 -6
  138. package/dist/ai-service/judge/integration/mcp-client.d.ts.map +1 -1
  139. package/dist/ai-service/judge/integration/mcp-client.js.map +1 -1
  140. package/dist/ai-service/judge/tools/playwright-action.d.ts +1 -1
  141. package/dist/ai-service/judge/tools/submit-feedback.d.ts +1 -1
  142. package/dist/ai-service/llm/client.d.ts +6 -0
  143. package/dist/ai-service/llm/client.d.ts.map +1 -1
  144. package/dist/ai-service/llm/client.js +9 -0
  145. package/dist/ai-service/llm/client.js.map +1 -1
  146. package/dist/ai-service/llm/context/constants.d.ts +8 -0
  147. package/dist/ai-service/llm/context/constants.d.ts.map +1 -1
  148. package/dist/ai-service/llm/context/constants.js +8 -0
  149. package/dist/ai-service/llm/context/constants.js.map +1 -1
  150. package/dist/ai-service/llm/context/context.d.ts +4 -0
  151. package/dist/ai-service/llm/context/context.d.ts.map +1 -1
  152. package/dist/ai-service/llm/context/context.js +22 -9
  153. package/dist/ai-service/llm/context/context.js.map +1 -1
  154. package/dist/ai-service/llm/context/manager.d.ts +6 -1
  155. package/dist/ai-service/llm/context/manager.d.ts.map +1 -1
  156. package/dist/ai-service/llm/context/manager.js +9 -1
  157. package/dist/ai-service/llm/context/manager.js.map +1 -1
  158. package/dist/ai-service/llm/context/serialization.d.ts +3 -0
  159. package/dist/ai-service/llm/context/serialization.d.ts.map +1 -1
  160. package/dist/ai-service/llm/context/utils/message-utils.d.ts +10 -0
  161. package/dist/ai-service/llm/context/utils/message-utils.d.ts.map +1 -1
  162. package/dist/ai-service/llm/context/utils/message-utils.js +92 -0
  163. package/dist/ai-service/llm/context/utils/message-utils.js.map +1 -1
  164. package/dist/ai-service/llm/interaction/provider.d.ts +1 -0
  165. package/dist/ai-service/llm/interaction/provider.d.ts.map +1 -1
  166. package/dist/ai-service/llm/stream/config.d.ts +2 -0
  167. package/dist/ai-service/llm/stream/config.d.ts.map +1 -1
  168. package/dist/ai-service/llm/stream/config.js +1 -0
  169. package/dist/ai-service/llm/stream/config.js.map +1 -1
  170. package/dist/ai-service/llm/stream/event-bus.d.ts +5 -0
  171. package/dist/ai-service/llm/stream/event-bus.d.ts.map +1 -1
  172. package/dist/ai-service/llm/stream/event-bus.js.map +1 -1
  173. package/dist/ai-service/llm/stream/observers/llmobs.d.ts +4 -1
  174. package/dist/ai-service/llm/stream/observers/llmobs.d.ts.map +1 -1
  175. package/dist/ai-service/llm/stream/observers/llmobs.js +194 -10
  176. package/dist/ai-service/llm/stream/observers/llmobs.js.map +1 -1
  177. package/dist/ai-service/llm/stream/observers/logging.d.ts +1 -0
  178. package/dist/ai-service/llm/stream/observers/logging.d.ts.map +1 -1
  179. package/dist/ai-service/llm/stream/observers/logging.js +92 -20
  180. package/dist/ai-service/llm/stream/observers/logging.js.map +1 -1
  181. package/dist/ai-service/llm/stream/orchestrator.d.ts +7 -1
  182. package/dist/ai-service/llm/stream/orchestrator.d.ts.map +1 -1
  183. package/dist/ai-service/llm/stream/orchestrator.js +23 -3
  184. package/dist/ai-service/llm/stream/orchestrator.js.map +1 -1
  185. package/dist/ai-service/llm/stream/retry-engine.d.ts +1 -0
  186. package/dist/ai-service/llm/stream/retry-engine.d.ts.map +1 -1
  187. package/dist/ai-service/llm/stream/retry-engine.js +20 -1
  188. package/dist/ai-service/llm/stream/retry-engine.js.map +1 -1
  189. package/dist/ai-service/llm/stream/session.d.ts +14 -2
  190. package/dist/ai-service/llm/stream/session.d.ts.map +1 -1
  191. package/dist/ai-service/llm/stream/session.js +15 -28
  192. package/dist/ai-service/llm/stream/session.js.map +1 -1
  193. package/dist/ai-service/llmobs/otel-exporter.d.ts +58 -0
  194. package/dist/ai-service/llmobs/otel-exporter.d.ts.map +1 -0
  195. package/dist/ai-service/llmobs/otel-exporter.js +182 -0
  196. package/dist/ai-service/llmobs/otel-exporter.js.map +1 -0
  197. package/dist/ai-service/llmobs/tracer.d.ts +9 -5
  198. package/dist/ai-service/llmobs/tracer.d.ts.map +1 -1
  199. package/dist/ai-service/llmobs/tracer.js +46 -41
  200. package/dist/ai-service/llmobs/tracer.js.map +1 -1
  201. package/dist/ai-service/llmobs/types.d.ts +1 -0
  202. package/dist/ai-service/llmobs/types.d.ts.map +1 -1
  203. package/dist/ai-service/mcp/adapter/mcp-tool-adapter.d.ts +1 -1
  204. package/dist/ai-service/mcp/adapter/mcp-tool-adapter.d.ts.map +1 -1
  205. package/dist/ai-service/mcp/adapter/mcp-tool-adapter.js +5 -2
  206. package/dist/ai-service/mcp/adapter/mcp-tool-adapter.js.map +1 -1
  207. package/dist/ai-service/mcp/embedded-playwright-mcp-server.d.ts +33 -1
  208. package/dist/ai-service/mcp/embedded-playwright-mcp-server.d.ts.map +1 -1
  209. package/dist/ai-service/mcp/embedded-playwright-mcp-server.js +949 -91
  210. package/dist/ai-service/mcp/embedded-playwright-mcp-server.js.map +1 -1
  211. package/dist/ai-service/mcp/playwright-server.d.ts +39 -0
  212. package/dist/ai-service/mcp/playwright-server.d.ts.map +1 -1
  213. package/dist/ai-service/mcp/playwright-server.js +56 -0
  214. package/dist/ai-service/mcp/playwright-server.js.map +1 -1
  215. package/dist/ai-service/mcp/types.d.ts +4 -0
  216. package/dist/ai-service/mcp/types.d.ts.map +1 -1
  217. package/dist/ai-service/prompts/explain-code.d.ts +2 -2
  218. package/dist/ai-service/prompts/explain-code.d.ts.map +1 -1
  219. package/dist/ai-service/prompts/explain-code.js +2 -2
  220. package/dist/ai-service/prompts/explain-code.js.map +1 -1
  221. package/dist/ai-service/state-machine/clark-fsm.d.ts +20 -1
  222. package/dist/ai-service/state-machine/clark-fsm.d.ts.map +1 -1
  223. package/dist/ai-service/state-machine/clark-fsm.js +16 -0
  224. package/dist/ai-service/state-machine/clark-fsm.js.map +1 -1
  225. package/dist/ai-service/state-machine/fsm.d.ts.map +1 -1
  226. package/dist/ai-service/state-machine/fsm.js +1 -0
  227. package/dist/ai-service/state-machine/fsm.js.map +1 -1
  228. package/dist/ai-service/state-machine/handlers/agent-planning.d.ts.map +1 -1
  229. package/dist/ai-service/state-machine/handlers/agent-planning.js +71 -7
  230. package/dist/ai-service/state-machine/handlers/agent-planning.js.map +1 -1
  231. package/dist/ai-service/state-machine/handlers/llm-generating.d.ts.map +1 -1
  232. package/dist/ai-service/state-machine/handlers/llm-generating.js +112 -33
  233. package/dist/ai-service/state-machine/handlers/llm-generating.js.map +1 -1
  234. package/dist/ai-service/state-machine/helpers/peer.d.ts +1 -1
  235. package/dist/ai-service/state-machine/helpers/peer.d.ts.map +1 -1
  236. package/dist/ai-service/state-machine/helpers/peer.js +21 -4
  237. package/dist/ai-service/state-machine/helpers/peer.js.map +1 -1
  238. package/dist/ai-service/state-machine/mocks.d.ts.map +1 -1
  239. package/dist/ai-service/state-machine/mocks.js +2 -0
  240. package/dist/ai-service/state-machine/mocks.js.map +1 -1
  241. package/dist/ai-service/state-machine/traced-fsm.d.ts +2 -0
  242. package/dist/ai-service/state-machine/traced-fsm.d.ts.map +1 -1
  243. package/dist/ai-service/state-machine/traced-fsm.js +18 -0
  244. package/dist/ai-service/state-machine/traced-fsm.js.map +1 -1
  245. package/dist/ai-service/util/safe-parse.d.ts +2 -0
  246. package/dist/ai-service/util/safe-parse.d.ts.map +1 -0
  247. package/dist/ai-service/util/safe-parse.js +9 -0
  248. package/dist/ai-service/util/safe-parse.js.map +1 -0
  249. package/dist/ai-service/util/safe-stringify.d.ts.map +1 -1
  250. package/dist/ai-service/util/safe-stringify.js +7 -0
  251. package/dist/ai-service/util/safe-stringify.js.map +1 -1
  252. package/dist/ai-service/util/scoped-token-utils.d.ts +15 -0
  253. package/dist/ai-service/util/scoped-token-utils.d.ts.map +1 -0
  254. package/dist/ai-service/util/scoped-token-utils.js +131 -0
  255. package/dist/ai-service/util/scoped-token-utils.js.map +1 -0
  256. package/dist/ai-service/util/stop-condition.d.ts +1 -0
  257. package/dist/ai-service/util/stop-condition.d.ts.map +1 -1
  258. package/dist/ai-service/util/stop-condition.js +5 -0
  259. package/dist/ai-service/util/stop-condition.js.map +1 -1
  260. package/dist/ai-service/util/strip-content.d.ts +2 -0
  261. package/dist/ai-service/util/strip-content.d.ts.map +1 -0
  262. package/dist/ai-service/util/strip-content.js +31 -0
  263. package/dist/ai-service/util/strip-content.js.map +1 -0
  264. package/dist/ai-service/util/tool-signature.d.ts +13 -0
  265. package/dist/ai-service/util/tool-signature.d.ts.map +1 -0
  266. package/dist/ai-service/util/tool-signature.js +38 -0
  267. package/dist/ai-service/util/tool-signature.js.map +1 -0
  268. package/dist/file-sync-vite-plugin.d.ts.map +1 -1
  269. package/dist/file-sync-vite-plugin.js +4 -1
  270. package/dist/file-sync-vite-plugin.js.map +1 -1
  271. package/dist/injected-index.js +2 -2
  272. package/dist/injected-index.js.map +1 -1
  273. package/dist/parsing/jsx.d.ts.map +1 -1
  274. package/dist/parsing/jsx.js +0 -2
  275. package/dist/parsing/jsx.js.map +1 -1
  276. package/dist/server-rpc/index.js +1 -1
  277. package/dist/server-rpc/index.js.map +1 -1
  278. package/dist/socket-manager.d.ts.map +1 -1
  279. package/dist/socket-manager.js +61 -4
  280. package/dist/socket-manager.js.map +1 -1
  281. package/package.json +9 -9
  282. package/dist/ai-service/agent/tools/build-read-files.d.ts.map +0 -1
  283. package/dist/ai-service/agent/tools/build-read-files.js +0 -67
  284. package/dist/ai-service/agent/tools/build-read-files.js.map +0 -1
@@ -1 +1 @@
1
- {"version":3,"file":"types.js","sourceRoot":"","sources":["../../../../src/ai-service/agent/tools2/types.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"types.js","sourceRoot":"","sources":["../../../../src/ai-service/agent/tools2/types.ts"],"names":[],"mappings":"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"}
@@ -3,4 +3,14 @@ import type { TextStreamPart, ToolSet } from "ai";
3
3
  export declare const getFilesChangedInDraftState: (services: ClarkStateHandlerParams) => Promise<string[]>;
4
4
  export declare const normalizeToBlockStatement: (value: any) => string;
5
5
  export declare const processStreamChunk: (chunk: TextStreamPart<ToolSet>, clark: Clark, services: ClarkStateHandlerParams, group?: string) => Promise<void>;
6
+ /**
7
+ * Process stream chunks specifically for the test subagent.
8
+ *
9
+ * Key differences from processStreamChunk:
10
+ * - Text/reasoning messages are suppressed (not sent to UI)
11
+ * - browser_playwright_action results are processed as test steps
12
+ * - endTestRun is processed normally
13
+ * - Other tool calls are logged but not displayed prominently
14
+ */
15
+ export declare const processTestStreamChunk: (chunk: TextStreamPart<ToolSet>, clark: Clark, services: ClarkStateHandlerParams) => Promise<void>;
6
16
  //# sourceMappingURL=utils.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../../../src/ai-service/agent/utils.ts"],"names":[],"mappings":"AAcA,OAAO,KAAK,EACV,KAAK,EACL,uBAAuB,EACxB,MAAM,+BAA+B,CAAC;AAKvC,OAAO,KAAK,EAAE,cAAc,EAAE,OAAO,EAAE,MAAM,IAAI,CAAC;AAElD,eAAO,MAAM,2BAA2B,GACtC,UAAU,uBAAuB,sBAIlC,CAAC;AAEF,eAAO,MAAM,yBAAyB,GAAI,OAAO,GAAG,KAAG,MA0FtD,CAAC;AAiBF,eAAO,MAAM,kBAAkB,GAC7B,OAAO,cAAc,CAAC,OAAO,CAAC,EAC9B,OAAO,KAAK,EACZ,UAAU,uBAAuB,EACjC,QAAQ,MAAM,KACb,OAAO,CAAC,IAAI,CAmId,CAAC"}
1
+ {"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../../../src/ai-service/agent/utils.ts"],"names":[],"mappings":"AAqBA,OAAO,KAAK,EACV,KAAK,EACL,uBAAuB,EACxB,MAAM,+BAA+B,CAAC;AAKvC,OAAO,KAAK,EAAE,cAAc,EAAE,OAAO,EAAE,MAAM,IAAI,CAAC;AA2ClD,eAAO,MAAM,2BAA2B,GACtC,UAAU,uBAAuB,sBAIlC,CAAC;AAEF,eAAO,MAAM,yBAAyB,GAAI,OAAO,GAAG,KAAG,MA0FtD,CAAC;AAiBF,eAAO,MAAM,kBAAkB,GAC7B,OAAO,cAAc,CAAC,OAAO,CAAC,EAC9B,OAAO,KAAK,EACZ,UAAU,uBAAuB,EACjC,QAAQ,MAAM,KACb,OAAO,CAAC,IAAI,CAgKd,CAAC;AAEF;;;;;;;;GAQG;AACH,eAAO,MAAM,sBAAsB,GACjC,OAAO,cAAc,CAAC,OAAO,CAAC,EAC9B,OAAO,KAAK,EACZ,UAAU,uBAAuB,KAChC,OAAO,CAAC,IAAI,CAkId,CAAC"}
@@ -1,10 +1,50 @@
1
1
  import { parse } from "@babel/parser";
2
+ import { generateObject } from "ai";
3
+ import { z } from "zod";
2
4
  import { getFunctionExpressionBody, parseExpression, } from "../../parsing/util.js";
3
5
  import { getLogger } from "../../util/logger.js";
4
6
  import { wrapError } from "../llm/stream/errors.js";
5
7
  import llmobs from "../llmobs/index.js";
6
8
  import { sendUserMessageChannel } from "../state-machine/helpers/peer.js";
7
- import { getToolCallArguments, getToolErrorMessage, getToolOutput, } from "./tool-message-utils.js";
9
+ import { getToolCallSignature } from "../util/tool-signature.js";
10
+ import { getToolCallArguments, getToolErrorCode, getToolErrorMessage, getToolOutput, } from "./tool-message-utils.js";
11
+ import { ToolExecutionError } from "./tools2/types.js";
12
+ import { PermissionLevel } from "./tools2/types.js";
13
+ const ERROR_SUMMARY_TIMEOUT_MS = 5_000;
14
+ const ERROR_SUMMARY_MAX_ERROR_CHARS = 2_000;
15
+ async function generateErrorSummary(llmProvider, toolName, error) {
16
+ const abortController = new AbortController();
17
+ const timeoutId = setTimeout(() => {
18
+ abortController.abort();
19
+ }, ERROR_SUMMARY_TIMEOUT_MS);
20
+ try {
21
+ const model = llmProvider.modelForTask("fast");
22
+ const clippedError = error.length > ERROR_SUMMARY_MAX_ERROR_CHARS
23
+ ? `${error.slice(0, ERROR_SUMMARY_MAX_ERROR_CHARS)}…`
24
+ : error;
25
+ const result = await generateObject({
26
+ model,
27
+ schema: z.object({
28
+ summary: z
29
+ .string()
30
+ .describe("A one-line summary of the error (max 10 words)"),
31
+ }),
32
+ prompt: `Summarize this API error in one short sentence (max 10 words) for a regular person to understand. Be concise and direct.
33
+
34
+ Tool: ${toolName}
35
+ Error: ${clippedError}`,
36
+ abortSignal: abortController.signal,
37
+ });
38
+ return result.object?.summary?.trim();
39
+ }
40
+ catch (err) {
41
+ getLogger().warn("Failed to generate error summary", { toolName, err });
42
+ return undefined;
43
+ }
44
+ finally {
45
+ clearTimeout(timeoutId);
46
+ }
47
+ }
8
48
  export const getFilesChangedInDraftState = async (services) => {
9
49
  const { edits, additions } = await services.draftInterface.getDraftChanges();
10
50
  return [...edits, ...additions];
@@ -142,13 +182,17 @@ export const processStreamChunk = async (chunk, clark, services, group) => {
142
182
  break;
143
183
  }
144
184
  case "tool-call": {
185
+ const signature = getToolCallSignature(chunk.toolName, chunk.input);
145
186
  const args = await getToolCallArguments(chunk.toolName, chunk.input, clark);
187
+ const permission = await services.toolRegistry.checkPermission(chunk.toolName, chunk.input);
146
188
  const sendUserMessage = sendUserMessageChannel(clark, services.chatSessionStore);
147
189
  void sendUserMessage({
148
190
  type: "tool",
149
191
  tool: chunk.toolName,
150
192
  toolCallId: chunk.toolCallId,
151
193
  args,
194
+ signature,
195
+ requiresUserPermission: permission !== PermissionLevel.ALLOW,
152
196
  ...(group && { group }),
153
197
  });
154
198
  break;
@@ -166,11 +210,18 @@ export const processStreamChunk = async (chunk, clark, services, group) => {
166
210
  }
167
211
  case "tool-error": {
168
212
  const sendUserMessage = sendUserMessageChannel(clark, services.chatSessionStore);
213
+ const error = chunk.error instanceof ToolExecutionError && chunk.error.cause
214
+ ? getToolErrorMessage(chunk.error.cause)
215
+ : getToolErrorMessage(chunk.error);
216
+ const errorCode = getToolErrorCode(chunk.error);
217
+ const errorSummary = await generateErrorSummary(services.llmProvider, chunk.toolName, error);
169
218
  void sendUserMessage({
170
219
  type: "tool-error",
171
220
  toolCallId: chunk.toolCallId,
172
221
  toolName: chunk.toolName,
173
- error: getToolErrorMessage(chunk.error),
222
+ error,
223
+ errorCode,
224
+ ...(errorSummary && { errorSummary }),
174
225
  });
175
226
  break;
176
227
  }
@@ -205,4 +256,111 @@ export const processStreamChunk = async (chunk, clark, services, group) => {
205
256
  }
206
257
  }
207
258
  };
259
+ /**
260
+ * Process stream chunks specifically for the test subagent.
261
+ *
262
+ * Key differences from processStreamChunk:
263
+ * - Text/reasoning messages are suppressed (not sent to UI)
264
+ * - browser_playwright_action results are processed as test steps
265
+ * - endTestRun is processed normally
266
+ * - Other tool calls are logged but not displayed prominently
267
+ */
268
+ export const processTestStreamChunk = async (chunk, clark, services) => {
269
+ const logger = getLogger();
270
+ const testRunId = clark.context.currentTestRunId;
271
+ switch (chunk.type) {
272
+ // Suppress all text output for test subagent
273
+ case "text-start":
274
+ case "text-end":
275
+ case "reasoning-start":
276
+ case "reasoning-end":
277
+ // Silently skip - no UI messages for test subagent text
278
+ break;
279
+ case "text-delta":
280
+ // Log suppressed text for debugging, but don't send to UI
281
+ if (chunk.text.trim()) {
282
+ logger.debug(`[TestSubagent] Suppressed text: ${chunk.text.substring(0, 100)}${chunk.text.length > 100 ? "..." : ""}`);
283
+ }
284
+ break;
285
+ case "reasoning-delta":
286
+ // Log suppressed reasoning for debugging, but don't send to UI
287
+ if (chunk.text.trim()) {
288
+ logger.debug(`[TestSubagent] Suppressed reasoning: ${chunk.text.substring(0, 100)}${chunk.text.length > 100 ? "..." : ""}`);
289
+ }
290
+ break;
291
+ case "tool-call": {
292
+ const args = await getToolCallArguments(chunk.toolName, chunk.input, clark);
293
+ const sendUserMessage = sendUserMessageChannel(clark, services.chatSessionStore);
294
+ const isPlaywrightAction = chunk.toolName === "browser_playwright_action";
295
+ const isEndTestRun = chunk.toolName === "endTestRun";
296
+ if (isPlaywrightAction || isEndTestRun) {
297
+ // Send tool call message for test-related tools
298
+ void sendUserMessage({
299
+ type: "tool",
300
+ tool: chunk.toolName,
301
+ toolCallId: chunk.toolCallId,
302
+ args,
303
+ });
304
+ }
305
+ else {
306
+ // Log other tool calls but don't send prominently to UI
307
+ logger.debug(`[TestSubagent] Tool call: ${chunk.toolName}`);
308
+ }
309
+ break;
310
+ }
311
+ case "tool-result": {
312
+ const isPlaywrightAction = chunk.toolName === "browser_playwright_action";
313
+ const isEndTestRun = chunk.toolName === "endTestRun";
314
+ const output = getToolOutput(chunk.toolName, chunk.output);
315
+ if (isPlaywrightAction && testRunId) {
316
+ output.testRunId = testRunId;
317
+ }
318
+ const sendUserMessage = sendUserMessageChannel(clark, services.chatSessionStore);
319
+ if (isPlaywrightAction || isEndTestRun) {
320
+ // Send tool result for test-related tools
321
+ void sendUserMessage({
322
+ type: "tool-result",
323
+ toolCallId: chunk.toolCallId,
324
+ toolName: chunk.toolName,
325
+ output,
326
+ });
327
+ }
328
+ else {
329
+ // Log other tool results
330
+ logger.debug(`[TestSubagent] Tool result: ${chunk.toolName}`);
331
+ }
332
+ break;
333
+ }
334
+ case "tool-error": {
335
+ // Always send tool errors so user can see what went wrong
336
+ const sendUserMessage = sendUserMessageChannel(clark, services.chatSessionStore);
337
+ void sendUserMessage({
338
+ type: "tool-error",
339
+ toolCallId: chunk.toolCallId,
340
+ toolName: chunk.toolName,
341
+ error: getToolErrorMessage(chunk.error),
342
+ });
343
+ logger.error(`[TestSubagent] Tool error: ${chunk.toolName} - ${getToolErrorMessage(chunk.error)}`);
344
+ break;
345
+ }
346
+ case "error": {
347
+ logger.error(`[TestSubagent] Stream error: ${chunk.error instanceof Error ? chunk.error.message : String(chunk.error)}`);
348
+ throw chunk.error;
349
+ }
350
+ case "finish": {
351
+ if (chunk.finishReason === "content-filter") {
352
+ logger.error("[TestSubagent] Response filtered due to content policy");
353
+ }
354
+ else if (chunk.finishReason === "length") {
355
+ logger.warn("[TestSubagent] Response truncated due to length limits");
356
+ }
357
+ logger.info(`[TestSubagent] Stream finished: ${chunk.finishReason}`);
358
+ break;
359
+ }
360
+ case "abort": {
361
+ logger.info("[TestSubagent] Stream aborted");
362
+ break;
363
+ }
364
+ }
365
+ };
208
366
  //# sourceMappingURL=utils.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"utils.js","sourceRoot":"","sources":["../../../src/ai-service/agent/utils.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"utils.js","sourceRoot":"","sources":["../../../src/ai-service/agent/utils.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,2 @@
1
+ export { AttachmentsStore, type StoredAttachment, type AttachmentInfo, } from "./store.js";
2
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/ai-service/attachments/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,gBAAgB,EAChB,KAAK,gBAAgB,EACrB,KAAK,cAAc,GACpB,MAAM,YAAY,CAAC"}
@@ -0,0 +1,2 @@
1
+ export { AttachmentsStore, } from "./store.js";
2
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/ai-service/attachments/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,gBAAgB,GAGjB,MAAM,YAAY,CAAC"}
@@ -0,0 +1,65 @@
1
+ /**
2
+ * Attachments Store - manages user attachments through Context.
3
+ *
4
+ * Attachments are persisted through Context.setAttachments() which ensures
5
+ * they are included in Context serialization (toRecord/fromRecord).
6
+ */
7
+ import type { Context } from "../llm/context/context.js";
8
+ import type { Attachment } from "@superblocksteam/library-shared/types";
9
+ /** Common fields for all stored attachments */
10
+ interface StoredAttachmentBase {
11
+ id: number;
12
+ fileName?: string;
13
+ label?: string;
14
+ insight?: string;
15
+ originalMessage?: string;
16
+ createdAt: number;
17
+ updatedAt: number;
18
+ }
19
+ /** Stored image attachment */
20
+ export interface StoredImageAttachment extends StoredAttachmentBase {
21
+ type: "image";
22
+ imageDataUrl: string;
23
+ }
24
+ /** Stored PDF attachment */
25
+ export interface StoredPdfAttachment extends StoredAttachmentBase {
26
+ type: "pdf";
27
+ data: string;
28
+ size?: number;
29
+ }
30
+ /** Stored text attachment (CSV, JSON, YAML, CSS, TXT) */
31
+ export interface StoredTextAttachment extends StoredAttachmentBase {
32
+ type: "csv" | "json" | "yaml" | "css" | "txt";
33
+ content: string;
34
+ mimeType: string;
35
+ size?: number;
36
+ }
37
+ /** Stored attachment with allocated ID and timestamps - supports all attachment types */
38
+ export type StoredAttachment = StoredImageAttachment | StoredPdfAttachment | StoredTextAttachment;
39
+ /**
40
+ * Attachments data stored within the context record.
41
+ */
42
+ export type AttachmentsRecord = {
43
+ /** Next attachment ID to allocate */
44
+ nextId: number;
45
+ /** Array of stored attachments */
46
+ attachments: StoredAttachment[];
47
+ };
48
+ /** Compact attachment info returned by listAttachments (excludes base64/content) */
49
+ export interface AttachmentInfo {
50
+ id: number;
51
+ type: StoredAttachment["type"];
52
+ fileName?: string;
53
+ label?: string;
54
+ insight?: string;
55
+ originalMessage?: string;
56
+ }
57
+ export declare class AttachmentsStore {
58
+ private getAttachments;
59
+ appendAttachments(context: Context, attachments: Attachment[], originalMessage?: string): StoredAttachment[];
60
+ listAttachments(context: Context): AttachmentInfo[];
61
+ getAttachmentsByIds(context: Context, ids: number[]): StoredAttachment[];
62
+ static toAttachments(stored: StoredAttachment[]): Attachment[];
63
+ }
64
+ export {};
65
+ //# sourceMappingURL=store.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"store.d.ts","sourceRoot":"","sources":["../../../src/ai-service/attachments/store.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAGH,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,2BAA2B,CAAC;AACzD,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,uCAAuC,CAAC;AAexE,+CAA+C;AAC/C,UAAU,oBAAoB;IAC5B,EAAE,EAAE,MAAM,CAAC;IACX,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,SAAS,EAAE,MAAM,CAAC;IAClB,SAAS,EAAE,MAAM,CAAC;CACnB;AAED,8BAA8B;AAC9B,MAAM,WAAW,qBAAsB,SAAQ,oBAAoB;IACjE,IAAI,EAAE,OAAO,CAAC;IACd,YAAY,EAAE,MAAM,CAAC;CACtB;AAED,4BAA4B;AAC5B,MAAM,WAAW,mBAAoB,SAAQ,oBAAoB;IAC/D,IAAI,EAAE,KAAK,CAAC;IACZ,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,CAAC,EAAE,MAAM,CAAC;CACf;AAED,yDAAyD;AACzD,MAAM,WAAW,oBAAqB,SAAQ,oBAAoB;IAChE,IAAI,EAAE,KAAK,GAAG,MAAM,GAAG,MAAM,GAAG,KAAK,GAAG,KAAK,CAAC;IAC9C,OAAO,EAAE,MAAM,CAAC;IAChB,QAAQ,EAAE,MAAM,CAAC;IACjB,IAAI,CAAC,EAAE,MAAM,CAAC;CACf;AAED,yFAAyF;AACzF,MAAM,MAAM,gBAAgB,GACxB,qBAAqB,GACrB,mBAAmB,GACnB,oBAAoB,CAAC;AAEzB;;GAEG;AACH,MAAM,MAAM,iBAAiB,GAAG;IAC9B,qCAAqC;IACrC,MAAM,EAAE,MAAM,CAAC;IACf,kCAAkC;IAClC,WAAW,EAAE,gBAAgB,EAAE,CAAC;CACjC,CAAC;AAEF,oFAAoF;AACpF,MAAM,WAAW,cAAc;IAC7B,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,gBAAgB,CAAC,MAAM,CAAC,CAAC;IAC/B,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,eAAe,CAAC,EAAE,MAAM,CAAC;CAC1B;AAED,qBAAa,gBAAgB;IAC3B,OAAO,CAAC,cAAc;IAStB,iBAAiB,CACf,OAAO,EAAE,OAAO,EAChB,WAAW,EAAE,UAAU,EAAE,EACzB,eAAe,CAAC,EAAE,MAAM,GACvB,gBAAgB,EAAE;IA8ErB,eAAe,CAAC,OAAO,EAAE,OAAO,GAAG,cAAc,EAAE;IAYnD,mBAAmB,CAAC,OAAO,EAAE,OAAO,EAAE,GAAG,EAAE,MAAM,EAAE,GAAG,gBAAgB,EAAE;IAwBxE,MAAM,CAAC,aAAa,CAAC,MAAM,EAAE,gBAAgB,EAAE,GAAG,UAAU,EAAE;CAiC/D"}
@@ -0,0 +1,158 @@
1
+ /**
2
+ * Attachments Store - manages user attachments through Context.
3
+ *
4
+ * Attachments are persisted through Context.setAttachments() which ensures
5
+ * they are included in Context serialization (toRecord/fromRecord).
6
+ */
7
+ import { getLogger } from "../../util/logger.js";
8
+ /** Maximum length for the original message stored with attachments */
9
+ const MAX_MESSAGE_LENGTH = 300;
10
+ /**
11
+ * Truncates a message to the max length, adding [...] if truncated.
12
+ */
13
+ function truncateMessage(message) {
14
+ if (!message)
15
+ return undefined;
16
+ const trimmed = message.trim();
17
+ if (trimmed.length <= MAX_MESSAGE_LENGTH)
18
+ return trimmed;
19
+ return trimmed.slice(0, MAX_MESSAGE_LENGTH) + "[...]";
20
+ }
21
+ export class AttachmentsStore {
22
+ getAttachments(context) {
23
+ return (context.getAttachments() ?? {
24
+ nextId: 1,
25
+ attachments: [],
26
+ });
27
+ }
28
+ appendAttachments(context, attachments, originalMessage) {
29
+ if (attachments.length === 0) {
30
+ return [];
31
+ }
32
+ const data = this.getAttachments(context);
33
+ const now = Date.now();
34
+ const truncatedMessage = truncateMessage(originalMessage);
35
+ const newAttachments = [];
36
+ for (const attachment of attachments) {
37
+ const baseFields = {
38
+ id: data.nextId++,
39
+ fileName: attachment.fileName,
40
+ label: attachment.label,
41
+ insight: attachment.insight,
42
+ originalMessage: truncatedMessage,
43
+ createdAt: now,
44
+ updatedAt: now,
45
+ };
46
+ let stored;
47
+ if (attachment.type === "image") {
48
+ stored = {
49
+ ...baseFields,
50
+ type: "image",
51
+ imageDataUrl: attachment.image,
52
+ };
53
+ }
54
+ else if (attachment.type === "pdf") {
55
+ stored = {
56
+ ...baseFields,
57
+ type: "pdf",
58
+ data: attachment.data,
59
+ size: attachment.size,
60
+ };
61
+ }
62
+ else if (attachment.type === "csv" ||
63
+ attachment.type === "json" ||
64
+ attachment.type === "yaml" ||
65
+ attachment.type === "css" ||
66
+ attachment.type === "txt") {
67
+ stored = {
68
+ ...baseFields,
69
+ type: attachment.type,
70
+ content: attachment.content,
71
+ mimeType: attachment.mimeType,
72
+ size: attachment.size,
73
+ };
74
+ }
75
+ else {
76
+ getLogger().warn(`[attachments-store] Skipping unknown attachment type: ${attachment.type}`);
77
+ continue;
78
+ }
79
+ data.attachments.push(stored);
80
+ newAttachments.push(stored);
81
+ }
82
+ context.setAttachments(data);
83
+ getLogger().info(`[attachments-store] Persisted ${newAttachments.length} attachment(s)`, newAttachments.map((a) => ({
84
+ id: a.id,
85
+ type: a.type,
86
+ fileName: a.fileName,
87
+ label: a.label,
88
+ insight: a.insight,
89
+ originalMessage: a.originalMessage,
90
+ })));
91
+ return newAttachments;
92
+ }
93
+ listAttachments(context) {
94
+ const data = this.getAttachments(context);
95
+ return data.attachments.map((a) => ({
96
+ id: a.id,
97
+ type: a.type,
98
+ fileName: a.fileName,
99
+ label: a.label,
100
+ insight: a.insight,
101
+ originalMessage: a.originalMessage,
102
+ }));
103
+ }
104
+ getAttachmentsByIds(context, ids) {
105
+ const data = this.getAttachments(context);
106
+ const idSet = new Set(ids);
107
+ const found = [];
108
+ const foundIds = new Set();
109
+ for (const attachment of data.attachments) {
110
+ if (idSet.has(attachment.id)) {
111
+ found.push(attachment);
112
+ foundIds.add(attachment.id);
113
+ }
114
+ }
115
+ // Log any missing IDs
116
+ const missingIds = ids.filter((id) => !foundIds.has(id));
117
+ if (missingIds.length > 0) {
118
+ getLogger().warn(`[attachments-store] Requested attachment IDs not found: ${missingIds.join(", ")}`);
119
+ }
120
+ return found;
121
+ }
122
+ static toAttachments(stored) {
123
+ return stored.map((s) => {
124
+ if (s.type === "image") {
125
+ return {
126
+ type: "image",
127
+ image: s.imageDataUrl,
128
+ fileName: s.fileName ?? "image.png",
129
+ label: s.label,
130
+ insight: s.insight,
131
+ };
132
+ }
133
+ else if (s.type === "pdf") {
134
+ return {
135
+ type: "pdf",
136
+ data: s.data,
137
+ fileName: s.fileName ?? "document.pdf",
138
+ size: s.size,
139
+ label: s.label,
140
+ insight: s.insight,
141
+ };
142
+ }
143
+ else {
144
+ // Text attachments: csv, json, yaml, css, txt
145
+ return {
146
+ type: s.type,
147
+ content: s.content,
148
+ fileName: s.fileName ?? `file.${s.type}`,
149
+ mimeType: s.mimeType,
150
+ size: s.size,
151
+ label: s.label,
152
+ insight: s.insight,
153
+ };
154
+ }
155
+ });
156
+ }
157
+ }
158
+ //# sourceMappingURL=store.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"store.js","sourceRoot":"","sources":["../../../src/ai-service/attachments/store.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"chat-session-store.d.ts","sourceRoot":"","sources":["../../../src/ai-service/chat/chat-session-store.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"chat-session-store.d.ts","sourceRoot":"","sources":["../../../src/ai-service/chat/chat-session-store.ts"],"names":[],"mappings":"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"}