@agent-native/core 0.7.12 → 0.7.13

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 (302) hide show
  1. package/README.md +1 -1
  2. package/dist/agent/engine/ai-sdk-engine.d.ts.map +1 -1
  3. package/dist/agent/engine/ai-sdk-engine.js +26 -8
  4. package/dist/agent/engine/ai-sdk-engine.js.map +1 -1
  5. package/dist/agent/engine/builder-engine.d.ts +19 -0
  6. package/dist/agent/engine/builder-engine.d.ts.map +1 -0
  7. package/dist/agent/engine/builder-engine.js +430 -0
  8. package/dist/agent/engine/builder-engine.js.map +1 -0
  9. package/dist/agent/engine/builtin.d.ts.map +1 -1
  10. package/dist/agent/engine/builtin.js +26 -10
  11. package/dist/agent/engine/builtin.js.map +1 -1
  12. package/dist/agent/engine/index.d.ts +1 -1
  13. package/dist/agent/engine/index.d.ts.map +1 -1
  14. package/dist/agent/engine/index.js +1 -1
  15. package/dist/agent/engine/index.js.map +1 -1
  16. package/dist/agent/engine/registry.d.ts +20 -1
  17. package/dist/agent/engine/registry.d.ts.map +1 -1
  18. package/dist/agent/engine/registry.js +49 -1
  19. package/dist/agent/engine/registry.js.map +1 -1
  20. package/dist/agent/engine/types.d.ts +30 -0
  21. package/dist/agent/engine/types.d.ts.map +1 -1
  22. package/dist/agent/engine/types.js +19 -1
  23. package/dist/agent/engine/types.js.map +1 -1
  24. package/dist/agent/production-agent.d.ts.map +1 -1
  25. package/dist/agent/production-agent.js +65 -7
  26. package/dist/agent/production-agent.js.map +1 -1
  27. package/dist/agent/run-manager.d.ts.map +1 -1
  28. package/dist/agent/run-manager.js +11 -1
  29. package/dist/agent/run-manager.js.map +1 -1
  30. package/dist/agent/thread-data-builder.d.ts +4 -0
  31. package/dist/agent/thread-data-builder.d.ts.map +1 -1
  32. package/dist/agent/thread-data-builder.js +1 -0
  33. package/dist/agent/thread-data-builder.js.map +1 -1
  34. package/dist/agent/types.d.ts +8 -0
  35. package/dist/agent/types.d.ts.map +1 -1
  36. package/dist/checkpoints/service.d.ts +1 -0
  37. package/dist/checkpoints/service.d.ts.map +1 -1
  38. package/dist/checkpoints/service.js +26 -2
  39. package/dist/checkpoints/service.js.map +1 -1
  40. package/dist/cli/create.d.ts +30 -0
  41. package/dist/cli/create.d.ts.map +1 -1
  42. package/dist/cli/create.js +25 -13
  43. package/dist/cli/create.js.map +1 -1
  44. package/dist/client/AgentPanel.js +1 -1
  45. package/dist/client/AgentPanel.js.map +1 -1
  46. package/dist/client/AssistantChat.d.ts.map +1 -1
  47. package/dist/client/AssistantChat.js +49 -10
  48. package/dist/client/AssistantChat.js.map +1 -1
  49. package/dist/client/ConnectBuilderCard.d.ts +1 -7
  50. package/dist/client/ConnectBuilderCard.d.ts.map +1 -1
  51. package/dist/client/ConnectBuilderCard.js +30 -132
  52. package/dist/client/ConnectBuilderCard.js.map +1 -1
  53. package/dist/client/MultiTabAssistantChat.d.ts.map +1 -1
  54. package/dist/client/MultiTabAssistantChat.js +30 -9
  55. package/dist/client/MultiTabAssistantChat.js.map +1 -1
  56. package/dist/client/analytics.d.ts +5 -8
  57. package/dist/client/analytics.d.ts.map +1 -1
  58. package/dist/client/analytics.js +53 -11
  59. package/dist/client/analytics.js.map +1 -1
  60. package/dist/client/builder-mark.d.ts +9 -0
  61. package/dist/client/builder-mark.d.ts.map +1 -0
  62. package/dist/client/builder-mark.js +10 -0
  63. package/dist/client/builder-mark.js.map +1 -0
  64. package/dist/client/components/ui/popover.d.ts +8 -0
  65. package/dist/client/components/ui/popover.d.ts.map +1 -0
  66. package/dist/client/components/ui/popover.js +11 -0
  67. package/dist/client/components/ui/popover.js.map +1 -0
  68. package/dist/client/composer/ComposerPlusMenu.d.ts +2 -0
  69. package/dist/client/composer/ComposerPlusMenu.d.ts.map +1 -0
  70. package/dist/client/composer/ComposerPlusMenu.js +244 -0
  71. package/dist/client/composer/ComposerPlusMenu.js.map +1 -0
  72. package/dist/client/composer/TiptapComposer.d.ts.map +1 -1
  73. package/dist/client/composer/TiptapComposer.js +9 -5
  74. package/dist/client/composer/TiptapComposer.js.map +1 -1
  75. package/dist/client/composer/useVoiceDictation.d.ts.map +1 -1
  76. package/dist/client/composer/useVoiceDictation.js +4 -2
  77. package/dist/client/composer/useVoiceDictation.js.map +1 -1
  78. package/dist/client/error-format.d.ts +2 -0
  79. package/dist/client/error-format.d.ts.map +1 -0
  80. package/dist/client/error-format.js +31 -0
  81. package/dist/client/error-format.js.map +1 -0
  82. package/dist/client/index.d.ts +3 -1
  83. package/dist/client/index.d.ts.map +1 -1
  84. package/dist/client/index.js +3 -1
  85. package/dist/client/index.js.map +1 -1
  86. package/dist/client/observability/ObservabilityDashboard.d.ts +5 -0
  87. package/dist/client/observability/ObservabilityDashboard.d.ts.map +1 -0
  88. package/dist/client/observability/ObservabilityDashboard.js +169 -0
  89. package/dist/client/observability/ObservabilityDashboard.js.map +1 -0
  90. package/dist/client/observability/ThumbsFeedback.d.ts +8 -0
  91. package/dist/client/observability/ThumbsFeedback.d.ts.map +1 -0
  92. package/dist/client/observability/ThumbsFeedback.js +64 -0
  93. package/dist/client/observability/ThumbsFeedback.js.map +1 -0
  94. package/dist/client/observability/index.d.ts +4 -0
  95. package/dist/client/observability/index.d.ts.map +1 -0
  96. package/dist/client/observability/index.js +4 -0
  97. package/dist/client/observability/index.js.map +1 -0
  98. package/dist/client/observability/useObservability.d.ts +128 -0
  99. package/dist/client/observability/useObservability.d.ts.map +1 -0
  100. package/dist/client/observability/useObservability.js +109 -0
  101. package/dist/client/observability/useObservability.js.map +1 -0
  102. package/dist/client/onboarding/OnboardingPanel.d.ts.map +1 -1
  103. package/dist/client/onboarding/OnboardingPanel.js +34 -92
  104. package/dist/client/onboarding/OnboardingPanel.js.map +1 -1
  105. package/dist/client/org/RequireActiveOrg.d.ts +33 -0
  106. package/dist/client/org/RequireActiveOrg.d.ts.map +1 -0
  107. package/dist/client/org/RequireActiveOrg.js +63 -0
  108. package/dist/client/org/RequireActiveOrg.js.map +1 -0
  109. package/dist/client/org/hooks.d.ts.map +1 -1
  110. package/dist/client/org/hooks.js +50 -15
  111. package/dist/client/org/hooks.js.map +1 -1
  112. package/dist/client/org/index.d.ts +1 -0
  113. package/dist/client/org/index.d.ts.map +1 -1
  114. package/dist/client/org/index.js +1 -0
  115. package/dist/client/org/index.js.map +1 -1
  116. package/dist/client/resources/ResourcesPanel.js +3 -3
  117. package/dist/client/resources/ResourcesPanel.js.map +1 -1
  118. package/dist/client/settings/AutomationsSection.js +1 -1
  119. package/dist/client/settings/AutomationsSection.js.map +1 -1
  120. package/dist/client/settings/BrowserSection.js +1 -1
  121. package/dist/client/settings/BrowserSection.js.map +1 -1
  122. package/dist/client/settings/SettingsPanel.d.ts.map +1 -1
  123. package/dist/client/settings/SettingsPanel.js +112 -12
  124. package/dist/client/settings/SettingsPanel.js.map +1 -1
  125. package/dist/client/settings/VoiceTranscriptionSection.d.ts.map +1 -1
  126. package/dist/client/settings/VoiceTranscriptionSection.js +10 -4
  127. package/dist/client/settings/VoiceTranscriptionSection.js.map +1 -1
  128. package/dist/client/settings/useBuilderStatus.d.ts +26 -0
  129. package/dist/client/settings/useBuilderStatus.d.ts.map +1 -1
  130. package/dist/client/settings/useBuilderStatus.js +128 -4
  131. package/dist/client/settings/useBuilderStatus.js.map +1 -1
  132. package/dist/client/sse-event-processor.d.ts +2 -0
  133. package/dist/client/sse-event-processor.d.ts.map +1 -1
  134. package/dist/client/sse-event-processor.js +6 -2
  135. package/dist/client/sse-event-processor.js.map +1 -1
  136. package/dist/client/transcription/BuilderTranscriptionCta.d.ts +9 -0
  137. package/dist/client/transcription/BuilderTranscriptionCta.d.ts.map +1 -0
  138. package/dist/client/transcription/BuilderTranscriptionCta.js +18 -0
  139. package/dist/client/transcription/BuilderTranscriptionCta.js.map +1 -0
  140. package/dist/client/transcription/use-live-transcription.d.ts +29 -0
  141. package/dist/client/transcription/use-live-transcription.d.ts.map +1 -0
  142. package/dist/client/transcription/use-live-transcription.js +156 -0
  143. package/dist/client/transcription/use-live-transcription.js.map +1 -0
  144. package/dist/client/use-builder-enabled.d.ts +17 -0
  145. package/dist/client/use-builder-enabled.d.ts.map +1 -0
  146. package/dist/client/use-builder-enabled.js +36 -0
  147. package/dist/client/use-builder-enabled.js.map +1 -0
  148. package/dist/client/use-db-sync.d.ts.map +1 -1
  149. package/dist/client/use-db-sync.js +4 -2
  150. package/dist/client/use-db-sync.js.map +1 -1
  151. package/dist/client/useProductionAgent.d.ts.map +1 -1
  152. package/dist/client/useProductionAgent.js +3 -1
  153. package/dist/client/useProductionAgent.js.map +1 -1
  154. package/dist/db/migrations.d.ts +9 -0
  155. package/dist/db/migrations.d.ts.map +1 -1
  156. package/dist/db/migrations.js +75 -10
  157. package/dist/db/migrations.js.map +1 -1
  158. package/dist/file-upload/builder.d.ts.map +1 -1
  159. package/dist/file-upload/builder.js +11 -4
  160. package/dist/file-upload/builder.js.map +1 -1
  161. package/dist/jobs/tools.d.ts.map +1 -1
  162. package/dist/jobs/tools.js +137 -161
  163. package/dist/jobs/tools.js.map +1 -1
  164. package/dist/notifications/actions.d.ts +2 -2
  165. package/dist/notifications/actions.d.ts.map +1 -1
  166. package/dist/notifications/actions.js +77 -69
  167. package/dist/notifications/actions.js.map +1 -1
  168. package/dist/observability/evals.d.ts +22 -0
  169. package/dist/observability/evals.d.ts.map +1 -0
  170. package/dist/observability/evals.js +371 -0
  171. package/dist/observability/evals.js.map +1 -0
  172. package/dist/observability/experiments.d.ts +24 -0
  173. package/dist/observability/experiments.d.ts.map +1 -0
  174. package/dist/observability/experiments.js +274 -0
  175. package/dist/observability/experiments.js.map +1 -0
  176. package/dist/observability/feedback.d.ts +14 -0
  177. package/dist/observability/feedback.d.ts.map +1 -0
  178. package/dist/observability/feedback.js +256 -0
  179. package/dist/observability/feedback.js.map +1 -0
  180. package/dist/observability/index.d.ts +6 -0
  181. package/dist/observability/index.d.ts.map +1 -0
  182. package/dist/observability/index.js +5 -0
  183. package/dist/observability/index.js.map +1 -0
  184. package/dist/observability/plugin.d.ts +2 -0
  185. package/dist/observability/plugin.d.ts.map +1 -0
  186. package/dist/observability/plugin.js +12 -0
  187. package/dist/observability/plugin.js.map +1 -0
  188. package/dist/observability/routes.d.ts +68 -0
  189. package/dist/observability/routes.d.ts.map +1 -0
  190. package/dist/observability/routes.js +301 -0
  191. package/dist/observability/routes.js.map +1 -0
  192. package/dist/observability/store.d.ts +77 -0
  193. package/dist/observability/store.d.ts.map +1 -0
  194. package/dist/observability/store.js +976 -0
  195. package/dist/observability/store.js.map +1 -0
  196. package/dist/observability/traces.d.ts +37 -0
  197. package/dist/observability/traces.d.ts.map +1 -0
  198. package/dist/observability/traces.js +182 -0
  199. package/dist/observability/traces.js.map +1 -0
  200. package/dist/observability/types.d.ts +159 -0
  201. package/dist/observability/types.d.ts.map +1 -0
  202. package/dist/observability/types.js +16 -0
  203. package/dist/observability/types.js.map +1 -0
  204. package/dist/onboarding/default-steps.d.ts.map +1 -1
  205. package/dist/onboarding/default-steps.js +6 -5
  206. package/dist/onboarding/default-steps.js.map +1 -1
  207. package/dist/onboarding/types.d.ts +10 -1
  208. package/dist/onboarding/types.d.ts.map +1 -1
  209. package/dist/org/context.d.ts +8 -1
  210. package/dist/org/context.d.ts.map +1 -1
  211. package/dist/org/context.js +163 -6
  212. package/dist/org/context.js.map +1 -1
  213. package/dist/org/handlers.d.ts.map +1 -1
  214. package/dist/org/handlers.js +49 -30
  215. package/dist/org/handlers.js.map +1 -1
  216. package/dist/progress/actions.d.ts +3 -0
  217. package/dist/progress/actions.d.ts.map +1 -1
  218. package/dist/progress/actions.js +86 -110
  219. package/dist/progress/actions.js.map +1 -1
  220. package/dist/progress/routes.d.ts +1 -1
  221. package/dist/progress/routes.js +1 -1
  222. package/dist/scripts/agent-engines/list-agent-engines.js +1 -1
  223. package/dist/scripts/agent-engines/list-agent-engines.js.map +1 -1
  224. package/dist/scripts/agent-engines/manage-agent-engine.d.ts +10 -0
  225. package/dist/scripts/agent-engines/manage-agent-engine.d.ts.map +1 -0
  226. package/dist/scripts/agent-engines/manage-agent-engine.js +47 -0
  227. package/dist/scripts/agent-engines/manage-agent-engine.js.map +1 -0
  228. package/dist/scripts/agent-engines/set-agent-engine.js +2 -2
  229. package/dist/scripts/agent-engines/set-agent-engine.js.map +1 -1
  230. package/dist/server/agent-chat-plugin.d.ts +39 -0
  231. package/dist/server/agent-chat-plugin.d.ts.map +1 -1
  232. package/dist/server/agent-chat-plugin.js +707 -443
  233. package/dist/server/agent-chat-plugin.js.map +1 -1
  234. package/dist/server/agent-teams.js +1 -1
  235. package/dist/server/agent-teams.js.map +1 -1
  236. package/dist/server/analytics.d.ts +5 -6
  237. package/dist/server/analytics.d.ts.map +1 -1
  238. package/dist/server/analytics.js +6 -14
  239. package/dist/server/analytics.js.map +1 -1
  240. package/dist/server/app-name.d.ts +5 -2
  241. package/dist/server/app-name.d.ts.map +1 -1
  242. package/dist/server/app-name.js +14 -3
  243. package/dist/server/app-name.js.map +1 -1
  244. package/dist/server/app-url.d.ts.map +1 -1
  245. package/dist/server/app-url.js +10 -1
  246. package/dist/server/app-url.js.map +1 -1
  247. package/dist/server/auth.d.ts +2 -0
  248. package/dist/server/auth.d.ts.map +1 -1
  249. package/dist/server/auth.js +153 -2
  250. package/dist/server/auth.js.map +1 -1
  251. package/dist/server/better-auth-instance.d.ts +2 -0
  252. package/dist/server/better-auth-instance.d.ts.map +1 -1
  253. package/dist/server/better-auth-instance.js +4 -0
  254. package/dist/server/better-auth-instance.js.map +1 -1
  255. package/dist/server/builder-browser.d.ts +59 -1
  256. package/dist/server/builder-browser.d.ts.map +1 -1
  257. package/dist/server/builder-browser.js +127 -11
  258. package/dist/server/builder-browser.js.map +1 -1
  259. package/dist/server/core-routes-plugin.d.ts.map +1 -1
  260. package/dist/server/core-routes-plugin.js +208 -6
  261. package/dist/server/core-routes-plugin.js.map +1 -1
  262. package/dist/server/credential-provider.d.ts +7 -0
  263. package/dist/server/credential-provider.d.ts.map +1 -1
  264. package/dist/server/credential-provider.js +10 -0
  265. package/dist/server/credential-provider.js.map +1 -1
  266. package/dist/server/onboarding-html.d.ts.map +1 -1
  267. package/dist/server/onboarding-html.js +29 -4
  268. package/dist/server/onboarding-html.js.map +1 -1
  269. package/dist/server/poll.d.ts.map +1 -1
  270. package/dist/server/poll.js +46 -5
  271. package/dist/server/poll.js.map +1 -1
  272. package/dist/server/ssr-handler.d.ts.map +1 -1
  273. package/dist/server/ssr-handler.js +2 -1
  274. package/dist/server/ssr-handler.js.map +1 -1
  275. package/dist/server/transcribe-voice.d.ts.map +1 -1
  276. package/dist/server/transcribe-voice.js +44 -5
  277. package/dist/server/transcribe-voice.js.map +1 -1
  278. package/dist/styles/agent-native.css +11 -2
  279. package/dist/templates/default/.agents/skills/progress/SKILL.md +14 -12
  280. package/dist/templates/default/app/root.tsx +7 -0
  281. package/dist/transcription/builder-transcription.d.ts +27 -0
  282. package/dist/transcription/builder-transcription.d.ts.map +1 -0
  283. package/dist/transcription/builder-transcription.js +41 -0
  284. package/dist/transcription/builder-transcription.js.map +1 -0
  285. package/dist/triggers/actions.d.ts +3 -0
  286. package/dist/triggers/actions.d.ts.map +1 -1
  287. package/dist/triggers/actions.js +189 -213
  288. package/dist/triggers/actions.js.map +1 -1
  289. package/docs/content/agent-mentions.md +1 -1
  290. package/docs/content/automations.md +22 -19
  291. package/docs/content/cloneable-saas.md +2 -2
  292. package/docs/content/deployment.md +21 -61
  293. package/docs/content/getting-started.md +1 -1
  294. package/docs/content/key-concepts.md +1 -1
  295. package/docs/content/{enterprise-workspace.md → multi-app-workspace.md} +3 -3
  296. package/docs/content/multi-tenancy.md +1 -1
  297. package/docs/content/progress.md +11 -11
  298. package/docs/content/template-dispatch.md +3 -3
  299. package/docs/content/workspace-management.md +1 -1
  300. package/package.json +9 -2
  301. package/src/templates/default/.agents/skills/progress/SKILL.md +14 -12
  302. package/src/templates/default/app/root.tsx +7 -0
@@ -1 +1 @@
1
- {"version":3,"file":"useProductionAgent.js","sourceRoot":"","sources":["../../src/client/useProductionAgent.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"useProductionAgent.js","sourceRoot":"","sources":["../../src/client/useProductionAgent.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,WAAW,EAAE,MAAM,EAAE,MAAM,OAAO,CAAC;AAEtD,OAAO,EAAE,mBAAmB,EAAE,MAAM,mBAAmB,CAAC;AAyBxD,wDAAwD;AACxD,MAAM,UAAU,kBAAkB,CAChC,OAAmC;IAEnC,MAAM,MAAM,GAAG,OAAO,EAAE,MAAM,IAAI,2BAA2B,CAAC;IAC9D,MAAM,CAAC,QAAQ,EAAE,WAAW,CAAC,GAAG,QAAQ,CAA2B,EAAE,CAAC,CAAC;IACvE,MAAM,CAAC,YAAY,EAAE,eAAe,CAAC,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAC;IACxD,MAAM,QAAQ,GAAG,MAAM,CAAyB,IAAI,CAAC,CAAC;IAEtD,MAAM,WAAW,GAAG,WAAW,CAC7B,KAAK,EAAE,IAAY,EAAE,EAAE;QACrB,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,IAAI,YAAY;YAAE,OAAO;QAEzC,MAAM,OAAO,GAA2B;YACtC,EAAE,EAAE,QAAQ,IAAI,CAAC,GAAG,EAAE,EAAE;YACxB,IAAI,EAAE,MAAM;YACZ,OAAO,EAAE,IAAI,CAAC,IAAI,EAAE;SACrB,CAAC;QAEF,WAAW,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,GAAG,IAAI,EAAE,OAAO,CAAC,CAAC,CAAC;QAC1C,eAAe,CAAC,IAAI,CAAC,CAAC;QAEtB,kDAAkD;QAClD,MAAM,CAAC,aAAa,CAClB,IAAI,WAAW,CAAC,qBAAqB,EAAE;YACrC,MAAM,EAAE,EAAE,OAAO,EAAE,IAAI,EAAE;SAC1B,CAAC,CACH,CAAC;QAEF,+DAA+D;QAC/D,sEAAsE;QACtE,MAAM,OAAO,GAAmB,QAAQ;aACrC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC,IAAI,EAAE,CAAC;aAC/B,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;YACX,IAAI,EAAE,CAAC,CAAC,IAAI;YACZ,OAAO,EAAE,CAAC,CAAC,OAAO;SACnB,CAAC,CAAC,CAAC;QAEN,MAAM,WAAW,GAAG,aAAa,IAAI,CAAC,GAAG,EAAE,EAAE,CAAC;QAC9C,MAAM,YAAY,GAA2B;YAC3C,EAAE,EAAE,WAAW;YACf,IAAI,EAAE,WAAW;YACjB,OAAO,EAAE,EAAE;YACX,SAAS,EAAE,EAAE;SACd,CAAC;QACF,WAAW,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,GAAG,IAAI,EAAE,YAAY,CAAC,CAAC,CAAC;QAE/C,MAAM,KAAK,GAAG,IAAI,eAAe,EAAE,CAAC;QACpC,QAAQ,CAAC,OAAO,GAAG,KAAK,CAAC;QAEzB,IAAI,CAAC;YACH,MAAM,GAAG,GAAG,MAAM,KAAK,CAAC,MAAM,EAAE;gBAC9B,MAAM,EAAE,MAAM;gBACd,OAAO,EAAE,EAAE,cAAc,EAAE,kBAAkB,EAAE;gBAC/C,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,EAAE,OAAO,EAAE,IAAI,CAAC,IAAI,EAAE,EAAE,OAAO,EAAE,CAAC;gBACvD,MAAM,EAAE,KAAK,CAAC,MAAM;aACrB,CAAC,CAAC;YAEH,IAAI,CAAC,GAAG,CAAC,EAAE,IAAI,CAAC,GAAG,CAAC,IAAI,EAAE,CAAC;gBACzB,MAAM,IAAI,KAAK,CAAC,iBAAiB,GAAG,CAAC,MAAM,EAAE,CAAC,CAAC;YACjD,CAAC;YAED,MAAM,MAAM,GAAG,GAAG,CAAC,IAAI,CAAC,SAAS,EAAE,CAAC;YACpC,MAAM,OAAO,GAAG,IAAI,WAAW,EAAE,CAAC;YAClC,IAAI,GAAG,GAAG,EAAE,CAAC;YAEb,OAAO,IAAI,EAAE,CAAC;gBACZ,MAAM,EAAE,IAAI,EAAE,KAAK,EAAE,GAAG,MAAM,MAAM,CAAC,IAAI,EAAE,CAAC;gBAC5C,IAAI,IAAI;oBAAE,MAAM;gBAEhB,GAAG,IAAI,OAAO,CAAC,MAAM,CAAC,KAAK,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC;gBAC/C,MAAM,KAAK,GAAG,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;gBAC9B,GAAG,GAAG,KAAK,CAAC,GAAG,EAAE,IAAI,EAAE,CAAC;gBAExB,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE,CAAC;oBACzB,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,QAAQ,CAAC;wBAAE,SAAS;oBACzC,MAAM,GAAG,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC;oBACjC,IAAI,CAAC,GAAG;wBAAE,SAAS;oBAEnB,IAAI,EAAkB,CAAC;oBACvB,IAAI,CAAC;wBACH,EAAE,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;oBACvB,CAAC;oBAAC,MAAM,CAAC;wBACP,SAAS;oBACX,CAAC;oBAED,IAAI,EAAE,CAAC,IAAI,KAAK,MAAM,EAAE,CAAC;wBACvB,WAAW,CAAC,CAAC,IAAI,EAAE,EAAE,CACnB,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CACb,CAAC,CAAC,EAAE,KAAK,WAAW;4BAClB,CAAC,CAAC,EAAE,GAAG,CAAC,EAAE,OAAO,EAAE,CAAC,CAAC,OAAO,GAAG,EAAE,CAAC,IAAI,EAAE;4BACxC,CAAC,CAAC,CAAC,CACN,CACF,CAAC;oBACJ,CAAC;yBAAM,IAAI,EAAE,CAAC,IAAI,KAAK,YAAY,EAAE,CAAC;wBACpC,WAAW,CAAC,CAAC,IAAI,EAAE,EAAE,CACnB,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CACb,CAAC,CAAC,EAAE,KAAK,WAAW;4BAClB,CAAC,CAAC;gCACE,GAAG,CAAC;gCACJ,SAAS,EAAE;oCACT,GAAG,CAAC,CAAC,CAAC,SAAS,IAAI,EAAE,CAAC;oCACtB,EAAE,IAAI,EAAE,EAAE,CAAC,IAAI,EAAE,KAAK,EAAE,EAAE,CAAC,KAAK,EAAE;iCACnC;6BACF;4BACH,CAAC,CAAC,CAAC,CACN,CACF,CAAC;oBACJ,CAAC;yBAAM,IAAI,EAAE,CAAC,IAAI,KAAK,WAAW,EAAE,CAAC;wBACnC,WAAW,CAAC,CAAC,IAAI,EAAE,EAAE,CACnB,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE;4BACb,IAAI,CAAC,CAAC,EAAE,KAAK,WAAW;gCAAE,OAAO,CAAC,CAAC;4BACnC,MAAM,KAAK,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,SAAS,IAAI,EAAE,CAAC,CAAC,CAAC;4BACvC,oCAAoC;4BACpC,MAAM,GAAG,GAAG,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,WAAW,CAAC,EAAE,CAAC,IAAI,CAAC,CAAC;4BAC1D,IAAI,GAAG,IAAI,CAAC;gCACV,KAAK,CAAC,GAAG,CAAC,GAAG,EAAE,GAAG,KAAK,CAAC,GAAG,CAAC,EAAE,MAAM,EAAE,EAAE,CAAC,MAAM,EAAE,CAAC;4BACpD,OAAO,EAAE,GAAG,CAAC,EAAE,SAAS,EAAE,KAAK,EAAE,CAAC;wBACpC,CAAC,CAAC,CACH,CAAC;oBACJ,CAAC;yBAAM,IAAI,EAAE,CAAC,IAAI,KAAK,YAAY,EAAE,CAAC;wBACpC,MAAM,SAAS,GAAG,EAAE,CAAC,KAAK,CAAC;wBAC3B,IAAI,EAAE,CAAC,MAAM,KAAK,OAAO,EAAE,CAAC;4BAC1B,WAAW,CAAC,CAAC,IAAI,EAAE,EAAE,CACnB,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CACb,CAAC,CAAC,EAAE,KAAK,WAAW;gCAClB,CAAC,CAAC;oCACE,GAAG,CAAC;oCACJ,SAAS,EAAE;wCACT,GAAG,CAAC,CAAC,CAAC,SAAS,IAAI,EAAE,CAAC;wCACtB;4CACE,IAAI,EAAE,SAAS,SAAS,EAAE;4CAC1B,KAAK,EAAE,EAAE;yCACV;qCACF;iCACF;gCACH,CAAC,CAAC,CAAC,CACN,CACF,CAAC;wBACJ,CAAC;6BAAM,IAAI,EAAE,CAAC,MAAM,KAAK,MAAM,IAAI,EAAE,CAAC,MAAM,KAAK,OAAO,EAAE,CAAC;4BACzD,WAAW,CAAC,CAAC,IAAI,EAAE,EAAE,CACnB,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE;gCACb,IAAI,CAAC,CAAC,EAAE,KAAK,WAAW;oCAAE,OAAO,CAAC,CAAC;gCACnC,MAAM,KAAK,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,SAAS,IAAI,EAAE,CAAC,CAAC,CAAC;gCACvC,MAAM,GAAG,GAAG,KAAK;qCACd,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC;qCAClB,WAAW,CAAC,SAAS,SAAS,EAAE,CAAC,CAAC;gCACrC,IAAI,GAAG,IAAI,CAAC;oCACV,KAAK,CAAC,GAAG,CAAC,GAAG;wCACX,GAAG,KAAK,CAAC,GAAG,CAAC;wCACb,MAAM,EACJ,EAAE,CAAC,MAAM,KAAK,OAAO;4CACnB,CAAC,CAAC,qBAAqB;4CACvB,CAAC,CAAC,MAAM;qCACb,CAAC;gCACJ,OAAO,EAAE,GAAG,CAAC,EAAE,SAAS,EAAE,KAAK,EAAE,CAAC;4BACpC,CAAC,CAAC,CACH,CAAC;wBACJ,CAAC;oBACH,CAAC;yBAAM,IAAI,EAAE,CAAC,IAAI,KAAK,MAAM,IAAI,EAAE,CAAC,IAAI,KAAK,OAAO,EAAE,CAAC;wBACrD,IAAI,EAAE,CAAC,IAAI,KAAK,OAAO,EAAE,CAAC;4BACxB,MAAM,eAAe,GAAG,mBAAmB,CACzC,EAAE,CAAC,KAAK,IAAI,eAAe,EAC3B,EAAE,CAAC,UAAU,CACd,CAAC;4BACF,WAAW,CAAC,CAAC,IAAI,EAAE,EAAE,CACnB,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CACb,CAAC,CAAC,EAAE,KAAK,WAAW;gCAClB,CAAC,CAAC,EAAE,GAAG,CAAC,EAAE,OAAO,EAAE,CAAC,CAAC,OAAO,IAAI,eAAe,EAAE;gCACjD,CAAC,CAAC,CAAC,CACN,CACF,CAAC;wBACJ,CAAC;wBACD,MAAM;oBACR,CAAC;gBACH,CAAC;YACH,CAAC;QACH,CAAC;QAAC,OAAO,GAAQ,EAAE,CAAC;YAClB,IAAI,GAAG,EAAE,IAAI,KAAK,YAAY,EAAE,CAAC;gBAC/B,WAAW,CAAC,CAAC,IAAI,EAAE,EAAE,CACnB,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CACb,CAAC,CAAC,EAAE,KAAK,WAAW;oBAClB,CAAC,CAAC;wBACE,GAAG,CAAC;wBACJ,OAAO,EACL,CAAC,CAAC,OAAO,IAAI,yCAAyC;qBACzD;oBACH,CAAC,CAAC,CAAC,CACN,CACF,CAAC;YACJ,CAAC;QACH,CAAC;gBAAS,CAAC;YACT,eAAe,CAAC,KAAK,CAAC,CAAC;YACvB,MAAM,CAAC,aAAa,CAClB,IAAI,WAAW,CAAC,qBAAqB,EAAE;gBACrC,MAAM,EAAE,EAAE,OAAO,EAAE,KAAK,EAAE;aAC3B,CAAC,CACH,CAAC;YACF,QAAQ,CAAC,OAAO,GAAG,IAAI,CAAC;QAC1B,CAAC;IACH,CAAC,EACD,CAAC,QAAQ,EAAE,YAAY,CAAC,CACzB,CAAC;IAEF,MAAM,YAAY,GAAG,WAAW,CAAC,GAAG,EAAE;QACpC,QAAQ,CAAC,OAAO,EAAE,KAAK,EAAE,CAAC;QAC1B,WAAW,CAAC,EAAE,CAAC,CAAC;QAChB,eAAe,CAAC,KAAK,CAAC,CAAC;IACzB,CAAC,EAAE,EAAE,CAAC,CAAC;IAEP,OAAO,EAAE,QAAQ,EAAE,YAAY,EAAE,WAAW,EAAE,YAAY,EAAE,CAAC;AAC/D,CAAC"}
@@ -1,4 +1,13 @@
1
1
  type NitroPluginDef = (nitroApp: any) => void | Promise<void>;
2
+ /**
3
+ * True when an error from `ALTER TABLE ... ADD COLUMN` indicates the
4
+ * column already existed. Recognizes both SQLite ("duplicate column
5
+ * name") and Postgres ("column ... already exists" — exact text varies
6
+ * by error code 42701, but the substring is stable). Exported so other
7
+ * idempotent column-upgrade loops in the codebase don't reinvent this
8
+ * regex with subtly different shapes.
9
+ */
10
+ export declare function isDuplicateColumnError(err: unknown): boolean;
2
11
  export interface RunMigrationsOptions {
3
12
  /**
4
13
  * Name of the migrations bookkeeping table. Defaults to `_migrations` for
@@ -1 +1 @@
1
- {"version":3,"file":"migrations.d.ts","sourceRoot":"","sources":["../../src/db/migrations.ts"],"names":[],"mappings":"AAOA,KAAK,cAAc,GAAG,CAAC,QAAQ,EAAE,GAAG,KAAK,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;AAsE9D,MAAM,WAAW,oBAAoB;IACnC;;;;OAIG;IACH,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AAED;;;;;;;;;GASG;AACH,MAAM,MAAM,YAAY,GAAG,MAAM,GAAG;IAAE,QAAQ,CAAC,EAAE,MAAM,CAAC;IAAC,MAAM,CAAC,EAAE,MAAM,CAAA;CAAE,CAAC;AAE3E,MAAM,WAAW,cAAc;IAC7B,OAAO,EAAE,MAAM,CAAC;IAChB,GAAG,EAAE,YAAY,CAAC;CACnB;AAQD,wBAAgB,aAAa,CAC3B,UAAU,EAAE,KAAK,CAAC,cAAc,CAAC,EACjC,OAAO,GAAE,oBAAyB,GACjC,cAAc,CAiIhB"}
1
+ {"version":3,"file":"migrations.d.ts","sourceRoot":"","sources":["../../src/db/migrations.ts"],"names":[],"mappings":"AAOA,KAAK,cAAc,GAAG,CAAC,QAAQ,EAAE,GAAG,KAAK,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;AA4B9D;;;;;;;GAOG;AACH,wBAAgB,sBAAsB,CAAC,GAAG,EAAE,OAAO,GAAG,OAAO,CAK5D;AAmDD,MAAM,WAAW,oBAAoB;IACnC;;;;OAIG;IACH,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AAED;;;;;;;;;GASG;AACH,MAAM,MAAM,YAAY,GAAG,MAAM,GAAG;IAAE,QAAQ,CAAC,EAAE,MAAM,CAAC;IAAC,MAAM,CAAC,EAAE,MAAM,CAAA;CAAE,CAAC;AAE3E,MAAM,WAAW,cAAc;IAC7B,OAAO,EAAE,MAAM,CAAC;IAChB,GAAG,EAAE,YAAY,CAAC;CACnB;AAQD,wBAAgB,aAAa,CAC3B,UAAU,EAAE,KAAK,CAAC,cAAc,CAAC,EACjC,OAAO,GAAE,oBAAyB,GACjC,cAAc,CA4KhB"}
@@ -9,13 +9,31 @@ function adaptSqlForPostgres(sql) {
9
9
  .replace(/\bAUTOINCREMENT\b/gi, "")
10
10
  .replace(/\bINTEGER\b/gi, "BIGINT");
11
11
  }
12
+ const IF_NOT_EXISTS_ADD_COLUMN_RE = /ADD\s+COLUMN\s+IF\s+NOT\s+EXISTS/i;
12
13
  /**
13
14
  * Strip Postgres-only syntax that SQLite doesn't support.
14
15
  * Handles: ALTER TABLE ... ADD COLUMN IF NOT EXISTS → ADD COLUMN
16
+ *
17
+ * Note: SQLite does not have a native equivalent, so the idempotent
18
+ * semantic is emulated at the executor level by swallowing the
19
+ * "duplicate column name" error for statements that originally carried
20
+ * the clause. See `hadIfNotExists` tracking in the run loop.
15
21
  */
16
22
  function adaptSqlForSqlite(sql) {
17
23
  return sql.replace(/ADD\s+COLUMN\s+IF\s+NOT\s+EXISTS/gi, "ADD COLUMN");
18
24
  }
25
+ /**
26
+ * True when an error from `ALTER TABLE ... ADD COLUMN` indicates the
27
+ * column already existed. Recognizes both SQLite ("duplicate column
28
+ * name") and Postgres ("column ... already exists" — exact text varies
29
+ * by error code 42701, but the substring is stable). Exported so other
30
+ * idempotent column-upgrade loops in the codebase don't reinvent this
31
+ * regex with subtly different shapes.
32
+ */
33
+ export function isDuplicateColumnError(err) {
34
+ const msg = err?.message ?? "";
35
+ return (/duplicate column name/i.test(msg) || /column .* already exists/i.test(msg));
36
+ }
19
37
  /**
20
38
  * Split a multi-statement SQL blob into individual statements.
21
39
  *
@@ -98,13 +116,44 @@ export function runMigrations(migrations, options = {}) {
98
116
  .run();
99
117
  continue;
100
118
  }
101
- const statements = splitSqlStatements(raw);
102
- await d1.batch([
103
- ...statements.map((s) => d1.prepare(s)),
104
- d1
119
+ const originalStatements = splitSqlStatements(raw);
120
+ const statements = originalStatements.map((orig) => ({
121
+ sql: adaptSqlForSqlite(orig),
122
+ hadIfNotExists: IF_NOT_EXISTS_ADD_COLUMN_RE.test(orig),
123
+ }));
124
+ const hasIfNotExists = statements.some((s) => s.hadIfNotExists);
125
+ if (hasIfNotExists) {
126
+ // Per-statement path: we need to swallow "duplicate column"
127
+ // errors for statements that originally carried
128
+ // `ADD COLUMN IF NOT EXISTS`, which a batch() can't express.
129
+ // Loses atomicity, but the idempotent-ADD-COLUMN semantic
130
+ // means a partial re-run resolves cleanly on retry.
131
+ for (const { sql: stmt, hadIfNotExists } of statements) {
132
+ try {
133
+ await d1.prepare(stmt).run();
134
+ }
135
+ catch (err) {
136
+ if (hadIfNotExists && isDuplicateColumnError(err))
137
+ continue;
138
+ throw err;
139
+ }
140
+ }
141
+ await d1
105
142
  .prepare(`INSERT OR IGNORE INTO ${table} VALUES (?)`)
106
- .bind(m.version),
107
- ]);
143
+ .bind(m.version)
144
+ .run();
145
+ }
146
+ else {
147
+ // Atomic batch: all statements + version-row insert land in
148
+ // the same transaction. A failing statement rolls the whole
149
+ // migration back, so we never record a half-applied version.
150
+ await d1.batch([
151
+ ...statements.map((s) => d1.prepare(s.sql)),
152
+ d1
153
+ .prepare(`INSERT OR IGNORE INTO ${table} VALUES (?)`)
154
+ .bind(m.version),
155
+ ]);
156
+ }
108
157
  console.log(`[db] Applied migration v${m.version} (${statements.length} statement${statements.length === 1 ? "" : "s"})`);
109
158
  }
110
159
  catch (err) {
@@ -137,13 +186,29 @@ export function runMigrations(migrations, options = {}) {
137
186
  await exec.execute({ sql: insertSql, args: [m.version] });
138
187
  continue;
139
188
  }
140
- const sql = pg ? adaptSqlForPostgres(raw) : adaptSqlForSqlite(raw);
141
- const statements = splitSqlStatements(sql);
189
+ // Split BEFORE adapting so we can remember which original statements
190
+ // carried `ADD COLUMN IF NOT EXISTS` — SQLite drops the clause, so we
191
+ // emulate the idempotent semantic by swallowing duplicate-column
192
+ // errors only for those statements.
193
+ const originalStatements = splitSqlStatements(raw);
194
+ const statements = originalStatements.map((orig) => ({
195
+ sql: pg ? adaptSqlForPostgres(orig) : adaptSqlForSqlite(orig),
196
+ hadIfNotExists: IF_NOT_EXISTS_ADD_COLUMN_RE.test(orig),
197
+ }));
142
198
  let currentStmt = "";
143
199
  try {
144
- for (const stmt of statements) {
200
+ for (const { sql: stmt, hadIfNotExists } of statements) {
145
201
  currentStmt = stmt;
146
- await exec.execute(stmt);
202
+ try {
203
+ await exec.execute(stmt);
204
+ }
205
+ catch (err) {
206
+ if (!pg && hadIfNotExists && isDuplicateColumnError(err)) {
207
+ // IF NOT EXISTS semantic: column already present, skip.
208
+ continue;
209
+ }
210
+ throw err;
211
+ }
147
212
  }
148
213
  await exec.execute({ sql: insertSql, args: [m.version] });
149
214
  console.log(`[db] Applied migration v${m.version} (${statements.length} statement${statements.length === 1 ? "" : "s"})`);
@@ -1 +1 @@
1
- {"version":3,"file":"migrations.js","sourceRoot":"","sources":["../../src/db/migrations.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"migrations.js","sourceRoot":"","sources":["../../src/db/migrations.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"builder.d.ts","sourceRoot":"","sources":["../../src/file-upload/builder.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,YAAY,CAAC;AAYrD;;;;;;;GAOG;AACH,eAAO,MAAM,yBAAyB,EAAE,kBAqDvC,CAAC"}
1
+ {"version":3,"file":"builder.d.ts","sourceRoot":"","sources":["../../src/file-upload/builder.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,YAAY,CAAC;AAYrD;;;;;;;GAOG;AACH,eAAO,MAAM,yBAAyB,EAAE,kBA6DvC,CAAC"}
@@ -24,18 +24,25 @@ export const builderFileUploadProvider = {
24
24
  const url = new URL("/api/v1/upload", builderUploadHost());
25
25
  if (filename)
26
26
  url.searchParams.set("name", filename);
27
+ // Strip any media-type parameters (e.g. `;codecs=avc1,opus` from
28
+ // MediaRecorder blobs) — Builder's upload API parses the body as raw
29
+ // binary only when Content-Type is a bare MIME type. A parameterized
30
+ // Content-Type falls through to the multipart/base64 paths which look
31
+ // for an `image` field, and returns "No image specified" when it
32
+ // doesn't find one.
33
+ const bareMimeType = (mimeType || "application/octet-stream")
34
+ .split(";")[0]
35
+ .trim();
27
36
  const buffer = data instanceof Uint8Array ? data : new Uint8Array(data);
28
37
  const bytes = new Uint8Array(buffer.buffer, buffer.byteOffset, buffer.byteLength);
29
38
  const body = typeof Blob !== "undefined"
30
- ? new Blob([bytes], {
31
- type: mimeType || "application/octet-stream",
32
- })
39
+ ? new Blob([bytes], { type: bareMimeType })
33
40
  : bytes;
34
41
  const response = await fetch(url, {
35
42
  method: "POST",
36
43
  headers: {
37
44
  Authorization: `Bearer ${privateKey}`,
38
- "Content-Type": mimeType || "application/octet-stream",
45
+ "Content-Type": bareMimeType,
39
46
  },
40
47
  body,
41
48
  });
@@ -1 +1 @@
1
- {"version":3,"file":"builder.js","sourceRoot":"","sources":["../../src/file-upload/builder.ts"],"names":[],"mappings":"AAEA,MAAM,wBAAwB,GAAG,oBAAoB,CAAC;AAEtD,SAAS,iBAAiB;IACxB,OAAO,CACL,OAAO,CAAC,GAAG,CAAC,gBAAgB;QAC5B,OAAO,CAAC,GAAG,CAAC,uBAAuB;QACnC,wBAAwB,CACzB,CAAC;AACJ,CAAC;AAED;;;;;;;GAOG;AACH,MAAM,CAAC,MAAM,yBAAyB,GAAuB;IAC3D,EAAE,EAAE,SAAS;IACb,IAAI,EAAE,YAAY;IAClB,YAAY,EAAE,GAAG,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC,GAAG,CAAC,mBAAmB;IACrD,MAAM,EAAE,KAAK,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,QAAQ,EAAE,EAAE,EAAE;QAC7C,MAAM,UAAU,GAAG,OAAO,CAAC,GAAG,CAAC,mBAAmB,CAAC;QACnD,IAAI,CAAC,UAAU,EAAE,CAAC;YAChB,MAAM,IAAI,KAAK,CAAC,gCAAgC,CAAC,CAAC;QACpD,CAAC;QAED,MAAM,GAAG,GAAG,IAAI,GAAG,CAAC,gBAAgB,EAAE,iBAAiB,EAAE,CAAC,CAAC;QAC3D,IAAI,QAAQ;YAAE,GAAG,CAAC,YAAY,CAAC,GAAG,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAC;QAErD,MAAM,MAAM,GACV,IAAI,YAAY,UAAU,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,UAAU,CAAC,IAAW,CAAC,CAAC;QAClE,MAAM,KAAK,GAAG,IAAI,UAAU,CAC1B,MAAM,CAAC,MAAM,EACb,MAAM,CAAC,UAAU,EACjB,MAAM,CAAC,UAAU,CAClB,CAAC;QACF,MAAM,IAAI,GACR,OAAO,IAAI,KAAK,WAAW;YACzB,CAAC,CAAC,IAAI,IAAI,CAAC,CAAC,KAAK,CAAC,EAAE;gBAChB,IAAI,EAAE,QAAQ,IAAI,0BAA0B;aAC7C,CAAC;YACJ,CAAC,CAAE,KAA6B,CAAC;QAErC,MAAM,QAAQ,GAAG,MAAM,KAAK,CAAC,GAAG,EAAE;YAChC,MAAM,EAAE,MAAM;YACd,OAAO,EAAE;gBACP,aAAa,EAAE,UAAU,UAAU,EAAE;gBACrC,cAAc,EAAE,QAAQ,IAAI,0BAA0B;aACvD;YACD,IAAI;SACL,CAAC,CAAC;QAEH,IAAI,CAAC,QAAQ,CAAC,EAAE,EAAE,CAAC;YACjB,MAAM,IAAI,GAAG,MAAM,QAAQ,CAAC,IAAI,EAAE,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,EAAE,CAAC,CAAC;YACnD,MAAM,IAAI,KAAK,CACb,6BAA6B,QAAQ,CAAC,MAAM,MAAM,IAAI,IAAI,QAAQ,CAAC,UAAU,EAAE,CAChF,CAAC;QACJ,CAAC;QAED,MAAM,IAAI,GAAG,CAAC,MAAM,QAAQ,CAAC,IAAI,EAAE,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC,CAGpD,CAAC;QACF,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC;YACd,MAAM,IAAI,KAAK,CAAC,mCAAmC,CAAC,CAAC;QACvD,CAAC;QAED,OAAO,EAAE,GAAG,EAAE,IAAI,CAAC,GAAG,EAAE,EAAE,EAAE,IAAI,CAAC,EAAE,EAAE,QAAQ,EAAE,SAAS,EAAE,CAAC;IAC7D,CAAC;CACF,CAAC"}
1
+ {"version":3,"file":"builder.js","sourceRoot":"","sources":["../../src/file-upload/builder.ts"],"names":[],"mappings":"AAEA,MAAM,wBAAwB,GAAG,oBAAoB,CAAC;AAEtD,SAAS,iBAAiB;IACxB,OAAO,CACL,OAAO,CAAC,GAAG,CAAC,gBAAgB;QAC5B,OAAO,CAAC,GAAG,CAAC,uBAAuB;QACnC,wBAAwB,CACzB,CAAC;AACJ,CAAC;AAED;;;;;;;GAOG;AACH,MAAM,CAAC,MAAM,yBAAyB,GAAuB;IAC3D,EAAE,EAAE,SAAS;IACb,IAAI,EAAE,YAAY;IAClB,YAAY,EAAE,GAAG,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC,GAAG,CAAC,mBAAmB;IACrD,MAAM,EAAE,KAAK,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,QAAQ,EAAE,EAAE,EAAE;QAC7C,MAAM,UAAU,GAAG,OAAO,CAAC,GAAG,CAAC,mBAAmB,CAAC;QACnD,IAAI,CAAC,UAAU,EAAE,CAAC;YAChB,MAAM,IAAI,KAAK,CAAC,gCAAgC,CAAC,CAAC;QACpD,CAAC;QAED,MAAM,GAAG,GAAG,IAAI,GAAG,CAAC,gBAAgB,EAAE,iBAAiB,EAAE,CAAC,CAAC;QAC3D,IAAI,QAAQ;YAAE,GAAG,CAAC,YAAY,CAAC,GAAG,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAC;QAErD,iEAAiE;QACjE,qEAAqE;QACrE,qEAAqE;QACrE,sEAAsE;QACtE,iEAAiE;QACjE,oBAAoB;QACpB,MAAM,YAAY,GAAG,CAAC,QAAQ,IAAI,0BAA0B,CAAC;aAC1D,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;aACb,IAAI,EAAE,CAAC;QAEV,MAAM,MAAM,GACV,IAAI,YAAY,UAAU,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,UAAU,CAAC,IAAW,CAAC,CAAC;QAClE,MAAM,KAAK,GAAG,IAAI,UAAU,CAC1B,MAAM,CAAC,MAAM,EACb,MAAM,CAAC,UAAU,EACjB,MAAM,CAAC,UAAU,CAClB,CAAC;QACF,MAAM,IAAI,GACR,OAAO,IAAI,KAAK,WAAW;YACzB,CAAC,CAAC,IAAI,IAAI,CAAC,CAAC,KAAK,CAAC,EAAE,EAAE,IAAI,EAAE,YAAY,EAAE,CAAC;YAC3C,CAAC,CAAE,KAA6B,CAAC;QAErC,MAAM,QAAQ,GAAG,MAAM,KAAK,CAAC,GAAG,EAAE;YAChC,MAAM,EAAE,MAAM;YACd,OAAO,EAAE;gBACP,aAAa,EAAE,UAAU,UAAU,EAAE;gBACrC,cAAc,EAAE,YAAY;aAC7B;YACD,IAAI;SACL,CAAC,CAAC;QAEH,IAAI,CAAC,QAAQ,CAAC,EAAE,EAAE,CAAC;YACjB,MAAM,IAAI,GAAG,MAAM,QAAQ,CAAC,IAAI,EAAE,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,EAAE,CAAC,CAAC;YACnD,MAAM,IAAI,KAAK,CACb,6BAA6B,QAAQ,CAAC,MAAM,MAAM,IAAI,IAAI,QAAQ,CAAC,UAAU,EAAE,CAChF,CAAC;QACJ,CAAC;QAED,MAAM,IAAI,GAAG,CAAC,MAAM,QAAQ,CAAC,IAAI,EAAE,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC,CAGpD,CAAC;QACF,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC;YACd,MAAM,IAAI,KAAK,CAAC,mCAAmC,CAAC,CAAC;QACvD,CAAC;QAED,OAAO,EAAE,GAAG,EAAE,IAAI,CAAC,GAAG,EAAE,EAAE,EAAE,IAAI,CAAC,EAAE,EAAE,QAAQ,EAAE,SAAS,EAAE,CAAC;IAC7D,CAAC;CACF,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"tools.d.ts","sourceRoot":"","sources":["../../src/jobs/tools.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,8BAA8B,CAAC;AAsBhE,wBAAgB,cAAc,IAAI,MAAM,CAAC,MAAM,EAAE,WAAW,CAAC,CAsO5D"}
1
+ {"version":3,"file":"tools.d.ts","sourceRoot":"","sources":["../../src/jobs/tools.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,8BAA8B,CAAC;AAuJhE,wBAAgB,cAAc,IAAI,MAAM,CAAC,MAAM,EAAE,WAAW,CAAC,CAyE5D"}
@@ -5,203 +5,179 @@ import { getRequestUserEmail, getRequestOrgId, } from "../server/request-context
5
5
  function getOwner() {
6
6
  return getRequestUserEmail() || "local@localhost";
7
7
  }
8
+ async function runCreate(args) {
9
+ const { name, schedule, instructions, scope, runAs } = args;
10
+ if (!name || !schedule || !instructions) {
11
+ return JSON.stringify({
12
+ error: "name, schedule, and instructions are required",
13
+ });
14
+ }
15
+ if (!isValidCron(schedule)) {
16
+ return JSON.stringify({
17
+ error: `Invalid cron expression: "${schedule}". Use 5 fields: minute hour day-of-month month day-of-week.`,
18
+ });
19
+ }
20
+ const owner = scope === "personal" ? getOwner() : SHARED_OWNER;
21
+ const path = `jobs/${name}.md`;
22
+ const now = new Date();
23
+ const next = nextOccurrence(schedule, now);
24
+ const meta = {
25
+ schedule,
26
+ enabled: true,
27
+ createdBy: getOwner(),
28
+ orgId: getRequestOrgId() || undefined,
29
+ runAs: runAs === "shared" ? "shared" : "creator",
30
+ nextRun: next.toISOString(),
31
+ };
32
+ const content = buildJobContent(meta, instructions);
33
+ await resourcePut(owner, path, content);
34
+ return JSON.stringify({
35
+ created: true,
36
+ name,
37
+ path,
38
+ schedule,
39
+ scheduleDescription: describeCron(schedule),
40
+ nextRun: next.toISOString(),
41
+ scope: scope || "shared",
42
+ });
43
+ }
44
+ async function runList(args) {
45
+ const owner = getOwner();
46
+ // Fetch only current user's and shared jobs (not other users')
47
+ const [personal, shared] = await Promise.all([
48
+ resourceList(owner, "jobs/"),
49
+ resourceList(SHARED_OWNER, "jobs/"),
50
+ ]);
51
+ let resources = [...personal, ...shared];
52
+ if (args.scope === "personal")
53
+ resources = personal;
54
+ else if (args.scope === "shared")
55
+ resources = shared;
56
+ const metas = resources.filter((r) => r.path.endsWith(".md") && !r.path.endsWith(".keep"));
57
+ const jobs = await Promise.all(metas.map(async (r) => {
58
+ const full = await resourceGetByPath(r.owner, r.path);
59
+ const { meta } = parseJobFrontmatter(full?.content || "");
60
+ return {
61
+ name: r.path.replace(/^jobs\//, "").replace(/\.md$/, ""),
62
+ path: r.path,
63
+ scope: r.owner === SHARED_OWNER ? "shared" : "personal",
64
+ schedule: meta.schedule,
65
+ scheduleDescription: meta.schedule ? describeCron(meta.schedule) : "",
66
+ enabled: meta.enabled,
67
+ lastRun: meta.lastRun || null,
68
+ lastStatus: meta.lastStatus || null,
69
+ lastError: meta.lastError || null,
70
+ nextRun: meta.nextRun || null,
71
+ };
72
+ }));
73
+ if (jobs.length === 0) {
74
+ return "No recurring jobs configured. Use manage-jobs with action 'create' to create one.";
75
+ }
76
+ return JSON.stringify(jobs, null, 2);
77
+ }
78
+ async function runUpdate(args) {
79
+ const { name, schedule, instructions, enabled, scope, runAs } = args;
80
+ const path = `jobs/${name}.md`;
81
+ // Try to find the resource
82
+ let resource = await resourceGetByPath(SHARED_OWNER, path);
83
+ if (!resource && scope !== "shared") {
84
+ resource = await resourceGetByPath(getOwner(), path);
85
+ }
86
+ if (!resource) {
87
+ return JSON.stringify({ error: `Job "${name}" not found` });
88
+ }
89
+ const { meta, body } = parseJobFrontmatter(resource.content);
90
+ if (schedule) {
91
+ if (!isValidCron(schedule)) {
92
+ return JSON.stringify({
93
+ error: `Invalid cron expression: "${schedule}"`,
94
+ });
95
+ }
96
+ meta.schedule = schedule;
97
+ meta.nextRun = nextOccurrence(schedule).toISOString();
98
+ }
99
+ if (enabled !== undefined) {
100
+ meta.enabled = enabled === "true";
101
+ }
102
+ if (runAs === "creator" || runAs === "shared") {
103
+ meta.runAs = runAs;
104
+ }
105
+ const newBody = instructions || body;
106
+ const content = buildJobContent(meta, newBody);
107
+ await resourcePut(resource.owner, resource.path, content);
108
+ return JSON.stringify({
109
+ updated: true,
110
+ name,
111
+ schedule: meta.schedule,
112
+ scheduleDescription: describeCron(meta.schedule),
113
+ enabled: meta.enabled,
114
+ nextRun: meta.nextRun,
115
+ });
116
+ }
8
117
  export function createJobTools() {
9
118
  return {
10
- "create-job": {
119
+ "manage-jobs": {
11
120
  tool: {
12
- description: "Create a recurring job that runs on a cron schedule. The job instructions describe what the agent should do each time it runs. The schedule uses standard 5-field cron format (minute hour day-of-month month day-of-week). Common patterns: '0 9 * * *' (daily 9am), '0 9 * * 1-5' (weekdays 9am), '0 * * * *' (every hour), '0 9 * * 1' (Mondays 9am), '*/30 * * * *' (every 30 min).",
121
+ description: `Manage recurring jobs that run on a cron schedule.
122
+
123
+ Actions:
124
+ - "create": Create a new recurring job. Requires name, schedule, and instructions.
125
+ - "list": List all recurring jobs and their status (schedule, enabled, last run, next run).
126
+ - "update": Update a job's schedule, instructions, or enabled state. Requires name.
127
+
128
+ Cron format is 5 fields: minute hour day-of-month month day-of-week. Common patterns: '0 9 * * *' (daily 9am), '0 9 * * 1-5' (weekdays 9am), '0 * * * *' (every hour), '0 9 * * 1' (Mondays 9am), '*/30 * * * *' (every 30 min).`,
13
129
  parameters: {
14
130
  type: "object",
15
131
  properties: {
16
- name: {
132
+ action: {
17
133
  type: "string",
18
- description: "Job name (hyphen-case, e.g. 'daily-scorecard-check'). Used as the filename.",
134
+ description: "The action to perform.",
135
+ enum: ["create", "list", "update"],
19
136
  },
20
- schedule: {
21
- type: "string",
22
- description: "Cron expression (5 fields: minute hour day-of-month month day-of-week). Examples: '0 9 * * 1-5' (weekdays 9am), '0 */2 * * *' (every 2 hours).",
23
- },
24
- instructions: {
25
- type: "string",
26
- description: "What the agent should do when this job runs. Be specific — include which actions to call and what to do with the results.",
27
- },
28
- scope: {
29
- type: "string",
30
- description: "personal (only your jobs) or shared (team jobs). Default: shared.",
31
- enum: ["personal", "shared"],
32
- },
33
- runAs: {
34
- type: "string",
35
- description: "Who shared jobs execute as: creator or shared. Default: creator.",
36
- enum: ["creator", "shared"],
37
- },
38
- },
39
- required: ["name", "schedule", "instructions"],
40
- },
41
- },
42
- run: async (args) => {
43
- const { name, schedule, instructions, scope, runAs } = args;
44
- if (!name || !schedule || !instructions) {
45
- return JSON.stringify({
46
- error: "name, schedule, and instructions are required",
47
- });
48
- }
49
- if (!isValidCron(schedule)) {
50
- return JSON.stringify({
51
- error: `Invalid cron expression: "${schedule}". Use 5 fields: minute hour day-of-month month day-of-week.`,
52
- });
53
- }
54
- const owner = scope === "personal" ? getOwner() : SHARED_OWNER;
55
- const path = `jobs/${name}.md`;
56
- const now = new Date();
57
- const next = nextOccurrence(schedule, now);
58
- const meta = {
59
- schedule,
60
- enabled: true,
61
- createdBy: getOwner(),
62
- orgId: getRequestOrgId() || undefined,
63
- runAs: runAs === "shared" ? "shared" : "creator",
64
- nextRun: next.toISOString(),
65
- };
66
- const content = buildJobContent(meta, instructions);
67
- await resourcePut(owner, path, content);
68
- return JSON.stringify({
69
- created: true,
70
- name,
71
- path,
72
- schedule,
73
- scheduleDescription: describeCron(schedule),
74
- nextRun: next.toISOString(),
75
- scope: scope || "shared",
76
- });
77
- },
78
- },
79
- "list-jobs": {
80
- tool: {
81
- description: "List all recurring jobs and their status (schedule, enabled, last run, last status, next run).",
82
- parameters: {
83
- type: "object",
84
- properties: {
85
- scope: {
86
- type: "string",
87
- description: "Filter by scope: personal, shared, or all. Default: all.",
88
- enum: ["personal", "shared", "all"],
89
- },
90
- },
91
- },
92
- },
93
- run: async (args) => {
94
- const owner = getOwner();
95
- // Fetch only current user's and shared jobs (not other users')
96
- const [personal, shared] = await Promise.all([
97
- resourceList(owner, "jobs/"),
98
- resourceList(SHARED_OWNER, "jobs/"),
99
- ]);
100
- let resources = [...personal, ...shared];
101
- if (args.scope === "personal")
102
- resources = personal;
103
- else if (args.scope === "shared")
104
- resources = shared;
105
- const metas = resources.filter((r) => r.path.endsWith(".md") && !r.path.endsWith(".keep"));
106
- const jobs = await Promise.all(metas.map(async (r) => {
107
- const full = await resourceGetByPath(r.owner, r.path);
108
- const { meta } = parseJobFrontmatter(full?.content || "");
109
- return {
110
- name: r.path.replace(/^jobs\//, "").replace(/\.md$/, ""),
111
- path: r.path,
112
- scope: r.owner === SHARED_OWNER ? "shared" : "personal",
113
- schedule: meta.schedule,
114
- scheduleDescription: meta.schedule
115
- ? describeCron(meta.schedule)
116
- : "",
117
- enabled: meta.enabled,
118
- lastRun: meta.lastRun || null,
119
- lastStatus: meta.lastStatus || null,
120
- lastError: meta.lastError || null,
121
- nextRun: meta.nextRun || null,
122
- };
123
- }));
124
- if (jobs.length === 0) {
125
- return "No recurring jobs configured. Use create-job to create one.";
126
- }
127
- return JSON.stringify(jobs, null, 2);
128
- },
129
- },
130
- "update-job": {
131
- tool: {
132
- description: "Update a recurring job's schedule, instructions, or enabled state.",
133
- parameters: {
134
- type: "object",
135
- properties: {
136
137
  name: {
137
138
  type: "string",
138
- description: "Job name (e.g. 'daily-scorecard-check')",
139
+ description: "Job name (hyphen-case, e.g. 'daily-scorecard-check'). Required for create and update.",
139
140
  },
140
141
  schedule: {
141
142
  type: "string",
142
- description: "New cron expression (optional)",
143
+ description: "Cron expression (5 fields: minute hour day-of-month month day-of-week). Required for create, optional for update.",
143
144
  },
144
145
  instructions: {
145
146
  type: "string",
146
- description: "New job instructions (optional)",
147
+ description: "What the agent should do when this job runs. Be specific — include which actions to call and what to do with the results. Required for create, optional for update.",
147
148
  },
148
149
  enabled: {
149
150
  type: "string",
150
- description: "Enable or disable: 'true' or 'false' (optional)",
151
+ description: "Enable or disable a job: 'true' or 'false'. Only used with update.",
151
152
  enum: ["true", "false"],
152
153
  },
153
154
  scope: {
154
155
  type: "string",
155
- description: "Which scope to search: personal, shared, or all. Default: all.",
156
+ description: "For create: personal or shared (default: shared). For list: personal, shared, or all (default: all). For update: which scope to search (default: all).",
156
157
  enum: ["personal", "shared", "all"],
157
158
  },
158
159
  runAs: {
159
160
  type: "string",
160
- description: "Update execution principal to creator or shared.",
161
+ description: "Who shared jobs execute as: creator or shared. Default: creator. Used with create and update.",
161
162
  enum: ["creator", "shared"],
162
163
  },
163
164
  },
164
- required: ["name"],
165
+ required: ["action"],
165
166
  },
166
167
  },
167
168
  run: async (args) => {
168
- const { name, schedule, instructions, enabled, scope, runAs } = args;
169
- const path = `jobs/${name}.md`;
170
- // Try to find the resource
171
- let resource = await resourceGetByPath(SHARED_OWNER, path);
172
- if (!resource && scope !== "shared") {
173
- resource = await resourceGetByPath(getOwner(), path);
174
- }
175
- if (!resource) {
176
- return JSON.stringify({ error: `Job "${name}" not found` });
177
- }
178
- const { meta, body } = parseJobFrontmatter(resource.content);
179
- if (schedule) {
180
- if (!isValidCron(schedule)) {
169
+ switch (args.action) {
170
+ case "create":
171
+ return runCreate(args);
172
+ case "list":
173
+ return runList(args);
174
+ case "update":
175
+ return runUpdate(args);
176
+ default:
181
177
  return JSON.stringify({
182
- error: `Invalid cron expression: "${schedule}"`,
178
+ error: `Unknown action "${args.action}". Use "create", "list", or "update".`,
183
179
  });
184
- }
185
- meta.schedule = schedule;
186
- meta.nextRun = nextOccurrence(schedule).toISOString();
187
- }
188
- if (enabled !== undefined) {
189
- meta.enabled = enabled === "true";
190
- }
191
- if (runAs === "creator" || runAs === "shared") {
192
- meta.runAs = runAs;
193
180
  }
194
- const newBody = instructions || body;
195
- const content = buildJobContent(meta, newBody);
196
- await resourcePut(resource.owner, resource.path, content);
197
- return JSON.stringify({
198
- updated: true,
199
- name,
200
- schedule: meta.schedule,
201
- scheduleDescription: describeCron(meta.schedule),
202
- enabled: meta.enabled,
203
- nextRun: meta.nextRun,
204
- });
205
181
  },
206
182
  },
207
183
  };
@@ -1 +1 @@
1
- {"version":3,"file":"tools.js","sourceRoot":"","sources":["../../src/jobs/tools.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"tools.js","sourceRoot":"","sources":["../../src/jobs/tools.ts"],"names":[],"mappings":"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"}