eve 0.67.1 → 0.67.2

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 (562) hide show
  1. package/CHANGELOG.md +10 -0
  2. package/dist/src/channel/channel-address.d.ts +2 -2
  3. package/dist/src/channel/compiled-channel.d.ts +3 -2
  4. package/dist/src/channel/cross-channel-receive.d.ts +1 -18
  5. package/dist/src/channel/cross-channel-receive.js +1 -1
  6. package/dist/src/channel/forwarded-principal.d.ts +3 -2
  7. package/dist/src/channel/resolve-text.d.ts +2 -1
  8. package/dist/src/channel/schedule.d.ts +2 -2
  9. package/dist/src/channel/session-callback.d.ts +2 -1
  10. package/dist/src/channel/types.d.ts +0 -7
  11. package/dist/src/cli/acp/command.d.ts +2 -1
  12. package/dist/src/cli/agent-command.d.ts +2 -1
  13. package/dist/src/cli/agent-detection.d.ts +0 -1
  14. package/dist/src/cli/agent-detection.js +1 -1
  15. package/dist/src/cli/application-command.d.ts +2 -1
  16. package/dist/src/cli/application-root.d.ts +3 -6
  17. package/dist/src/cli/application-root.js +1 -1
  18. package/dist/src/cli/commands/init-target.d.ts +1 -1
  19. package/dist/src/cli/commands/init-telemetry.d.ts +2 -1
  20. package/dist/src/cli/commands/registry-declared-setups.d.ts +2 -1
  21. package/dist/src/cli/commands/registry-install-transaction.d.ts +0 -13
  22. package/dist/src/cli/commands/registry-install-transaction.js +1 -1
  23. package/dist/src/cli/commands/registry-pnpm-build-policy-flow.d.ts +1 -1
  24. package/dist/src/cli/commands/registry-presentation.d.ts +0 -1
  25. package/dist/src/cli/commands/registry-presentation.js +1 -1
  26. package/dist/src/cli/commands/registry-project.d.ts +2 -1
  27. package/dist/src/cli/commands/registry.d.ts +0 -4
  28. package/dist/src/cli/commands/registry.js +1 -1
  29. package/dist/src/cli/commands/setup-headless.d.ts +2 -1
  30. package/dist/src/cli/commands/vercel-non-interactive.d.ts +2 -1
  31. package/dist/src/cli/dev/diagnostic-dump.d.ts +0 -2
  32. package/dist/src/cli/dev/diagnostic-dump.js +1 -1
  33. package/dist/src/cli/dev/diagnostic-sink.d.ts +3 -2
  34. package/dist/src/cli/dev/tui/agent-header.d.ts +2 -1
  35. package/dist/src/cli/dev/tui/argument-typeahead.d.ts +2 -1
  36. package/dist/src/cli/dev/tui/dev-rebuild-status.d.ts +2 -1
  37. package/dist/src/cli/dev/tui/diagnostic-presentation.d.ts +2 -1
  38. package/dist/src/cli/dev/tui/errors.d.ts +2 -7
  39. package/dist/src/cli/dev/tui/errors.js +1 -1
  40. package/dist/src/cli/dev/tui/flow-drawer.d.ts +2 -1
  41. package/dist/src/cli/dev/tui/line-editor.d.ts +1 -1
  42. package/dist/src/cli/dev/tui/mcp-connection-status.d.ts +2 -1
  43. package/dist/src/cli/dev/tui/message-queue.d.ts +4 -3
  44. package/dist/src/cli/dev/tui/prompt-command-handler.d.ts +2 -1
  45. package/dist/src/cli/dev/tui/provider-picker.d.ts +3 -2
  46. package/dist/src/cli/dev/tui/question-panel.d.ts +2 -1
  47. package/dist/src/cli/dev/tui/registry-result-message.d.ts +3 -4
  48. package/dist/src/cli/dev/tui/registry-result-message.js +1 -1
  49. package/dist/src/cli/dev/tui/remote-connection-probe.d.ts +3 -2
  50. package/dist/src/cli/dev/tui/setup-panel.d.ts +2 -2
  51. package/dist/src/cli/dev/tui/setup-selection-input.d.ts +2 -2
  52. package/dist/src/cli/dev/tui/status-line.d.ts +2 -1
  53. package/dist/src/cli/dev/tui/stream-format.d.ts +3 -2
  54. package/dist/src/cli/dev/tui/terminal-renderer.d.ts +3 -2
  55. package/dist/src/cli/dev/tui/theme.d.ts +1 -1
  56. package/dist/src/cli/dev/tui/tool-block-groups.d.ts +3 -2
  57. package/dist/src/cli/dev/tui/tool-presentation.d.ts +2 -1
  58. package/dist/src/cli/dev/tui/traces/trace-content.d.ts +0 -9
  59. package/dist/src/cli/dev/tui/traces/trace-content.js +1 -1
  60. package/dist/src/cli/dev/tui/traces/trace-view.d.ts +3 -2
  61. package/dist/src/cli/dev/tui/traces/trace-viewer-session.d.ts +2 -1
  62. package/dist/src/cli/dev/tui/traces/trace-viewer-state.d.ts +2 -3
  63. package/dist/src/cli/dev/tui/traces/trace-viewer-state.js +1 -1
  64. package/dist/src/cli/dev/ui-options.d.ts +3 -2
  65. package/dist/src/cli/dev/url-target.d.ts +2 -1
  66. package/dist/src/cli/invoke/command.d.ts +0 -11
  67. package/dist/src/cli/invoke/command.js +1 -1
  68. package/dist/src/cli/invoke/result.d.ts +1 -1
  69. package/dist/src/cli/telemetry/index.d.ts +0 -6
  70. package/dist/src/cli/telemetry/preference.d.ts +2 -1
  71. package/dist/src/cli/ui/alt-screen.d.ts +3 -2
  72. package/dist/src/cli/ui/live-region.d.ts +3 -2
  73. package/dist/src/cli/ui/output.d.ts +1 -1
  74. package/dist/src/client/eve-agent-store-helpers.d.ts +0 -1
  75. package/dist/src/client/eve-agent-store-helpers.js +1 -1
  76. package/dist/src/client/message-action-parts.d.ts +2 -1
  77. package/dist/src/client/session-utils.d.ts +3 -2
  78. package/dist/src/compiled/.vendor-stamp.json +6 -6
  79. package/dist/src/compiled/@workflow/core/index.js +2 -2
  80. package/dist/src/compiled/@workflow/core/private.js +1 -1
  81. package/dist/src/compiled/@workflow/core/runtime/constants.d.ts +4 -3
  82. package/dist/src/compiled/@workflow/core/runtime/helpers.d.ts +23 -0
  83. package/dist/src/compiled/@workflow/core/runtime/helpers.js +1 -1
  84. package/dist/src/compiled/@workflow/core/runtime/hook-wake.d.ts +69 -36
  85. package/dist/src/compiled/@workflow/core/runtime/lifecycle-hooks.d.ts +25 -22
  86. package/dist/src/compiled/@workflow/core/runtime/run-spec-version.d.ts +16 -0
  87. package/dist/src/compiled/@workflow/core/runtime/start.d.ts +59 -1
  88. package/dist/src/compiled/@workflow/core/runtime/step-latency.d.ts +3 -2
  89. package/dist/src/compiled/@workflow/core/runtime/suspension-handler.d.ts +34 -12
  90. package/dist/src/compiled/@workflow/core/runtime.js +4 -4
  91. package/dist/src/compiled/@workflow/core/serialization.d.ts +7 -2
  92. package/dist/src/compiled/@workflow/core/serialization.js +1 -1
  93. package/dist/src/compiled/@workflow/core/telemetry/semantic-conventions.d.ts +29 -0
  94. package/dist/src/compiled/@workflow/core/types.d.ts +1 -0
  95. package/dist/src/compiled/@workflow/core/version.d.ts +1 -1
  96. package/dist/src/compiled/@workflow/core/workflow.js +1 -1
  97. package/dist/src/compiled/@workflow/errors/index.d.ts +13 -0
  98. package/dist/src/compiled/@workflow/errors/index.js +1 -1
  99. package/dist/src/compiled/@workflow/world/events.d.ts +14 -4
  100. package/dist/src/compiled/@workflow/world/index.d.ts +2 -2
  101. package/dist/src/compiled/@workflow/world/interfaces.d.ts +2 -1
  102. package/dist/src/compiled/@workflow/world/shared.d.ts +24 -0
  103. package/dist/src/compiled/@workflow/world/spec-version.d.ts +23 -0
  104. package/dist/src/compiled/@workflow/world-local/index.js +5 -5
  105. package/dist/src/compiled/@workflow/world-vercel/index.js +16 -16
  106. package/dist/src/compiled/_chunks/workflow/{attribute-changes-DzJovO_f.js → attribute-changes-D721NpZv.js} +3 -3
  107. package/dist/src/compiled/_chunks/workflow/{dist-BQSf8Hax.js → dist-BUFGAKRb.js} +1 -1
  108. package/dist/src/compiled/_chunks/workflow/dist-CaNNONeg.js +3 -0
  109. package/dist/src/compiled/_chunks/workflow/{frames-qKc30rjg.js → frames-Dr9fHWdo.js} +2 -2
  110. package/dist/src/compiled/_chunks/workflow/{global-BQnKzRXo.js → global-DKbOgrts.js} +1 -1
  111. package/dist/src/compiled/_chunks/workflow/helpers-DkKxg_yn.js +1 -0
  112. package/dist/src/compiled/_chunks/workflow/logger-D4GJNTk4.js +14 -0
  113. package/dist/src/compiled/_chunks/workflow/resume-hook-uTW-jBYz.js +1 -0
  114. package/dist/src/compiled/_chunks/workflow/run-5DmiMN9b.js +1 -0
  115. package/dist/src/compiled/_chunks/workflow/serialization-CNIYl1D3.js +3 -0
  116. package/dist/src/compiled/_chunks/workflow/sleep-DFKgN7UG.js +1 -0
  117. package/dist/src/compiled/_chunks/workflow/wait-until-3_1djUuL.js +1 -0
  118. package/dist/src/compiled/_chunks/workflow/{ws-transport-BrsMYqJg.js → ws-transport--rYOVIaf.js} +1 -1
  119. package/dist/src/compiler/artifacts.d.ts +4 -27
  120. package/dist/src/compiler/artifacts.js +1 -1
  121. package/dist/src/compiler/compile-agent.d.ts +2 -1
  122. package/dist/src/compiler/compile-agent.js +1 -1
  123. package/dist/src/compiler/diagnostics.d.ts +0 -11
  124. package/dist/src/compiler/diagnostics.js +1 -1
  125. package/dist/src/compiler/manifest.d.ts +0 -4
  126. package/dist/src/compiler/module-map.d.ts +1 -5
  127. package/dist/src/compiler/module-map.js +1 -1
  128. package/dist/src/compiler/normalize-agent-config.js +1 -1
  129. package/dist/src/compiler/normalize-connection.d.ts +2 -1
  130. package/dist/src/compiler/normalize-instructions.d.ts +2 -6
  131. package/dist/src/compiler/normalize-instructions.js +1 -1
  132. package/dist/src/compiler/normalize-manifest-helpers.d.ts +0 -1
  133. package/dist/src/compiler/normalize-manifest-helpers.js +1 -1
  134. package/dist/src/compiler/normalize-manifest.js +1 -1
  135. package/dist/src/compiler/normalize-skill.d.ts +2 -1
  136. package/dist/src/compiler/project-sources.d.ts +0 -14
  137. package/dist/src/compiler/project-sources.js +1 -1
  138. package/dist/src/compiler/resolve-workspace-subagent.js +1 -1
  139. package/dist/src/compiler/source-graph.d.ts +1 -2
  140. package/dist/src/compiler/source-graph.js +1 -1
  141. package/dist/src/context/build-base-tool-context.d.ts +2 -1
  142. package/dist/src/context/dynamic-tool-lifecycle.d.ts +0 -4
  143. package/dist/src/context/dynamic-tool-lifecycle.js +1 -1
  144. package/dist/src/context/dynamic-tool-metadata.d.ts +0 -1
  145. package/dist/src/context/dynamic-tool-metadata.js +1 -1
  146. package/dist/src/context/memory-lifecycle.d.ts +0 -8
  147. package/dist/src/context/memory-lifecycle.js +1 -1
  148. package/dist/src/discover/connections.d.ts +0 -15
  149. package/dist/src/discover/connections.js +1 -1
  150. package/dist/src/discover/diagnostics.d.ts +0 -8
  151. package/dist/src/discover/diagnostics.js +1 -1
  152. package/dist/src/discover/discover-agent.js +1 -1
  153. package/dist/src/discover/discover-subagent.d.ts +0 -1
  154. package/dist/src/discover/discover-subagent.js +1 -1
  155. package/dist/src/discover/extensions.d.ts +3 -10
  156. package/dist/src/discover/extensions.js +1 -1
  157. package/dist/src/discover/filesystem.d.ts +5 -9
  158. package/dist/src/discover/filesystem.js +1 -1
  159. package/dist/src/discover/grammar.d.ts +0 -46
  160. package/dist/src/discover/grammar.js +1 -1
  161. package/dist/src/discover/manifest.d.ts +5 -4
  162. package/dist/src/discover/memory.d.ts +0 -1
  163. package/dist/src/discover/memory.js +1 -1
  164. package/dist/src/discover/named-source-directory.js +1 -1
  165. package/dist/src/discover/project-source.d.ts +2 -1
  166. package/dist/src/discover/project.js +1 -1
  167. package/dist/src/discover/sandbox.js +1 -1
  168. package/dist/src/discover/skills.d.ts +0 -4
  169. package/dist/src/discover/skills.js +1 -1
  170. package/dist/src/evals/cli/eval-client.d.ts +2 -1
  171. package/dist/src/evals/judge.d.ts +2 -1
  172. package/dist/src/evals/runner/execute-task.d.ts +1 -1
  173. package/dist/src/evals/types.d.ts +1 -1
  174. package/dist/src/eve-channel/support.d.ts +1 -3
  175. package/dist/src/eve-channel/support.js +1 -1
  176. package/dist/src/execution/dynamic-workflow/schema.d.ts +2 -1
  177. package/dist/src/execution/dynamic-workflow/tool.js +1 -1
  178. package/dist/src/execution/effective-agent-config.d.ts +2 -1
  179. package/dist/src/execution/eve-workflow-attributes.d.ts +3 -5
  180. package/dist/src/execution/eve-workflow-attributes.js +1 -1
  181. package/dist/src/execution/history-view.d.ts +2 -1
  182. package/dist/src/execution/node-step.d.ts +3 -2
  183. package/dist/src/execution/sandbox/active-handles.d.ts +2 -4
  184. package/dist/src/execution/sandbox/active-handles.js +1 -1
  185. package/dist/src/execution/sandbox/bash.d.ts +2 -1
  186. package/dist/src/execution/sandbox/bindings/docker.js +1 -1
  187. package/dist/src/execution/sandbox/bindings/immutable-resources.d.ts +0 -6
  188. package/dist/src/execution/sandbox/bindings/immutable-resources.js +1 -1
  189. package/dist/src/execution/sandbox/bindings/local-provider-utils.d.ts +3 -2
  190. package/dist/src/execution/sandbox/bindings/microsandbox-lifecycle.d.ts +0 -1
  191. package/dist/src/execution/sandbox/bindings/microsandbox-lifecycle.js +1 -1
  192. package/dist/src/execution/sandbox/bindings/microsandbox-network.d.ts +1 -1
  193. package/dist/src/execution/sandbox/bindings/microsandbox-options.d.ts +0 -3
  194. package/dist/src/execution/sandbox/bindings/microsandbox-options.js +1 -1
  195. package/dist/src/execution/sandbox/bindings/microsandbox-templates.d.ts +0 -1
  196. package/dist/src/execution/sandbox/bindings/microsandbox-templates.js +1 -1
  197. package/dist/src/execution/sandbox/bindings/vercel.d.ts +1 -1
  198. package/dist/src/execution/sandbox/dockerfile.d.ts +0 -1
  199. package/dist/src/execution/sandbox/dockerfile.js +1 -1
  200. package/dist/src/execution/sandbox/ensure.d.ts +2 -1
  201. package/dist/src/execution/sandbox/ensure.js +1 -1
  202. package/dist/src/execution/sandbox/prewarm.d.ts +1 -18
  203. package/dist/src/execution/sandbox/prewarm.js +1 -1
  204. package/dist/src/execution/sandbox/require-sandbox.d.ts +0 -11
  205. package/dist/src/execution/sandbox/require-sandbox.js +1 -1
  206. package/dist/src/execution/sandbox/truncate-output.d.ts +2 -5
  207. package/dist/src/execution/sandbox/truncate-output.js +2 -2
  208. package/dist/src/execution/session/admission.d.ts +3 -2
  209. package/dist/src/execution/session/event-sink.d.ts +2 -1
  210. package/dist/src/execution/session/finalization.d.ts +2 -1
  211. package/dist/src/execution/session/handoff.d.ts +3 -2
  212. package/dist/src/execution/session/route-selected-delivery.d.ts +2 -1
  213. package/dist/src/execution/session/timeout-control.d.ts +2 -1
  214. package/dist/src/execution/session-activity.d.ts +0 -3
  215. package/dist/src/execution/session-activity.js +1 -1
  216. package/dist/src/execution/session-inbox/protocol.d.ts +2 -1
  217. package/dist/src/execution/session.d.ts +3 -2
  218. package/dist/src/execution/stable-workflow-names.d.ts +0 -6
  219. package/dist/src/execution/stable-workflow-names.js +1 -1
  220. package/dist/src/execution/tools/agent-router-workflow.js +1 -1
  221. package/dist/src/execution/tools/ask-question-workflow.js +1 -1
  222. package/dist/src/execution/tools/connection-search.js +1 -1
  223. package/dist/src/execution/tools/sleep-workflow.js +1 -1
  224. package/dist/src/execution/tools/subagent/invoke-preparation.d.ts +2 -1
  225. package/dist/src/execution/tools/subagent/task-agent-requests.d.ts +4 -3
  226. package/dist/src/execution/tools/workflow/background.d.ts +2 -6
  227. package/dist/src/execution/tools/workflow/background.js +1 -1
  228. package/dist/src/execution/tools/workflow/owner-channels.d.ts +1 -1
  229. package/dist/src/execution/tools/workflow/workflow-owner-background.d.ts +2 -1
  230. package/dist/src/execution/web-fetch/execute.d.ts +2 -2
  231. package/dist/src/execution/web-fetch/request.d.ts +2 -1
  232. package/dist/src/extensions/code/extension/lib/computer-use-driver-source.d.ts +0 -2
  233. package/dist/src/extensions/code/extension/lib/computer-use-driver-source.js +57 -57
  234. package/dist/src/extensions/code/extension/lib/computer-use.d.ts +1 -1
  235. package/dist/src/extensions/code/extension/lib/generated-paths.d.ts +2 -1
  236. package/dist/src/extensions/code/extension/lib/grep-search.d.ts +5 -5
  237. package/dist/src/extensions/code/extension/lib/grep-search.js +2 -2
  238. package/dist/src/extensions/code/extension/lib/guidelines.d.ts +2 -1
  239. package/dist/src/extensions/code/extension/lib/patch.d.ts +3 -2
  240. package/dist/src/extensions/code/extension/lib/prwatch-github.d.ts +1 -2
  241. package/dist/src/extensions/code/extension/lib/prwatch-github.js +1 -1
  242. package/dist/src/extensions/code/extension/lib/prwatch-registry.d.ts +2 -1
  243. package/dist/src/framework/host-inventory.d.ts +3 -2
  244. package/dist/src/harness/approval-candidates.d.ts +4 -3
  245. package/dist/src/harness/approval-delivery-coordinator.d.ts +2 -1
  246. package/dist/src/harness/compaction-prompt.d.ts +2 -1
  247. package/dist/src/harness/coordination.d.ts +0 -4
  248. package/dist/src/harness/coordination.js +1 -1
  249. package/dist/src/harness/input-requests.d.ts +1 -10
  250. package/dist/src/harness/input-requests.js +1 -1
  251. package/dist/src/harness/pending-input-batches.d.ts +0 -5
  252. package/dist/src/harness/pending-input-batches.js +1 -1
  253. package/dist/src/harness/provider-tools.d.ts +2 -1
  254. package/dist/src/harness/session-limit-continuation.d.ts +0 -4
  255. package/dist/src/harness/session-limit-continuation.js +1 -1
  256. package/dist/src/harness/session-usage-limits.d.ts +2 -1
  257. package/dist/src/harness/tool-loop.js +1 -1
  258. package/dist/src/harness/tool-model-output.d.ts +2 -1
  259. package/dist/src/harness/turn-client-context.d.ts +2 -1
  260. package/dist/src/instrumentation/state.d.ts +2 -2
  261. package/dist/src/internal/agent-name.d.ts +0 -2
  262. package/dist/src/internal/agent-name.js +1 -1
  263. package/dist/src/internal/application/build-profile.d.ts +2 -2
  264. package/dist/src/internal/application/dev-environment.d.ts +2 -8
  265. package/dist/src/internal/application/dev-environment.js +1 -1
  266. package/dist/src/internal/application/output-publication.d.ts +1 -1
  267. package/dist/src/internal/application/package.js +1 -1
  268. package/dist/src/internal/application/paths.d.ts +0 -5
  269. package/dist/src/internal/application/paths.js +1 -1
  270. package/dist/src/internal/application/tsconfig-dependencies.d.ts +0 -16
  271. package/dist/src/internal/application/tsconfig-dependencies.js +1 -1
  272. package/dist/src/internal/authored-definition/schema-backed.js +1 -1
  273. package/dist/src/internal/authored-definition/source-identity.d.ts +1 -1
  274. package/dist/src/internal/authored-module-map-loader.js +1 -1
  275. package/dist/src/internal/bundler/extension-scope-plugin.d.ts +2 -1
  276. package/dist/src/internal/bundler/nitro-rolldown.d.ts +0 -11
  277. package/dist/src/internal/bundler/nitro-rolldown.js +1 -1
  278. package/dist/src/internal/eve-project-root.d.ts +0 -3
  279. package/dist/src/internal/eve-project-root.js +1 -1
  280. package/dist/src/internal/external-resources-snapshot.d.ts +1 -1
  281. package/dist/src/internal/external-resources.d.ts +0 -1
  282. package/dist/src/internal/external-resources.js +1 -1
  283. package/dist/src/internal/helpers/markdown.js +1 -1
  284. package/dist/src/internal/invocation/metadata.d.ts +1 -1
  285. package/dist/src/internal/materialized-authored-modules.d.ts +2 -1
  286. package/dist/src/internal/mcp/protected-resource.d.ts +2 -1
  287. package/dist/src/internal/mcp/streamable-http-server.d.ts +4 -5
  288. package/dist/src/internal/mcp/streamable-http-server.js +1 -1
  289. package/dist/src/internal/model-catalog.d.ts +2 -1
  290. package/dist/src/internal/nitro/dev-runtime-artifacts.d.ts +0 -4
  291. package/dist/src/internal/nitro/dev-runtime-artifacts.js +1 -1
  292. package/dist/src/internal/nitro/dev-runtime-source-snapshot.d.ts +0 -1
  293. package/dist/src/internal/nitro/dev-runtime-source-snapshot.js +1 -1
  294. package/dist/src/internal/nitro/development-generation.d.ts +0 -1
  295. package/dist/src/internal/nitro/development-generation.js +1 -1
  296. package/dist/src/internal/nitro/host/channel-routes.d.ts +1 -1
  297. package/dist/src/internal/nitro/host/dev-authored-rebuild-coordinator.d.ts +2 -1
  298. package/dist/src/internal/nitro/host/dev-host-candidate.d.ts +2 -1
  299. package/dist/src/internal/nitro/host/drained-nitro-dev-server.d.ts +1 -1
  300. package/dist/src/internal/nitro/host/extension-capability-requirements.js +1 -1
  301. package/dist/src/internal/nitro/host/schedule-task-routes.d.ts +1 -1
  302. package/dist/src/internal/nitro/host/workspace-extensions.js +1 -1
  303. package/dist/src/internal/nitro/routes/channel-request-instrumentation.d.ts +2 -1
  304. package/dist/src/internal/nitro/routes/channel-route-context.d.ts +1 -1
  305. package/dist/src/internal/nitro/routes/runtime-stack.d.ts +2 -1
  306. package/dist/src/internal/resolve-model-endpoint-status.d.ts +2 -1
  307. package/dist/src/internal/vercel/assemble-eve-services.d.ts +3 -2
  308. package/dist/src/internal/vercel/eve-service-contribution.d.ts +2 -3
  309. package/dist/src/internal/vercel/eve-service-contribution.js +1 -1
  310. package/dist/src/internal/vercel/project-link.d.ts +2 -1
  311. package/dist/src/internal/vercel/project-link.js +1 -1
  312. package/dist/src/internal/workflow/development-world-codec.d.ts +2 -1
  313. package/dist/src/internal/workflow/world-compatibility.d.ts +2 -1
  314. package/dist/src/internal/workflow-bundle/builder-support.d.ts +0 -9
  315. package/dist/src/internal/workflow-bundle/builder-support.js +2 -3
  316. package/dist/src/internal/workflow-bundle/dynamic-tool-transform.d.ts +0 -1
  317. package/dist/src/internal/workflow-bundle/dynamic-tool-transform.js +1 -1
  318. package/dist/src/protocol/activity.d.ts +3 -3
  319. package/dist/src/protocol/activity.js +1 -1
  320. package/dist/src/protocol/baggage.d.ts +2 -2
  321. package/dist/src/protocol/cancel-turn.d.ts +0 -2
  322. package/dist/src/protocol/event-dedupe.d.ts +2 -1
  323. package/dist/src/protocol/event-id.d.ts +0 -6
  324. package/dist/src/protocol/event-id.js +1 -1
  325. package/dist/src/protocol/traceparent.d.ts +2 -1
  326. package/dist/src/public/channels/chat-sdk/audience.d.ts +2 -4
  327. package/dist/src/public/channels/chat-sdk/audience.js +1 -1
  328. package/dist/src/public/channels/discord/discordChannel.d.ts +1 -1
  329. package/dist/src/public/channels/github/api.d.ts +2 -12
  330. package/dist/src/public/channels/github/api.js +1 -1
  331. package/dist/src/public/channels/github/auth.d.ts +0 -9
  332. package/dist/src/public/channels/github/auth.js +1 -1
  333. package/dist/src/public/channels/github/binding.d.ts +3 -2
  334. package/dist/src/public/channels/github/checkout.d.ts +3 -3
  335. package/dist/src/public/channels/github/defaults.d.ts +3 -2
  336. package/dist/src/public/channels/github/githubChannel.d.ts +1 -1
  337. package/dist/src/public/channels/github/limits.d.ts +0 -2
  338. package/dist/src/public/channels/github/limits.js +2 -2
  339. package/dist/src/public/channels/github/pr-context.d.ts +2 -3
  340. package/dist/src/public/channels/github/pr-context.js +1 -1
  341. package/dist/src/public/channels/github/state.d.ts +2 -1
  342. package/dist/src/public/channels/github/verify.d.ts +2 -1
  343. package/dist/src/public/channels/linear/defaults.d.ts +2 -1
  344. package/dist/src/public/channels/linear/inbound-images.d.ts +2 -1
  345. package/dist/src/public/channels/slack/app-manifest.d.ts +3 -4
  346. package/dist/src/public/channels/slack/app-manifest.js +1 -1
  347. package/dist/src/public/channels/slack/inbound.d.ts +2 -1
  348. package/dist/src/public/channels/slack/model-context.d.ts +0 -18
  349. package/dist/src/public/channels/slack/model-context.js +1 -1
  350. package/dist/src/public/channels/slack/privacy.d.ts +2 -1
  351. package/dist/src/public/channels/slack/verify.d.ts +1 -1
  352. package/dist/src/public/channels/teams/teamsChannel.d.ts +1 -1
  353. package/dist/src/public/channels/telegram/audience.d.ts +2 -3
  354. package/dist/src/public/channels/telegram/audience.js +1 -1
  355. package/dist/src/public/channels/telegram/telegramChannel.d.ts +1 -1
  356. package/dist/src/public/channels/twilio/defaults.d.ts +0 -7
  357. package/dist/src/public/channels/twilio/defaults.js +1 -1
  358. package/dist/src/public/channels/twilio/routing.d.ts +2 -1
  359. package/dist/src/public/channels/twilio/twilioChannel.d.ts +1 -1
  360. package/dist/src/public/definitions/channel.d.ts +1 -1
  361. package/dist/src/public/index.js +1 -1
  362. package/dist/src/public/memory/file/provider.js +1 -1
  363. package/dist/src/public/models/openai/chatgpt/model.d.ts +2 -1
  364. package/dist/src/public/models/openai/chatgpt/token-broker.d.ts +1 -1
  365. package/dist/src/public/nuxt/dev-server.d.ts +3 -2
  366. package/dist/src/public/skills/index.js +1 -1
  367. package/dist/src/public/sveltekit/dev-server.d.ts +3 -2
  368. package/dist/src/public/tools/index.js +1 -1
  369. package/dist/src/runtime/compiled-artifacts-source.d.ts +0 -4
  370. package/dist/src/runtime/compiled-artifacts-source.js +1 -1
  371. package/dist/src/runtime/connections/instance-identity.d.ts +0 -3
  372. package/dist/src/runtime/connections/instance-identity.js +1 -1
  373. package/dist/src/runtime/connections/mcp-tracing.d.ts +1 -6
  374. package/dist/src/runtime/connections/mcp-tracing.js +1 -1
  375. package/dist/src/runtime/connections/openapi-client.d.ts +1 -1
  376. package/dist/src/runtime/connections/scoped-authorization.d.ts +0 -9
  377. package/dist/src/runtime/connections/scoped-authorization.js +1 -1
  378. package/dist/src/runtime/hooks/registry.d.ts +0 -7
  379. package/dist/src/runtime/hooks/registry.js +1 -1
  380. package/dist/src/runtime/loaders/artifact-paths.d.ts +2 -1
  381. package/dist/src/runtime/loaders/bundled-artifacts.d.ts +0 -1
  382. package/dist/src/runtime/loaders/bundled-artifacts.js +1 -1
  383. package/dist/src/runtime/resolve-agent.d.ts +2 -2
  384. package/dist/src/runtime/resolve-agent.js +1 -1
  385. package/dist/src/runtime/resolve-dynamic-tool.d.ts +0 -16
  386. package/dist/src/runtime/resolve-dynamic-tool.js +1 -1
  387. package/dist/src/runtime/sandbox/prepared-artifacts.d.ts +1 -2
  388. package/dist/src/runtime/sandbox/prepared-artifacts.js +1 -1
  389. package/dist/src/runtime/schedules/register.d.ts +0 -4
  390. package/dist/src/runtime/schedules/register.js +1 -1
  391. package/dist/src/self-modification/credentials.d.ts +1 -4
  392. package/dist/src/self-modification/credentials.js +1 -1
  393. package/dist/src/self-modification/filesystem.d.ts +0 -1
  394. package/dist/src/self-modification/filesystem.js +1 -1
  395. package/dist/src/self-modification/git-workspace.d.ts +0 -3
  396. package/dist/src/self-modification/git-workspace.js +1 -1
  397. package/dist/src/self-modification/github-publisher.d.ts +2 -1
  398. package/dist/src/self-modification/migration.d.ts +0 -1
  399. package/dist/src/self-modification/migration.js +1 -1
  400. package/dist/src/self-modification/mode.d.ts +2 -1
  401. package/dist/src/self-modification/proposal.d.ts +0 -2
  402. package/dist/src/self-modification/proposal.js +2 -2
  403. package/dist/src/self-modification/setup.js +1 -1
  404. package/dist/src/services/dev-client/agent-info-probe.d.ts +2 -1
  405. package/dist/src/services/dev-client/request-headers.d.ts +1 -1
  406. package/dist/src/setup/ai-gateway-api-key.d.ts +2 -1
  407. package/dist/src/setup/append-env.d.ts +3 -2
  408. package/dist/src/setup/ask.d.ts +3 -3
  409. package/dist/src/setup/boxes/apply-ai-gateway-credential.d.ts +2 -1
  410. package/dist/src/setup/boxes/deploy-project.d.ts +4 -3
  411. package/dist/src/setup/boxes/link-project.d.ts +2 -1
  412. package/dist/src/setup/boxes/resolve-provisioning.d.ts +2 -1
  413. package/dist/src/setup/boxes/select-model.d.ts +0 -1
  414. package/dist/src/setup/boxes/select-model.js +1 -1
  415. package/dist/src/setup/cli/option-row.d.ts +1 -1
  416. package/dist/src/setup/cli/prompt-ui.d.ts +0 -10
  417. package/dist/src/setup/cli/prompt-ui.js +1 -1
  418. package/dist/src/setup/cli/rail-log.d.ts +0 -2
  419. package/dist/src/setup/cli/rail-log.js +2 -2
  420. package/dist/src/setup/connect-provisioning.d.ts +2 -1
  421. package/dist/src/setup/connection-connector.d.ts +2 -1
  422. package/dist/src/setup/flows/link.d.ts +2 -1
  423. package/dist/src/setup/flows/model-login.d.ts +1 -1
  424. package/dist/src/setup/flows/model-source-change.js +1 -1
  425. package/dist/src/setup/flows/registry-session.d.ts +3 -2
  426. package/dist/src/setup/integrations/discord/api.d.ts +2 -1
  427. package/dist/src/setup/integrations/discord/connect.d.ts +3 -3
  428. package/dist/src/setup/integrations/discord/connect.js +1 -1
  429. package/dist/src/setup/integrations/discord/setup.d.ts +2 -1
  430. package/dist/src/setup/integrations/file-memory/vercel.d.ts +1 -1
  431. package/dist/src/setup/integrations/github/connect.d.ts +3 -3
  432. package/dist/src/setup/integrations/github/connect.js +1 -1
  433. package/dist/src/setup/integrations/github/setup.d.ts +1 -1
  434. package/dist/src/setup/integrations/linear/connect.d.ts +2 -2
  435. package/dist/src/setup/integrations/linear/connect.js +1 -1
  436. package/dist/src/setup/integrations/linear/setup.d.ts +1 -1
  437. package/dist/src/setup/integrations/linq/connect.d.ts +3 -4
  438. package/dist/src/setup/integrations/linq/connect.js +1 -1
  439. package/dist/src/setup/integrations/linq/management.d.ts +2 -1
  440. package/dist/src/setup/integrations/linq/setup.d.ts +1 -9
  441. package/dist/src/setup/integrations/linq/setup.js +1 -1
  442. package/dist/src/setup/integrations/photon/connect.d.ts +5 -7
  443. package/dist/src/setup/integrations/photon/connect.js +1 -1
  444. package/dist/src/setup/integrations/photon/management.d.ts +5 -4
  445. package/dist/src/setup/integrations/photon/setup-flow.d.ts +2 -1
  446. package/dist/src/setup/integrations/registry.d.ts +0 -2
  447. package/dist/src/setup/integrations/registry.js +1 -1
  448. package/dist/src/setup/integrations/runner.d.ts +3 -2
  449. package/dist/src/setup/integrations/shared/scaffold.d.ts +2 -1
  450. package/dist/src/setup/integrations/shared/vercel-project.d.ts +2 -1
  451. package/dist/src/setup/integrations/shopify/setup.d.ts +2 -1
  452. package/dist/src/setup/integrations/teams/connect.d.ts +3 -3
  453. package/dist/src/setup/integrations/teams/connect.js +1 -1
  454. package/dist/src/setup/integrations/teams/setup.d.ts +2 -1
  455. package/dist/src/setup/integrations/web/setup.d.ts +2 -1
  456. package/dist/src/setup/primitives/pm/process-result.d.ts +2 -1
  457. package/dist/src/setup/primitives/pm/shared.d.ts +2 -1
  458. package/dist/src/setup/primitives/process-output.d.ts +2 -1
  459. package/dist/src/setup/quit-guard.d.ts +3 -2
  460. package/dist/src/setup/scaffold/create/add-to-project.d.ts +2 -1
  461. package/dist/src/setup/scaffold/create/project.js +1 -1
  462. package/dist/src/setup/scaffold/files.d.ts +2 -1
  463. package/dist/src/setup/scaffold/update/channels.d.ts +0 -1
  464. package/dist/src/setup/scaffold/workspace-glob.d.ts +0 -1
  465. package/dist/src/setup/scaffold/workspace-glob.js +1 -1
  466. package/dist/src/setup/scaffold/workspace-root.d.ts +2 -1
  467. package/dist/src/setup/slack-connect-create.d.ts +1 -1
  468. package/dist/src/setup/slack-connect-lifecycle.d.ts +5 -5
  469. package/dist/src/setup/slack-connect.d.ts +0 -4
  470. package/dist/src/setup/slack-connect.js +1 -1
  471. package/dist/src/setup/slackbot.d.ts +3 -3
  472. package/dist/src/setup/slackbot.js +1 -1
  473. package/dist/src/setup/vercel-project-api.d.ts +1 -1
  474. package/dist/src/setup/vercel-project.d.ts +3 -18
  475. package/dist/src/setup/vercel-project.js +0 -0
  476. package/dist/src/shared/action-types.d.ts +1 -58
  477. package/dist/src/shared/action-types.js +1 -1
  478. package/dist/src/shared/agent-definition.d.ts +0 -3
  479. package/dist/src/shared/agent-turn-outcome.d.ts +1 -3
  480. package/dist/src/shared/agent-turn-outcome.js +1 -1
  481. package/dist/src/shared/chatgpt-model.d.ts +0 -1
  482. package/dist/src/shared/chatgpt-model.js +1 -1
  483. package/dist/src/shared/conversation-context.d.ts +2 -1
  484. package/dist/src/shared/extension-package-contract.d.ts +2 -1
  485. package/dist/src/shared/forwarded-trace-policy.d.ts +3 -2
  486. package/dist/src/shared/gateway-service-tier.d.ts +2 -1
  487. package/dist/src/shared/memory-state.d.ts +0 -8
  488. package/dist/src/shared/memory-state.js +1 -1
  489. package/dist/src/shared/sandbox-environment.d.ts +0 -1
  490. package/dist/src/shared/sandbox-environment.js +1 -1
  491. package/dist/src/shared/skill-package.d.ts +0 -5
  492. package/dist/src/shared/skill-package.js +1 -1
  493. package/dist/src/shared/token-usage.d.ts +0 -7
  494. package/dist/src/shared/token-usage.js +1 -1
  495. package/dist/src/shared/ulid.d.ts +2 -8
  496. package/dist/src/shared/ulid.js +1 -1
  497. package/dist/src/shared/vercel-project.d.ts +2 -1
  498. package/dist/src/shared/vercel-services.d.ts +2 -2
  499. package/dist/src/shared/workflow-sandbox.d.ts +0 -7
  500. package/dist/src/source-change/agent-config-ast.d.ts +2 -1
  501. package/dist/src/source-change/agent-config-string-path.d.ts +2 -2
  502. package/dist/src/source-change/apply-agent-model-settings.d.ts +2 -1
  503. package/dist/src/source-change/apply-model-selection.d.ts +2 -1
  504. package/dist/src/source-change/static-source-change.d.ts +4 -3
  505. package/dist/src/subagents/invocation.d.ts +1 -1
  506. package/dist/src/subagents/tool.d.ts +2 -1
  507. package/dist/src/tools/definition.d.ts +0 -3
  508. package/dist/src/tools/durable-callbacks.d.ts +1 -2
  509. package/dist/src/tools/durable-callbacks.js +1 -1
  510. package/dist/src/tools/framework/agent.js +1 -1
  511. package/dist/src/tools/framework/task-cancel.d.ts +1 -1
  512. package/dist/src/tools/native-definition.d.ts +2 -1
  513. package/dist/src/tracing/agent-action-instrumentation.d.ts +2 -1
  514. package/dist/src/tracing/agent-memory-instrumentation.d.ts +2 -1
  515. package/dist/src/tracing/agent-otel-provider.d.ts +2 -1
  516. package/dist/src/tracing/agent-span-id-generator.d.ts +0 -1
  517. package/dist/src/tracing/agent-span-id-generator.js +1 -1
  518. package/dist/src/tracing/agent-tool-instrumentation.d.ts +2 -1
  519. package/dist/src/tracing/agent-tool-span-context.d.ts +3 -2
  520. package/dist/src/tracing/agent-trace-state.d.ts +0 -24
  521. package/dist/src/tracing/agent-trace-state.js +1 -1
  522. package/dist/src/tracing/batch-span-processor.d.ts +2 -1
  523. package/dist/src/tracing/local-trace-analysis.d.ts +4 -3
  524. package/dist/src/tracing/local-trace-discovery-index.d.ts +0 -2
  525. package/dist/src/tracing/local-trace-discovery-index.js +1 -1
  526. package/dist/src/tracing/local-trace-query.d.ts +2 -1
  527. package/dist/src/tracing/local-trace-retention.d.ts +4 -4
  528. package/dist/src/tracing/telemetry-budget.d.ts +0 -1
  529. package/dist/src/tracing/telemetry-budget.js +1 -1
  530. package/package.json +8 -8
  531. package/dist/src/cli/commands/channel-add-conflicts.d.ts +0 -21
  532. package/dist/src/cli/commands/channel-add-conflicts.js +0 -1
  533. package/dist/src/cli/commands/registry-search-presentation.d.ts +0 -16
  534. package/dist/src/cli/commands/registry-search-presentation.js +0 -6
  535. package/dist/src/compiled/_chunks/workflow/dist-BfMqXLK3.js +0 -3
  536. package/dist/src/compiled/_chunks/workflow/helpers-CNMO7zB1.js +0 -1
  537. package/dist/src/compiled/_chunks/workflow/logger-BCEj9caG.js +0 -14
  538. package/dist/src/compiled/_chunks/workflow/resume-hook-QS_cMwHn.js +0 -1
  539. package/dist/src/compiled/_chunks/workflow/run-CA5wWV2S.js +0 -1
  540. package/dist/src/compiled/_chunks/workflow/serialization-CJ265vSe.js +0 -3
  541. package/dist/src/compiled/_chunks/workflow/sleep-CBn94Ayv.js +0 -1
  542. package/dist/src/compiled/_chunks/workflow/wait-until-Bo2U6ON9.js +0 -1
  543. package/dist/src/compiler/compile-from-memory.d.ts +0 -44
  544. package/dist/src/compiler/compile-from-memory.js +0 -1
  545. package/dist/src/execution/connection-auth-tool-result.d.ts +0 -2
  546. package/dist/src/execution/connection-auth-tool-result.js +0 -1
  547. package/dist/src/internal/process/pnpm.d.ts +0 -28
  548. package/dist/src/internal/process/pnpm.js +0 -1
  549. package/dist/src/public/channels/slack/api-encoding.d.ts +0 -5
  550. package/dist/src/public/channels/slack/api-encoding.js +0 -1
  551. package/dist/src/public/definitions/instrumentation.d.ts +0 -1
  552. package/dist/src/public/definitions/instrumentation.js +0 -1
  553. package/dist/src/public/models/openai/chatgpt/unsigned-jwt.d.ts +0 -5
  554. package/dist/src/public/models/openai/chatgpt/unsigned-jwt.js +0 -1
  555. package/dist/src/sandbox/backends/probes.d.ts +0 -7
  556. package/dist/src/sandbox/backends/probes.js +0 -1
  557. package/dist/src/setup/channel-add-conflicts.d.ts +0 -28
  558. package/dist/src/setup/channel-add-conflicts.js +0 -1
  559. package/dist/src/setup/primitives/run-pnpm.d.ts +0 -1
  560. package/dist/src/setup/primitives/run-pnpm.js +0 -1
  561. package/dist/src/shared/dispatch-action.d.ts +0 -30
  562. package/dist/src/shared/dispatch-action.js +0 -1
@@ -1,6 +1,6 @@
1
1
  import type { LocalTraceSpan } from "#tracing/local-trace-reader.js";
2
2
  import { type LocalTraceSummary } from "#tracing/local-trace-summary.js";
3
- export interface TraceAnalysisSelector {
3
+ interface TraceAnalysisSelector {
4
4
  readonly excludeSessionId?: string;
5
5
  readonly fromMs?: number;
6
6
  readonly sessionId?: string;
@@ -13,7 +13,7 @@ export interface TraceTokenUsage {
13
13
  readonly cacheReadTokens?: number;
14
14
  readonly cacheWriteTokens?: number;
15
15
  }
16
- export interface TraceTimelineRecord {
16
+ interface TraceTimelineRecord {
17
17
  readonly actionDurationMs?: number;
18
18
  readonly actionName?: string;
19
19
  readonly callId?: string;
@@ -31,7 +31,7 @@ export interface TraceTimelineRecord {
31
31
  readonly turnId?: string;
32
32
  readonly usage?: TraceTokenUsage;
33
33
  }
34
- export interface TraceAnalysis {
34
+ interface TraceAnalysis {
35
35
  readonly summary: LocalTraceSummary;
36
36
  readonly groups: readonly TraceAnalysisGroup[];
37
37
  /** Accumulated operation time, not elapsed time; parallel calls can overlap. */
@@ -49,3 +49,4 @@ export interface TraceAnalysisGroup {
49
49
  }
50
50
  /** Builds the detailed timeline only when inspection, rather than search, needs it. */
51
51
  export declare function analyzeLocalTrace(traceId: string, spans: readonly LocalTraceSpan[], selector?: TraceAnalysisSelector): TraceAnalysis;
52
+ export {};
@@ -1,5 +1,3 @@
1
- /** A path-safe, non-reversible key for one recorded conversation identifier. */
2
- export declare function localTraceConversationIndexKey(conversationId: string): string;
3
1
  /** Marker path relative to one trace directory. */
4
2
  export declare function localTraceConversationMarker(conversationId: string): string;
5
3
  /** Marker proving that a trace was written by an index-aware writer. */
@@ -1 +1 @@
1
- import{createHash}from"node:crypto";import{mkdir,writeFile}from"node:fs/promises";import{join}from"node:path";const INDEX_DIRECTORY=`index/v1`,CONVERSATIONS_DIRECTORY=`${INDEX_DIRECTORY}/conversations`,INDEXED_MARKER=`${INDEX_DIRECTORY}/indexed`;function localTraceConversationIndexKey(e){return createHash(`sha256`).update(e).digest(`hex`)}function localTraceConversationMarker(e){return`${CONVERSATIONS_DIRECTORY}/${localTraceConversationIndexKey(e)}`}function localTraceIndexedMarker(){return INDEXED_MARKER}async function indexLocalTraceConversation(e){let t=join(e.traceDirectory,localTraceConversationMarker(e.conversationId));await mkdir(join(e.traceDirectory,CONVERSATIONS_DIRECTORY),{recursive:!0}),await createMarker(t),await createMarker(join(e.traceDirectory,INDEXED_MARKER))}async function createMarker(e){try{await writeFile(e,``,{flag:`wx`})}catch(e){if(!isAlreadyPresent(e))throw e}}function isAlreadyPresent(e){return e instanceof Error&&`code`in e&&e.code===`EEXIST`}export{indexLocalTraceConversation,localTraceConversationIndexKey,localTraceConversationMarker,localTraceIndexedMarker};
1
+ import{createHash}from"node:crypto";import{mkdir,writeFile}from"node:fs/promises";import{join}from"node:path";const INDEX_DIRECTORY=`index/v1`,CONVERSATIONS_DIRECTORY=`${INDEX_DIRECTORY}/conversations`,INDEXED_MARKER=`${INDEX_DIRECTORY}/indexed`;function localTraceConversationIndexKey(e){return createHash(`sha256`).update(e).digest(`hex`)}function localTraceConversationMarker(e){return`${CONVERSATIONS_DIRECTORY}/${localTraceConversationIndexKey(e)}`}function localTraceIndexedMarker(){return INDEXED_MARKER}async function indexLocalTraceConversation(e){let t=join(e.traceDirectory,localTraceConversationMarker(e.conversationId));await mkdir(join(e.traceDirectory,CONVERSATIONS_DIRECTORY),{recursive:!0}),await createMarker(t),await createMarker(join(e.traceDirectory,INDEXED_MARKER))}async function createMarker(e){try{await writeFile(e,``,{flag:`wx`})}catch(e){if(!isAlreadyPresent(e))throw e}}function isAlreadyPresent(e){return e instanceof Error&&`code`in e&&e.code===`EEXIST`}export{indexLocalTraceConversation,localTraceConversationMarker,localTraceIndexedMarker};
@@ -1,6 +1,6 @@
1
1
  import type { LocalTraceSummary } from "#tracing/local-trace-summary.js";
2
2
  export type LocalTraceSortBy = "duration" | "failures" | "inputTokens" | "latest";
3
- export interface LocalTraceQueryFilter {
3
+ interface LocalTraceQueryFilter {
4
4
  readonly agentName?: string;
5
5
  /** Selects traces containing error spans, not necessarily failed activations. */
6
6
  readonly failedOnly?: boolean;
@@ -15,3 +15,4 @@ export declare function queryLocalTraceSummaries(summaries: readonly LocalTraceS
15
15
  readonly matches: readonly LocalTraceSummary[];
16
16
  readonly truncated: boolean;
17
17
  };
18
+ export {};
@@ -4,22 +4,22 @@
4
4
  */
5
5
  type RetentionBound = number | false;
6
6
  /** Resolved retention policy for one dev worker. */
7
- export interface LocalTraceRetentionSettings {
7
+ interface LocalTraceRetentionSettings {
8
8
  readonly enabled: boolean;
9
9
  readonly maxAgeMs: RetentionBound;
10
10
  readonly maxTotalBytes: RetentionBound;
11
11
  readonly retainCount: RetentionBound;
12
12
  }
13
13
  /** Which bound removed traces, reported for a single diagnostics line. */
14
- export type LocalTracePruneReason = "maxAgeMs" | "maxTotalBytes";
14
+ type LocalTracePruneReason = "maxAgeMs" | "maxTotalBytes";
15
15
  /** Outcome of one sweep. `removedTraces` counts trace directories, not spans. */
16
- export interface LocalTracePruneResult {
16
+ interface LocalTracePruneResult {
17
17
  readonly reasons: readonly LocalTracePruneReason[];
18
18
  readonly reclaimedBytes: number;
19
19
  readonly removedTraces: number;
20
20
  readonly retainedTraces: number;
21
21
  }
22
- export interface PruneLocalTraceStoreInput {
22
+ interface PruneLocalTraceStoreInput {
23
23
  readonly appRoot: string;
24
24
  /** Traces whose session is open in this worker; never evicted. */
25
25
  readonly activeTraceIds: ReadonlySet<string>;
@@ -1,4 +1,3 @@
1
- export declare const TELEMETRY_PRINCIPAL_ID_BYTES = 1024;
2
1
  export declare function boundedPrincipalId(value: unknown): string | undefined;
3
2
  export declare function telemetryByteLength(text: string): number;
4
3
  export declare function truncateTelemetryText(text: string, maxBytes: number): string;
@@ -1 +1 @@
1
- const TELEMETRY_PRINCIPAL_ID_BYTES=1024;function boundedPrincipalId(e){return typeof e==`string`&&e.length>0&&e.length<=1024&&telemetryByteLength(e)<=1024?e:void 0}const encoder=new TextEncoder,decoder=new TextDecoder;function telemetryByteLength(e){return encoder.encode(e).length}function truncateTelemetryText(e,t){let n=e.slice(0,t+1),r=encoder.encode(n);if(n.length===e.length&&r.length<=t)return e;let i=`... [truncated]`.slice(0,t),a=Math.max(0,t-i.length);for(;a>0&&(r[a]&192)==128;)--a;return decoder.decode(r.subarray(0,a))+i}export{TELEMETRY_PRINCIPAL_ID_BYTES,boundedPrincipalId,telemetryByteLength,truncateTelemetryText};
1
+ const TELEMETRY_PRINCIPAL_ID_BYTES=1024;function boundedPrincipalId(e){return typeof e==`string`&&e.length>0&&e.length<=TELEMETRY_PRINCIPAL_ID_BYTES&&telemetryByteLength(e)<=TELEMETRY_PRINCIPAL_ID_BYTES?e:void 0}const encoder=new TextEncoder,decoder=new TextDecoder;function telemetryByteLength(e){return encoder.encode(e).length}function truncateTelemetryText(e,t){let n=e.slice(0,t+1),r=encoder.encode(n);if(n.length===e.length&&r.length<=t)return e;let i=`... [truncated]`.slice(0,t),a=Math.max(0,t-i.length);for(;a>0&&(r[a]&192)==128;)--a;return decoder.decode(r.subarray(0,a))+i}export{boundedPrincipalId,telemetryByteLength,truncateTelemetryText};
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "eve",
3
- "version": "0.67.1",
3
+ "version": "0.67.2",
4
4
  "private": false,
5
5
  "description": "Filesystem-first framework for durable backend AI agents that run anywhere.",
6
6
  "keywords": [
@@ -523,12 +523,12 @@
523
523
  "@vercel/otel": "2.1.3",
524
524
  "@vercel/sandbox": "3.3.0",
525
525
  "@vercel/sdk": "1.28.8",
526
- "@workflow/core": "5.0.0-beta.56",
527
- "@workflow/errors": "5.0.0-beta.23",
526
+ "@workflow/core": "5.0.0-beta.57",
527
+ "@workflow/errors": "5.0.0-beta.24",
528
528
  "@workflow/serde": "5.0.0-beta.2",
529
- "@workflow/world": "5.0.0-beta.38",
530
- "@workflow/world-local": "5.0.0-beta.47",
531
- "@workflow/world-vercel": "5.0.0-beta.51",
529
+ "@workflow/world": "5.0.0-beta.39",
530
+ "@workflow/world-local": "5.0.0-beta.48",
531
+ "@workflow/world-vercel": "5.0.0-beta.52",
532
532
  "ai": "^7.0.105",
533
533
  "chat": "4.41.0",
534
534
  "chokidar": "5.0.0",
@@ -610,6 +610,7 @@
610
610
  "check:bin-runtime-dependencies": "node ./scripts/check-bin-runtime-dependencies.mjs",
611
611
  "dev": "pnpm run build:compiled && node ./scripts/copy-runtime-assets.mjs && tsc -p tsconfig.dev.json --watch --preserveWatchOutput",
612
612
  "test": "pnpm run test:unit && pnpm run test:integration",
613
+ "test:framework-fixtures": "pnpm run build:compiled && vitest run --config vitest.framework-fixtures.config.ts",
613
614
  "test:integration": "pnpm run build:js && vitest run --config vitest.integration.config.ts",
614
615
  "test:scenario": "pnpm run build:compiled && vitest run --config vitest.scenario.config.ts",
615
616
  "test:unit": "pnpm run build:compiled && vitest run --config vitest.unit.config.ts",
@@ -617,7 +618,6 @@
617
618
  "typecheck": "pnpm run check:web-template && pnpm run build:compiled && tsc -p tsconfig.json --noEmit",
618
619
  "generate:web-template": "node src/setup/build.ts --write",
619
620
  "check:web-template": "node src/setup/build.ts --check",
620
- "test:tui": "pnpm run build:js && tsc -p tsconfig.tui.json --noEmit && node test/tui-client/run-all.mjs",
621
- "test:vercel": "vitest run --config vitest.vercel.config.ts"
621
+ "test:tui": "pnpm run build:js && tsc -p tsconfig.tui.json --noEmit && node test/tui-client/run-all.mjs"
622
622
  }
623
623
  }
@@ -1,21 +0,0 @@
1
- import type { ChannelKind } from "#setup/scaffold/index.js";
2
- import type { DisabledChannelReasons } from "#setup/cli/index.js";
3
- /**
4
- * Existing authored registrations that affect the scaffolded channel picker
5
- * or would conflict with a generated channel module.
6
- */
7
- export interface ExistingChannelRegistrations {
8
- readonly disabledChannelReasons: DisabledChannelReasons;
9
- readonly webRouteOwners: readonly string[];
10
- readonly slackOwners: readonly string[];
11
- }
12
- /**
13
- * Inspects compiled authored channels so custom filenames still disable the
14
- * scaffold option for the channel behavior they register.
15
- */
16
- export declare function inspectExistingChannelRegistrations(projectRoot: string): Promise<ExistingChannelRegistrations>;
17
- /**
18
- * Rejects scaffolding when another authored module already owns behavior
19
- * emitted by the generated channel module.
20
- */
21
- export declare function assertCanAddSelectedChannels(selectedChannels: readonly ChannelKind[], registrations: ExistingChannelRegistrations): void;
@@ -1 +0,0 @@
1
- import{EVE_SESSION_ROUTE_PATH}from"#protocol/routes.js";import{join}from"node:path";import{compileChannelDefinition}from"#compiler/normalize-channel.js";import{createCompiledBindingNamespaceLoader}from"#compiler/load-binding-namespace.js";import{discoverAgent}from"#discover/discover-agent.js";const SCAFFOLDED_WEB_CHANNEL_LOGICAL_PATH=`channels/eve.ts`;async function inspectExistingChannelRegistrations(e){let t=join(e,`agent`),{manifest:n}=await discoverAgent({agentRoot:t,appRoot:e}),r=new Set,i=new Set;for(let e of n.channels){let n={backing:{externalDependencies:[],kind:`filesystem`,sourcePath:join(t,e.logicalPath)},logicalPath:e.logicalPath,owner:{kind:`application`}},a=await compileChannelDefinition(t,e,{binding:n,loadNamespace:createCompiledBindingNamespaceLoader({bindings:{[e.sourceId]:n},registries:[]})});if(a.kind===`channel`)for(let t of a.definitions)t.kind===`channel`&&(t.method===`POST`&&t.urlPath===EVE_SESSION_ROUTE_PATH&&r.add(e.logicalPath),t.adapterKind===`slack`&&i.add(e.logicalPath))}let a={};return[...r].some(e=>e!==SCAFFOLDED_WEB_CHANNEL_LOGICAL_PATH)&&(a.web=`POST ${EVE_SESSION_ROUTE_PATH} already registered`),i.size>0&&(a.slack=`Slack channel already registered`),{disabledChannelReasons:a,webRouteOwners:[...r],slackOwners:[...i]}}function assertCanAddSelectedChannels(e,t){if(e.includes(`web`)){let e=t.webRouteOwners.find(e=>e!==SCAFFOLDED_WEB_CHANNEL_LOGICAL_PATH);if(e!==void 0)throw Error(`Cannot scaffold Web Chat because agent/${e} already defines POST ${EVE_SESSION_ROUTE_PATH}. Web Chat scaffolds the same eve session routes.`)}if(e.includes(`slack`)){let e=t.slackOwners.find(e=>e!==`channels/slack.ts`);if(e!==void 0)throw Error(`Cannot scaffold Slack because agent/${e} already defines a Slack channel. Slack scaffolding would register the channel again.`)}}export{assertCanAddSelectedChannels,inspectExistingChannelRegistrations};
@@ -1,16 +0,0 @@
1
- import type { RegistrySearchItem } from "#compiled/shadcn-registry/index.js";
2
- export declare function normalizeRegistryText(value: string): string;
3
- export declare function printRegistrySearchResults(logger: {
4
- log(message: string): void;
5
- }, result: {
6
- items: RegistrySearchItem[];
7
- }, options: {
8
- json?: boolean;
9
- query: string | undefined;
10
- sections: readonly {
11
- label: string;
12
- items: RegistrySearchItem[];
13
- total: number;
14
- address(item: RegistrySearchItem): string;
15
- }[];
16
- }): void;
@@ -1,6 +0,0 @@
1
- import{createCliTheme,sanitizeForTerminal}from"#cli/ui/output.js";import{clipVisible,wrapVisibleLine}from"#cli/ui/terminal-text.js";function normalizeRegistryText(e){return sanitizeForTerminal(e).replaceAll(`\\"`,`"`).replaceAll(`\\'`,`'`).replaceAll(/\s+/gu,` `).trim()}function registryDescriptionSummary(e){let t=normalizeRegistryText(e);return t.match(/^.*?[.!?](?=\s|$)/u)?.[0]??t}function renderSearchItem(e,t,n,r){let i=Math.max(1,n-4),a=wrapVisibleLine(normalizeRegistryText(t),i),o=normalizeRegistryText(e.name),s=o.split(`/`).at(-1)??o,c=[` ${r.label(s)}`,...a.map(e=>` ${e}`)];if(!e.description)return c.join(`
2
- `);let l=registryDescriptionSummary(e.description);if(l.length===0)return c.join(`
3
- `);let u=wrapVisibleLine(l,i),d=u.length<=2?u:[u[0],`${clipVisible(u[1],Math.max(1,i-1)).trimEnd()}…`];return c.push(...d.map(e=>r.muted(` ${e}`))),c.join(`
4
- `)}function printRegistrySearchResults(e,t,n){if(n.json){e.log(JSON.stringify(t,null,2));return}if(t.items.length===0){let t=n.query&&normalizeRegistryText(n.query);e.log(t?`No registry items match "${t}".`:`No registry items found.`);return}let r=createCliTheme(),i=Math.max(20,process.stdout.columns??80),a=n.sections.flatMap(e=>{if(e.items.length===0)return[];let t=`${e.total} result${e.total===1?``:`s`}`,n=e.items.length<e.total?`showing ${e.items.length} of ${t}`:t;return[[`${r.label(e.label)} ${r.muted(`(${n})`)}`,...e.items.map(t=>renderSearchItem(t,e.address(t),i,r))].join(`
5
- `)]});e.log(a.join(`
6
- `))}export{normalizeRegistryText,printRegistrySearchResults};
@@ -1,3 +0,0 @@
1
- import{s as e,t}from"./rolldown-runtime-B_knIduE.js";function n(e,t,n){return n===1?e:t}var r=t(((e,t)=>{var n=1e3,r=n*60,i=r*60,a=i*24,o=a*7,s=a*365.25;t.exports=function(e,t){t||={};var n=typeof e;if(n===`string`&&e.length>0)return c(e);if(n===`number`&&isFinite(e))return t.long?u(e):l(e);throw Error(`val is not a non-empty string or a valid number. val=`+JSON.stringify(e))};function c(e){if(e=String(e),!(e.length>100)){var t=/^(-?(?:\d+)?\.?\d+) *(milliseconds?|msecs?|ms|seconds?|secs?|s|minutes?|mins?|m|hours?|hrs?|h|days?|d|weeks?|w|years?|yrs?|y)?$/i.exec(e);if(t){var c=parseFloat(t[1]);switch((t[2]||`ms`).toLowerCase()){case`years`:case`year`:case`yrs`:case`yr`:case`y`:return c*s;case`weeks`:case`week`:case`w`:return c*o;case`days`:case`day`:case`d`:return c*a;case`hours`:case`hour`:case`hrs`:case`hr`:case`h`:return c*i;case`minutes`:case`minute`:case`mins`:case`min`:case`m`:return c*r;case`seconds`:case`second`:case`secs`:case`sec`:case`s`:return c*n;case`milliseconds`:case`millisecond`:case`msecs`:case`msec`:case`ms`:return c;default:return}}}}function l(e){var t=Math.abs(e);return t>=a?Math.round(e/a)+`d`:t>=i?Math.round(e/i)+`h`:t>=r?Math.round(e/r)+`m`:t>=n?Math.round(e/n)+`s`:e+`ms`}function u(e){var t=Math.abs(e);return t>=a?d(e,t,a,`day`):t>=i?d(e,t,i,`hour`):t>=r?d(e,t,r,`minute`):t>=n?d(e,t,n,`second`):e+` ms`}function d(e,t,n,r){var i=t>=n*1.5;return Math.round(e/n)+` `+r+(i?`s`:``)}})),i=e(r(),1);function a(e){if(typeof e==`string`){let t=(0,i.default)(e);if(typeof t!=`number`||t<0)throw Error(`Invalid duration: "${e}". Expected a valid duration string like "1s", "1m", "1h", etc.`);return new Date(Date.now()+t)}if(typeof e==`number`){if(e<0||!Number.isFinite(e))throw Error(`Invalid duration: ${e}. Expected a non-negative finite number of milliseconds.`);return new Date(Date.now()+e)}if(e instanceof Date||e&&typeof e==`object`&&typeof e.getTime==`function`)return e instanceof Date?e:new Date(e.getTime());throw Error(`Invalid duration parameter. Expected a duration string, number (milliseconds), or Date object.`)}const o={USER_ERROR:`USER_ERROR`,RUNTIME_ERROR:`RUNTIME_ERROR`,CORRUPTED_EVENT_LOG:`CORRUPTED_EVENT_LOG`,REPLAY_DIVERGENCE:`REPLAY_DIVERGENCE`,MAX_DELIVERIES_EXCEEDED:`MAX_DELIVERIES_EXCEEDED`,MAX_EVENTS_EXCEEDED:`MAX_EVENTS_EXCEEDED`,REPLAY_TIMEOUT:`REPLAY_TIMEOUT`,STREAM_ERROR:`STREAM_ERROR`,WORLD_CONTRACT_ERROR:`WORLD_CONTRACT_ERROR`,DEPLOYMENT_MISMATCH:`DEPLOYMENT_MISMATCH`};function s(e){return typeof e==`object`&&!!e&&`name`in e&&`message`in e}function c(e,t){if(t.length===0)return e;let n=[e];return t.forEach((e,r)=>{let i=r===t.length-1,a=i?`╰▶ `:`├▶ `,o=i?` `:`│ `;`${e.label}: ${e.value}`.split(`
2
- `).forEach((e,t)=>{n.push(`${t===0?a:o}${e}`)})}),n.join(`
3
- `)}function l(e,t){let n=[];return e&&n.push({label:`hint`,value:e}),t&&n.push({label:`docs`,value:`https://workflow-sdk.dev/err/${t}`}),n}const u={NODE_JS_MODULE_IN_WORKFLOW:`node-js-module-in-workflow`,START_INVALID_WORKFLOW_FUNCTION:`start-invalid-workflow-function`,SERIALIZATION_FAILED:`serialization-failed`,WEBHOOK_INVALID_RESPOND_WITH_VALUE:`webhook-invalid-respond-with-value`,WEBHOOK_RESPONSE_NOT_SENT:`webhook-response-not-sent`,FETCH_IN_WORKFLOW_FUNCTION:`fetch-in-workflow`,TIMEOUT_FUNCTIONS_IN_WORKFLOW:`timeout-in-workflow`,HOOK_CONFLICT:`hook-conflict`,HOOK_FORCE_CLAIMED:`hook-force-claimed`,CORRUPTED_EVENT_LOG:`corrupted-event-log`,REPLAY_DIVERGENCE:`replay-divergence`,STEP_NOT_REGISTERED:`step-not-registered`,WORKFLOW_NOT_REGISTERED:`workflow-not-registered`,RUNTIME_DECRYPTION_FAILED:`runtime-decryption-failed`,DEPLOYMENT_MISMATCH:`deployment-mismatch`};var d=class extends Error{cause;constructor(e,t){let n=c(e,l(void 0,t?.slug));super(n,{cause:t?.cause}),t?.cause!==void 0&&(this.cause=t.cause),t?.cause instanceof Error&&(this.stack=`${this.stack}\nCaused by: ${t.cause.stack}`)}static is(e){return s(e)&&e.name===`WorkflowError`}},f=class extends d{status;code;url;retryAfter;field;constructor(e,t){super(e,{cause:t?.cause}),this.name=`WorkflowWorldError`,this.status=t?.status,this.code=t?.code,this.url=t?.url,this.retryAfter=t?.retryAfter,this.field=t?.field}static is(e){return s(e)&&e.name===`WorkflowWorldError`}},p=class extends d{runId;errorCode;constructor(e,t,n={}){let r=t instanceof Error?t.message:typeof t==`string`?t:t&&typeof t==`object`&&`message`in t?String(t.message):`Unknown error`;super(`Workflow run "${e}" failed: ${r}`,{cause:t}),this.name=`WorkflowRunFailedError`,this.runId=e,n.errorCode!==void 0&&(this.errorCode=n.errorCode)}static is(e){return s(e)&&e.name===`WorkflowRunFailedError`}},m=class extends d{runId;status;constructor(e,t){super(`Workflow run "${e}" has not completed`,{}),this.name=`WorkflowRunNotCompletedError`,this.runId=e,this.status=t}static is(e){return s(e)&&e.name===`WorkflowRunNotCompletedError`}},h=class extends d{constructor(e,t){super(e,{...t}),this.name=`WorkflowRuntimeError`}static is(e){return s(e)&&e.name===`WorkflowRuntimeError`}},g=class extends h{constructor(e,t){super(e,{...t,slug:u.CORRUPTED_EVENT_LOG}),this.name=`CorruptedEventLogError`}static is(e){return s(e)&&e.name===`CorruptedEventLogError`}},_=class extends h{eventId;constructor(e,t){super(e,{...t,slug:u.REPLAY_DIVERGENCE}),this.name=`ReplayDivergenceError`,this.eventId=t.eventId}static is(e){return s(e)&&e.name===`ReplayDivergenceError`&&typeof e.eventId==`string`}},v=class extends d{eventCount;limit;constructor(e,t,n){super(`Workflow exceeded the maximum of ${t} events per run`,n),this.name=`MaxEventsExceededError`,this.eventCount=e,this.limit=t}static is(e){return s(e)&&e.name===`MaxEventsExceededError`}},y=class extends h{constructor(e,t){super(e,{cause:t?.cause,slug:u.RUNTIME_DECRYPTION_FAILED}),this.name=`RuntimeDecryptionError`,t?.context!==void 0&&(this.context=t.context)}static is(e){return s(e)&&e.name===`RuntimeDecryptionError`}},b=class extends d{hint;constructor(e,t){let n=c(e,l(t?.hint,void 0));super(n,{cause:t?.cause}),this.name=`WorkflowBuildError`,this.hint=t?.hint}static is(e){return s(e)&&e.name===`WorkflowBuildError`}},x=class extends d{hint;fatal=!0;constructor(e,t){let n=c(e,l(t?.hint,void 0));super(n,{cause:t?.cause}),this.name=`SerializationError`,this.hint=t?.hint}static is(e){return s(e)&&e.name===`SerializationError`}},S=class extends h{stepName;constructor(e){super(`Step "${e}" is not registered in the current deployment. This usually indicates a build or bundling issue that caused the step to not be included in the deployment.`,{slug:u.STEP_NOT_REGISTERED}),this.name=`StepNotRegisteredError`,this.stepName=e}static is(e){return s(e)&&e.name===`StepNotRegisteredError`}},C=class extends h{workflowName;constructor(e){super(`Workflow "${e}" is not registered in the current deployment. This usually means a run was started against a deployment that does not have this workflow, or there was a build/bundling issue.`,{slug:u.WORKFLOW_NOT_REGISTERED}),this.name=`WorkflowNotRegisteredError`,this.workflowName=e}static is(e){return s(e)&&e.name===`WorkflowNotRegisteredError`}},w=class extends h{runId;expectedDeploymentId;actualDeploymentId;recoveryAttempts;constructor(e,t,r,i){let a=i?.recoveryAttempts??0,o=a>0?` The runtime re-routed the message to "${t}" ${a} ${n(`time`,`times`,a)} and it kept arriving elsewhere, so the run was stopped to protect against code-skew errors.`:` The run was stopped to protect against code-skew errors.`;super(`Workflow run "${e}" is pinned to deployment "${t}", but was received by deployment "${r}".${o} Verify that the run's deployment is still available and that queue callbacks are routed to it.`,{slug:u.DEPLOYMENT_MISMATCH,cause:i?.cause}),this.name=`WorkflowDeploymentMismatchError`,this.runId=e,this.expectedDeploymentId=t,this.actualDeploymentId=r,this.recoveryAttempts=a}static is(e){return s(e)&&e.name===`WorkflowDeploymentMismatchError`}},T=class extends d{runId;constructor(e){super(`Workflow run "${e}" not found`,{}),this.name=`WorkflowRunNotFoundError`,this.runId=e}static is(e){return s(e)&&e.name===`WorkflowRunNotFoundError`}},E=class extends d{token;conflictingRunId;constructor(e,t){super(`Hook token "${e}" is already in use by another workflow${t?` (run "${t}")`:``}`,{slug:u.HOOK_CONFLICT}),this.name=`HookConflictError`,this.token=e,t!==void 0&&(this.conflictingRunId=t)}static is(e){return s(e)&&e.name===`HookConflictError`}},D=class extends d{token;claimedByRunId;claimedByHookId;constructor(e,t,n){super(`Hook token "${e}" was force-claimed by another workflow (run "${t}")`,{slug:u.HOOK_FORCE_CLAIMED}),this.name=`HookForceClaimedError`,this.token=e,this.claimedByRunId=t,n!==void 0&&(this.claimedByHookId=n)}static is(e){return s(e)&&e.name===`HookForceClaimedError`}},O=class extends d{token;constructor(e){super(`Hook not found`,{}),this.name=`HookNotFoundError`,this.token=e}static is(e){return s(e)&&e.name===`HookNotFoundError`}},k=class extends f{constructor(e){super(e),this.name=`EntityConflictError`}static is(e){return s(e)&&e.name===`EntityConflictError`}},A=class extends f{runId;runStatus;expiredAt;constructor(e,t,n,r){super(e,{status:410,code:`run-expired`}),this.runId=t,this.runStatus=n,this.expiredAt=r,this.name=`RunExpiredError`}static is(e){return s(e)&&e.name===`RunExpiredError`}},j=class extends f{constructor(e,t){super(e,{code:o.STREAM_ERROR,cause:t?.cause,url:t?.url,status:t?.status}),this.name=`StreamError`}static is(e){return s(e)&&e.name===`StreamError`}},M=class extends f{runId;streamId;expiredAt;constructor(e,t,n,r){super(e,{status:410,code:`stream-expired`}),this.runId=t,this.streamId=n,this.expiredAt=r,this.name=`StreamExpiredError`}static is(e){return s(e)&&e.name===`StreamExpiredError`}},N=class extends f{constructor(e,t){super(e,{retryAfter:t?.retryAfter}),this.name=`TooEarlyError`}static is(e){return s(e)&&e.name===`TooEarlyError`}},P=class extends f{retryAfter;constructor(e,t){super(e),this.name=`ThrottleError`,this.retryAfter=t?.retryAfter}static is(e){return s(e)&&e.name===`ThrottleError`}},F=class extends f{details;constructor(e,t){super(e,{status:412,retryAfter:t?.retryAfter}),this.name=`PreconditionFailedError`,this.details=t?.details}static is(e){return s(e)&&e.name===`PreconditionFailedError`}},I=class extends d{runId;constructor(e){super(`Workflow run "${e}" cancelled`,{}),this.name=`WorkflowRunCancelledError`,this.runId=e}static is(e){return s(e)&&e.name===`WorkflowRunCancelledError`}},L=class extends d{runSpecVersion;worldSpecVersion;constructor(e,t){super(`Run requires spec version ${e}, but world supports version ${t}. Please upgrade 'workflow' package.`),this.name=`RunNotSupportedError`,this.runSpecVersion=e,this.worldSpecVersion=t}static is(e){return s(e)&&e.name===`RunNotSupportedError`}},R=class extends Error{fatal=!0;constructor(e){super(e),this.name=`FatalError`}static is(e){return s(e)?e.name===`FatalError`||e.fatal===!0:!1}},z=class extends Error{retryAfter;constructor(e,t={}){super(e),this.name=`RetryableError`,this.retryAfter=t.retryAfter===void 0?new Date(Date.now()+1e3):a(t.retryAfter)}static is(e){return s(e)&&e.name===`RetryableError`}};const B="Your current vercel account does not have access to this resource. Use `vercel login` or `vercel switch` to ensure you are linked to the right account.",V=Symbol.for(`@workflow/errors//FatalError`),H=Symbol.for(`@workflow/errors//RetryableError`),U=Symbol.for(`@workflow/errors//HookConflictError`),W=Symbol.for(`@workflow/errors//HookForceClaimedError`),G=Symbol.for(`@workflow/errors//RuntimeDecryptionError`),K=Symbol.for(`@workflow/errors//StreamError`);typeof globalThis<`u`&&(Object.hasOwn(globalThis,V)||Object.defineProperty(globalThis,V,{value:R,writable:!1,enumerable:!1,configurable:!1}),Object.hasOwn(globalThis,H)||Object.defineProperty(globalThis,H,{value:z,writable:!1,enumerable:!1,configurable:!1}),Object.hasOwn(globalThis,U)||Object.defineProperty(globalThis,U,{value:E,writable:!1,enumerable:!1,configurable:!1}),Object.hasOwn(globalThis,W)||Object.defineProperty(globalThis,W,{value:D,writable:!1,enumerable:!1,configurable:!1}),Object.hasOwn(globalThis,G)||Object.defineProperty(globalThis,G,{value:y,writable:!1,enumerable:!1,configurable:!1}),Object.hasOwn(globalThis,K)||Object.defineProperty(globalThis,K,{value:j,writable:!1,enumerable:!1,configurable:!1}));export{h as A,w as C,p as D,I as E,n as F,o as M,a as N,m as O,r as P,b as S,C as T,j as _,E as a,N as b,v as c,z as d,A as f,S as g,x as h,R as i,f as j,T as k,F as l,y as m,u as n,D as o,L as p,k as r,O as s,g as t,_ as u,M as v,d as w,B as x,P as y};
@@ -1 +0,0 @@
1
- import{S as e,_ as t,it as n,u as r,ut as i,w as a}from"./dist-BQSf8Hax.js";import{B as o,G as s,Gn as c,H as l,Kn as u,L as d,On as f,R as p,V as m,Vn as h,Xt as g,Yt as _,an as ee,at as v,d as y,fn as b,n as x,ot as S,st as C,y as w,z as T}from"./logger-BCEj9caG.js";import{M as E,j as D,l as O}from"./dist-BfMqXLK3.js";const k=`5.0.0-beta.56`,te=/^[a-zA-Z0-9_\-./@()[\]]+$/;function ne(t,n){if(!te.test(t))throw Error(`Invalid workflow name "${t}": must only contain alphanumeric characters, underscores, hyphens, dots, forward slashes, at signs, parentheses, or square brackets`);return`${e(`workflow`,a(n))}${t}`}const re=i();function A(e){return`__health_check__${e}`}function ie(e){let n=t.safeParse(e);if(n.success)return n.data}function j(e){return`wrun_hc_${e}`}async function M(e,t){let n=await u(),r=A(e.correlationId),i;if(e.runId)try{let t=await n.getEncryptionKeyForRun?.(e.runId);t&&(i=h((await c(t)).publicKey))}catch(t){x.warn(`Health check could not derive a run public key; the caller will fall back to a key lookup`,{correlationId:e.correlationId,error:t instanceof Error?t.message:String(t)})}let a=JSON.stringify({healthy:!0,correlationId:e.correlationId,specVersion:t??8,workflowCoreVersion:k,hookResumeInputVersion:1,...i?{encryptionPublicKey:i}:{},timestamp:Date.now()}),o=j(e.correlationId);await n.streams.write(o,r,a),await n.streams.close(o,r)}function N(e,t){let n;return Promise.race([e,new Promise((e,r)=>{n=setTimeout(()=>r(Error(`Operation timed out after ${t}ms`)),t)})]).finally(()=>clearTimeout(n))}async function P(e,t){let n=[],r=!1,i=!1;for(;!r&&!i;){let a=e.read(),o=new Promise(e=>setTimeout(()=>{i=!0,e({done:!0,value:void 0})},t)),s=await Promise.race([a,o]);r=s.done,s.value&&n.push(s.value)}return{chunks:n,timedOut:i}}function F(e){if(e.length===0)return null;let t=e.reduce((e,t)=>e+t.length,0),n=new Uint8Array(t),r=0;for(let t of e)n.set(t,r),r+=t.length;let i=new TextDecoder().decode(n),a;try{a=JSON.parse(i)}catch{return i.length>0?{healthy:!0}:null}if(typeof a!=`object`||!a||!(`healthy`in a)||typeof a.healthy!=`boolean`)return null;let o=a,s={healthy:o.healthy};return typeof o.specVersion==`number`&&(s.specVersion=o.specVersion),typeof o.workflowCoreVersion==`string`&&(s.workflowCoreVersion=o.workflowCoreVersion),typeof o.encryptionPublicKey==`string`&&(s.encryptionPublicKey=o.encryptionPublicKey),typeof o.hookResumeInputVersion==`number`&&(s.hookResumeInputVersion=o.hookResumeInputVersion),s}async function I(t,n){let r=n?.timeout??3e4,i=t.createRunId?.()??re(),o=A(i),s=`${e(`workflow`,a(n?.namespace))}health_check`,c=Date.now();try{for(await t.queue(s,{__healthCheck:!0,correlationId:i,...n?.runId?{runId:n.runId}:{}},{specVersion:1,deploymentId:n?.deploymentId});Date.now()-c<r;)try{let e=r-(Date.now()-c),n=(await N(t.streams.get(j(i),o),e)).getReader(),{chunks:a,timedOut:s}=await P(n,500);if(s){try{n.cancel()}catch{}await new Promise(e=>setTimeout(e,100));continue}let l=F(a);if(l)return{...l,latencyMs:Date.now()-c};await new Promise(e=>setTimeout(e,100))}catch{await new Promise(e=>setTimeout(e,100))}return{healthy:!1,error:`Health check timed out after ${r}ms`}}catch(e){return{healthy:!1,error:e instanceof Error?e.message:String(e)}}}function L(e,t){return new D(`Event pagination ${t} for workflow run "${e}".`,{code:E.WORLD_CONTRACT_ERROR})}function R(e,t,n){if(t){if(n.has(t))throw L(e,`did not advance`);n.add(t)}}function z(e,t,n){if(t.length===0)return;let r=n??new Set(e.map(e=>e.eventId));for(let n of t)r.has(n.eventId)||(r.add(n.eventId),e.push(n))}function B(e,t){let n=e.length;for(;n>0;){let r=e[n-1];if(r.eventId===t.eventId)return;if(r.eventId<t.eventId)break;n--}e.splice(n,0,t)}function V(e,t,n,r){if(t){if(n===null)throw L(e,`returned more pages without a cursor`);if(r.has(n))throw L(e,`repeated a cursor`)}}function H(e,t,n){return t!==null&&!n&&D.is(e)&&e.status===400}async function U(e,t){let n=t!==void 0;return w(`workflow.replay.load`,async r=>{r?.setAttributes({...b(e),...ee(n?`events_list_incremental`:`events_list`)});let i=[],a=new Set,o=new Set,s=t??null,c=!0,l=0,d=!1,f=await u(),p=Date.now();for(;c;){let t=Date.now(),r=s;R(e,r,o);let u;try{u=await f.events.list({runId:e,pagination:{sortOrder:`asc`,cursor:r??void 0}})}catch(t){if(H(t,r,d)){x.warn(`Event cursor was rejected; retrying with a full event reload.`,{workflowRunId:e}),i.length=0,a.clear(),o.clear(),s=null,d=!0;continue}throw t}z(i,u.data,a),c=u.hasMore,V(e,c,u.cursor,o),s=u.cursor??s,l++,x.debug(`Loaded event page`,{workflowRunId:e,incremental:n,page:l,pageEvents:u.data.length,totalEvents:i.length,hasMore:c,pageMs:Date.now()-t})}return x.debug(`Event load complete`,{workflowRunId:e,incremental:n,totalEvents:i.length,pagesLoaded:l,totalMs:Date.now()-p}),r?.setAttributes({..._(i.length),...g(l)}),{events:i,cursor:s}})}function W(e,t){z(e.events,t.events),e.cursor=t.cursor??e.cursor}function G(){return process.env.WORKFLOW_SLOT_GAP_CHECK!==`0`}function K(e,t){let n=e.length;z(e,t);let r=e.length-n;return r>0&&e.sort((e,t)=>e.eventId<t.eventId?-1:+(e.eventId>t.eventId)),r}function ae(e,t){let n=t.events?.length??0;return n===0?{added:0,offered:0,truncated:!1}:t.hasMore===!0?{added:0,offered:n,truncated:!0}:{added:K(e,t.events??[]),offered:n,truncated:!1}}function q(e){let t;for(let n of e){let e=r(n.eventId);(t===void 0||e>t)&&(t=e)}return t}function J(e){let t=new Set,n=0;for(let i of e){let e=r(i.eventId);t.add(e),e>n&&(n=e)}if(n===0)return;let i=t.has(1)?1:2;if(t.size===n-i+1)return;let a,o=0;for(let e=i;e<=n;e++)t.has(e)||(a??=e,o++);if(a!==void 0)return{firstMissingSlot:a,missingCount:o,maxSlot:n}}const oe=3;async function se(e,t){let n=t,r=J(n.events);for(let t=0;r!==void 0&&t<3;t++)await new Promise(e=>setTimeout(e,25*2**t)),n=await U(e),r=J(n.events);return{log:n,gap:r}}function ce(e){let t=q(e);return t===void 0?{}:{eventCount:t}}function le(e,t){if(!O.is(e))return null;let n=e.details;if(typeof n!=`object`||!n)return null;let{events:r,cursor:i}=n;if(!Array.isArray(r)||r.length===0)return null;for(let e of r)if(typeof e!=`object`||!e||typeof e.eventId!=`string`||e.runId!==t)return null;return{events:r,cursor:typeof i==`string`?i:null}}const Y={"Access-Control-Allow-Origin":`*`,"Access-Control-Allow-Methods":`POST, OPTIONS, GET, HEAD`,"Access-Control-Allow-Headers":`Content-Type`};function X(e,t){return async n=>{let r=new URL(n.url);return r.searchParams.has(`__health`)?n.method===`OPTIONS`?new Response(null,{status:204,headers:Y}):new Response(JSON.stringify({healthy:!0,endpoint:r.pathname,specVersion:t??8,workflowCoreVersion:k}),{status:200,headers:{"Content-Type":`application/json`,...Y}}):await e(n)}}function Z(e,t){return e?.[n]??t}function ue(e){return{deploymentId:e.deploymentId,specVersion:e.specVersion??0,...e.startedAt?{startedAt:+e.startedAt}:{},rootRunId:Z(e.attributes,e.runId)}}function de(e){let t=2166136261;for(let n=0;n<e.length;n++)t^=e.charCodeAt(n),t=Math.imul(t,16777619);return(t>>>0).toString(16).padStart(8,`0`)}function fe(e,t){return`${e}:${de(t)}`}async function Q(e,...t){let n=t[0];await w(`queue.publish`,{attributes:{...m(`vercel-queue`),...p(n),...o(`publish`),...l(`vercel-queue`),...C(`vercel-queue`),...S(`vqs`),...v(`publish`)},kind:await y(`PRODUCER`)},async n=>{let{messageId:r}=await e.queue(...t);r&&n?.setAttributes(T(r))})}async function pe(e,t,n){if(n.length===0)return;let r=e.queueBatch?.bind(e);if(!r){await Promise.all(n.map(n=>Q(e,t,n.message,n.opts)));return}await w(`queue.publish`,{attributes:{...m(`vercel-queue`),...p(t),...o(`publish`),...d(n.length),...l(`vercel-queue`),...C(`vercel-queue`),...S(`vqs`),...v(`publishBatch`)},kind:await y(`PRODUCER`)},async()=>{let e=await r(t,n);if(e.length!==n.length)throw Object.assign(Error(`Queue batch for ${t} returned ${e.length} result(s) for ${n.length} message(s)`),{retryable:!0});let i=e.filter(e=>e.error!==void 0);if(i.length===0)return;let a=i.some(e=>e.error!==void 0&&e.retryable),o=Error(`Failed to publish ${i.length} of ${n.length} queue message(s) to ${t}: ${i[0]?.error}`);throw Object.assign(o,{retryable:a}),o})}function me(e){if(e.requestedAt)try{return s(Date.now()-e.requestedAt.getTime())}catch{return}}async function $(e,t,n){let r=typeof t==`string`?await e.getEncryptionKeyForRun?.(t,n):await e.getEncryptionKeyForRun?.(t);return r?await f(r):void 0}function he(e,t){let n;return()=>(n||=$(e,t),n)}export{se as C,k as D,X as E,ue as S,fe as T,le as _,J as a,$ as b,M as c,G as d,U as f,ie as g,K as h,z as i,I as l,he as m,ae as n,me as o,q as p,W as r,ne as s,oe as t,B as u,Q as v,ce as w,Z as x,pe as y};
@@ -1,14 +0,0 @@
1
- import{mt as e}from"./dist-BQSf8Hax.js";import{A as t,m as n}from"./dist-BfMqXLK3.js";import{n as r,r as i}from"./global-BQnKzRXo.js";function a(e,t){if(typeof t!=`string`)return null;let[n,r,...i]=t.split(`//`);if(n!==e||!r||i.length===0)return null;let a=i.join(`//`),o=a.split(`/`).at(-1)??``,s=``;return s=r.startsWith(`./`)?r.split(`/`).at(-1)??``:(r.split(`@`).slice(0,-1).join(`@`)||r.split(`@`)[0])?.split(`/`).at(-1)??``,[`default`,`__default`].includes(o)&&s&&(o=s),{shortName:o,moduleSpecifier:r,functionName:a}}function o(e){return a(`workflow`,e)}function s(e){return a(`step`,e)}function c(e){return p(s(e),e)}function l(e){return p(o(e),e)}function u(e){return o(e)?.shortName??f(`workflow`,e)??e}function d(e){return s(e)?.shortName??f(`step`,e)??e}function f(e,t){if(!t.startsWith(`${e}--`))return null;let n=t.split(`--`).filter(Boolean),r=n.at(-1)?.split(`-`).filter(Boolean).at(-1)??``;if([`default`,`__default`].includes(r)){let t=n.at(-2)?.split(`-`).filter(Boolean).at(-1);t&&t!==e&&(r=t)}return r||null}function p(e,t){return e?`${e.shortName} (${e.moduleSpecifier})`:t}async function m(e,n=[`encrypt`,`decrypt`]){if(e.byteLength!==32)throw new t(`Encryption key must be exactly 32 bytes, got ${e.byteLength}`);return globalThis.crypto.subtle.importKey(`raw`,e,`AES-GCM`,!1,n)}async function h(e,t,r){let i=globalThis.crypto.getRandomValues(new Uint8Array(12)),a;try{a=await globalThis.crypto.subtle.encrypt({name:`AES-GCM`,iv:i,tagLength:128,...r?{additionalData:r}:{}},e,t)}catch(e){throw new n(`AES-256-GCM encryption failed: ${e instanceof Error?e.message:String(e)}`,{cause:e,context:{operation:`encrypt`,byteLength:t.byteLength}})}let o=new Uint8Array(12+a.byteLength);return o.set(i,0),o.set(new Uint8Array(a),12),o}async function g(e,t,r){if(t.byteLength<28)throw new n(`Encrypted data too short: expected at least 28 bytes, got ${t.byteLength}`,{context:{operation:`decrypt`,byteLength:t.byteLength}});let i=t.subarray(0,12),a=t.subarray(12),o;try{o=await globalThis.crypto.subtle.decrypt({name:`AES-GCM`,iv:i,tagLength:128,...r?{additionalData:r}:{}},e,a)}catch(e){let r=e instanceof Error?e.message:String(e);throw new n(`AES-256-GCM decryption failed: ${r}`,{cause:e,context:{operation:`decrypt`,byteLength:t.byteLength}})}return new Uint8Array(o)}function _(e){let n=e.specVersion;if(!(n!=null&&n>=6&&n<=8))throw new t(`This Workflow runtime supports Worlds with spec version 6 through 8, but the configured World declares spec version ${n??`none`}. Install a World package version compatible with the current Workflow runtime.`)}const v=Symbol.for(`@workflow/world//cache`),y=Symbol.for(`@workflow/world//cachePromise`),ee=Symbol.for(`@workflow/world//getWorldFn`);async function te(){let e=globalThis;if(e[v])return _(e[v]),e[v];if(e[y])return e[v]=await e[y],_(e[v]),e[v];let t=e[ee];if(t){let e=await t();return _(e),e}throw Error("Workflow world runtime was not initialized. Import from the host workflow entrypoints (`workflow`, `workflow/api`, or `workflow/runtime`) so @workflow/core/runtime/world-init can register getWorld before getWorldLazy() is used.")}const b=new Uint8Array([48,46,2,1,0,48,5,6,3,43,101,110,4,34,4,32]),x=new TextEncoder;function ne(e){if(e.byteLength!==32)throw new t(`Run key material must be exactly 32 bytes, got ${e.byteLength}`)}function re(e,n){if(e.byteLength!==32)throw new t(`${n} must be exactly 32 bytes, got ${e.byteLength}`)}async function S(e){ne(e);let t=await globalThis.crypto.subtle.importKey(`raw`,e,`HKDF`,!1,[`deriveBits`]),n=await globalThis.crypto.subtle.deriveBits({name:`HKDF`,hash:`SHA-256`,salt:new Uint8Array(32),info:x.encode(`workflow/encp/x25519/v1`)},t,256),r=new Uint8Array(n);return{scalar:r,publicKey:await ie(r)}}async function ie(e){let n=await C(e,!0),r=await globalThis.crypto.subtle.exportKey(`jwk`,n);if(!r.x)throw new t(`X25519 JWK export did not include a public key component ("x")`);let i=se(r.x);if(i.byteLength!==32)throw new t(`X25519 JWK export produced a ${i.byteLength}-byte public key, expected 32`);return i}async function C(e,t){let n=new Uint8Array(b.length+e.byteLength);return n.set(b,0),n.set(e,b.length),globalThis.crypto.subtle.importKey(`pkcs8`,n,{name:`X25519`},t,[`deriveBits`])}function w(e){return globalThis.crypto.subtle.importKey(`raw`,e,{name:`X25519`},!0,[])}const T=`ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/`;function ae(e){let t=``;for(let n=0;n<e.length;n+=3){let r=e[n],i=n+1<e.length?e[n+1]:0,a=n+2<e.length?e[n+2]:0;t+=T[r>>2&63],t+=T[(r&3)<<4|i>>4&15],t+=n+1<e.length?T[(i&15)<<2|a>>6&3]:`=`,t+=n+2<e.length?T[a&63]:`=`}return t}function oe(e){let t=e.length;for(;t>0&&e[t-1]===`=`;)t--;let n=e.slice(0,t);if(n.includes(`=`)||n.length%4==1||t!==e.length&&e.length%4!=0)return;let r=0,i=0,a=[];for(let e=0;e<n.length;e++){let t=T.indexOf(n[e]);if(t===-1)return;r=r<<6|t,i+=6,i>=8&&(i-=8,a.push(r>>i&255))}if(!(i>0&&r&(1<<i)-1))return new Uint8Array(a)}function se(e){let n=0,r=0,i=[];for(let a=0;a<e.length;a++){let o=e[a];if(o===`=`)break;let s=`ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789-_`.indexOf(o);if(s===-1)throw new t(`Invalid base64url character "${o}" in X25519 JWK key component`);n=n<<6|s,r+=6,r>=8&&(r-=8,i.push(n>>r&255))}return new Uint8Array(i)}async function ce(e,t,n,r){let i=x.encode(`workflow/encp/aes256gcm/v1`),a=new Uint8Array(i.length+t.length+n.length);a.set(i,0),a.set(t,i.length),a.set(n,i.length+t.length);let o=await globalThis.crypto.subtle.importKey(`raw`,e,`HKDF`,!1,[`deriveBits`]),s=await globalThis.crypto.subtle.deriveBits({name:`HKDF`,hash:`SHA-256`,salt:new Uint8Array(32),info:a},o,256);return globalThis.crypto.subtle.importKey(`raw`,new Uint8Array(s),`AES-GCM`,!1,r)}async function le(e){re(e,`Recipient public key`);let n;try{n=await w(e)}catch(e){throw new t(`Invalid X25519 recipient public key: ${e instanceof Error?e.message:String(e)}`,{cause:e})}let r=await globalThis.crypto.subtle.generateKey({name:`X25519`},!0,[`deriveBits`]),i=new Uint8Array(await globalThis.crypto.subtle.exportKey(`raw`,r.publicKey)),a;try{a=await globalThis.crypto.subtle.deriveBits({name:`X25519`,public:n},r.privateKey,256)}catch(e){throw new t(`X25519 key agreement failed: the recipient public key is not a valid curve point (low-order point or corrupted key material)`,{cause:e})}return{ephemeralPublicKey:i,contentKey:await ce(new Uint8Array(a),i,e,[`encrypt`])}}async function ue(e,t){if(t.byteLength!==32)throw new n(`Sealed payload has a malformed ephemeral public key: expected 32 bytes, got ${t.byteLength}`,{context:{operation:`decrypt`,byteLength:t.byteLength}});let r;try{let[n,i]=await Promise.all([C(e.scalar,!1),w(t)]);r=await globalThis.crypto.subtle.deriveBits({name:`X25519`,public:i},n,256)}catch(e){throw new n(`X25519 key agreement failed while opening a sealed payload: ${e instanceof Error?e.message:String(e)}`,{cause:e,context:{operation:`decrypt`,byteLength:t.byteLength}})}return ce(new Uint8Array(r),t,e.publicKey,[`decrypt`])}async function de(e,t,n){let{ephemeralPublicKey:r,contentKey:i}=await le(e),a=await h(i,t,n),o=new Uint8Array(r.byteLength+a.byteLength);return o.set(r,0),o.set(a,r.byteLength),o}async function fe(e,t,r){if(t.byteLength<60)throw new n(`Sealed payload too short: expected at least 60 bytes, got ${t.byteLength}`,{context:{operation:`decrypt`,byteLength:t.byteLength}});let i=t.subarray(0,32),a=t.subarray(32);return g(await ue(e,i),a,r)}function pe(e,t){let n;return{async seal(r){n??=le(e);let{ephemeralPublicKey:i,contentKey:a}=await n,o=await h(a,r,t),s=new Uint8Array(i.byteLength+o.byteLength);return s.set(i,0),s.set(o,i.byteLength),s}}}function me(e,t){let r,i;return{async open(a){if(a.byteLength<60)throw new n(`Sealed payload too short: expected at least 60 bytes, got ${a.byteLength}`,{context:{operation:`decrypt`,byteLength:a.byteLength}});let o=a.subarray(0,32),s=a.subarray(32),c=he(o);(c!==r||!i)&&(r=c,i=ue(e,o));let l;try{l=await i}catch(e){throw r=void 0,i=void 0,e}return g(l,s,t)}}}function he(e){let t=``;for(let n=0;n<e.length;n++)t+=e[n].toString(16).padStart(2,`0`);return t}function ge(e){if(!e)return;let t=oe(e);if(t&&t.byteLength===32)return t}function E(e){return e.length===4&&/^[a-z0-9]{4}$/.test(e)}const D={DEVALUE_V1:`devl`,ENCRYPTED:`encr`,SEALED:`encp`,GZIP:`gzip`,ZSTD:`zstd`},_e=new TextEncoder,O=new TextDecoder;function k(e,t){if(!(t instanceof Uint8Array))return t;let n=_e.encode(e),r=new Uint8Array(4+t.length);return r.set(n,0),r.set(t,4),r}function A(e){if(!(e instanceof Uint8Array)||e.length<4)return null;let t=e.subarray(0,4),n=O.decode(t);return E(n)?n:null}function ve(e){return A(e)===D.ENCRYPTED}function j(e){if(!(e instanceof Uint8Array))return{format:D.DEVALUE_V1,payload:new TextEncoder().encode(JSON.stringify(e))};if(e.length<4)throw Error(`Data too short to contain format prefix: expected at least 4 bytes, got ${e.length}`);let t=e.subarray(0,4),n=O.decode(t);if(!E(n))throw Error(`Invalid format prefix: "${n}". Must be 4 characters of [a-z0-9].`);return{format:n,payload:e.subarray(4)}}const M=Symbol.for(`workflow.serialization.sealTarget`),N=Symbol.for(`workflow.serialization.runKeys`);function ye(e,t){return{[M]:!0,recipientPublicKey:e,aad:t}}function P(e,t,n){return{[N]:!0,aes:e,keyPair:t,aad:n}}async function be(e){let[t,n]=await Promise.all([m(e),S(e)]);return P(t,n)}function F(e){return typeof e==`object`&&!!e&&e[M]===!0}function I(e){return typeof e==`object`&&!!e&&e[N]===!0}function L(e){if(e){if(I(e))return e.aes;if(!F(e))return e}}async function xe(e){return typeof e==`function`?e():e}async function Se(e,t){if(!t||!(e instanceof Uint8Array))return e;if(F(t)){let n=await de(t.recipientPublicKey,e,t.aad);return k(D.SEALED,n)}let n=await h(I(t)?t.aes:t,e);return k(D.ENCRYPTED,n)}async function Ce(e,t){if(!I(t))throw new n(`Sealed data encountered but no run keypair is available. Opening a sealed payload requires the run's own encryption key material; a symmetric key or a seal-only target cannot decrypt it.`,{context:{operation:`decrypt`,byteLength:e.byteLength,formatPrefix:`encp`}});let{payload:r}=j(e);try{return await fe(t.keyPair,r,t.aad)}catch(e){throw n.is(e)&&e.context&&(e.context.formatPrefix=D.SEALED),e}}async function we(e,t){if(!(e instanceof Uint8Array))return e;let r=A(e);if(r===D.SEALED)return Ce(e,t);if(r!==D.ENCRYPTED)return e;let i=L(t);if(!i)throw new n(`Encrypted data encountered but no encryption key is available. Encryption is not configured or no key was provided for this run.`,{context:{operation:`decrypt`,byteLength:e.byteLength,formatPrefix:`encr`}});let{payload:a}=j(e);try{return await g(i,a)}catch(e){throw n.is(e)&&e.context&&(e.context.formatPrefix=r),e}}const Te=(()=>{let e=globalThis.process;return e?.env?e.env.FORCE_COLOR&&e.env.FORCE_COLOR!==`0`?!0:!e.env.NO_COLOR&&!!e.stdout?.isTTY:!1})(),R=(e,t)=>n=>Te?`\x1b[${e}m${n}\x1b[${t}m`:n,z={bold:R(1,22),dim:R(2,22),italic:R(3,23),red:R(31,39),blue:R(34,39),cyan:R(36,39),yellow:R(33,39),magenta:R(35,39)},B={info:z.blue,help:z.cyan,warn:z.yellow,error:z.red};function Ee(e){let t=Array.isArray(e)?e.join(`
2
- `):e;return B.info(`${z.bold(`hint:`)} ${t}`)}function De(e){return B.info(`${z.bold(`docs:`)} ${e}`)}function Oe(e){return z.italic(`${z.dim("`")}${e}${z.dim("`")}`)}function V(e){return z.dim(e)}function ke(e){return z.bold(e)}function Ae(e){return z.red(e)}function je(e){return z.magenta(e)}function Me(e,t){let n=[e];return t.forEach((e,r)=>{let i=e.split(`
3
- `),a=r===t.length-1,o=a?`╰▶ `:`├▶ `,s=a?` `:`│ `,c=i.map((e,t)=>`${t===0?o:s}${e}`);n.push(...c)}),n.join(`
4
- `)}function Ne(e,t,n){let[r,...i]=t.split(`
5
- `),a=i.join(`
6
- `),o=a.trim()?a:H(n??{},`errorStack`)??``,s=Pe(r??``,o,n),c=Fe(o),l=[`${e} ${r??``}`];return s&&l.push(s),c&&l.push(c),l.join(`
7
- `)}function Pe(e,t,n){if(!n||Object.keys(n).length===0)return null;let r=new Set;r.add(`errorStack`);let i=H(n,`errorMessage`);i&&(e.includes(i)||t.includes(i))&&r.add(`errorMessage`);let a=new Set([`workflowRunId`,`workflowName`,`stepId`,`stepName`,`errorAttribution`,`errorCode`,`errorName`,`errorMessage`,`errorStack`,`errorCause`,`hint`,`attempt`,`retryCount`]),o=[],s=H(n,`errorName`),u=H(n,`errorAttribution`),d=s!==null&&Le(t,s);if(u||s&&!d){let e=u?u===`sdk`?je(`sdk error`):Ae(`user error`):``,t=s?ke(s):``,n=e&&t?V(` · `):``;o.push(` ${e}${n}${t}`)}let f=H(n,`workflowRunId`),p=H(n,`workflowName`);f?o.push(W(`run`,f,p,l)):p&&o.push(W(`run`,null,p,l));let m=H(n,`stepId`),h=H(n,`stepName`);if((m||h)&&o.push(W(`step`,m,h,c)),n.attempt!==void 0||n.retryCount!==void 0){let e=n.attempt,t=n.retryCount;e!==void 0&&t!==void 0?o.push(` ${U(`retry`)} ${e} ${V(`attempts ·`)} ${t} ${V(`max retries`)}`):e!==void 0&&o.push(` ${U(`retry`)} ${e} ${V(`attempts`)}`)}let g=H(n,`errorCode`);g&&g!==s&&o.push(` ${U(`code`)} ${V(g)}`),i&&!r.has(`errorMessage`)&&o.push(` ${U(`error`)} ${G(i)}`);let _=H(n,`errorCause`);_&&!t.includes(_)&&o.push(` ${U(`cause`)} ${G(_)}`);let v=H(n,`hint`);v&&o.push(` ${Ee(v)}`);let y=Object.entries(n).filter(([e,t])=>!a.has(e)&&!r.has(e)&&t!=null).sort(([e],[t])=>e.localeCompare(t));for(let[e,t]of y)o.push(` ${U(e)} ${G(t)}`);return o.length?o.join(`
8
- `):null}function Fe(e){if(!e)return null;let t=e.split(`
9
- `),n=[],r=0,i=0,a=0,o=()=>{r>0&&(n.push(V(` … ${r} more ${r===1?`frame`:`frames`} in framework internals`)),r=0)};for(let e of t){let t=e.trimStart().startsWith(`at `);if(t&&Ie(e)){r++;continue}if(t&&i>=6){a++;continue}o(),n.push(e),t&&i++}return o(),a>0&&n.push(V(` … ${a} more ${a===1?`frame`:`frames`} (run \`pnpm wf inspect run <id>\` for the full stack)`)),n.join(`
10
- `)}function Ie(e){let t=e.trimStart();return t.startsWith(`at `)?!!(t.includes(`node:internal/`)||t.includes(`node_modules/.pnpm/`)||t.includes(`node_modules__pnpm_`)||t.includes(`_next_dist_`)||t.includes(`node_modules/next/`)||t.includes(`node_modules/@opentelemetry/`)||t.includes(`node_modules/vitest/`)||t.includes(`node_modules/@vitest/`)):!1}function Le(e,t){let n=e.split(`
11
- `,1)[0]?.trim()??``;return n===t||n.startsWith(`${t}:`)}function H(e,t){let n=e[t];return typeof n==`string`&&n.length>0?n:null}function U(e){return V(e.padEnd(6))}function W(e,t,n,r){let i=t||V(`—`),a=n&&(e===`run`?o(n):s(n))?`${V(`·`)} ${r(n)}`:``;return` ${U(e)} ${i}${a?` `+a:``}`}function G(e){if(typeof e==`string`)return e.includes(`
12
- `)?e.split(`
13
- `).map((e,t)=>t===0?e:` ${e}`).join(`
14
- `):e;if(typeof e==`number`||typeof e==`boolean`)return String(e);try{return JSON.stringify(e)}catch{return String(e)}}function K(...e){return t=>Object.fromEntries(e.map(e=>[e,t]))}const Re=K(`workflow.name`),ze=K(`workflow.operation`),Be=K(`workflow.run.id`),Ve=K(`workflow.run.status`),He=K(`workflow.started_at`),Ue=K(`workflow.events.count`),We=K(`workflow.execution.mode`),Ge=K(`workflow.bundle.compile.cache_hit`),Ke=K(`workflow.replay.load.source`),qe=K(`workflow.events.parked.count`),Je=K(`workflow.events.parked.event_id`),Ye=K(`workflow.events.parked.event_type`),Xe=K(`workflow.arguments.count`),Ze=K(`workflow.result.type`),Qe=K(`workflow.trace.propagated`),$e=K(`workflow.trace.mode`),et=K(`workflow.turbo`),tt=K(`workflow.error.name`),nt=K(`workflow.error.message`),rt=K(`workflow.error.code`),it=K(`workflow.steps.created`),at=K(`workflow.hooks.created`),ot=K(`workflow.waits.created`),st=K(`workflow.steps.failed_serialization`),ct=K(`workflow.inline_ownership.owned_recovery_steps`),lt=K(`workflow.inline_ownership.backstop_wakes_armed`),ut=K(`workflow.dispatch.republish_skipped`),dt=K(`workflow.route.type`),ft=K(`workflow.route.handler_cached`),pt=K(`workflow.route.invocation_count`),mt=K(`workflow.route.entrypoint_age_ms`),ht=K(`workflow.route.module_body_init_ms`),gt=K(`faas.instance`),_t=K(`step.name`),vt=K(`step.id`),yt=K(`step.attempt`),bt=K(`step.status`),xt=K(`step.max_retries`),St=K(`step.ttfs_ms`),Ct=K(`step.stso_ms`),wt=K(`step.rsfs_ms`),Tt=K(`step.final_scheduling_replay_ms`),Et=K(`step.latency_optimizations`),Dt=K(`workflow.step_start.strategy`),Ot=K(`step.skipped`),kt=K(`step.skip_reason`),At=K(`step.arguments.count`),jt=K(`step.result.type`),Mt=K(`step.error.name`),Nt=K(`step.error.message`),Pt=K(`step.fatal_error`),Ft=K(`step.retry.exhausted`),It=K(`step.retry.timeout_seconds`),Lt=K(`step.retry.will_retry`),Rt=K(`messaging.system`),zt=K(`messaging.destination.name`),Bt=K(`messaging.message.id`),Vt=K(`messaging.operation.type`),Ht=K(`messaging.batch.message_count`),Ut=K(`workflow.queue.overhead_ms`),Wt=K(`deployment.id`),Gt=K(`workflow.deployment.pinned_id`),Kt=K(`workflow.deployment_mismatch.retry_count`),qt=K(`workflow.deployment_mismatch.recovered`),Jt=K(`workflow.hook.token`),Yt=K(`workflow.hook.id`),Xt=K(`workflow.hook.found`),Zt=K(`workflow.hook.resume_committed`),Qt=K(`workflow.hook.wake_published`),$t=K(`workflow.hook.resilient_resume_materialized`),en=K(`workflow.resume_setup_source`),tn=K(`workflow.step.resilient_dispatch_recovered`),nn=K(`workflow.step.resilient_dispatch_materialized`),rn=K(`workflow.step.dispatch_prologue`),an=K(`workflow.resume.total_ms`),on=K(`workflow.resume.phase.producer_prep_ms`),sn=K(`workflow.resume.phase.queue_delivery_ms`),cn=K(`workflow.resume.phase.resume_setup_ms`),ln=K(`workflow.resume.phase.replay_ms`),un=K(`workflow.resume.phase.step_dispatch_ms`),dn=K(`workflow.resume.phase.step_claim_ms`),fn=K(`workflow.resume.phase.step_prepare_ms`),pn=K(`workflow.resume.trigger`),mn=K(`workflow.resume.strategy`),hn=K(`workflow.resume.setup_source`),gn=K(`workflow.resume.step_execution`),_n=K(`workflow.suspension.state`),vn=K(`workflow.suspension.hook_count`),yn=K(`workflow.suspension.step_count`),bn=K(`workflow.suspension.wait_count`),xn=K(`http.request.method`),Sn=K(`http.route`),Cn=K(`http.response.status_code`),wn=K(`error.type`),Tn=K(`workflow.events.pages_loaded`),En=K(`workflow.queue.deserialize_time_ms`),Dn=K(`workflow.queue.execution_time_ms`),On=K(`workflow.queue.serialize_time_ms`),kn=K(`workflow.serialization.operation`),An=K(`workflow.serialization.compressed`),jn=K(`workflow.serialization.codec`),Mn=K(`workflow.serialization.uncompressed_bytes`),Nn=K(`workflow.serialization.stored_bytes`),Pn=K(`workflow.serialization.compression_ratio`),Fn=K(`workflow.serialization.guest_code_executions`),In=K(`workflow.serialization.guest_code_details`),Ln=K(`peer.service`),Rn=K(`rpc.system`),zn=K(`rpc.service`),Bn=K(`rpc.method`),Vn=K(`error.retryable`),Hn=K(`error.category`),Un=e(`@workflow/core//traceModeWarnings`,1,()=>({unrecognized:new Set}));function Wn(){let e=process.env.WORKFLOW_TRACE_MODE;return e===`continuous`?`continuous`:(e&&e!==`linked`&&!Un.unrecognized.has(e)&&(Un.unrecognized.add(e),$.warn(`Unrecognized WORKFLOW_TRACE_MODE value "${e}"; expected "linked" or "continuous". Falling back to "linked".`)),`linked`)}function q(e){return e!==void 0&&Object.keys(e).length>0}function Gn(e,t){return e===`linked`&&q(t)?Promise.resolve(t):qn()}async function Kn(e,t){if(e!==`linked`)return lr();let n=await ur(q(t)?t:void 0);return n?[n]:void 0}async function qn(){let e=await J.value;if(!e)return{};let t={};return e.propagation.inject(e.context.active(),t),t}async function Jn(e){let t=await J.value;if(t)return t.propagation.extract(t.context.active(),e)}async function Yn(e,t){if(!e)return t();let n=await J.value;if(!n)return t();let r=await Jn(e);return r?n.context.with(r,async()=>await t()):t()}const J=i(async()=>{try{return await import(`../../@opentelemetry/api/index.js`)}catch{return $.info(`OpenTelemetry not available, tracing will be disabled`),null}}),Y=i(async()=>{let e=await J.value;if(!e)return null;let t=e.trace.getTracer(`workflow`);return Qn(e,t),t}),Xn=i(async()=>{let e=await J.value;return e?e.metrics.getMeter(`workflow`).createHistogram(`workflow.step.execute.duration`,{description:`Duration of user step execution`,unit:`ms`}):null});let X=!1;function Zn(e){try{return typeof e==`object`&&e&&`message`in e&&typeof e.message==`string`?e.message:String(e)}catch{return`Unknown error`}}function Qn(e,t){let n=typeof process<`u`&&typeof process.env.DEBUG==`string`&&(process.env.DEBUG.includes(`workflow:`)||process.env.DEBUG===`*`);if(!X&&n){X=!0;try{let n=globalThis[Symbol.for(`opentelemetry.js.api.1`)],r=e.trace.getTracerProvider(),i=r.getDelegate?.()??r,a=t.startSpan(`workflow.otel.probe.core`);console.warn(`[workflow:otel-diag] core`,JSON.stringify({globalRegistrationVersion:n?.version??null,providerCtor:r?.constructor?.name??null,delegateCtor:i?.constructor?.name??null,tracerCtor:t?.constructor?.name??null,probeCtor:a?.constructor?.name??null,probeRecording:a.isRecording()})),a.end()}catch(e){console.warn(`[workflow:otel-diag] core failed:`,e instanceof Error?e.message:e)}}}async function $n(e,...t){let[n,i]=await Promise.all([Y.value,J.value]),{fn:a,opts:o}=typeof t[0]==`function`?{fn:t[0],opts:{}}:{fn:t[1],opts:t[0]};if(!a)throw Error(`Function to trace must be provided`);return!n||!i?await a():n.startActiveSpan(e,o,async e=>{try{let t=await a(e);return e.setStatus({code:i.SpanStatusCode.OK}),t}catch(t){throw r.is(t)?(e.setStatus({code:i.SpanStatusCode.OK}),ar(t,e)):e.setStatus({code:i.SpanStatusCode.ERROR,message:Zn(t)}),t}finally{e.end()}})}async function er(e){let[t,n]=await Promise.all([Y.value,J.value]);if(!t||!n)return{end(){},fail(){}};let r=t.startSpan(e),i=!1,a=e=>{i||(i=!0,r.setStatus(e),r.end())};return{end:()=>a({code:n.SpanStatusCode.OK}),fail:e=>a({code:n.SpanStatusCode.ERROR,message:Zn(e)})}}async function tr(e){let t=await J.value;return t?t.context.bind(t.context.active(),e):e}async function nr(){let e=await J.value;if(!e)return{refresh(){},run:e=>e()};let t=e.context.active(),n={getValue:e=>t.getValue(e),setValue:(e,n)=>t.setValue(e,n),deleteValue:e=>t.deleteValue(e)};return{refresh:()=>{t=e.context.active()},run:t=>e.context.with(n,t)}}async function rr(e,t,n){let r=await Y.value;r&&r.startSpan(e,{...n,startTime:t}).end()}async function ir(e,t){(await Xn.value)?.record(e,{"workflow.step.status":t})}function ar(e,t){t.setAttributes({..._n(`suspended`),...yn(e.stepCount),...vn(e.hookCount),...bn(e.waitCount)})}async function or(e){let[t,n]=await Promise.all([Jn(e),J.value]);if(t&&n)return n.trace.getSpanContext(t)}async function sr(){return await Z(e=>e.trace.getActiveSpan())}async function cr(e){return Z(t=>t.SpanKind[e])}async function Z(e){let t=await J.value;if(t)return await e(t)}function lr(){return Z(e=>{let t=e.trace.getActiveSpan()?.spanContext();if(t)return[{context:t}]})}async function ur(e){if(!e)return;let[t,n]=await Promise.all([or(e),J.value]);if(t&&n&&n.trace.isSpanContextValid(t))return{context:t}}async function dr(e,t){let n=await J.value;if(!n)return t();let r=n.propagation.createBaggage({"workflow.run_id":{value:e.workflowRunId},"workflow.name":{value:e.workflowName}}),i=n.propagation.setBaggage(n.context.active(),r);return n.context.with(i,()=>t())}function fr(e,t){if(!t)return!1;let n=!1;for(let r of t.split(`,`)){let t=r.trim();if(!t)continue;let i=t.startsWith(`-`),a=i?t.slice(1):t;RegExp(`^${a.replace(/[|\\{}()[\]^$+?.]/g,`\\$&`).replace(/\*/g,`.*`)}$`).test(e)&&(n=!i)}return n}function Q(e,t={}){let n=r=>{let i=n=>t.debugNamespace??`workflow:${e}:${n}`,a=t=>{let n=i(t);return(i,a)=>{let o=Object.keys(r).length>0,s=a&&Object.keys(a).length>0,c=o||s?{...r,...a??{}}:void 0;(t===`error`||t===`warn`)&&(t===`error`?console.error:console.warn)(Ne(`[workflow-sdk]`,i,c)),fr(n,process.env.DEBUG)&&(console.debug(`[${n}] ${i}`,c??``),sr().then(n=>{n?.addEvent(`${t}.${e}`,{message:i,...c})}).catch(()=>{}))}};return{debug:a(`debug`),info:a(`info`),warn:a(`warn`),error:a(`error`),child:e=>n({...r,...e}),forRun:(e,t,i)=>n({...r,workflowRunId:e,...t===void 0?{}:{workflowName:t},...i??{}})}};return n({})}const pr=Q(`step`),$=Q(`runtime`),mr=Q(`webhook`),hr=Q(`events`);Q(`adapter`),Q(`build`,{debugNamespace:`workflow:build`});export{un as $,Re as $t,Zt as A,I as An,Ft as At,Vt as B,E as Bn,Xe as Bt,Hn as C,V as Cn,vt as Ct,Xt as D,we as Dn,nn as Dt,gt as E,L as En,_t as Et,Cn as F,j as Fn,Ot as Ft,Ut as G,S as Gn,ut as Gt,Ln as H,me as Hn,Ge as Ht,Sn as I,k as In,Dt as It,sn as J,m as Jn,tt as Jt,On as K,te as Kn,rt as Kt,Ht as L,ve as Ln,bt as Lt,Jt as M,xe as Mn,Lt as Mt,Qt as N,P as Nn,wt as Nt,Yt as O,be as On,tn as Ot,xn as P,ye as Pn,kt as Pt,dn as Q,at as Qt,zt as R,A as Rn,Ct as Rt,Wt as S,Oe as Sn,Tt as St,wn as T,Me as Tn,xt as Tt,En as U,pe as Un,qt as Ut,Rt as V,ae as Vn,lt as Vt,Dn as W,ge as Wn,Kt as Wt,cn as X,d as Xn,Tn as Xt,ln as Y,o as Yn,Ue as Yt,hn as Z,u as Zn,We as Zt,qn as _,st as _n,yt as _t,ar as a,Ke as an,Bn as at,Yn as b,et as bn,Mt as bt,nr as c,ft as cn,jn as ct,cr as d,dt as dn,In as dt,ze as en,gn as et,Wn as f,Be as fn,Fn as ft,ir as g,it as gn,At as gt,rr as h,He as hn,Mn as ht,mr as i,qe as in,pn as it,en as j,F as jn,It as jt,$t as k,Se as kn,jt as kt,sr as l,pt as ln,An as lt,ur as m,Ve as mn,Nn as mt,$ as n,Je as nn,mn as nt,tr as o,Ze as on,zn as ot,q as p,Gt as pn,kn as pt,on as q,_ as qn,nt as qt,pr as r,Ye as rn,an as rt,Kn as s,mt as sn,Rn as st,hr as t,ct as tn,fn as tt,Gn as u,ht as un,Pn as ut,er as v,$e as vn,rn as vt,Vn as w,De as wn,Et as wt,dr as x,ot as xn,Pt as xt,$n as y,Qe as yn,Nt as yt,Bt as z,D as zn,St as zt};
@@ -1 +0,0 @@
1
- import{r as e}from"./rolldown-runtime-B_knIduE.js";import{_ as t,a as n,ot as r,ut as i,x as a,z as o}from"./dist-BQSf8Hax.js";import{$t as s,A as c,D as l,Jn as u,Kn as d,M as f,N as p,O as m,On as h,Pn as g,Wn as ee,fn as _,m as te,n as v,y,zn as b}from"./logger-BCEj9caG.js";import{A as x,f as S,j as C,k as w,n as T,o as E,s as D}from"./dist-BfMqXLK3.js";import{d as ne,dt as O,k}from"./serialization-CJ265vSe.js";import{s as A}from"./helpers-CNMO7zB1.js";import{n as j,r as re,t as ie}from"./wait-until-Bo2U6ON9.js";import{z as M}from"#compiled/zod/index.js";const N=[25,100];function P(e,t){if(t?.(e))return!1;let n=e??{},r=n.status??n.statusCode;if(typeof r==`number`)return r>=500||r===408||r===429;let i=e?.name;return i!==`BadRequestError`&&i!==`UnauthorizedError`&&i!==`ForbiddenError`}async function F(e,t){let n;for(let r=0;r<=N.length;r++)try{await e();return}catch(e){if(n=e,!P(e,t))break;let i=N[r];i!==void 0&&await new Promise(e=>setTimeout(e,i))}throw D.is(n)?new x(`The hook resume was committed, but its workflow wake could not be published`,{cause:n}):n}async function I(e,t,n){let r=n.claimedFrom;if(!r||r.runId===t)return`skipped`;if(r.workflowName===void 0)return v.warn(`Force-claimed a hook from a run whose workflow name is unknown; not waking it`,{workflowRunId:t,victimRunId:r.runId}),`skipped`;try{return await F(()=>e.queue(A(r.workflowName),{runId:r.runId},{...r.deploymentId!==void 0&&{deploymentId:r.deploymentId},specVersion:r.runSpecVersion??1,idempotencyKey:`hook-force-claim-${n.hookId}`}),e.isDeploymentUnavailableError?.bind(e)),`published`}catch(e){return v.error(`Force-claimed a hook token but could not wake the run it was taken from; it will read the disposal on its next invocation`,{workflowRunId:t,victimRunId:r.runId,error:e instanceof Error?e.message:String(e)}),`failed`}}function L(e){if(e)for(let t=e.length-1;t>=0;t--){let n=e[t];if(!(n.eventType===`hook_received`||n.eventType===`noop`||n.eventType===`hook_disposed`&&n.eventData?.forceClaimedBy!==void 0))return n.eventType===`hook_created`&&n.eventData.forceClaimedFrom!==void 0?n:void 0}}async function R(e,t,n){let r=L(n);if(!r)return;let i=r.eventData.forceClaimedFrom,a=await I(e,t,{hookId:r.correlationId,claimedFrom:i});a!==`skipped`&&v.info(`Republished the wake of a force-claimed hook victim`,{workflowRunId:t,hookId:r.correlationId,victimRunId:i.runId,victimWake:a})}const z=M.object({type:M.literal(`hook_resume`),version:M.literal(1),hookId:M.string(),token:M.string(),payload:M.instanceof(Uint8Array)}),ae=M.discriminatedUnion(`status`,[M.object({status:M.literal(`accepted`)}),M.object({status:M.literal(`rejected`),code:M.enum([`HOOK_NOT_FOUND`,`INVALID_INPUT`])})]);async function B(e,t,n,i){let a=z.safeParse(i);if(!a.success||!n)throw new C(`Invalid invocation input`,{status:400,code:`INVALID_INPUT`});let s=a.data,c=Buffer.from(await crypto.subtle.digest(`SHA-256`,s.payload)).toString(`hex`);try{let n=await e.hooks.get(s.hookId);if(n.runId!==t||n.token!==s.token)throw new D(s.token);let r=await e.runs.get(t,{resolveData:`none`});if(o(r.status))throw new D(s.token)}catch(i){if(!V(i))throw i;let a=await e.runs.get(t,{resolveData:`none`});if(a.expiredAt||o(a.status)&&r(a.attributes).mode===`none`)throw new C(`Invocation data has expired under the run retention policy`,{status:410,code:`INVOCATION_DATA_EXPIRED`});if(!e.capabilities?.hookResumeDedup||!await H(e,t,s.hookId,n))throw i}return await e.events.create(t,{eventType:`hook_received`,correlationId:s.hookId,specVersion:8,eventData:{token:s.token,payload:s.payload}},{...e.capabilities?.hookResumeDedup?{resumeId:n,resumePayloadDigest:c}:{}}),{status:`accepted`}}function V(e){return D.is(e)||S.is(e)||w.is(e)}async function H(e,t,n,r){let i=null;do{let a=await e.events.listByCorrelationId({runId:t,correlationId:n,resolveData:`none`,pagination:{limit:100,...i?{cursor:i}:{}}});if(a.data.some(e=>e.eventType===`hook_received`&&e.resumeId===r))return!0;i=a.hasMore?a.cursor:null}while(i);return!1}var U=class{revision=0;listeners=new Set;notify(){this.revision++;for(let e of this.listeners)e()}async waitForActivity(e,t=100){return this.revision!==e||(await new Promise(e=>{let n=()=>{clearTimeout(r),this.listeners.delete(n),e()},r=setTimeout(n,t);this.listeners.add(n)}),this.revision!==e)}};function W(e){return n=>{let r=new Map;return async(i,o)=>{if(t.safeParse(i).success)return n(i,o);let s=a.safeParse(i);if(!e.capabilities?.invoke||!s.success||s.data.stepId)return n(i,o);let c=s.data,l=r.get(c.runId);l||(l={activity:new U,admission:Promise.resolve(),references:0},r.set(c.runId,l));let u=l;u.references++;try{if(c.invoke){if(!c.requestId)throw new x(`Invocation requestId is required`);let t=c.requestId,n=u.admission.then(()=>y(`workflow.invoke.receive`,async n=>{n?.setAttributes({..._(c.runId),"workflow.invocation.id":t});let r=await B(e,c.runId,t,c.input);return r.status===`accepted`&&u.activity.notify(),r}));return u.admission=n.catch(()=>{}),await n}if(u.execution)return await u.execution;let t=n(i,o,u.activity);u.execution=t;try{return await t}finally{u.execution===t&&(u.execution=void 0)}}finally{u.references--,u.references===0&&r.get(c.runId)===u&&r.delete(c.runId)}}}}var G=e({getHookByToken:()=>X,resumeHook:()=>Z,resumeWebhook:()=>de});const K=i();async function oe(e){let t=await crypto.subtle.digest(`SHA-256`,e),n=new Uint8Array(t),r=``;for(let e of n)r+=e.toString(16).padStart(2,`0`);return r}function se(e){let t=e.executionContext?.workflowCoreVersion,n=e.executionContext?.traceCarrier,r=e.executionContext?.hookResumeInputVersion;return{deploymentId:e.deploymentId,workflowName:e.workflowName,runSpecVersion:e.specVersion,workflowCoreVersion:typeof t==`string`?t:void 0,traceCarrier:n&&typeof n==`object`?n:void 0,encryptionPublicKey:e.encryptionPublicKey,hookResumeInputVersion:typeof r==`number`?r:void 0}}async function q(e){if(e.resumeContext)return{resumeContext:e.resumeContext,source:`hook`};let t=await(await d()).runs.get(e.runId);return{resumeContext:se(t),source:`run_fallback`,run:t}}async function ce(e,t){let n=await d(),r=t.run?await n.getEncryptionKeyForRun?.(t.run):await n.getEncryptionKeyForRun?.(e.runId,{deploymentId:t.resumeContext.deploymentId});return r?await u(r):void 0}function le(e){let t=Object.getOwnPropertyDescriptor(e,`metadata`);return t!==void 0&&typeof t.get==`function`}function J(e){let t=e.metadata,n,r,i=async()=>{let n=await d(),i=await q(e),a=i.run?await n.getEncryptionKeyForRun?.(i.run):await n.getEncryptionKeyForRun?.(e.runId,{deploymentId:i.resumeContext.deploymentId});return r=a?await h(a):void 0,await k(t,e.runId,r)},a=e;return Object.defineProperty(a,"metadata",{get:()=>n??=t===void 0?Promise.resolve(void 0):i(),enumerable:!1,configurable:!0}),{hook:a,metadataEncryptionKey:()=>r}}function Y(e){return le(e)?e:J(e).hook}async function X(e){return J(await(await d()).hooks.getByToken(e)).hook}async function Z(e,t,n){return $(e,t,n,!1,Date.now())}const Q=new WeakMap;async function $(e,t,n,r,i,a=!1){return await j(()=>y(`hook.resume`,async o=>{let s=await d(),c=typeof e==`string`?e:e.token,l=e,u=r,f=n,p=0,m=0,h=K(),g=e=>{if(t instanceof Request&&t.body!==null&&t.bodyUsed)throw o?.setAttributes({"workflow.hook.resume_redirect_unresendable":!0}),new x(`Hook token "${c}" changed owner while this webhook request was being delivered; a request body can be sent only once and it was not delivered anywhere — retry the request, which will reach the token's new owner`,{cause:e})};for(;;)try{return await ue(s,o,l,t,f,u,i,h,a)}catch(e){if(typeof e==`object`&&e&&Q.get(e)===`not-webhook`)throw e;if(p>=3)throw E.is(e)?(o?.setAttributes({"workflow.hook.resume_redirects_exhausted":!0}),new x(`Hook token "${c}" changed owner ${p} times while this resume was in flight; nothing was delivered — retry the resume`,{cause:e})):e;if(E.is(e)){g(e),p++,o?.setAttributes({"workflow.hook.resume_redirects":p,"workflow.hook.resume_redirect_to_run":e.claimedByRunId}),l=c,u=!0,f=void 0,m=0;continue}if(D.is(e)&&p>0&&typeof l==`string`&&m<5){g(e),m++,await new Promise(e=>setTimeout(e,50));continue}if(D.is(e)&&Q.get(e)!==`lookup`){let t=typeof l==`string`?void 0:l.hookId,n;try{n=await s.hooks.getByToken(c)}catch(e){D.is(e)||v.warn(`Hook resume: re-resolving the token after a not-found failed; surfacing the original error`,{token:c,error:e instanceof Error?e.message:String(e)})}if(n?.claimedFrom!==void 0&&n.hookId!==t&&(t===void 0||n.claimedFrom.hookId===t)&&!(a&&n.isWebhook===!1)){g(e),p++,o?.setAttributes({"workflow.hook.resume_redirects":p,"workflow.hook.resume_redirect_to_run":n.runId}),l=n,u=!0,f=void 0;continue}}throw e}}))}async function ue(e,t,r,i,a,u,d,h,y){try{let l=typeof r==`string`,C;if(l)try{C=await e.hooks.getByToken(r)}catch(e){throw D.is(e)&&Q.set(e,`lookup`),e}else C=r;if(y&&C.isWebhook===!1){let e=new D(C.token);throw Q.set(e,`not-webhook`),e}let w=l||u,T=await q(C),{resumeContext:O}=T;if(t?.setAttributes({...f(C.token),...m(C.hookId),..._(C.runId),"workflow.hook.resume_context_source":T.source}),T.run&&o(T.run.status))throw new D(C.token);let k=re(O.workflowCoreVersion),j,M=a?void 0:ee(O.encryptionPublicKey);if(M)j=g(M);else{let e=a??await ce(C,T);k.supportedFormats.has(b.ENCRYPTED)||(e=void 0),j=e}let N=(O.runSpecVersion??0)>=5&&k.supportedFormats.has(b.GZIP),P=[],I=[],L=n(C.specVersion),R=await ne(i,C.runId,j,P,globalThis,L,k.framedByteStreams,N,void 0,I);if(await Promise.all(P.map(e=>e.catch(e=>{if(e!==void 0)throw e}))),ie(Promise.all(I),e=>{e!==void 0&&v.warn(`Background readback of hook payload failed`,{workflowRunId:C.runId,hookId:C.hookId,error:e instanceof Error?e.message:String(e)})}),e.capabilities?.invoke===!0&&!L&&R instanceof Uint8Array){if(!e.invoke)throw new x(`World advertises invoke without implementing it`);t?.setAttributes({"workflow.hook.resume_strategy":`invoke`});let n=ae.parse(await e.invoke(C.runId,{type:`hook_resume`,version:1,hookId:C.hookId,token:C.token,payload:R},{idempotencyKey:h}));if(n.status===`rejected`)throw n.code===`HOOK_NOT_FOUND`?new D(C.token):new x(`Executor rejected the hook invocation input`);return t?.setAttributes(c(!0)),Y(C)}t?.setAttributes({...s(O.workflowName)});let z=await te(O.traceCarrier);z&&t?.addLink?.(z);let B=A(O.workflowName),V={deploymentId:O.deploymentId,specVersion:O.runSpecVersion??1},H=((w?C.resumeCapabilities?.hookResumeDedupVersion??0:0)>=1||e.capabilities?.hookResumeDedup===!0)&&!L&&R instanceof Uint8Array;t?.setAttributes({"workflow.hook.resume_strategy":`sequential`});let U=H?h:void 0,W=H?await oe(R):void 0;U&&t?.setAttributes({"workflow.hook.resume_id":U});let G=e=>D.is(e)||S.is(e);try{await e.events.create(C.runId,{eventType:`hook_received`,specVersion:8,correlationId:C.hookId,eventData:{...L?{}:{token:C.token},payload:R}},{v1Compat:L,...U&&W?{resumeId:U,resumePayloadDigest:W}:{}})}catch(e){throw E.is(e)?e:G(e)?new D(C.token):e}t?.setAttributes(c(!0));let K=Date.now();return await F(()=>e.queue(B,{runId:C.runId,traceCarrier:O.traceCarrier??void 0,hookResumeTiming:{resumeRequestedAtMs:d,queuePublishRequestedAtMs:K,strategy:`sequential`}},{...V,...U?{idempotencyKey:`hook-${U}`}:{}}),e.isDeploymentUnavailableError?.bind(e)),t?.setAttributes(p(!0)),Y(C)}catch(e){throw t?.setAttributes({...f(typeof r==`string`?r:r.token),...l(!1)}),e}}async function de(e,t){let n=Date.now(),{hook:r,metadataEncryptionKey:i}=J(await(await d()).hooks.getByToken(e));if(r.isWebhook===!1)throw new D(e);let a=await r.metadata,o,s;if(a&&typeof a==`object`&&`respondWith`in a){if(a.respondWith===`manual`){let{readable:e,writable:n}=new TransformStream;s=e,t[O]=n}else if(a.respondWith instanceof Response)o=a.respondWith;else throw new x(`Invalid \`respondWith\` value: ${a.respondWith}`,{slug:T.WEBHOOK_INVALID_RESPOND_WITH_VALUE})}else o=new Response(null,{status:202});if(await $(r,t,i(),!0,n,!0),s){let e=s.getReader(),t=await e.read();t.value&&(o=t.value),e.cancel()}if(!o)throw new x(`Workflow run did not send a response`,{slug:T.WEBHOOK_RESPONSE_NOT_SENT});return o}export{W as a,G as i,Z as n,I as o,de as r,R as s,X as t};
@@ -1 +0,0 @@
1
- import{a as e,ft as t,i as n,it as r,mt as i,nt as a,rt as o,ut as s}from"./dist-BQSf8Hax.js";import{$t as c,Bt as l,Gn as u,Jn as d,Kn as f,On as p,Pn as ee,S as te,Vn as ne,Wn as re,Zn as m,_ as ie,en as ae,fn as oe,mn as se,n as h,qn as ce,y as g,zn as le}from"./logger-BCEj9caG.js";import{A as _,C as v,D as y,E as b,M as x,O as S,T as C,_ as w,c as T,f as E,g as D,j as O,k,m as A,r as j,t as M,u as N,y as P}from"./dist-BfMqXLK3.js";import{$ as F,C as I,G as L,L as R,M as z,N as B,O as V,Q as H,S as U,W,f as ue,o as de}from"./serialization-CJ265vSe.js";import{D as fe,l as pe,s as G}from"./helpers-CNMO7zB1.js";import{t as me}from"./attribute-changes-DzJovO_f.js";import{n as he,r as ge,t as _e}from"./wait-until-Bo2U6ON9.js";const ve=new Set([`PARSE_ERROR`,`SCHEMA_VALIDATION`,x.WORLD_CONTRACT_ERROR]),ye=new Set([`TRANSPORT`,`TIMEOUT`,x.STREAM_ERROR]),be=[_.is,D.is,C.is,A.is];function K(e){if(!O.is(e)||e.status!==void 0)return!1;let t=`cause`in e?e.cause:void 0;return e.code!==void 0&&ve.has(e.code)||e.message.startsWith(`Failed to parse response body for `)||e.message.startsWith(`Schema validation failed for `)||typeof t==`object`&&!!t&&`name`in t&&t.name===`ZodError`}function q(e){return P.is(e)?!0:w.is(e)?e.status===void 0||e.status>=500:O.is(e)?e.status!==void 0&&e.status>=500||e.code!==void 0&&ye.has(e.code):!1}function xe(e){if(N.is(e))return x.REPLAY_DIVERGENCE;if(M.is(e))return x.CORRUPTED_EVENT_LOG;if(T.is(e))return x.MAX_EVENTS_EXCEEDED;if(v.is(e))return x.DEPLOYMENT_MISMATCH;if(w.is(e))return x.STREAM_ERROR;if(K(e)||q(e))return x.WORLD_CONTRACT_ERROR;for(let t of be)if(t(e))return x.RUNTIME_ERROR;return x.USER_ERROR}const J=[`node`,`quickjs`];function Y(e=process.env){let t=e.WORKFLOW_VM;if(t!==void 0&&t!==``){if(J.includes(t))return t;throw new _(`Invalid WORKFLOW_VM value: "${t}". Expected one of: ${J.join(`, `)}.`)}}function Se(e){let t=e.executionContext?.workflowVm;if(t!==void 0){if(!J.includes(t))throw new _(`Invalid executionContext.workflowVm value: "${t}". Expected one of: ${J.join(`, `)}.`);return t===`quickjs`}return Y()===`quickjs`}const Ce=s();function we(){let e=L.getStore(),t=e?.workflowMetadata?.workflowRunId;if(t)return{[r]:e.rootRunId??t,[a]:t}}const X=i(`@workflow/core//latestNoOpWarning`,1,()=>({warned:!1}));async function Z(t,r,i){"use step";return await he(()=>{let a=t?.workflowId;if(!a)throw new _(`'start' received an invalid workflow function. Ensure the Workflow SDK is configured correctly and the function includes a 'use workflow' directive.`,{slug:`start-invalid-workflow-function`});let s=`workflow.start ${m(a)}`;return g(s,async t=>{t?.setAttributes({...c(a),...ae(`start`)});let s=[],p=i??{};Array.isArray(r)?s=r:typeof r==`object`&&(p=r),t?.setAttributes({...l(s.length)});let m=p.world??await f();ce(m);let g=await m.getDeploymentId(),v=p.deploymentId??g;v===`latest`&&(m.resolveLatestDeploymentId?v=await m.resolveLatestDeploymentId():(X.warned||(X.warned=!0,h.warn(`deploymentId: 'latest' has no effect in this world and was ignored. It is only supported by worlds with atomic deployments, such as Vercel. The run will target the current deployment.`,{currentDeploymentId:g})),v=g));let y=`wrun_${m.createRunId?m.createRunId(p):Ce()}`,b,x,S,C;if(v===g)b=!0,x=!0,S=1;else if(typeof m.streams?.get!=`function`)b=!1,x=!1,S=void 0;else{let e=await pe(m,{deploymentId:v,runId:y,timeout:2e3,namespace:p.namespace}).catch(()=>void 0);C=e?.encryptionPublicKey;let t=ge(e?.workflowCoreVersion);b=t.framedByteStreams,x=t.supportedFormats.has(le.GZIP),S=e?.hookResumeInputVersion}let w=[],T=await ie(),E=p.specVersion??m.specVersion,D=e(E),O=p.allowReservedAttributes===!0,k;if(p.attributes&&Object.keys(p.attributes).length>0){if(E<4)throw new _(`Initial workflow attributes require a World that supports spec version 4 or later.`);for(let[e,t]of Object.entries(p.attributes))if(typeof t!=`string`)throw new _(`Initial workflow attribute ${JSON.stringify(e)} must be a string value.`);let e=me(p.attributes,{allowReservedAttributes:O});k=Object.fromEntries(e.map(({key:e,value:t})=>[e,t]))}let A;if(p.experimental_retention!==void 0&&p.experimental_retention!=="default"){if(p.experimental_retention!==0)throw new _(`start({ experimental_retention }) must be 0 or 'default'; received ${JSON.stringify(p.experimental_retention)}.`);if(E<4)throw new _(`start({ experimental_retention }) requires a World that supports spec version 4 or later.`);A={[o]:`0`}}let M=E>=4?we():void 0,N=M||A?{...M,...k,...A}:k,P=N?{attributes:N,...O||M!=null||A!=null?{allowReservedAttributes:!0}:{}}:{};if(p.replayedFromRunId!==void 0&&!n.safeParse(p.replayedFromRunId).success)throw new _(`replayedFromRunId must be a run ID (wrun_<ulid>); received ${JSON.stringify(String(p.replayedFromRunId).slice(0,64))}.`);let F=re(C),I,L;if(F)I=ee(F),L=C;else{let e=await m.getEncryptionKeyForRun?.(y,{...p,deploymentId:v});I=e?await d(e):void 0,L=e?ne((await u(e)).publicKey):void 0}let R=await ue(s,y,I,w,globalThis,D,b,x&&E>=5),z=m.getEnvironment?.(),B=Y(),V={traceCarrier:T,workflowCoreVersion:fe,features:{encryption:!!I},...S===void 0?{}:{hookResumeInputVersion:S},...B?{workflowVm:B}:{},...p.replayedFromRunId?{replayedFromRunId:p.replayedFromRunId}:{}},[H,U]=await Promise.allSettled([m.events.create(y,{eventType:`run_created`,specVersion:E,eventData:{deploymentId:v,workflowName:a,input:R,executionContext:V,...L?{encryptionPublicKey:L}:{},...P}},{v1Compat:D}),m.queue(G(a,p.namespace),{runId:y,traceCarrier:T,...E>=3?{runInput:{input:R,deploymentId:v,workflowName:a,specVersion:E,executionContext:V,...L?{encryptionPublicKey:L}:{},...z===void 0?{}:{environment:z},...P}}:{}},{deploymentId:v,specVersion:E,...p.region===void 0?{}:{region:p.region}})]);if(U.status===`rejected`)throw U.reason;let W=!1;if(H.status===`rejected`){let e=H.reason;if(!j.is(e)){if(q(e))W=!0,h.warn(`Run creation event failed, but the run was accepted via the queue. The run_created event will be re-tried async by the runtime.`,{workflowRunId:y,error:e.message});else throw e}}else{let e=H.value;if(!D&&e.run.runId!==y)throw new _(`Server returned different runId than requested: expected ${y}, got ${e.run.runId}`)}return _e(Promise.all(w),e=>{h.warn(`Background flush of workflow argument streams failed`,{workflowRunId:y,error:e instanceof Error?e.message:String(e)})}),t?.setAttributes({...oe(y),...te(v),...H.status===`fulfilled`?se(H.value.run.status):{}}),new $(y,{resilientStart:W})})})}const Te=e=>Array.isArray(e)?e:[e];async function Ee(e,t,n={}){try{let r=await e.runs.get(t,{resolveData:`all`}),i=await e.getEncryptionKeyForRun?.(r),a=i?await p(i):void 0,o=Te(await z(r.input,t,a,globalThis)),s=n.specVersion??r.specVersion??1,c=n.deploymentId??r.deploymentId;return(await Z({workflowId:r.workflowName},o,{deploymentId:c,world:e,specVersion:s,replayedFromRunId:t,namespace:n.namespace})).runId}catch(e){throw Error(`Failed to recreate run from ${t}: ${e instanceof Error?e.message:String(e)}`,{cause:e})}}async function De(t,n,r){try{let i=(await t.runs.get(n,{resolveData:`none`})).specVersion??1,a=e(i),o={eventType:`run_cancelled`,specVersion:i,...r?.cancelReason===void 0?{}:{eventData:{cancelReason:r.cancelReason}}};await t.events.create(n,o,{v1Compat:a})}catch(e){throw Error(`Failed to cancel run ${n}: ${e instanceof Error?e.message:String(e)}`,{cause:e})}}async function Oe(e,t,n){if(t.length===0)throw Error(`cancelRuns requires at least one run ID.`);if(t.length>500)throw Error(`cancelRuns accepts at most 500 run IDs (received ${t.length}).`);if(new Set(t).size!==t.length)throw Error(`cancelRuns requires unique run IDs (duplicates found).`);if(e.runs.cancelMany)return e.runs.cancelMany({runIds:t,...n?.cancelReason===void 0?{}:{cancelReason:n.cancelReason}});let r=Array(t.length),i=0,a=async()=>{for(;;){let a=i++;if(a>=t.length)return;let o=t[a];try{await De(e,o,n),r[a]={runId:o,outcome:`cancelled`}}catch{r[a]={runId:o,outcome:`failed`,code:`internal_error`,retryable:!0}}}},o=Math.min(20,t.length);await Promise.all(Array.from({length:o},()=>a()));let s={requested:t.length,cancelled:0,alreadyCancelled:0,notCancellable:0,notFound:0,failed:0};for(let e of r)switch(e.outcome){case`cancelled`:s.cancelled++;break;case`already_cancelled`:s.alreadyCancelled++;break;case`not_cancellable`:s.notCancellable++;break;case`not_found`:s.notFound++;break;case`failed`:s.failed++}return{summary:s,results:r}}async function ke(e,t,n){try{let r=await e.runs.get(t,{resolveData:`none`});await e.queue(G(r.workflowName,n?.namespace),{runId:t},{deploymentId:r.deploymentId,specVersion:r.specVersion??1})}catch(e){throw Error(`Failed to re-enqueue run ${t}: ${e instanceof Error?e.message:String(e)}`,{cause:e})}}async function Ae(t,n,r){try{let i=await t.runs.get(n,{resolveData:`none`}),a=e(i.specVersion),o=[],s=null;do{let e=await t.events.list({runId:n,pagination:{sortOrder:`asc`,...s?{cursor:s}:{}},resolveData:`none`});o.push(...e.data),s=e.hasMore?e.cursor:null}while(s);let c=o.filter(e=>e.eventType===`wait_created`),l=new Set(o.filter(e=>e.eventType===`wait_completed`).map(e=>e.correlationId)),u=c.filter(e=>!l.has(e.correlationId));if(r?.correlationIds&&r.correlationIds.length>0){let e=new Set(r.correlationIds);u=u.filter(t=>t.correlationId&&e.has(t.correlationId))}let d=[],f=0;for(let e of u){if(!e.correlationId)continue;let r=a?{eventType:`wait_completed`,correlationId:e.correlationId}:{eventType:`wait_completed`,correlationId:e.correlationId,specVersion:i.specVersion,eventData:{resumeAt:e.eventData.resumeAt}};try{await t.events.create(n,r,{v1Compat:a}),f++}catch(e){j.is(e)?f++:d.push(e instanceof Error?e:Error(String(e)))}}if(f>0&&await t.queue(G(i.workflowName,r?.namespace),{runId:n},{deploymentId:i.deploymentId,specVersion:i.specVersion??1}),d.length>0)throw AggregateError(d,`Failed to complete ${d.length}/${u.length} pending wait(s) for run ${n}`);return{stoppedCount:f}}catch(e){throw e instanceof AggregateError?e:Error(`Failed to wake up run ${n}: ${e instanceof Error?e.message:String(e)}`,{cause:e})}}async function je(e,t,n,r){try{return await e.streams.get(t,n,r?.startIndex)}catch(e){throw w.is(e)?e:new w(`Failed to read stream ${n}: ${e instanceof Error?e.message:String(e)}`,{cause:e})}}async function Me(e,t){try{return await e.streams.list(t)}catch(e){throw w.is(e)?e:new w(`Failed to list streams for run ${t}: ${e instanceof Error?e.message:String(e)}`,{cause:e})}}const Ne=new Set([`completed`,`failed`]),Q=[1e3,3e3,6e3];function Pe(){return t(`WORKFLOW_RETURN_VALUE_POLL_INTERVAL_MS`,1e3,{integer:!0,min:1})}function Fe(){return t(`WORKFLOW_RETURN_VALUE_WAIT_MS`,5e4,{integer:!0,min:1})}function Ie(){return t(`WORKFLOW_RETURN_VALUE_MAX_LONG_POLLS`,10,{integer:!0,min:1})}function Le(){let e=process.env.WORKFLOW_RETURN_VALUE_LONG_POLL;return e===void 0||e===``||e!==`0`&&e.toLowerCase()!==`false`}var $=class e{static[F](e){return{runId:e.runId,resilientStart:e.#r}}static[H](t){return new e(t.runId,{resilientStart:t.resilientStart})}runId;#e;get#t(){return this.#e||=f(),this.#e}#n=null;#r=!1;constructor(e,t){this.runId=e,this.#r=t?.resilientStart??!1}#i(e){return this.#n||=(async()=>{let t=await this.#t,n=e??await t.runs.get(this.runId),r=await t.getEncryptionKeyForRun?.(n);return r?await p(r):void 0})(),this.#n}#a(){return()=>this.#i()}async wakeUp(e){"use step";return Ae(await this.#t,this.runId,e)}async cancel(e){"use step";await(await this.#t).events.create(this.runId,{eventType:`run_cancelled`,specVersion:8,...e?.cancelReason===void 0?{}:{eventData:{cancelReason:e.cancelReason}}})}get exists(){"use step";return this.#t.then(e=>e.runs.get(this.runId,{resolveData:`none`}).then(()=>!0).catch(e=>{if(k.is(e))return!1;throw e}))}get status(){"use step";return this.#t.then(e=>e.runs.get(this.runId,{resolveData:`none`}).then(e=>e.status))}get returnValue(){"use step";return this.#c()}get workflowName(){"use step";return this.#t.then(e=>e.runs.get(this.runId,{resolveData:`none`}).then(e=>e.workflowName))}get createdAt(){"use step";return this.#t.then(e=>e.runs.get(this.runId,{resolveData:`none`}).then(e=>e.createdAt))}get startedAt(){"use step";return this.#t.then(e=>e.runs.get(this.runId,{resolveData:`none`}).then(e=>e.startedAt))}get completedAt(){"use step";return this.#t.then(e=>e.runs.get(this.runId,{resolveData:`none`}).then(e=>e.completedAt))}get readable(){return this.getReadable()}getReadable(e={}){"use step";let{ops:t=[],global:n=globalThis,startIndex:r,namespace:i}=e,a=W(this.runId,i),o=this.#a(),s=I(n,t,this.runId,a,r,o),c=this.#t,l=this.runId;return Object.assign(s,{getTailIndex:async()=>(await(await c).streams.getInfo(l,a)).tailIndex})}get writable(){return this.getWritable()}getWritable(e={}){"use step";let{ops:t=[],global:n=globalThis,namespace:r}=e,i=W(this.runId,r),a,o,s=()=>(a??=this.#o().then(async e=>{let t={key:await U(this.runId,e.deploymentId,e.encryptionPublicKey),deploymentId:e.deploymentId,encryptionPublicKey:e.encryptionPublicKey};return R(o,t),t}),a);return o=de({global:n,ops:t,runId:this.runId,name:i,key:()=>s().then(({key:e})=>e)}),o}async#o(){let e=await this.#t,t=this.#r?Q.length:0,n=0;for(;;)try{return await e.runs.get(this.runId,{resolveData:`none`})}catch(e){if(!k.is(e)||n>=t)throw e;let r=Q[n];n++,await new Promise(e=>setTimeout(e,r))}}async#s(e){let t=e.expiredAt;if(t!=null&&t<=new Date)throw new E(`Run "${this.runId}" ${e.status===`completed`?`completed`:`is ${e.status}`}, but its data expired at ${t.toISOString()} and is no longer readable.`,this.runId,e.status,t);if(e.status===`completed`){let t=await this.#i(e);return await B(e.output,this.runId,t)}if(e.status===`cancelled`)throw new b(this.runId);if(e.status===`failed`){let t=await this.#i(e),n;try{n=await V(e.error,this.runId,t)}catch{n=Error(`Failed to hydrate workflow run error`)}throw new y(this.runId,n,{errorCode:e.errorCode})}throw new S(this.runId,e.status)}async#c(){let e=await this.#t,t=0,n=this.#r?Q.length:0,r=Le()?e.runs.waitForTerminalStatus?.bind(e.runs):void 0,i=0,a=Ie();for(;;){let o=Date.now();try{let t=r&&i<a;t&&i++;let n=t?await r(this.runId,{timeoutMs:Fe(),resolveData:`none`}):await e.runs.get(this.runId,{resolveData:`none`});if(n.status===`cancelled`)throw new b(this.runId);if(Ne.has(n.status)){let t=await e.runs.get(this.runId,{resolveData:`all`});return await this.#s(t)}throw new S(this.runId,n.status)}catch(e){if(S.is(e)){let e=Pe()-(Date.now()-o);e>0&&await new Promise(t=>setTimeout(t,e));continue}if(k.is(e)&&t<n){let e=Q[t];t++,await new Promise(t=>setTimeout(t,e));continue}throw e}}}};function Re(e){return new $(e)}export{Me as a,ke as c,Se as d,xe as f,Oe as i,Ae as l,K as m,Re as n,je as o,q as p,De as r,Ee as s,$ as t,Z as u};
@@ -1,3 +0,0 @@
1
- import{Q as e,Y as t,ft as n,mt as r,ut as i}from"./dist-BQSf8Hax.js";import{An as a,Dn as o,En as s,Fn as c,Hn as l,In as u,Jn as d,Kn as f,Mn as p,Pn as m,Rn as h,Un as g,Vn as _,Wn as ee,ct as te,d as v,dt as ne,ft as re,h as y,ht as ie,jn as ae,kn as oe,l as se,lt as ce,mt as le,n as b,pt as ue,t as x,ut as de,zn as S}from"./logger-BCEj9caG.js";import{A as C,F as fe,_ as pe,a as me,d as he,h as w,i as ge,m as _e,o as ve,u as ye,v as be}from"./dist-BfMqXLK3.js";import{i as xe,r as Se}from"./global-BQnKzRXo.js";import{awaitEarlierDeliveries as Ce,getStepFunction as we,registerDeliveryBarrier as Te}from"../../@workflow/core/private.js";import{types as T}from"node:util";import{AsyncLocalStorage as Ee}from"node:async_hooks";const De=2**32-1,Oe=De-1;var E=class extends Error{constructor(e,t,n,r){super(e),this.name=`DevalueError`,this.path=t.join(``),this.value=n,this.root=r}};const ke=Object.getOwnPropertyNames(Object.prototype).sort().join(`\0`);function Ae(e){let t=Object.getPrototypeOf(e);return t===Object.prototype||t===null||Object.getPrototypeOf(t)===null||Object.getOwnPropertyNames(t).sort().join(`\0`)===ke}function je(e){return Object.prototype.toString.call(e).slice(8,-1)}function Me(e){switch(e){case`"`:return`\\"`;case`<`:return`\\u003C`;case`\\`:return`\\\\`;case`
2
- `:return`\\n`;case`\r`:return`\\r`;case` `:return`\\t`;case`\b`:return`\\b`;case`\f`:return`\\f`;case`\u2028`:return`\\u2028`;case`\u2029`:return`\\u2029`;default:return e<` `?`\\u${e.charCodeAt(0).toString(16).padStart(4,`0`)}`:``}}function D(e){let t=``,n=0,r=e.length;for(let i=0;i<r;i+=1){let r=e[i],a=Me(r);a&&(t+=e.slice(n,i)+a,n=i+1)}return`"${n===0?e:t+e.slice(n)}"`}function Ne(e){return Object.getOwnPropertySymbols(e).filter(t=>Object.getOwnPropertyDescriptor(e,t).enumerable)}const Pe=/^[a-zA-Z_$][a-zA-Z_$0-9]*$/;function Fe(e){return Pe.test(e)?`.`+e:`[`+JSON.stringify(e)+`]`}function Ie(e){return!(!Number.isInteger(e)||e<0||e>Oe)}function Le(e){return!(!Number.isInteger(e)||e<0||e>De)}function Re(e){if(e.length===0||e.length>1&&e.charCodeAt(0)===48)return!1;for(let t=0;t<e.length;t++){let n=e.charCodeAt(t);if(n<48||n>57)return!1}return Ie(+e)}function ze(e){for(var t=e.length-1;t>=0&&!Re(e[t]);t--);return t+1}function Be(e){let t=Object.keys(e);return t.length=ze(t),t}function Ve(e){return new Uint8Array(e).toBase64()}function He(e){return Uint8Array.fromBase64(e).buffer}function Ue(e){return Buffer.from(e).toString(`base64`)}function We(e){return Uint8Array.from(Buffer.from(e,`base64`)).buffer}function Ge(e){let t=new Uint8Array(e),n=``,r=32768;for(let e=0;e<t.length;e+=r){let i=t.subarray(e,e+r);n+=String.fromCharCode.apply(null,i)}return btoa(n)}function Ke(e){let t=atob(e),n=t.length,r=new Uint8Array(n);for(let e=0;e<n;e++)r[e]=t.charCodeAt(e);return r.buffer}const qe=typeof Uint8Array.fromBase64==`function`,Je=typeof process==`object`&&process.versions?.node!==void 0,Ye=qe?Ve:Je?Ue:Ge,Xe=qe?He:Je?We:Ke;function Ze(e,t){if(!t)return e;let n={};for(let r of Object.keys(e))n[r]=t[r]??e[r];return n}const Qe=Object.freeze({kind:`not-plain`}),$e=Object.freeze({kind:`symbol-keys`}),et=Object.freeze({identify:e=>e,typeOf:e=>e===null?`null`:typeof e,toPrimitive:e=>e,tagOf:e=>je(e),isThenable:e=>typeof e.then==`function`,toPromise:e=>Promise.resolve(e),unbox:e=>e.valueOf(),toISOString:e=>isNaN(e.getDate())?``:e.toISOString(),toStringValue:e=>e.toString(),regExpInfo:e=>({source:e.source,flags:e.flags}),valuesOf:e=>e,entriesOf:e=>e,viewInfo:e=>({buffer:e.buffer,byteOffset:e.byteOffset,byteLength:e.byteLength,length:e.length,bufferByteLength:e.buffer.byteLength}),toArrayBuffer:e=>e,lengthOf:e=>e.length,hasOwn:(e,t)=>Object.hasOwn(e,t),indicesOf:e=>Be(e),shapeOf:e=>Ae(e)?Ne(e).length>0?$e:{kind:Object.getPrototypeOf(e)===null?`null-proto`:`plain`,keys:Object.keys(e)}:Qe,get:(e,t)=>e[t]}),tt=Object.freeze({fromPrimitive:e=>e,fromISOString:e=>new Date(e),fromStringValue:(e,t)=>e===`URL`?new URL(t):e===`URLSearchParams`?new URLSearchParams(t):Temporal[e.slice(9)].from(t),fromArrayBuffer:e=>e,fromRegExpInfo:(e,t)=>new RegExp(e,t),fromViewInfo:(e,t,n,r)=>{let i=globalThis[e];return n===void 0?new i(t):new i(t,n,r)},box:e=>Object(e),createArray:e=>Array(e),createSparseArray:e=>{let t=[];return t[Oe]=void 0,delete t[Oe],t.length=e,t},createObject:()=>({}),createNullPrototypeObject:()=>Object.create(null),createSet:()=>new Set,createMap:()=>new Map,set:(e,t,n)=>{e[t]=n},addValue:(e,t)=>{e.add(t)},addEntry:(e,t,n)=>{e.set(t,n)}});function nt(e,t,n){return rt(JSON.parse(e),t,n)}function rt(e,t,n){let r=Ze(tt,n?.operations);if(typeof e==`number`)return s(e,!0);if(!Array.isArray(e)||e.length===0)throw Error(`Invalid input`);let i=e,a=Array(i.length),o=null;function s(e,n=!1){if(e===-1)return r.fromPrimitive(void 0);if(e===-3)return r.fromPrimitive(NaN);if(e===-4)return r.fromPrimitive(1/0);if(e===-5)return r.fromPrimitive(-1/0);if(e===-6)return r.fromPrimitive(-0);if(n||typeof e!=`number`)throw Error(`Invalid input`);if(e in a)return a[e];if(e>=i.length)throw Error(`Invalid input`);let c=i[e];if(!c||typeof c!=`object`)a[e]=r.fromPrimitive(c);else if(Array.isArray(c)){if(typeof c[0]==`string`){let n=c[0],l=t&&Object.hasOwn(t,n)?t[n]:void 0;if(l){let t=c[1];if(typeof t!=`number`&&(t=i.push(c[1])-1),Object.hasOwn(a,t))return a[e]=l(a[t]);if(o??=new Set,o.has(t))throw Error(`Invalid circular reference`);return o.add(t),a[e]=l(s(t)),o.delete(t),a[e]}switch(n){case`Date`:a[e]=r.fromISOString(c[1]);break;case`Set`:let t=r.createSet();a[e]=t;for(let e=1;e<c.length;e+=1)r.addValue(t,s(c[e]));break;case`Map`:let o=r.createMap();a[e]=o;for(let e=1;e<c.length;e+=2)r.addEntry(o,s(c[e]),s(c[e+1]));break;case`RegExp`:a[e]=r.fromRegExpInfo(c[1],c[2]);break;case`Object`:{let t=c[1];if(typeof i[t]==`object`&&i[t][0]!==`BigInt`)throw Error(`Invalid input`);a[e]=r.box(s(t));break}case`BigInt`:a[e]=r.fromPrimitive(BigInt(c[1]));break;case`null`:let l=r.createNullPrototypeObject();a[e]=l;for(let e=1;e<c.length;e+=2){if(c[e]===`__proto__`)throw Error("Cannot parse an object with a `__proto__` property");r.set(l,c[e],s(c[e+1]))}break;case`Int8Array`:case`Uint8Array`:case`Uint8ClampedArray`:case`Int16Array`:case`Uint16Array`:case`Float16Array`:case`Int32Array`:case`Uint32Array`:case`Float32Array`:case`Float64Array`:case`BigInt64Array`:case`BigUint64Array`:case`DataView`:{if(i[c[1]][0]!==`ArrayBuffer`)throw Error(`Invalid data`);let t=s(c[1]);a[e]=r.fromViewInfo(n,t,c[2],c[3]);break}case`ArrayBuffer`:{let t=c[1];if(typeof t!=`string`)throw Error(`Invalid ArrayBuffer encoding`);a[e]=r.fromArrayBuffer(Xe(t));break}case`URL`:case`URLSearchParams`:case`Temporal.Duration`:case`Temporal.Instant`:case`Temporal.PlainDate`:case`Temporal.PlainTime`:case`Temporal.PlainDateTime`:case`Temporal.PlainMonthDay`:case`Temporal.PlainYearMonth`:case`Temporal.ZonedDateTime`:a[e]=r.fromStringValue(n,c[1]);break;default:throw Error(`Unknown type ${n}`)}}else if(c[0]===-7){let t=c[1];if(!Le(t))throw Error(`Invalid input`);let n=r.createSparseArray(t);a[e]=n;for(let e=2;e<c.length;e+=2){let i=c[e];if(!Ie(i)||i>=t)throw Error(`Invalid input`);r.set(n,i,s(c[e+1]))}}else{let t=r.createArray(c.length);a[e]=t;for(let e=0;e<c.length;e+=1){let n=c[e];n!==-2&&r.set(t,e,s(n))}}}else{let t=r.createObject();a[e]=t;for(let e of Object.keys(c)){if(e===`__proto__`)throw Error("Cannot parse an object with a `__proto__` property");r.set(t,e,s(c[e]))}}return a[e]}return s(0)}function O(e,t,n){let r=it(!1,e,t,n);return typeof r==`string`?r:`[${r.join(`,`)}]`}function it(e,t,n,r){let i=Ze(et,r?.operations),a=[],o=new Map,s=[];if(n)for(let e of Object.getOwnPropertyNames(n))s.push({key:e,fn:n[e]});let c=[],l=0;function u(n,r){let d=i.typeOf(n);if(d===`undefined`)return-1;let f;if(d===`number`){if(f=i.toPrimitive(n),Number.isNaN(f))return-3;if(f===1/0)return-4;if(f===-1/0)return-5;if(f===0&&1/f<0)return-6}let p=i.identify(n);if(o.has(p))return o.get(p);r??=l++,o.set(p,r);for(let{key:e,fn:t}of s){let i=t(n);if(i)return a[r]=`["${e}",${u(i)}]`,r}if(d===`function`)throw new E(`Cannot stringify a function`,c,n,t);if(d===`symbol`)throw new E(`Cannot stringify a Symbol primitive`,c,n,t);let m=``;if(d!==`object`)m=at(d===`number`?f:i.toPrimitive(n));else if(i.isThenable(n)){if(!e)throw new E(`Cannot stringify a Promise or thenable — use stringifyAsync instead`,c,n,t);m=i.toPromise(n).then(e=>{let t=u(e,r);t<0&&(a[r]=t)})}else{let e=i.tagOf(n);switch(e){case`Number`:case`String`:case`Boolean`:case`BigInt`:m=`["Object",${u(i.unbox(n))}]`;break;case`Date`:m=`["Date","${i.toISOString(n)}"]`;break;case`URL`:m=`["URL",${D(i.toStringValue(n))}]`;break;case`URLSearchParams`:m=`["URLSearchParams",${D(i.toStringValue(n))}]`;break;case`RegExp`:let{source:r,flags:a}=i.regExpInfo(n);m=a?`["RegExp",${D(r)},"${a}"]`:`["RegExp",${D(r)}]`;break;case`Array`:{let e=!1,t=i.lengthOf(n);m=`[`;for(let r=0;r<t;r+=1)if(r>0&&(m+=`,`),i.hasOwn(n,r))c.push(`[${r}]`),m+=u(i.get(n,r)),c.pop();else if(e)m+=-2;else{let r=i.indicesOf(n),a=r.length,o=String(t).length;if((t-a)*3>4+o+a*(o+1)){m=`[-7,`+t;for(let e=0;e<r.length;e++){let t=r[e];c.push(`[${t}]`),m+=`,`+t+`,`+u(i.get(n,t)),c.pop()}break}e=!0,m+=-2}m+=`]`;break}case`Set`:m=`["Set"`;for(let e of i.valuesOf(n))m+=`,${u(e)}`;m+=`]`;break;case`Map`:m=`["Map"`;for(let[e,t]of i.entriesOf(n)){let n=i.typeOf(e),r=n!==`object`&&n!==`function`&&n!==`symbol`;c.push(`.get(${r?at(i.toPrimitive(e)):`...`})`),m+=`,${u(e)},${u(t)}`,c.pop()}m+=`]`;break;case`Int8Array`:case`Uint8Array`:case`Uint8ClampedArray`:case`Int16Array`:case`Uint16Array`:case`Float16Array`:case`Int32Array`:case`Uint32Array`:case`Float32Array`:case`Float64Array`:case`BigInt64Array`:case`BigUint64Array`:{let t=i.viewInfo(n);m=`["`+e+`",`+u(t.buffer),t.byteLength!==t.bufferByteLength&&(m+=`,${t.byteOffset},${t.length}`),m+=`]`;break}case`DataView`:{let t=i.viewInfo(n);m=`["`+e+`",`+u(t.buffer),t.byteLength!==t.bufferByteLength&&(m+=`,${t.byteOffset},${t.byteLength}`),m+=`]`;break}case`ArrayBuffer`:m=`["ArrayBuffer","${Ye(i.toArrayBuffer(n))}"]`;break;case`Temporal.Duration`:case`Temporal.Instant`:case`Temporal.PlainDate`:case`Temporal.PlainTime`:case`Temporal.PlainDateTime`:case`Temporal.PlainMonthDay`:case`Temporal.PlainYearMonth`:case`Temporal.ZonedDateTime`:m=`["${e}",${D(i.toStringValue(n))}]`;break;default:{let e=i.shapeOf(n);if(e.kind===`not-plain`)throw new E(`Cannot stringify arbitrary non-POJOs`,c,n,t);if(e.kind===`symbol-keys`)throw new E(`Cannot stringify POJOs with symbolic keys`,c,n,t);if(e.kind===`null-proto`){m=`["null"`;for(let r of e.keys){if(r===`__proto__`)throw new E(`Cannot stringify objects with __proto__ keys`,c,n,t);c.push(Fe(r)),m+=`,${D(r)},${u(i.get(n,r))}`,c.pop()}m+=`]`}else{m=`{`;let r=!1;for(let a of e.keys){if(a===`__proto__`)throw new E(`Cannot stringify objects with __proto__ keys`,c,n,t);r&&(m+=`,`),r=!0,c.push(Fe(a)),m+=`${D(a)}:${u(i.get(n,a))}`,c.pop()}m+=`}`}}}}return a[r]=m,r}let d=u(t);return d<0?`${d}`:a}function at(e){let t=typeof e;return t===`string`?D(e):e===void 0?`-1`:e===0&&1/e<0?`-6`:t===`bigint`?`["BigInt","${e}"]`:String(e)}const ot=Symbol.for(`WORKFLOW_USE_STEP`),st=Symbol.for(`WORKFLOW_SET_ATTRIBUTES`),ct=Symbol.for(`WORKFLOW_CREATE_HOOK`),lt=Symbol.for(`WORKFLOW_SLEEP`),ut=Symbol.for(`WORKFLOW_GET_STREAM_ID`),dt=Symbol.for(`WORKFLOW_STABLE_ULID`),k=Symbol.for(`WORKFLOW_STREAM_NAME`),ft=Symbol.for(`WORKFLOW_STREAM_TYPE`),pt=Symbol.for(`WORKFLOW_STREAM_FRAMING`),A=Symbol.for(`WORKFLOW_STREAM_SERVER_RUN_ID`),j=Symbol.for(`WORKFLOW_STREAM_SERVER_DEPLOYMENT_ID`),M=Symbol.for(`WORKFLOW_STREAM_SERVER_PUBLIC_KEY`),mt=Symbol.for(`WORKFLOW_STREAM_DRAIN`),ht=Symbol.for(`BODY_INIT`),gt=Symbol.for(`WEBHOOK_RESPONSE_WRITABLE`),_t=Symbol.for(`workflow-class-registry`),N=Symbol.for(`WORKFLOW_ABORT_STREAM_NAME`),P=Symbol.for(`WORKFLOW_ABORT_HOOK_TOKEN`),vt=Symbol.for(`WORKFLOW_ABORT_LISTENER_ATTACHED`),yt=Symbol.for(`WORKFLOW_ABORT_READER_CANCEL`),bt=()=>n(`WORKFLOW_STREAM_MAX_INFLIGHT_CHUNKS`,1e3,{integer:!0,min:1}),xt=()=>n(`WORKFLOW_STREAM_MAX_CHUNKS_PER_BATCH`,1e3,{integer:!0,min:1}),St=()=>n(`WORKFLOW_STREAM_MAX_BYTES_PER_BATCH`,1048576,{integer:!0,min:1}),Ct=()=>n(`WORKFLOW_STREAM_MAX_BUFFERED_BYTES`,8388608,{integer:!0,min:1}),wt=()=>n(`WORKFLOW_LOCK_POLL_INTERVAL_MS`,10,{integer:!0,min:1});function F(){let e={...xe(),pendingOps:0,producedFrames:0,acceptedFrames:0,frameWaiters:[],doneResolved:!1,streamEnded:!1};return e.promise.catch(()=>{}),e}function Tt(e){if(e.locked)return!1;let t;try{t=e.getWriter()}catch{return!1}try{t.releaseLock()}catch{return!1}return!0}function Et(e){if(e.locked)return!1;let t;try{t=e.getReader()}catch{return!1}try{t.releaseLock()}catch{return!1}return!0}function Dt(e){let t=e.drainBarrier;if(!t){e.resolve();return}t().then(()=>e.resolve(),t=>e.reject(t))}function Ot(e){e.producedFrames++}async function kt(e){let t=async t=>{throw await e.drainBarrier?.().catch(()=>{}),t},n=e.producedFrames;if(e.acceptedFrames<n){if(e.pipeError!==void 0)return t(e.pipeError);try{await new Promise((t,r)=>{e.frameWaiters.push({target:n,resolve:t,reject:r})})}catch(e){return t(e)}}if(e.pipeError!==void 0)return t(e.pipeError);await e.drainBarrier?.()}function At(e,t,n=WritableStream){let r=e.getWriter(),i=Symbol(`workflow-stream-release-checkpoint`),a,o=new n({start(e){a=e},async write(e){e!==i&&(Ot(t),await r.write(e))},async close(){t.userWritableClosing=!0;try{await r.close()}finally{r.releaseLock()}},async abort(e){try{await r.abort(e)}finally{r.releaseLock()}}});r.closed.catch(e=>{a.error(e)});let s;return t.settleReleasedWrites=()=>{if(t.releaseSettlementArmed=!0,s)return s;if(o.locked)return Promise.resolve(!1);if(t.userWritableClosing)return s=t.promise.then(()=>!0),s;let e;try{e=o.getWriter()}catch{return Promise.resolve(!1)}return s=(async()=>{try{try{await e.write(i)}catch(e){try{return await t.promise,!0}catch(t){throw t??e}}return await kt(t),t.doneResolved||(t.doneResolved=!0,t.resolve()),!0}catch(e){throw t.doneResolved||(t.doneResolved=!0,t.reject(e)),e}finally{e.releaseLock()}})(),s},o}function jt(e,t){if(t.writablePollingInterval!==void 0)return;let n=setInterval(()=>{if(t.doneResolved||t.streamEnded){clearInterval(n),t.writablePollingInterval=void 0;return}if(t.settleReleasedWrites){(!t.deferReleaseSettlement||t.releaseSettlementArmed)&&!e.locked&&(clearInterval(n),t.writablePollingInterval=void 0,t.settleReleasedWrites().catch(()=>{}));return}Tt(e)&&t.pendingOps===0&&(t.doneResolved=!0,clearInterval(n),t.writablePollingInterval=void 0,Dt(t))},wt());t.writablePollingInterval=n}function Mt(e,t){if(t.readablePollingInterval!==void 0)return;let n=setInterval(()=>{if(t.doneResolved||t.streamEnded){clearInterval(n),t.readablePollingInterval=void 0;return}Et(e)&&t.pendingOps===0&&(t.doneResolved=!0,clearInterval(n),t.readablePollingInterval=void 0,Dt(t))},wt());t.readablePollingInterval=n}function I(e,t,n){let r=t[mt];return typeof r==`function`&&(n.drainBarrier=r),Nt(e,t,n)}async function Nt(e,t,n){let r=e.getReader(),i=t.getWriter(),a;try{for(;;){if(n.streamEnded)return;let e=await Promise.race([r.read(),i.closed.then(()=>{throw new C(`Writable stream closed prematurely`)})]);if(n.streamEnded)return;if(e.done){n.streamEnded=!0,await i.close(),n.doneResolved||(n.doneResolved=!0,n.resolve());return}n.pendingOps++;try{await i.write(e.value),n.acceptedFrames++;let t=n.frameWaiters.filter(e=>e.target<=n.acceptedFrames);n.frameWaiters=n.frameWaiters.filter(e=>e.target>n.acceptedFrames);for(let e of t)e.resolve()}finally{n.pendingOps--}}}catch(e){n.streamEnded=!0,n.pipeError=e,a=e;let t=n.frameWaiters;n.frameWaiters=[];for(let n of t)n.reject(e);throw n.drainBarrier&&await n.drainBarrier().catch(()=>{}),n.doneResolved||(n.doneResolved=!0,n.reject(e)),e}finally{r.cancel(a).catch(()=>{}),r.releaseLock(),i.releaseLock()}}let L=null,Pt=null;function Ft(e,t){let n=L,r=Pt;L=e??null,Pt=e?new WeakSet:null;try{return t()}finally{L=n,Pt=r}}const It=r(`@workflow/core//useStepClosures.fns`,1,()=>({fns:new WeakSet}));function Lt(e){return It.fns.add(e),e}function Rt(e){return typeof e==`function`&&It.fns.has(e)}function R(e,t){if(!L||(L.totalExecutions=(L.totalExecutions??L.executions.length)+1,L.executions.length>=5))return;let n={kind:e};t!==void 0&&(n.detail=t),L.executions.push(n)}function z(e){L&&Pt&&(Pt.has(e)||(Pt.add(e),R(`proxy`)))}const B=Function.prototype.bind.bind(Function.prototype.call);function V(e,t){let n=Object.getOwnPropertyDescriptor(e,t)?.get;if(!n)throw Error(`Missing intrinsic getter: ${String(t)}`);return B(n)}const zt=B(Date.prototype.getDate),Bt=B(Date.prototype.getTime),Vt=B(Date.prototype.toISOString),Ht=V(RegExp.prototype,`source`),Ut=V(RegExp.prototype,`flags`),Wt=V(ArrayBuffer.prototype,`byteLength`),Gt=B(Map.prototype.entries),Kt=B(Set.prototype.values),qt=B(Number.prototype.valueOf),Jt=B(String.prototype.valueOf),Yt=B(Boolean.prototype.valueOf),Xt=B(BigInt.prototype.valueOf),Zt=Object.getPrototypeOf(Uint8Array.prototype),Qt=V(Zt,Symbol.toStringTag),$t=V(Zt,`buffer`),en=V(Zt,`byteOffset`),tn=V(Zt,`byteLength`),nn=V(Zt,`length`),rn=V(DataView.prototype,`buffer`),an=V(DataView.prototype,`byteOffset`),on=V(DataView.prototype,`byteLength`),sn=V(SharedArrayBuffer.prototype,`byteLength`),cn=B(Headers.prototype[Symbol.iterator]),ln=V(URL.prototype,`href`),un=B(URLSearchParams.prototype.toString),{isProxy:H}=T,dn=B(Function.prototype.toString);function fn(e){if(H(e))return!1;let t=Object.getOwnPropertyDescriptor(e,`name`)?.value;return typeof t==`string`&&t.startsWith(`bound `)?!1:dn(e).endsWith(`{ [native code] }`)||Reflect.getPrototypeOf(e)===Function.prototype}function U(e,t){if(e===null||typeof e!=`object`&&typeof e!=`function`)return;if(H(e))return z(e),e[t];let n=e;for(;n!==null;){if(H(n))return z(n),e[t];let r=Object.getOwnPropertyDescriptor(n,t);if(r)return`value`in r?r.value:r.get?(fn(r.get)||R(`getter`,String(t)),r.get.call(e)):void 0;n=Reflect.getPrototypeOf(n)}}function pn(e,t){if(e===null||typeof e!=`object`&&typeof e!=`function`)return!1;if(H(e))return z(e),t in e;let n=e;for(;n!==null;){if(H(n))return z(n),t in e;if(Object.getOwnPropertyDescriptor(n,t))return!0;n=Reflect.getPrototypeOf(n)}return!1}function W(e,t){if(!t||typeof e!=`object`||!e)return!1;H(e)&&z(e);let n=Reflect.getPrototypeOf(e);for(;n!==null;){if(n===t)return!0;H(n)&&z(n),n=Reflect.getPrototypeOf(n)}return!1}function mn(e){return H(e)?(z(e),e.href):ln(e)}function hn(e){return H(e)?(z(e),String(e)):un(e)}function gn(e){return H(e)?(z(e),Array.from(e)):[...cn(e)]}function _n(e){return[...Gt(e)]}function vn(e){return[...Kt(e)]}function yn(e){return T.isDataView(e)?{buffer:rn(e),byteOffset:an(e),byteLength:on(e)}:{buffer:$t(e),byteOffset:en(e),byteLength:tn(e)}}const bn=new Set([`Int8Array`,`Uint8Array`,`Uint8ClampedArray`,`Int16Array`,`Uint16Array`,`Float16Array`,`Int32Array`,`Uint32Array`,`Float32Array`,`Float64Array`,`BigInt64Array`,`BigUint64Array`]),xn=new Set([`Date`,`RegExp`,`Map`,`Set`,`Array`,`DataView`,`ArrayBuffer`,`SharedArrayBuffer`,`Number`,`String`,`Boolean`,`BigInt`,`URL`,`URLSearchParams`,...bn]);function Sn(e){if(T.isDate(e))return`Date`;if(T.isRegExp(e))return`RegExp`;if(T.isMap(e))return`Map`;if(T.isSet(e))return`Set`;if(Array.isArray(e))return`Array`;if(T.isTypedArray(e)){let t=Qt(e);return t!==void 0&&bn.has(t)?t:void 0}if(T.isDataView(e))return`DataView`;if(T.isArrayBuffer(e))return`ArrayBuffer`;if(T.isSharedArrayBuffer(e))return`SharedArrayBuffer`;if(T.isNumberObject(e))return`Number`;if(T.isStringObject(e))return`String`;if(T.isBooleanObject(e))return`Boolean`;if(T.isBigIntObject(e))return`BigInt`;if(W(e,URL.prototype))return`URL`;if(W(e,URLSearchParams.prototype))return`URLSearchParams`}function Cn(e){let t=U(e,Symbol.toStringTag);return typeof t==`string`?t:void 0}const wn={tagOf:e=>{if(H(e))return z(e),et.tagOf(e);let t=Sn(e);if(t!==void 0)return t;let n=Cn(e);return n===void 0||xn.has(n)?`Object`:n},isThenable:e=>T.isPromise(e)?!0:typeof U(e,`then`)==`function`,unbox:e=>T.isNumberObject(e)?qt(e):T.isStringObject(e)?Jt(e):T.isBooleanObject(e)?Yt(e):Xt(e),toISOString:e=>Number.isNaN(zt(e))?``:Vt(e),toStringValue:e=>W(e,URL.prototype)?mn(e):W(e,URLSearchParams.prototype)?hn(e):(R(`method`,`toString (${Cn(e)??`unknown`})`),e.toString()),regExpInfo:e=>({source:Ht(e),flags:Ut(e)}),valuesOf:e=>vn(e),entriesOf:e=>_n(e),viewInfo:e=>{let t=yn(e);return{...t,length:T.isDataView(e)?0:nn(e),bufferByteLength:T.isSharedArrayBuffer(t.buffer)?sn(t.buffer):Wt(t.buffer)}},shapeOf:e=>(H(e)&&z(e),et.shapeOf(e)),get:(e,t)=>U(e,t)},Tn=Symbol.for(`workflow-serialize`),En=Symbol.for(`workflow-deserialize`);function Dn(e=globalThis){let t=e,n=t[_t];return n||(n=new Map,t[_t]=n),n}const On=`class//workflow//Run`;function kn(e,t,n=globalThis){Dn(n).set(e,t)}function An(e,t){return Dn(t).get(e)}function jn(){return{Class:e=>{if(typeof e!=`function`)return!1;let t=U(e,`classId`);return typeof t==`string`&&{classId:t}},Instance:e=>{if(typeof e!=`object`||!e)return!1;let t=U(e,`constructor`);if(!t||typeof t!=`function`)return!1;let n=U(t,Tn);if(typeof n!=`function`)return!1;let r=U(t,`classId`);if(typeof r!=`string`)throw Error(`Class "${String(U(t,`name`))}" with ${String(Tn)} must have a static "classId" property.`);return R(`method`,`[WORKFLOW_SERIALIZE] (${r})`),{classId:r,data:n.call(t,e)}}}}function Mn(e=globalThis){return{Class:t=>{let n=t.classId,r=An(n,e);if(!r)throw Error(`Class "${n}" not found. Make sure the class is registered with registerSerializationClass.`);return r},Instance:t=>{let n=t.classId,r=t.data,i=An(n,e);if(!i)throw Error(`Class "${n}" not found. Make sure the class is registered with registerSerializationClass.`);let a=i[En];if(typeof a!=`function`)throw Error(`Class "${n}" does not have a static ${String(En)} method.`);return a.call(i,r)}}}function Nn(e,t,n){if(n===0)return`.`;let r=new Uint8Array(e,t,n);return Buffer.from(r).toString(`base64`)}function G(e){let t=yn(e);return Nn(t.buffer,t.byteOffset,t.byteLength)}function K(e,t){let n=e===`.`?``:e,r=Buffer.from(n,`base64`),i=new t.ArrayBuffer(r.length);return new t.Uint8Array(i).set(r),i}function Pn(e){return JSON.parse(e)}function Fn(e){let t=Object.getOwnPropertyDescriptor(e,`stack`);return t&&`value`in t?t.value:(R(`getter`,`stack`),t?.get?t.get.call(e):U(e,`stack`))}function In(e){if(!T.isNativeError(e))return!1;let t={message:U(e,`message`),stack:Fn(e)};return pn(e,`cause`)&&(t.cause=U(e,`cause`)),t}function q(e,t){return!T.isNativeError(t)||U(t,`name`)!==e?!1:In(t)}function J(e){return t=>q(e,t)||!1}function Ln(e,t){return n=>{let r=n,i=`cause`in r?{cause:r.cause}:void 0,a=e[t],o=new a(r.message,i);return r.stack!==void 0&&(o.stack=r.stack),o}}function Rn(e=globalThis){return{ArrayBuffer:e=>T.isArrayBuffer(e)&&Nn(e,0,Wt(e)),BigInt:e=>typeof e==`bigint`&&String(e),BigInt64Array:e=>T.isBigInt64Array(e)&&G(e),BigUint64Array:e=>T.isBigUint64Array(e)&&G(e),Date:e=>T.isDate(e)?Number.isNaN(zt(e))?`.`:Vt(e):!1,DOMException:e=>{if(typeof e!=`object`||!e)return!1;let t=U(e,`constructor`);if(!t||U(t,`name`)!==`DOMException`)return!1;let n={message:U(e,`message`),name:U(e,`name`),stack:Fn(e)};return pn(e,`cause`)&&(n.cause=U(e,`cause`)),n},EvalError:J(`EvalError`),FatalError:J(`FatalError`),HookConflictError:e=>{let t=q(`HookConflictError`,e);if(!t)return!1;let n={...t,token:U(e,`token`)},r=U(e,`conflictingRunId`);return r!==void 0&&(n.conflictingRunId=r),n},HookForceClaimedError:e=>{let t=q(`HookForceClaimedError`,e);if(!t)return!1;let n={...t,token:U(e,`token`),claimedByRunId:U(e,`claimedByRunId`)},r=U(e,`claimedByHookId`);return r!==void 0&&(n.claimedByHookId=r),n},RangeError:J(`RangeError`),ReferenceError:J(`ReferenceError`),RetryableError:e=>{let t=q(`RetryableError`,e);if(!t)return!1;let n=U(e,`retryAfter`),r;if(T.isDate(n)){let e=Bt(n);r=Number.isNaN(e)?Date.now()+1e3:e}else if(n&&typeof n==`object`){let e=U(n,`getTime`);if(typeof e==`function`){R(`method`,`getTime`);let t=e.call(n);r=Number.isNaN(t)?Date.now()+1e3:t}else r=Date.now()+1e3}else if(typeof n==`string`||typeof n==`number`){let e=new Date(n).getTime();r=Number.isNaN(e)?Date.now()+1e3:e}else r=Date.now()+1e3;return{...t,retryAfter:r}},RuntimeDecryptionError:e=>{let t=q(`RuntimeDecryptionError`,e);if(!t)return!1;let n={...t},r=U(e,`context`);return r!==void 0&&(n.context=r),n},StreamError:e=>{let t=q(`StreamError`,e);if(!t)return!1;let n={...t},r=U(e,`status`),i=U(e,`url`);return typeof r==`number`&&(n.status=r),typeof i==`string`&&(n.url=i),n},SyntaxError:J(`SyntaxError`),TypeError:J(`TypeError`),URIError:J(`URIError`),AggregateError:e=>{let t=q(`AggregateError`,e);return t?{...t,errors:U(e,`errors`)}:!1},Error:e=>{if(!T.isNativeError(e))return!1;let t={name:U(e,`name`),message:U(e,`message`),stack:Fn(e)};return pn(e,`cause`)&&(t.cause=U(e,`cause`)),t},Float32Array:e=>T.isFloat32Array(e)&&G(e),Float64Array:e=>T.isFloat64Array(e)&&G(e),Headers:e=>W(e,Headers.prototype)&&gn(e),Int8Array:e=>T.isInt8Array(e)&&G(e),Int16Array:e=>T.isInt16Array(e)&&G(e),Int32Array:e=>T.isInt32Array(e)&&G(e),Map:e=>T.isMap(e)&&_n(e),RegExp:e=>T.isRegExp(e)&&{source:Ht(e),flags:Ut(e)},Set:e=>T.isSet(e)&&vn(e),URL:e=>W(e,URL.prototype)&&mn(e),WorkflowFunction:e=>{if(typeof e!=`function`)return!1;let t=U(e,`workflowId`);return typeof t==`string`&&{workflowId:t}},URLSearchParams:e=>{if(!W(e,URLSearchParams.prototype))return!1;let t=hn(e);return t===``?`.`:t},Uint8Array:e=>T.isUint8Array(e)&&G(e),Uint8ClampedArray:e=>T.isUint8ClampedArray(e)&&G(e),Uint16Array:e=>T.isUint16Array(e)&&G(e),Uint32Array:e=>T.isUint32Array(e)&&G(e)}}function zn(e=globalThis){return{ArrayBuffer:t=>K(t,e),BigInt:t=>e.BigInt(t),BigInt64Array:t=>new e.BigInt64Array(K(t,e)),BigUint64Array:t=>new e.BigUint64Array(K(t,e)),Date:t=>new e.Date(t),DOMException:t=>{let n=new e.DOMException(t.message,t.name);return t.stack!==void 0&&(n.stack=t.stack),`cause`in t&&(n.cause=t.cause),n},EvalError:Ln(e,`EvalError`),FatalError:t=>{let n=new(e[Symbol.for(`@workflow/errors//FatalError`)]??ge)(t.message);return t.stack!==void 0&&(n.stack=t.stack),`cause`in t&&(n.cause=t.cause),n},HookConflictError:t=>{let n=new(e[Symbol.for(`@workflow/errors//HookConflictError`)]??me)(t.token,t.conflictingRunId);return t.stack!==void 0&&(n.stack=t.stack),`cause`in t&&(n.cause=t.cause),n},HookForceClaimedError:t=>{let n=new(e[Symbol.for(`@workflow/errors//HookForceClaimedError`)]??ve)(t.token,t.claimedByRunId,t.claimedByHookId);return t.stack!==void 0&&(n.stack=t.stack),`cause`in t&&(n.cause=t.cause),n},RangeError:Ln(e,`RangeError`),ReferenceError:Ln(e,`ReferenceError`),RetryableError:t=>{let n=new(e[Symbol.for(`@workflow/errors//RetryableError`)]??he)(t.message,{retryAfter:new e.Date(t.retryAfter)});return t.stack!==void 0&&(n.stack=t.stack),`cause`in t&&(n.cause=t.cause),n},RuntimeDecryptionError:t=>{let n=e[Symbol.for(`@workflow/errors//RuntimeDecryptionError`)]??_e,r={};`cause`in t&&(r.cause=t.cause),t.context!==void 0&&(r.context=t.context);let i=new n(t.message,r);return t.stack!==void 0&&(i.stack=t.stack),i},StreamError:t=>{let n=new(e[Symbol.for(`@workflow/errors//StreamError`)]??pe)(t.message,{...`cause`in t?{cause:t.cause}:{},status:t.status,url:t.url});return t.stack!==void 0&&(n.stack=t.stack),n},SyntaxError:Ln(e,`SyntaxError`),TypeError:Ln(e,`TypeError`),URIError:Ln(e,`URIError`),AggregateError:t=>{let n=`cause`in t?{cause:t.cause}:void 0,r=new e.AggregateError(t.errors,t.message,n);return t.stack!==void 0&&(r.stack=t.stack),r},Error:t=>{let n=`cause`in t?{cause:t.cause}:void 0,r=new e.Error(t.message,n);return r.name=t.name,t.stack!==void 0&&(r.stack=t.stack),r},Float32Array:t=>new e.Float32Array(K(t,e)),Float64Array:t=>new e.Float64Array(K(t,e)),Headers:t=>new e.Headers(t),Int8Array:t=>new e.Int8Array(K(t,e)),Int16Array:t=>new e.Int16Array(K(t,e)),Int32Array:t=>new e.Int32Array(K(t,e)),Map:t=>new e.Map(t),RegExp:t=>new e.RegExp(t.source,t.flags),Set:t=>new e.Set(t),URL:t=>new e.URL(t),WorkflowFunction:e=>Object.assign(()=>{throw Error(`Workflow functions cannot be called directly. Use start() to invoke them.`)},{workflowId:e.workflowId}),URLSearchParams:t=>new e.URLSearchParams(t===`.`?``:t),Uint8Array:t=>new e.Uint8Array(K(t,e)),Uint8ClampedArray:t=>new e.Uint8ClampedArray(K(t,e)),Uint16Array:t=>new e.Uint16Array(K(t,e)),Uint32Array:t=>new e.Uint32Array(K(t,e))}}function Bn(){return{StepFunction:e=>{if(typeof e!=`function`)return!1;let t=U(e,`stepId`);if(typeof t!=`string`)return!1;let n=U(e,`__closureVarsFn`),r;typeof n==`function`&&(Rt(n)||R(`method`,`__closureVarsFn`),r=n());let i=pn(e,`__boundThis`),a=i?U(e,`__boundThis`):void 0,o=U(e,`__boundArgs`),s={stepId:t};return r!==void 0&&(s.closureVars=r),i&&(s.boundThis=a),Array.isArray(o)&&o.length>0&&(s.boundArgs=o),s}}}function Vn(e=globalThis){let t=e[Symbol.for(`WORKFLOW_USE_STEP`)];return{StepFunction:e=>{let n=e.stepId,r=e.closureVars;if(!t)throw Error(`WORKFLOW_USE_STEP not found on global object. Step functions cannot be deserialized outside workflow context.`);let i=r?t(n,()=>r):t(n);if(`boundThis`in e){let t=Array.isArray(e.boundArgs)?e.boundArgs:[];return i.bind(e.boundThis,...t)}return i}}}const Hn=new TextEncoder,Un=new TextDecoder,Wn=1e5,Gn={operations:{createSparseArray(e){if(e>Wn)throw RangeError(`Sparse array length ${e} exceeds the maximum of ${Wn}`);return tt.createSparseArray(e)}}};function Kn(e,t=globalThis,n){let r;switch(e){case`workflow`:r={...jn(),...Bn(),...Rn(t)};break;case`step`:r={...jn(),...Rn(t)};break;case`client`:r={...jn(),...Rn(t)}}return n?{...r,...n}:r}function qn(e,t=globalThis,n){let r;switch(e){case`workflow`:r={...Mn(t),...Vn(t),...zn(t)};break;case`step`:r={...Mn(t),...zn(t)};break;case`client`:r={...Mn(t),...zn(t),StepFunction:()=>{throw Error(`Step functions cannot be deserialized in client context.`)}}}return n?{...r,...n}:r}const Y={formatPrefix:S.DEVALUE_V1,serialize(e,t,n){let r=Kn(t,n?.global,n?.extraReducers),i=Ft(n?.guestCodeStats,()=>O(e,r,{operations:wn}));return Hn.encode(i)},deserialize(e,t,n){let r=qn(t,n?.global,n?.extraRevivers);return nt(Un.decode(e),r,Gn)},deserializeLegacy(e,t,n){return rt(e,qn(t,n?.global,n?.extraRevivers),Gn)}};function Jn(){try{return typeof process<`u`&&process.env?.WORKFLOW_DISABLE_COMPRESSION===`1`}catch{return!1}}function Yn(){try{let e=process.env?.WORKFLOW_COMPRESSION_CODEC;return e===`gzip`||e===`zstd`?e:void 0}catch{return}}function Xn(){try{return globalThis.process?.getBuiltinModule?.(`node:zlib`)}catch{return}}function Zn(){let e=Xn();return typeof e?.zstdCompressSync==`function`&&typeof e?.zstdDecompressSync==`function`}function Qn(){return typeof CompressionStream==`function`&&typeof DecompressionStream==`function`}async function $n(e,t){let n=t.writable.getWriter(),r=n.write(e).then(()=>n.close());r.catch(()=>{});let i=[],a=0,o=t.readable.getReader();for(;;){let{done:e,value:t}=await o.read();if(e)break;i.push(t),a+=t.length}await r;let s=new Uint8Array(a),c=0;for(let e of i)s.set(e,c),c+=e.length;return s}async function er(e){return $n(e,new CompressionStream(`gzip`))}async function tr(e){return $n(e,new DecompressionStream(`gzip`))}function nr(e){let t=Xn(),n=t?.constants?.ZSTD_c_compressionLevel,r=n===void 0?void 0:{params:{[n]:3}};return new Uint8Array(t.zstdCompressSync(e,r))}function rr(e){let t=Xn();if(!t?.zstdDecompressSync)throw Error(`Compressed (zstd) workflow data encountered but node:zlib zstd support is not available in this runtime (requires Node.js 22.15+). In the browser, register a zstd decoder via registerZstdDecoder (serialization-format.ts).`);return new Uint8Array(t.zstdDecompressSync(e))}function X(e,t,n,r){e&&(e.recorded=!0,e.compressed=t!==`none`,e.codec=t,e.uncompressedBytes=n,e.storedBytes=r)}function ir(){return Yn()===`gzip`?Qn()?`gzip`:`none`:Zn()?`zstd`:Qn()?`gzip`:`none`}async function ar(e,t,n){if(!(e instanceof Uint8Array))return e;if(!t||e.length<1024||Jn())return X(n,`none`,e.length,e.length),e;let r=ir();if(r===`none`)return X(n,`none`,e.length,e.length),e;let i=r===`zstd`?nr(e):await er(e),a=r===`zstd`?S.ZSTD:S.GZIP,o=4+i.length;return o>=e.length*.95?(X(n,`none`,e.length,e.length),e):(X(n,r,e.length,o),u(a,i))}async function or(e,t){if(!(e instanceof Uint8Array))return e;let n=h(e);if(n===S.ZSTD){let{payload:n}=c(e),r=rr(n);return X(t,`zstd`,r.length,e.length),r}if(n===S.GZIP){if(!Qn())throw Error(`Compressed (gzip) workflow data encountered but DecompressionStream is not available in this runtime. Node.js 18+, browsers, and edge runtimes all support it.`);let{payload:n}=c(e),r=await tr(n);return X(t,`gzip`,r.length,e.length),r}return X(t,`none`,e.length,e.length),e}function sr(e){if(_e.is(e))throw e}function Z(e,t){let n=e.includes(`return value`)?`returning`:`passing`,r=`Failed to serialize ${e}`;t instanceof E&&t.path&&(r+=` at path "${t.path}"`);let i=`Ensure you're ${n} workflow serializable types. Check the serialization docs to see what's serializable: https://workflow-sdk.dev/docs/foundations/serialization`;return t instanceof E&&t.value!==void 0&&b.error(`Serialization failed`,{context:e,problematicValue:t.value}),{message:r,hint:i}}async function cr(e,t,n){try{let r=Y.serialize(e,`client`,n),i=await ar(u(S.DEVALUE_V1,r),n?.compression===!0,n?.compressionStats);return oe(i,t)}catch(e){sr(e);let{message:t,hint:n}=Z(`client value`,e);throw new w(t,{hint:n,cause:e})}}async function lr(e,t,n){let r=await or(await o(e,t),n?.compressionStats);if(!(r instanceof Uint8Array)){if(Y.deserializeLegacy)return Y.deserializeLegacy(r,`client`,n);throw Error(`Cannot deserialize non-binary data without legacy support`)}let{format:i,payload:a}=c(r);if(i===S.DEVALUE_V1)return Y.deserialize(a,`client`,n);throw Error(`Unsupported serialization format: ${i}`)}async function ur(e,t,n){try{let r=Y.serialize(e,`step`,n),i=await ar(u(S.DEVALUE_V1,r),n?.compression===!0,n?.compressionStats);return oe(i,t)}catch(e){sr(e);let{message:t,hint:n}=Z(`step value`,e);throw new w(t,{hint:n,cause:e})}}async function dr(e,t,n){let r=await or(await o(e,t),n?.compressionStats);if(!(r instanceof Uint8Array)){if(Y.deserializeLegacy)return Y.deserializeLegacy(r,`step`,n);throw Error(`Cannot deserialize non-binary data without legacy support`)}let{format:i,payload:a}=c(r);if(i===S.DEVALUE_V1)return Y.deserialize(a,`step`,n);throw Error(`Unsupported serialization format: ${i}`)}function fr(e,t){if(!(e instanceof Uint8Array)){if(Y.deserializeLegacy)return Y.deserializeLegacy(e,`workflow`,t);throw Error(`Cannot deserialize non-binary data without legacy support`)}let{format:n,payload:r}=c(e);if(n===S.DEVALUE_V1)return Y.deserialize(r,`workflow`,t);throw Error(`Unsupported serialization format: ${n}`)}const pr=Symbol.for(`WORKFLOW_STEP_CONTEXT_STORAGE`),mr=(()=>{let e=globalThis;return e[pr]??=new Ee,e[pr]})();function hr(e,t,n){if(e===0&&t===0&&n===0)return null;let r=[];e>0&&r.push(`${e} ${fe(`step`,`steps`,e)}`),t>0&&r.push(`${t} ${fe(`hook`,`hooks`,t)}`),n>0&&r.push(`${n} ${fe(`timer`,`timers`,n)}`);let i=[];e>0&&i.push(`steps are completed`),t>0&&i.push(`hooks are received`),n>0&&i.push(`timers have elapsed`);let a=i.join(` and `);return`${r.join(` and `)} to be enqueued\n Workflow will suspend and resume when ${a}`}function gr(e,t){let n=`${e.replace(`wrun_`,`strm_`)}_user`;return t?`${n}_${Buffer.from(t,`utf-8`).toString(`base64url`)}`:n}function _r(e){return`strm_${e}_system_abort`}function vr(e){if(!e.startsWith(`abrt_`))throw Error(`Invalid abort hook token format: expected "abrt_" prefix, got "${e}"`);return _r(e.slice(5))}const yr=()=>n(`WORKFLOW_DEFERRED_CHECK_DELAY_MS`,100,{integer:!0,min:10}),br=new Set([`hook_received`,`hook_conflict`,`wait_completed`,`attr_set`,`run_cancelled`]),xr=new Set([`wait_completed`]);function Sr(e,t){return`${e}:${t}`}const Cr=new Set([`run_completed`,`run_failed`,`run_cancelled`]);var Q;(function(e){e[e.Consumed=0]=`Consumed`,e[e.NotConsumed=1]=`NotConsumed`,e[e.Finished=2]=`Finished`})(Q||={});var wr=class{eventIndex;events;callbacks=[];parked=[];resolved=new Set;seenEventClasses=new Map;onConsumedEvent;onUnconsumedEvent;onDuplicateEvent;getPromiseQueue;isDeliveryIdle;pendingUnconsumedCheck=null;pendingUnconsumedTimeout=null;unconsumedCheckVersion=0;lastConsumed;constructor(e,t){this.events=[...e],this.eventIndex=0,this.onConsumedEvent=t.onConsumedEvent,this.onUnconsumedEvent=t.onUnconsumedEvent,this.onDuplicateEvent=t.onDuplicateEvent,this.getPromiseQueue=t.getPromiseQueue,this.isDeliveryIdle=t.isDeliveryIdle}get strandedEvent(){return this.parked[0]?.event}get parkedSummary(){let e=this.parked[0]?.event;if(e)return{count:this.parked.length,eventId:e.eventId,eventType:e.eventType}}describe(){return{index:this.eventIndex,length:this.events.length,parked:this.parked.length,lastConsumedEventId:this.lastConsumed?.eventId}}append(e){for(let t of e)this.events.push(t);process.nextTick(this.consume)}subscribe(e){this.callbacks.push(e),this.pendingUnconsumedCheck!==null&&(this.unconsumedCheckVersion++,this.pendingUnconsumedCheck=null,this.pendingUnconsumedTimeout!==null&&(clearTimeout(this.pendingUnconsumedTimeout),this.pendingUnconsumedTimeout=null)),process.nextTick(this.consume)}notifyConsumedEvent(e){if(this.onConsumedEvent)try{this.onConsumedEvent(e)}catch(e){x.error(`onConsumedEvent callback threw an error`,{error:e})}}consume=()=>{for(;;){this.drainParked();let t=this.events[this.eventIndex]??null;if(t!==null&&e(t)){this.skipSealedNoop(t);continue}let n=this.offer(t);if(n&&this.eventIndex++,t===null){n||this.handleEndOfLog();return}if(!n){let e=this.firstEventTypeOfClass(t);if(e!==void 0){this.skipDuplicateEvent(t,e);continue}this.scheduleUnconsumedCheck(t,!0);return}}};offer(e){for(let t=0;t<this.callbacks.length;t++){let n=this.callbacks[t],r=Q.NotConsumed;try{r=n(e)}catch(e){x.error(`EventConsumer callback threw an error`,{error:e})}if(r===Q.Consumed||r===Q.Finished)return e!==null&&(e.correlationId&&xr.has(e.eventType)&&this.resolved.add(Sr(e.eventType,e.correlationId)),this.recordEventClass(e),this.lastConsumed=e,this.notifyConsumedEvent(e)),r===Q.Finished&&this.callbacks.splice(t,1),!0}return!1}drainParked(){let e=this.parked.length>0;for(;e;){e=!1,this.dropParkedDuplicates();for(let t=0;t<this.parked.length;t++){let n=this.parked[t],r=this.eventIndex;this.eventIndex=n.index;let i;try{i=this.offer(n.event)}finally{this.eventIndex=r}if(i){this.parked.splice(t,1),e=this.parked.length>0;break}}}}dropParkedDuplicates(){for(let e=this.parked.length-1;e>=0;e--){let t=this.parked[e].event,n=this.firstEventTypeOfClass(t);if(n!==void 0){this.parked.splice(e,1),x.debug(`Releasing a parked event that repeats a class already in the log`,{eventId:t.eventId,eventType:t.eventType,firstEventType:n,correlationId:t.correlationId});try{this.onDuplicateEvent?.(t,n)}catch(e){x.error(`onDuplicateEvent callback threw an error`,{error:e})}}}}park(e){return!br.has(e.eventType)||e.correlationId&&this.resolved.has(Sr(e.eventType,e.correlationId))?!1:(this.parked.push({event:e,index:this.eventIndex}),this.eventIndex++,x.debug(`Parked an unclaimed event for later delivery`,{eventId:e.eventId,eventType:e.eventType,correlationId:e.correlationId,parked:this.parked.length}),!0)}eventClassKey(e){let n=t(e);return n===void 0?void 0:`${n.eventClass}:${n.entity}`}recordEventClass(e){let t=this.eventClassKey(e);t!==void 0&&!this.seenEventClasses.has(t)&&this.seenEventClasses.set(t,e.eventType)}firstEventTypeOfClass(e){let t=this.eventClassKey(e);return t===void 0?void 0:this.seenEventClasses.get(t)}skipSealedNoop(e){this.eventIndex++,x.debug(`Skipping sealed-log noop event`,{eventId:e.eventId})}skipDuplicateEvent(e,t){this.eventIndex++,x.debug(`Skipping event that repeats a class already in the log`,{eventId:e.eventId,eventType:e.eventType,firstEventType:t,correlationId:e.correlationId});try{this.onDuplicateEvent?.(e,t)}catch(e){x.error(`onDuplicateEvent callback threw an error`,{error:e})}}handleEndOfLog(){if(this.parked.length===0)return;let e=this.events.at(-1);if(!e||!Cr.has(e.eventType)){x.debug(`Reached the end of the log still holding events`,{eventId:this.parked[0].event.eventId,eventType:this.parked[0].event.eventType,correlationId:this.parked[0].event.correlationId,parked:this.parked.length});return}this.scheduleUnconsumedCheck(this.parked[0].event,!1)}scheduleUnconsumedCheck(e,t){let n=++this.unconsumedCheckVersion;this.pendingUnconsumedCheck=this.getPromiseQueue().then(()=>new Promise(e=>setTimeout(e,0))).then(()=>this.getPromiseQueue()).then(()=>{this.whenDeliveryIdle(n,()=>{this.pendingUnconsumedTimeout=setTimeout(()=>{this.pendingUnconsumedTimeout=null,this.unconsumedCheckVersion===n&&(this.pendingUnconsumedCheck=null,this.resolveUnconsumedEvent(e,t))},yr())})})}resolveUnconsumedEvent(e,t){if(t){if(this.events[this.eventIndex]!==e)return;if(this.park(e)){this.consume();return}}this.onUnconsumedEvent(e)}whenDeliveryIdle(e,t){let n=()=>{if(this.pendingUnconsumedTimeout=null,this.unconsumedCheckVersion===e){if(this.isDeliveryIdle()){t();return}this.getPromiseQueue().then(()=>{this.unconsumedCheckVersion===e&&(this.pendingUnconsumedTimeout=setTimeout(n,0))})}};n()}},Tr=class{aborted=!1;reason=void 0;[N];[P];#e=[];#t=null;get onabort(){return this.#t}set onabort(e){this.#t=e,e&&this.aborted&&e.call(this)}constructor(e,t){this[N]=e,this[P]=t}_setAborted(e){if(!this.aborted){this.aborted=!0,this.reason=e,this.#t&&this.#t.call(this);for(let e of this.#e)e();this.#e=[]}}addEventListener(e,t){if(e===`abort`){if(this.aborted){t();return}this.#e.push(t)}}removeEventListener(e,t){e===`abort`&&(this.#e=this.#e.filter(e=>e!==t))}throwIfAborted(){if(this.aborted)throw this.reason??new DOMException(`The operation was aborted.`,`AbortError`)}};function Er(e){return class{signal;[N];[P];constructor(){let t=e.generateUlid(),n=_r(t),r=`abrt_${t}`;this[N]=n,this[P]=r,this.signal=new Tr(n,r);let i=`hook_${e.generateUlid()}`;e.invocationsQueue.set(i,{type:`hook`,correlationId:i,token:r,isWebhook:!1,isSystem:!0}),e.eventsConsumer.subscribe(t=>{if(!t||t.correlationId!==i)return Q.NotConsumed;let n=`eventData`in t&&t.eventData&&`token`in t.eventData?t.eventData.token:void 0;if(typeof n==`string`&&n!==this[P])return e.promiseQueue=e.promiseQueue.then(()=>{e.onWorkflowError(new ye(`Replay divergence: abort hook event ${t.eventType} for ${i} belongs to token "${n}", but the current abort hook expects "${this[P]}"`,{eventId:t.eventId}))}),Q.Finished;if(t.eventType===`hook_created`){let t=e.invocationsQueue.get(i);return t&&t.type===`hook`&&(t.hasCreatedEvent=!0),Q.Consumed}if(t.eventType===`hook_received`){let n=t.eventData?.payload,r=e.eventsConsumer.eventIndex,a=Te(e,r,`hook`,{deliveredAt:+t.createdAt}),o=Ce(e,r,`hook`);return e.pendingDeliveries++,e.promiseQueue=e.promiseQueue.then(async()=>{let r;try{if(n!==void 0)try{let i=await e.replayPayloadCache.prepareEventPayload(t.eventId,`payload`,n),a=await Ii(n,e.runId,e.encryptionKey,e.globalThis,{},i);a&&typeof a==`object`&&`reason`in a&&(r=a.reason)}catch{}}finally{e.pendingDeliveries--}o.then(()=>{a.markDelivered(),this.signal._setAborted(r)})}),e.invocationsQueue.delete(i),Q.Consumed}return t.eventType===`hook_disposed`?(e.invocationsQueue.delete(i),Q.Finished):Q.NotConsumed})}abort(t){if(!this.signal.aborted){this.signal._setAborted(t);for(let[,n]of e.invocationsQueue)if(n.type===`hook`&&n.token===this[P]){n.abortRequested=!0,n.abortReason=t;break}}}}}function Dr(){return{abort(e){let t=new Tr(``,``);return t._setAborted(e??new DOMException(`The operation was aborted.`,`AbortError`)),t},any(e){let t=new Tr(``,``),n=Array.from(e);for(let e of n)if(e.aborted)return t._setAborted(e.reason),t;let r=[],i=()=>{for(let{signal:e,listener:t}of r)e.removeEventListener&&e.removeEventListener(`abort`,t);r.length=0};for(let e of n){if(!e.addEventListener)continue;let n=()=>{t.aborted||(t._setAborted(e.reason),i())};r.push({signal:e,listener:n}),e.addEventListener(`abort`,n)}return t},timeout(){throw Error(`AbortSignal.timeout() is not supported in workflow functions. Use sleep() with an AbortController instead. See: /docs/errors/abort-signal-timeout-in-workflow`)}}}const Or=i();function kr(e){try{return e.getReader({mode:`byob`}).releaseLock(),`bytes`}catch{}}function Ar(e){return sr(e),e instanceof w&&e.cause!==void 0||e instanceof C&&e.cause!==void 0?e.cause:e}async function $(e,t){if(e.recorded)try{let n=await se();if(!n)return;let r=e.uncompressedBytes??0,i=e.storedBytes??0;n.setAttributes({...ue(t),...ce(e.compressed??!1),...te(e.codec??`none`),...ie(r),...le(i),...e.compressed&&r>0?de(1-i/r):{}})}catch{}}async function jr(e){let t=e.totalExecutions??e.executions.length;if(t!==0)try{let n=await se();if(!n)return;let r=[...new Set(e.executions.map(e=>e.detail?`${e.kind} (${e.detail})`:e.kind))];n.setAttributes({...re(t),...ne(r)})}catch{}}function Mr(e,t){let n=new TextEncoder,r={resolved:!1,key:void 0},i;return new TransformStream({async transform(a,o){try{r.resolved||(r.key=await p(t),r.resolved=!0,ae(r.key)&&(i=g(r.key.recipientPublicKey,r.key.aad)));let s=O(a,e),c=n.encode(s),l=u(S.DEVALUE_V1,c);i?l=u(S.SEALED,await i.seal(l)):r.key&&(l=await oe(l,r.key));let d=new Uint8Array(4+l.length);new DataView(d.buffer).setUint32(0,l.length,!1),d.set(l,4),o.enqueue(d)}catch(e){if(_e.is(e)){o.error(e);return}let{message:t,hint:n}=Z(`stream chunk`,e);o.error(new w(t,{hint:n,cause:e}))}}})}function Nr(e,t){let n=new TextDecoder,r=new Uint8Array,i={resolved:!1,key:void 0},u;function d(e){let t=new Uint8Array(r.length+e.length);t.set(r,0),t.set(e,r.length),r=t}async function f(d){for(i.resolved||(i.key=await p(t),i.resolved=!0,a(i.key)&&(u=l(i.key.keyPair,i.key.aad)));r.length>=4;){let t=new DataView(r.buffer,r.byteOffset,r.byteLength).getUint32(0,!1);if(r.length<4+t)break;let l=r.slice(4,4+t);r=r.slice(4+t);let{format:f,payload:p}=c(l);if(f===S.ENCRYPTED||f===S.SEALED){let e=f===S.SEALED;if(!(e?a(i.key):s(i.key)!==void 0)){d.error(new _e(e?`Sealed stream data encountered but no run keypair is available. Opening a sealed frame requires the run's own encryption key material.`:`Encrypted stream data encountered but no encryption key is available. Encryption is not configured or no key was provided for this run.`,{context:{operation:`decrypt`,byteLength:p.byteLength,formatPrefix:e?`encp`:`encr`}}));return}let t;try{t=e?await u.open(c(l).payload):await o(l,i.key)}catch(e){throw _e.is(e)&&e.context&&(e.context.formatPrefix=f),e}({format:f,payload:p}=c(t))}if(f===S.DEVALUE_V1){let t=n.decode(p);d.enqueue(nt(t,e))}}}return new TransformStream({async transform(t,i){if(r.length===0&&t.length>=4){let e=new DataView(t.buffer,t.byteOffset,t.byteLength).getUint32(0,!1);if(e>0&&e<1e8){d(t),await f(i);return}}else if(r.length>0){d(t),await f(i);return}let a=n.decode(t).split(`
3
- `);for(let t of a)t.length>0&&i.enqueue(nt(t,e))},async flush(e){r.length>0&&await f(e)}})}const Pr=1e8;function Fr(){return new TransformStream({transform(e,t){if(e.length===0)return;if(e.length>Pr){t.error(new C(`Byte-stream chunk of ${e.length} bytes exceeds the maximum framed chunk size (${Pr}). Split the data into smaller chunks before writing.`,{slug:`serialization-failed`}));return}let n=new Uint8Array(4+e.length);new DataView(n.buffer).setUint32(0,e.length,!1),n.set(e,4),t.enqueue(n)}})}function Ir(){let e=new Uint8Array;function t(t){let n=new Uint8Array(e.length+t.length);n.set(e,0),n.set(t,e.length),e=n}return new TransformStream({transform(n,r){for(n.length>0&&t(n);e.length>=4;){let t=new DataView(e.buffer,e.byteOffset,e.byteLength).getUint32(0,!1);if(t>Pr){r.error(new C(`Byte-stream frame length ${t} exceeds maximum (${Pr}). This usually means a non-framed byte stream is being read as framed.`,{slug:`serialization-failed`}));return}let n=4+t;if(e.length<n)break;r.enqueue(e.slice(4,n)),e=e.slice(n)}},flush(t){e.length>0&&t.error(new C(`Byte-stream ended with ${e.length} bytes of incomplete frame data. The stream was truncated mid-frame.`,{slug:`serialization-failed`}))}})}function Lr(e,t,n,r,i){(async()=>{await y(`workflow.stream.read`,e,{kind:await v(`CLIENT`),attributes:{"workflow.run.id":t,"workflow.stream.name":n,"workflow.stream.operation":`read`,"workflow.stream.read.ttfc_ms":Date.now()-e,...typeof i==`number`?{"workflow.stream.read.connect_ms":i}:{},...typeof r==`number`?{"workflow.stream.start_index":r}:{}}})})()}function Rr(e,t,n,r){(async()=>{await y(`workflow.stream.read.resolve_key`,e,{kind:await v(`CLIENT`),attributes:{"workflow.run.id":t,"workflow.stream.name":n,"workflow.stream.read.key_succeeded":r}})})()}function zr(e,t,n,r,i,a){(async()=>{await y(`workflow.stream.read.complete`,e,{kind:await v(`CLIENT`),attributes:{"workflow.run.id":t,"workflow.stream.name":n,"workflow.stream.operation":`read_complete`,"workflow.stream.read.total_ms":Date.now()-e,"workflow.stream.read.chunks":r,"workflow.stream.read.bytes":i,...typeof a==`number`?{"workflow.stream.read.reconnects":a}:{}}})})()}var Br=class extends ReadableStream{#e;constructor(e,t,n){if(typeof t!=`string`||t.length===0)throw new C(`"name" is required, got "${t}"`);let r,i=!1,a,o=0,s=0;super({type:`bytes`,pull:async c=>{let l=this.#e;if(!l){r===void 0&&(r=Date.now());let i=await f(),o=Date.now(),s=await i.streams.get(e,t,n);a=Date.now()-o,l=this.#e=s.getReader()}if(!l){c.error(Error(`Failed to get reader`));return}let u=await l.read();u.done?(this.#e=void 0,r!==void 0&&zr(r,e,t,o,s),c.close()):(!i&&u.value.byteLength>0&&r!==void 0&&(i=!0,Lr(r,e,t,n,a)),o+=1,s+=u.value.byteLength,c.enqueue(u.value))},cancel:async e=>{this.#e&&=(await this.#e.cancel(e).catch(()=>{}),void 0)}})}};const Vr=50,Hr=()=>n(`WORKFLOW_FRAMED_STREAM_MAX_RECONNECTS`,50,{integer:!0,min:1}),Ur=1e3,Wr=()=>n(`WORKFLOW_FRAMED_STREAM_MAX_TOTAL_RECONNECTS`,Ur,{integer:!0,min:1});function Gr(e,t,n,r=async()=>void 0){let i=n===void 0||n>=0,a=n??0,o=0,s=0,c=0,l,u=!1,d,p=new Uint8Array,m,h,g=!1,_=0,ee=0,te=!1;function v(){if(te)return;te=!0;let n=Date.now();r().then(r=>{r&&Rr(n,e,t,!0)},()=>Rr(n,e,t,!1))}async function ne(){if(u)return!1;let r=await f();if(u)return!1;let s=i?a+o:n,c=Date.now(),p=await r.streams.get(e,t,s);return u?(await p.cancel(d).catch(()=>{}),!1):(h===void 0&&(h=Date.now()-c),l=p.getReader(),!0)}async function re(){try{let n=await(await f()).streams.getInfo(e,t);return n.done&&a+o>n.tailIndex}catch{return!0}}async function y(){if(u||(l&&=(await l.cancel().catch(()=>{}),void 0),u))return!1;a+=o,o=0,p=new Uint8Array;let e=Hr(),n=Wr();for(;;){if(s++,c++,s>e)throw new pe(`Stream "${t}" exceeded maximum reconnection attempts (${e})`);if(c>n)throw new pe(`Stream "${t}" exceeded maximum total reconnection attempts (${n})`);try{return!!await ne()}catch(e){if(u)return!1;if(be.is(e))throw e}}}return new ReadableStream({pull:async r=>{if(!u)for(m===void 0&&(m=Date.now()),v();;){if(!l)try{if(!await ne())return}catch(e){if(u)return;r.error(e);return}let a;try{a=await l.read()}catch(e){if(u)return;if(!i){r.error(e);return}try{if(!await y())return}catch(e){r.error(e);return}continue}if(u)return;if(a.done||!a.value){l=void 0;let n=!i||await re();if(u)return;if(!n){try{if(!await y())return}catch(e){r.error(e);return}continue}m!==void 0&&zr(m,e,t,_,ee,c),r.close();return}let d=a.value;if(d.length>0){let e=new Uint8Array(p.length+d.length);e.set(p,0),e.set(d,p.length),p=e}let f=!1;for(;p.length>=4;){let i=4+new DataView(p.buffer,p.byteOffset,p.byteLength).getUint32(0,!1);if(p.length<i)break;r.enqueue(p.slice(0,i)),p=p.slice(i),o++,_++,ee+=i,!g&&m!==void 0&&(g=!0,Lr(m,e,t,n,h)),f=!0}if(f){s=0;return}}},cancel:async e=>{u=!0,d=e;let t=l;l=void 0,t&&await t.cancel(e).catch(e=>{console.warn(`Error closing ReadableStream reader:`,e)})}})}const Kr=()=>{let e=n(`WORKFLOW_STREAM_FLUSH_INTERVAL_MS`,NaN,{integer:!0});return Number.isNaN(e)?void 0:e};function qr(e,t,n,r,i,a,o){(async()=>{await y(`workflow.stream.flush`,e,{kind:await v(`CLIENT`),attributes:{"workflow.run.id":n,"workflow.stream.name":r,"workflow.stream.operation":`flush`,"workflow.stream.flush.buffer_dwell_ms":t-e,"workflow.stream.flush.chunks":i,"workflow.stream.flush.bytes":a,"workflow.stream.write.chunk_rtt":o}})})()}function Jr(e,t,n){(async()=>{await y(`workflow.stream.close`,e,{kind:await v(`CLIENT`),attributes:{"workflow.run.id":t,"workflow.stream.name":n,"workflow.stream.operation":`close`,"workflow.stream.close.rpc_ms":Date.now()-e}})})()}var Yr=class extends WritableStream{constructor(e,t,n){if(typeof e!=`string`)throw new C(`"runId" must be a string, got "${typeof e}"`);if(typeof t!=`string`||t.length===0)throw new C(`"name" is required, got "${t}"`);let r=f(),i=n,a=async()=>{if(i){try{await i}catch{}i=void 0}},o=`wrtr_${Or()}`,s=a().then(async()=>(await r).streams.createWriteSession?.(e,t,{writerId:o})),c=0,l=[],u=0,d=0,p=0,m=null,h=null,g,_=Kr(),ee=null,te=xt(),v=St(),ne=bt(),re=Ct(),y,ie=[],ae=[],oe=e=>{let t=[...ie,...ae];ie=[],ae=[];for(let n of t)n.reject(e)},se=()=>{let e=0,t=0;for(let n of l){if(e>=te||e>0&&t+n.byteLength>v)break;e++,t+=n.byteLength}let n=l.slice(0,e);return l=l.slice(e),u-=t,{group:n,bytes:t}},ce=async(n,i,o)=>{await a();let l=await r,u=await s,d=Date.now();if(u)await u.write(c,n);else if(typeof l.streams.writeMulti==`function`&&n.length>1)await l.streams.writeMulti(e,t,n);else for(let r of n)await l.streams.write(e,t,r);c+=n.length,o!==void 0&&qr(o,d,e,t,n.length,i,Date.now()-d)},le=async()=>{for(;l.length>0;){m&&=(clearTimeout(m),null);let e=y,t=Date.now(),{group:n,bytes:r}=se();d=n.length,p=r,y=l.length>0?t:void 0;try{await ce(n,r,e),d=0,p=0}catch(t){throw l=n.concat(l),u+=r,d=0,p=0,y=e!==void 0&&y!==void 0?Math.min(e,y):e??y,t}let i=ie;ie=[];for(let e of i)e.resolve()}},b=()=>{h||g!==void 0||l.length===0||(h=le().then(()=>{if(h=null,l.length>0){b();return}let e=ae;ae=[];for(let t of e)t.resolve()},e=>{h=null,g??=e,oe(g)}))},ue=()=>{if(!(m||h)){if(_===void 0){ee??=Promise.resolve(r).then(e=>{_=e.streamFlushIntervalMs??0},()=>{_=0}).then(()=>{l.length>0&&ue()});return}if(_<=0){b();return}m=setTimeout(()=>{m=null,b()},_)}},x=async()=>{for(;;){if(g!==void 0)throw g;if(l.length===0&&!h)return;b(),await new Promise((e,t)=>{ae.push({resolve:e,reject:t})})}};super({async write(e){if(g!==void 0)throw g;for(y===void 0&&(y=Date.now()),l.push(e),u+=e.byteLength,l.length>=te||u>=v?b():ue();g===void 0&&(l.length+d>=ne||u+p>=re);)b(),await new Promise((e,t)=>{ie.push({resolve:e,reject:t})});if(g!==void 0)throw g},async close(){await x(),await a();let n=await r,i=await s,o=Date.now();i?await i.close():await n.streams.close(e,t),Jr(o,e,t)},async abort(e){try{await x()}catch{}m&&=(clearTimeout(m),null),l=[],u=0,g??=e??Error(`Stream aborted`),oe(g),await(await s.catch(()=>void 0))?.dispose?.()}}),Object.defineProperty(this,mt,{value:x,enumerable:!1,writable:!1})}};function Xr(e=globalThis){let t=Se(()=>ti(e,`Request`)),n=Se(()=>ti(e,`Response`));return{...jn(),...Bn(),...Rn(e),Request:e=>{if(!W(e,t.value))return!1;let n={method:U(e,`method`),url:U(e,`url`),headers:U(e,`headers`),body:U(e,`body`),duplex:U(e,`duplex`)},r=U(e,gt);r&&(n.responseWritable=r);let i=U(e,`signal`);return i&&(U(i,`aborted`)||U(i,N))&&(n.signal=i),n},Response:e=>W(e,n.value)?{type:U(e,`type`),url:U(e,`url`),status:U(e,`status`),statusText:U(e,`statusText`),headers:U(e,`headers`),body:U(e,`body`),redirected:U(e,`redirected`)}:!1}}function Zr(e,t,n,r,i,a){let o=t[N],s=t[P];if(!o){let e=(n[dt]||Or)();o=_r(e),s=`abrt_${e}`,t[N]=o,t[P]=s,t.signal&&(t.signal[N]=o,t.signal[P]=s)}return $r(e,o,i,a,r),{streamName:o,hookToken:s,aborted:e.aborted,reason:e.aborted?e.reason:void 0}}function Qr(e,t){let n=t[N]??t.signal?.[N],r=t[P]??t.signal?.[P];if(!n)throw Error(`AbortController/AbortSignal stream name is not set`);return{streamName:n,hookToken:r,aborted:e.aborted,reason:e.aborted?e.reason:void 0}}function $r(e,t,n,r,i){e.aborted||e[vt]||(e[vt]=!0,e.addEventListener(`abort`,()=>{i.push((async()=>{try{let i=await p(r),a=await ki({aborted:!0,reason:e.reason},n,i),o=new Yr(n,t).getWriter();await o.write(a),await o.close()}catch{}})())},{once:!0}))}function ei(e=globalThis,t,n,r,i=!1,a,o=t){return{...Xr(e),ReadableStream:s=>{if(!(s instanceof e.ReadableStream))return!1;if(s.locked)throw new w(`ReadableStream is locked and cannot be passed across a workflow boundary.`,{hint:`Pass the stream before calling .getReader() / .pipeThrough() / .pipeTo(), or tee it with .tee() and pass one of the branches.`});let c=`strm_${(e[dt]||Or)()}`,l=kr(s),u=new Yr(n,c,a);l===`bytes`?i?t.push(s.pipeThrough(Fr()).pipeTo(u)):t.push(s.pipeTo(u)):t.push(s.pipeThrough(Mr(ei(e,t,n,r,i,a,o),r)).pipeTo(u));let d={name:c};return l&&(d.type=l),l===`bytes`&&i&&(d.framing=`framed-v1`),d},WritableStream:t=>{if(!(t instanceof e.WritableStream))return!1;let r=t[k],i=t[A];if(typeof r==`string`&&typeof i==`string`){let e={name:r,runId:i},n=t[M];typeof n==`string`&&(e.encryptionPublicKey=n);let a=t[j];return typeof a==`string`&&(e.deploymentId=a),e}let a=`strm_${(e[dt]||Or)()}`,s=new Br(n,a);return o.push(s.pipeTo(t)),{name:a}},AbortController:i=>!e.AbortController||typeof e.AbortController!=`function`||!(i instanceof e.AbortController)?!1:Zr(i.signal,i,e,t,n,r),AbortSignal:i=>!e.AbortSignal||typeof e.AbortSignal!=`function`||!(i instanceof e.AbortSignal)?!1:Zr(i,i,e,t,n,r)}}function ti(e,t){let n=U(e,t)??U(globalThis,t);if(typeof n==`function`)return U(n,`prototype`)}function ni(e=globalThis){let t=Se(()=>ti(e,`ReadableStream`)),n=Se(()=>ti(e,`WritableStream`)),r=Se(()=>ti(e,`AbortController`)),i=Se(()=>ti(e,`AbortSignal`));return{...Xr(e),ReadableStream:e=>{if(!W(e,t.value))return!1;let n=U(e,ht);if(n!==void 0)return{bodyInit:n};let r=U(e,k);if(!r)throw new C("ReadableStream `name` is not set");let i={name:r},a=U(e,ft);a&&(i.type=a);let o=U(e,pt);return o&&(i.framing=o),i},WritableStream:e=>{if(!W(e,n.value))return!1;let t=U(e,k);if(!t)throw new C("WritableStream `name` is not set");let r={name:t},i=U(e,A);typeof i==`string`&&(r.runId=i);let a=U(e,j);typeof a==`string`&&(r.deploymentId=a);let o=U(e,M);return typeof o==`string`&&(r.encryptionPublicKey=o),r},AbortController:e=>{if(typeof e!=`object`||!e)return!1;let t=e,n=U(e,N),i=W(e,r.value);if(n===void 0&&!i){let t=U(e,`signal`);if(typeof t!=`object`||!t||U(t,N)===void 0)return!1}let a=U(e,`signal`);return a?Qr(a,t):!1},AbortSignal:e=>{if(typeof e!=`object`||!e)return!1;let t=U(e,N)!==void 0,n=W(e,i.value);return!t&&!n?!1:Qr(e,e)}}}function ri(e=globalThis,t,n,r,i=!1,a,o=t){return{...Xr(e),ReadableStream:s=>{if(!(s instanceof e.ReadableStream))return!1;if(s.locked)throw new w(`ReadableStream is locked and cannot be passed across a workflow boundary.`,{hint:`Pass the stream before calling .getReader() / .pipeThrough() / .pipeTo(), or tee it with .tee() and pass one of the branches.`});let c=s[k],l=s[ft],u=s[pt];if(!c){c=`strm_${(e[dt]||Or)()}`,l=kr(s),u=l===`bytes`&&i?`framed-v1`:u;let d=new Yr(n,c,a);l===`bytes`?u===`framed-v1`?t.push(s.pipeThrough(Fr()).pipeTo(d)):t.push(s.pipeTo(d)):t.push(s.pipeThrough(Mr(ri(e,t,n,r,i,a,o),r)).pipeTo(d))}let d={name:c};return l&&(d.type=l),u&&(d.framing=u),d},WritableStream:t=>{if(!(t instanceof e.WritableStream))return!1;let i=t[k],a=t[A];i||(i=`strm_${(e[dt]||Or)()}`,o.push(new Br(n,i).pipeThrough(Nr(yi(e,o,n,r),r)).pipeTo(t)));let s={name:i};typeof a==`string`&&(s.runId=a);let c=t[M];typeof c==`string`&&(s.encryptionPublicKey=c);let l=t[j];return typeof l==`string`&&(s.deploymentId=l),s},AbortController:i=>!e.AbortController||typeof e.AbortController!=`function`||!(i instanceof e.AbortController)?!1:Zr(i.signal,i,e,t,n,r),AbortSignal:i=>!e.AbortSignal||typeof e.AbortSignal!=`function`||!(i instanceof e.AbortSignal)?!1:Zr(i,i,e,t,n,r)}}function ii(...e){let t=new WeakSet;function n(e){let t=e[yt];t&&!t.signal.aborted&&t.abort()}function r(e){if(typeof e==`object`&&e&&!t.has(e)){if(t.add(e),e instanceof AbortController){n(e),n(e.signal);return}if(e instanceof AbortSignal){n(e);return}if(Array.isArray(e)){for(let t of e)r(t);return}if(e instanceof Map){for(let t of e.values())r(t);return}if(e instanceof Set){for(let t of e)r(t);return}if(typeof Request<`u`&&e instanceof Request){r(e.signal);return}for(let t of Object.values(e))r(t)}}for(let t of e)r(t)}function ai(e,t,n,r){let i=new AbortController;return r.push((async()=>{try{let r=new Br(t,n).getReader(),a=await Promise.race([r.read(),new Promise(e=>{if(i.signal.aborted){e({value:void 0,done:!0});return}i.signal.addEventListener(`abort`,()=>e({value:void 0,done:!0}),{once:!0})})]);if(a.value&&!a.done){try{r.releaseLock()}catch{}try{let n=mr.getStore(),r=await Ai(a.value,t,n?.encryptionKey);e.abort(r?.reason)}catch{e.abort()}}else r.cancel().catch(()=>{})}catch{}})()),i}function oi(e,t,n){let r=e,i=e.signal;r[N]=t.streamName,r[P]=t.hookToken,i[N]=t.streamName,i[P]=t.hookToken,n&&(r[yt]=n,i[yt]=n)}function si(e,t){let n=e,r=t;n[N]!==void 0&&(r[N]=n[N]),n[P]!==void 0&&(r[P]=n[P]),n[yt]!==void 0&&(r[yt]=n[yt])}function ci(e,t,n){let r=new AbortController;e.aborted?(oi(r,e),r.abort(e.reason)):e.streamName?oi(r,e,ai(r,n,e.streamName,t)):oi(r,e);let i=r.abort.bind(r);return r.abort=t=>{if(r.signal.aborted)return;i(t);let n=mr.getStore();if(n&&(n.ops.push((async()=>{try{let r=await ki({aborted:!0,reason:t},n.workflowMetadata.workflowRunId,n.encryptionKey),i=new Yr(n.workflowMetadata.workflowRunId,e.streamName).getWriter();await i.write(r),await i.close()}catch{}})()),e.hookToken)){let r=(async()=>{try{let{resumeHook:n}=await import(`./resume-hook-QS_cMwHn.js`).then(e=>e.i);await n(e.hookToken,{aborted:!0,reason:t})}catch{}})();n.preCompletionOps.push(r)}},r}function li(e,t,n){let r=new AbortController;return e.aborted?(oi(r,e),r.abort(e.reason)):e.streamName?oi(r,e,ai(r,n,e.streamName,t)):oi(r,e),r.signal}function ui(e=globalThis){return{...Mn(e),...zn(e)}}async function di(e,t,n){let r=ee(n);if(r)return m(r);let i=await f();if(!i.getEncryptionKeyForRun)return;let a=t?await i.getEncryptionKeyForRun(e,{deploymentId:t}):await i.getEncryptionKeyForRun(await i.runs.get(e));return a?await d(a,[`encrypt`]):void 0}function fi(e,t,n){let r;return()=>(r??=di(e,t,n),r)}function pi(e,{deploymentId:t,encryptionPublicKey:n}){typeof t==`string`&&Object.defineProperty(e,j,{value:t,writable:!1}),typeof n==`string`&&Object.defineProperty(e,M,{value:n,writable:!1})}function mi({global:e,ops:t,runId:n,name:r,key:i,deploymentId:a,encryptionPublicKey:o,runReadyBarrier:s}){let c=Mr(ei(e,t,n,i),i),l=new Yr(n,r,s),u=F();return t.push(u.promise),I(c.readable,l,u).catch(()=>{}),jt(c.writable,u),Object.defineProperty(c.writable,k,{value:r,writable:!1}),Object.defineProperty(c.writable,A,{value:n,writable:!1}),pi(c.writable,{deploymentId:a,encryptionPublicKey:o}),c.writable}function hi(e,t,n,r,i,a){return gi(o=>_i(e,t,n,a,{onReadableState:o}).ReadableStream({name:r,startIndex:i}))}function gi(e,t){let n,r,i=!1,a;return a=new ReadableStream({async pull(o){try{n||(n=e(e=>{r=e}).getReader(),r&&!i&&(i=!0,t?t(r):Mt(a,r)));let s=await n.read();s.done?o.close():o.enqueue(s.value)}catch(e){o.error(e)}},async cancel(e){await n?.cancel(e).catch(()=>{})}},{highWaterMark:0}),a}function _i(e=globalThis,t,n,r,i){function a(a,o=i?.onReadableState){if(a.type===`bytes`){let r=new Br(n,a.name,a.startIndex),i=F();t.push(i.promise);let{readable:s,writable:c}=a.framing===`framed-v1`?Ir():new e.TransformStream;return I(r,c,i).catch(()=>{}),o?o(i):Mt(s,i),s}let s,c=()=>(s??=p(r),s),l=Gr(n,a.name,a.startIndex,c),u=Nr(_i(e,t,n,c,{lazyStreams:i?.lazyStreams,liveAbortSignals:i?.liveAbortSignals}),c),d=F();return t.push(d.promise),I(l,u.writable,d).catch(()=>{}),o?o(d):Mt(u.readable,d),u.readable}function o(e){let t=new AbortController;return e.aborted&&t.abort(e.reason),t}return{...ui(e),StepFunction:()=>{throw new w(`Step functions cannot be deserialized in client context. Step functions should not be returned from workflows.`,{hint:`A step function reference reached the client. Return a serializable value (e.g. the step result) instead of the step itself.`})},WorkflowFunction:e=>Object.assign(()=>{throw new w(`Workflow functions cannot be called directly. Use start() to invoke them.`,{hint:"Wrap the workflow with `start(workflowFn, { ... })` from `workflow` to begin a run instead of invoking it like a normal function."})},{workflowId:e.workflowId}),Request:t=>{let n={method:t.method,headers:new e.Headers(t.headers),body:t.body,duplex:t.duplex};t.signal&&(n.signal=t.signal);let r=new e.Request(t.url,n);return t.signal&&si(t.signal,r.signal),r},Response:t=>new e.Response(t.body,{status:t.status,statusText:t.statusText,headers:new e.Headers(t.headers)}),ReadableStream:t=>{if(`bodyInit`in t){let n=t.bodyInit;return new e.Response(n).body}return i?.lazyStreams?gi(e=>a(t,e),i.onReadableState):a(t)},WritableStream:i=>{let a=typeof i.runId==`string`?i.runId:n,o=a===n?r:fi(a,i.deploymentId,i.encryptionPublicKey);return mi({global:e,ops:t,runId:a,name:i.name,key:o,deploymentId:i.deploymentId,encryptionPublicKey:i.encryptionPublicKey})},AbortController:e=>i?.liveAbortSignals===!1?o(e):ci(e,t,n),AbortSignal:e=>i?.liveAbortSignals===!1?o(e).signal:li(e,t,n)}}function vi(e=globalThis){return{...ui(e),...Vn(e),Request:t=>{Object.setPrototypeOf(t,e.Request.prototype);let n=t.responseWritable;return n&&(t[gt]=n,delete t.responseWritable,t.respondWith=()=>{throw new w("`respondWith()` must be called from within a step function.",{hint:'Move the `respondWith(...)` call inside a `"use step"` function — it cannot be invoked from a workflow context.'})}),t},WorkflowFunction:e=>Object.assign(()=>{throw new w(`Workflow functions cannot be called directly. Use start() to invoke them.`,{hint:"Wrap the workflow with `start(workflowFn, { ... })` from `workflow` to begin a run instead of invoking it like a normal function."})},{workflowId:e.workflowId}),Response:t=>(Object.setPrototypeOf(t,e.Response.prototype),t),ReadableStream:t=>`bodyInit`in t?Object.create(e.ReadableStream.prototype,{[ht]:{value:t.bodyInit,writable:!1}}):Object.create(e.ReadableStream.prototype,{[k]:{value:t.name,writable:!1},[ft]:{value:t.type,writable:!1},[pt]:{value:t.framing,writable:!1}}),WritableStream:t=>{let n={[k]:{value:t.name,writable:!1}};return typeof t.runId==`string`&&(n[A]={value:t.runId,writable:!1}),typeof t.deploymentId==`string`&&(n[j]={value:t.deploymentId,writable:!1}),typeof t.encryptionPublicKey==`string`&&(n[M]={value:t.encryptionPublicKey,writable:!1}),Object.create(e.WritableStream.prototype,n)},AbortController:e=>{let t=new Tr(e.streamName,e.hookToken);return e.aborted&&t._setAborted(e.reason),{[N]:e.streamName,[P]:e.hookToken,signal:t,abort:()=>{}}},AbortSignal:e=>{let t=new Tr(e.streamName,e.hookToken);return e.aborted&&t._setAborted(e.reason),t}}}function yi(e=globalThis,t,n,r,i,o){return{...ui(e),StepFunction:e=>{let t=e.stepId,n=e.closureVars,r=`boundThis`in e,i=r?e.boundThis:void 0,a=Array.isArray(e.boundArgs)?e.boundArgs:[],o=we(t);if(!o)throw new w(`Step function "${t}" not found. Make sure the step function is registered.`,{hint:`Make sure the step file is included in your build (i.e. it is listed in the workflow manifest), and that the SWC plugin is configured for the file.`});if(!n&&!r&&a.length===0)return o;let s=function(...e){let t=r?i:this,s=a.length>0?[...a,...e]:e;if(n){let e=mr.getStore();if(!e)throw new C(`Cannot call step function with closure variables outside step context`);let r={...e,closureVars:n};return mr.run(r,()=>o.apply(t,s))}return o.apply(t,s)};return Object.defineProperty(s,"name",{value:o.name}),Object.defineProperty(s,"stepId",{value:t,writable:!1,enumerable:!1,configurable:!1}),o.maxRetries!==void 0&&(s.maxRetries=o.maxRetries),s},WorkflowFunction:e=>Object.assign(()=>{throw new w(`Workflow functions cannot be called directly. Use start() to invoke them.`,{hint:"Wrap the workflow with `start(workflowFn, { ... })` from `workflow` to begin a run instead of invoking it like a normal function."})},{workflowId:e.workflowId}),Request:t=>{let n=t.responseWritable,r={method:t.method,headers:new e.Headers(t.headers),body:t.body,duplex:t.duplex};t.signal&&(r.signal=t.signal);let i=new e.Request(t.url,r);return t.signal&&si(t.signal,i.signal),n&&(i.respondWith=async e=>{let t=n.getWriter();await t.write(e),await t.close()}),i},Response:t=>new e.Response(t.body,{status:t.status,statusText:t.statusText,headers:new e.Headers(t.headers)}),ReadableStream:a=>{if(`bodyInit`in a){let t=a.bodyInit;return new e.Response(t).body}let o=new Br(n,a.name);if(a.type===`bytes`){let n=F();t.push(n.promise);let{readable:r,writable:i}=a.framing===`framed-v1`?Ir():new e.TransformStream;return I(o,i,n).catch(()=>{}),Mt(r,n),r}{let a=Nr(yi(e,t,n,r,i),r),s=F();return t.push(s.promise),I(o,a.writable,s).catch(()=>{}),Mt(a.readable,s),a.readable}},WritableStream:s=>{let c=typeof s.runId==`string`?s.runId:n,l=typeof s.deploymentId==`string`?s.deploymentId:c===n?i:void 0,u=c===n?r:fi(c,l,s.encryptionPublicKey),d=Mr(ri(e,t,c,u),u),f=new Yr(c,s.name),p=F();p.deferReleaseSettlement=o!==void 0,o?.push(p),t.push(p.promise),I(d.readable,f,p).catch(()=>{});let m=At(d.writable,p,e.WritableStream);return jt(m,p),Object.defineProperty(m,k,{value:s.name,writable:!1}),Object.defineProperty(m,A,{value:c,writable:!1}),l&&Object.defineProperty(m,j,{value:l,writable:!1}),typeof s.encryptionPublicKey!=`string`&&c===n&&a(r)&&Object.defineProperty(m,M,{value:_(r.keyPair.publicKey),writable:!1}),typeof s.encryptionPublicKey==`string`&&Object.defineProperty(m,M,{value:s.encryptionPublicKey,writable:!1}),m},AbortController:e=>ci(e,t,n),AbortSignal:e=>li(e,t,n)}}async function bi(e,t){return await oe(e,t)}async function xi(e,t){return o(e,t)}const Si=async(e,t)=>{let n={},r=await or(await o(e,t),n);return await $(n,`deserialize`),{data:r}};function Ci(e,t=globalThis,n={}){return fr(e.data,{global:t,extraRevivers:{...zi(vi(t)),...n}})}function wi(e,t=globalThis,n={}){let{data:r}=e;if(!(r instanceof Uint8Array))return rt(r,{...vi(t),...n});let{format:i,payload:a}=c(r);if(i===S.DEVALUE_V1)return nt(new TextDecoder().decode(a),{...vi(t),...n});throw Error(`Unsupported serialization format: ${i}`)}async function Ti(e,t,n,r=[],i=globalThis,a=!1,o=!1,s=!1,c=r){if(a)return Pn(O(e,ei(i,r,t,n,o,void 0,c)));try{let a={},l=await cr(e,n,{global:i,extraReducers:Ri(ei(i,r,t,n,o,void 0,c)),compression:s,compressionStats:a});return await $(a,`serialize`),l}catch(e){let t=Ar(e),{message:n,hint:r}=Z(`workflow arguments`,t);throw new w(n,{hint:r,cause:t})}}async function Ei(e,t,n,r=globalThis,i={},a){return Ci(a??await Si(e,n),r,i)}async function Di(e,t,n,r=globalThis,i=!1,a=!1,o){if(i)return Pn(O(e,ni(r)));try{let t={},i=o??{executions:[]},s=await ur(e,n,{global:r,extraReducers:Ri(ni(r)),compression:a,compressionStats:t,guestCodeStats:i});return await $(t,`serialize`),await jr(i),s}catch(e){let t=Ar(e),{message:n,hint:r}=Z(`workflow return value`,t);throw new w(n,{hint:r,cause:t})}}async function Oi(e,t,n,r=[],i=globalThis,a={}){let o={},s=await lr(e,n,{global:i,extraRevivers:{...zi(_i(i,r,t,n)),...a},compressionStats:o});return await $(o,`deserialize`),s}async function ki(e,t,n,r=globalThis,i=!1,a=!1,o){if(i)return Pn(O(e,ni(r)));try{let t={},i=o??{executions:[]},s=await ur(e,n,{global:r,extraReducers:Ri(ni(r)),compression:a,compressionStats:t,guestCodeStats:i});return await $(t,`serialize`),await jr(i),s}catch(e){let t=Ar(e),{message:n,hint:r}=Z(`step arguments`,t);throw new w(n,{hint:r,cause:t})}}async function Ai(e,t,n,r=[],i=globalThis,a={},o,s){let c={},l=await dr(e,n,{global:i,extraRevivers:{...zi(yi(i,r,t,n,o,s)),...a},compressionStats:c});return await $(c,`deserialize`),l}async function ji(e,t,n,r=[],i=globalThis,a=!1,o=!1,s=!1,c,l=r){if(a)return Pn(O(e,ri(i,r,t,n,o,c,l)));try{let a={},u=await ur(e,n,{global:i,extraReducers:Ri(ri(i,r,t,n,o,c,l)),compression:s,compressionStats:a});return await $(a,`serialize`),u}catch(e){let t=Ar(e),{message:n,hint:r}=Z(`step return value`,t);throw new w(n,{hint:r,cause:t})}}async function Mi(e,t,n,r=[],i=globalThis,a=!1){try{let o=O(e,ri(i,r,t,n)),s=new TextEncoder().encode(o),c=u(S.DEVALUE_V1,s),l={},d=await bi(await ar(c,a,l),n);return await $(l,`serialize`),d}catch(e){let t=Ar(e),{message:n,hint:r}=Z(`step error`,t);throw new w(n,{hint:r,cause:t})}}async function Ni(e,t,n,r=globalThis,i={},a){return wi(a??await Si(e,n),r,i)}async function Pi(e,t,n,r=globalThis,i=!1){try{let t=O(e,ni(r)),a=new TextEncoder().encode(t),o=u(S.DEVALUE_V1,a),s={},c=await bi(await ar(o,i,s),n);return await $(s,`serialize`),c}catch(e){let t=Ar(e),{message:n,hint:r}=Z(`run error`,t);throw new w(n,{hint:r,cause:t})}}async function Fi(e,t,n,r=[],i=globalThis,a={}){let s={},l=await or(await o(e,n),s);if(await $(s,`deserialize`),!(l instanceof Uint8Array))return rt(l,{..._i(i,r,t,n),...a});let{format:u,payload:d}=c(l);if(u===S.DEVALUE_V1)return nt(new TextDecoder().decode(d),{..._i(i,r,t,n),...a});throw Error(`Unsupported serialization format: ${u}`)}async function Ii(e,t,n,r=globalThis,i={},a){return Ci(a??await Si(e,n),r,i)}const Li=[`ReadableStream`,`WritableStream`,`Request`,`Response`,`StepFunction`,`AbortController`,`AbortSignal`];function Ri(e){let t={};for(let n of Li)n in e&&(t[n]=e[n]);return t}function zi(e){let t={};for(let n of Li)n in e&&(t[n]=e[n]);return t}export{Tn as $,Ni as A,Q as B,hi as C,vi as D,ni as E,bi as F,mr as G,hr as H,Si as I,or as J,Z as K,pi as L,Ei as M,Oi as N,Fi as O,xi as P,En as Q,Dr as R,di as S,kr as T,vr as U,wr as V,gr as W,kn as X,On as Y,An as Z,Ir as _,ii as a,ht as at,ei as b,Pi as c,j as ct,ji as d,gt as dt,Lt as et,Ti as f,ct as ft,Fr as g,ot as gt,wi as h,lt as ht,Yr as i,At as it,Ii as j,Ai as k,ki as l,M as lt,Ci as m,st as mt,Ur as n,I as nt,mi as o,dt as ot,Di as p,ut as pt,ar as q,Br as r,jt as rt,Gr as s,k as st,Vr as t,F as tt,Mi as u,A as ut,ui as v,Mr as w,_i as x,Nr as y,Er as z};
@@ -1 +0,0 @@
1
- import{ht as e}from"./serialization-CJ265vSe.js";import{i as t}from"./attribute-changes-DzJovO_f.js";async function n(r){let i=globalThis[e];return i||t(`sleep()`,`https://workflow-sdk.dev/docs/api-reference/workflow/sleep`,n),i(r)}export{n as t};