@superblocksteam/vite-plugin-file-sync 2.0.72-next.0 → 2.0.72-next.3

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 (218) 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 +67 -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 +47 -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/test-api.js +1 -1
  26. package/dist/ai-service/agent/tools/apis/test-api.js.map +1 -1
  27. package/dist/ai-service/agent/tools/build-capture-screenshot.d.ts +1 -0
  28. package/dist/ai-service/agent/tools/build-capture-screenshot.d.ts.map +1 -1
  29. package/dist/ai-service/agent/tools/build-capture-screenshot.js +4 -2
  30. package/dist/ai-service/agent/tools/build-capture-screenshot.js.map +1 -1
  31. package/dist/ai-service/agent/tools/build-delete-file.d.ts +1 -1
  32. package/dist/ai-service/agent/tools/build-manage-checklist.d.ts +1 -1
  33. package/dist/ai-service/agent/tools/{build-read-files.d.ts → build-read-file.d.ts} +10 -6
  34. package/dist/ai-service/agent/tools/build-read-file.d.ts.map +1 -0
  35. package/dist/ai-service/agent/tools/build-read-file.js +139 -0
  36. package/dist/ai-service/agent/tools/build-read-file.js.map +1 -0
  37. package/dist/ai-service/agent/tools/build-reload-file.d.ts +4 -1
  38. package/dist/ai-service/agent/tools/build-reload-file.d.ts.map +1 -1
  39. package/dist/ai-service/agent/tools/build-reload-file.js +18 -8
  40. package/dist/ai-service/agent/tools/build-reload-file.js.map +1 -1
  41. package/dist/ai-service/agent/tools/get-console-logs.js +1 -1
  42. package/dist/ai-service/agent/tools/get-console-logs.js.map +1 -1
  43. package/dist/ai-service/agent/tools/get-runtime-errors.js +1 -1
  44. package/dist/ai-service/agent/tools/get-runtime-errors.js.map +1 -1
  45. package/dist/ai-service/agent/tools/index.d.ts +4 -1
  46. package/dist/ai-service/agent/tools/index.d.ts.map +1 -1
  47. package/dist/ai-service/agent/tools/index.js +4 -1
  48. package/dist/ai-service/agent/tools/index.js.map +1 -1
  49. package/dist/ai-service/agent/tools.d.ts.map +1 -1
  50. package/dist/ai-service/agent/tools.js +89 -29
  51. package/dist/ai-service/agent/tools.js.map +1 -1
  52. package/dist/ai-service/agent/tools2/access-control.d.ts +23 -1
  53. package/dist/ai-service/agent/tools2/access-control.d.ts.map +1 -1
  54. package/dist/ai-service/agent/tools2/access-control.js +67 -1
  55. package/dist/ai-service/agent/tools2/access-control.js.map +1 -1
  56. package/dist/ai-service/agent/tools2/entity-permissions.d.ts +26 -0
  57. package/dist/ai-service/agent/tools2/entity-permissions.d.ts.map +1 -1
  58. package/dist/ai-service/agent/tools2/entity-permissions.js +15 -0
  59. package/dist/ai-service/agent/tools2/entity-permissions.js.map +1 -1
  60. package/dist/ai-service/agent/tools2/example.d.ts.map +1 -1
  61. package/dist/ai-service/agent/tools2/example.js +2 -4
  62. package/dist/ai-service/agent/tools2/example.js.map +1 -1
  63. package/dist/ai-service/agent/tools2/index.d.ts +1 -1
  64. package/dist/ai-service/agent/tools2/index.d.ts.map +1 -1
  65. package/dist/ai-service/agent/tools2/index.js +1 -1
  66. package/dist/ai-service/agent/tools2/index.js.map +1 -1
  67. package/dist/ai-service/agent/tools2/registry.d.ts.map +1 -1
  68. package/dist/ai-service/agent/tools2/registry.js +37 -23
  69. package/dist/ai-service/agent/tools2/registry.js.map +1 -1
  70. package/dist/ai-service/agent/tools2/tools/end-test-run.d.ts +31 -0
  71. package/dist/ai-service/agent/tools2/tools/end-test-run.d.ts.map +1 -0
  72. package/dist/ai-service/agent/tools2/tools/end-test-run.js +105 -0
  73. package/dist/ai-service/agent/tools2/tools/end-test-run.js.map +1 -0
  74. package/dist/ai-service/agent/tools2/tools/exit-plan-mode.d.ts +1 -0
  75. package/dist/ai-service/agent/tools2/tools/exit-plan-mode.d.ts.map +1 -1
  76. package/dist/ai-service/agent/tools2/tools/exit-plan-mode.js +135 -11
  77. package/dist/ai-service/agent/tools2/tools/exit-plan-mode.js.map +1 -1
  78. package/dist/ai-service/agent/tools2/tools/start-test-run.d.ts +24 -0
  79. package/dist/ai-service/agent/tools2/tools/start-test-run.d.ts.map +1 -0
  80. package/dist/ai-service/agent/tools2/tools/start-test-run.js +258 -0
  81. package/dist/ai-service/agent/tools2/tools/start-test-run.js.map +1 -0
  82. package/dist/ai-service/agent/tools2/tools/update-test-case-status.d.ts +29 -0
  83. package/dist/ai-service/agent/tools2/tools/update-test-case-status.d.ts.map +1 -0
  84. package/dist/ai-service/agent/tools2/tools/update-test-case-status.js +87 -0
  85. package/dist/ai-service/agent/tools2/tools/update-test-case-status.js.map +1 -0
  86. package/dist/ai-service/agent/tools2/types.d.ts +6 -24
  87. package/dist/ai-service/agent/tools2/types.d.ts.map +1 -1
  88. package/dist/ai-service/agent/tools2/types.js +4 -15
  89. package/dist/ai-service/agent/tools2/types.js.map +1 -1
  90. package/dist/ai-service/agent/utils.d.ts +10 -0
  91. package/dist/ai-service/agent/utils.d.ts.map +1 -1
  92. package/dist/ai-service/agent/utils.js +115 -1
  93. package/dist/ai-service/agent/utils.js.map +1 -1
  94. package/dist/ai-service/chat/chat-session-store.d.ts.map +1 -1
  95. package/dist/ai-service/chat/chat-session-store.js +122 -1
  96. package/dist/ai-service/chat/chat-session-store.js.map +1 -1
  97. package/dist/ai-service/features.d.ts +4 -0
  98. package/dist/ai-service/features.d.ts.map +1 -1
  99. package/dist/ai-service/features.js +4 -0
  100. package/dist/ai-service/features.js.map +1 -1
  101. package/dist/ai-service/index.d.ts.map +1 -1
  102. package/dist/ai-service/index.js +14 -8
  103. package/dist/ai-service/index.js.map +1 -1
  104. package/dist/ai-service/judge/integration/mcp-client.d.ts +3 -6
  105. package/dist/ai-service/judge/integration/mcp-client.d.ts.map +1 -1
  106. package/dist/ai-service/judge/integration/mcp-client.js.map +1 -1
  107. package/dist/ai-service/judge/tools/playwright-action.d.ts +1 -1
  108. package/dist/ai-service/judge/tools/submit-feedback.d.ts +1 -1
  109. package/dist/ai-service/llm/client.d.ts +6 -0
  110. package/dist/ai-service/llm/client.d.ts.map +1 -1
  111. package/dist/ai-service/llm/client.js +9 -0
  112. package/dist/ai-service/llm/client.js.map +1 -1
  113. package/dist/ai-service/llm/context/constants.d.ts +8 -0
  114. package/dist/ai-service/llm/context/constants.d.ts.map +1 -1
  115. package/dist/ai-service/llm/context/constants.js +8 -0
  116. package/dist/ai-service/llm/context/constants.js.map +1 -1
  117. package/dist/ai-service/llm/context/context.d.ts.map +1 -1
  118. package/dist/ai-service/llm/context/context.js +12 -9
  119. package/dist/ai-service/llm/context/context.js.map +1 -1
  120. package/dist/ai-service/llm/context/manager.d.ts +1 -1
  121. package/dist/ai-service/llm/context/manager.js +1 -1
  122. package/dist/ai-service/llm/context/utils/message-utils.d.ts +10 -0
  123. package/dist/ai-service/llm/context/utils/message-utils.d.ts.map +1 -1
  124. package/dist/ai-service/llm/context/utils/message-utils.js +92 -0
  125. package/dist/ai-service/llm/context/utils/message-utils.js.map +1 -1
  126. package/dist/ai-service/llm/interaction/provider.d.ts +1 -0
  127. package/dist/ai-service/llm/interaction/provider.d.ts.map +1 -1
  128. package/dist/ai-service/llm/stream/event-bus.d.ts +5 -0
  129. package/dist/ai-service/llm/stream/event-bus.d.ts.map +1 -1
  130. package/dist/ai-service/llm/stream/event-bus.js.map +1 -1
  131. package/dist/ai-service/llm/stream/observers/llmobs.d.ts +4 -1
  132. package/dist/ai-service/llm/stream/observers/llmobs.d.ts.map +1 -1
  133. package/dist/ai-service/llm/stream/observers/llmobs.js +194 -10
  134. package/dist/ai-service/llm/stream/observers/llmobs.js.map +1 -1
  135. package/dist/ai-service/llm/stream/observers/logging.d.ts +1 -0
  136. package/dist/ai-service/llm/stream/observers/logging.d.ts.map +1 -1
  137. package/dist/ai-service/llm/stream/observers/logging.js +92 -20
  138. package/dist/ai-service/llm/stream/observers/logging.js.map +1 -1
  139. package/dist/ai-service/llm/stream/orchestrator.d.ts +7 -1
  140. package/dist/ai-service/llm/stream/orchestrator.d.ts.map +1 -1
  141. package/dist/ai-service/llm/stream/orchestrator.js +24 -4
  142. package/dist/ai-service/llm/stream/orchestrator.js.map +1 -1
  143. package/dist/ai-service/llm/stream/session.d.ts +12 -2
  144. package/dist/ai-service/llm/stream/session.d.ts.map +1 -1
  145. package/dist/ai-service/llm/stream/session.js +9 -26
  146. package/dist/ai-service/llm/stream/session.js.map +1 -1
  147. package/dist/ai-service/llmobs/tracer.d.ts +0 -5
  148. package/dist/ai-service/llmobs/tracer.d.ts.map +1 -1
  149. package/dist/ai-service/llmobs/tracer.js +1 -40
  150. package/dist/ai-service/llmobs/tracer.js.map +1 -1
  151. package/dist/ai-service/llmobs/types.d.ts +1 -0
  152. package/dist/ai-service/llmobs/types.d.ts.map +1 -1
  153. package/dist/ai-service/mcp/adapter/mcp-tool-adapter.d.ts +1 -1
  154. package/dist/ai-service/mcp/adapter/mcp-tool-adapter.d.ts.map +1 -1
  155. package/dist/ai-service/mcp/adapter/mcp-tool-adapter.js +5 -2
  156. package/dist/ai-service/mcp/adapter/mcp-tool-adapter.js.map +1 -1
  157. package/dist/ai-service/mcp/embedded-playwright-mcp-server.d.ts +16 -1
  158. package/dist/ai-service/mcp/embedded-playwright-mcp-server.d.ts.map +1 -1
  159. package/dist/ai-service/mcp/embedded-playwright-mcp-server.js +625 -89
  160. package/dist/ai-service/mcp/embedded-playwright-mcp-server.js.map +1 -1
  161. package/dist/ai-service/mcp/playwright-server.d.ts +10 -0
  162. package/dist/ai-service/mcp/playwright-server.d.ts.map +1 -1
  163. package/dist/ai-service/mcp/playwright-server.js +3 -0
  164. package/dist/ai-service/mcp/playwright-server.js.map +1 -1
  165. package/dist/ai-service/mcp/types.d.ts +4 -0
  166. package/dist/ai-service/mcp/types.d.ts.map +1 -1
  167. package/dist/ai-service/prompts/explain-code.d.ts +2 -2
  168. package/dist/ai-service/prompts/explain-code.d.ts.map +1 -1
  169. package/dist/ai-service/prompts/explain-code.js +2 -2
  170. package/dist/ai-service/prompts/explain-code.js.map +1 -1
  171. package/dist/ai-service/state-machine/clark-fsm.d.ts +18 -1
  172. package/dist/ai-service/state-machine/clark-fsm.d.ts.map +1 -1
  173. package/dist/ai-service/state-machine/clark-fsm.js +15 -0
  174. package/dist/ai-service/state-machine/clark-fsm.js.map +1 -1
  175. package/dist/ai-service/state-machine/handlers/agent-planning.d.ts.map +1 -1
  176. package/dist/ai-service/state-machine/handlers/agent-planning.js +36 -6
  177. package/dist/ai-service/state-machine/handlers/agent-planning.js.map +1 -1
  178. package/dist/ai-service/state-machine/handlers/llm-generating.d.ts.map +1 -1
  179. package/dist/ai-service/state-machine/handlers/llm-generating.js +87 -34
  180. package/dist/ai-service/state-machine/handlers/llm-generating.js.map +1 -1
  181. package/dist/ai-service/state-machine/mocks.d.ts.map +1 -1
  182. package/dist/ai-service/state-machine/mocks.js +2 -0
  183. package/dist/ai-service/state-machine/mocks.js.map +1 -1
  184. package/dist/ai-service/state-machine/traced-fsm.d.ts +2 -0
  185. package/dist/ai-service/state-machine/traced-fsm.d.ts.map +1 -1
  186. package/dist/ai-service/state-machine/traced-fsm.js +18 -0
  187. package/dist/ai-service/state-machine/traced-fsm.js.map +1 -1
  188. package/dist/ai-service/util/safe-parse.d.ts +2 -0
  189. package/dist/ai-service/util/safe-parse.d.ts.map +1 -0
  190. package/dist/ai-service/util/safe-parse.js +9 -0
  191. package/dist/ai-service/util/safe-parse.js.map +1 -0
  192. package/dist/ai-service/util/safe-stringify.d.ts.map +1 -1
  193. package/dist/ai-service/util/safe-stringify.js +7 -0
  194. package/dist/ai-service/util/safe-stringify.js.map +1 -1
  195. package/dist/ai-service/util/stop-condition.d.ts +1 -0
  196. package/dist/ai-service/util/stop-condition.d.ts.map +1 -1
  197. package/dist/ai-service/util/stop-condition.js +5 -0
  198. package/dist/ai-service/util/stop-condition.js.map +1 -1
  199. package/dist/ai-service/util/strip-content.d.ts +2 -0
  200. package/dist/ai-service/util/strip-content.d.ts.map +1 -0
  201. package/dist/ai-service/util/strip-content.js +31 -0
  202. package/dist/ai-service/util/strip-content.js.map +1 -0
  203. package/dist/ai-service/util/tool-signature.d.ts +13 -0
  204. package/dist/ai-service/util/tool-signature.d.ts.map +1 -0
  205. package/dist/ai-service/util/tool-signature.js +38 -0
  206. package/dist/ai-service/util/tool-signature.js.map +1 -0
  207. package/dist/file-sync-vite-plugin.d.ts.map +1 -1
  208. package/dist/file-sync-vite-plugin.js +3 -0
  209. package/dist/file-sync-vite-plugin.js.map +1 -1
  210. package/dist/injected-index.js +2 -2
  211. package/dist/injected-index.js.map +1 -1
  212. package/dist/parsing/jsx.d.ts.map +1 -1
  213. package/dist/parsing/jsx.js +0 -2
  214. package/dist/parsing/jsx.js.map +1 -1
  215. package/package.json +9 -9
  216. package/dist/ai-service/agent/tools/build-read-files.d.ts.map +0 -1
  217. package/dist/ai-service/agent/tools/build-read-files.js +0 -67
  218. package/dist/ai-service/agent/tools/build-read-files.js.map +0 -1
@@ -1,5 +1,5 @@
1
1
  import path from "node:path";
2
- import { AiEntityType, AiMode, } from "@superblocksteam/library-shared/types";
2
+ import { AiEntityType, AiMode, isTextAttachment, } from "@superblocksteam/library-shared/types";
3
3
  import { getErrorMeta, getLogger } from "../../../util/logger.js";
4
4
  import { buildBaseSystemPrompt } from "../../agent/prompts/build-base-system-prompt.js";
5
5
  import { buildTools } from "../../agent/tools.js";
@@ -7,10 +7,65 @@ import { processStreamChunk } from "../../agent/utils.js";
7
7
  import { isNoOutputError, LLMProviderError } from "../../llm/error.js";
8
8
  import { wrapError } from "../../llm/stream/errors.js";
9
9
  import { safeJsonStringify } from "../../util/safe-stringify.js";
10
- import { hasToolSuccess, isAwaitingUser } from "../../util/stop-condition.js";
10
+ import { hasToolSuccess, isAwaitingUser, needsPermissionToExecute, } from "../../util/stop-condition.js";
11
11
  import { AGENT_CANCELED, AGENT_NEEDS_USER_INPUT, AGENT_PLANNED, APP_RUNTIME_UPDATED_WITHOUT_EDITS, LLM_ERRORED, USER_CANCELED, V3_AGENT_FINISHED, } from "../clark-fsm.js";
12
12
  import { getContextId } from "../helpers/context-id.js";
13
13
  import { transitionFrom } from "../helpers/transition.js";
14
+ /**
15
+ * Parse a data URL and extract the media type and base64 data.
16
+ * Returns null if it's not a valid data URL.
17
+ */
18
+ const parseDataUrl = (dataUrl) => {
19
+ const match = dataUrl.match(/^data:([^;]+);base64,(.+)$/);
20
+ if (match && match[1] && match[2]) {
21
+ return { mediaType: match[1], data: match[2] };
22
+ }
23
+ return null;
24
+ };
25
+ /**
26
+ * Sanitizes a string for use in an XML attribute value.
27
+ * Prevents XML injection attacks via malicious file names.
28
+ */
29
+ const sanitizeXmlAttribute = (str) => {
30
+ return str
31
+ .replace(/&/g, "&") // Must be first!
32
+ .replace(/"/g, """)
33
+ .replace(/'/g, "'")
34
+ .replace(/</g, "&lt;")
35
+ .replace(/>/g, "&gt;");
36
+ };
37
+ /**
38
+ * Maps attachments to LLM content parts.
39
+ * Text attachments (CSV, JSON, YAML, CSS, TXT) are wrapped in XML tags.
40
+ */
41
+ const mapAttachmentsToContentParts = (attachments) => {
42
+ return attachments.map((attachment) => {
43
+ if (attachment.type === "image") {
44
+ return {
45
+ type: attachment.type,
46
+ image: attachment.image,
47
+ };
48
+ }
49
+ else if (attachment.type === "pdf") {
50
+ const parsed = parseDataUrl(attachment.data);
51
+ return {
52
+ type: "file",
53
+ data: parsed?.data ?? attachment.data,
54
+ mediaType: parsed?.mediaType ?? "application/pdf",
55
+ filename: attachment.fileName,
56
+ };
57
+ }
58
+ else if (isTextAttachment(attachment)) {
59
+ return {
60
+ type: "text",
61
+ text: `<${attachment.type}_file name="${sanitizeXmlAttribute(attachment.fileName)}">\n${attachment.content}\n</${attachment.type}_file>`,
62
+ };
63
+ }
64
+ else {
65
+ throw new Error("Unsupported attachment type");
66
+ }
67
+ });
68
+ };
14
69
  const buildUserMessage = (userPrompt, promptContext, planContext, mode, services, userChanges) => {
15
70
  const content = [];
16
71
  const focusedEntities = promptContext?.entities;
@@ -98,17 +153,7 @@ const buildUserMessage = (userPrompt, promptContext, planContext, mode, services
98
153
  });
99
154
  }
100
155
  if (promptContext?.attachments?.length) {
101
- content.push(...promptContext.attachments.map((attachment) => {
102
- if (attachment.type === "image") {
103
- return {
104
- type: attachment.type,
105
- image: attachment.image,
106
- };
107
- }
108
- else {
109
- throw "Unsupported attachment type";
110
- }
111
- }));
156
+ content.push(...mapAttachmentsToContentParts(promptContext.attachments));
112
157
  }
113
158
  if (mode !== undefined) {
114
159
  let modeText = `You are currently in ${mode === AiMode.PLAN ? "Plan" : "Build"} mode.`;
@@ -126,19 +171,21 @@ const buildUserMessage = (userPrompt, promptContext, planContext, mode, services
126
171
  text: `<approved_plan>Reference this previously approved plan when executing. Do not deviate without user confirmation.\n${planSummary}\n</approved_plan>\n\n`,
127
172
  });
128
173
  }
129
- // Include images from approved plan for execution
174
+ // Add testing instructions if enableTesting is set on the plan context
175
+ const shouldTest = planContext?.enableTesting === true;
176
+ if (shouldTest && mode === AiMode.BUILD) {
177
+ content.push({
178
+ type: "text",
179
+ text: `<testing_required>
180
+ IMPORTANT: Testing is enabled for this plan. After building the features, you MUST call the \`startTestRun\` tool to invoke the Testing Agent.
181
+ The Testing Agent will verify your implementation works correctly before you can finalize.
182
+ Do NOT call \`build_finalize\` until testing is complete.
183
+ </testing_required>\n\n`,
184
+ });
185
+ }
186
+ // Include attachments from approved plan for execution
130
187
  if (planApproved && planContext?.attachments?.length) {
131
- content.push(...planContext.attachments.map((attachment) => {
132
- if (attachment.type === "image") {
133
- return {
134
- type: attachment.type,
135
- image: attachment.image,
136
- };
137
- }
138
- else {
139
- throw "Unsupported attachment type";
140
- }
141
- }));
188
+ content.push(...mapAttachmentsToContentParts(planContext.attachments));
142
189
  }
143
190
  content.push({
144
191
  type: "text",
@@ -159,7 +206,7 @@ export const doLLMGenerating = (clark, services) => {
159
206
  const mode = clark.context.currentMode;
160
207
  const planContext = clark.context.planContext;
161
208
  const planApproved = planContext?.approved;
162
- const system = buildBaseSystemPrompt(mode);
209
+ const system = buildBaseSystemPrompt(services, mode);
163
210
  const user = buildUserMessage(userPrompt, promptContext, planContext, mode, services, clark.context.userChanges);
164
211
  const tools = await buildTools(clark, services);
165
212
  const result = await clark.streamText(services, {
@@ -173,6 +220,7 @@ export const doLLMGenerating = (clark, services) => {
173
220
  hasToolSuccess("build_finalize"),
174
221
  hasToolSuccess("exitPlanMode"),
175
222
  hasToolSuccess("askMultiChoice"),
223
+ needsPermissionToExecute(clark),
176
224
  isAwaitingUser(clark),
177
225
  ],
178
226
  });
@@ -224,14 +272,19 @@ export const doLLMGenerating = (clark, services) => {
224
272
  });
225
273
  return;
226
274
  }
227
- const clarkAskedUserAQuestion = hasToolSuccess("askMultiChoice")({
228
- steps: await result.steps,
229
- });
230
- if (clarkAskedUserAQuestion) {
231
- void transitionTo({
232
- type: AGENT_NEEDS_USER_INPUT,
233
- });
234
- return;
275
+ try {
276
+ const clarkAskedUserAQuestion = hasToolSuccess("askMultiChoice")({
277
+ steps: await result.steps,
278
+ }) || clark.context.pendingToolPermissionRequest;
279
+ if (clarkAskedUserAQuestion) {
280
+ void transitionTo({
281
+ type: AGENT_NEEDS_USER_INPUT,
282
+ });
283
+ return;
284
+ }
285
+ }
286
+ catch (error) {
287
+ clark.logger.error("Error checking for user input", getErrorMeta(error));
235
288
  }
236
289
  const hasLocalDraft = await services.draftInterface.hasLocalDraftChanges();
237
290
  if (hasLocalDraft) {
@@ -1 +1 @@
1
- {"version":3,"file":"llm-generating.js","sourceRoot":"","sources":["../../../../src/ai-service/state-machine/handlers/llm-generating.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"llm-generating.js","sourceRoot":"","sources":["../../../../src/ai-service/state-machine/handlers/llm-generating.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"mocks.d.ts","sourceRoot":"","sources":["../../../src/ai-service/state-machine/mocks.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,KAAK,EAAE,uBAAuB,EAAE,MAAM,gBAAgB,CAAC;AACrE,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAGhD,eAAO,MAAM,OAAO,QAKY,CAAC;AAEjC,eAAO,MAAM,QAAQ,EAOL,YAAY,CAAC;AAE7B,eAAO,MAAM,SAAS,EASN,KAAK,CAAC;AAEtB,eAAO,MAAM,iBAAiB,EAgGd,uBAAuB,CAAC"}
1
+ {"version":3,"file":"mocks.d.ts","sourceRoot":"","sources":["../../../src/ai-service/state-machine/mocks.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,KAAK,EAAE,uBAAuB,EAAE,MAAM,gBAAgB,CAAC;AACrE,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAGhD,eAAO,MAAM,OAAO,QAKY,CAAC;AAEjC,eAAO,MAAM,QAAQ,EAOL,YAAY,CAAC;AAE7B,eAAO,MAAM,SAAS,EASN,KAAK,CAAC;AAEtB,eAAO,MAAM,iBAAiB,EAiGd,uBAAuB,CAAC"}
@@ -1,6 +1,7 @@
1
1
  import { simulateReadableStream } from "ai";
2
2
  import { MockLanguageModelV2 } from "ai/test";
3
3
  import { vi } from "vitest";
4
+ import { AiServiceFeatureFlags } from "../features.js";
4
5
  // A properly formatted mock JWT with user_id in payload for tests that need JWT parsing
5
6
  export const mockJwt = `header.${Buffer.from(JSON.stringify({
6
7
  user_id: "test-user-123",
@@ -118,5 +119,6 @@ export const mockHandlerParams = {
118
119
  recordAssistantChangeInfo: vi.fn(),
119
120
  getLastUserMessage: vi.fn(),
120
121
  },
122
+ features: AiServiceFeatureFlags.create(),
121
123
  };
122
124
  //# sourceMappingURL=mocks.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"mocks.js","sourceRoot":"","sources":["../../../src/ai-service/state-machine/mocks.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"mocks.js","sourceRoot":"","sources":["../../../src/ai-service/state-machine/mocks.ts"],"names":[],"mappings":"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"}
@@ -74,6 +74,8 @@ export declare abstract class TracedFSM<S extends string, E extends {
74
74
  private startSpan;
75
75
  private finishSpan;
76
76
  private isTransitionParams;
77
+ private isErrorTransitionParams;
78
+ private getErrorData;
77
79
  }
78
80
  export type Tags = {
79
81
  [key: string]: any;
@@ -1 +1 @@
1
- {"version":3,"file":"traced-fsm.d.ts","sourceRoot":"","sources":["../../../src/ai-service/state-machine/traced-fsm.ts"],"names":[],"mappings":"AAAA,OAAO,EAA2B,KAAK,MAAM,EAAE,MAAM,sBAAsB,CAAC;AAC5E,OAAO,EAEL,KAAK,kBAAkB,EACvB,KAAK,sBAAsB,EAC3B,YAAY,EACb,MAAM,oBAAoB,CAAC;AAE5B,OAAO,EACL,GAAG,EAEH,KAAK,SAAS,EACd,KAAK,QAAQ,EACb,KAAK,YAAY,EAClB,MAAM,UAAU,CAAC;AAElB,MAAM,MAAM,eAAe,CACzB,CAAC,SAAS,QAAQ,EAClB,CAAC,SAAS,YAAY,EACtB,CAAC,IACC,SAAS,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,GAAG;IACvB;;;;;;OAMG;IACH,iBAAiB,CAAC,EAAE,2BAA2B,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC;IACzD,oFAAoF;IACpF,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB,CAAC;AAEF,MAAM,MAAM,yBAAyB,GAAG,sBAAsB,GAAG,UAAU,CAAC;AAE5E,MAAM,MAAM,2BAA2B,CACrC,CAAC,SAAS,QAAQ,EAClB,CAAC,SAAS,YAAY,EACtB,CAAC,IACC,CAAC,GAAG,EAAE,SAAS,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,KAAK,WAAW,CAAC;AAE7C;;;;;;;;;;;;;;;;;;;;GAoBG;AACH,8BAAsB,SAAS,CAC7B,CAAC,SAAS,MAAM,EAChB,CAAC,SAAS;IAAE,IAAI,EAAE,MAAM,CAAA;CAAE,EAC1B,CAAC,CACD,SAAQ,GAAG,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC;IACpB,OAAO,CAAC,KAAK,CAIX;IAEF,SAAS,CAAC,SAAS,CAAC,EAAE,MAAM,CAAC;IACtB,MAAM,EAAE,YAAY,CAAC;IACrB,MAAM,EAAE,MAAM,CAAC;IACtB,OAAO,CAAC,OAAO,CAAc;gBAG3B,MAAM,EAAE,eAAe,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,EAChC,MAAM,GAAE,YAAoC,EAC5C,MAAM,GAAE,MAAoB;IAiC9B;;OAEG;IACH,IAAW,QAAQ,IAAI,kBAAkB,GAAG,SAAS,CAEpD;IAED;;;;OAIG;IACH,SAAS,CAAC,QAAQ,CAAC,kBAAkB,CACnC,YAAY,EAAE,CAAC,GACd,sBAAsB;IAEzB;;;;OAIG;IACH,SAAS,CAAC,QAAQ,CAAC,mBAAmB,CAAC,KAAK,EAAE,CAAC,GAAG,yBAAyB;IAE3E;;;SAGK;IACL,SAAS,CAAC,QAAQ,CAAC,aAAa,CAAC,KAAK,EAAE,CAAC,GAAG,OAAO,CAAC,CAAC,CAAC;YAExC,uBAAuB;IA2BrC,OAAO,CAAC,qBAAqB;IAY7B,OAAO,CAAC,oBAAoB;IAa5B,OAAO,CAAC,cAAc;IAOtB,OAAO,CAAC,qBAAqB;IAY7B,OAAO,CAAC,SAAS;IAgBjB,OAAO,CAAC,UAAU;IAoBlB,OAAO,CAAC,kBAAkB;CAW3B;AACD,MAAM,MAAM,IAAI,GAAG;IAAE,CAAC,GAAG,EAAE,MAAM,GAAG,GAAG,CAAA;CAAE,CAAC;AAE1C,MAAM,MAAM,WAAW,GAAG,MAAM,IAAI,CAAC"}
1
+ {"version":3,"file":"traced-fsm.d.ts","sourceRoot":"","sources":["../../../src/ai-service/state-machine/traced-fsm.ts"],"names":[],"mappings":"AAAA,OAAO,EAA2B,KAAK,MAAM,EAAE,MAAM,sBAAsB,CAAC;AAC5E,OAAO,EAEL,KAAK,kBAAkB,EACvB,KAAK,sBAAsB,EAC3B,YAAY,EACb,MAAM,oBAAoB,CAAC;AAE5B,OAAO,EACL,GAAG,EAEH,KAAK,SAAS,EACd,KAAK,QAAQ,EACb,KAAK,YAAY,EAClB,MAAM,UAAU,CAAC;AAElB,MAAM,MAAM,eAAe,CACzB,CAAC,SAAS,QAAQ,EAClB,CAAC,SAAS,YAAY,EACtB,CAAC,IACC,SAAS,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,GAAG;IACvB;;;;;;OAMG;IACH,iBAAiB,CAAC,EAAE,2BAA2B,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC;IACzD,oFAAoF;IACpF,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB,CAAC;AAEF,MAAM,MAAM,yBAAyB,GAAG,sBAAsB,GAAG,UAAU,CAAC;AAE5E,MAAM,MAAM,2BAA2B,CACrC,CAAC,SAAS,QAAQ,EAClB,CAAC,SAAS,YAAY,EACtB,CAAC,IACC,CAAC,GAAG,EAAE,SAAS,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,KAAK,WAAW,CAAC;AAE7C;;;;;;;;;;;;;;;;;;;;GAoBG;AACH,8BAAsB,SAAS,CAC7B,CAAC,SAAS,MAAM,EAChB,CAAC,SAAS;IAAE,IAAI,EAAE,MAAM,CAAA;CAAE,EAC1B,CAAC,CACD,SAAQ,GAAG,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC;IACpB,OAAO,CAAC,KAAK,CAIX;IAEF,SAAS,CAAC,SAAS,CAAC,EAAE,MAAM,CAAC;IACtB,MAAM,EAAE,YAAY,CAAC;IACrB,MAAM,EAAE,MAAM,CAAC;IACtB,OAAO,CAAC,OAAO,CAAc;gBAG3B,MAAM,EAAE,eAAe,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,EAChC,MAAM,GAAE,YAAoC,EAC5C,MAAM,GAAE,MAAoB;IAiC9B;;OAEG;IACH,IAAW,QAAQ,IAAI,kBAAkB,GAAG,SAAS,CAEpD;IAED;;;;OAIG;IACH,SAAS,CAAC,QAAQ,CAAC,kBAAkB,CACnC,YAAY,EAAE,CAAC,GACd,sBAAsB;IAEzB;;;;OAIG;IACH,SAAS,CAAC,QAAQ,CAAC,mBAAmB,CAAC,KAAK,EAAE,CAAC,GAAG,yBAAyB;IAE3E;;;SAGK;IACL,SAAS,CAAC,QAAQ,CAAC,aAAa,CAAC,KAAK,EAAE,CAAC,GAAG,OAAO,CAAC,CAAC,CAAC;YAExC,uBAAuB;IA2BrC,OAAO,CAAC,qBAAqB;IAY7B,OAAO,CAAC,oBAAoB;IAa5B,OAAO,CAAC,cAAc;IAOtB,OAAO,CAAC,qBAAqB;IAY7B,OAAO,CAAC,SAAS;IAgBjB,OAAO,CAAC,UAAU;IAuBlB,OAAO,CAAC,kBAAkB;IAY1B,OAAO,CAAC,uBAAuB;IAS/B,OAAO,CAAC,YAAY;CASrB;AACD,MAAM,MAAM,IAAI,GAAG;IAAE,CAAC,GAAG,EAAE,MAAM,GAAG,GAAG,CAAA;CAAE,CAAC;AAE1C,MAAM,MAAM,WAAW,GAAG,MAAM,IAAI,CAAC"}
@@ -130,6 +130,9 @@ export class TracedFSM extends FSM {
130
130
  this.tracer.annotate(span, {
131
131
  outputData: safeJsonStringify(sanitizedEvent),
132
132
  tags: { "fsm.toState": paramsOrError.to, ...tags },
133
+ error: this.isErrorTransitionParams(paramsOrError)
134
+ ? safeJsonStringify(this.getErrorData(paramsOrError))
135
+ : undefined,
133
136
  });
134
137
  }
135
138
  else {
@@ -147,5 +150,20 @@ export class TracedFSM extends FSM {
147
150
  "from" in value &&
148
151
  "to" in value);
149
152
  }
153
+ isErrorTransitionParams(value) {
154
+ if (!this.isTransitionParams(value)) {
155
+ return false;
156
+ }
157
+ return "error" in value.event;
158
+ }
159
+ getErrorData(value) {
160
+ if (!this.isErrorTransitionParams(value)) {
161
+ return undefined;
162
+ }
163
+ if ("error" in value.event) {
164
+ return value.event.error;
165
+ }
166
+ return value.event;
167
+ }
150
168
  }
151
169
  //# sourceMappingURL=traced-fsm.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"traced-fsm.js","sourceRoot":"","sources":["../../../src/ai-service/state-machine/traced-fsm.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"traced-fsm.js","sourceRoot":"","sources":["../../../src/ai-service/state-machine/traced-fsm.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,2 @@
1
+ export declare function safeJsonParse(json: string): unknown;
2
+ //# sourceMappingURL=safe-parse.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"safe-parse.d.ts","sourceRoot":"","sources":["../../../src/ai-service/util/safe-parse.ts"],"names":[],"mappings":"AAAA,wBAAgB,aAAa,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAMnD"}
@@ -0,0 +1,9 @@
1
+ export function safeJsonParse(json) {
2
+ try {
3
+ return JSON.parse(json);
4
+ }
5
+ catch (_error) {
6
+ return json;
7
+ }
8
+ }
9
+ //# sourceMappingURL=safe-parse.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"safe-parse.js","sourceRoot":"","sources":["../../../src/ai-service/util/safe-parse.ts"],"names":[],"mappings":"AAAA,MAAM,UAAU,aAAa,CAAC,IAAY;IACxC,IAAI,CAAC;QACH,OAAO,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;IAC1B,CAAC;IAAC,OAAO,MAAM,EAAE,CAAC;QAChB,OAAO,IAAI,CAAC;IACd,CAAC;AACH,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"safe-stringify.d.ts","sourceRoot":"","sources":["../../../src/ai-service/util/safe-stringify.ts"],"names":[],"mappings":"AAQA,wBAAgB,iBAAiB,CAC/B,GAAG,EAAE,OAAO,EACZ,KAAK,CAAC,EAAE,MAAM,GAAG,MAAM,GACtB,MAAM,CAkER"}
1
+ {"version":3,"file":"safe-stringify.d.ts","sourceRoot":"","sources":["../../../src/ai-service/util/safe-stringify.ts"],"names":[],"mappings":"AAQA,wBAAgB,iBAAiB,CAC/B,GAAG,EAAE,OAAO,EACZ,KAAK,CAAC,EAAE,MAAM,GAAG,MAAM,GACtB,MAAM,CA0ER"}
@@ -27,6 +27,13 @@ export function safeJsonStringify(obj, space) {
27
27
  return "[Circular Reference]";
28
28
  }
29
29
  seen.add(value);
30
+ if (value instanceof Error) {
31
+ return {
32
+ message: value.message,
33
+ stack: value.stack,
34
+ name: value.name,
35
+ };
36
+ }
30
37
  // Check for toJSON method that might be broken
31
38
  if (typeof value.toJSON === "function") {
32
39
  try {
@@ -1 +1 @@
1
- {"version":3,"file":"safe-stringify.js","sourceRoot":"","sources":["../../../src/ai-service/util/safe-stringify.ts"],"names":[],"mappings":"AAAA,MAAM,cAAc,GAAG;IACrB,UAAU;IACV,SAAS;IACT,KAAK;IACL,cAAc;IACd,eAAe;CAChB,CAAC;AAEF,MAAM,UAAU,iBAAiB,CAC/B,GAAY,EACZ,KAAuB;IAEvB,IAAI,GAAG,KAAK,IAAI,IAAI,GAAG,KAAK,SAAS,EAAE,CAAC;QACtC,OAAO,IAAI,CAAC;IACd,CAAC;IACD,IAAI,OAAO,GAAG,KAAK,QAAQ,EAAE,CAAC;QAC5B,OAAO,GAAG,CAAC;IACb,CAAC;IACD,MAAM,IAAI,GAAG,IAAI,OAAO,EAAE,CAAC;IAE3B,OAAO,IAAI,CAAC,SAAS,CACnB,GAAG,EACH,CAAC,GAAG,EAAE,KAAK,EAAE,EAAE;QACb,mCAAmC;QACnC,IAAI,KAAK,KAAK,IAAI,IAAI,KAAK,KAAK,SAAS,EAAE,CAAC;YAC1C,OAAO,KAAK,CAAC;QACf,CAAC;QAED,IAAI,cAAc,CAAC,QAAQ,CAAC,GAAG,CAAC,WAAW,EAAE,CAAC,EAAE,CAAC;YAC/C,OAAO,YAAY,CAAC;QACtB,CAAC;QAED,6BAA6B;QAC7B,IAAI,OAAO,KAAK,KAAK,QAAQ,EAAE,CAAC;YAC9B,IAAI,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC;gBACpB,OAAO,sBAAsB,CAAC;YAChC,CAAC;YACD,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;YAEhB,+CAA+C;YAC/C,IAAI,OAAO,KAAK,CAAC,MAAM,KAAK,UAAU,EAAE,CAAC;gBACvC,IAAI,CAAC;oBACH,MAAM,SAAS,GAAG,KAAK,CAAC,MAAM,EAAE,CAAC;oBACjC,kDAAkD;oBAClD,OAAO,SAAS,CAAC;gBACnB,CAAC;gBAAC,OAAO,MAAM,EAAE,CAAC;oBAChB,8CAA8C;oBAC9C,OAAO,+BAA+B,KAAK,CAAC,WAAW,EAAE,IAAI,IAAI,SAAS,GAAG,CAAC;gBAChF,CAAC;YACH,CAAC;QACH,CAAC;QAED,6BAA6B;QAC7B,IAAI,CAAC;YACH,mDAAmD;YACnD,IAAI,CAAC,SAAS,CAAC,KAAK,EAAE,IAAI,EAAE,KAAK,CAAC,CAAC;YACnC,OAAO,KAAK,CAAC;QACf,CAAC;QAAC,OAAO,MAAM,EAAE,CAAC;YAChB,gCAAgC;YAChC,IAAI,OAAO,KAAK,KAAK,UAAU,EAAE,CAAC;gBAChC,OAAO,cAAc,KAAK,CAAC,IAAI,IAAI,WAAW,GAAG,CAAC;YACpD,CAAC;YACD,IAAI,OAAO,KAAK,KAAK,QAAQ,EAAE,CAAC;gBAC9B,OAAO,YAAY,KAAK,CAAC,QAAQ,EAAE,GAAG,CAAC;YACzC,CAAC;YACD,IAAI,OAAO,KAAK,KAAK,QAAQ,EAAE,CAAC;gBAC9B,OAAO,YAAY,KAAK,CAAC,QAAQ,EAAE,GAAG,CAAC;YACzC,CAAC;YACD,IAAI,OAAO,KAAK,KAAK,QAAQ,EAAE,CAAC;gBAC9B,uCAAuC;gBACvC,OAAO,oBAAoB,CAAC;YAC9B,CAAC;YACD,OAAO,oBAAoB,CAAC;QAC9B,CAAC;IACH,CAAC,EACD,KAAK,CACN,CAAC;AACJ,CAAC"}
1
+ {"version":3,"file":"safe-stringify.js","sourceRoot":"","sources":["../../../src/ai-service/util/safe-stringify.ts"],"names":[],"mappings":"AAAA,MAAM,cAAc,GAAG;IACrB,UAAU;IACV,SAAS;IACT,KAAK;IACL,cAAc;IACd,eAAe;CAChB,CAAC;AAEF,MAAM,UAAU,iBAAiB,CAC/B,GAAY,EACZ,KAAuB;IAEvB,IAAI,GAAG,KAAK,IAAI,IAAI,GAAG,KAAK,SAAS,EAAE,CAAC;QACtC,OAAO,IAAI,CAAC;IACd,CAAC;IACD,IAAI,OAAO,GAAG,KAAK,QAAQ,EAAE,CAAC;QAC5B,OAAO,GAAG,CAAC;IACb,CAAC;IACD,MAAM,IAAI,GAAG,IAAI,OAAO,EAAE,CAAC;IAE3B,OAAO,IAAI,CAAC,SAAS,CACnB,GAAG,EACH,CAAC,GAAG,EAAE,KAAK,EAAE,EAAE;QACb,mCAAmC;QACnC,IAAI,KAAK,KAAK,IAAI,IAAI,KAAK,KAAK,SAAS,EAAE,CAAC;YAC1C,OAAO,KAAK,CAAC;QACf,CAAC;QAED,IAAI,cAAc,CAAC,QAAQ,CAAC,GAAG,CAAC,WAAW,EAAE,CAAC,EAAE,CAAC;YAC/C,OAAO,YAAY,CAAC;QACtB,CAAC;QAED,6BAA6B;QAC7B,IAAI,OAAO,KAAK,KAAK,QAAQ,EAAE,CAAC;YAC9B,IAAI,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC;gBACpB,OAAO,sBAAsB,CAAC;YAChC,CAAC;YACD,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;YAEhB,IAAI,KAAK,YAAY,KAAK,EAAE,CAAC;gBAC3B,OAAO;oBACL,OAAO,EAAE,KAAK,CAAC,OAAO;oBACtB,KAAK,EAAE,KAAK,CAAC,KAAK;oBAClB,IAAI,EAAE,KAAK,CAAC,IAAI;iBACjB,CAAC;YACJ,CAAC;YAED,+CAA+C;YAC/C,IAAI,OAAO,KAAK,CAAC,MAAM,KAAK,UAAU,EAAE,CAAC;gBACvC,IAAI,CAAC;oBACH,MAAM,SAAS,GAAG,KAAK,CAAC,MAAM,EAAE,CAAC;oBACjC,kDAAkD;oBAClD,OAAO,SAAS,CAAC;gBACnB,CAAC;gBAAC,OAAO,MAAM,EAAE,CAAC;oBAChB,8CAA8C;oBAC9C,OAAO,+BAA+B,KAAK,CAAC,WAAW,EAAE,IAAI,IAAI,SAAS,GAAG,CAAC;gBAChF,CAAC;YACH,CAAC;QACH,CAAC;QAED,6BAA6B;QAC7B,IAAI,CAAC;YACH,mDAAmD;YACnD,IAAI,CAAC,SAAS,CAAC,KAAK,EAAE,IAAI,EAAE,KAAK,CAAC,CAAC;YACnC,OAAO,KAAK,CAAC;QACf,CAAC;QAAC,OAAO,MAAM,EAAE,CAAC;YAChB,gCAAgC;YAChC,IAAI,OAAO,KAAK,KAAK,UAAU,EAAE,CAAC;gBAChC,OAAO,cAAc,KAAK,CAAC,IAAI,IAAI,WAAW,GAAG,CAAC;YACpD,CAAC;YACD,IAAI,OAAO,KAAK,KAAK,QAAQ,EAAE,CAAC;gBAC9B,OAAO,YAAY,KAAK,CAAC,QAAQ,EAAE,GAAG,CAAC;YACzC,CAAC;YACD,IAAI,OAAO,KAAK,KAAK,QAAQ,EAAE,CAAC;gBAC9B,OAAO,YAAY,KAAK,CAAC,QAAQ,EAAE,GAAG,CAAC;YACzC,CAAC;YACD,IAAI,OAAO,KAAK,KAAK,QAAQ,EAAE,CAAC;gBAC9B,uCAAuC;gBACvC,OAAO,oBAAoB,CAAC;YAC9B,CAAC;YACD,OAAO,oBAAoB,CAAC;QAC9B,CAAC;IACH,CAAC,EACD,KAAK,CACN,CAAC;AACJ,CAAC"}
@@ -12,4 +12,5 @@ export type StopCondition<TOOLS extends ToolSet> = BaseStopCondition<TOOLS>;
12
12
  */
13
13
  export declare function hasToolSuccess(toolName: string, maxAttempts?: number): StopCondition<any>;
14
14
  export declare function isAwaitingUser(clark: Clark): StopCondition<any>;
15
+ export declare const needsPermissionToExecute: (clark: Clark) => StopCondition<any>;
15
16
  //# sourceMappingURL=stop-condition.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"stop-condition.d.ts","sourceRoot":"","sources":["../../../src/ai-service/util/stop-condition.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,+BAA+B,CAAC;AAC3D,OAAO,KAAK,EAAE,OAAO,EAAE,aAAa,IAAI,iBAAiB,EAAE,MAAM,IAAI,CAAC;AAEtE;;GAEG;AACH,MAAM,MAAM,aAAa,CAAC,KAAK,SAAS,OAAO,IAAI,iBAAiB,CAAC,KAAK,CAAC,CAAC;AAE5E;;;;;GAKG;AACH,wBAAgB,cAAc,CAC5B,QAAQ,EAAE,MAAM,EAChB,WAAW,GAAE,MAAU,GACtB,aAAa,CAAC,GAAG,CAAC,CAcpB;AAED,wBAAgB,cAAc,CAAC,KAAK,EAAE,KAAK,GAAG,aAAa,CAAC,GAAG,CAAC,CAI/D"}
1
+ {"version":3,"file":"stop-condition.d.ts","sourceRoot":"","sources":["../../../src/ai-service/util/stop-condition.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,+BAA+B,CAAC;AAC3D,OAAO,KAAK,EAAE,OAAO,EAAE,aAAa,IAAI,iBAAiB,EAAE,MAAM,IAAI,CAAC;AAEtE;;GAEG;AACH,MAAM,MAAM,aAAa,CAAC,KAAK,SAAS,OAAO,IAAI,iBAAiB,CAAC,KAAK,CAAC,CAAC;AAE5E;;;;;GAKG;AACH,wBAAgB,cAAc,CAC5B,QAAQ,EAAE,MAAM,EAChB,WAAW,GAAE,MAAU,GACtB,aAAa,CAAC,GAAG,CAAC,CAcpB;AAED,wBAAgB,cAAc,CAAC,KAAK,EAAE,KAAK,GAAG,aAAa,CAAC,GAAG,CAAC,CAI/D;AAED,eAAO,MAAM,wBAAwB,GAAI,OAAO,KAAK,KAAG,aAAa,CAAC,GAAG,CAIxE,CAAC"}
@@ -22,4 +22,9 @@ export function isAwaitingUser(clark) {
22
22
  return clark.state === ClarkStateNames.AwaitingUser;
23
23
  };
24
24
  }
25
+ export const needsPermissionToExecute = (clark) => {
26
+ return async () => {
27
+ return clark.context.pendingToolPermissionRequest !== undefined;
28
+ };
29
+ };
25
30
  //# sourceMappingURL=stop-condition.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"stop-condition.js","sourceRoot":"","sources":["../../../src/ai-service/util/stop-condition.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,MAAM,+BAA+B,CAAC;AAShE;;;;;GAKG;AACH,MAAM,UAAU,cAAc,CAC5B,QAAgB,EAChB,cAAsB,CAAC;IAEvB,OAAO,CAAC,EAAE,KAAK,EAAE,EAAE,EAAE;QACnB,MAAM,UAAU,GACd,KAAK,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC,EAAE,WAAW,EAAE,IAAI,CACxC,CAAC,UAAU,EAAE,EAAE,CAAC,UAAU,CAAC,QAAQ,KAAK,QAAQ,CACjD,IAAI,KAAK,CAAC;QACb,IAAI,UAAU,EAAE,CAAC;YACf,OAAO,IAAI,CAAC;QACd,CAAC;QACD,MAAM,QAAQ,GAAG,KAAK;aACnB,OAAO,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,SAAS,IAAI,EAAE,CAAC;aACvC,MAAM,CAAC,CAAC,QAAQ,EAAE,EAAE,CAAC,QAAQ,CAAC,QAAQ,KAAK,QAAQ,CAAC,CAAC,MAAM,CAAC;QAC/D,OAAO,QAAQ,IAAI,WAAW,CAAC;IACjC,CAAC,CAAC;AACJ,CAAC;AAED,MAAM,UAAU,cAAc,CAAC,KAAY;IACzC,OAAO,GAAG,EAAE;QACV,OAAO,KAAK,CAAC,KAAK,KAAK,eAAe,CAAC,YAAY,CAAC;IACtD,CAAC,CAAC;AACJ,CAAC"}
1
+ {"version":3,"file":"stop-condition.js","sourceRoot":"","sources":["../../../src/ai-service/util/stop-condition.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,MAAM,+BAA+B,CAAC;AAShE;;;;;GAKG;AACH,MAAM,UAAU,cAAc,CAC5B,QAAgB,EAChB,cAAsB,CAAC;IAEvB,OAAO,CAAC,EAAE,KAAK,EAAE,EAAE,EAAE;QACnB,MAAM,UAAU,GACd,KAAK,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC,EAAE,WAAW,EAAE,IAAI,CACxC,CAAC,UAAU,EAAE,EAAE,CAAC,UAAU,CAAC,QAAQ,KAAK,QAAQ,CACjD,IAAI,KAAK,CAAC;QACb,IAAI,UAAU,EAAE,CAAC;YACf,OAAO,IAAI,CAAC;QACd,CAAC;QACD,MAAM,QAAQ,GAAG,KAAK;aACnB,OAAO,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,SAAS,IAAI,EAAE,CAAC;aACvC,MAAM,CAAC,CAAC,QAAQ,EAAE,EAAE,CAAC,QAAQ,CAAC,QAAQ,KAAK,QAAQ,CAAC,CAAC,MAAM,CAAC;QAC/D,OAAO,QAAQ,IAAI,WAAW,CAAC;IACjC,CAAC,CAAC;AACJ,CAAC;AAED,MAAM,UAAU,cAAc,CAAC,KAAY;IACzC,OAAO,GAAG,EAAE;QACV,OAAO,KAAK,CAAC,KAAK,KAAK,eAAe,CAAC,YAAY,CAAC;IACtD,CAAC,CAAC;AACJ,CAAC;AAED,MAAM,CAAC,MAAM,wBAAwB,GAAG,CAAC,KAAY,EAAsB,EAAE;IAC3E,OAAO,KAAK,IAAI,EAAE;QAChB,OAAO,KAAK,CAAC,OAAO,CAAC,4BAA4B,KAAK,SAAS,CAAC;IAClE,CAAC,CAAC;AACJ,CAAC,CAAC"}
@@ -0,0 +1,2 @@
1
+ export declare function stripLengthyContent<T>(value: T, maxBytes?: number): T;
2
+ //# sourceMappingURL=strip-content.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"strip-content.d.ts","sourceRoot":"","sources":["../../../src/ai-service/util/strip-content.ts"],"names":[],"mappings":"AAcA,wBAAgB,mBAAmB,CAAC,CAAC,EAAE,KAAK,EAAE,CAAC,EAAE,QAAQ,SAAW,GAAG,CAAC,CA0BvE"}
@@ -0,0 +1,31 @@
1
+ const TRUNCATED_SUFFIX = "... [truncated]";
2
+ function truncateToBytes(str, maxBytes, suffix = TRUNCATED_SUFFIX) {
3
+ const strBytes = Buffer.byteLength(str);
4
+ if (strBytes <= maxBytes) {
5
+ return str;
6
+ }
7
+ return Buffer.from(str).subarray(0, maxBytes).toString("utf8") + suffix;
8
+ }
9
+ export function stripLengthyContent(value, maxBytes = 1024 * 5) {
10
+ if (maxBytes <= 0) {
11
+ return value;
12
+ }
13
+ if (value === null || value === undefined) {
14
+ return value;
15
+ }
16
+ if (Array.isArray(value)) {
17
+ return value.map((item) => stripLengthyContent(item, maxBytes));
18
+ }
19
+ if (typeof value === "object") {
20
+ const result = {};
21
+ for (const [key, val] of Object.entries(value)) {
22
+ result[key] = stripLengthyContent(val, maxBytes);
23
+ }
24
+ return result;
25
+ }
26
+ if (typeof value === "string") {
27
+ return truncateToBytes(value, maxBytes);
28
+ }
29
+ return value;
30
+ }
31
+ //# sourceMappingURL=strip-content.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"strip-content.js","sourceRoot":"","sources":["../../../src/ai-service/util/strip-content.ts"],"names":[],"mappings":"AAAA,MAAM,gBAAgB,GAAG,iBAAiB,CAAC;AAE3C,SAAS,eAAe,CACtB,GAAW,EACX,QAAgB,EAChB,MAAM,GAAG,gBAAgB;IAEzB,MAAM,QAAQ,GAAG,MAAM,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC;IACxC,IAAI,QAAQ,IAAI,QAAQ,EAAE,CAAC;QACzB,OAAO,GAAG,CAAC;IACb,CAAC;IACD,OAAO,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,QAAQ,CAAC,CAAC,EAAE,QAAQ,CAAC,CAAC,QAAQ,CAAC,MAAM,CAAC,GAAG,MAAM,CAAC;AAC1E,CAAC;AAED,MAAM,UAAU,mBAAmB,CAAI,KAAQ,EAAE,QAAQ,GAAG,IAAI,GAAG,CAAC;IAClE,IAAI,QAAQ,IAAI,CAAC,EAAE,CAAC;QAClB,OAAO,KAAK,CAAC;IACf,CAAC;IAED,IAAI,KAAK,KAAK,IAAI,IAAI,KAAK,KAAK,SAAS,EAAE,CAAC;QAC1C,OAAO,KAAK,CAAC;IACf,CAAC;IAED,IAAI,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC;QACzB,OAAO,KAAK,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,mBAAmB,CAAC,IAAI,EAAE,QAAQ,CAAC,CAAM,CAAC;IACvE,CAAC;IAED,IAAI,OAAO,KAAK,KAAK,QAAQ,EAAE,CAAC;QAC9B,MAAM,MAAM,GAA4B,EAAE,CAAC;QAC3C,KAAK,MAAM,CAAC,GAAG,EAAE,GAAG,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC;YAC/C,MAAM,CAAC,GAAG,CAAC,GAAG,mBAAmB,CAAC,GAAG,EAAE,QAAQ,CAAC,CAAC;QACnD,CAAC;QACD,OAAO,MAAW,CAAC;IACrB,CAAC;IAED,IAAI,OAAO,KAAK,KAAK,QAAQ,EAAE,CAAC;QAC9B,OAAO,eAAe,CAAC,KAAK,EAAE,QAAQ,CAAM,CAAC;IAC/C,CAAC;IAED,OAAO,KAAK,CAAC;AACf,CAAC"}
@@ -0,0 +1,13 @@
1
+ /**
2
+ * Creates a unique identifier based on message, toolname, and input.
3
+ *
4
+ * This generates a deterministic hash that can be used to identify
5
+ * a specific tool call based on its parameters.
6
+ *
7
+ * @param messageId - The message ID (or any message identifier)
8
+ * @param toolName - The name of the tool
9
+ * @param input - The input parameters for the tool
10
+ * @returns A unique identifier string
11
+ */
12
+ export declare function getToolCallSignature(toolName: string, input: unknown): string;
13
+ //# sourceMappingURL=tool-signature.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"tool-signature.d.ts","sourceRoot":"","sources":["../../../src/ai-service/util/tool-signature.ts"],"names":[],"mappings":"AAmBA;;;;;;;;;;GAUG;AACH,wBAAgB,oBAAoB,CAAC,QAAQ,EAAE,MAAM,EAAE,KAAK,EAAE,OAAO,GAAG,MAAM,CAQ7E"}
@@ -0,0 +1,38 @@
1
+ import { createHash } from "node:crypto";
2
+ /**
3
+ * Recursively sorts object keys for deterministic JSON stringification.
4
+ */
5
+ function sortObjectKeys(obj) {
6
+ if (obj === null || typeof obj !== "object") {
7
+ return obj;
8
+ }
9
+ if (Array.isArray(obj)) {
10
+ return obj.map(sortObjectKeys);
11
+ }
12
+ const sorted = {};
13
+ for (const key of Object.keys(obj).sort()) {
14
+ sorted[key] = sortObjectKeys(obj[key]);
15
+ }
16
+ return sorted;
17
+ }
18
+ /**
19
+ * Creates a unique identifier based on message, toolname, and input.
20
+ *
21
+ * This generates a deterministic hash that can be used to identify
22
+ * a specific tool call based on its parameters.
23
+ *
24
+ * @param messageId - The message ID (or any message identifier)
25
+ * @param toolName - The name of the tool
26
+ * @param input - The input parameters for the tool
27
+ * @returns A unique identifier string
28
+ */
29
+ export function getToolCallSignature(toolName, input) {
30
+ const hash = createHash("sha256");
31
+ // Sort keys for deterministic JSON stringification
32
+ const sortedInput = JSON.stringify(sortObjectKeys(input)) ?? "null";
33
+ hash.update(toolName ?? "");
34
+ hash.update(sortedInput);
35
+ const hashValue = hash.digest("hex");
36
+ return hashValue;
37
+ }
38
+ //# sourceMappingURL=tool-signature.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"tool-signature.js","sourceRoot":"","sources":["../../../src/ai-service/util/tool-signature.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AAEzC;;GAEG;AACH,SAAS,cAAc,CAAC,GAAY;IAClC,IAAI,GAAG,KAAK,IAAI,IAAI,OAAO,GAAG,KAAK,QAAQ,EAAE,CAAC;QAC5C,OAAO,GAAG,CAAC;IACb,CAAC;IACD,IAAI,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC;QACvB,OAAO,GAAG,CAAC,GAAG,CAAC,cAAc,CAAC,CAAC;IACjC,CAAC;IACD,MAAM,MAAM,GAAwB,EAAE,CAAC;IACvC,KAAK,MAAM,GAAG,IAAI,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC;QAC1C,MAAM,CAAC,GAAG,CAAC,GAAG,cAAc,CAAE,GAAW,CAAC,GAAG,CAAC,CAAC,CAAC;IAClD,CAAC;IACD,OAAO,MAAM,CAAC;AAChB,CAAC;AAED;;;;;;;;;;GAUG;AACH,MAAM,UAAU,oBAAoB,CAAC,QAAgB,EAAE,KAAc;IACnE,MAAM,IAAI,GAAG,UAAU,CAAC,QAAQ,CAAC,CAAC;IAClC,mDAAmD;IACnD,MAAM,WAAW,GAAG,IAAI,CAAC,SAAS,CAAC,cAAc,CAAC,KAAK,CAAC,CAAC,IAAI,MAAM,CAAC;IACpE,IAAI,CAAC,MAAM,CAAC,QAAQ,IAAI,EAAE,CAAC,CAAC;IAC5B,IAAI,CAAC,MAAM,CAAC,WAAW,CAAC,CAAC;IACzB,MAAM,SAAS,GAAG,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;IACrC,OAAO,SAAS,CAAC;AACnB,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"file-sync-vite-plugin.d.ts","sourceRoot":"","sources":["../src/file-sync-vite-plugin.ts"],"names":[],"mappings":"AA+CA,OAAO,KAAK,EACV,qBAAqB,EACrB,oBAAoB,EACrB,MAAM,qBAAqB,CAAC;AAW7B,OAAO,KAAK,EAAE,MAAM,EAA0B,MAAM,MAAM,CAAC;AAY3D,eAAO,MAAM,kBAAkB,EAAE,CAC/B,YAAY,EAAE,oBAAoB,EAClC,OAAO,CAAC,EAAE,qBAAqB,KAC5B;IAAE,MAAM,EAAE,MAAM,EAAE,CAAC;IAAC,OAAO,EAAE,MAAM,IAAI,CAAA;CA8vC3C,CAAC"}
1
+ {"version":3,"file":"file-sync-vite-plugin.d.ts","sourceRoot":"","sources":["../src/file-sync-vite-plugin.ts"],"names":[],"mappings":"AA+CA,OAAO,KAAK,EACV,qBAAqB,EACrB,oBAAoB,EACrB,MAAM,qBAAqB,CAAC;AAW7B,OAAO,KAAK,EAAE,MAAM,EAA0B,MAAM,MAAM,CAAC;AAY3D,eAAO,MAAM,kBAAkB,EAAE,CAC/B,YAAY,EAAE,oBAAoB,EAClC,OAAO,CAAC,EAAE,qBAAqB,KAC5B;IAAE,MAAM,EAAE,MAAM,EAAE,CAAC;IAAC,OAAO,EAAE,MAAM,IAAI,CAAA;CAiwC3C,CAAC"}
@@ -702,6 +702,7 @@ export const fileSyncVitePlugin = (pluginParams, options) => {
702
702
  syncService.on("draftStateChanged", (hasDraft) => {
703
703
  if (hasDraft) {
704
704
  hasHadAnyDrafts = true;
705
+ logger.debug("hasHadAnyDrafts set to true");
705
706
  }
706
707
  void (async () => {
707
708
  // Notify UI clients
@@ -724,6 +725,7 @@ export const fileSyncVitePlugin = (pluginParams, options) => {
724
725
  aiService.handleClearAllRuntimeErrors();
725
726
  // Always fire full-reload after the first generation
726
727
  if (isFirstContentfulGeneration && hasHadAnyDrafts) {
728
+ logger.debug("Sending full-reload after first generation");
727
729
  server.ws.send({
728
730
  type: "full-reload",
729
731
  });
@@ -950,6 +952,7 @@ export const fileSyncVitePlugin = (pluginParams, options) => {
950
952
  });
951
953
  if (errorIndex !== -1) {
952
954
  loggedViteErrors.splice(errorIndex, 1);
955
+ logger.debug("Sending full-reload after error");
953
956
  void ctx.server.ws.send({ type: "full-reload" });
954
957
  return [];
955
958
  }