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,5 +1,5 @@
1
- import{a as e,s as t,t as n}from"../../_chunks/workflow/rolldown-runtime-B_knIduE.js";import{K as r,Q as i,S as a,a as o,ct as s,dt as c,ft as l,lt as u,mt as d,tt as f,ut as p,w as m,x as h,z as g}from"../../_chunks/workflow/dist-BQSf8Hax.js";import{$ as _,$t as v,At as y,B as b,Bt as x,C as S,Ct as C,Dt as w,E as T,Et as E,F as D,Ft as O,Gt as k,Ht as A,I as j,It as ee,J as M,Jn as te,Jt as N,K as P,Kt as ne,Lt as F,Mt as I,Nt as L,Ot as re,P as R,Pt as ie,Q as ae,Qt as oe,R as se,Rt as z,St as ce,T as le,Tt as B,U as V,Ut as ue,V as de,Vt as fe,W as pe,Wt as me,X as he,Xn as ge,Y as _e,Yn as ve,Yt as ye,Z as H,Zn as U,Zt as be,_n as xe,_t as Se,a as Ce,an as we,b as Te,bn as Ee,bt as De,c as Oe,cn as ke,d as Ae,dn as je,en as Me,et as Ne,f as Pe,fn as Fe,g as Ie,gn as Le,gt as Re,hn as ze,i as Be,in as Ve,it as He,j as Ue,jt as We,k as Ge,kt as Ke,ln as qe,mn as Je,n as W,nn as Ye,nt as Xe,o as Ze,on as Qe,p as $e,pn as et,q as tt,qn as nt,qt as rt,r as it,rn as at,rt as ot,s as st,sn as ct,tn as lt,tt as ut,u as dt,un as ft,v as pt,vn as mt,vt as ht,w as gt,wt as _t,x as vt,xn as yt,xt as bt,y as G,yn as xt,yt as St,z as Ct,zt as wt}from"../../_chunks/workflow/logger-BCEj9caG.js";import{A as K,C as Tt,D as Et,F as Dt,M as q,N as Ot,P as kt,T as At,a as jt,b as Mt,c as Nt,d as Pt,f as J,h as Ft,i as Y,j as It,l as Lt,n as Rt,o as zt,r as X,s as Bt,t as Vt,u as Ht,y as Ut}from"../../_chunks/workflow/dist-BfMqXLK3.js";import{i as Wt,n as Gt,r as Kt,t as Z}from"../../_chunks/workflow/global-BQnKzRXo.js";import{a as qt,n as Jt}from"../../_chunks/workflow/workflow-routes-CwqB063q.js";import{A as Yt,B as Q,G as Xt,H as Zt,I as Qt,K as $t,M as en,O as tn,Q as nn,R as rn,U as an,V as on,W as sn,Y as cn,Z as ln,a as un,at as dn,c as fn,d as pn,et as mn,ft as hn,gt as gn,ht as _n,j as vn,k as yn,l as bn,mt as xn,ot as Sn,p as Cn,pt as wn,u as Tn,x as En,z as Dn}from"../../_chunks/workflow/serialization-CJ265vSe.js";import{awaitEarlierDeliveries as On,getStepFunction as kn,isDeliveryIdle as An,registerDeliveryBarrier as jn,scheduleWorkflowSuspension as Mn}from"./private.js";import{C as Nn,E as Pn,S as Fn,T as In,_ as Ln,b as Rn,c as zn,d as Bn,f as Vn,g as Hn,l as Un,m as Wn,n as Gn,o as Kn,p as qn,r as Jn,s as Yn,u as Xn,v as Zn,w as Qn,x as $n,y as er}from"../../_chunks/workflow/helpers-CNMO7zB1.js";import{d as tr,l as nr,n as rr,s as ir,u as ar}from"../../_chunks/workflow/attribute-changes-DzJovO_f.js";import{t as or}from"../../_chunks/workflow/wait-until-Bo2U6ON9.js";import{a as sr,n as cr,o as lr,r as ur,s as dr,t as fr}from"../../_chunks/workflow/resume-hook-QS_cMwHn.js";import{a as pr,c as mr,d as hr,f as gr,i as _r,l as vr,m as yr,n as br,o as xr,p as Sr,r as Cr,s as wr,t as Tr,u as Er}from"../../_chunks/workflow/run-CA5wWV2S.js";import{t as Dr}from"../../_chunks/workflow/run-id-Ct9AjQDR.js";import{createRequire as Or}from"node:module";import{createHash as kr}from"node:crypto";import{types as Ar}from"node:util";import jr from"node:assert/strict";import{pathToFileURL as Mr}from"node:url";import{Script as Nr,createContext as Pr,runInContext as Fr}from"node:vm";function Ir(e=process.env){return e.WORKFLOW_TARGET_WORLD||(e.VERCEL_DEPLOYMENT_ID?`vercel`:`local`)}function Lr(e){return e===`vercel`||e===`@workflow/world-vercel`}var Rr=t(kt(),1);function zr(e){return e instanceof ar||e instanceof nr||e instanceof tr||e instanceof rr}const Br=`The workflow event log contains orphaned or mismatched events and cannot be replayed. This is an internal workflow SDK error; please report it with the runId.`;function Vr(e,t){let n=t??gr(e);return Ft.is(e)?{attribution:`user`,errorCode:n,hint:`A value passed across a workflow/step boundary could not be serialized. See the error message for the offending path and the Learn More link for details.`}:zr(e)?{attribution:`user`,errorCode:n,hint:`A workflow-only or step-only API was called from the wrong context. The error message includes the exact API and how to move the call.`}:Vt.is(e)?{attribution:`sdk`,errorCode:n,hint:Br}:n===q.DEPLOYMENT_MISMATCH?{attribution:`sdk`,errorCode:n,hint:`The run was delivered to a deployment other than the deployment it is pinned to, and was stopped to protect against code-skew errors after the runtime failed to re-route it there. Verify that the run's deployment is still available and that queue callbacks route to it.`}:e instanceof K?{attribution:`sdk`,errorCode:n,hint:`This is an internal workflow SDK error, not a bug in your code. If it keeps happening, please report it with the stack trace and the runId.`}:n===q.REPLAY_TIMEOUT?{attribution:`sdk`,errorCode:n,hint:'The workflow replay between step boundaries took too long. This bounds workflow-VM and event-log replay time only — step bodies (`"use step"` functions) are excluded. This usually means the event log is unusually large or the workflow function is doing heavy synchronous work in workflow code outside of step bodies. Override the default budget via the WORKFLOW_REPLAY_TIMEOUT_MS env var if needed.'}:n===q.MAX_DELIVERIES_EXCEEDED?{attribution:`sdk`,errorCode:n,hint:`The workflow queue exceeded its max-delivery budget. This usually indicates a persistent runtime failure — check the most recent stack traces for the underlying cause.`}:n===q.MAX_EVENTS_EXCEEDED?{attribution:`user`,errorCode:n,hint:`The workflow exceeded the maximum number of events per run. This usually means unbounded work in the workflow function — e.g. a loop that keeps creating steps without terminating. Break long-running workflows into child workflows to stay under the limit.`}:n===q.CORRUPTED_EVENT_LOG?{attribution:`sdk`,errorCode:n,hint:Br}:n===q.STREAM_ERROR?{attribution:`sdk`,errorCode:n,hint:`Workflow stream infrastructure failed while reading or writing data. This is an SDK or backend failure, not an error in your workflow code; please retry the run and report persistent failures with the runId.`}:n===q.WORLD_CONTRACT_ERROR?{attribution:`sdk`,errorCode:n,hint:`The workflow backend returned data that violated the SDK contract. This is not retryable; please report it with the stack trace and runId.`}:{attribution:`user`,errorCode:n}}function Hr(e){if(e===null)return!0;let t=typeof e;return t!==`object`&&t!==`function`}var Ur=class{preparer;preparedPayloads=new Map;primitiveStepResults=new Map;encryptionKey;nextUnscannedEventIndex=0;constructor(e,t=Qt){this.preparer=t,this.encryptionKey=Promise.resolve(e)}prepareEvent(e){this.prepareEventIfMissing(e)?.catch(()=>{})}async prewarm(e,t){let n=[],r=this.startPreparation(this.workflowInputKey(e.runId),e.input);r&&n.push(r);for(let e=this.nextUnscannedEventIndex;e<t.length;e++){let r=t[e],i=this.prepareEventIfMissing(r);i&&n.push(i)}this.nextUnscannedEventIndex=t.length,await Promise.allSettled(n)}resetScan(){this.nextUnscannedEventIndex=0}prepareWorkflowInput(e){return this.consumePreparation(this.workflowInputKey(e.runId),e.input)}prepareEventPayload(e,t,n){return this.consumePreparation(this.eventPayloadKey(e,t),n)}async getStepResult(e,t){if(this.primitiveStepResults.has(e))return this.primitiveStepResults.get(e);let n=await t();return Hr(n)&&this.primitiveStepResults.set(e,n),n}consumePreparation(e,t){if(!(t instanceof Uint8Array))return this.runPreparation(t);let n=this.ensurePreparation(e,t);return n.catch(()=>{this.preparedPayloads.get(e)===n&&this.preparedPayloads.delete(e)}),n}ensurePreparation(e,t){let n=this.preparedPayloads.get(e);if(n)return n;let r=this.runPreparation(t);return this.preparedPayloads.set(e,r),r}async runPreparation(e){return this.preparer(e,await this.encryptionKey)}prepareEventIfMissing(e){let t,n;switch(e.eventType){case`run_created`:return this.startPreparation(this.workflowInputKey(e.runId),e.eventData.input);case`run_started`:return this.startPreparation(this.workflowInputKey(e.runId),e.eventData?.input);case`step_completed`:t=`result`,n=e.eventData?.result;break;case`step_failed`:t=`error`,n=e.eventData?.error;break;case`hook_received`:t=`payload`,n=e.eventData?.payload;break;default:return}return this.startPreparation(this.eventPayloadKey(e.eventId,t),n)}startPreparation(e,t){if(t instanceof Uint8Array&&!this.preparedPayloads.has(e))return this.ensurePreparation(e,t)}workflowInputKey(e){return`run:${e}:input`}eventPayloadKey(e,t){return`event:${e}:${t}`}};const Wr=`cinst_${c()}`;function Gr(){return l(`WORKFLOW_MAX_QUEUE_DELIVERIES`,48,{integer:!0,min:1,max:48})}const Kr=24e4,qr=3e4,Jr=78e4,Yr=d(`@workflow/core//envWarnings`,1,()=>({replayTimeoutValues:new Set,maxInlineStepsValues:new Set,maxEventsValues:new Set}));function Xr(e,t,n){Yr.replayTimeoutValues.has(e)||(Yr.replayTimeoutValues.add(e),W.warn(t,n))}function Zr(){let e=process.env.WORKFLOW_REPLAY_TIMEOUT_MS;if(!e)return Kr;let t=Number(e);return!Number.isFinite(t)||t<=0?(Xr(e,`Ignoring WORKFLOW_REPLAY_TIMEOUT_MS: not a positive finite number; using default`,{raw:e,defaultMs:Kr}),Kr):t<3e4?(Xr(e,`WORKFLOW_REPLAY_TIMEOUT_MS below minimum; clamped`,{raw:e,clampedMs:qr,minMs:qr}),qr):t>78e4?(Xr(e,`WORKFLOW_REPLAY_TIMEOUT_MS above maximum; clamped`,{raw:e,clampedMs:Jr,maxMs:Jr}),Jr):t}function Qr(){return l(`WORKFLOW_REPLAY_TIMEOUT_MAX_RETRIES`,3,{integer:!0})}function $r(){let e=process.env.WORKFLOW_MAX_INLINE_STEPS;if(!e)return 3;let t=Number(e);return!Number.isInteger(t)||t<=0?(Yr.maxInlineStepsValues.has(e)||(Yr.maxInlineStepsValues.add(e),W.warn(`Ignoring WORKFLOW_MAX_INLINE_STEPS: not a positive integer; using default`,{raw:e,defaultValue:3})),3):t<1?1:t>16?(Yr.maxInlineStepsValues.has(e)||(Yr.maxInlineStepsValues.add(e),W.warn(`WORKFLOW_MAX_INLINE_STEPS above maximum; clamped`,{raw:e,clampedValue:16,maxValue:16})),16):t}function ei(){return process.env.WORKFLOW_RESILIENT_STEP_DISPATCH===`1`}function ti(){let e=process.env.WORKFLOW_BATCH_TRANSITIONS;return e===void 0||e===``||e!==`0`&&e.toLowerCase()!==`false`}function ni(){let e=process.env.WORKFLOW_MAX_EVENTS_OVERRIDE;if(!e)return;let t=Number(e);if(!Number.isInteger(t)||t<=0){Yr.maxEventsValues.has(e)||(Yr.maxEventsValues.add(e),W.warn(`Ignoring WORKFLOW_MAX_EVENTS_OVERRIDE: not a positive integer; using server limit`,{raw:e}));return}return t}function ri(){let e=process.env.WORKFLOW_OPTIMISTIC_INLINE_START;return e===void 0||e===``?!1:e===`1`||e.toLowerCase()===`true`}function ii(){let e=process.env.WORKFLOW_OPTIMISTIC_INLINE_START;return e===void 0||e===``?!1:e===`0`||e.toLowerCase()===`false`}function ai(){let e=process.env.WORKFLOW_TURBO;return e===void 0||e===``||e!==`0`&&e.toLowerCase()!==`false`}function oi(){let e=process.env.WORKFLOW_RETAINED_VM;return e===void 0||e===``||e!==`0`&&e.toLowerCase()!==`false`}function si(){let e=process.env.WORKFLOW_INLINE_OWNERSHIP;return e===void 0||e===``||e!==`0`&&e.toLowerCase()!==`false`}function ci(){return l(`WORKFLOW_INLINE_OWNERSHIP_LEASE_SECONDS`,860,{integer:!0,min:1,max:900})}function li(){return l(`WORKFLOW_REPLAY_DIVERGENCE_MAX_RETRIES`,3,{integer:!0})}function ui(){return l(`WORKFLOW_OPEN_WAIT_CLOCK_SKEW_MS`,3e4,{integer:!0})}function di(){return l(`WORKFLOW_PRECONDITION_MAX_INPROCESS_RESTARTS`,3,{integer:!0})}function fi(){return l(`WORKFLOW_PRECONDITION_MAX_REINVOCATIONS`,5,{integer:!0})}function pi(){return l(`WORKFLOW_PRECONDITION_REINVOKE_DELAY_SECONDS`,2,{integer:!0})}function mi(){return l(`WORKFLOW_DEPLOYMENT_MISMATCH_MAX_RETRIES`,3,{integer:!0,min:0})}const hi=e=>`eventData`in e&&e.eventData&&`ownerMessageId`in e.eventData&&typeof e.eventData.ownerMessageId==`string`?e.eventData.ownerMessageId:void 0;function gi(e,t,n){if(!e)return 0;let r=0,i=new Map;for(let n of e){if(n.eventType!==`step_started`||n.correlationId!==t)continue;let e=hi(n);e===void 0?r++:i.set(e,(i.get(e)??0)+1)}if(n===void 0){let e=r;for(let t of i.values())e+=t;return e}if(n.type===`ownedBy`)return i.get(n.messageId)??0;let a=0;for(let e of i.values())e>a&&(a=e);return r+a}function _i(e){return Ar.isNativeError(e)?e.name:`Error`}function vi(e){return Ar.isNativeError(e)?e.stack??``:``}function yi(e){if(typeof e!=`object`||!e)return String(e);let{name:t,message:n,code:r}=e,i=typeof t==`string`&&t?t:`Error`,a=typeof n==`string`&&n?`${i}: ${n}`:i;return typeof r==`string`&&r&&!a.includes(r)?`${a} (${r})`:a}function bi(e){let t=[],n=new Set;try{for(let r=xi(e);r!=null&&t.length<=4;r=xi(r)){if(typeof r!=`object`){t.push(String(r));break}if(n.has(r))break;n.add(r),t.push(yi(r),...Si(r))}}catch{t.push(`[unavailable cause]`)}return t.length>4?[...t.slice(0,4),`…`].join(`
1
+ import{a as e,s as t,t as n}from"../../_chunks/workflow/rolldown-runtime-B_knIduE.js";import{$ as r,B as i,C as a,S as o,T as s,a as c,dt as l,ft as u,ht as d,lt as f,nt as p,pt as m,q as h,ut as g}from"../../_chunks/workflow/dist-BUFGAKRb.js";import{$ as _,$n as v,At as y,B as b,Bt as x,C as S,Cn as C,Ct as w,Dt as T,E,En as D,Et as O,F as k,Ft as A,Ht as j,I as M,It as N,J as P,Jt as ee,K as F,Kt as I,Lt as L,Mt as R,Nt as z,Ot as te,P as ne,Pt as re,Q as ie,Qn as B,Qt as ae,R as oe,Rt as se,Sn as ce,St as le,T as ue,Tn as de,Tt as fe,U as V,V as pe,Vt as me,W as he,X as ge,Xt as _e,Y as ve,Yt as ye,Z as be,Zt as xe,_t as H,a as U,an as Se,b as Ce,bn as we,bt as Te,c as Ee,cn as De,d as Oe,dn as ke,en as Ae,er as je,et as Me,f as Ne,fn as Pe,g as Fe,gn as Ie,gt as Le,hn as Re,i as ze,in as Be,it as Ve,j as He,jt as Ue,k as We,kt as Ge,ln as Ke,mn as qe,n as W,nn as Je,nr as Ye,nt as Xe,o as Ze,on as Qe,p as $e,pn as et,q as tt,qt as nt,r as rt,rn as it,rt as at,s as ot,sn as st,tn as ct,tr as lt,tt as ut,u as dt,un as ft,v as pt,vt as mt,w as ht,wn as gt,wt as _t,x as vt,xn as yt,xt as bt,y as G,yn as xt,yt as St,z as Ct,zt as wt}from"../../_chunks/workflow/logger-D4GJNTk4.js";import{A as K,C as Tt,D as Et,F as Dt,M as q,N as Ot,P as kt,T as At,a as jt,b as Mt,c as Nt,d as Pt,f as J,h as Ft,i as Y,j as It,l as Lt,n as Rt,o as zt,r as X,s as Bt,t as Vt,u as Ht,y as Ut}from"../../_chunks/workflow/dist-CaNNONeg.js";import{i as Wt,n as Gt,r as Kt,t as Z}from"../../_chunks/workflow/global-DKbOgrts.js";import{a as qt,n as Jt}from"../../_chunks/workflow/workflow-routes-CwqB063q.js";import{A as Yt,B as Q,G as Xt,H as Zt,I as Qt,K as $t,M as en,O as tn,Q as nn,R as rn,U as an,V as on,W as sn,Y as cn,Z as ln,a as un,at as dn,c as fn,d as pn,et as mn,ft as hn,gt as gn,ht as _n,j as vn,k as yn,l as bn,mt as xn,ot as Sn,p as Cn,pt as wn,u as Tn,z as En}from"../../_chunks/workflow/serialization-CNIYl1D3.js";import{awaitEarlierDeliveries as Dn,getStepFunction as On,isDeliveryIdle as kn,registerDeliveryBarrier as An,scheduleWorkflowSuspension as jn}from"./private.js";import{C as Mn,D as Nn,E as Pn,O as Fn,S as In,T as Ln,_ as Rn,b as zn,c as Bn,d as Vn,f as Hn,g as Un,h as Wn,i as Gn,l as Kn,m as qn,p as Jn,r as Yn,s as Xn,t as Zn,u as Qn,v as $n,w as er,x as tr,y as nr}from"../../_chunks/workflow/helpers-DkKxg_yn.js";import{d as rr,l as ir,n as ar,s as or,u as sr}from"../../_chunks/workflow/attribute-changes-D721NpZv.js";import{r as cr,t as lr}from"../../_chunks/workflow/wait-until-3_1djUuL.js";import{a as ur,n as dr,o as fr,r as pr,s as mr,t as hr}from"../../_chunks/workflow/resume-hook-uTW-jBYz.js";import{a as gr,c as _r,d as vr,f as yr,i as br,l as xr,m as Sr,n as Cr,o as wr,p as Tr,r as Er,s as Dr,t as Or,u as kr}from"../../_chunks/workflow/run-5DmiMN9b.js";import{t as Ar}from"../../_chunks/workflow/run-id-Ct9AjQDR.js";import{createRequire as jr}from"node:module";import{createHash as Mr}from"node:crypto";import{types as Nr}from"node:util";import Pr from"node:assert/strict";import{pathToFileURL as Fr}from"node:url";import{Script as Ir,createContext as Lr,runInContext as Rr}from"node:vm";function zr(e=process.env){return e.WORKFLOW_TARGET_WORLD||(e.VERCEL_DEPLOYMENT_ID?`vercel`:`local`)}function Br(e){return e===`vercel`||e===`@workflow/world-vercel`}var Vr=t(kt(),1);function Hr(e){return e instanceof sr||e instanceof ir||e instanceof rr||e instanceof ar}const Ur=`The workflow event log contains orphaned or mismatched events and cannot be replayed. This is an internal workflow SDK error; please report it with the runId.`;function Wr(e,t){let n=t??yr(e);return Ft.is(e)?{attribution:`user`,errorCode:n,hint:`A value passed across a workflow/step boundary could not be serialized. See the error message for the offending path and the Learn More link for details.`}:Hr(e)?{attribution:`user`,errorCode:n,hint:`A workflow-only or step-only API was called from the wrong context. The error message includes the exact API and how to move the call.`}:Vt.is(e)?{attribution:`sdk`,errorCode:n,hint:Ur}:n===q.DEPLOYMENT_MISMATCH?{attribution:`sdk`,errorCode:n,hint:`The run was delivered to a deployment other than the deployment it is pinned to, and was stopped to protect against code-skew errors after the runtime failed to re-route it there. Verify that the run's deployment is still available and that queue callbacks route to it.`}:e instanceof K?{attribution:`sdk`,errorCode:n,hint:`This is an internal workflow SDK error, not a bug in your code. If it keeps happening, please report it with the stack trace and the runId.`}:n===q.REPLAY_TIMEOUT?{attribution:`sdk`,errorCode:n,hint:'The workflow replay between step boundaries took too long. This bounds workflow-VM and event-log replay time only — step bodies (`"use step"` functions) are excluded. This usually means the event log is unusually large or the workflow function is doing heavy synchronous work in workflow code outside of step bodies. Override the default budget via the WORKFLOW_REPLAY_TIMEOUT_MS env var if needed.'}:n===q.MAX_DELIVERIES_EXCEEDED?{attribution:`sdk`,errorCode:n,hint:`The workflow queue exceeded its max-delivery budget. This usually indicates a persistent runtime failure — check the most recent stack traces for the underlying cause.`}:n===q.MAX_EVENTS_EXCEEDED?{attribution:`user`,errorCode:n,hint:`The workflow exceeded the maximum number of events per run. This usually means unbounded work in the workflow function — e.g. a loop that keeps creating steps without terminating. Break long-running workflows into child workflows to stay under the limit.`}:n===q.CORRUPTED_EVENT_LOG?{attribution:`sdk`,errorCode:n,hint:Ur}:n===q.STREAM_ERROR?{attribution:`sdk`,errorCode:n,hint:`Workflow stream infrastructure failed while reading or writing data. This is an SDK or backend failure, not an error in your workflow code; please retry the run and report persistent failures with the runId.`}:n===q.WORLD_CONTRACT_ERROR?{attribution:`sdk`,errorCode:n,hint:`The workflow backend returned data that violated the SDK contract. This is not retryable; please report it with the stack trace and runId.`}:{attribution:`user`,errorCode:n}}function Gr(e){if(e===null)return!0;let t=typeof e;return t!==`object`&&t!==`function`}var Kr=class{preparer;preparedPayloads=new Map;primitiveStepResults=new Map;encryptionKey;nextUnscannedEventIndex=0;constructor(e,t=Qt){this.preparer=t,this.encryptionKey=Promise.resolve(e)}prepareEvent(e){this.prepareEventIfMissing(e)?.catch(()=>{})}async prewarm(e,t){let n=[],r=this.startPreparation(this.workflowInputKey(e.runId),e.input);r&&n.push(r);for(let e=this.nextUnscannedEventIndex;e<t.length;e++){let r=t[e],i=this.prepareEventIfMissing(r);i&&n.push(i)}this.nextUnscannedEventIndex=t.length,await Promise.allSettled(n)}resetScan(){this.nextUnscannedEventIndex=0}prepareWorkflowInput(e){return this.consumePreparation(this.workflowInputKey(e.runId),e.input)}prepareEventPayload(e,t,n){return this.consumePreparation(this.eventPayloadKey(e,t),n)}async getStepResult(e,t){if(this.primitiveStepResults.has(e))return this.primitiveStepResults.get(e);let n=await t();return Gr(n)&&this.primitiveStepResults.set(e,n),n}consumePreparation(e,t){if(!(t instanceof Uint8Array))return this.runPreparation(t);let n=this.ensurePreparation(e,t);return n.catch(()=>{this.preparedPayloads.get(e)===n&&this.preparedPayloads.delete(e)}),n}ensurePreparation(e,t){let n=this.preparedPayloads.get(e);if(n)return n;let r=this.runPreparation(t);return this.preparedPayloads.set(e,r),r}async runPreparation(e){return this.preparer(e,await this.encryptionKey)}prepareEventIfMissing(e){let t,n;switch(e.eventType){case`run_created`:return this.startPreparation(this.workflowInputKey(e.runId),e.eventData.input);case`run_started`:return this.startPreparation(this.workflowInputKey(e.runId),e.eventData?.input);case`step_completed`:t=`result`,n=e.eventData?.result;break;case`step_failed`:t=`error`,n=e.eventData?.error;break;case`hook_received`:t=`payload`,n=e.eventData?.payload;break;default:return}return this.startPreparation(this.eventPayloadKey(e.eventId,t),n)}startPreparation(e,t){if(t instanceof Uint8Array&&!this.preparedPayloads.has(e))return this.ensurePreparation(e,t)}workflowInputKey(e){return`run:${e}:input`}eventPayloadKey(e,t){return`event:${e}:${t}`}};const qr=`cinst_${u()}`;function Jr(){return m(`WORKFLOW_MAX_QUEUE_DELIVERIES`,48,{integer:!0,min:1,max:48})}const Yr=24e4,Xr=3e4,Zr=78e4,Qr=d(`@workflow/core//envWarnings`,1,()=>({replayTimeoutValues:new Set,maxInlineStepsValues:new Set,maxEventsValues:new Set}));function $r(e,t,n){Qr.replayTimeoutValues.has(e)||(Qr.replayTimeoutValues.add(e),W.warn(t,n))}function ei(){let e=process.env.WORKFLOW_REPLAY_TIMEOUT_MS;if(!e)return Yr;let t=Number(e);return!Number.isFinite(t)||t<=0?($r(e,`Ignoring WORKFLOW_REPLAY_TIMEOUT_MS: not a positive finite number; using default`,{raw:e,defaultMs:Yr}),Yr):t<3e4?($r(e,`WORKFLOW_REPLAY_TIMEOUT_MS below minimum; clamped`,{raw:e,clampedMs:Xr,minMs:Xr}),Xr):t>78e4?($r(e,`WORKFLOW_REPLAY_TIMEOUT_MS above maximum; clamped`,{raw:e,clampedMs:Zr,maxMs:Zr}),Zr):t}function ti(){return m(`WORKFLOW_REPLAY_TIMEOUT_MAX_RETRIES`,3,{integer:!0})}function ni(){let e=process.env.WORKFLOW_MAX_INLINE_STEPS;if(!e)return 3;let t=Number(e);return!Number.isInteger(t)||t<=0?(Qr.maxInlineStepsValues.has(e)||(Qr.maxInlineStepsValues.add(e),W.warn(`Ignoring WORKFLOW_MAX_INLINE_STEPS: not a positive integer; using default`,{raw:e,defaultValue:3})),3):t<1?1:t>16?(Qr.maxInlineStepsValues.has(e)||(Qr.maxInlineStepsValues.add(e),W.warn(`WORKFLOW_MAX_INLINE_STEPS above maximum; clamped`,{raw:e,clampedValue:16,maxValue:16})),16):t}function ri(){return process.env.WORKFLOW_RESILIENT_STEP_DISPATCH===`1`}function ii(){let e=process.env.WORKFLOW_BATCH_TRANSITIONS;return e===void 0||e===``||e!==`0`&&e.toLowerCase()!==`false`}function ai(){let e=process.env.WORKFLOW_MAX_EVENTS_OVERRIDE;if(!e)return;let t=Number(e);if(!Number.isInteger(t)||t<=0){Qr.maxEventsValues.has(e)||(Qr.maxEventsValues.add(e),W.warn(`Ignoring WORKFLOW_MAX_EVENTS_OVERRIDE: not a positive integer; using server limit`,{raw:e}));return}return t}function oi(){let e=process.env.WORKFLOW_OPTIMISTIC_INLINE_START;return e===void 0||e===``?!1:e===`1`||e.toLowerCase()===`true`}function si(){let e=process.env.WORKFLOW_OPTIMISTIC_INLINE_START;return e===void 0||e===``?!1:e===`0`||e.toLowerCase()===`false`}function ci(){let e=process.env.WORKFLOW_TURBO;return e===void 0||e===``||e!==`0`&&e.toLowerCase()!==`false`}function li(){let e=process.env.WORKFLOW_RETAINED_VM;return e===void 0||e===``||e!==`0`&&e.toLowerCase()!==`false`}function ui(){let e=process.env.WORKFLOW_INLINE_OWNERSHIP;return e===void 0||e===``||e!==`0`&&e.toLowerCase()!==`false`}function di(){return m(`WORKFLOW_INLINE_OWNERSHIP_LEASE_SECONDS`,860,{integer:!0,min:1,max:900})}function fi(){return m(`WORKFLOW_REPLAY_DIVERGENCE_MAX_RETRIES`,3,{integer:!0})}function pi(){return m(`WORKFLOW_OPEN_WAIT_CLOCK_SKEW_MS`,3e4,{integer:!0})}function mi(){return m(`WORKFLOW_PRECONDITION_MAX_INPROCESS_RESTARTS`,3,{integer:!0})}function hi(){return m(`WORKFLOW_PRECONDITION_MAX_REINVOCATIONS`,5,{integer:!0})}function gi(){return m(`WORKFLOW_PRECONDITION_REINVOKE_DELAY_SECONDS`,2,{integer:!0})}function _i(){return m(`WORKFLOW_DEPLOYMENT_MISMATCH_MAX_RETRIES`,3,{integer:!0,min:0})}const vi=e=>`eventData`in e&&e.eventData&&`ownerMessageId`in e.eventData&&typeof e.eventData.ownerMessageId==`string`?e.eventData.ownerMessageId:void 0;function yi(e,t,n){if(!e)return 0;let r=0,i=new Map;for(let n of e){if(n.eventType!==`step_started`||n.correlationId!==t)continue;let e=vi(n);e===void 0?r++:i.set(e,(i.get(e)??0)+1)}if(n===void 0){let e=r;for(let t of i.values())e+=t;return e}if(n.type===`ownedBy`)return i.get(n.messageId)??0;let a=0;for(let e of i.values())e>a&&(a=e);return r+a}function bi(e){return Nr.isNativeError(e)?e.name:`Error`}function xi(e){return Nr.isNativeError(e)?e.message:String(e)}function Si(e){return Nr.isNativeError(e)?e.stack??``:``}function Ci(e){if(typeof e!=`object`||!e)return String(e);let{name:t,message:n,code:r}=e,i=typeof t==`string`&&t?t:`Error`,a=typeof n==`string`&&n?`${i}: ${n}`:i;return typeof r==`string`&&r&&!a.includes(r)?`${a} (${r})`:a}function wi(e){let t=[],n=new Set;try{for(let r=Ti(e);r!=null&&t.length<=4;r=Ti(r)){if(typeof r!=`object`){t.push(String(r));break}if(n.has(r))break;n.add(r),t.push(Ci(r),...Ei(r))}}catch{t.push(`[unavailable cause]`)}return t.length>4?[...t.slice(0,4),`…`].join(`
2
2
  `):t.join(`
3
- `)}function xi(e){return typeof e==`object`&&e?e.cause:void 0}function Si(e){let t=e.errors;return Array.isArray(t)?t.slice(0,4).map(yi):[]}function Ci(e){return typeof e==`object`&&!!e&&`name`in e&&e.name===`AbortError`&&`message`in e&&typeof e.message==`string`&&(!(`stack`in e)||e.stack===void 0||typeof e.stack==`string`)}function wi(e){if(!Ci(e)||Y.is(e))return e;let t=new Y(`Aborted: ${e.message}`);return e.stack&&(t.stack=e.stack),t}function Ti(e){return typeof e==`object`&&!!e&&`then`in e&&typeof e.then==`function`}function Ei(e){if(Ar.isNativeError(e))return{name:e.name,message:e.message,stack:e.stack??``};if(typeof e==`string`)return{name:`Error`,message:e,stack:``};try{return{name:`Error`,message:JSON.stringify(e),stack:``}}catch{return{name:`Error`,message:String(e),stack:``}}}async function Di(e){if(Ti(e))try{let t=await Di(await e);return{...t,message:`Promise rejection: ${t.message}`}}catch(e){let t=await Di(e);return{...t,message:`Promise rejection: ${t.message}`}}return Ei(e)}const Oi=Symbol.for(`@workflow/core//lifecycleHooks`);function ki(){return Object.hasOwn(globalThis,Oi)||Object.defineProperty(globalThis,Oi,{value:[],writable:!1,enumerable:!1,configurable:!1}),globalThis[Oi]}function Ai(e,t,n,r,i){let a=ki().filter(e=>e[n]);a.length!==0&&or(G(`workflow.lifecycle.${n}`,async()=>{let o=await r();for(let r of a)try{await i(r,o)}catch(r){W.error(`Workflow lifecycle ${n} handler threw`,{workflowRunId:e,workflowName:t,errorName:_i(r),errorMessage:r instanceof Error?r.message:String(r),errorStack:vi(r)})}}),r=>{W.error(`Workflow lifecycle ${n} dispatch failed`,{workflowRunId:e,workflowName:t,errorName:_i(r),errorMessage:r instanceof Error?r.message:String(r),errorStack:vi(r)})})}function ji(e,t){Ai(e,t,`onRunCompleted`,async()=>({run:new Tr(e),workflowName:t}),(e,t)=>e.onRunCompleted?.(t))}async function Mi(e,t,n){try{let r=[];return await tn(e,t,n,r,globalThis,En(globalThis,r,t,n,{lazyStreams:!0,liveAbortSignals:!1}))}catch{return Error(`Failed to hydrate workflow run error`)}}function Ni(e,t,n,r,i){Ai(e,t,`onRunFailed`,async()=>({run:new Tr(e),workflowName:t,error:new Et(e,await Mi(n,e,r),{errorCode:i})}),(e,t)=>e.onRunFailed?.(t))}const Pi={outcome:`continue`};function Fi(e,t,n){return{outcome:e,spanAttributes:{...et(t),...me(n),...ue(e===`rerouted`)}}}async function Ii({world:e,run:t,workflowName:n,requestId:r,retryCount:i=0,reenqueue:a,isDeploymentUnavailableError:o,beforeStop:s}){if(e.capabilities?.deploymentAffinity!==!0)return Pi;let c=await e.getDeploymentId();if(t.deploymentId===c)return Pi;await s?.();let l=mi(),u={workflowRunId:t.runId,pinnedDeploymentId:t.deploymentId,actualDeploymentId:c,retryCount:i,maxRetries:l},d=async(i,a)=>{let o=new Tt(t.runId,t.deploymentId,c,{recoveryAttempts:i,cause:a});try{let i=await fn(o,t.runId,void 0,void 0,(t.specVersion??0)>=5);await e.events.create(t.runId,{eventType:`run_failed`,specVersion:8,eventData:{error:i,errorCode:q.DEPLOYMENT_MISMATCH}},{requestId:r}),Ni(t.runId,n,i,void 0,q.DEPLOYMENT_MISMATCH)}catch(e){if(!X.is(e)&&!J.is(e))throw e}return Fi(`failed`,t.deploymentId,i)};if(a&&i<l){let e=i+1,n=Math.min(2**i,8);try{return await a({deploymentId:t.deploymentId,specVersion:t.specVersion,deploymentMismatchRetryCount:e,delaySeconds:n}),W.warn(`Workflow run received by a deployment it is not pinned to; re-routing to its own deployment`,{...u,attempt:e,delaySeconds:n}),Fi(`rerouted`,t.deploymentId,e)}catch(t){if(!o?.(t))throw t;return W.error(`Cannot re-route a misrouted workflow run to its own deployment; failing the run`,{...u,attempt:e,errorMessage:t instanceof Error?t.message:String(t)}),d(0,t)}}return W.error(i>0?`Workflow run kept arriving at a deployment it is not pinned to after re-routing; failing the run`:`Workflow run received by a deployment it is not pinned to; failing the run`,u),d(i)}function Li(e){let t=new Set,n=new Map;for(let r of e)switch(r.eventType){case`hook_created`:t.add(r.correlationId);break;case`hook_disposed`:t.delete(r.correlationId);break;case`wait_created`:n.set(r.correlationId,Ri(r.eventData?.resumeAt));break;case`wait_completed`:n.delete(r.correlationId)}let r;for(let e of n.values())(r===void 0||e<r)&&(r=e);return{openHook:t.size>0,openWait:n.size>0,earliestOpenWaitResumeAtMs:r}}function Ri(e){let t;if(e instanceof Date)t=e.getTime();else if(typeof e==`number`)t=e;else if(typeof e==`string`)t=new Date(e).getTime();else return-1/0;return Number.isFinite(t)?t:-1/0}function zi(e,t){return e.earliestOpenWaitResumeAtMs!==void 0&&e.earliestOpenWaitResumeAtMs<=t}function Bi(){throw Error(`Unsupported in eve: @workflow/core createWorld(). eve selects and wires the workflow world explicitly at build time.`)}function Vi(){try{return Or(Mr(process.cwd()+`/package.json`).href)}catch{return Or(import.meta.url)}}const Hi=Symbol.for(`@workflow/world//cache`),Ui=Symbol.for(`@workflow/world//stubbedCache`),Wi=Symbol.for(`@workflow/world//cachePromise`),Gi=Symbol.for(`@workflow/world//stubbedCachePromise`),$=globalThis;function Ki(e){if(typeof e.createWorld==`function`)return e.createWorld();if(typeof e.default==`function`)return e.default();if(e.default&&typeof e.default==`object`)return e.default;throw Error(`Invalid target world module: must export createWorld(), a default factory, or a default World instance.`)}function qi(e){if(e.startsWith(`file://`))return e;if(e.startsWith(`/`))return Mr(e).href;if(e.startsWith(`./`)||e.startsWith(`../`))return Mr(process.cwd()+`/`+e).href;try{return Mr(Vi().resolve(e)).href}catch{return e}}const Ji=async()=>{let e=Ir();if(Lr(e)){let e=[`WORKFLOW_VERCEL_PROJECT`,`WORKFLOW_VERCEL_TEAM`,`WORKFLOW_VERCEL_AUTH_TOKEN`,`WORKFLOW_VERCEL_ENV`].filter(e=>process.env[e]);return e.length>0&&process.env.VERCEL===`1`&&console.warn(`[workflow] Warning: ${e.join(`, `)} env var(s) are set but have no effect at runtime. These are only used by the Workflow CLI. Remove them from your Vercel project environment variables.`),Bi()}if(e===`local`)return Bi({dataDir:process.env.WORKFLOW_LOCAL_DATA_DIR});let t;try{t=Vi()(e)}catch{t=await import(qi(e))}if(typeof t==`function`)return t();try{return await Ki(t)}catch{throw Error(`Invalid target world module: ${e}, must export a createWorld function or a default function that returns a World instance.`)}},Yi=async()=>{if($[Ui])return nt($[Ui]),$[Ui];$[Gi]||($[Gi]=Ji().catch(e=>{throw $[Gi]=void 0,e}));let e=await $[Gi];return nt(e),$[Ui]=e,{createQueueHandler:e.createQueueHandler,specVersion:e.specVersion}},Xi=async()=>$[Hi]?(nt($[Hi]),$[Hi]):($[Wi]||($[Wi]=Ji().catch(e=>{throw $[Wi]=void 0,e})),$[Hi]=await $[Wi],nt($[Hi]),$[Hi]),Zi=e=>{$[Hi]=e,$[Ui]=e,$[Wi]=void 0,$[Gi]=void 0},Qi=Symbol.for(`@workflow/world//getWorldFn`);globalThis[Qi]??=Xi;var $i=class{limitMs;elapsedMs=0;intervalStart;constructor(e=Zr()){this.limitMs=e,this.intervalStart=Date.now()}get configuredLimitMs(){return this.limitMs}elapsed(){let e=this.intervalStart===null?0:Date.now()-this.intervalStart;return this.elapsedMs+e}pause(){this.intervalStart!==null&&(this.elapsedMs+=Date.now()-this.intervalStart,this.intervalStart=null)}resume(){this.intervalStart=Date.now()}isExhausted(){return this.elapsed()>=this.limitMs}},ea=class extends Error{name=`ReplayTimeoutRetryError`};async function ta(e){let{runId:t,workflowName:n,requestId:r,attempt:i,limitMs:a,slotSnapshot:o}=e,s=W.forRun(t,n),c=Qr();if(i<=c)throw s.warn(`Workflow replay exceeded timeout; retrying delivery`,{timeoutMs:a,attempt:i,maxRetries:c}),new ea(`Workflow replay exceeded maximum duration (${a/1e3}s)`);let l=await Xi(),u=Vr(void 0,q.REPLAY_TIMEOUT);s.error(`Workflow replay exceeded timeout and max retries exceeded. Failing the run`,{timeoutMs:a,attempt:i,maxRetries:c,errorCode:u.errorCode,errorAttribution:u.attribution});let d=Wn(l,t),f=new Y(`Workflow replay exceeded maximum duration (${a/1e3}s) after ${i} attempts`),p=await d(),m=await fn(f,t,p);await l.events.create(t,{eventType:`run_failed`,specVersion:8,eventData:{error:m,errorCode:q.REPLAY_TIMEOUT}},{requestId:r,...o}),Ni(t,n,m,p,q.REPLAY_TIMEOUT)}var na=class{divergenceCount;active=!1;reported=!1;constructor(e){this.divergenceCount=e}static inert(){return new ra}activate(){this.active=!0}async withEventCreate(e,t){if(!this.active||this.reported)return t(e);this.reported=!0;try{return await t({...e,replayDivergenceCount:this.divergenceCount})}catch(e){throw this.reported=!1,e}}},ra=class extends na{constructor(){super(0)}activate(){}};function ia(e,t){if(e&&Number.isFinite(e.resumeRequestedAtMs)&&Number.isFinite(e.queuePublishRequestedAtMs))return{trigger:`hook`,...e.strategy===`lazy`||e.strategy===`parallel`||e.strategy===`sequential`?{strategy:e.strategy}:{},resumeRequestedAtMs:e.resumeRequestedAtMs,queuePublishRequestedAtMs:e.queuePublishRequestedAtMs,consumerStartedAtMs:e.consumerStartedAtMs??NaN,...e.replayStartedAtMs===void 0?{}:{replayStartedAtMs:e.replayStartedAtMs},...e.nextStepEncounteredAtMs===void 0?{}:{nextStepEncounteredAtMs:e.nextStepEncounteredAtMs},...e.setupSource===`hook_preload`||e.setupSource===`run_started`||e.setupSource===`event_load`?{setupSource:e.setupSource}:{},stepExecution:t}}function aa(e){if(e&&Number.isFinite(e.consumerStartedAtMs))return{resumeRequestedAtMs:e.resumeRequestedAtMs,queuePublishRequestedAtMs:e.queuePublishRequestedAtMs,...e.strategy===void 0?{}:{strategy:e.strategy},consumerStartedAtMs:e.consumerStartedAtMs,...e.replayStartedAtMs===void 0?{}:{replayStartedAtMs:e.replayStartedAtMs},...e.nextStepEncounteredAtMs===void 0?{}:{nextStepEncounteredAtMs:e.nextStepEncounteredAtMs},...e.setupSource===void 0?{}:{setupSource:e.setupSource}}}function oa(e){let t=[e.resumeRequestedAtMs,e.queuePublishRequestedAtMs,e.consumerStartedAtMs,e.replayStartedAtMs,e.nextStepEncounteredAtMs,e.stepClaimStartedAtMs,...e.stepClaimCompletedAtMs===void 0?[]:[e.stepClaimCompletedAtMs],e.stepCodeStartedAtMs];for(let e of t)if(typeof e!=`number`||!Number.isFinite(e))return;for(let e=1;e<t.length;e++)if(t[e]<t[e-1])return;return t}function sa(e){let{tracking:t}=e;if(!t||e.attempt!==1||t.replayStartedAtMs===void 0||t.nextStepEncounteredAtMs===void 0||e.stepClaimStartedAtMs===void 0)return;let n={resumeRequestedAtMs:t.resumeRequestedAtMs,queuePublishRequestedAtMs:t.queuePublishRequestedAtMs,consumerStartedAtMs:t.consumerStartedAtMs,replayStartedAtMs:t.replayStartedAtMs,nextStepEncounteredAtMs:t.nextStepEncounteredAtMs,stepClaimStartedAtMs:e.stepClaimStartedAtMs,stepClaimCompletedAtMs:e.stepClaimCompletedAtMs,stepCodeStartedAtMs:e.stepCodeStartedAtMs};if(!oa(n))return;let{resumeRequestedAtMs:r,queuePublishRequestedAtMs:i,consumerStartedAtMs:a,replayStartedAtMs:o,nextStepEncounteredAtMs:s,stepClaimStartedAtMs:c,stepClaimCompletedAtMs:l,stepCodeStartedAtMs:u}=n;return{...ot(u-r),...tt(i-r),...M(a-i),...he(o-a),..._e(s-o),..._(c-s),...l===void 0?{}:ae(l-c),...ut(u-(l??c)),...He(t.trigger),...t.strategy===void 0?{}:Xe(t.strategy),...t.setupSource===void 0?{}:H(t.setupSource),...Ne(t.stepExecution)}}function ca(e){let t=e.startsWith(`wrun_`)?e.slice(5):e;try{return u(Dr(t).ulid)}catch{return}}const la=d(`@workflow/core//devServerPort`,1,()=>({getPort:void 0,cachedPort:void 0,inFlight:void 0}));async function ua(){if(la.cachedPort!==void 0)return la.cachedPort;if(la.inFlight)return la.inFlight;if(!la.getPort)try{let e=[`@workflow/utils`,`get-port`].join(`/`),t=Or(Mr(process.cwd()+`/package.json`).href)(e);la.getPort=t.getPort}catch{la.getPort=async()=>void 0}let e=la.getPort??(async()=>void 0);return la.inFlight=e().then(e=>(typeof e==`number`&&(la.cachedPort=e),e)).finally(()=>{la.inFlight=void 0}),la.inFlight}const da=new Set([`step_created`,`step_started`,`step_completed`,`step_failed`,`step_retrying`,`hook_received`,`wait_created`,`wait_completed`]);function fa(e){let{events:t}=e,n=e.invocationStartedClean&&e.runCreatedAtMs!==void 0&&!e.suspensionHasWaits,r;if(n)for(let e of t){if(da.has(e.eventType)){n=!1;break}if(e.eventType===`attr_set`){let t=+(e.occurredAt??e.createdAt);r=r===void 0?t:Math.min(r,t)}}let i,a,o,s=t[t.length-1];if(!e.suspensionHasWaits&&!e.suspensionCreatedHooks&&s&&(s.eventType===`step_completed`||s.eventType===`step_failed`)){i=+(s.occurredAt??s.createdAt);let e=new Set;for(let n of t)(n.eventType===`step_completed`||n.eventType===`step_failed`)&&n.correlationId!==void 0&&e.add(n.correlationId);a=e.size,o=t.length}let c=n&&e.runStartedReceivedAtMs!==void 0;if(n||i!==void 0)return{...n?{ttfsAnchorMs:e.runCreatedAtMs,preStepBlockingMs:r===void 0?e.preStepBlockingMs:e.preStepBlockingBeforeAttrMs??0,...r===void 0?{}:{preStepAttrStartMs:r}}:{},...c?{rsfsAnchorMs:e.runStartedReceivedAtMs}:{},...i===void 0?{}:{prevStepEndMs:i,stepCount:a,eventCount:o},replayMs:e.replayMs,turbo:e.turbo,retained:e.retained}}function pa(e){let{tracking:t}=e;if(!t||e.attempt!==1)return;let n=t.preStepAttrStartMs??e.stepCodeStartedAtMs,r=t.ttfsAnchorMs===void 0?void 0:n-t.ttfsAnchorMs-(t.preStepBlockingMs??0),i=r!==void 0&&r>=-6e4?Math.max(0,r):void 0,a=t.prevStepEndMs===void 0?void 0:e.stepCodeStartedAtMs-t.prevStepEndMs,o=a!==void 0&&a>=-6e4?Math.max(0,a):void 0,s=t.rsfsAnchorMs!==void 0&&e.stepStartPostSentAtMs!==void 0?Math.max(0,e.stepStartPostSentAtMs-t.rsfsAnchorMs):void 0,c=t.replayMs===void 0?void 0:Math.max(0,t.replayMs);if(i===void 0&&o===void 0)return;let l=[];return t.turbo&&l.push(`turbo`),e.lazyStepStart&&l.push(`lazyStepStart`),e.optimisticStart&&l.push(`optimisticStart`),e.preclaimedStart&&l.push(`preclaimedStart`),t.retained&&l.push(`retained`),{...i===void 0?{}:{ttfs:i},...o===void 0?{}:{stso:o},...o!==void 0&&t.stepCount!==void 0?{stepCount:t.stepCount}:{},...o!==void 0&&t.eventCount!==void 0?{eventCount:t.eventCount}:{},...s===void 0?{}:{rsfs:s},...c===void 0?{}:{finalSchedulingReplay:c},optimizations:l}}const ma=`__workflowUnserializableStepInput`;function ha(){return{args:[`[input unavailable: step argument serialization failed]`],closureVars:[],thisVal:void 0,[ma]:!0}}function ga(e){return typeof e==`object`&&!!e&&e[ma]===!0}function _a(){return l(`WORKFLOW_STEP_STREAM_DRAIN_TIMEOUT_MS`,3e4,{integer:!0,min:1})}function va(e){let t=e?.name;return t===`AbortError`||t===`ResponseAborted`}async function ya(e){if(e.length===0)return;let t=_a(),n;try{await Promise.race([Promise.all(e.map(e=>(e.settleReleasedWrites?.()??Promise.resolve(!1)).catch(e=>{if(!va(e))throw e;return!1}))),new Promise((e,r)=>{n=setTimeout(()=>r(new K(`Timed out draining step stream writes after ${t}ms`)),t)})])}catch(e){if(!va(e))throw e}finally{n!==void 0&&clearTimeout(n)}}function ba(e,t){if(t&&e.events&&e.cursor!==void 0)return{events:e.events,cursor:e.cursor,hasMore:e.hasMore??!1}}async function xa(e){let{world:t,workflowRunId:n,workflowName:r,workflowStartedAt:i,stepId:a,stepName:o}=e,s=!!process.env.VERCEL_URL,c=(e.runSpecVersion??0)>=5,l=e.replayRecoveryReporter??na.inert(),u=async(e,r)=>l.withEventCreate(r,r=>t.events.create(n,e,r)),d={computeInstanceId:Wr,...e.requestId?{requestId:e.requestId}:{}},f=`step.execute ${ge(o)}`;return G(f,{},async l=>{if(l?.setAttributes({...E(o),...v(r),...Fe(n),...C(a)}),jr(!(e.lazyStepInput!==void 0&&e.preclaimedStart),`executeStep: lazyStepInput and preclaimedStart are mutually exclusive`),e.preclaimedStart&&e.preclaimedStart.owned===!1)return W.debug(`Pre-claimed step start lost, skipping`,{stepName:o,stepId:a,workflowRunId:n}),l?.setAttributes({...O(!0),...ie(`running`)}),{type:`skipped`};let f=Wn(t,n),p=kn(o);if(!p||typeof p!=`function`){let t=`Step "${o}" 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.`;if(W.error(`Step function not registered, failing step`,{workflowRunId:n,stepName:o,stepId:a}),e.lazyStepInput!==void 0)try{e.runReadyBarrier&&await e.runReadyBarrier.catch(()=>{}),await u({eventType:`step_started`,specVersion:8,correlationId:a,eventData:{stepName:o,workflowName:r,input:e.lazyStepInput,...e.ownerMessageId===void 0?{}:{ownerMessageId:e.ownerMessageId}}},d)}catch(e){if(X.is(e))return{type:`skipped`};if(J.is(e))return{type:`gone`};throw e}try{await u({eventType:`step_failed`,specVersion:8,correlationId:a,eventData:{stepName:o,error:await Tn(new Y(t),n,await f(),[],globalThis,c)}})}catch(e){if(X.is(e))return{type:`skipped`};throw e}return l?.setAttributes({...F(`failed`),...bt(!0)}),{type:`failed`}}let m=p.maxRetries??3;if(l?.setAttributes({...B(m)}),e.authoritativeAttempt!==void 0&&e.authoritativeAttempt>m+1){let t=m,r=`Step "${o}" exceeded max retries (${t} ${Dt(`retry`,`retries`,t)})`;it.error(`Step exceeded max retries`,{workflowRunId:n,stepName:o,stepId:a,attempt:e.authoritativeAttempt,maxRetries:m});try{await u({eventType:`step_failed`,specVersion:8,correlationId:a,eventData:{stepName:o,error:await Tn(new Y(r),n,await f(),[],globalThis,c)}})}catch(e){if(X.is(e))return W.info(`Tried failing step for exceeded retries, but step has already finished.`,{workflowRunId:n,stepId:a,stepName:o,message:e instanceof Error?e.message:String(e)}),{type:`skipped`};if(J.is(e))return{type:`gone`};throw e}return l?.setAttributes({...F(`failed`),...y(!0)}),{type:`failed`}}let h=e=>{if(Ut.is(e)){let t=Math.max(1,typeof e.retryAfter==`number`?e.retryAfter:1);return W.info(`Throttled on step_started, deferring`,{retryAfterSeconds:t}),{type:`throttled`,timeoutSeconds:t}}if(J.is(e))return W.info(`Workflow run "${n}" has already completed, skipping step "${a}": ${e.message}`),{type:`gone`};if(X.is(e))return W.debug(`Step in terminal state, skipping`,{stepName:o,stepId:a,workflowRunId:n,error:e instanceof Error?e.message:String(e)}),l?.setAttributes({...O(!0),...ie(`completed`)}),{type:`skipped`};if(Mt.is(e)){let t=Math.max(1,e.retryAfter??1);return W.debug(`Step retryAfter timestamp not yet reached`,{stepName:o,stepId:a,timeoutSeconds:t}),{type:`retry`,timeoutSeconds:t}}},g=e.preclaimedStart===void 0&&e.lazyStepInput!==void 0&&e.suppressOptimisticStart!==!0&&(ri()||e.forceOptimisticStart===!0&&!ii());e.preclaimedStart?l?.setAttributes(ee(`batch_preclaimed`)):e.lazyStepInput!==void 0&&l?.setAttributes(ee(g?`optimistic`:`awaited`));let _,b=d,x,w,T,D=async()=>{if(!T)return;let e=await T;if(e.ok)return;let t=h(e.err);if(!t)throw e.err;return t};if(e.preclaimedStart?.owned)_=e.preclaimedStart.step,x=e.preclaimedStart.batchPostSentAtMs,w=e.preclaimedStart.claimCompletedAtMs;else if(g){T=(e.runReadyBarrier??Promise.resolve()).then(()=>(x=Date.now(),u({eventType:`step_started`,specVersion:8,correlationId:a,eventData:{stepName:o,workflowName:r,input:e.lazyStepInput,...e.ownerMessageId===void 0?{}:{ownerMessageId:e.ownerMessageId}}},b))).then(()=>({ok:!0}),e=>({ok:!1,err:e}));let t=new Date;_={runId:n,stepId:a,stepName:o,status:`running`,input:e.lazyStepInput,attempt:1,startedAt:t,createdAt:t,updatedAt:t}}else try{let t=e.ownerMessageId===void 0?{}:{ownerMessageId:e.ownerMessageId};x=Date.now();let n=await u({eventType:`step_started`,specVersion:8,correlationId:a,eventData:e.lazyStepInput===void 0?{stepName:o,...t}:{stepName:o,workflowName:r,input:e.lazyStepInput,...t}},b);w=Date.now(),_=n.step}catch(e){let t=h(e);if(t)return t;throw e}W.debug(`Step execution details`,{stepName:o,stepId:_.stepId,status:_.status,attempt:_.attempt}),l?.setAttributes({...F(_.status)});let k;if(_.attempt>m+1&&_.error){let e=_.attempt-1,t=`Step "${o}" exceeded max retries (${e} ${Dt(`retry`,`retries`,e)})`;it.error(`Step exceeded max retries`,{workflowRunId:n,stepName:o,retryCount:e});let r=new Y(t);if(_.error!=null)try{r.cause=await Yt(_.error,n,await f())}catch{}try{await u({eventType:`step_failed`,specVersion:8,correlationId:a,eventData:{stepName:o,error:await Tn(r,n,await f(),[],globalThis,c)}})}catch(e){if(X.is(e))return W.info(`Tried failing step, but step has already finished.`,{workflowRunId:n,stepId:a,stepName:o,message:e.message}),{type:`skipped`};throw e}return l?.setAttributes({...F(`failed`),...y(!0)}),{type:`failed`}}let A=[],j=[],M=[],te=!0,N,ne=()=>{if(!N||N.rsfs!==void 0)return;let t=e.latencyTracking?.rsfsAnchorMs;t!==void 0&&x!==void 0&&(N.rsfs=Math.max(0,x-t),l&&l.setAttributes({...L(N.rsfs)}))};try{let t=_.attempt;if(!_.startedAt)throw new K(`Step "${a}" has no "startedAt" timestamp`);let u=_.startedAt,d=e.encryptionKey??await f(),m=await G(`step.hydrate`,{},async t=>{let r=Date.now(),i=await yn(_.input,n,d,j,globalThis,{},e.workflowDeploymentId,M),a=Date.now()-r;return t?.setAttributes({...Re(i.args.length),...V(a)}),i});if(ga(m)){let{message:e,hint:t}=$t(`step arguments`,void 0);throw new Ft(e,{hint:t})}let h=m.args,v=m.thisVal??null,y=Jt(s?`https://${process.env.VERCEL_URL}`:`http://localhost:${await ua()??3e3}`),b,S=!1,C=Date.now();N=pa({tracking:e.latencyTracking,stepCodeStartedAtMs:C,attempt:t,lazyStepStart:e.lazyStepInput!==void 0,optimisticStart:g,preclaimedStart:e.preclaimedStart!==void 0,stepStartPostSentAtMs:x}),N&&l?.setAttributes({...N.ttfs===void 0?{}:wt(N.ttfs),...N.stso===void 0?{}:z(N.stso),...N.rsfs===void 0?{}:L(N.rsfs),...N.finalSchedulingReplay===void 0?{}:ce(N.finalSchedulingReplay),..._t(N.optimizations??[])});let T=()=>{let n=e.resumeTracking;if(!n||n.reported)return;let r=sa({tracking:n,attempt:t,stepClaimStartedAtMs:x,stepClaimCompletedAtMs:w,stepCodeStartedAtMs:Date.now()});r&&(n.reported=!0,l?.setAttributes(r))},E=`ok`,O=performance.now();try{k=await G(`step.execute`,{},async()=>await Xt.run({stepMetadata:{stepName:o,stepId:a,stepStartedAt:new Date(+u),attempt:t},workflowMetadata:{workflowName:r,workflowRunId:n,workflowStartedAt:new Date(+i),url:y,features:{encryption:!!d}},workflowDeploymentId:e.workflowDeploymentId,rootRunId:e.rootRunId,ops:j,preCompletionOps:A,streamStates:M,closureVars:m.closureVars,encryptionKey:d,runReadyBarrier:g?e.runReadyBarrier:void 0},()=>(T(),p.apply(v,h))))}catch(e){E=`error`,b=e,S=!0}finally{Ie(performance.now()-O,E)}let ee=Date.now()-C;if(un(...h,v,m.closureVars),S)throw b;if(l?.setAttributes({...pe(ee)}),k=await G(`step.dehydrate`,{},async t=>{let r=Date.now(),i=await pn(k,n,d,j,globalThis,!1,!1,c,g?e.runReadyBarrier:void 0),a=Date.now()-r;return t?.setAttributes({...P(a),...Ke(typeof i)}),i}),j.length>0){let e=Promise.all(j);or(e,e=>{W.warn(`Background flush of step stream ops failed`,{workflowRunId:n,stepId:a,error:e instanceof Error?e.message:String(e)})});let t=Promise.race([e.then(()=>!0,e=>{if(va(e))return!0;throw e}),new Promise(e=>setTimeout(()=>e(!1),500))]);t.catch(()=>{}),await ya(M),te=await t}if(g){let e=await D();if(e)return e;ne()}A.length>0&&await Promise.all(A).catch(()=>{})}catch(e){if(g){let e=await D();if(e)return e;ne()}A.length>0&&await Promise.all(A).catch(()=>{});let t=wi(e),r=await Di(t),i=r.stack||vi(t)||``;t instanceof Error&&l?.recordException?.(t);let s=Y.is(t);if(l?.setAttributes({...De(_i(t)),...St(r.message),...le(_i(t)),...S(s?`fatal`:Pt.is(t)?`retryable`:`transient`),...gt(!s)}),J.is(e))return it.info(`Workflow run already completed, skipping step`,{workflowRunId:n,stepId:a,message:e.message}),{type:`gone`};if(s){it.error(`Encountered FatalError while executing step, bubbling up to parent workflow`,{workflowRunId:n,stepName:o,errorStack:i}),Ar.isNativeError(t)&&i&&(t.stack=i);try{await u({eventType:`step_failed`,specVersion:8,correlationId:a,eventData:{stepName:o,error:await Tn(t,n,await f(),[],globalThis,c),...N}})}catch(e){if(X.is(e))return W.info(`Tried failing step, but step has already finished.`,{workflowRunId:n,stepId:a,stepName:o,message:e.message}),{type:`skipped`};throw e}return l?.setAttributes({...F(`failed`),...bt(!0)}),{type:`failed`}}let d=_.attempt;if(l?.setAttributes({...Se(d),...B(m)}),d>=m+1){let t=_.attempt-1;it.error(`Max retries reached, bubbling error to parent workflow`,{workflowRunId:n,stepName:o,attempt:_.attempt,retryCount:t,errorStack:i});let s=`Step "${o}" failed after ${m} ${Dt(`retry`,`retries`,m)}: ${r.message}`,d=new Y(s);d.cause=e,i&&(d.stack=i);try{await u({eventType:`step_failed`,specVersion:8,correlationId:a,eventData:{stepName:o,error:await Tn(d,n,await f(),[],globalThis,c),...N}})}catch(e){if(X.is(e))return W.info(`Tried failing step, but step has already finished.`,{workflowRunId:n,stepId:a,stepName:o,message:e.message}),{type:`skipped`};throw e}return l?.setAttributes({...F(`failed`),...y(!0)}),{type:`failed`}}Pt.is(e)?it.info(`Encountered RetryableError, step will be retried`,{workflowRunId:n,stepName:o,attempt:d,message:e.message}):it.info(`Encountered Error, step will be retried`,{workflowRunId:n,stepName:o,attempt:d,errorStack:i}),Ar.isNativeError(e)&&i&&(e.stack=i);try{await u({eventType:`step_retrying`,specVersion:8,correlationId:a,eventData:{stepName:o,error:await Tn(e,n,await f(),[],globalThis,c),...Pt.is(e)&&{retryAfter:e.retryAfter}}})}catch(e){if(X.is(e))return W.info(`Tried retrying step, but step has already finished.`,{workflowRunId:n,stepId:a,stepName:o,message:e.message}),{type:`skipped`};throw e}let p=Math.max(1,Pt.is(e)?Math.ceil((+e.retryAfter.getTime()-Date.now())/1e3):1);return l?.setAttributes({...We(p),...I(!0)}),{type:`retry`,timeoutSeconds:p}}let re;try{re=await u({eventType:`step_completed`,specVersion:8,correlationId:a,eventData:{stepName:o,workflowName:r,result:k,...N}},e.inlineDeltaSinceCursor===void 0?void 0:{sinceCursor:e.inlineDeltaSinceCursor})}catch(e){if(X.is(e))return W.info(`Tried completing step, but step has already finished.`,{workflowRunId:n,stepId:a,stepName:o,message:e.message}),{type:`skipped`};if(J.is(e))return it.info(`Workflow run already completed, skipping step`,{workflowRunId:n,stepId:a,message:e.message}),{type:`gone`};throw e}let R=ba(re,e.inlineDeltaSinceCursor!==void 0);return l?.setAttributes({...F(`completed`),...Ke(typeof k)}),j.length>0&&it.debug(`Step has pending ops`,{workflowRunId:n,stepName:o,opsCount:j.length}),{type:`completed`,hasPendingOps:!te,inlineDelta:R}})}function Sa(e){return e.hasCreatedEvent===!0&&e.ownerMessageId!==void 0&&e.sawRetrying!==!0}function Ca(e,t){if(e.lastStartedAt===void 0)return 0;let n=ci(),r=e.lastStartedAt+n*1e3-t;return Math.min(n,Math.max(0,Math.ceil(r/1e3)))}function wa(e){return`${e.correlationId}:backstop:${e.lastStartedAt}`}function Ta(e,t,n){let r=new Map,i=new Set;for(let t of e)if(t.correlationId!==void 0){if(t.eventType===`step_started`){let e=`eventData`in t&&t.eventData&&`ownerMessageId`in t.eventData&&typeof t.eventData.ownerMessageId==`string`?t.eventData.ownerMessageId:void 0;r.set(t.correlationId,e)}else t.eventType===`step_retrying`&&i.add(t.correlationId)}for(let e of t)if(e!==void 0&&!i.has(e)&&r.get(e)===n)return!0;return!1}const Ea=d(`@workflow/core//stepSingleFlight`,1,()=>({inFlight:new Map}));async function Da(e,t,n,r=`warn`){let i=`${e}:${t}`,a=Ea.inFlight.get(i);if(a){W[r](`Step execution already in flight in this process; awaiting its settlement instead of executing again`,{workflowRunId:e,stepId:t});try{await a}catch{}return{type:`skipped`}}let o=n();Ea.inFlight.set(i,o);try{return await o}finally{Ea.inFlight.delete(i)}}async function Oa({runId:e,hookEvent:t,queueItem:n,requestId:r,sinceCursor:i,createEvent:a,world:o}){try{let s=await a(t,{requestId:r,...i===void 0?{}:{sinceCursor:i}});if(s.event?.eventType===`hook_conflict`)return{hasHookConflict:!0,hasAwaitedHookCreation:!1};if(s.hook?.claimedFrom){let t=await lr(o,e,s.hook);W.info(`Hook token force-claimed from another run`,{workflowRunId:e,hookId:n.correlationId,victimRunId:s.hook.claimedFrom.runId,victimWake:t})}return{hasHookConflict:!1,hasAwaitedHookCreation:n.hasConflictAwaiter===!0}}catch(t){if(X.is(t))return W.info(`Hook already exists, continuing`,{workflowRunId:e,message:t.message}),{hasHookConflict:!1,hasAwaitedHookCreation:n.hasConflictAwaiter===!0};if(J.is(t))return W.info(`Workflow run already completed, skipping hook`,{workflowRunId:e,message:t.message}),{hasHookConflict:!1,hasAwaitedHookCreation:!1};if(Aa(t)){let e=new Y(`createHook failed World validation: ${t instanceof Error?t.message:String(t)}`);throw e.cause=t,e}throw t}}async function ka({suspension:e,world:t,run:n,span:r,requestId:i,eventLog:a,runReadyBarrier:o,replayRecoveryReporter:s,stepDispatch:c,ownerMessageId:l,allowDeferredBatchWork:u}){let d=n.runId;await dr(t,d,a?.events);let f=async()=>{if(o)try{await o}catch{}},p=async e=>{let t=(await Promise.allSettled(e)).filter(e=>e.status===`rejected`).map(e=>e.reason);if(t.length!==0)throw t.find(e=>Lt.is(e))??t[0]},m=s??na.inert(),h=(e,n)=>m.withEventCreate(n,n=>t.events.create(d,e,n)),g=0,_=0,v=!1,y=async(e,t)=>{if(_++,!a)return h(e,t);let n=a,r=await h(e,{...t,...Qn(n.events)});if(typeof t?.sinceCursor==`string`)return n.cursor===t.sinceCursor&&r.events!==void 0&&r.hasMore!==!0&&(Jn(n,{events:r.events,cursor:r.cursor}),v=!0),r;let i=Gn(n.events,r);return g+=i.added,i.truncated?W.debug(`Dropped a truncated skipped-slot report`,{workflowRunId:d,eventType:e.eventType,eventId:r.event?.eventId,offered:i.offered}):i.added>0&&W.debug(`Suspension write skipped occupied slots`,{workflowRunId:d,eventType:e.eventType,eventId:r.event?.eventId,reported:i.added}),r},b=e.items.filter(e=>e.type===`step`),x=e.items.filter(e=>e.type===`hook`),S=e.items.filter(e=>e.type===`wait`),C=e.items.filter(e=>e.type===`attribute`),w=x.filter(e=>!e.hasCreatedEvent),T=new Map;for(let e of x){if(e.hasCreatedEvent&&!e.disposed)continue;let t=T.get(e.token);t?t.push(e):T.set(e.token,[e])}let E=await t.getEncryptionKeyForRun?.(n),D=E?await te(E):void 0,O=(n.specVersion??0)>=5,k=0,A=[];async function j(t,n){let r={executions:[]};try{return await bn(t,d,D,e.globalThis,!1,O,r)}finally{k+=r.totalExecutions??r.executions.length,A.push(...r.executions.slice(0,5-A.length).map(e=>({...n,...e})))}}async function ee(e){let t={eventType:`hook_disposed`,specVersion:8,correlationId:e.correlationId,eventData:{token:e.token}};try{await y(t,{requestId:i})}catch(t){if(X.is(t))W.info(`Hook already disposed, skipping duplicate disposal`,{workflowRunId:d,correlationId:e.correlationId,message:t.message});else if(J.is(t))W.info(`Workflow run already completed, skipping hook disposal`,{workflowRunId:d,correlationId:e.correlationId,message:t.message});else if(Bt.is(t))W.info(`Hook not found for disposal, continuing`,{workflowRunId:d,correlationId:e.correlationId,message:t.message});else throw t}}let M=[],N=[],P=0,ne=w.length===1&&typeof a?.cursor==`string`?a.cursor:void 0;if(T.size>0){let e=Date.now();await f();let n=async e=>{for(let n of e){let e=!1;if(!n.hasCreatedEvent){let r=n.metadata===void 0?void 0:await j(n.metadata,{source:`hook_metadata`,correlationId:n.correlationId}),a={eventType:`hook_created`,specVersion:8,correlationId:n.correlationId,eventData:{token:n.token,tokenRetentionUntil:n.tokenRetentionUntil,metadata:r,isWebhook:n.isWebhook??!1,...n.isSystem&&{isSystem:!0},...n.force&&{force:!0}}},o=await Oa({runId:d,hookEvent:a,queueItem:n,requestId:i,sinceCursor:ne,createEvent:y,world:t});o.hasHookConflict&&M.push(n.correlationId),o.hasAwaitedHookCreation&&N.push(n.correlationId),e=o.hasHookConflict}n.disposed&&!e&&await ee(n)}},r=[...T.values()],a=e=>e.some(e=>e.force===!0&&!e.hasCreatedEvent);for(let e of r.filter(a))await p([n(e)]);await p(r.filter(e=>!a(e)).map(n)),P=Date.now()-e}let F=x.filter(e=>e.abortRequested&&!e.disposed);F.length>0&&(await f(),await p(F.map(async e=>{try{let n=await j({aborted:!0,reason:e.abortReason},{source:`hook_abort`,correlationId:e.correlationId});await y({eventType:`hook_received`,specVersion:8,correlationId:e.correlationId,eventData:{token:e.token,payload:n}});try{let r=an(e.token);await t.streams.write(d,r,n),await t.streams.close(d,r)}catch{W.debug(`Failed to write abort stream packet, hook event will provide fallback`,{workflowRunId:d,correlationId:e.correlationId})}}catch(t){if(X.is(t)||J.is(t))W.info(`Workflow run already completed, skipping abort`,{workflowRunId:d,correlationId:e.correlationId,message:t.message});else throw t}})));let I=new Set(b.filter(e=>!e.hasCreatedEvent).map(e=>e.correlationId)),L=new Set,R=new Set,ie=async(t,r)=>{W.warn(`Step arguments failed to serialize; failing the step so the workflow can observe the error`,{workflowRunId:d,correlationId:t.correlationId,stepName:t.stepName,error:r.message}),await f();let a=await bn(ha(),d,D,e.globalThis,!1,O);try{await y({eventType:`step_created`,specVersion:8,correlationId:t.correlationId,eventData:{stepName:t.stepName,workflowName:n.workflowName,input:a}},{requestId:i})}catch(e){if(X.is(e))W.info(`Step already exists, continuing`,{workflowRunId:d,correlationId:t.correlationId,message:e.message});else if(J.is(e))return;else throw e}try{await y({eventType:`step_failed`,specVersion:8,correlationId:t.correlationId,eventData:{stepName:t.stepName,error:await Tn(r,d,D,[],e.globalThis,O)}},{requestId:i})}catch(e){if(X.is(e)||J.is(e))W.info(`Tried failing step, but step or run has already finished.`,{workflowRunId:d,correlationId:t.correlationId,message:e.message});else throw e}R.add(t.correlationId),ae.delete(t.correlationId)},ae=new Set(N.length===0?b.filter(e=>I.has(e.correlationId)).slice(0,$r()).map(e=>e.correlationId):[]),se=new Map,z=[],ce=new Set,le=c!==void 0&&ei()&&(n.specVersion??0)>=3,B=ti()&&typeof t.events.createBatch==`function`&&(n.specVersion??0)>=6&&!le&&x.length===0&&C.length===0,V=[],ue=[],de=B&&l!==void 0&&ae.size>=2,fe=new Map,pe,me=()=>(pe??=c?.getTraceCarrier()??Promise.resolve({}),pe),he=0,ge=0;for(let e of b)if(I.has(e.correlationId)){let r=de&&ae.has(e.correlationId),a=ge;ge+=r?2:1;let o=(async()=>{let o;try{o=await j({args:e.args,closureVars:e.closureVars,thisVal:e.thisVal},{source:`step_input`,correlationId:e.correlationId})}catch(t){if(!Ft.is(t)||!c)throw t;await ie(e,t);return}if(ae.has(e.correlationId)){se.set(e.correlationId,{correlationId:e.correlationId,stepName:e.stepName,dehydratedInput:o}),r&&(V.push({order:a,kind:`inline-created`,correlationId:e.correlationId,event:{eventType:`step_created`,specVersion:8,correlationId:e.correlationId,eventData:{stepName:e.stepName,workflowName:n.workflowName,input:o}}}),V.push({order:a+1,kind:`inline-started`,correlationId:e.correlationId,event:{eventType:`step_started`,specVersion:8,correlationId:e.correlationId,eventData:{stepName:e.stepName,...l===void 0?{}:{ownerMessageId:l}}}}));return}let s={eventType:`step_created`,specVersion:8,correlationId:e.correlationId,eventData:{stepName:e.stepName,workflowName:n.workflowName,input:o}};if(le&&o instanceof Uint8Array&&o.byteLength<=131072){await f();let r=await me(),[a,l]=await Promise.allSettled([y(s,{requestId:i}),Zn(t,c.queueName,{runId:d,stepId:e.correlationId,stepName:e.stepName,traceCarrier:r,requestedAt:new Date,stepInput:{input:o},runContext:Fn(n)},{idempotencyKey:In(e.correlationId,e.stepName)})]);if(l.status===`rejected`)throw l.reason;if(ce.add(e.correlationId),a.status===`rejected`){let t=a.reason;if(X.is(t))W.info(`Step already exists, continuing`,{workflowRunId:d,correlationId:e.correlationId,message:t.message});else if(Sr(t))he++,W.warn(`Step creation event write failed, but the step was dispatched via the queue. The step_created event will be ensured by the queue consumer.`,{workflowRunId:d,correlationId:e.correlationId,stepName:e.stepName,error:t instanceof Error?t.message:String(t)});else throw t}else L.add(e.correlationId);return}if(B){V.push({order:a,kind:`step`,correlationId:e.correlationId,stepName:e.stepName,event:s});return}try{await f(),await y(s,{requestId:i}),L.add(e.correlationId)}catch(t){if(X.is(t))W.info(`Step already exists, continuing`,{workflowRunId:d,correlationId:e.correlationId,message:t.message});else throw t}})();z.push(o),B&&ue.push(o.catch(()=>{}))}for(let e of S)if(!e.hasCreatedEvent){let t={eventType:`wait_created`,specVersion:8,correlationId:e.correlationId,eventData:{resumeAt:e.resumeAt}};if(B){V.push({order:ge++,kind:`wait`,correlationId:e.correlationId,event:t});continue}z.push((async()=>{try{await f(),await y(t,{requestId:i})}catch(t){if(X.is(t))W.info(`Wait already exists, continuing`,{workflowRunId:d,correlationId:e.correlationId,message:t.message});else throw t}})())}let _e;B&&z.push((async()=>{if(await Promise.all(ue),V.length===0)return;let e=[...V].sort((e,t)=>e.order-t.order);await f();let r=async e=>{try{await y(e.event,{requestId:i}),e.kind===`step`&&L.add(e.correlationId)}catch(t){if(X.is(t))W.info(e.kind===`step`?`Step already exists, continuing`:`Wait already exists, continuing`,{workflowRunId:d,correlationId:e.correlationId,message:t.message});else throw t}};if(e.length===1){await r(e[0]);return}let o=a?(qn(a.events)??0)+1:void 0,s=e=>{let t=[],n=[];for(let r=0;r<e.length;r++){let i=e[r],a=e[r+1],o=i.kind===`inline-created`&&a?.kind===`inline-started`&&a.correlationId===i.correlationId,s=o?2:1;n.length>0&&n.length+s>32&&(t.push(n),n=[]),n.push(i),o&&(n.push(a),r++)}return n.length>0&&t.push(n),t},l=e=>e.kind===`inline-created`||e.kind===`inline-started`,p=s(e.filter(e=>l(e))),m=e.filter(e=>!l(e)),h=m.length===1?[m]:s(m),g=m.length===1?h[0]:void 0,_=[...p,...h],v=c!==void 0;if(v)for(let t of e)t.kind===`step`&&ce.add(t.correlationId);let b=0,x,S=async e=>{let n=Date.now(),{results:r}=await t.events.createBatch(d,e.map(e=>({event:e.event,...e.kind===`inline-started`?{computeInstanceId:Wr}:{}})),{requestId:i}),a=Date.now();for(let[t,i]of r.entries()){let r=e[t];if(i.error===void 0){if(r.kind===`step`)L.add(r.correlationId);else if(r.kind===`inline-started`){let e=se.get(r.correlationId);if(e===void 0)throw new It(`no dehydrated input for pre-claimed step ${r.correlationId}`,{status:500});let t=new Date,o=i.step?.startedAt?{...i.step,startedAt:i.step.startedAt}:{runId:d,stepId:r.correlationId,stepName:e.stepName,status:`running`,attempt:1,createdAt:t,updatedAt:t,startedAt:t};fe.set(r.correlationId,{owned:!0,step:{...o,input:e.dehydratedInput},batchPostSentAtMs:n,claimCompletedAtMs:a})}continue}if(i.status===409){if(r.kind===`inline-created`||r.kind===`inline-started`){fe.set(r.correlationId,{owned:!1}),W.info(`Inline step pre-claim lost, continuing`,{workflowRunId:d,correlationId:r.correlationId,message:i.message});continue}W.info(r.kind===`step`?`Step already exists, continuing`:`Wait already exists, continuing`,{workflowRunId:d,correlationId:r.correlationId,message:i.message});continue}throw new It(`batched ${r.event.eventType} for ${r.correlationId} failed: ${i.error}: ${i.message}`,{status:i.status})}let o=qn(r.flatMap(e=>e.error===void 0&&e.event?[e.event]:[]));b+=r.filter(e=>e.error===void 0).length,o!==void 0&&(x===void 0||o>x)&&(x=o)},C=async e=>{if(!v)return;let r=e.filter(e=>e.kind===`step`);if(r.length===0)return;let i=await me();await er(t,c.queueName,r.map(e=>({message:{runId:d,stepId:e.correlationId,stepName:e.stepName,traceCarrier:i,requestedAt:new Date,runContext:Fn(n)},opts:{idempotencyKey:In(e.correlationId,e.stepName)}})))},w=_.map(e=>e===g?r(e[0]):S(e)),T=_.map(async(e,t)=>{await w[t],await C(e)}),E=(async()=>{let e=await Promise.allSettled([...w,...T]);if(o!==void 0&&x!==void 0){let e=x-o+1-b;e>0&&W.debug(`Batched fan-out committed above snapshot`,{workflowRunId:d,expectedFirstSlot:o,maxCommittedSlot:x,committedCount:b,interleaved:e})}let t=e.find(e=>e.status===`rejected`);if(t)throw t.reason})(),D=_.flatMap((e,t)=>e.some(e=>e.kind===`inline-started`)?[w[t]]:[]);if(u){if(E.catch(()=>{}),_e=E,D.length>0)try{await Promise.all(D)}catch(e){throw await E.catch(()=>{}),e}}else await E})());for(let e of C)z.push((async()=>{try{await f(),await y({eventType:`attr_set`,specVersion:8,correlationId:e.correlationId,eventData:{changes:e.changes,writer:{type:`workflow`},...e.allowReservedAttributes?{allowReservedAttributes:!0}:{}}},{requestId:i})}catch(t){if(X.is(t))W.info(`Workflow attribute event already exists, continuing`,{workflowRunId:d,correlationId:e.correlationId,message:t.message});else if(Aa(t)){let e=new Y(`setAttributes failed World validation: ${t instanceof Error?t.message:String(t)}`);throw e.cause=t,e}else throw t}})());await p(z);let ve=[];for(let e of ae){let t=se.get(e);t&&ve.push(t)}let ye=Date.now(),H;for(let e of S){let t=e.resumeAt.getTime(),n=Math.max(1e3,t-ye),r=Math.ceil(n/1e3);(!H||r<H.seconds)&&(H={seconds:r,correlationId:e.correlationId,resumeAtMs:t})}return r?.setAttributes({...Je(`workflow_suspended`),...Le(b.length),...oe(w.length),...yt(S.length),...R.size>0?xe(R.size):{},...he>0?re(he):{}}),{pendingSteps:b,createdStepCorrelationIds:L,failedStepCorrelationIds:R,queuedStepCorrelationIds:ce,lazyInlineSteps:ve,inlineClaims:fe,deferredBatchWork:_e,waitTimeout:M.length>0?void 0:H,hasHookConflict:M.length>0,hookConflictCorrelationIds:M,hasAwaitedHookCreation:N.length>0,awaitedHookCorrelationIds:N,eventLogCarriedForward:v&&_===1,hasAttributeEvents:C.length>0,hasHookEvents:w.length>0,hookCreationMs:P,serializationBlockerCount:k,serializationBlockers:A,reportedEventCount:g}}function Aa(e){return e instanceof f||e instanceof Error&&e.name===`AttributeValidationError`||It.is(e)&&e.status===400}const ja=()=>l(`WORKFLOW_WAIT_CONTINUATION_MAX_DELAY_SECONDS`,82800,{integer:!0,min:1}),Ma=()=>l(`WORKFLOW_NEAR_ELAPSED_WAIT_THRESHOLD_SECONDS`,2);function Na(e,t,n=Date.now(),r=0){let i=Pa(e,t,n);return r<=0?i:{delaySeconds:i.delaySeconds,idempotencyKey:`${i.idempotencyKey}:a${r}`}}function Pa(e,t,n){let r=ja();if(e<=Math.min(Ma(),r))return{delaySeconds:e,idempotencyKey:`${t}:${Math.floor(n/1e3)}`};let i=Math.ceil(e/r);return{delaySeconds:Math.min(e,r),idempotencyKey:i===1?t:`${t}:hop-${i}`}}var Fa=44,Ia=`ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/`,La=new Uint8Array(64),Ra=new Uint8Array(128);for(let e=0;e<Ia.length;e++){let t=Ia.charCodeAt(e);La[e]=t,Ra[t]=e}function za(e){let t=0,n=0,r=0;do r=Ra[e.next()],t|=(r&31)<<n,n+=5;while(r&32);return t}function Ba(e){return e&1?-2147483648|-(e>>>1):e>>>1}function Va(e,t){return e.pos>=t?!1:e.peek()!==Fa}var Ha=class{constructor(e){this.pos=0,this.buffer=e}next(){return this.buffer.charCodeAt(this.pos++)}peek(){return this.buffer.charCodeAt(this.pos)}indexOf(e){let{buffer:t,pos:n}=this,r=t.indexOf(e,n);return r===-1?t.length:r}};function Ua(e){let{length:t}=e,n=new Ha(e),r=[],i=0,a=0,o=0,s=0,c=0;do{let e=n.indexOf(`;`),t=[],l=!0,u=0;for(i=0;n.pos<e;){let r;i+=Ba(za(n)),i<u&&(l=!1),u=i,Va(n,e)?(a+=Ba(za(n)),o+=Ba(za(n)),s+=Ba(za(n)),Va(n,e)?(c+=Ba(za(n)),r=[i,a,o,s,c]):r=[i,a,o,s]):r=[i],t.push(r),n.pos++}l||Wa(t),r.push(t),n.pos=e+1}while(n.pos<=t);return r}function Wa(e){e.sort(Ga)}function Ga(e,t){return e[0]-t[0]}const Ka=/^[\w+.-]+:\/\//,qa=/^([\w+.-]+:)\/\/([^@/#?]*@)?([^:/#?]*)(:\d+)?(\/[^#?]*)?(\?[^#]*)?(#.*)?/,Ja=/^file:(?:\/\/((?![a-z]:)[^/#?]*)?)?(\/?[^#?]*)(\?[^#]*)?(#.*)?/i;function Ya(e){return Ka.test(e)}function Xa(e){return e.startsWith(`//`)}function Za(e){return e.startsWith(`/`)}function Qa(e){return e.startsWith(`file:`)}function $a(e){return/^[.?#]/.test(e)}function eo(e){let t=qa.exec(e);return no(t[1],t[2]||``,t[3],t[4]||``,t[5]||`/`,t[6]||``,t[7]||``)}function to(e){let t=Ja.exec(e),n=t[2];return no(`file:`,``,t[1]||``,``,Za(n)?n:`/`+n,t[3]||``,t[4]||``)}function no(e,t,n,r,i,a,o){return{scheme:e,user:t,host:n,port:r,path:i,query:a,hash:o,type:7}}function ro(e){if(Xa(e)){let t=eo(`http:`+e);return t.scheme=``,t.type=6,t}if(Za(e)){let t=eo(`http://foo.com`+e);return t.scheme=``,t.host=``,t.type=5,t}if(Qa(e))return to(e);if(Ya(e))return eo(e);let t=eo(`http://foo.com/`+e);return t.scheme=``,t.host=``,t.type=e?e.startsWith(`?`)?3:e.startsWith(`#`)?2:4:1,t}function io(e){if(e.endsWith(`/..`))return e;let t=e.lastIndexOf(`/`);return e.slice(0,t+1)}function ao(e,t){oo(t,t.type),e.path=e.path===`/`?t.path:io(t.path)+e.path}function oo(e,t){let n=t<=4,r=e.path.split(`/`),i=1,a=0,o=!1;for(let e=1;e<r.length;e++){let t=r[e];if(!t){o=!0;continue}if(o=!1,t!==`.`){if(t===`..`){a?(o=!0,a--,i--):n&&(r[i++]=t);continue}r[i++]=t,a++}}let s=``;for(let e=1;e<i;e++)s+=`/`+r[e];(!s||o&&!s.endsWith(`/..`))&&(s+=`/`),e.path=s}function so(e,t){if(!e&&!t)return``;let n=ro(e),r=n.type;if(t&&r!==7){let e=ro(t),i=e.type;switch(r){case 1:n.hash=e.hash;case 2:n.query=e.query;case 3:case 4:ao(n,e);case 5:n.user=e.user,n.host=e.host,n.port=e.port;case 6:n.scheme=e.scheme}i>r&&(r=i)}oo(n,r);let i=n.query+n.hash;switch(r){case 2:case 3:return i;case 4:{let r=n.path.slice(1);return r?$a(t||e)&&!$a(r)?`./`+r+i:r+i:i||`.`}case 5:return n.path+i;default:return n.scheme+`//`+n.user+n.host+n.port+n.path+i}}function co(e){if(!e)return``;let t=e.lastIndexOf(`/`);return e.slice(0,t+1)}function lo(e,t){let n=co(e),r=t?t+`/`:``;return e=>so(r+(e||``),n)}var uo=0,fo=1,po=2,mo=3,ho=4;function go(e,t){let n=_o(e,0);if(n===e.length)return e;t||(e=e.slice());for(let r=n;r<e.length;r=_o(e,r+1))e[r]=yo(e[r],t);return e}function _o(e,t){for(let n=t;n<e.length;n++)if(!vo(e[n]))return n;return e.length}function vo(e){for(let t=1;t<e.length;t++)if(e[t][uo]<e[t-1][uo])return!1;return!0}function yo(e,t){return t||(e=e.slice()),e.sort(bo)}function bo(e,t){return e[uo]-t[uo]}var xo=!1;function So(e,t,n,r){for(;n<=r;){let i=n+(r-n>>1),a=e[i][uo]-t;if(a===0)return xo=!0,i;a<0?n=i+1:r=i-1}return xo=!1,n-1}function Co(e,t,n){for(let r=n+1;r<e.length&&e[r][uo]===t;n=r++);return n}function wo(e,t,n){for(let r=n-1;r>=0&&e[r][uo]===t;n=r--);return n}function To(){return{lastKey:-1,lastNeedle:-1,lastIndex:-1}}function Eo(e,t,n,r){let{lastKey:i,lastNeedle:a,lastIndex:o}=n,s=0,c=e.length-1;if(r===i){if(t===a)return xo=o!==-1&&e[o][uo]===t,o;t>=a?s=o===-1?0:o:c=o}return n.lastKey=r,n.lastNeedle=t,n.lastIndex=So(e,t,s,c)}function Do(e){return typeof e==`string`?JSON.parse(e):e}var Oo="`line` must be greater than 0 (lines start at line 1)",ko="`column` must be greater than or equal to 0 (columns start at column 0)",Ao=class{constructor(e,t){let n=typeof e==`string`;if(!n&&e._decodedMemo)return e;let r=Do(e),{version:i,file:a,names:o,sourceRoot:s,sources:c,sourcesContent:l}=r;this.version=i,this.file=a,this.names=o||[],this.sourceRoot=s,this.sources=c,this.sourcesContent=l,this.ignoreList=r.ignoreList||r.x_google_ignoreList||void 0;let u=lo(t,s);this.resolvedSources=c.map(u);let{mappings:d}=r;if(typeof d==`string`)this._encoded=d,this._decoded=void 0;else if(Array.isArray(d))this._encoded=void 0,this._decoded=go(d,n);else if(r.sections)throw Error(`TraceMap passed sectioned source map, please use FlattenMap export instead`);else throw Error(`invalid source map: ${JSON.stringify(r)}`);this._decodedMemo=To(),this._bySources=void 0,this._bySourceMemos=void 0}};function jo(e){return e}function Mo(e){var t;return(t=jo(e))._decoded||(t._decoded=Ua(jo(e)._encoded))}function No(e,t){let{line:n,column:r,bias:i}=t;if(n--,n<0)throw Error(Oo);if(r<0)throw Error(ko);let a=Mo(e);if(n>=a.length)return Po(null,null,null,null);let o=a[n],s=Fo(o,jo(e)._decodedMemo,n,r,i||1);if(s===-1)return Po(null,null,null,null);let c=o[s];if(c.length===1)return Po(null,null,null,null);let{names:l,resolvedSources:u}=e;return Po(u[c[fo]],c[po]+1,c[mo],c.length===5?l[c[ho]]:null)}function Po(e,t,n,r){return{source:e,line:t,column:n,name:r}}function Fo(e,t,n,r,i){let a=Eo(e,r,t,n);return xo?a=(i===-1?Co:wo)(e,r,a):i===-1&&a++,a===-1||a===e.length?-1:a}function Io(e){return e>=65&&e<=90||e>=97&&e<=122||e>=48&&e<=57||e===43||e===47||e===61}function Lo(e){let t=0;for(;t<e.length;){let n=e.indexOf(`//# sourceMappingURL=data:application/json`,t);if(n===-1)return;let r=e.indexOf(`;base64,`,n+42);if(r===-1){t=n+42;continue}let i=e.indexOf(`,`,n);if(i!==-1&&i<r){t=r+8;continue}let a=r+8,o=a;for(;o<e.length&&Io(e.charCodeAt(o));)o++;if(o>a)return e.slice(a,o);t=o}}const Ro=d(`@workflow/core//sourceMapTracers`,1,()=>({byCode:new Map}));function zo(e){let t=Ro.byCode.get(e);if(t!==void 0)return Ro.byCode.delete(e),Ro.byCode.set(e,t),t;let n=null,r=Lo(e);if(r)try{let e=Buffer.from(r,`base64`).toString(`utf-8`);n=new Ao(JSON.parse(e))}catch{n=null}for(Ro.byCode.set(e,n);Ro.byCode.size>8;){let e=Ro.byCode.keys().next().value;if(e===void 0)break;Ro.byCode.delete(e)}return n}function Bo(e,t,n){if(!e.includes(t))return e;let r=zo(n);if(!r)return e;try{return e.split(`
4
- `).map(e=>{let n=e.match(/^\s*at\s+(?:(.+?)\s+\()?(.+?):(\d+):(\d+)\)?$/);if(!n)return e;let[,i,a,o,s]=n;if(!a.includes(t))return e;let c=parseInt(o,10),l=parseInt(s,10),u=No(r,{line:c,column:l});if(u.source&&u.line!==null){let e=i||u.name||`anonymous`,t=u.column===null?l:u.column;return` at ${e} (${u.source}:${u.line}:${t})`}return e}).join(`
5
- `)}catch{return e}}function Vo(e,t,n){let r=(2<<31-Math.clz32(e.length-1|1))-1,i=Math.ceil(1.6*r*t/e.length);return(a=t)=>{if(!a)return``;let o=``;for(;;){let t=n(i),s=i;for(;s--;)if(o+=e[t[s]&r]||``,o.length>=a)return o}}}function Ho(e,t){let n=e.get(t);if(n)return n;let r=Uo(t);if(r){for(let[t,n]of e)if(Uo(t)===r)return n}}function Uo(e){let t=e.indexOf(`_`);return t===-1?void 0:e.slice(t+1)}function Wo(e){switch(e.type){case`step`:return`step ${e.stepName} (${e.correlationId})`;case`hook`:return`hook (${e.correlationId})`;case`wait`:return`wait (${e.correlationId})`;case`attribute`:return`attribute (${e.correlationId})`}return`unknown`}function Go(e,t,n){let r=e.correlationId?Ho(t,e.correlationId):void 0,i=n.describe();return[`pending at this id: ${r?Wo(r):`none`}.`,`consumer: index=${i.index}, length=${i.length}, parked=${i.parked}, lastConsumed=${i.lastConsumedEventId??`none`}`].join(` `)}function Ko(e){return function(t,n){let r=function(...r){let{promise:i,resolve:a,reject:o}=Wt(),s=`step_${e.generateUlid()}`,c={type:`step`,correlationId:s,stepName:t,args:r};this!==void 0&&this!==null&&this!==globalThis&&(c.thisVal=this);let l=n?.();return l&&(c.closureVars=l),e.invocationsQueue.set(s,c),it.debug(`Step consumer setup`,{correlationId:s,stepName:t,args:r}),e.eventsConsumer.subscribe(n=>{if(!n)return Mn(e),Q.NotConsumed;if(it.debug(`Step consumer event processing`,{correlationId:s,stepName:t,args:r.join(`, `),incomingCorrelationId:n.correlationId,isMatch:s===n.correlationId,eventType:n.eventType}),n.correlationId!==s)return Q.NotConsumed;let i=`eventData`in n&&n.eventData&&`stepName`in n.eventData?n.eventData.stepName:void 0;if(typeof i==`string`&&i!==t)return e.promiseQueue=e.promiseQueue.then(()=>{e.onWorkflowError(new Ht(`Replay divergence: step event ${n.eventType} for ${s} belongs to "${i}", but the current step consumer is "${t}"`,{eventId:n.eventId}))}),Q.Finished;if(n.eventType===`step_created`){let r=e.invocationsQueue.get(s);return!r||r.type!==`step`?(e.promiseQueue=e.promiseQueue.then(()=>{o(new Ht(`Replay divergence: step ${s} (${t}) created but not found in invocation queue`,{eventId:n.eventId}))}),Q.Finished):(r.hasCreatedEvent=!0,Q.Consumed)}if(n.eventType===`step_started`){let t=e.invocationsQueue.get(s);return t&&t.type===`step`&&(t.ownerMessageId=`eventData`in n&&n.eventData&&`ownerMessageId`in n.eventData&&typeof n.eventData.ownerMessageId==`string`?n.eventData.ownerMessageId:void 0,t.lastStartedAt=+n.createdAt),Q.Consumed}if(n.eventType===`step_retrying`){let t=e.invocationsQueue.get(s);return t&&t.type===`step`&&(t.sawRetrying=!0,t.ownerMessageId=void 0),Q.Consumed}if(n.eventType===`step_failed`){e.invocationsQueue.delete(n.correlationId);let t=e.eventsConsumer.eventIndex,r=jn(e,t,`step`,{deliveredAt:+n.createdAt}),i,a=On(e,t,`step`);return e.pendingDeliveries++,e.promiseQueue=e.promiseQueue.then(async()=>{try{let t=await e.replayPayloadCache.prepareEventPayload(n.eventId,`error`,n.eventData.error);i=await Yt(n.eventData.error,e.runId,e.encryptionKey,e.globalThis,{},t)}catch(e){it.error(`Failed to hydrate step_failed error`,{correlationId:n.correlationId,error:e instanceof Error?e.message:String(e)}),i=new Y(`Failed to hydrate step error: ${e instanceof Error?e.message:String(e)}`)}finally{e.pendingDeliveries--}a.then(()=>{r.markDelivered(),o(i)})}),Q.Finished}if(n.eventType===`step_completed`){e.invocationsQueue.delete(n.correlationId);let t=n.eventId,r=n.eventData.result,i=e.eventsConsumer.eventIndex,s=jn(e,i,`step`,{deliveredAt:+n.createdAt}),c,l=On(e,i,`step`);return e.pendingDeliveries++,e.promiseQueue=e.promiseQueue.then(async()=>{try{c={ok:!0,value:await e.replayPayloadCache.getStepResult(t,async()=>{let n=await e.replayPayloadCache.prepareEventPayload(t,`result`,r);return await vn(r,e.runId,e.encryptionKey,e.globalThis,{},n)})}}catch(e){c={ok:!1,error:e}}finally{e.pendingDeliveries--}l.then(()=>{s.markDelivered(),c.ok?a(c.value):o(c.error)})}),Q.Finished}return e.promiseQueue=e.promiseQueue.then(()=>{e.onWorkflowError(new Ht(`Replay divergence: Unexpected event type for step ${s} (name: ${t}) "${n.eventType}"`,{eventId:n.eventId}))}),Q.Finished}),i},i=t.split(`//`).pop();return Object.defineProperty(r,"name",{value:i}),Object.defineProperty(r,"stepId",{value:t,writable:!1,enumerable:!1,configurable:!1}),n&&(mn(n),Object.defineProperty(r,"__closureVarsFn",{value:n,writable:!1,enumerable:!1,configurable:!1})),Object.defineProperty(r,"bind",{value:function(e,...r){let i=Function.prototype.bind.call(this,e,...r);return Object.defineProperty(i,"stepId",{value:t,writable:!1,enumerable:!1,configurable:!1}),n&&Object.defineProperty(i,"__closureVarsFn",{value:n,writable:!1,enumerable:!1,configurable:!1}),Object.defineProperty(i,"__boundThis",{value:e,writable:!1,enumerable:!1,configurable:!1}),r.length>0&&Object.defineProperty(i,"__boundArgs",{value:r,writable:!1,enumerable:!1,configurable:!1}),i},writable:!1,enumerable:!1,configurable:!1}),r}}var qo=n(((e,t)=>{(function(e,t,n){function r(e){var t=this,n=o();t.next=function(){var e=2091639*t.s0+t.c*23283064365386963e-26;return t.s0=t.s1,t.s1=t.s2,t.s2=e-(t.c=e|0)},t.c=1,t.s0=n(` `),t.s1=n(` `),t.s2=n(` `),t.s0-=n(e),t.s0<0&&(t.s0+=1),t.s1-=n(e),t.s1<0&&(t.s1+=1),t.s2-=n(e),t.s2<0&&(t.s2+=1),n=null}function i(e,t){return t.c=e.c,t.s0=e.s0,t.s1=e.s1,t.s2=e.s2,t}function a(e,t){var n=new r(e),a=t&&t.state,o=n.next;return o.int32=function(){return n.next()*4294967296|0},o.double=function(){return o()+(o()*2097152|0)*11102230246251565e-32},o.quick=o,a&&(typeof a==`object`&&i(a,n),o.state=function(){return i(n,{})}),o}function o(){var e=4022871197;return function(t){t=String(t);for(var n=0;n<t.length;n++){e+=t.charCodeAt(n);var r=.02519603282416938*e;e=r>>>0,r-=e,r*=e,e=r>>>0,r-=e,e+=r*4294967296}return(e>>>0)*23283064365386963e-26}}t&&t.exports?t.exports=a:n&&n.amd?n(function(){return a}):this.alea=a})(e,typeof t==`object`&&t,typeof define==`function`&&define)})),Jo=n(((e,t)=>{(function(e,t,n){function r(e){var t=this,n=``;t.x=0,t.y=0,t.z=0,t.w=0,t.next=function(){var e=t.x^t.x<<11;return t.x=t.y,t.y=t.z,t.z=t.w,t.w^=t.w>>>19^e^e>>>8},e===(e|0)?t.x=e:n+=e;for(var r=0;r<n.length+64;r++)t.x^=n.charCodeAt(r)|0,t.next()}function i(e,t){return t.x=e.x,t.y=e.y,t.z=e.z,t.w=e.w,t}function a(e,t){var n=new r(e),a=t&&t.state,o=function(){return(n.next()>>>0)/4294967296};return o.double=function(){do var e=((n.next()>>>11)+(n.next()>>>0)/4294967296)/(1<<21);while(e===0);return e},o.int32=n.next,o.quick=o,a&&(typeof a==`object`&&i(a,n),o.state=function(){return i(n,{})}),o}t&&t.exports?t.exports=a:n&&n.amd?n(function(){return a}):this.xor128=a})(e,typeof t==`object`&&t,typeof define==`function`&&define)})),Yo=n(((e,t)=>{(function(e,t,n){function r(e){var t=this,n=``;t.next=function(){var e=t.x^t.x>>>2;return t.x=t.y,t.y=t.z,t.z=t.w,t.w=t.v,(t.d=t.d+362437|0)+(t.v=t.v^t.v<<4^(e^e<<1))|0},t.x=0,t.y=0,t.z=0,t.w=0,t.v=0,e===(e|0)?t.x=e:n+=e;for(var r=0;r<n.length+64;r++)t.x^=n.charCodeAt(r)|0,r==n.length&&(t.d=t.x<<10^t.x>>>4),t.next()}function i(e,t){return t.x=e.x,t.y=e.y,t.z=e.z,t.w=e.w,t.v=e.v,t.d=e.d,t}function a(e,t){var n=new r(e),a=t&&t.state,o=function(){return(n.next()>>>0)/4294967296};return o.double=function(){do var e=((n.next()>>>11)+(n.next()>>>0)/4294967296)/(1<<21);while(e===0);return e},o.int32=n.next,o.quick=o,a&&(typeof a==`object`&&i(a,n),o.state=function(){return i(n,{})}),o}t&&t.exports?t.exports=a:n&&n.amd?n(function(){return a}):this.xorwow=a})(e,typeof t==`object`&&t,typeof define==`function`&&define)})),Xo=n(((e,t)=>{(function(e,t,n){function r(e){var t=this;t.next=function(){var e=t.x,n=t.i,r=e[n],i;return r^=r>>>7,i=r^r<<24,r=e[n+1&7],i^=r^r>>>10,r=e[n+3&7],i^=r^r>>>3,r=e[n+4&7],i^=r^r<<7,r=e[n+7&7],r^=r<<13,i^=r^r<<9,e[n]=i,t.i=n+1&7,i};function n(e,t){var n,r=[];if(t===(t|0))r[0]=t;else for(t=``+t,n=0;n<t.length;++n)r[n&7]=r[n&7]<<15^t.charCodeAt(n)+r[n+1&7]<<13;for(;r.length<8;)r.push(0);for(n=0;n<8&&r[n]===0;++n);for(n==8?r[7]=-1:r[n],e.x=r,e.i=0,n=256;n>0;--n)e.next()}n(t,e)}function i(e,t){return t.x=e.x.slice(),t.i=e.i,t}function a(e,t){e??=+new Date;var n=new r(e),a=t&&t.state,o=function(){return(n.next()>>>0)/4294967296};return o.double=function(){do var e=((n.next()>>>11)+(n.next()>>>0)/4294967296)/(1<<21);while(e===0);return e},o.int32=n.next,o.quick=o,a&&(a.x&&i(a,n),o.state=function(){return i(n,{})}),o}t&&t.exports?t.exports=a:n&&n.amd?n(function(){return a}):this.xorshift7=a})(e,typeof t==`object`&&t,typeof define==`function`&&define)})),Zo=n(((e,t)=>{(function(e,t,n){function r(e){var t=this;t.next=function(){var e=t.w,n=t.X,r=t.i,i,a;return t.w=e=e+1640531527|0,a=n[r+34&127],i=n[r=r+1&127],a^=a<<13,i^=i<<17,a^=a>>>15,i^=i>>>12,a=n[r]=a^i,t.i=r,a+(e^e>>>16)|0};function n(e,t){var n,r,i,a,o,s=[],c=128;for(t===(t|0)?(r=t,t=null):(t+=`\0`,r=0,c=Math.max(c,t.length)),i=0,a=-32;a<c;++a)t&&(r^=t.charCodeAt((a+32)%t.length)),a===0&&(o=r),r^=r<<10,r^=r>>>15,r^=r<<4,r^=r>>>13,a>=0&&(o=o+1640531527|0,n=s[a&127]^=r+o,i=n==0?i+1:0);for(i>=128&&(s[(t&&t.length||0)&127]=-1),i=127,a=512;a>0;--a)r=s[i+34&127],n=s[i=i+1&127],r^=r<<13,n^=n<<17,r^=r>>>15,n^=n>>>12,s[i]=r^n;e.w=o,e.X=s,e.i=i}n(t,e)}function i(e,t){return t.i=e.i,t.w=e.w,t.X=e.X.slice(),t}function a(e,t){e??=+new Date;var n=new r(e),a=t&&t.state,o=function(){return(n.next()>>>0)/4294967296};return o.double=function(){do var e=((n.next()>>>11)+(n.next()>>>0)/4294967296)/(1<<21);while(e===0);return e},o.int32=n.next,o.quick=o,a&&(a.X&&i(a,n),o.state=function(){return i(n,{})}),o}t&&t.exports?t.exports=a:n&&n.amd?n(function(){return a}):this.xor4096=a})(e,typeof t==`object`&&t,typeof define==`function`&&define)})),Qo=n(((e,t)=>{(function(e,t,n){function r(e){var t=this,n=``;t.next=function(){var e=t.b,n=t.c,r=t.d,i=t.a;return e=e<<25^e>>>7^n,n=n-r|0,r=r<<24^r>>>8^i,i=i-e|0,t.b=e=e<<20^e>>>12^n,t.c=n=n-r|0,t.d=r<<16^n>>>16^i,t.a=i-e|0},t.a=0,t.b=0,t.c=-1640531527,t.d=1367130551,e===Math.floor(e)?(t.a=e/4294967296|0,t.b=e|0):n+=e;for(var r=0;r<n.length+20;r++)t.b^=n.charCodeAt(r)|0,t.next()}function i(e,t){return t.a=e.a,t.b=e.b,t.c=e.c,t.d=e.d,t}function a(e,t){var n=new r(e),a=t&&t.state,o=function(){return(n.next()>>>0)/4294967296};return o.double=function(){do var e=((n.next()>>>11)+(n.next()>>>0)/4294967296)/(1<<21);while(e===0);return e},o.int32=n.next,o.quick=o,a&&(typeof a==`object`&&i(a,n),o.state=function(){return i(n,{})}),o}t&&t.exports?t.exports=a:n&&n.amd?n(function(){return a}):this.tychei=a})(e,typeof t==`object`&&t,typeof define==`function`&&define)})),$o=n(((t,n)=>{(function(t,r,i){var a=256,o=6,s=52,c=`random`,l=i.pow(a,o),u=i.pow(2,s),d=u*2,f=a-1,p;function m(e,t,n){var s=[];t=t==1?{entropy:!0}:t||{};var f=v(_(t.entropy?[e,b(r)]:e??y(),3),s),p=new h(s),m=function(){for(var e=p.g(o),t=l,n=0;e<u;)e=(e+n)*a,t*=a,n=p.g(1);for(;e>=d;)e/=2,t/=2,n>>>=1;return(e+n)/t};return m.int32=function(){return p.g(4)|0},m.quick=function(){return p.g(4)/4294967296},m.double=m,v(b(p.S),r),(t.pass||n||function(e,t,n,r){return r&&(r.S&&g(r,p),e.state=function(){return g(p,{})}),n?(i[c]=e,t):e})(m,f,`global`in t?t.global:this==i,t.state)}function h(e){var t,n=e.length,r=this,i=0,o=r.i=r.j=0,s=r.S=[];for(n||(e=[n++]);i<a;)s[i]=i++;for(i=0;i<a;i++)s[i]=s[o=f&o+e[i%n]+(t=s[i])],s[o]=t;(r.g=function(e){for(var t,n=0,i=r.i,o=r.j,s=r.S;e--;)t=s[i=f&i+1],n=n*a+s[f&(s[i]=s[o=f&o+t])+(s[o]=t)];return r.i=i,r.j=o,n})(a)}function g(e,t){return t.i=e.i,t.j=e.j,t.S=e.S.slice(),t}function _(e,t){var n=[],r=typeof e,i;if(t&&r==`object`)for(i in e)try{n.push(_(e[i],t-1))}catch{}return n.length?n:r==`string`?e:e+`\0`}function v(e,t){for(var n=e+``,r,i=0;i<n.length;)t[f&i]=f&(r^=t[f&i]*19)+n.charCodeAt(i++);return b(t)}function y(){try{var e;return p&&(e=p.randomBytes)?e=e(a):(e=new Uint8Array(a),(t.crypto||t.msCrypto).getRandomValues(e)),b(e)}catch{var n=t.navigator,i=n&&n.plugins;return[+new Date,t,i,t.screen,b(r)]}}function b(e){return String.fromCharCode.apply(0,e)}if(v(i.random(),r),typeof n==`object`&&n.exports){n.exports=m;try{p=e(`crypto`)}catch{}}else typeof define==`function`&&define.amd?define(function(){return m}):i[`seed`+c]=m})(typeof self<`u`?self:t,[],Math)})),es=t(n(((e,t)=>{var n=qo(),r=Jo(),i=Yo(),a=Xo(),o=Zo(),s=Qo(),c=$o();c.alea=n,c.xor128=r,c.xorwow=i,c.xorshift7=a,c.xor4096=o,c.tychei=s,t.exports=c}))(),1);const ts=`ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/`,ns=new Uint8Array(128).fill(255);for(let e=0;e<64;e++)ns[ts.charCodeAt(e)]=e;function rs(e){return e===9||e===10||e===12||e===13||e===32}function is(e,t){for(;t<e.length&&rs(e.charCodeAt(t));)t++;return t}function as(e,t){let n=e.length,r=e;n===2?r=e+`AA`:n===3&&(r=e+`A`);let i=ns[r.charCodeAt(0)],a=ns[r.charCodeAt(1)],o=ns[r.charCodeAt(2)],s=ns[r.charCodeAt(3)],c=i<<2|a>>4,l=(a&15)<<4|o>>2,u=(o&3)<<6|s;if(n===2){if(t&&l!==0)throw SyntaxError(`Extra bits in base64 chunk`);return[c]}if(n===3){if(t&&u!==0)throw SyntaxError(`Extra bits in base64 chunk`);return[c,l]}return[c,l,u]}function os(e,t,n,r){if(r===void 0&&(r=2**53-1),r===0)return{read:0,bytes:[],error:null};let i=0,a=[],o=``,s=0,c=0,l=e.length;for(;;){if(c=is(e,c),c===l){if(s>0){if(n===`stop-before-partial`)return{read:i,bytes:a,error:null};if(n===`loose`){if(s===1)return{read:i,bytes:a,error:SyntaxError(`Invalid base64: lone character in final chunk`)};a.push(...as(o,!1))}else return{read:i,bytes:a,error:SyntaxError(`Invalid base64: incomplete chunk in strict mode`)}}return{read:l,bytes:a,error:null}}let u=e[c];if(c++,u===`=`){if(s<2)return{read:i,bytes:a,error:SyntaxError(`Invalid base64: padding in unexpected place`)};if(c=is(e,c),s===2){if(c===l)return n===`stop-before-partial`?{read:i,bytes:a,error:null}:{read:i,bytes:a,error:SyntaxError(`Invalid base64: missing second padding character`)};u=e[c],u===`=`&&(c=is(e,c+1))}if(c<l)return{read:i,bytes:a,error:SyntaxError(`Invalid base64: unexpected characters after padding`)};let t=n===`strict`;try{a.push(...as(o,t))}catch(e){return{read:i,bytes:a,error:e}}return{read:l,bytes:a,error:null}}if(t===`base64url`){if(u===`+`||u===`/`)return{read:i,bytes:a,error:SyntaxError(`Invalid base64url: unexpected character '${u}'`)};u===`-`?u=`+`:u===`_`&&(u=`/`)}let d=u.charCodeAt(0);if(d>=128||ns[d]===255)return{read:i,bytes:a,error:SyntaxError(`Invalid base64: unexpected character '${e[c-1]}'`)};let f=r-a.length;if(f===1&&s===2||f===2&&s===3||(o+=u,s=o.length,s===4&&(a.push(...as(o)),o=``,s=0,i=c,a.length===r)))return{read:i,bytes:a,error:null}}}function ss(e,t){t===void 0&&(t=2**53-1);let n=e.length,r=[],i=0;if(n%2!=0)return{read:0,bytes:[],error:SyntaxError(`Invalid hex: string length must be even`)};for(;i<n&&r.length<t;){let t=e.substring(i,i+2);if(!/^[0-9a-fA-F]{2}$/.test(t))return{read:i,bytes:r,error:SyntaxError(`Invalid hex: unexpected character at position ${i}`)};i+=2,r.push(Number.parseInt(t,16))}return{read:i,bytes:r,error:null}}function cs(e,t){let n=t?.alphabet??`base64`;if(n!==`base64`&&n!==`base64url`)throw TypeError(`Invalid alphabet: expected "base64" or "base64url", got "${n}"`);let r=!!t?.omitPadding,i=``,a=e.length;for(let t=0;t<a;t+=3){let n=e[t],o=t+1<a?e[t+1]:0,s=t+2<a?e[t+2]:0;i+=ts[n>>2&63],i+=ts[(n&3)<<4|o>>4&15],t+1<a?i+=ts[(o&15)<<2|s>>6&3]:r||(i+=`=`),t+2<a?i+=ts[s&63]:r||(i+=`=`)}return n===`base64url`&&(i=i.replace(/\+/g,`-`).replace(/\//g,`_`)),i}function ls(e){let t=``;for(let n=0;n<e.length;n++)t+=e[n].toString(16).padStart(2,`0`);return t}function us(e){let t=e.prototype,n=e;t.toBase64||Object.defineProperty(t,"toBase64",{value:function(t){if(!(this instanceof e))throw TypeError(`this is not a Uint8Array`);return cs(this,t)},writable:!0,enumerable:!1,configurable:!0}),t.toHex||Object.defineProperty(t,"toHex",{value:function(){if(!(this instanceof e))throw TypeError(`this is not a Uint8Array`);return ls(this)},writable:!0,enumerable:!1,configurable:!0}),t.setFromBase64||Object.defineProperty(t,"setFromBase64",{value:function(t,n){if(!(this instanceof e))throw TypeError(`this is not a Uint8Array`);if(typeof t!=`string`)throw TypeError(`expected a string`);let r=n?.alphabet??`base64`;if(r!==`base64`&&r!==`base64url`)throw TypeError(`Invalid alphabet: expected "base64" or "base64url", got "${r}"`);let i=n?.lastChunkHandling??`loose`;if(i!==`loose`&&i!==`strict`&&i!==`stop-before-partial`)throw TypeError(`Invalid lastChunkHandling: expected "loose", "strict", or "stop-before-partial", got "${i}"`);let a=os(t,r,i,this.length),o=a.bytes,s=o.length;for(let e=0;e<s;e++)this[e]=o[e];if(a.error)throw a.error;return{read:a.read,written:s}},writable:!0,enumerable:!1,configurable:!0}),t.setFromHex||Object.defineProperty(t,"setFromHex",{value:function(t){if(!(this instanceof e))throw TypeError(`this is not a Uint8Array`);if(typeof t!=`string`)throw TypeError(`expected a string`);let n=ss(t,this.length),r=n.bytes,i=r.length;for(let e=0;e<i;e++)this[e]=r[e];if(n.error)throw n.error;return{read:n.read,written:i}},writable:!0,enumerable:!1,configurable:!0}),n.fromBase64||Object.defineProperty(e,"fromBase64",{value:function(t,n){if(typeof t!=`string`)throw TypeError(`expected a string`);let r=n?.alphabet??`base64`;if(r!==`base64`&&r!==`base64url`)throw TypeError(`Invalid alphabet: expected "base64" or "base64url", got "${r}"`);let i=n?.lastChunkHandling??`loose`;if(i!==`loose`&&i!==`strict`&&i!==`stop-before-partial`)throw TypeError(`Invalid lastChunkHandling: expected "loose", "strict", or "stop-before-partial", got "${i}"`);let a=os(t,r,i);if(a.error)throw a.error;return new e(a.bytes)},writable:!0,enumerable:!1,configurable:!0}),n.fromHex||Object.defineProperty(e,"fromHex",{value:function(t){if(typeof t!=`string`)throw TypeError(`expected a string`);let n=ss(t);if(n.error)throw n.error;return new e(n.bytes)},writable:!0,enumerable:!1,configurable:!0})}function ds(e){return function(){let t=`0123456789abcdef`,n=``;for(let r=0;r<36;r++)n+=r===8||r===13||r===18||r===23?`-`:r===14?`4`:r===19?t[Math.floor(e()*4)+8]:t[Math.floor(e()*16)];return n}}const fs={"SHA-1":`sha1`,"SHA-256":`sha256`,"SHA-384":`sha384`,"SHA-512":`sha512`};function ps(e){if(Ar.isTypedArray(e)||Ar.isDataView(e)){if(Ar.isSharedArrayBuffer(e.buffer))throw TypeError(`crypto.subtle.digest does not accept SharedArrayBuffer-backed views`);return e}if(!Ar.isArrayBuffer(e))throw TypeError(`data must be an ArrayBuffer or ArrayBufferView`);return new Uint8Array(e)}function ms(e){let{fixedTimestamp:t}=e,{seed:n}=e,r=(0,es.default)(n),i=Pr(),a=Fr(`globalThis`,i);a.Math.random=r;let o=a.Date;a.Date=function(...e){return new.target===void 0?new o(t).toString():Reflect.construct(o,e.length===0?[t]:e,new.target)},a.Date.prototype=o.prototype,Object.setPrototypeOf(a.Date,o),a.Date.now=()=>t;let s=globalThis.crypto,c=s.subtle;function l(e){for(let t=0;t<e.length;t++)e[t]=Math.floor(r()*256);return e}let u=ds(r),d=a;delete d.Atomics.waitAsync,delete d.WebAssembly.compile,delete d.WebAssembly.instantiate,delete d.WebAssembly.compileStreaming,delete d.WebAssembly.instantiateStreaming,delete d.WeakRef,delete d.FinalizationRegistry;let f=async(e,t)=>{let n=typeof e==`string`?e:e.name,r=fs[n.toUpperCase()];if(!r)throw new DOMException(`Unrecognized algorithm name: ${n}`,`NotSupportedError`);let i=kr(r).update(ps(t)).digest(),a=new ArrayBuffer(i.byteLength);return new Uint8Array(a).set(i),a};return a.crypto=new Proxy(s,{get(e,t){return t===`getRandomValues`?l:t===`randomUUID`?u:t===`subtle`?new Proxy(c,{get(e,t){if(t===`digest`)return f;let n=e[t];return typeof n==`function`?()=>{throw new K(`\`crypto.subtle.${String(t)}()\` is not available inside a workflow function. Move it to a step function where full Node.js crypto is available.`)}:n}}):e[t]}}),a.process={env:Object.freeze({...process.env})},a.DOMException=globalThis.DOMException,a.Headers=globalThis.Headers,a.TextEncoder=globalThis.TextEncoder,a.TextDecoder=globalThis.TextDecoder,a.console=globalThis.console,a.URL=globalThis.URL,a.URLSearchParams=globalThis.URLSearchParams,a.structuredClone=globalThis.structuredClone,a.atob=globalThis.atob,a.btoa=globalThis.btoa,us(a.Uint8Array),a.Symbol.dispose??=Symbol.for(`Symbol.dispose`),a.Symbol.asyncDispose??=Symbol.for(`Symbol.asyncDispose`),a.exports={},a.module={exports:a.exports},{context:i,globalThis:a,updateTimestamp:e=>{t=e}}}const hs=d(`@workflow/core//vmScriptCache`,1,()=>({byCode:new Map}));function gs(e){let t=hs.byCode.get(e);if(t!==void 0)return hs.byCode.delete(e),hs.byCode.set(e,t),t}function _s(e,t){let n=gs(e);if(n===void 0)for(n=new Map,hs.byCode.set(e,n);hs.byCode.size>8;){let e=hs.byCode.keys().next().value;if(e===void 0)break;hs.byCode.delete(e)}let r=n.get(t),i=r!==void 0;return r===void 0&&(r=new Nr(e,{filename:t}),n.set(t,r)),{script:r,cacheHit:i}}function vs(e){return async function(t,n={}){let{promise:r,resolve:i}=Wt(),a=`attr_${e.generateUlid()}`;try{s({changes:t,writer:{type:`workflow`},...n.allowReservedAttributes===!0?{allowReservedAttributes:!0}:{}})}catch(t){if(!(t instanceof f))throw t;if(!e.eventsConsumer.events.some(e=>e.eventType===`attr_set`&&e.correlationId===a))throw new Y(t.message)}let o={type:`attribute`,correlationId:a,changes:t,...n.allowReservedAttributes===!0?{allowReservedAttributes:!0}:{}};return e.invocationsQueue.set(a,o),e.eventsConsumer.subscribe(r=>r?r.correlationId===a?r.eventType!==`attr_set`||r.eventData.writer.type!==`workflow`||JSON.stringify(r.eventData.changes)!==JSON.stringify(t)||r.eventData.allowReservedAttributes===!0!=(n.allowReservedAttributes===!0)?(e.promiseQueue=e.promiseQueue.then(()=>{e.onWorkflowError(new Ht(`Replay divergence: Unexpected attribute event for ${a}`,{eventId:r.eventId}))}),Q.Finished):(e.invocationsQueue.delete(a),e.promiseQueue=e.promiseQueue.then(()=>{i()}),Q.Finished):Q.NotConsumed:(Mn(e),Q.NotConsumed)),r}}function ys(e,t){if(typeof t!=`string`)return null;let n=ln(cn,e.globalThis),r=n?.[nn];return typeof r==`function`?r.call(n,{runId:t}):null}function bs(e){return function(t={}){if(t.token===``)throw Error("`createHook()` was called with an empty string token. Pass a non-empty token, or omit the `token` option to use a generated one.");if(t.isWebhook===!0&&t.experimental_minRetention!==void 0)throw Error("Webhook hooks do not support `experimental_minRetention`. Use a non-webhook `createHook()` with `resumeHook()`.");if(t.experimental_minRetention!==void 0&&e.worldCapabilities?.hookRetention?.active!==!0)throw new Y("The configured World does not support `experimental_minRetention` for Hooks.");if(t.experimental_force===!0){if(t.token===void 0||t.token===null)throw Error("`createHook()` was called with `experimental_force: true` but no `token`. Force-claiming only applies to an explicit token another run may hold.");if(t.isWebhook===!0)throw Error("Webhook hooks do not support `experimental_force`. Use a non-webhook `createHook()` with an explicit token.");if(e.worldCapabilities?.hookForceClaim!==!0)throw new Y("The configured World does not support `experimental_force` for Hooks.")}let n=`hook_${e.generateUlid()}`,r=t.token??e.generateNanoid(),i=t.experimental_minRetention===void 0?void 0:Ot(t.experimental_minRetention),a=t.isWebhook??!1;e.invocationsQueue.set(n,{type:`hook`,correlationId:n,token:r,tokenRetentionUntil:i,...t.experimental_force===!0&&{force:!0},metadata:t.metadata,isWebhook:a});let o=[],s=[],c=[],l=!1,u=!1,d=!1,f=!1,p=null,m=null,h=null,g=Promise.resolve();function _(t,n){let r=e.eventsConsumer.eventIndex,i=jn(e,r,`hook`,{deliveredAt:t}),a=On(e,r,`hook`);g=e.promiseQueue.then(()=>a).then(()=>{i.markDelivered(),n()})}function v(t){let n=g;e.promiseQueue=e.promiseQueue.then(()=>{n.then(t)})}let y=new Set;Be.debug(`Hook consumer setup`,{correlationId:n,token:r}),e.eventsConsumer.subscribe(i=>{if(!i)return l=!0,(s.length>0&&o.length===0||c.length>0&&!u&&!f)&&Mn(e),Q.NotConsumed;if(i.correlationId!==n)return Q.NotConsumed;let a=`eventData`in i&&i.eventData&&`token`in i.eventData?i.eventData.token:void 0;if(typeof a==`string`&&a!==r)return e.promiseQueue=e.promiseQueue.then(()=>{e.onWorkflowError(new Ht(`Replay divergence: hook event ${i.eventType} for ${n} belongs to token "${a}", but the current hook consumer expects "${r}"`,{eventId:i.eventId}))}),Q.Finished;if(i.eventType===`hook_created`){let t=e.invocationsQueue.get(n);t&&t.type===`hook`&&(t.hasCreatedEvent=!0,t.tokenRetentionUntil=i.eventData.tokenRetentionUntil),u=!0;let r=c.slice();return c.length=0,_(+i.createdAt,()=>{for(let e of r)e.resolve(null)}),Q.Consumed}if(i.eventType===`hook_conflict`){e.invocationsQueue.delete(n);let r=i,a=t.experimental_force===!0&&r.eventData.forceRefusedReason===void 0,o=a?new Y(`createHook({ experimental_force: true }) for token "${r.eventData.token}" was answered with a hook_conflict: the configured World does not support force-claiming hook tokens${r.eventData.conflictingRunId?` (run "${r.eventData.conflictingRunId}" holds it)`:``}.`):new jt(r.eventData.token,r.eventData.conflictingRunId);f=!0,p=o,h=a?null:ys(e,r.eventData.conflictingRunId);let l=s.slice();s.length=0;let u=c.slice();return c.length=0,_(+i.createdAt,()=>{for(let e of l)e.reject(o);for(let e of u)h?e.resolve(h):e.reject(o)}),Q.Consumed}if(i.eventType===`hook_received`){let t=i.resumeId;if(typeof t==`string`){if(y.has(t))return Q.Consumed;y.add(t)}let n=e.eventsConsumer.eventIndex,r=s.length>0,a=jn(e,n,`hook`,{armed:r,deliveredAt:+i.createdAt});if(r){let t=On(e,n,`hook`),r=s.shift();if(r){e.pendingDeliveries++;let n;e.promiseQueue=e.promiseQueue.then(async()=>{try{let t=await e.replayPayloadCache.prepareEventPayload(i.eventId,`payload`,i.eventData.payload);n={ok:!0,value:await vn(i.eventData.payload,e.runId,e.encryptionKey,e.globalThis,{},t)}}catch(e){n={ok:!1,error:e}}finally{e.pendingDeliveries--}t.then(()=>{a.markDelivered(),n.ok?r.resolve(n.value):r.reject(n.error)})})}}else{let t,r=Wt();e.pendingDeliveries++,e.promiseQueue=e.promiseQueue.then(async()=>{try{let n=await e.replayPayloadCache.prepareEventPayload(i.eventId,`payload`,i.eventData.payload);t={ok:!0,value:await vn(i.eventData.payload,e.runId,e.encryptionKey,e.globalThis,{},n)}}catch(e){t={ok:!1,error:e}}finally{e.pendingDeliveries--,r.resolve()}}),o.push({claim:()=>(a.arm(),r.promise.then(()=>On(e,n,`hook`)).then(()=>{if(a.markDelivered(),t&&!t.ok)throw t.error;return t.value}))})}return Q.Consumed}if(i.eventType===`hook_disposed`){e.invocationsQueue.delete(n),d=!0;let t=i.eventData?.forceClaimedBy;if(t){let i=new zt(r,t.runId,t.hookId);m=i;let a=s.slice();s.length=0;let o=c.slice();c.length=0,e.promiseQueue=e.promiseQueue.then(()=>{for(let e of a)e.reject(i);for(let e of o)e.resolve(null)}),Be.debug(`Hook force-claimed by another run`,{correlationId:n,token:r,claimedByRunId:t.runId})}return Q.Finished}return e.promiseQueue=e.promiseQueue.then(()=>{e.onWorkflowError(new Ht(`Replay divergence: Unexpected event type for hook ${n} (token: ${r}) "${i.eventType}"`,{eventId:i.eventId}))}),Q.Finished});let b=!1;function x(){let t=Wt();if(f&&p)return v(()=>{t.reject(p)}),t.promise;if(o.length>0){let e=o.shift();if(e)return e.claim()}if(m){let n=m;return e.promiseQueue=e.promiseQueue.then(()=>{t.reject(n)}),t.promise}return l&&Mn(e),s.push(t),t.promise}function S(){let t=Wt();if(u)return v(()=>{t.resolve(null)}),t.promise;if(f)return v(()=>{h?t.resolve(h):t.reject(p)}),t.promise;let r=e.invocationsQueue.get(n);return r&&r.type===`hook`&&(r.hasConflictAwaiter=!0),l&&Mn(e),c.push(t),t.promise}function C(){if(b||(b=!0,d))return;let t=e.invocationsQueue.get(n);t&&t.type===`hook`&&(t.disposed=!0),s.length>0&&(s.length=0,Mn(e)),Be.debug(`Hook disposed`,{correlationId:n,token:r})}let w={token:r,getConflict(){return S()},then(e,t){return x().then(e,t)},async*[Symbol.asyncIterator](){for(;!b;)yield await this},dispose:C,[Symbol.dispose]:C},T=e.globalThis.Symbol.dispose;return T&&T!==Symbol.dispose&&(w[T]=C),w}}function xs(e){return async function(t){let{promise:n,resolve:r}=Wt(),i=`wait_${e.generateUlid()}`,a=Ot(t),o={type:`wait`,correlationId:i,resumeAt:a};return e.invocationsQueue.set(i,o),e.eventsConsumer.subscribe(t=>{if(!t)return Mn(e),Q.NotConsumed;if(t.correlationId!==i)return Q.NotConsumed;if(t.eventType===`wait_created`){let n=e.invocationsQueue.get(i);return n&&n.type===`wait`&&(n.hasCreatedEvent=!0,n.resumeAt=t.eventData.resumeAt),Q.Consumed}if(t.eventType===`wait_completed`){let n=t.eventData?.resumeAt;if(n!==void 0){let r=e.invocationsQueue.get(i),o=r&&r.type===`wait`?r.resumeAt:a,s=new Date(n),c=s.getTime(),l=o.getTime(),u=Number.isFinite(c)?s.toISOString():String(n);if(c!==l)return e.promiseQueue=e.promiseQueue.then(()=>{e.onWorkflowError(new Ht(`Replay divergence: wait_completed event for ${i} has resumeAt "${u}", but the current wait consumer expects "${o.toISOString()}"`,{eventId:t.eventId}))}),Q.Finished}e.invocationsQueue.delete(i);let o=e.eventsConsumer.eventIndex,s=jn(e,o,`wait`,{deliveredAt:+t.createdAt}),c=On(e,o,`wait`);return e.promiseQueue.then(()=>c).then(()=>{s.markDelivered(),r()}),Q.Finished}return e.promiseQueue=e.promiseQueue.then(()=>{e.onWorkflowError(new Ht(`Replay divergence: Unexpected event type for wait ${i} "${t.eventType}"`,{eventId:t.eventId}))}),Q.Finished}),n}}async function Ss(e,t,n,r,i,a){if(t.size!==0){for(let e of t.values())e.type===`hook`&&e.isSystem&&!e.disposed&&!e.abortRequested&&(e.disposed=!0);try{let e=await Xi();await ka({suspension:new Gt(t,n),world:e,run:r,runReadyBarrier:a})}catch(t){W.warn(`Failed to drain pending queue items for ${i} workflow run`,{workflowRunId:e,message:t instanceof Error?t.message:String(t)})}}}function Cs(e,t){let n=ve(t)?.moduleSpecifier||t,r=`globalThis.__private_workflows?.get(${JSON.stringify(t)})`;return G(`workflow.bundle.compile`,async t=>{let i=_s(e,n),a=_s(r,n);return t?.setAttributes({...A(i.cacheHit)}),{bundleScript:i.script,workflowLookupScript:a.script}})}function ws(e){return Es(`replay`,e.workflowRun,e.events,async t=>{let{session:n,execution:r}=await Os(e);return t?.setAttributes({...x(n.argumentCount)}),Ds(await r,t)})}function Ts(e,t){return Es(`retained`,e.workflowRun,t,async n=>{n?.setAttributes({...x(e.argumentCount)});let r=await e.resume(t);return r.type===`replay`?r:Ds(r,n)})}function Es(e,t,n,r){return G(`workflow.run ${t.workflowName}`,i=>(i?.setAttributes({...v(t.workflowName),...Fe(t.runId),...Je(t.status),...ye(n.length),...be(e)}),r(i)))}function Ds(e,t){return e.type===`completed`?t?.setAttributes({...Qe(e.resultType)}):t&&(Ce(e.suspension,t),e.parked&&t.setAttributes({...Ve(e.parked.count),...Ye(e.parked.eventId),...at(e.parked.eventType)})),e}async function Os(e){let t=await pt(`workflow.vm.create_context`);return ks(e,t.end).catch(e=>{throw t.fail(e),e})}async function ks({workflowCode:e,workflowRun:t,events:n,encryptionKey:r,replayPayloadCache:i,compiledWorkflowScripts:a,runReadyBarrier:o,worldCapabilities:s},c){let l=t.startedAt;if(!l)throw new K(`Workflow run "${t.runId}" has no "startedAt" timestamp (should not happen)`);let u=ca(t.runId)??+t.createdAt,d=!!process.env.VERCEL_URL,f=Jt(d?`https://${process.env.VERCEL_URL}`:`http://localhost:${await ua()??3e3}`),{context:m,globalThis:h,updateTimestamp:g}=ms({seed:`${t.runId}:${t.workflowName}:${t.deploymentId}`,fixedTimestamp:u}),_=Wt(),v={type:`running`,interruption:_},y=e=>{switch(v.type){case`running`:{let{interruption:t}=v;v=Gt.is(e)?{type:`suspended`,suspension:e}:{type:`replay`},k.suspensionGeneration++,t.reject(e);return}case`suspended`:v={type:`replay`};return;case`replay`:case`completed`:return}},b=p(()=>h.Math.random()),x=0,S=()=>(x+=1,b(u)),C=Vo(`useandom-26T198340PX75pxJACKVERYMINDBUSHWOLF_GQZbfghjklqvwyzrict`,21,e=>new Uint8Array(e).map(()=>256*h.Math.random())),w={current:Promise.resolve()},T={current:()=>!0},E=u,D=e=>{e>E&&(E=e,g(e))},O=new on(n,{onUnconsumedEvent:e=>{y(new Ht(`Replay could not consume event: eventType=${e.eventType}, correlationId=${e.correlationId}, eventId=${e.eventId}. ${Go(e,k.invocationsQueue,O)}`,{eventId:e.eventId}))},onDuplicateEvent:(e,n)=>{let r={workflowRunId:t.runId,eventId:e.eventId,eventType:e.eventType,firstEventType:n,correlationId:e.correlationId};if(n!==e.eventType){W.debug(`Ignoring inert event that decides an already-decided outcome differently`,r);return}W.debug(`Ignoring inert event that repeats a class already in the event log`,r)},getPromiseQueue:()=>w.current,isDeliveryIdle:()=>T.current()}),k={runId:t.runId,encryptionKey:r,worldCapabilities:s,globalThis:h,onWorkflowError:y,eventsConsumer:O,generateUlid:S,generateNanoid:C,get mintCount(){return x},invocationsQueue:new Map,get promiseQueue(){return w.current},set promiseQueue(e){w.current=e},pendingDeliveries:0,suspensionGeneration:0,pendingDeliveryBarriers:new Map,advanceClock:D,replayPayloadCache:i};T.current=()=>An(k);let A=!1;k.eventsConsumer.subscribe(e=>e?e.eventType===`run_created`?Q.Consumed:e.eventType===`run_started`?A?Q.NotConsumed:(A=!0,Q.Consumed):e.eventType===`attr_set`&&e.eventData.writer.type===`step`?Q.Consumed:Q.NotConsumed:Q.NotConsumed);let j=Ko(k),ee=bs(k),M=xs(k),te=vs(k);h[gn]=j,h[xn]=te,h[hn]=ee,h[_n]=M,h[wn]=e=>sn(t.runId,e);let N={workflowName:t.workflowName,workflowRunId:t.runId,workflowStartedAt:new h.Date(+l),url:f,features:{encryption:!!r}};h[ir]=N,h[Sn]=S,h.fetch=()=>{throw new h.Error(`Global "fetch" is unavailable in workflow functions. Use the "fetch" step function from "workflow" to make HTTP requests.\n\nLearn more: https://workflow-sdk.dev/err/${Rt.FETCH_IN_WORKFLOW_FUNCTION}`)};let P=`Timeout functions like "setTimeout" and "setInterval" are not supported in workflow functions. Use the "sleep" function from "workflow" for time-based delays.`;h.setTimeout=()=>{throw new K(P,{slug:Rt.TIMEOUT_FUNCTIONS_IN_WORKFLOW})},h.setInterval=()=>{throw new K(P,{slug:Rt.TIMEOUT_FUNCTIONS_IN_WORKFLOW})},h.clearTimeout=()=>{throw new K(P,{slug:Rt.TIMEOUT_FUNCTIONS_IN_WORKFLOW})},h.clearInterval=()=>{throw new K(P,{slug:Rt.TIMEOUT_FUNCTIONS_IN_WORKFLOW})},h.setImmediate=()=>{throw new K(P,{slug:Rt.TIMEOUT_FUNCTIONS_IN_WORKFLOW})},h.clearImmediate=()=>{throw new K(P,{slug:Rt.TIMEOUT_FUNCTIONS_IN_WORKFLOW})},h.AbortController=Dn(k);let ne=rn();h.AbortSignal={abort:ne.abort,any:ne.any,timeout:ne.timeout};class F{cache;credentials;destination;headers;integrity;method;mode;redirect;referrer;referrerPolicy;url;keepalive;signal;duplex;body;constructor(e,t){if(typeof e==`string`||e instanceof h.URL){let t=String(e);try{new h.URL(t),this.url=t}catch(e){throw TypeError(`Failed to parse URL from ${t}`,{cause:e})}}else{if(this.url=e.url,!t){this.method=e.method,this.headers=new h.Headers(e.headers),this.body=e.body,this.mode=e.mode,this.credentials=e.credentials,this.cache=e.cache,this.redirect=e.redirect,this.referrer=e.referrer,this.referrerPolicy=e.referrerPolicy,this.integrity=e.integrity,this.keepalive=e.keepalive,this.signal=e.signal,this.duplex=e.duplex,this.destination=e.destination;return}this.method=e.method,this.headers=new h.Headers(e.headers),this.body=e.body,this.mode=e.mode,this.credentials=e.credentials,this.cache=e.cache,this.redirect=e.redirect,this.referrer=e.referrer,this.referrerPolicy=e.referrerPolicy,this.integrity=e.integrity,this.keepalive=e.keepalive,this.signal=e.signal,this.duplex=e.duplex,this.destination=e.destination}t?.method?this.method=t.method.toUpperCase():typeof this.method!=`string`&&(this.method=`GET`),t?.headers?this.headers=new h.Headers(t.headers):(typeof e==`string`||e instanceof h.URL)&&(this.headers=new h.Headers),t?.mode===void 0?typeof this.mode!=`string`&&(this.mode=`cors`):this.mode=t.mode,t?.credentials===void 0?typeof this.credentials!=`string`&&(this.credentials=`same-origin`):this.credentials=t.credentials,t?.cache===void 0?typeof this.cache!=`string`&&(this.cache=`default`):this.cache=t.cache,t?.redirect===void 0?typeof this.redirect!=`string`&&(this.redirect=`follow`):this.redirect=t.redirect,t?.referrer===void 0?typeof this.referrer!=`string`&&(this.referrer=`about:client`):this.referrer=t.referrer,t?.referrerPolicy===void 0?typeof this.referrerPolicy!=`string`&&(this.referrerPolicy=``):this.referrerPolicy=t.referrerPolicy,t?.integrity===void 0?typeof this.integrity!=`string`&&(this.integrity=``):this.integrity=t.integrity,t?.keepalive===void 0?typeof this.keepalive!=`boolean`&&(this.keepalive=!1):this.keepalive=t.keepalive,t?.signal===void 0?this.signal||={aborted:!1}:this.signal=t.signal,this.duplex||=`half`,this.destination||=`document`;let n=t?.body;if(n!=null&&(this.method===`GET`||this.method===`HEAD`))throw TypeError(`Request with GET/HEAD method cannot have body.`);this.body=n==null?null:Object.create(h.ReadableStream.prototype,{[dn]:{value:n,writable:!1}})}clone(){Z()}get bodyUsed(){return!1}blob;formData;arrayBuffer;json;text;async bytes(){return new Uint8Array(await this.arrayBuffer())}}h.Request=F,Object.defineProperties(F.prototype,{arrayBuffer:{value:j(`__builtin_response_array_buffer`),writable:!0,configurable:!0},json:{value:j(`__builtin_response_json`),writable:!0,configurable:!0},text:{value:j(`__builtin_response_text`),writable:!0,configurable:!0}});class I{type;url;status;statusText;body;headers;redirected;constructor(e,t){if(this.status=t?.status??200,this.statusText=t?.statusText??``,this.headers=new h.Headers(t?.headers),this.type=`default`,this.url=``,this.redirected=!1,e!=null&&(this.status===204||this.status===205||this.status===304))throw TypeError(`Response constructor: Invalid response status code ${this.status}`);this.body=e==null?null:Object.create(h.ReadableStream.prototype,{[dn]:{value:e,writable:!1}})}clone;blob;formData;get ok(){return this.status>=200&&this.status<300}get bodyUsed(){return!1}arrayBuffer;json;text;async bytes(){return new Uint8Array(await this.arrayBuffer())}static json(e,t){let n=JSON.stringify(e),r=new h.Headers(t?.headers);return r.has(`content-type`)||r.set(`content-type`,`application/json`),new I(n,{...t,headers:r})}static error(){Z()}static redirect(e,t=302){if(![301,302,303,307,308].includes(t))throw RangeError(`Invalid redirect status code: ${t}. Must be one of: 301, 302, 303, 307, 308`);let n=new h.Headers;n.set(`Location`,String(e));let r=Object.create(I.prototype);return r.status=t,r.statusText=``,r.headers=n,r.body=null,r.type=`default`,r.url=``,r.redirected=!1,r}}h.Response=I,Object.defineProperties(I.prototype,{arrayBuffer:{value:j(`__builtin_response_array_buffer`),writable:!0,configurable:!0},json:{value:j(`__builtin_response_json`),writable:!0,configurable:!0},text:{value:j(`__builtin_response_text`),writable:!0,configurable:!0}});class L{constructor(){Z()}get locked(){return!1}cancel(){Z()}getReader(){Z()}pipeThrough(){Z()}pipeTo(){Z()}tee(){Z()}values(){Z()}static from(){Z()}[Symbol.asyncIterator](){Z()}}h.ReadableStream=L;class re{constructor(){Z()}get locked(){return!1}abort(){Z()}close(){Z()}getWriter(){Z()}}h.WritableStream=re;class R{readable;writable;constructor(){Z()}}h.TransformStream=R,h.console=globalThis.console;let ie=Symbol.for(`@vercel/request-context`);h[ie]=globalThis[ie],c();let{bundleScript:ae,workflowLookupScript:oe}=a??await Cs(e,t.workflowName),se=await G(`workflow.bundle.evaluate`,async()=>(ae.runInContext(m),oe.runInContext(m)));if(typeof se!=`function`)throw new At(t.workflowName);let z=[];k.promiseQueue=k.promiseQueue.then(async()=>{z=await G(`workflow.input.hydrate`,async()=>{let e=await i.prepareWorkflowInput(t);return en(t.input,t.runId,r,h,{},e)})}),await k.promiseQueue;let ce=async e=>{throw Gt.is(e)||Ht.is(e)?(v.type===`running`&&(v={type:`replay`}),e):(v={type:`completed`},await Ss(t.runId,k.invocationsQueue,h,t,`failed`,o),e)},le=async(e,n)=>{let i;try{i=await Promise.race([e,n.promise])}catch(e){return v.type===`suspended`&&e===v.suspension?{type:`suspended`,suspension:v.suspension,session:de,parked:O.parkedSummary}:ce(e)}v={type:`completed`};let a=O.strandedEvent;if(a)return ce(new Ht(`Replay finished without consuming event: eventType=${a.eventType}, correlationId=${a.correlationId}, eventId=${a.eventId}. ${Go(a,k.invocationsQueue,O)}`,{eventId:a.eventId}));try{let e=await Cn(i,t.runId,r,h,!1,(t.specVersion??0)>=5);return await Ss(t.runId,k.invocationsQueue,h,t,`completed`,o),{type:`completed`,output:e,resultType:typeof i}}catch(e){return ce(e)}},B=await Oe(),V=await pt(`workflow.replay.execute`),ue=B.run(async()=>se(...z)),de={workflowRun:t,argumentCount:z.length,async resume(e){switch(v.type){case`suspended`:{let t=O.events;if(!(e.length>t.length&&t.every((t,n)=>t.eventId===e[n].eventId)))return v={type:`replay`},{type:`replay`};let n=Wt();return v={type:`running`,interruption:n},k.suspensionGeneration++,B.refresh(),O.append(e.slice(t.length)),le(ue,n)}case`replay`:return{type:`replay`};case`completed`:case`running`:throw new K(`Cannot resume ${v.type} workflow "${t.runId}"`)}}},fe=le(ue,_);return fe.then(V.end,V.fail),{session:de,execution:fe}}function As(e){let t=ni();return t===void 0?e:e===void 0?t:Math.min(e,t)}function js({world:e,runInput:t,runId:n,runLogger:r}){let i=t?.environment;if(!i)return!1;let a=e.getEnvironment?.();return!a||a===i?!1:(r.error(`Refusing to run this workflow: it was created in the "${i}" environment but this deployment runs in "${a}". Executing it here would create a second copy of the same run id in both environments — one pending forever, one running — so the queue message is being discarded without executing and without retrying. The client that called start() wrote the run to its own environment but addressed the queue message to a deployment in another one. Check that the environment that client authenticates as (WORKFLOW_VERCEL_ENV for CLI and CI clients, or the OIDC token's environment inside a deployment) matches the environment of the deployment it targets. The run it created is still pending in "${i}" and will not run.`,{workflowRunId:n,creatorEnvironment:i,currentEnvironment:a,pinnedDeploymentId:t?.deploymentId}),!0)}async function Ms({world:e,runInput:t,runId:n,runLogger:r}){let i=t?.deploymentId;if(!i)return;let a;try{a=await e.getDeploymentId()}catch{return}a&&a!==i&&r.error(`Queue message was delivered to a deployment it was not pinned to. The run was created targeting a different deployment, so this invocation may be replaying against code the run was not started on. Continuing — this is expected if the Workflow SDK version changed mid-run in local development, where the deployment id is derived from that version.`,{workflowRunId:n,pinnedDeploymentId:i,currentDeploymentId:a})}function Ns(e){return K.is(e)?q.RUNTIME_ERROR:yr(e)?q.WORLD_CONTRACT_ERROR:null}function Ps(e){return!It.is(e)||e.status!==void 0&&e.status!==404?!1:/step/i.test(e.message)&&/not found/i.test(e.message)}async function Fs({world:e,workflowRun:t,runId:n,workflowName:r,requestId:i,err:a,errorCode:o,logMessage:s}){W.error(s,{workflowRunId:n,errorCode:o,error:a instanceof Error?a.message:String(a)});let c,l;try{c=await Wn(e,t??n)(),l=await fn(a,n,c,globalThis,(t?.specVersion??0)>=5),await e.events.create(n,{eventType:`run_failed`,specVersion:8,eventData:{error:l,errorCode:o}},{requestId:i})}catch(e){if(X.is(e)||J.is(e))return;if(yr(e)){W.error(`Fatal world contract error while recording workflow failure`,{workflowRunId:n,errorCode:q.WORLD_CONTRACT_ERROR,error:e instanceof Error?e.message:String(e)});return}throw e}Ni(n,r,l,c,o)}function Is(e,t){return e.find(e=>e.runId===t&&(e.eventType===`run_completed`||e.eventType===`run_failed`||e.eventType===`run_cancelled`))}function Ls(e,t){let n=Is(e,t);return n?(W.debug(`Run reached terminal event, exiting`,{workflowRunId:t,eventType:n.eventType,eventId:n.eventId}),!0):!1}function Rs(e,t){let n=0;for(let r of e)t.has(r)||n++;return n}function zs({suspension:e,serializationBlockerCount:t,hookContinuation:n=!1,invocationContinuation:r=!1}){return oi()?t>0?{retain:!1,reason:`serialization_executed_workflow_code`}:n?{retain:!0}:!r&&e.stepCount===0&&e.attributeCount===0?{retain:!1,reason:`no_replay_driver`}:{retain:!0}:{retain:!1,reason:`disabled`}}function Bs(e,t){return{serializationBlockerCount:t,serializationBlockers:e.map(({source:e,correlationId:t,kind:n,detail:r})=>({source:e,correlationId:t,kind:n,detail:r&&r.length>160?`${r.slice(0,160)}…`:r})),serializationBlockersTruncated:t>e.length}}function Vs(e){return e.cursor===null?{type:`loadAll`}:{type:`loadAfter`,events:e.events,cursor:e.cursor}}async function Hs(e,t){let n=process.env.WORKFLOW_V2_TIMEOUT_MS;if(n!==void 0&&n!==``){let e=Number(n);if(Number.isFinite(e)&&e>0)return e}let r=await e.getRuntimeDeadline?.();if(r!==void 0){let e=r.getTime();if(!Number.isNaN(e)){let n=Math.floor(e-t);if(n>=(0,Rr.default)(`25m`))return(0,Rr.default)(`10m`);if(n>=(0,Rr.default)(`10m`))return(0,Rr.default)(`5m`)}}return(0,Rr.default)(`2m`)}function Us(e,t){qt(t?.basePath);let n=m(t?.namespace),s=a(`workflow`,n),c=t=>t.createQueueHandler(s,sr(t)(async(a,c,l)=>{let d=Date.now(),f=Hn(a);if(f){await zn(f,t.specVersion);return}let{runId:p,traceCarrier:m,requestedAt:_,stepId:y,stepName:x,replayDivergence:S,preconditionReinvocations:C,deploymentMismatchRetryCount:T,runInput:E,hookInput:D,stepInput:O,runContext:A,hookResumeTiming:j,waitContinuation:ee}=h.parse(a),M=ia(j,y===void 0?`inline`:`dispatched`);M&&y===void 0&&(M.consumerStartedAtMs=d),M&&!Number.isFinite(M.consumerStartedAtMs)&&(M=void 0);let te=$e(m)?m:void 0,{requestId:P}=c,F=c.queueName.slice(s.length),I=W.forRun(p,F),L=Gr();if(c.attempt>L){let e=Vr(void 0,q.MAX_DELIVERIES_EXCEEDED);I.error(`Workflow handler exceeded max deliveries (${c.attempt}/${L})`,{attempt:c.attempt,errorCode:e.errorCode,errorAttribution:e.attribution});try{let e=await Xi(),t=Wn(e,p),n=new Y(`Workflow exceeded maximum queue deliveries (${c.attempt}/${L})`),r=await t(),i=await fn(n,p,r);await e.events.create(p,{eventType:`run_failed`,specVersion:8,eventData:{error:i,errorCode:q.MAX_DELIVERIES_EXCEEDED}},{requestId:P}),Ni(p,F,i,r,q.MAX_DELIVERIES_EXCEEDED)}catch(e){if(X.is(e)||J.is(e))return;I.error(`Failed to mark run as failed after ${c.attempt} delivery attempts. A persistent error is preventing the run from being terminated. The run will remain in its current state until manually resolved. This is most likely due to a persistent outage of the workflow backend or a bug in the workflow runtime and should be reported to the Workflow team.`,{attempt:c.attempt,errorName:e instanceof Error?e.name:`UnknownError`,errorMessage:e instanceof Error?e.message:String(e),errorStack:e instanceof Error?e.stack:void 0})}return}let re=Pe(),R=()=>dt(re,te),ie=await st(re,te),ae=new $i,oe=re===`continuous`?te:void 0,z=await Ae(`CONSUMER`);return await Te(oe,async()=>await vt({workflowRunId:p,workflowName:F},async()=>{let t=await G(`workflow.route.get_world`,async()=>Xi());if(!js({world:t,runInput:E,runId:p,runLogger:I}))return await Ms({world:t,runInput:E,runId:p,runLogger:I}),G(`workflow.execute ${U(F)}`,{kind:z,links:ie},async a=>{a?.setAttributes({...v(F),...Me(`execute_v2`),...de(`vercel-queue`),...se(c.queueName),...Ct(c.messageId),...b(`process`),...Kn({requestedAt:_}),...Fe(p),...xt(!!te),...mt(re)});let s=Date.now(),d=await Hs(t,s),f=s+d+ui(),m=!1,h=0,L=S?new na(S.count):na.inert(),ie,oe,z=await Ze(t=>{if(t&&!hr(t))return oe!==t.workflowName&&(oe=t.workflowName,ie=Cs(e,t.workflowName),ie.catch(()=>{})),ie}),ce=Kt(()=>{let e=Rn(t,p);return e.catch(()=>{}),e}),B,V=e=>{if(e&&!hr(e))return B||=new Ur(ce.value),B},ue=e=>{e.eventType===`run_created`&&(V(e.eventData),z(e.eventData)),B?.prepareEvent(e)},pe=async(e,n)=>{let r=ge(e,n),i={...he(),...n},a=await L.withEventCreate(r===void 0?i:{...i,sinceCursor:r},n=>t.events.create(p,e,n));return r!==void 0&&_e(r,a),a},me=(e,t)=>G(`workflow.replay.load`,async n=>{let r=0;n?.setAttributes({...Fe(p),...we(e)});try{let e=await t(e=>{r++,ue(e)});return r=e.events?.length??r,e}finally{n?.setAttributes(ye(r))}}),he=()=>H.type===`loadAll`?{}:Qn(H.events),ge=(e,t)=>{if(!(Oe||H.type!==`ready`||t?.sinceCursor!==void 0||t?.preloadEvents===!0||r(e.eventType)))return H.cursor??void 0},_e=(e,t)=>{H.type===`ready`&&H.cursor===e&&t.events!==void 0&&t.hasMore!==!0&&Jn(H,{events:t.events,cursor:t.cursor})},H={type:`loadAll`},U,be,xe=-1,Se,Ce,Te=0,De,Oe=ai()&&E!==void 0&&c.attempt===1&&y===void 0&&!S;a?.setAttributes(Ee(Oe));let ke,Ae=async()=>{if(ke)try{await ke}catch{}},je=async e=>{let n=Ns(e);return n?(await Fs({world:t,workflowRun:U,runId:p,workflowName:F,requestId:P,err:e,errorCode:n,logMessage:`Fatal runtime error during workflow setup`}),!0):!1},Ne=new Set,Pe=e=>{Ne.size>0&&W.error(`Invariant violation: acking the workflow message while owned inline steps are still executing — crash recovery for these steps is broken`,{workflowRunId:p,ackPath:e,stepIds:[...Ne]})},Ie=async()=>({runId:p,traceCarrier:await R(),requestedAt:new Date}),Le=async(e,r)=>{if(Pe(`reinvoke`),!Oe)return{timeoutSeconds:e};await Zn(t,Yn(F,n),{...await Ie(),...r},e>0?{delaySeconds:e}:void 0)},Re=0,Be=null,Ve=e=>{let t=Be;if(!t)return;Be=null;let n=new Set(e.map(e=>e.eventId)),r=Rs(n,t.ids),i=Rs(t.ids,n),a=i>0?`shrank`:r>0?`grew`:`unchanged`;W.warn(`Restarted replay reloaded its event log after a stale-snapshot rejection`,{workflowRunId:p,outcome:a,added:r,dropped:i,eventsBefore:t.ids.size,eventsAfter:n.size,preconditionRestarts:t.restart,reason:t.reason,source:t.source,loopIteration:h})},He=(e,t,{allowDelta:n=!0}={})=>{if(Re>=di())return!1;Re++,Ye=null;let r=n&&Re===1?Ln(t,p):null,i=r!==null&&H.type!==`loadAll`;return Be=H.type===`loadAll`?null:{ids:new Set(H.events.map(e=>e.eventId)),restart:Re,reason:e,source:i?`inline-delta`:`full-reload`},r&&H.type!==`loadAll`?(Jn(H,r),H={...H,type:`ready`}):(H={type:`loadAll`},B?.resetScan()),W.warn(`Event creation rejected as stale; restarting replay in-process`,{workflowRunId:p,reason:e,loopIteration:h,preconditionRestarts:Re,source:i?`inline-delta`:`full-reload`}),a?.setAttributes({"workflow.precondition_restarts":Re}),!0},We=async(e,t)=>{let n=(C??0)+1,r=fi();return n>r?{reinvoked:!1,error:new K(`Event creation was rejected as stale after ${r} re-invocations of ${di()} in-process replay restarts each: this run cannot observe its own event log completely enough to make progress. Last rejection (${e}): ${t instanceof Error?t.message:String(t)}`,{cause:t})}:(W.warn(`Event creation rejected as stale after in-process restarts; re-invoking run for a fresh replay`,{workflowRunId:p,reason:e,loopIteration:h,preconditionReinvocations:n,maxReinvocations:r}),a?.setAttributes({"workflow.precondition_reinvocations":n}),{reinvoked:!0,result:await Le(pi(),{preconditionReinvocations:n})})},Ke=async(e,r,i)=>{let{outcome:o,spanAttributes:s}=await Ii({world:t,run:e,workflowName:F,requestId:P,retryCount:T,beforeStop:i,isDeploymentUnavailableError:t.isDeploymentUnavailableError,reenqueue:async({deploymentId:e,specVersion:i,deploymentMismatchRetryCount:a,delaySeconds:o})=>{await Zn(t,Yn(F,n),{...await r(),deploymentMismatchRetryCount:a},{deploymentId:e,specVersion:i,delaySeconds:o})}});return s&&a?.setAttributes(s),o};if(y&&x)try{let e=async()=>{if(!O)return`ok`;try{await t.events.create(p,{eventType:`step_created`,specVersion:8,correlationId:y,eventData:{stepName:x,workflowName:F,input:O.input}},{requestId:P,viaStepDispatch:!0}),a?.setAttributes(w(!0)),W.warn(`Materialized step_created from the queue message — the producer’s direct write did not land`,{workflowRunId:p,stepId:y,stepName:x})}catch(e){if(X.is(e))return`ok`;if(J.is(e))return`gone`;throw e}return`ok`},r,i;if(a?.setAttributes(ht(A?`run_context`:`runs_get`)),A){if((O&&c.attempt>1?await e():`ok`)===`gone`){W.debug(`Run already finished, skipping background step`,{workflowRunId:p});return}i=A}else{let[n,a]=await Promise.all([t.runs.get(p,{resolveData:`none`}),O&&c.attempt>1?e():`ok`]);if(a===`gone`){W.debug(`Run already finished, skipping background step`,{workflowRunId:p});return}if(n.status!==`running`){W.debug(`Run already finished, skipping background step`,{workflowRunId:p,status:n.status});return}r=n,i={deploymentId:n.deploymentId,specVersion:n.specVersion??0,...n.startedAt?{startedAt:+n.startedAt}:{},rootRunId:$n(n.attributes,p)}}if(await Ke({runId:p,deploymentId:i.deploymentId,specVersion:i.specVersion},async()=>({...await Ie(),stepId:y,stepName:x,...O?{stepInput:O}:{},...A?{runContext:A}:{},...j?{hookResumeTiming:j}:{}}))!==`continue`)return;let s=i.startedAt??Date.now(),l=c.attempt,u=kn(x)?.maxRetries??3;c.attempt>u+1&&(l=gi((await Vn(p)).events,y,{type:`totalAttempts`})+1);let d=M;M=void 0,ae.pause();let f;try{let n=()=>xa({world:t,workflowRunId:p,workflowDeploymentId:i.deploymentId,workflowName:F,workflowStartedAt:s,rootRunId:i.rootRunId??p,requestId:P,stepId:y,stepName:x,runSpecVersion:i.specVersion,authoritativeAttempt:l,...d?{resumeTracking:d}:{}});f=await Da(p,y,async()=>{try{return await n()}catch(t){if(!O||!Ps(t))throw t;return await e()===`gone`?{type:`gone`}:await n()}})}finally{ae.resume()}if(f.type===`retry`||f.type===`throttled`)return{timeoutSeconds:f.timeoutSeconds};if(t.capabilities?.invoke&&f.type!==`gone`){await Zn(t,Yn(F,n),{runId:p,traceCarrier:await R(),requestedAt:new Date});return}if(f.type===`completed`&&f.hasPendingOps){await Zn(t,Yn(F,n),{runId:p,traceCarrier:await R(),requestedAt:new Date});return}if(f.type===`completed`||f.type===`failed`||f.type===`skipped`){let e=await Vn(p);H=Vs(e);let n=new Set,i=new Set;for(let t of e.events)t.eventType===`step_created`?n.add(t.correlationId):(t.eventType===`step_completed`||t.eventType===`step_failed`)&&i.add(t.correlationId);let a=new Set;for(let e of n)i.has(e)||a.add(e);if(a.size>0){if(si()&&Ta(e.events,a,c.messageId))W.debug(`Background step done; falling through to recover an inline step owned by this message`,{workflowRunId:p});else{W.debug(`Background step done but other steps pending, returning`,{workflowRunId:p});return}}W.debug(`All parallel steps done, replaying inline after background step`,{workflowRunId:p});let l=r??await t.runs.get(p,{resolveData:`none`});if(g(l.status)){W.debug(`Run already finished, skipping inline replay after background step`,{workflowRunId:p,status:l.status});return}z(l);let u=e.events.find(e=>e.eventType===`run_created`),d;if(u)d=u.eventData.input;else{if(!o(l.specVersion))throw new K(`Workflow run "${p}" has no "run_created" event`);let e=await t.runs.get(p,{resolveData:`all`});if(e.status!==`running`)return;d=e.input}U={...l,input:d,status:`running`,output:void 0,error:void 0,completedAt:void 0},xe=s}else return}catch(e){let n=Ns(e);if(!n)throw e;await Fs({world:t,workflowRun:U,runId:p,workflowName:F,requestId:P,err:e,errorCode:n,logMessage:`Fatal error while preparing background workflow step`});return}if(!U&&D?.deploymentId!==void 0&&t.capabilities?.deploymentAffinity===!0){let e=D.deploymentId,n;try{n=await t.getDeploymentId()}catch{n=void 0}if(n!==void 0&&n!==e&&await Ke(await t.runs.get(p,{resolveData:`none`}),async()=>({...await Ie(),hookInput:D,...j?{hookResumeTiming:j}:{}}),Ae)!==`continue`)return}let qe=!1;if(!U&&D&&D.resumeId!==void 0&&D.payloadDigest!==void 0){let e=D,t;try{t=new Date(u(e.resumeId))}catch{t=void 0}try{a?.addEvent(`workflow.hook_received.create.start`,{"workflow.hook_received.preload_events":!0});let n=await me(`hook_preload`,n=>pe({eventType:`hook_received`,specVersion:8,correlationId:e.hookId,eventData:{token:e.token,payload:e.payload}},{requestId:P,occurredAt:t,resumeId:e.resumeId,resumePayloadDigest:e.payloadDigest,preloadEvents:!0,replayEventObserver:n}));if(qe=!0,n.run!==void 0&&n.run.startedAt!==void 0&&n.event!==void 0&&n.events!==void 0&&n.events.length>0&&n.cursor!=null&&n.hasMore===!1&&typeof n.maxEvents==`number`&&n.events.some(e=>e.eventType===`run_created`)&&n.events.some(e=>e.eventType===`run_started`)&&n.events.some(t=>t.eventType===`hook_received`&&t.resumeId===e.resumeId)&&n.run?.startedAt&&n.events){let e=n.events.find(e=>e.runId===p&&(e.eventType===`run_completed`||e.eventType===`run_failed`||e.eventType===`run_cancelled`));if(e){a?.setAttributes({...Je(e.eventType===`run_completed`?`completed`:e.eventType===`run_failed`?`failed`:`cancelled`),...Ue(`hook_received_stream`)}),W.info(`Run already finished during lazy hook setup, skipping`,{workflowRunId:p,eventType:e.eventType});return}U=n.run,z(U),be=As(n.maxEvents),Ce=Date.now(),M&&(M.setupSource=`hook_preload`),H={type:`ready`,events:n.events,cursor:n.cursor},xe=+n.run.startedAt,a?.setAttributes({...Je(n.run.status),...ze(xe),...Ue(`hook_received_stream`)})}else a?.setAttributes(Ue(`hook_received_fallback`))}catch(e){if(Bt.is(e)||J.is(e)){W.info(`Run already finished during lazy hook setup, skipping`,{workflowRunId:p,message:e.message});return}if(await je(e))return;throw e}}if(!U){let e={eventType:`run_started`,specVersion:E?.specVersion??8,...E?{eventData:{input:E.input,deploymentId:E.deploymentId,workflowName:E.workflowName,executionContext:E.executionContext,attributes:E.attributes,allowReservedAttributes:E.allowReservedAttributes}}:{}};if(Oe&&E){a?.addEvent(`workflow.run_started.create.start`,{"workflow.run_started.skip_preload":!0});let t=pe(e,{requestId:P,skipPreload:!0});ke=t;try{z(E),V(E)}catch(e){if(await Ae(),!await je(e))throw e;return}t.then(e=>{let t=As(e.maxEvents);t!==void 0&&(be=t)}).catch(()=>{}),H={type:`ready`,events:[],cursor:null};let n=new Date;U={runId:p,status:`running`,deploymentId:E.deploymentId,workflowName:E.workflowName,specVersion:E.specVersion,executionContext:E.executionContext,input:E.input,attributes:E.attributes??{},startedAt:n,createdAt:n,updatedAt:n},xe=+n,Ce=+n,a?.setAttributes({...Je(`running`),...ze(xe)})}else try{a?.addEvent(`workflow.run_started.create.start`,{"workflow.run_started.skip_preload":!1});let t=me(`run_started`,t=>pe(e,{requestId:P,replayEventObserver:t}));try{z(E),V(E)}catch(e){try{await t}catch{}throw e}let n=await t;if(U=n.run,be=As(n.maxEvents),Ce=Date.now(),M&&(M.setupSource=`run_started`),n.events?.length){let e={events:[...n.events],cursor:n.cursor??null};H=n.hasMore?Vs(e):{...e,type:`ready`}}if(xe=+n.run.startedAt,a?.setAttributes({...Je(n.run.status),...ze(xe)}),n.run.status!==`running`){W.info(`Workflow already completed or failed, skipping`,{workflowRunId:p,status:n.run.status});return}z(U)}catch(e){if(X.is(e)||J.is(e)){W.info(`Run already finished during setup, skipping`,{workflowRunId:p,message:e.message});return}if(!await je(e))throw e;return}}if(jr(U,`Workflow run must be loaded before replay`),M&&M.setupSource===void 0&&(M.setupSource=`event_load`),await Ke(U,async()=>({...await Ie(),...D?{hookInput:D}:{},...j?{hookResumeTiming:j}:{}}),Ae)!==`continue`)return;if(D&&!qe&&!(D.resumeId!==void 0&&H.type!==`loadAll`&&H.events.some(e=>e.eventType===`hook_received`&&e.resumeId===D.resumeId))){let e;try{e=D.resumeId===void 0?void 0:new Date(u(D.resumeId))}catch{e=void 0}let n;try{let r=await t.events.create(p,{eventType:`hook_received`,specVersion:8,correlationId:D.hookId,eventData:{token:D.token,payload:D.payload}},{requestId:P,occurredAt:e,resumeId:D.resumeId,resumePayloadDigest:D.payloadDigest});a?.setAttributes(Ge(!0));let i=r.event;n=i?{...i,eventData:{token:D.token,payload:D.payload}}:void 0}catch(e){if(Bt.is(e)||J.is(e))return;throw e}H.type!==`loadAll`&&n?(Xn(H.events,n),ue(n)):H={type:`loadAll`}}let Ye=null,Xe=new Set,Qe=new Set;for(;;){let r=l?.revision??0;if(h++,ae.isExhausted()){await ta({runId:p,workflowName:F,requestId:P,attempt:c.attempt,limitMs:ae.configuredLimitMs,slotSnapshot:he()});return}if(Date.now()-s>=d){W.info(`V2 timeout reached, re-scheduling workflow`,{workflowRunId:p,loopIteration:h,elapsedMs:Date.now()-s}),await Zn(t,Yn(F,n),{runId:p,traceCarrier:await R(),requestedAt:new Date});return}let o=0,u=!1;try{if(hr(U)){W.debug(`Using QuickJS VM engine`,{workflowRunId:p,loopIteration:h}),await Ae(),H.type===`loadAfter`&&(Jn(H,await Vn(p,H.cursor)),H={...H,type:`ready`});let{runWorkflowWithQuickJS:t}=await import(`../../_chunks/workflow/_eve-core-quickjs-entrypoint-stub-qIV0OaFz.js`),r=await t({workflowCode:e,workflowName:F,workflowRun:U,preloadedEvents:H.type===`ready`?H.events:void 0,preloadedEventsComplete:H.type===`ready`,preloadedCursor:H.type===`ready`?H.cursor:void 0,runInput:E,parentSpan:a,maxEventsLimit:be,namespace:n,nextTraceCarrier:R,waitContinuation:ee,deliveryAttempt:c.attempt,ownerMessageId:c.messageId,requestId:P});return r?.timeoutSeconds===void 0?void 0:await Le(r.timeoutSeconds)}if(H.type!==`ready`){m=!1;let e=await Vn(p,H.type===`loadAfter`?H.cursor:void 0);H.type===`loadAfter`?(Jn(H,e),H={...H,type:`ready`}):H={...e,type:`ready`}}if(jr(H.type===`ready`),Ve(H.events),Ls(H.events,p))return;let r=Date.now(),s=new Set(H.events.filter(e=>e.eventType===`wait_completed`).map(e=>e.correlationId)),l=H.events.filter(e=>e.eventType===`wait_created`&&e.correlationId!==void 0&&!s.has(e.correlationId)&&r>=e.eventData.resumeAt.getTime()).map(e=>({eventType:`wait_completed`,specVersion:8,correlationId:e.correlationId,eventData:{resumeAt:e.eventData.resumeAt}}));for(let e of l)try{let t=await pe(e,{requestId:P});Gn(H.events,t)}catch(t){if(X.is(t)){W.info(`Wait already completed, skipping`,{workflowRunId:p,correlationId:e.correlationId});continue}throw t}jr(H.type===`ready`);let d=new Set(H.events.filter(e=>e.eventType===`wait_completed`).map(e=>e.correlationId)),f=l.filter(e=>!d.has(e.correlationId));if(f.length>0){if(m=!1,H.cursor){let e=await Vn(p,H.cursor),t=new Set(e.events.filter(e=>e.eventType===`wait_completed`).map(e=>e.correlationId));f.every(e=>t.has(e.correlationId))?Jn(H,e):H={...await Vn(p),type:`ready`}}else H={...await Vn(p),type:`ready`}}if(Bn()){let e=await Nn(p,{events:H.events,cursor:H.cursor});if(H={...e.log,type:`ready`},e.gap!==void 0)throw new Vt(`Event log for run ${p} has a hole at slot ${e.gap.firstMissingSlot}: ${e.gap.missingCount} of the ${e.gap.maxSlot} slots up to the log's maximum hold no event.`)}if(Ls(H.events,p))return;if(be!==void 0){let e=H.events.reduce((e,t)=>i(t)?e:e+1,0);if(e>=be)throw new Nt(e,be)}Se??=H.events.every(e=>e.eventType===`run_created`||e.eventType===`run_started`||e.eventType===`attr_set`||i(e)),W.debug(`Starting workflow execution`,{workflowRunId:p,loopIteration:h,eventCount:H.events.length,executionMode:Ye?`retained`:`replay`}),o=Date.now(),M&&(M.replayStartedAtMs??=o);let g=V(U);jr(g,`Node workflow replay requires payload preparation`);let _=g.prewarm(U,H.events),v=Ye?await Ts(Ye,H.events):{type:`replay`};if(u=Ye!==null&&v.type!==`replay`,v.type===`replay`){Ye=null;let n=z(U);jr(n,`Node workflow replay requires compiled scripts`),v=await ws({workflowCode:e,workflowRun:U,events:H.events,encryptionKey:await ce.value,replayPayloadCache:g,compiledWorkflowScripts:await n,runReadyBarrier:ke,worldCapabilities:t.capabilities})}if(await _,v.type===`suspended`)throw Ye=v.session,v.suspension;let y=v.output;W.debug(`Workflow execution completed`,{workflowRunId:p,loopIteration:h,replayMs:Date.now()-o,executionMode:Ye?`retained`:`replay`}),L.activate();try{await Ae(),await pe({eventType:`run_completed`,specVersion:8,eventData:{output:y}},{requestId:P})}catch(e){if(X.is(e)||J.is(e)){W.info(`Tried completing workflow run, but run has already finished.`,{workflowRunId:p,message:e.message});return}throw e}ji(p,F),a?.setAttributes({...Je(`completed`)});return}catch(i){if(Gt.is(i)){L.activate();let e=Date.now(),g=e-o;M&&i.stepCount>0&&(M.nextStepEncounteredAtMs??=e),W.debug(`Workflow suspended`,{workflowRunId:p,loopIteration:h,replayMs:g,steps:i.stepCount,hooks:i.hookCount,waits:i.waitCount});let _=Zt(i.stepCount,i.hookCount,i.waitCount);_&&W.debug(_);let v=Date.now();jr(H.type===`ready`,`Workflow suspended before its event log was loaded`);let y;try{y=await ka({suspension:i,world:t,run:U,span:a,requestId:P,eventLog:H,runReadyBarrier:ke,replayRecoveryReporter:L,stepDispatch:{queueName:Yn(F,n),getTraceCarrier:R},ownerMessageId:c.messageId,allowDeferredBatchWork:!0})}catch(e){if(Lt.is(e)){if(He(`suspension-create`,e))continue;let t=await We(`suspension-create`,e);if(t.reinvoked)return t.result;throw t.error}if(!Y.is(e))throw e;let t=gr(e);W.error(`Non-retryable error while committing workflow suspension; failing run`,{workflowRunId:p,errorCode:t,errorName:e.name,errorMessage:e.message});let n,r;try{await Ae(),n=await ce.value,r=await fn(e,p,n,globalThis,(U?.specVersion??0)>=5),await pe({eventType:`run_failed`,specVersion:8,eventData:{error:r,errorCode:t}},{requestId:P})}catch(e){if(X.is(e)||J.is(e)){W.info(`Tried failing workflow run, but run has already finished.`,{workflowRunId:p,message:e.message});return}throw e}Ni(p,F,r,n,t),a?.setAttributes({...Je(`failed`),...ne(t),...N(e.name),...rt(e.message),...le(e.name)});return}let b=Kt(()=>(jr(H.type===`ready`),Li(H.events))),x=Ye?zs({suspension:i,serializationBlockerCount:y.serializationBlockerCount,hookContinuation:y.hasAwaitedHookCreation||y.hasHookConflict,invocationContinuation:l!==void 0}):void 0;x?.retain===!1&&(Ye=null),Te+=y.hookCreationMs,y.hasAttributeEvents&&De===void 0&&(De=Te),W.debug(`Suspension handled`,{workflowRunId:p,suspensionMs:Date.now()-v,pendingSteps:y.pendingSteps.length,timeoutSeconds:y.waitTimeout?.seconds,hasHookConflict:y.hasHookConflict,hasAwaitedHookCreation:y.hasAwaitedHookCreation,hasAttributeEvents:y.hasAttributeEvents,...x?{workflowVmRetention:x.retain?`retained`:`replay`}:{},...x?.retain===!1?{workflowVmRetentionReason:x.reason}:{},...y.serializationBlockerCount>0?Bs(y.serializationBlockers,y.serializationBlockerCount):{}});let S=(e,t)=>{if(!Ye)return!1;let n=e.filter(e=>!Xe.has(e));if(n.length===0)return!1;for(let e of n)Xe.add(e);let r=y.eventLogCarriedForward&&!b.value.openWait;return r||(jr(H.type===`ready`),H=Vs(H)),W.debug(`Continuing over a hook write in-process`,{workflowRunId:p,loopIteration:h,settles:t,hookIds:n,carriedForward:y.eventLogCarriedForward,readBeforeResume:!r}),a?.setAttributes({"workflow.hook_write_continuations":Xe.size}),!0};if(y.hasHookConflict){if(S(y.hookConflictCorrelationIds,`hook_conflict`))continue;return await Le(0)}if(y.hasAttributeEvents){H=Vs(H);continue}if(y.failedStepCorrelationIds.size>0){await y.deferredBatchWork,Ye=null,H=Vs(H);continue}let C=y.pendingSteps;if(m&&y.waitTimeout!==void 0&&C.length===0&&!y.hasAwaitedHookCreation&&b.value.openWait){W.debug(`Re-reading the event log before parking on a wait over an inline delta`,{workflowRunId:p,loopIteration:h,waitCorrelationId:y.waitTimeout.correlationId}),a?.setAttributes({"workflow.wait_park_reread":!0}),H=Vs(H);continue}let w=y.lazyInlineSteps,T=new Set(w.map(e=>e.correlationId)),E=await R(),D=[],O=si(),A=Date.now(),j=[],te=0,I=0;for(let e of y.queuedStepCorrelationIds)Qe.add(e);let re=M!==void 0&&w.length===0&&!C.some(e=>!T.has(e.correlationId)&&O&&Sa(e)&&e.ownerMessageId===c.messageId);for(let e of C){if(T.has(e.correlationId)||y.queuedStepCorrelationIds.has(e.correlationId))continue;let r=O&&Sa(e);if(r&&e.ownerMessageId===c.messageId){j.push(e);continue}let i=r?Ca(e,A):0;if(i>0){te++,W.debug(`Pending step is inline-owned by a live invocation; ensuring delayed backstop wake instead of immediate requeue`,{workflowRunId:p,stepId:e.correlationId,ownerMessageId:e.ownerMessageId,backstopDelaySeconds:i}),D.push(Zn(t,Yn(F,n),{runId:p,traceCarrier:E,requestedAt:new Date},{delaySeconds:i,idempotencyKey:wa(e)}));continue}if(Qe.has(e.correlationId)&&e.sawRetrying!==!0){I++;continue}Qe.add(e.correlationId);let a=re?aa(M):void 0;a&&(re=!1,M=void 0),D.push(Zn(t,Yn(F,n),{runId:p,stepId:e.correlationId,stepName:e.stepName,traceCarrier:E,requestedAt:new Date,runContext:Fn(U),...a?{hookResumeTiming:a}:{}},{idempotencyKey:In(e.correlationId,e.stepName)}))}if(y.waitTimeout){let e=ee?.correlationId===y.waitTimeout.correlationId?ee.attempt+1:0;D.push(Zn(t,Yn(F,n),{runId:p,traceCarrier:E,requestedAt:new Date,waitContinuation:{correlationId:y.waitTimeout.correlationId,attempt:e}},Na(y.waitTimeout.seconds,y.waitTimeout.correlationId,Date.now(),e)))}let ie=Promise.all(D);ie.catch(()=>{});let oe=[...w.map(e=>{let t=y.inlineClaims.get(e.correlationId);return t?{correlationId:e.correlationId,stepName:e.stepName,preclaimedStart:t}:{correlationId:e.correlationId,stepName:e.stepName,lazyStepInput:e.dehydratedInput}}),...j.map(e=>({correlationId:e.correlationId,stepName:e.stepName}))];if((te>0||j.length>0||I>0)&&a?.setAttributes({...j.length>0?lt(j.length):{},...te>0?fe(te):{},...I>0?k(I):{}}),I>0&&W.debug(`Skipped re-publishing step messages this invocation already published on an earlier replay pass`,{workflowRunId:p,loopIteration:h,republishesSkipped:I}),j.length>0&&W.warn(`Re-executing inline steps owned by this queue message — a previous delivery crashed mid-body and this redelivery is recovering them`,{workflowRunId:p,stepIds:j.map(e=>e.correlationId)}),oe.length===0){if(await Promise.all([ie,y.deferredBatchWork]),y.hasAwaitedHookCreation){if(S(y.awaitedHookCorrelationIds,`hook_created`))continue;return await Le(0)}if(l&&Date.now()-s<d&&await l.waitForActivity(r)){H=Vs(H);continue}return}let se=b.value,z=zi(se,f)||y.waitTimeout!==void 0&&!(y.waitTimeout.resumeAtMs>f),B=typeof H.cursor==`string`&&i.stepCount===1&&C.length===1&&w.length===1&&j.length===0&&!z;B&&(se.openWait||y.waitTimeout!==void 0)&&a?.setAttributes({"workflow.inline_delta_over_pending_wait":!0});let V=se.openHook||i.hookCount>0||y.hasHookEvents,ue=Oe&&!y.hasAttributeEvents&&!y.waitTimeout&&!y.hasHookEvents&&!y.hasAwaitedHookCreation&&!se.openHook&&!se.openWait,de=fa({events:H.events,invocationStartedClean:Se===!0,runCreatedAtMs:ca(p)??(Oe?void 0:+U.createdAt),runStartedReceivedAtMs:Ce,replayMs:g,preStepBlockingMs:Te,preStepBlockingBeforeAttrMs:De,suspensionHasWaits:i.waitCount>0||y.waitTimeout!==void 0,suspensionCreatedHooks:i.hookCount>0||y.hasHookEvents,turbo:Oe,retained:u}),me=M;M=void 0,ae.pause();let he,ge=oe.map((e,n)=>{let r=()=>(jr(H.type===`ready`),xa({world:t,workflowRunId:p,workflowDeploymentId:U.deploymentId,workflowName:F,workflowStartedAt:xe,requestId:P,rootRunId:$n(U.attributes,p),stepId:e.correlationId,stepName:e.stepName,runSpecVersion:U.specVersion,authoritativeAttempt:e.lazyStepInput!==void 0||e.preclaimedStart!==void 0?1:gi(H.events,e.correlationId,{type:`ownedBy`,messageId:c.messageId})+1,lazyStepInput:e.lazyStepInput,preclaimedStart:e.preclaimedStart,ownerMessageId:c.messageId,forceOptimisticStart:ue,suppressOptimisticStart:V,runReadyBarrier:ke,...n===0&&(e.lazyStepInput!==void 0||e.preclaimedStart!==void 0)&&de?{latencyTracking:de}:{},...me?{resumeTracking:me}:{},...B&&H.cursor?{inlineDeltaSinceCursor:H.cursor}:{},replayRecoveryReporter:L}));Ne.add(e.correlationId);let i=e.lazyStepInput!==void 0||e.preclaimedStart!==void 0;return(e.preclaimedStart?.owned===!1?r():Da(p,e.correlationId,r,i?`debug`:`warn`)).finally(()=>Ne.delete(e.correlationId))});for(let e of ge)e.catch(()=>{});try{try{await Promise.all([ie,y.deferredBatchWork])}catch(e){throw await Promise.allSettled(ge),e}he=await Promise.all(ge)}catch(e){if(Lt.is(e)){if(He(`inline-claim`,e,{allowDelta:!(await Promise.allSettled(ge)).some(e=>e.status===`fulfilled`&&(e.value.type===`completed`||e.value.type===`failed`||e.value.type===`retry`))}))continue;let t=await We(`inline-claim`,e);if(t.reinvoked)return t.result;throw t.error}throw e}finally{ae.resume()}let _e=[],ve=!1,ye;for(let e=0;e<oe.length;e++){let t=he[e],n=oe[e];t.type===`retry`?_e.push({step:n,delaySeconds:t.timeoutSeconds}):t.type===`throttled`?ye=Math.max(ye??0,t.timeoutSeconds):t.type===`completed`&&t.hasPendingOps&&(ve=!0)}if(ye!==void 0)return await Le(ye);if(_e.length>0){let e=await R();await Promise.all(_e.map(({step:r,delaySeconds:i})=>Zn(t,Yn(F,n),{runId:p,stepId:r.correlationId,stepName:r.stepName,traceCarrier:e,requestedAt:new Date,runContext:Fn(U)},{delaySeconds:i,idempotencyKey:In(r.correlationId,r.stepName)})))}if(ve){W.debug(`Breaking loop: inline step has pending ops`,{workflowRunId:p,loopIteration:h}),await Zn(t,Yn(F,n),{runId:p,traceCarrier:await R(),requestedAt:new Date});return}if(_e.length>0)return;if(oe.length===1){let e=he[0];if(e.type===`completed`&&e.inlineDelta){Jn(H,e.inlineDelta),m=!e.inlineDelta.hasMore,H=e.inlineDelta.hasMore?Vs(H):{...H,type:`ready`};continue}}H=Vs(H)}else{let r=i;if(Lt.is(i)){if(He(`replay-write`,i))continue;let e=await We(`replay-write`,i);if(e.reinvoked)return e.result;r=e.error}if(Sr(i))throw I.warn(`Transient world error during replay; redelivering via queue instead of failing the run`,{errorName:i instanceof Error?i.name:`UnknownError`,errorMessage:i instanceof Error?i.message:String(i),deliveryAttempt:c.attempt}),i;let s,l={};if(Ht.is(i)){let e=(S?.count??0)+1,a=li(),o=[...S?.eventIds??(S?[S.eventId]:[]),i.eventId].slice(-(a+1));if(l={errorCode:q.REPLAY_DIVERGENCE,divergenceEventId:i.eventId,priorDivergenceEventId:S?.eventId,divergenceEventIds:o,divergenceCount:e,deliveryAttempt:c.attempt,maxRecoveryReplays:a,loopIteration:h,servedByRetainedSession:u,eventLogState:H.type,eventLogLength:H.type===`loadAll`?void 0:H.events.length,eventLogLastEventId:H.type===`loadAll`?void 0:H.events.at(-1)?.eventId,cursor:H.type===`ready`?H.cursor??void 0:H.type===`loadAfter`?H.cursor:void 0,hasHookInput:D!==void 0,hasWaitContinuation:ee!==void 0,isRecoveryReplay:S!==void 0,setupSource:M?.setupSource},e<=a){I.warn(`Workflow replay diverged; queueing a recovery replay before declaring the event log corrupted`,{...l,errorMessage:i.message}),await Zn(t,Yn(F,n),{runId:p,traceCarrier:await R(),requestedAt:new Date,replayDivergence:{eventId:i.eventId,count:e,eventIds:o}});return}s=e,r=new Vt(`Workflow replay diverged ${e} times after ${a} recovery replays; latest divergent event was ${i.eventId}; divergent event ids: ${o.join(`, `)}. Last divergence: ${i.message}`,{cause:i})}else o>0&&L.activate();r instanceof Error&&a?.recordException?.(r);let d=await Di(r),f=d.name||_i(r),m=d.message,g=d.stack||vi(r);if(g){let t=ve(F)?.moduleSpecifier||F;g=Bo(g,t,e)}let _=gr(r);W.error(`Error while running workflow`,{...l,workflowRunId:p,errorCode:_,errorName:f,errorMessage:m,errorStack:g,errorCause:bi(r)||void 0}),Ar.isNativeError(r)&&g&&(r.stack=g);let v,y;try{await Ae(),v=await ce.value,y=await fn(r,p,v,globalThis,(U?.specVersion??0)>=5),await pe({eventType:`run_failed`,specVersion:8,eventData:{error:y,errorCode:_}},{requestId:P,...s===void 0?{}:{replayDivergenceCount:s}})}catch(e){if(X.is(e)||J.is(e)){W.info(`Tried failing workflow run, but run has already finished.`,{workflowRunId:p,message:e.message});return}if(yr(e)){W.error(`Fatal world contract error while recording workflow failure`,{workflowRunId:p,errorCode:q.WORLD_CONTRACT_ERROR,error:e instanceof Error?e.message:String(e)});return}throw e}Ni(p,F,y,v,_),a?.setAttributes({...Je(`failed`),...ne(_),...N(f),...rt(m),...le(f)});return}}}})}))})),l,d=0,f=Date.now(),p=typeof t?.routeModuleBodyStartedAt==`number`?f-t.routeModuleBodyStartedAt:void 0;return Pn(async e=>{d+=1;let t=l!==void 0,n=await Ae(`SERVER`);return G(`workflow.route.flow`,{kind:n,attributes:{...je(`flow`),...T(Wr),...ke(t),...qe(d),...ct(Date.now()-f),...p===void 0?{}:ft(p),...R(e.method),...j(`/.well-known/workflow/v1/flow`)}},async t=>{l||=await G(`workflow.route.init`,async()=>{let e=await G(`workflow.route.get_world_handlers`,async()=>Xi());return c(e)});let n=await l(e);return n instanceof Response&&t?.setAttributes(D(n.status)),n})})}export{Tr as Run,Gt as WorkflowSuspension,Cr as cancelRun,_r as cancelRuns,Ji as createWorld,Ki as createWorldFromModule,fr as getHookByToken,br as getRun,Xi as getWorld,Yi as getWorldHandlers,Un as healthCheck,pr as listStreams,xr as readStream,wr as recreateRunFromExisting,mr as reenqueueRun,cr as resumeHook,ur as resumeWebhook,Zi as setWorld,Er as start,vr as wakeUpRun,Us as workflowEntrypoint};
3
+ `)}function Ti(e){return typeof e==`object`&&e?e.cause:void 0}function Ei(e){let t=e.errors;return Array.isArray(t)?t.slice(0,4).map(Ci):[]}function Di(e){return typeof e==`object`&&!!e&&`name`in e&&e.name===`AbortError`&&`message`in e&&typeof e.message==`string`&&(!(`stack`in e)||e.stack===void 0||typeof e.stack==`string`)}function Oi(e){if(!Di(e)||Y.is(e))return e;let t=new Y(`Aborted: ${e.message}`);return e.stack&&(t.stack=e.stack),t}function ki(e){return typeof e==`object`&&!!e&&`then`in e&&typeof e.then==`function`}function Ai(e){if(Nr.isNativeError(e))return{name:e.name,message:e.message,stack:e.stack??``};if(typeof e==`string`)return{name:`Error`,message:e,stack:``};try{return{name:`Error`,message:JSON.stringify(e),stack:``}}catch{return{name:`Error`,message:String(e),stack:``}}}async function ji(e){if(ki(e))try{let t=await ji(await e);return{...t,message:`Promise rejection: ${t.message}`}}catch(e){let t=await ji(e);return{...t,message:`Promise rejection: ${t.message}`}}return Ai(e)}const Mi=Symbol.for(`@workflow/core//lifecycleHooks`);function Ni(){return Object.hasOwn(globalThis,Mi)||Object.defineProperty(globalThis,Mi,{value:[],writable:!1,enumerable:!1,configurable:!1}),globalThis[Mi]}function Pi(e,t,n,r,i){let a=(r,i)=>{try{W.error(`Workflow lifecycle ${n} ${r}`,{workflowRunId:e,workflowName:t,errorName:bi(i),errorMessage:xi(i),errorStack:Si(i)})}catch{}};try{let e=Ni().slice().filter(e=>{try{return!!e[n]}catch(e){return a(`handler threw`,e),!1}});if(e.length===0)return;lr(G(`workflow.lifecycle.${n}`,async()=>{let t=[];try{let n=await r(t);for(let t of e)try{await i(t,n)}catch(e){a(`handler threw`,e)}}finally{let e=0;for(;e<t.length;){let n=t.slice(e);e=t.length;let r=await Promise.allSettled(n);for(let e of r)e.status===`rejected`&&a(`stream operation failed`,e.reason)}}}),e=>a(`dispatch failed`,e))}catch(e){a(`dispatch failed`,e)}}function Fi(e,t){Pi(e,t,`onRunCompleted`,async()=>({run:new Or(e),workflowName:t}),(e,t)=>e.onRunCompleted?.(t))}async function Ii(e,t,n,r){try{return await tn(e,t,n,r,globalThis,void 0,{lazyStreams:!0,liveAbortSignals:!1})}catch{return Error(`Failed to hydrate workflow run error`)}}function Li(e,t,n,r,i){Pi(e,t,`onRunFailed`,async a=>({run:new Or(e),workflowName:t,error:new Et(e,await Ii(n,e,r,a),{errorCode:i})}),(e,t)=>e.onRunFailed?.(t))}const Ri={outcome:`continue`};function zi(e,t,n){return{outcome:e,spanAttributes:{...Ie(t),...nt(n),...I(e===`rerouted`)}}}async function Bi({world:e,run:t,workflowName:n,requestId:r,retryCount:i=0,reenqueue:a,isDeploymentUnavailableError:o,beforeStop:s}){if(e.capabilities?.deploymentAffinity!==!0)return Ri;let c=await e.getDeploymentId();if(t.deploymentId===c)return Ri;await s?.();let l=_i(),u={workflowRunId:t.runId,pinnedDeploymentId:t.deploymentId,actualDeploymentId:c,retryCount:i,maxRetries:l},d=async(i,a)=>{let o=new Tt(t.runId,t.deploymentId,c,{recoveryAttempts:i,cause:a}),s;try{s=await fn(o,t.runId,void 0,void 0,(t.specVersion??0)>=5),await e.events.create(t.runId,{eventType:`run_failed`,specVersion:cr(t.specVersion),eventData:{error:s,errorCode:q.DEPLOYMENT_MISMATCH}},{requestId:r})}catch(e){if(!X.is(e)&&!J.is(e))throw e;return zi(`failed`,t.deploymentId,i)}return Li(t.runId,n,s,void 0,q.DEPLOYMENT_MISMATCH),zi(`failed`,t.deploymentId,i)};if(a&&i<l){let e=i+1,n=Math.min(2**i,8);try{return await a({deploymentId:t.deploymentId,specVersion:t.specVersion,deploymentMismatchRetryCount:e,delaySeconds:n}),W.warn(`Workflow run received by a deployment it is not pinned to; re-routing to its own deployment`,{...u,attempt:e,delaySeconds:n}),zi(`rerouted`,t.deploymentId,e)}catch(t){if(!o?.(t))throw t;return W.error(`Cannot re-route a misrouted workflow run to its own deployment; failing the run`,{...u,attempt:e,errorMessage:t instanceof Error?t.message:String(t)}),d(0,t)}}return W.error(i>0?`Workflow run kept arriving at a deployment it is not pinned to after re-routing; failing the run`:`Workflow run received by a deployment it is not pinned to; failing the run`,u),d(i)}function Vi(e){let t=new Set,n=new Map;for(let r of e)switch(r.eventType){case`hook_created`:t.add(r.correlationId);break;case`hook_disposed`:t.delete(r.correlationId);break;case`wait_created`:n.set(r.correlationId,Hi(r.eventData?.resumeAt));break;case`wait_completed`:n.delete(r.correlationId)}let r;for(let e of n.values())(r===void 0||e<r)&&(r=e);return{openHook:t.size>0,openWait:n.size>0,earliestOpenWaitResumeAtMs:r}}function Hi(e){let t;if(e instanceof Date)t=e.getTime();else if(typeof e==`number`)t=e;else if(typeof e==`string`)t=new Date(e).getTime();else return-1/0;return Number.isFinite(t)?t:-1/0}function Ui(e,t){return e.earliestOpenWaitResumeAtMs!==void 0&&e.earliestOpenWaitResumeAtMs<=t}function Wi(){throw Error(`Unsupported in eve: @workflow/core createWorld(). eve selects and wires the workflow world explicitly at build time.`)}function Gi(){try{return jr(Fr(process.cwd()+`/package.json`).href)}catch{return jr(import.meta.url)}}const Ki=Symbol.for(`@workflow/world//cache`),qi=Symbol.for(`@workflow/world//stubbedCache`),Ji=Symbol.for(`@workflow/world//cachePromise`),Yi=Symbol.for(`@workflow/world//stubbedCachePromise`),$=globalThis;function Xi(e){if(typeof e.createWorld==`function`)return e.createWorld();if(typeof e.default==`function`)return e.default();if(e.default&&typeof e.default==`object`)return e.default;throw Error(`Invalid target world module: must export createWorld(), a default factory, or a default World instance.`)}function Zi(e){if(e.startsWith(`file://`))return e;if(e.startsWith(`/`))return Fr(e).href;if(e.startsWith(`./`)||e.startsWith(`../`))return Fr(process.cwd()+`/`+e).href;try{return Fr(Gi().resolve(e)).href}catch{return e}}const Qi=async()=>{let e=zr();if(Br(e)){let e=[`WORKFLOW_VERCEL_PROJECT`,`WORKFLOW_VERCEL_TEAM`,`WORKFLOW_VERCEL_AUTH_TOKEN`,`WORKFLOW_VERCEL_ENV`].filter(e=>process.env[e]);return e.length>0&&process.env.VERCEL===`1`&&console.warn(`[workflow] Warning: ${e.join(`, `)} env var(s) are set but have no effect at runtime. These are only used by the Workflow CLI. Remove them from your Vercel project environment variables.`),Wi()}if(e===`local`)return Wi({dataDir:process.env.WORKFLOW_LOCAL_DATA_DIR});let t;try{t=Gi()(e)}catch{t=await import(Zi(e))}if(typeof t==`function`)return t();try{return await Xi(t)}catch{throw Error(`Invalid target world module: ${e}, must export a createWorld function or a default function that returns a World instance.`)}},$i=async()=>{if($[qi])return B($[qi]),$[qi];$[Yi]||($[Yi]=Qi().catch(e=>{throw $[Yi]=void 0,e}));let e=await $[Yi];return B(e),$[qi]=e,{createQueueHandler:e.createQueueHandler,specVersion:e.specVersion}},ea=async()=>$[Ki]?(B($[Ki]),$[Ki]):($[Ji]||($[Ji]=Qi().catch(e=>{throw $[Ji]=void 0,e})),$[Ki]=await $[Ji],B($[Ki]),$[Ki]),ta=e=>{$[Ki]=e,$[qi]=e,$[Ji]=void 0,$[Yi]=void 0},na=Symbol.for(`@workflow/world//getWorldFn`);globalThis[na]??=ea;var ra=class{limitMs;elapsedMs=0;intervalStart;constructor(e=ei()){this.limitMs=e,this.intervalStart=Date.now()}get configuredLimitMs(){return this.limitMs}elapsed(){let e=this.intervalStart===null?0:Date.now()-this.intervalStart;return this.elapsedMs+e}pause(){this.intervalStart!==null&&(this.elapsedMs+=Date.now()-this.intervalStart,this.intervalStart=null)}resume(){this.intervalStart=Date.now()}isExhausted(){return this.elapsed()>=this.limitMs}},ia=class extends Error{name=`ReplayTimeoutRetryError`};async function aa(e){let{runId:t,workflowName:n,requestId:r,attempt:i,limitMs:a,slotSnapshot:o}=e,s=W.forRun(t,n),c=ti();if(i<=c)throw s.warn(`Workflow replay exceeded timeout; retrying delivery`,{timeoutMs:a,attempt:i,maxRetries:c}),new ia(`Workflow replay exceeded maximum duration (${a/1e3}s)`);let l=await ea(),u=Wr(void 0,q.REPLAY_TIMEOUT);s.error(`Workflow replay exceeded timeout and max retries exceeded. Failing the run`,{timeoutMs:a,attempt:i,maxRetries:c,errorCode:u.errorCode,errorAttribution:u.attribution});let d=Wn(l,t),f=new Y(`Workflow replay exceeded maximum duration (${a/1e3}s) after ${i} attempts`),p=await d(),m=await fn(f,t,p);await l.events.create(t,{eventType:`run_failed`,specVersion:8,eventData:{error:m,errorCode:q.REPLAY_TIMEOUT}},{requestId:r,...o}),Li(t,n,m,p,q.REPLAY_TIMEOUT)}var oa=class{divergenceCount;active=!1;reported=!1;constructor(e){this.divergenceCount=e}static inert(){return new sa}activate(){this.active=!0}async withEventCreate(e,t){if(!this.active||this.reported)return t(e);this.reported=!0;try{return await t({...e,replayDivergenceCount:this.divergenceCount})}catch(e){throw this.reported=!1,e}}},sa=class extends oa{constructor(){super(0)}activate(){}};function ca(e,t){if(e&&Number.isFinite(e.resumeRequestedAtMs)&&Number.isFinite(e.queuePublishRequestedAtMs))return{trigger:`hook`,...e.strategy===`lazy`||e.strategy===`parallel`||e.strategy===`sequential`?{strategy:e.strategy}:{},resumeRequestedAtMs:e.resumeRequestedAtMs,queuePublishRequestedAtMs:e.queuePublishRequestedAtMs,consumerStartedAtMs:e.consumerStartedAtMs??NaN,...e.replayStartedAtMs===void 0?{}:{replayStartedAtMs:e.replayStartedAtMs},...e.nextStepEncounteredAtMs===void 0?{}:{nextStepEncounteredAtMs:e.nextStepEncounteredAtMs},...e.setupSource===`hook_preload`||e.setupSource===`run_started`||e.setupSource===`event_load`?{setupSource:e.setupSource}:{},stepExecution:t}}function la(e){if(e&&Number.isFinite(e.consumerStartedAtMs))return{resumeRequestedAtMs:e.resumeRequestedAtMs,queuePublishRequestedAtMs:e.queuePublishRequestedAtMs,...e.strategy===void 0?{}:{strategy:e.strategy},consumerStartedAtMs:e.consumerStartedAtMs,...e.replayStartedAtMs===void 0?{}:{replayStartedAtMs:e.replayStartedAtMs},...e.nextStepEncounteredAtMs===void 0?{}:{nextStepEncounteredAtMs:e.nextStepEncounteredAtMs},...e.setupSource===void 0?{}:{setupSource:e.setupSource}}}function ua(e){let t=[e.resumeRequestedAtMs,e.queuePublishRequestedAtMs,e.consumerStartedAtMs,e.replayStartedAtMs,e.nextStepEncounteredAtMs,e.stepClaimStartedAtMs,...e.stepClaimCompletedAtMs===void 0?[]:[e.stepClaimCompletedAtMs],e.stepCodeStartedAtMs];for(let e of t)if(typeof e!=`number`||!Number.isFinite(e))return;for(let e=1;e<t.length;e++)if(t[e]<t[e-1])return;return t}function da(e){let{tracking:t}=e;if(!t||e.attempt!==1||t.replayStartedAtMs===void 0||t.nextStepEncounteredAtMs===void 0||e.stepClaimStartedAtMs===void 0)return;let n={resumeRequestedAtMs:t.resumeRequestedAtMs,queuePublishRequestedAtMs:t.queuePublishRequestedAtMs,consumerStartedAtMs:t.consumerStartedAtMs,replayStartedAtMs:t.replayStartedAtMs,nextStepEncounteredAtMs:t.nextStepEncounteredAtMs,stepClaimStartedAtMs:e.stepClaimStartedAtMs,stepClaimCompletedAtMs:e.stepClaimCompletedAtMs,stepCodeStartedAtMs:e.stepCodeStartedAtMs};if(!ua(n))return;let{resumeRequestedAtMs:r,queuePublishRequestedAtMs:i,consumerStartedAtMs:a,replayStartedAtMs:o,nextStepEncounteredAtMs:s,stepClaimStartedAtMs:c,stepClaimCompletedAtMs:l,stepCodeStartedAtMs:u}=n;return{...at(u-r),...tt(i-r),...P(a-i),...ge(o-a),...ve(s-o),..._(c-s),...l===void 0?{}:ie(l-c),...ut(u-(l??c)),...Ve(t.trigger),...t.strategy===void 0?{}:Xe(t.strategy),...t.setupSource===void 0?{}:be(t.setupSource),...Me(t.stepExecution)}}function fa(e){let t=e.startsWith(`wrun_`)?e.slice(5):e;try{return g(Ar(t).ulid)}catch{return}}const pa=d(`@workflow/core//devServerPort`,1,()=>({getPort:void 0,cachedPort:void 0,inFlight:void 0}));async function ma(){if(pa.cachedPort!==void 0)return pa.cachedPort;if(pa.inFlight)return pa.inFlight;if(!pa.getPort)try{let e=[`@workflow/utils`,`get-port`].join(`/`),t=jr(Fr(process.cwd()+`/package.json`).href)(e);pa.getPort=t.getPort}catch{pa.getPort=async()=>void 0}let e=pa.getPort??(async()=>void 0);return pa.inFlight=e().then(e=>(typeof e==`number`&&(pa.cachedPort=e),e)).finally(()=>{pa.inFlight=void 0}),pa.inFlight}const ha=new Set([`step_created`,`step_started`,`step_completed`,`step_failed`,`step_retrying`,`hook_received`,`wait_created`,`wait_completed`]);function ga(e){let{events:t}=e,n=e.invocationStartedClean&&e.runCreatedAtMs!==void 0&&!e.suspensionHasWaits,r;if(n)for(let e of t){if(ha.has(e.eventType)){n=!1;break}if(e.eventType===`attr_set`){let t=+(e.occurredAt??e.createdAt);r=r===void 0?t:Math.min(r,t)}}let i,a,o,s=t[t.length-1];if(!e.suspensionHasWaits&&!e.suspensionCreatedHooks&&s&&(s.eventType===`step_completed`||s.eventType===`step_failed`)){i=+(s.occurredAt??s.createdAt);let e=new Set;for(let n of t)(n.eventType===`step_completed`||n.eventType===`step_failed`)&&n.correlationId!==void 0&&e.add(n.correlationId);a=e.size,o=t.length}let c=n&&e.runStartedReceivedAtMs!==void 0;if(n||i!==void 0)return{...n?{ttfsAnchorMs:e.runCreatedAtMs,preStepBlockingMs:r===void 0?e.preStepBlockingMs:e.preStepBlockingBeforeAttrMs??0,...r===void 0?{}:{preStepAttrStartMs:r}}:{},...c?{rsfsAnchorMs:e.runStartedReceivedAtMs}:{},...i===void 0?{}:{prevStepEndMs:i,stepCount:a,eventCount:o},replayMs:e.replayMs,turbo:e.turbo,retained:e.retained}}function _a(e){let{tracking:t}=e;if(!t||e.attempt!==1)return;let n=t.preStepAttrStartMs??e.stepCodeStartedAtMs,r=t.ttfsAnchorMs===void 0?void 0:n-t.ttfsAnchorMs-(t.preStepBlockingMs??0),i=r!==void 0&&r>=-6e4?Math.max(0,r):void 0,a=t.prevStepEndMs===void 0?void 0:e.stepCodeStartedAtMs-t.prevStepEndMs,o=a!==void 0&&a>=-6e4?Math.max(0,a):void 0,s=t.rsfsAnchorMs!==void 0&&e.stepStartPostSentAtMs!==void 0?Math.max(0,e.stepStartPostSentAtMs-t.rsfsAnchorMs):void 0,c=t.replayMs===void 0?void 0:Math.max(0,t.replayMs);if(i===void 0&&o===void 0)return;let l=[];return t.turbo&&l.push(`turbo`),e.lazyStepStart&&l.push(`lazyStepStart`),e.optimisticStart&&l.push(`optimisticStart`),e.preclaimedStart&&l.push(`preclaimedStart`),t.retained&&l.push(`retained`),{...i===void 0?{}:{ttfs:i},...o===void 0?{}:{stso:o},...o!==void 0&&t.stepCount!==void 0?{stepCount:t.stepCount}:{},...o!==void 0&&t.eventCount!==void 0?{eventCount:t.eventCount}:{},...s===void 0?{}:{rsfs:s},...c===void 0?{}:{finalSchedulingReplay:c},optimizations:l}}const va=`__workflowUnserializableStepInput`;function ya(){return{args:[`[input unavailable: step argument serialization failed]`],closureVars:[],thisVal:void 0,[va]:!0}}function ba(e){return typeof e==`object`&&!!e&&e[va]===!0}function xa(){return m(`WORKFLOW_STEP_STREAM_DRAIN_TIMEOUT_MS`,3e4,{integer:!0,min:1})}function Sa(e){let t=e?.name;return t===`AbortError`||t===`ResponseAborted`}async function Ca(e){if(e.length===0)return;let t=xa(),n;try{await Promise.race([Promise.all(e.map(e=>(e.settleReleasedWrites?.()??Promise.resolve(!1)).catch(e=>{if(!Sa(e))throw e;return!1}))),new Promise((e,r)=>{n=setTimeout(()=>r(new K(`Timed out draining step stream writes after ${t}ms`)),t)})])}catch(e){if(!Sa(e))throw e}finally{n!==void 0&&clearTimeout(n)}}function wa(e,t){if(t&&e.events&&e.cursor!==void 0)return{events:e.events,cursor:e.cursor,hasMore:e.hasMore??!1}}async function Ta(e){let{world:t,workflowRunId:n,workflowName:r,workflowStartedAt:i,stepId:a,stepName:o}=e,s=!!process.env.VERCEL_URL,c=(e.runSpecVersion??0)>=5,l=e.replayRecoveryReporter??oa.inert(),u=async(e,r)=>l.withEventCreate(Fn(r),r=>t.events.create(n,e,r)),d={computeInstanceId:qr,...e.requestId?{requestId:e.requestId}:{}},f=`step.execute ${lt(o)}`;return G(f,{},async l=>{if(l?.setAttributes({...O(o),...Je(r),...Re(n),...w(a)}),Pr(!(e.lazyStepInput!==void 0&&e.preclaimedStart),`executeStep: lazyStepInput and preclaimedStart are mutually exclusive`),e.preclaimedStart&&e.preclaimedStart.owned===!1)return W.debug(`Pre-claimed step start lost, skipping`,{stepName:o,stepId:a,workflowRunId:n}),l?.setAttributes({...A(!0),...re(`running`)}),{type:`skipped`};let f=Wn(t,n),p=On(o);if(!p||typeof p!=`function`){let t=`Step "${o}" 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.`;if(W.error(`Step function not registered, failing step`,{workflowRunId:n,stepName:o,stepId:a}),e.lazyStepInput!==void 0)try{e.runReadyBarrier&&await e.runReadyBarrier.catch(()=>{}),await u({eventType:`step_started`,specVersion:8,correlationId:a,eventData:{stepName:o,workflowName:r,input:e.lazyStepInput,...e.ownerMessageId===void 0?{}:{ownerMessageId:e.ownerMessageId}}},d)}catch(e){if(X.is(e))return{type:`skipped`};if(J.is(e))return{type:`gone`};throw e}try{await u({eventType:`step_failed`,specVersion:8,correlationId:a,eventData:{stepName:o,error:await Tn(new Y(t),n,await f(),[],globalThis,c)}})}catch(e){if(X.is(e))return{type:`skipped`};throw e}return l?.setAttributes({...L(`failed`),...bt(!0)}),{type:`failed`}}let m=p.maxRetries??3;if(l?.setAttributes({...fe(m)}),e.authoritativeAttempt!==void 0&&e.authoritativeAttempt>m+1){let t=m,r=`Step "${o}" exceeded max retries (${t} ${Dt(`retry`,`retries`,t)})`;rt.error(`Step exceeded max retries`,{workflowRunId:n,stepName:o,stepId:a,attempt:e.authoritativeAttempt,maxRetries:m});try{await u({eventType:`step_failed`,specVersion:8,correlationId:a,eventData:{stepName:o,error:await Tn(new Y(r),n,await f(),[],globalThis,c)}})}catch(e){if(X.is(e))return W.info(`Tried failing step for exceeded retries, but step has already finished.`,{workflowRunId:n,stepId:a,stepName:o,message:e instanceof Error?e.message:String(e)}),{type:`skipped`};if(J.is(e))return{type:`gone`};throw e}return l?.setAttributes({...L(`failed`),...y(!0)}),{type:`failed`}}let h=e=>{if(Ut.is(e)){let t=Math.max(1,typeof e.retryAfter==`number`?e.retryAfter:1);return W.info(`Throttled on step_started, deferring`,{retryAfterSeconds:t}),{type:`throttled`,timeoutSeconds:t}}if(J.is(e))return W.info(`Workflow run "${n}" has already completed, skipping step "${a}": ${e.message}`),{type:`gone`};if(X.is(e))return W.debug(`Step in terminal state, skipping`,{stepName:o,stepId:a,workflowRunId:n,error:e instanceof Error?e.message:String(e)}),l?.setAttributes({...A(!0),...re(`completed`)}),{type:`skipped`};if(Mt.is(e)){let t=Math.max(1,e.retryAfter??1);return W.debug(`Step retryAfter timestamp not yet reached`,{stepName:o,stepId:a,timeoutSeconds:t}),{type:`retry`,timeoutSeconds:t}}},g=e.preclaimedStart===void 0&&e.lazyStepInput!==void 0&&e.suppressOptimisticStart!==!0&&(oi()||e.forceOptimisticStart===!0&&!si());e.preclaimedStart?l?.setAttributes(N(`batch_preclaimed`)):e.lazyStepInput!==void 0&&l?.setAttributes(N(g?`optimistic`:`awaited`));let _,v=d,b,x,C,T=async()=>{if(!C)return;let e=await C;if(e.ok)return;let t=h(e.err);if(!t)throw e.err;return t};if(e.preclaimedStart?.owned)_=e.preclaimedStart.step,b=e.preclaimedStart.batchPostSentAtMs,x=e.preclaimedStart.claimCompletedAtMs;else if(g){C=(e.runReadyBarrier??Promise.resolve()).then(()=>(b=Date.now(),u({eventType:`step_started`,specVersion:8,correlationId:a,eventData:{stepName:o,workflowName:r,input:e.lazyStepInput,...e.ownerMessageId===void 0?{}:{ownerMessageId:e.ownerMessageId}}},v))).then(()=>({ok:!0}),e=>({ok:!1,err:e}));let t=new Date;_={runId:n,stepId:a,stepName:o,status:`running`,input:e.lazyStepInput,attempt:1,startedAt:t,createdAt:t,updatedAt:t}}else try{let t=e.ownerMessageId===void 0?{}:{ownerMessageId:e.ownerMessageId};b=Date.now();let n=await u({eventType:`step_started`,specVersion:8,correlationId:a,eventData:e.lazyStepInput===void 0?{stepName:o,...t}:{stepName:o,workflowName:r,input:e.lazyStepInput,...t}},v);x=Date.now(),_=n.step}catch(e){let t=h(e);if(t)return t;throw e}W.debug(`Step execution details`,{stepName:o,stepId:_.stepId,status:_.status,attempt:_.attempt}),l?.setAttributes({...L(_.status)});let E;if(_.attempt>m+1&&_.error){let e=_.attempt-1,t=`Step "${o}" exceeded max retries (${e} ${Dt(`retry`,`retries`,e)})`;rt.error(`Step exceeded max retries`,{workflowRunId:n,stepName:o,retryCount:e});let r=new Y(t);if(_.error!=null)try{r.cause=await Yt(_.error,n,await f())}catch{}try{await u({eventType:`step_failed`,specVersion:8,correlationId:a,eventData:{stepName:o,error:await Tn(r,n,await f(),[],globalThis,c)}})}catch(e){if(X.is(e))return W.info(`Tried failing step, but step has already finished.`,{workflowRunId:n,stepId:a,stepName:o,message:e.message}),{type:`skipped`};throw e}return l?.setAttributes({...L(`failed`),...y(!0)}),{type:`failed`}}let D=[],k=[],j=[],M=!0,P,ee=()=>{if(!P||P.rsfs!==void 0)return;let t=e.latencyTracking?.rsfsAnchorMs;t!==void 0&&b!==void 0&&(P.rsfs=Math.max(0,b-t),l&&l.setAttributes({...z(P.rsfs)}))};try{let t=_.attempt;if(!_.startedAt)throw new K(`Step "${a}" has no "startedAt" timestamp`);let u=_.startedAt,d=e.encryptionKey??await f(),m=await G(`step.hydrate`,{},async t=>{let r=Date.now(),i=await yn(_.input,n,d,k,globalThis,{},e.workflowDeploymentId,j),a=Date.now()-r;return t?.setAttributes({...Le(i.args.length),...V(a)}),i});if(ba(m)){let{message:e,hint:t}=$t(`step arguments`,void 0);throw new Ft(e,{hint:t})}let h=m.args,v=m.thisVal??null,y=Jt(s?`https://${process.env.VERCEL_URL}`:`http://localhost:${await ma()??3e3}`),S,C=!1,w=Date.now();P=_a({tracking:e.latencyTracking,stepCodeStartedAtMs:w,attempt:t,lazyStepStart:e.lazyStepInput!==void 0,optimisticStart:g,preclaimedStart:e.preclaimedStart!==void 0,stepStartPostSentAtMs:b}),P&&l?.setAttributes({...P.ttfs===void 0?{}:wt(P.ttfs),...P.stso===void 0?{}:se(P.stso),...P.rsfs===void 0?{}:z(P.rsfs),...P.finalSchedulingReplay===void 0?{}:le(P.finalSchedulingReplay),..._t(P.optimizations??[])});let O=()=>{let n=e.resumeTracking;if(!n||n.reported)return;let r=da({tracking:n,attempt:t,stepClaimStartedAtMs:b,stepClaimCompletedAtMs:x,stepCodeStartedAtMs:Date.now()});r&&(n.reported=!0,l?.setAttributes(r))},A=`ok`,N=performance.now();try{E=await G(`step.execute`,{},async()=>await Xt.run({stepMetadata:{stepName:o,stepId:a,stepStartedAt:new Date(+u),attempt:t},workflowMetadata:{workflowName:r,workflowRunId:n,workflowStartedAt:new Date(+i),url:y,features:{encryption:!!d}},workflowDeploymentId:e.workflowDeploymentId,rootRunId:e.rootRunId,ops:k,preCompletionOps:D,streamStates:j,closureVars:m.closureVars,encryptionKey:d,runReadyBarrier:g?e.runReadyBarrier:void 0},()=>(O(),p.apply(v,h))))}catch(e){A=`error`,S=e,C=!0}finally{Fe(performance.now()-N,A)}let I=Date.now()-w;if(un(...h,v,m.closureVars),C)throw S;if(l?.setAttributes({...he(I)}),E=await G(`step.dehydrate`,{},async t=>{let r=Date.now(),i=await pn(E,n,d,k,globalThis,!1,!1,c,g?e.runReadyBarrier:void 0),a=Date.now()-r;return t?.setAttributes({...F(a),...Ge(typeof i)}),i}),k.length>0){let e=Promise.all(k);lr(e,e=>{W.warn(`Background flush of step stream ops failed`,{workflowRunId:n,stepId:a,error:e instanceof Error?e.message:String(e)})}),M=!1;let t=Promise.race([e.then(()=>{M=!0},e=>{if(Sa(e)){M=!0;return}throw e}),new Promise(e=>setTimeout(e,500))]);t.catch(()=>{}),await Ca(j),await t}if(g){let e=await T();if(e)return e;ee()}D.length>0&&await Promise.all(D).catch(()=>{})}catch(e){if(g){let e=await T();if(e)return e;ee()}D.length>0&&await Promise.all(D).catch(()=>{});let t=Oi(e),r=await ji(t),i=r.stack||Si(t)||``;t instanceof Error&&l?.recordException?.(t);let s=Y.is(t);if(l?.setAttributes({...Te(bi(t)),...St(r.message),...ue(bi(t)),...S(s?`fatal`:Pt.is(t)?`retryable`:`transient`),...ht(!s)}),J.is(e))return rt.info(`Workflow run already completed, skipping step`,{workflowRunId:n,stepId:a,message:e.message}),{type:`gone`};if(s){rt.error(`Encountered FatalError while executing step, bubbling up to parent workflow`,{workflowRunId:n,stepName:o,errorStack:i}),Nr.isNativeError(t)&&i&&(t.stack=i);try{await u({eventType:`step_failed`,specVersion:8,correlationId:a,eventData:{stepName:o,error:await Tn(t,n,await f(),[],globalThis,c),...P}})}catch(e){if(X.is(e))return W.info(`Tried failing step, but step has already finished.`,{workflowRunId:n,stepId:a,stepName:o,message:e.message}),{type:`skipped`};throw e}return l?.setAttributes({...L(`failed`),...bt(!0)}),{type:`failed`}}let d=_.attempt;if(l?.setAttributes({...H(d),...fe(m)}),d>=m+1){let t=_.attempt-1;rt.error(`Max retries reached, bubbling error to parent workflow`,{workflowRunId:n,stepName:o,attempt:_.attempt,retryCount:t,errorStack:i});let s=`Step "${o}" failed after ${m} ${Dt(`retry`,`retries`,m)}: ${r.message}`,d=new Y(s);d.cause=e,i&&(d.stack=i);try{await u({eventType:`step_failed`,specVersion:8,correlationId:a,eventData:{stepName:o,error:await Tn(d,n,await f(),[],globalThis,c),...P}})}catch(e){if(X.is(e))return W.info(`Tried failing step, but step has already finished.`,{workflowRunId:n,stepId:a,stepName:o,message:e.message}),{type:`skipped`};throw e}return l?.setAttributes({...L(`failed`),...y(!0)}),{type:`failed`}}Pt.is(e)?rt.info(`Encountered RetryableError, step will be retried`,{workflowRunId:n,stepName:o,attempt:d,message:e.message}):rt.info(`Encountered Error, step will be retried`,{workflowRunId:n,stepName:o,attempt:d,errorStack:i}),Nr.isNativeError(e)&&i&&(e.stack=i);try{await u({eventType:`step_retrying`,specVersion:8,correlationId:a,eventData:{stepName:o,error:await Tn(e,n,await f(),[],globalThis,c),...Pt.is(e)&&{retryAfter:e.retryAfter}}})}catch(e){if(X.is(e))return W.info(`Tried retrying step, but step has already finished.`,{workflowRunId:n,stepId:a,stepName:o,message:e.message}),{type:`skipped`};throw e}let p=Math.max(1,Pt.is(e)?Math.ceil((+e.retryAfter.getTime()-Date.now())/1e3):1);return l?.setAttributes({...Ue(p),...R(!0)}),{type:`retry`,timeoutSeconds:p}}let I;try{I=await u({eventType:`step_completed`,specVersion:8,correlationId:a,eventData:{stepName:o,workflowName:r,result:E,...P}},e.inlineDeltaSinceCursor===void 0?void 0:{sinceCursor:e.inlineDeltaSinceCursor})}catch(e){if(X.is(e))return W.info(`Tried completing step, but step has already finished.`,{workflowRunId:n,stepId:a,stepName:o,message:e.message}),{type:`skipped`};if(J.is(e))return rt.info(`Workflow run already completed, skipping step`,{workflowRunId:n,stepId:a,message:e.message}),{type:`gone`};throw e}let te=wa(I,e.inlineDeltaSinceCursor!==void 0);return l?.setAttributes({...L(`completed`),...Ge(typeof E)}),k.length>0&&rt.debug(`Step has pending ops`,{workflowRunId:n,stepName:o,opsCount:k.length}),{type:`completed`,hasPendingOps:!M,inlineDelta:te}})}function Ea(e){return e.hasCreatedEvent===!0&&e.ownerMessageId!==void 0&&e.sawRetrying!==!0}function Da(e,t){if(e.lastStartedAt===void 0)return 0;let n=di(),r=e.lastStartedAt+n*1e3-t;return Math.min(n,Math.max(0,Math.ceil(r/1e3)))}function Oa(e){return`${e.correlationId}:backstop:${e.lastStartedAt}`}function ka(e,t,n){let r=new Map,i=new Set;for(let t of e)if(t.correlationId!==void 0){if(t.eventType===`step_started`){let e=`eventData`in t&&t.eventData&&`ownerMessageId`in t.eventData&&typeof t.eventData.ownerMessageId==`string`?t.eventData.ownerMessageId:void 0;r.set(t.correlationId,e)}else t.eventType===`step_retrying`&&i.add(t.correlationId)}for(let e of t)if(e!==void 0&&!i.has(e)&&r.get(e)===n)return!0;return!1}const Aa=d(`@workflow/core//stepSingleFlight`,1,()=>({inFlight:new Map}));async function ja(e,t,n,r=`warn`){let i=`${e}:${t}`,a=Aa.inFlight.get(i);if(a){W[r](`Step execution already in flight in this process; awaiting its settlement instead of executing again`,{workflowRunId:e,stepId:t});try{await a}catch{}return{type:`skipped`}}let o=n();Aa.inFlight.set(i,o);try{return await o}finally{Aa.inFlight.delete(i)}}async function Ma({runId:e,hookEvent:t,queueItem:n,requestId:r,sinceCursor:i,createEvent:a,world:o,forceClaimVictimWakes:s}){try{let c=await a(t,{requestId:r,...i===void 0?{}:{sinceCursor:i}});if(c.event?.eventType===`hook_conflict`)return{hasHookConflict:!0,hasAwaitedHookCreation:!1};if(c.hook?.claimedFrom){s?.add(c.hook.hookId);let t=await fr(o,e,c.hook);W.info(`Hook token force-claimed from another run`,{workflowRunId:e,hookId:n.correlationId,victimRunId:c.hook.claimedFrom.runId,victimWake:t})}return{hasHookConflict:!1,hasAwaitedHookCreation:n.hasConflictAwaiter===!0}}catch(t){if(X.is(t))return W.info(`Hook already exists, continuing`,{workflowRunId:e,message:t.message}),{hasHookConflict:!1,hasAwaitedHookCreation:n.hasConflictAwaiter===!0};if(J.is(t))return W.info(`Workflow run already completed, skipping hook`,{workflowRunId:e,message:t.message}),{hasHookConflict:!1,hasAwaitedHookCreation:!1};if(Pa(t)){let e=new Y(`createHook failed World validation: ${t instanceof Error?t.message:String(t)}`);throw e.cause=t,e}throw t}}async function Na({suspension:e,world:t,run:n,span:r,requestId:i,eventLog:a,runReadyBarrier:o,replayRecoveryReporter:s,stepDispatch:c,ownerMessageId:l,allowDeferredBatchWork:u,forceClaimVictimWakes:d}){let f=n.runId,p=mr(t,f,a?.events,{alreadyWoken:d}),m=async()=>{if(o)try{await o}catch{}},h=async e=>{let t=(await Promise.allSettled(e)).filter(e=>e.status===`rejected`).map(e=>e.reason);if(t.length!==0)throw t.find(e=>Lt.is(e))??t[0]},g=s??oa.inert(),_=(e,n)=>g.withEventCreate(n,n=>t.events.create(f,e,n)),y=0,b=0,x=!1,S=async(e,t)=>{if(b++,!a)return _(e,t);let n=a,r=await _(e,{...t,...Ln(n.events)});if(typeof t?.sinceCursor==`string`)return n.cursor===t.sinceCursor&&r.events!==void 0&&r.hasMore!==!0&&(Un(n.events,r.events),n.cursor=r.cursor??n.cursor,x=!0),r;let i=Yn(n.events,r);return y+=i.added,i.truncated?W.debug(`Dropped a truncated skipped-slot report`,{workflowRunId:f,eventType:e.eventType,eventId:r.event?.eventId,offered:i.offered}):i.added>0&&W.debug(`Suspension write skipped occupied slots`,{workflowRunId:f,eventType:e.eventType,eventId:r.event?.eventId,reported:i.added}),r},C=e.items.filter(e=>e.type===`step`),w=e.items.filter(e=>e.type===`hook`),T=e.items.filter(e=>e.type===`wait`),E=e.items.filter(e=>e.type===`attribute`),O=w.filter(e=>!e.hasCreatedEvent),k=new Map;for(let e of w){if(e.hasCreatedEvent&&!e.disposed)continue;let t=k.get(e.token);t?t.push(e):k.set(e.token,[e])}let A=await t.getEncryptionKeyForRun?.(n),j=A?await v(A):void 0,M=(n.specVersion??0)>=5,N=0,P=[];async function ee(t,n){let r={executions:[]};try{return await bn(t,f,j,e.globalThis,!1,M,r)}finally{N+=r.totalExecutions??r.executions.length,P.push(...r.executions.slice(0,5-P.length).map(e=>({...n,...e})))}}async function F(e){let t={eventType:`hook_disposed`,specVersion:8,correlationId:e.correlationId,eventData:{token:e.token}};try{await S(t,{requestId:i})}catch(t){if(X.is(t))W.info(`Hook already disposed, skipping duplicate disposal`,{workflowRunId:f,correlationId:e.correlationId,message:t.message});else if(J.is(t))W.info(`Workflow run already completed, skipping hook disposal`,{workflowRunId:f,correlationId:e.correlationId,message:t.message});else if(Bt.is(t))W.info(`Hook not found for disposal, continuing`,{workflowRunId:f,correlationId:e.correlationId,message:t.message});else throw t}}let I=[],L=[],R=0,z=O.length===1&&typeof a?.cursor==`string`?a.cursor:void 0,ne=async e=>{for(let n of e){let e=!1;if(!n.hasCreatedEvent){let r=n.metadata===void 0?void 0:await ee(n.metadata,{source:`hook_metadata`,correlationId:n.correlationId}),a={eventType:`hook_created`,specVersion:8,correlationId:n.correlationId,eventData:{token:n.token,tokenRetentionUntil:n.tokenRetentionUntil,metadata:r,isWebhook:n.isWebhook??!1,...n.isSystem&&{isSystem:!0},...n.force&&{force:!0}}},o=await Ma({runId:f,hookEvent:a,queueItem:n,requestId:i,sinceCursor:z,createEvent:S,world:t,forceClaimVictimWakes:d});o.hasHookConflict&&I.push(n.correlationId),o.hasAwaitedHookCreation&&L.push(n.correlationId),e=o.hasHookConflict}n.disposed&&!e&&await F(n)}},re=async e=>{try{let n=await ee({aborted:!0,reason:e.abortReason},{source:`hook_abort`,correlationId:e.correlationId});await S({eventType:`hook_received`,specVersion:8,correlationId:e.correlationId,eventData:{token:e.token,payload:n}});try{let r=an(e.token);await t.streams.write(f,r,n),await t.streams.close(f,r)}catch{W.debug(`Failed to write abort stream packet, hook event will provide fallback`,{workflowRunId:f,correlationId:e.correlationId})}}catch(t){if(X.is(t)||J.is(t))W.info(`Workflow run already completed, skipping abort`,{workflowRunId:f,correlationId:e.correlationId,message:t.message});else throw t}},ie=[...k.values()],B=w.filter(e=>e.abortRequested&&!e.disposed),ae,oe=ie.length>0||B.length>0?(async()=>{if(await m(),ie.length>0){let e={startMs:Date.now()};ae=e,await h(ie.map(ne)),e.endMs=Date.now()}B.length>0&&await h(B.map(re))})():void 0,se=new Set(C.filter(e=>!e.hasCreatedEvent).map(e=>e.correlationId)),le=new Set,ue=new Set,de=async(t,r)=>{W.warn(`Step arguments failed to serialize; failing the step so the workflow can observe the error`,{workflowRunId:f,correlationId:t.correlationId,stepName:t.stepName,error:r.message}),await m();let a=await bn(ya(),f,j,e.globalThis,!1,M);try{await S({eventType:`step_created`,specVersion:8,correlationId:t.correlationId,eventData:{stepName:t.stepName,workflowName:n.workflowName,input:a}},{requestId:i})}catch(e){if(X.is(e))W.info(`Step already exists, continuing`,{workflowRunId:f,correlationId:t.correlationId,message:e.message});else if(J.is(e))return;else throw e}try{await S({eventType:`step_failed`,specVersion:8,correlationId:t.correlationId,eventData:{stepName:t.stepName,error:await Tn(r,f,j,[],e.globalThis,M)}},{requestId:i})}catch(e){if(X.is(e)||J.is(e))W.info(`Tried failing step, but step or run has already finished.`,{workflowRunId:f,correlationId:t.correlationId,message:e.message});else throw e}ue.add(t.correlationId),V.delete(t.correlationId)},fe=O.some(e=>e.hasConflictAwaiter===!0),V=new Set(fe?[]:C.filter(e=>se.has(e.correlationId)).slice(0,ni()).map(e=>e.correlationId)),pe=new Map,me=[];oe&&me.push(oe);let he=new Set,ge=c!==void 0&&ri()&&(n.specVersion??0)>=3,_e=ii()&&typeof t.events.createBatch==`function`&&(n.specVersion??0)>=6&&!ge&&E.length===0,ve=[],ye=[],be=_e&&l!==void 0&&(V.size>=2||V.size===1&&O.length>0),xe=new Map,H,U=()=>(H??=c?.getTraceCarrier()??Promise.resolve({}),H),Se=0,Ce=0;for(let e of C)if(se.has(e.correlationId)){let r=be&&V.has(e.correlationId),a=Ce;Ce+=r?2:1;let o=(async()=>{let o;try{o=await ee({args:e.args,closureVars:e.closureVars,thisVal:e.thisVal},{source:`step_input`,correlationId:e.correlationId})}catch(t){if(!Ft.is(t)||!c)throw t;await de(e,t);return}if(V.has(e.correlationId)){pe.set(e.correlationId,{correlationId:e.correlationId,stepName:e.stepName,dehydratedInput:o}),r&&(ve.push({order:a,kind:`inline-created`,correlationId:e.correlationId,event:{eventType:`step_created`,specVersion:8,correlationId:e.correlationId,eventData:{stepName:e.stepName,workflowName:n.workflowName,input:o}}}),ve.push({order:a+1,kind:`inline-started`,correlationId:e.correlationId,event:{eventType:`step_started`,specVersion:8,correlationId:e.correlationId,eventData:{stepName:e.stepName,...l===void 0?{}:{ownerMessageId:l}}}}));return}let s={eventType:`step_created`,specVersion:8,correlationId:e.correlationId,eventData:{stepName:e.stepName,workflowName:n.workflowName,input:o}};if(ge&&o instanceof Uint8Array&&o.byteLength<=131072){await m();let r=await U(),[a,l]=await Promise.allSettled([S(s,{requestId:i}),nr(t,c.queueName,{runId:f,stepId:e.correlationId,stepName:e.stepName,traceCarrier:r,requestedAt:new Date,stepInput:{input:o},runContext:Mn(n)},{idempotencyKey:Pn(e.correlationId,e.stepName)})]);if(l.status===`rejected`)throw l.reason;if(he.add(e.correlationId),a.status===`rejected`){let t=a.reason;if(X.is(t))W.info(`Step already exists, continuing`,{workflowRunId:f,correlationId:e.correlationId,message:t.message});else if(Tr(t))Se++,W.warn(`Step creation event write failed, but the step was dispatched via the queue. The step_created event will be ensured by the queue consumer.`,{workflowRunId:f,correlationId:e.correlationId,stepName:e.stepName,error:t instanceof Error?t.message:String(t)});else throw t}else le.add(e.correlationId);return}if(_e){ve.push({order:a,kind:`step`,correlationId:e.correlationId,stepName:e.stepName,event:s});return}try{await m(),await S(s,{requestId:i}),le.add(e.correlationId)}catch(t){if(X.is(t))W.info(`Step already exists, continuing`,{workflowRunId:f,correlationId:e.correlationId,message:t.message});else throw t}})();me.push(o),_e&&ye.push(o.catch(()=>{}))}for(let e of T)if(!e.hasCreatedEvent){let t={eventType:`wait_created`,specVersion:8,correlationId:e.correlationId,eventData:{resumeAt:e.resumeAt}};if(_e){ve.push({order:Ce++,kind:`wait`,correlationId:e.correlationId,event:t});continue}me.push((async()=>{try{await m(),await S(t,{requestId:i})}catch(t){if(X.is(t))W.info(`Wait already exists, continuing`,{workflowRunId:f,correlationId:e.correlationId,message:t.message});else throw t}})())}let we;_e&&me.push((async()=>{if(await Promise.all(ye),ve.length===0)return;let e=[...ve].sort((e,t)=>e.order-t.order);await m();let r=async e=>{try{await S(e.event,{requestId:i}),e.kind===`step`&&le.add(e.correlationId)}catch(t){if(X.is(t))W.info(e.kind===`step`?`Step already exists, continuing`:`Wait already exists, continuing`,{workflowRunId:f,correlationId:e.correlationId,message:t.message});else throw t}};if(e.length===1){await r(e[0]);return}let o=a?(qn(a.events)??0)+1:void 0,s=e=>{let t=[],n=[];for(let r=0;r<e.length;r++){let i=e[r],a=e[r+1],o=i.kind===`inline-created`&&a?.kind===`inline-started`&&a.correlationId===i.correlationId,s=o?2:1;n.length>0&&n.length+s>32&&(t.push(n),n=[]),n.push(i),o&&(n.push(a),r++)}return n.length>0&&t.push(n),t},l=e=>e.kind===`inline-created`||e.kind===`inline-started`,d=s(e.filter(e=>l(e))),p=e.filter(e=>!l(e)),h=p.length===1?[p]:s(p),g=p.length===1?h[0]:void 0,_=[...d,...h],v=c!==void 0;if(v)for(let t of e)t.kind===`step`&&he.add(t.correlationId);let y=0,x,C=async e=>{let n=Date.now();b++;let{results:r}=await t.events.createBatch(f,e.map(e=>({event:e.event,...e.kind===`inline-started`?{computeInstanceId:qr}:{}})),{requestId:i}),a=Date.now();for(let[t,i]of r.entries()){let r=e[t];if(i.error===void 0){if(r.kind===`step`)le.add(r.correlationId);else if(r.kind===`inline-started`){let e=pe.get(r.correlationId);if(e===void 0)throw new It(`no dehydrated input for pre-claimed step ${r.correlationId}`,{status:500});let t=new Date,o=i.step?.startedAt?{...i.step,startedAt:i.step.startedAt}:{runId:f,stepId:r.correlationId,stepName:e.stepName,status:`running`,attempt:1,createdAt:t,updatedAt:t,startedAt:t};xe.set(r.correlationId,{owned:!0,step:{...o,input:e.dehydratedInput},batchPostSentAtMs:n,claimCompletedAtMs:a})}continue}if(i.status===409){if(r.kind===`inline-created`||r.kind===`inline-started`){xe.set(r.correlationId,{owned:!1}),W.info(`Inline step pre-claim lost, continuing`,{workflowRunId:f,correlationId:r.correlationId,message:i.message});continue}W.info(r.kind===`step`?`Step already exists, continuing`:`Wait already exists, continuing`,{workflowRunId:f,correlationId:r.correlationId,message:i.message});continue}throw new It(`batched ${r.event.eventType} for ${r.correlationId} failed: ${i.error}: ${i.message}`,{status:i.status})}let o=qn(r.flatMap(e=>e.error===void 0&&e.event?[e.event]:[]));y+=r.filter(e=>e.error===void 0).length,o!==void 0&&(x===void 0||o>x)&&(x=o)},w=async e=>{if(!v)return;let r=e.filter(e=>e.kind===`step`);if(r.length===0)return;let i=await U();await zn(t,c.queueName,r.map(e=>({message:{runId:f,stepId:e.correlationId,stepName:e.stepName,traceCarrier:i,requestedAt:new Date,runContext:Mn(n)},opts:{idempotencyKey:Pn(e.correlationId,e.stepName)}})))},T=_.map(e=>e===g?r(e[0]):C(e)),E=_.map(async(e,t)=>{await T[t],await w(e)}),D=(async()=>{let e=await Promise.allSettled([...T,...E]);if(o!==void 0&&x!==void 0){let e=x-o+1-y;e>0&&W.debug(`Batched fan-out committed above snapshot`,{workflowRunId:f,expectedFirstSlot:o,maxCommittedSlot:x,committedCount:y,interleaved:e})}let t=e.find(e=>e.status===`rejected`);if(t)throw t.reason})(),O=_.flatMap((e,t)=>e.some(e=>e.kind===`inline-started`)?[T[t]]:[]);if(u){if(D.catch(()=>{}),we=D,O.length>0)try{await Promise.all(O)}catch(e){throw await D.catch(()=>{}),e}}else await D})());for(let e of E)me.push((async()=>{try{await m(),await S({eventType:`attr_set`,specVersion:8,correlationId:e.correlationId,eventData:{changes:e.changes,writer:{type:`workflow`},...e.allowReservedAttributes?{allowReservedAttributes:!0}:{}}},{requestId:i})}catch(t){if(X.is(t))W.info(`Workflow attribute event already exists, continuing`,{workflowRunId:f,correlationId:e.correlationId,message:t.message});else if(Pa(t)){let e=new Y(`setAttributes failed World validation: ${t instanceof Error?t.message:String(t)}`);throw e.cause=t,e}else throw t}})());let Te=Promise.allSettled(me.filter(e=>e!==oe)).then(()=>Date.now());try{await h(me)}finally{await p}if(ae?.endMs!==void 0){let e=Math.max(ae.startMs,await Te);R+=Math.max(0,ae.endMs-e)}let Ee=[];for(let e of V){let t=pe.get(e);t&&Ee.push(t)}let De=Date.now(),Oe;for(let e of T){let t=e.resumeAt.getTime(),n=Math.max(1e3,t-De),r=Math.ceil(n/1e3);(!Oe||r<Oe.seconds)&&(Oe={seconds:r,correlationId:e.correlationId,resumeAtMs:t})}return r?.setAttributes({...xt(`workflow_suspended`),...yt(C.length),...ct(O.length),...D(T.length),...ue.size>0?ce(ue.size):{},...Se>0?te(Se):{}}),{pendingSteps:C,createdStepCorrelationIds:le,failedStepCorrelationIds:ue,queuedStepCorrelationIds:he,lazyInlineSteps:Ee,inlineClaims:xe,deferredBatchWork:we,waitTimeout:I.length>0?void 0:Oe,hasHookConflict:I.length>0,hookConflictCorrelationIds:I,hasAwaitedHookCreation:L.length>0,awaitedHookCorrelationIds:L,eventLogCarriedForward:x&&b===1,hasAttributeEvents:E.length>0,hasHookEvents:O.length>0,hookCreationMs:R,serializationBlockerCount:N,serializationBlockers:P,reportedEventCount:y}}function Pa(e){return e instanceof p||e instanceof Error&&e.name===`AttributeValidationError`||It.is(e)&&e.status===400}const Fa=()=>m(`WORKFLOW_WAIT_CONTINUATION_MAX_DELAY_SECONDS`,82800,{integer:!0,min:1}),Ia=()=>m(`WORKFLOW_NEAR_ELAPSED_WAIT_THRESHOLD_SECONDS`,2);function La(e,t,n=Date.now(),r=0){let i=Ra(e,t,n);return r<=0?i:{delaySeconds:i.delaySeconds,idempotencyKey:`${i.idempotencyKey}:a${r}`}}function Ra(e,t,n){let r=Fa();if(e<=Math.min(Ia(),r))return{delaySeconds:e,idempotencyKey:`${t}:${Math.floor(n/1e3)}`};let i=Math.ceil(e/r);return{delaySeconds:Math.min(e,r),idempotencyKey:i===1?t:`${t}:hop-${i}`}}var za=44,Ba=`ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/`,Va=new Uint8Array(64),Ha=new Uint8Array(128);for(let e=0;e<Ba.length;e++){let t=Ba.charCodeAt(e);Va[e]=t,Ha[t]=e}function Ua(e){let t=0,n=0,r=0;do r=Ha[e.next()],t|=(r&31)<<n,n+=5;while(r&32);return t}function Wa(e){return e&1?-2147483648|-(e>>>1):e>>>1}function Ga(e,t){return e.pos>=t?!1:e.peek()!==za}var Ka=class{constructor(e){this.pos=0,this.buffer=e}next(){return this.buffer.charCodeAt(this.pos++)}peek(){return this.buffer.charCodeAt(this.pos)}indexOf(e){let{buffer:t,pos:n}=this,r=t.indexOf(e,n);return r===-1?t.length:r}};function qa(e){let{length:t}=e,n=new Ka(e),r=[],i=0,a=0,o=0,s=0,c=0;do{let e=n.indexOf(`;`),t=[],l=!0,u=0;for(i=0;n.pos<e;){let r;i+=Wa(Ua(n)),i<u&&(l=!1),u=i,Ga(n,e)?(a+=Wa(Ua(n)),o+=Wa(Ua(n)),s+=Wa(Ua(n)),Ga(n,e)?(c+=Wa(Ua(n)),r=[i,a,o,s,c]):r=[i,a,o,s]):r=[i],t.push(r),n.pos++}l||Ja(t),r.push(t),n.pos=e+1}while(n.pos<=t);return r}function Ja(e){e.sort(Ya)}function Ya(e,t){return e[0]-t[0]}const Xa=/^[\w+.-]+:\/\//,Za=/^([\w+.-]+:)\/\/([^@/#?]*@)?([^:/#?]*)(:\d+)?(\/[^#?]*)?(\?[^#]*)?(#.*)?/,Qa=/^file:(?:\/\/((?![a-z]:)[^/#?]*)?)?(\/?[^#?]*)(\?[^#]*)?(#.*)?/i;function $a(e){return Xa.test(e)}function eo(e){return e.startsWith(`//`)}function to(e){return e.startsWith(`/`)}function no(e){return e.startsWith(`file:`)}function ro(e){return/^[.?#]/.test(e)}function io(e){let t=Za.exec(e);return oo(t[1],t[2]||``,t[3],t[4]||``,t[5]||`/`,t[6]||``,t[7]||``)}function ao(e){let t=Qa.exec(e),n=t[2];return oo(`file:`,``,t[1]||``,``,to(n)?n:`/`+n,t[3]||``,t[4]||``)}function oo(e,t,n,r,i,a,o){return{scheme:e,user:t,host:n,port:r,path:i,query:a,hash:o,type:7}}function so(e){if(eo(e)){let t=io(`http:`+e);return t.scheme=``,t.type=6,t}if(to(e)){let t=io(`http://foo.com`+e);return t.scheme=``,t.host=``,t.type=5,t}if(no(e))return ao(e);if($a(e))return io(e);let t=io(`http://foo.com/`+e);return t.scheme=``,t.host=``,t.type=e?e.startsWith(`?`)?3:e.startsWith(`#`)?2:4:1,t}function co(e){if(e.endsWith(`/..`))return e;let t=e.lastIndexOf(`/`);return e.slice(0,t+1)}function lo(e,t){uo(t,t.type),e.path=e.path===`/`?t.path:co(t.path)+e.path}function uo(e,t){let n=t<=4,r=e.path.split(`/`),i=1,a=0,o=!1;for(let e=1;e<r.length;e++){let t=r[e];if(!t){o=!0;continue}if(o=!1,t!==`.`){if(t===`..`){a?(o=!0,a--,i--):n&&(r[i++]=t);continue}r[i++]=t,a++}}let s=``;for(let e=1;e<i;e++)s+=`/`+r[e];(!s||o&&!s.endsWith(`/..`))&&(s+=`/`),e.path=s}function fo(e,t){if(!e&&!t)return``;let n=so(e),r=n.type;if(t&&r!==7){let e=so(t),i=e.type;switch(r){case 1:n.hash=e.hash;case 2:n.query=e.query;case 3:case 4:lo(n,e);case 5:n.user=e.user,n.host=e.host,n.port=e.port;case 6:n.scheme=e.scheme}i>r&&(r=i)}uo(n,r);let i=n.query+n.hash;switch(r){case 2:case 3:return i;case 4:{let r=n.path.slice(1);return r?ro(t||e)&&!ro(r)?`./`+r+i:r+i:i||`.`}case 5:return n.path+i;default:return n.scheme+`//`+n.user+n.host+n.port+n.path+i}}function po(e){if(!e)return``;let t=e.lastIndexOf(`/`);return e.slice(0,t+1)}function mo(e,t){let n=po(e),r=t?t+`/`:``;return e=>fo(r+(e||``),n)}var ho=0,go=1,_o=2,vo=3,yo=4;function bo(e,t){let n=xo(e,0);if(n===e.length)return e;t||(e=e.slice());for(let r=n;r<e.length;r=xo(e,r+1))e[r]=Co(e[r],t);return e}function xo(e,t){for(let n=t;n<e.length;n++)if(!So(e[n]))return n;return e.length}function So(e){for(let t=1;t<e.length;t++)if(e[t][ho]<e[t-1][ho])return!1;return!0}function Co(e,t){return t||(e=e.slice()),e.sort(wo)}function wo(e,t){return e[ho]-t[ho]}var To=!1;function Eo(e,t,n,r){for(;n<=r;){let i=n+(r-n>>1),a=e[i][ho]-t;if(a===0)return To=!0,i;a<0?n=i+1:r=i-1}return To=!1,n-1}function Do(e,t,n){for(let r=n+1;r<e.length&&e[r][ho]===t;n=r++);return n}function Oo(e,t,n){for(let r=n-1;r>=0&&e[r][ho]===t;n=r--);return n}function ko(){return{lastKey:-1,lastNeedle:-1,lastIndex:-1}}function Ao(e,t,n,r){let{lastKey:i,lastNeedle:a,lastIndex:o}=n,s=0,c=e.length-1;if(r===i){if(t===a)return To=o!==-1&&e[o][ho]===t,o;t>=a?s=o===-1?0:o:c=o}return n.lastKey=r,n.lastNeedle=t,n.lastIndex=Eo(e,t,s,c)}function jo(e){return typeof e==`string`?JSON.parse(e):e}var Mo="`line` must be greater than 0 (lines start at line 1)",No="`column` must be greater than or equal to 0 (columns start at column 0)",Po=class{constructor(e,t){let n=typeof e==`string`;if(!n&&e._decodedMemo)return e;let r=jo(e),{version:i,file:a,names:o,sourceRoot:s,sources:c,sourcesContent:l}=r;this.version=i,this.file=a,this.names=o||[],this.sourceRoot=s,this.sources=c,this.sourcesContent=l,this.ignoreList=r.ignoreList||r.x_google_ignoreList||void 0;let u=mo(t,s);this.resolvedSources=c.map(u);let{mappings:d}=r;if(typeof d==`string`)this._encoded=d,this._decoded=void 0;else if(Array.isArray(d))this._encoded=void 0,this._decoded=bo(d,n);else if(r.sections)throw Error(`TraceMap passed sectioned source map, please use FlattenMap export instead`);else throw Error(`invalid source map: ${JSON.stringify(r)}`);this._decodedMemo=ko(),this._bySources=void 0,this._bySourceMemos=void 0}};function Fo(e){return e}function Io(e){var t;return(t=Fo(e))._decoded||(t._decoded=qa(Fo(e)._encoded))}function Lo(e,t){let{line:n,column:r,bias:i}=t;if(n--,n<0)throw Error(Mo);if(r<0)throw Error(No);let a=Io(e);if(n>=a.length)return Ro(null,null,null,null);let o=a[n],s=zo(o,Fo(e)._decodedMemo,n,r,i||1);if(s===-1)return Ro(null,null,null,null);let c=o[s];if(c.length===1)return Ro(null,null,null,null);let{names:l,resolvedSources:u}=e;return Ro(u[c[go]],c[_o]+1,c[vo],c.length===5?l[c[yo]]:null)}function Ro(e,t,n,r){return{source:e,line:t,column:n,name:r}}function zo(e,t,n,r,i){let a=Ao(e,r,t,n);return To?a=(i===-1?Do:Oo)(e,r,a):i===-1&&a++,a===-1||a===e.length?-1:a}function Bo(e){return e>=65&&e<=90||e>=97&&e<=122||e>=48&&e<=57||e===43||e===47||e===61}function Vo(e){let t=0;for(;t<e.length;){let n=e.indexOf(`//# sourceMappingURL=data:application/json`,t);if(n===-1)return;let r=e.indexOf(`;base64,`,n+42);if(r===-1){t=n+42;continue}let i=e.indexOf(`,`,n);if(i!==-1&&i<r){t=r+8;continue}let a=r+8,o=a;for(;o<e.length&&Bo(e.charCodeAt(o));)o++;if(o>a)return e.slice(a,o);t=o}}const Ho=d(`@workflow/core//sourceMapTracers`,1,()=>({byCode:new Map}));function Uo(e){let t=Ho.byCode.get(e);if(t!==void 0)return Ho.byCode.delete(e),Ho.byCode.set(e,t),t;let n=null,r=Vo(e);if(r)try{let e=Buffer.from(r,`base64`).toString(`utf-8`);n=new Po(JSON.parse(e))}catch{n=null}for(Ho.byCode.set(e,n);Ho.byCode.size>8;){let e=Ho.byCode.keys().next().value;if(e===void 0)break;Ho.byCode.delete(e)}return n}function Wo(e,t,n){if(!e.includes(t))return e;let r=Uo(n);if(!r)return e;try{return e.split(`
4
+ `).map(e=>{let n=e.match(/^\s*at\s+(?:(.+?)\s+\()?(.+?):(\d+):(\d+)\)?$/);if(!n)return e;let[,i,a,o,s]=n;if(!a.includes(t))return e;let c=parseInt(o,10),l=parseInt(s,10),u=Lo(r,{line:c,column:l});if(u.source&&u.line!==null){let e=i||u.name||`anonymous`,t=u.column===null?l:u.column;return` at ${e} (${u.source}:${u.line}:${t})`}return e}).join(`
5
+ `)}catch{return e}}function Go(e,t,n){let r=(2<<31-Math.clz32(e.length-1|1))-1,i=Math.ceil(1.6*r*t/e.length);return(a=t)=>{if(!a)return``;let o=``;for(;;){let t=n(i),s=i;for(;s--;)if(o+=e[t[s]&r]||``,o.length>=a)return o}}}function Ko(e,t){let n=e.get(t);if(n)return n;let r=qo(t);if(r){for(let[t,n]of e)if(qo(t)===r)return n}}function qo(e){let t=e.indexOf(`_`);return t===-1?void 0:e.slice(t+1)}function Jo(e){switch(e.type){case`step`:return`step ${e.stepName} (${e.correlationId})`;case`hook`:return`hook (${e.correlationId})`;case`wait`:return`wait (${e.correlationId})`;case`attribute`:return`attribute (${e.correlationId})`}return`unknown`}function Yo(e,t,n){let r=e.correlationId?Ko(t,e.correlationId):void 0,i=n.describe();return[`pending at this id: ${r?Jo(r):`none`}.`,`consumer: index=${i.index}, length=${i.length}, parked=${i.parked}, lastConsumed=${i.lastConsumedEventId??`none`}`].join(` `)}function Xo(e){return function(t,n){let r=function(...r){let{promise:i,resolve:a,reject:o}=Wt(),s=`step_${e.generateUlid()}`,c={type:`step`,correlationId:s,stepName:t,args:r};this!==void 0&&this!==null&&this!==globalThis&&(c.thisVal=this);let l=n?.();return l&&(c.closureVars=l),e.invocationsQueue.set(s,c),rt.debug(`Step consumer setup`,{correlationId:s,stepName:t,args:r}),e.eventsConsumer.subscribe(n=>{if(!n)return jn(e),Q.NotConsumed;if(rt.debug(`Step consumer event processing`,{correlationId:s,stepName:t,args:r.join(`, `),incomingCorrelationId:n.correlationId,isMatch:s===n.correlationId,eventType:n.eventType}),n.correlationId!==s)return Q.NotConsumed;let i=`eventData`in n&&n.eventData&&`stepName`in n.eventData?n.eventData.stepName:void 0;if(typeof i==`string`&&i!==t)return e.promiseQueue=e.promiseQueue.then(()=>{e.onWorkflowError(new Ht(`Replay divergence: step event ${n.eventType} for ${s} belongs to "${i}", but the current step consumer is "${t}"`,{eventId:n.eventId}))}),Q.Finished;if(n.eventType===`step_created`){let r=e.invocationsQueue.get(s);return!r||r.type!==`step`?(e.promiseQueue=e.promiseQueue.then(()=>{o(new Ht(`Replay divergence: step ${s} (${t}) created but not found in invocation queue`,{eventId:n.eventId}))}),Q.Finished):(r.hasCreatedEvent=!0,Q.Consumed)}if(n.eventType===`step_started`){let t=e.invocationsQueue.get(s);return t&&t.type===`step`&&(t.ownerMessageId=`eventData`in n&&n.eventData&&`ownerMessageId`in n.eventData&&typeof n.eventData.ownerMessageId==`string`?n.eventData.ownerMessageId:void 0,t.lastStartedAt=+n.createdAt),Q.Consumed}if(n.eventType===`step_retrying`){let t=e.invocationsQueue.get(s);return t&&t.type===`step`&&(t.sawRetrying=!0,t.ownerMessageId=void 0),Q.Consumed}if(n.eventType===`step_failed`){e.invocationsQueue.delete(n.correlationId);let t=e.eventsConsumer.eventIndex,r=An(e,t,`step`,{deliveredAt:+n.createdAt}),i,a=Dn(e,t,`step`);return e.pendingDeliveries++,e.promiseQueue=e.promiseQueue.then(async()=>{try{let t=await e.replayPayloadCache.prepareEventPayload(n.eventId,`error`,n.eventData.error);i=await Yt(n.eventData.error,e.runId,e.encryptionKey,e.globalThis,{},t)}catch(e){rt.error(`Failed to hydrate step_failed error`,{correlationId:n.correlationId,error:e instanceof Error?e.message:String(e)}),i=new Y(`Failed to hydrate step error: ${e instanceof Error?e.message:String(e)}`)}finally{e.pendingDeliveries--}a.then(()=>{r.markDelivered(),o(i)})}),Q.Finished}if(n.eventType===`step_completed`){e.invocationsQueue.delete(n.correlationId);let t=n.eventId,r=n.eventData.result,i=e.eventsConsumer.eventIndex,s=An(e,i,`step`,{deliveredAt:+n.createdAt}),c,l=Dn(e,i,`step`);return e.pendingDeliveries++,e.promiseQueue=e.promiseQueue.then(async()=>{try{c={ok:!0,value:await e.replayPayloadCache.getStepResult(t,async()=>{let n=await e.replayPayloadCache.prepareEventPayload(t,`result`,r);return await vn(r,e.runId,e.encryptionKey,e.globalThis,{},n)})}}catch(e){c={ok:!1,error:e}}finally{e.pendingDeliveries--}l.then(()=>{s.markDelivered(),c.ok?a(c.value):o(c.error)})}),Q.Finished}return e.promiseQueue=e.promiseQueue.then(()=>{e.onWorkflowError(new Ht(`Replay divergence: Unexpected event type for step ${s} (name: ${t}) "${n.eventType}"`,{eventId:n.eventId}))}),Q.Finished}),i},i=t.split(`//`).pop();return Object.defineProperty(r,"name",{value:i}),Object.defineProperty(r,"stepId",{value:t,writable:!1,enumerable:!1,configurable:!1}),n&&(mn(n),Object.defineProperty(r,"__closureVarsFn",{value:n,writable:!1,enumerable:!1,configurable:!1})),Object.defineProperty(r,"bind",{value:function(e,...r){let i=Function.prototype.bind.call(this,e,...r);return Object.defineProperty(i,"stepId",{value:t,writable:!1,enumerable:!1,configurable:!1}),n&&Object.defineProperty(i,"__closureVarsFn",{value:n,writable:!1,enumerable:!1,configurable:!1}),Object.defineProperty(i,"__boundThis",{value:e,writable:!1,enumerable:!1,configurable:!1}),r.length>0&&Object.defineProperty(i,"__boundArgs",{value:r,writable:!1,enumerable:!1,configurable:!1}),i},writable:!1,enumerable:!1,configurable:!1}),r}}var Zo=n(((e,t)=>{(function(e,t,n){function r(e){var t=this,n=o();t.next=function(){var e=2091639*t.s0+t.c*23283064365386963e-26;return t.s0=t.s1,t.s1=t.s2,t.s2=e-(t.c=e|0)},t.c=1,t.s0=n(` `),t.s1=n(` `),t.s2=n(` `),t.s0-=n(e),t.s0<0&&(t.s0+=1),t.s1-=n(e),t.s1<0&&(t.s1+=1),t.s2-=n(e),t.s2<0&&(t.s2+=1),n=null}function i(e,t){return t.c=e.c,t.s0=e.s0,t.s1=e.s1,t.s2=e.s2,t}function a(e,t){var n=new r(e),a=t&&t.state,o=n.next;return o.int32=function(){return n.next()*4294967296|0},o.double=function(){return o()+(o()*2097152|0)*11102230246251565e-32},o.quick=o,a&&(typeof a==`object`&&i(a,n),o.state=function(){return i(n,{})}),o}function o(){var e=4022871197;return function(t){t=String(t);for(var n=0;n<t.length;n++){e+=t.charCodeAt(n);var r=.02519603282416938*e;e=r>>>0,r-=e,r*=e,e=r>>>0,r-=e,e+=r*4294967296}return(e>>>0)*23283064365386963e-26}}t&&t.exports?t.exports=a:n&&n.amd?n(function(){return a}):this.alea=a})(e,typeof t==`object`&&t,typeof define==`function`&&define)})),Qo=n(((e,t)=>{(function(e,t,n){function r(e){var t=this,n=``;t.x=0,t.y=0,t.z=0,t.w=0,t.next=function(){var e=t.x^t.x<<11;return t.x=t.y,t.y=t.z,t.z=t.w,t.w^=t.w>>>19^e^e>>>8},e===(e|0)?t.x=e:n+=e;for(var r=0;r<n.length+64;r++)t.x^=n.charCodeAt(r)|0,t.next()}function i(e,t){return t.x=e.x,t.y=e.y,t.z=e.z,t.w=e.w,t}function a(e,t){var n=new r(e),a=t&&t.state,o=function(){return(n.next()>>>0)/4294967296};return o.double=function(){do var e=((n.next()>>>11)+(n.next()>>>0)/4294967296)/(1<<21);while(e===0);return e},o.int32=n.next,o.quick=o,a&&(typeof a==`object`&&i(a,n),o.state=function(){return i(n,{})}),o}t&&t.exports?t.exports=a:n&&n.amd?n(function(){return a}):this.xor128=a})(e,typeof t==`object`&&t,typeof define==`function`&&define)})),$o=n(((e,t)=>{(function(e,t,n){function r(e){var t=this,n=``;t.next=function(){var e=t.x^t.x>>>2;return t.x=t.y,t.y=t.z,t.z=t.w,t.w=t.v,(t.d=t.d+362437|0)+(t.v=t.v^t.v<<4^(e^e<<1))|0},t.x=0,t.y=0,t.z=0,t.w=0,t.v=0,e===(e|0)?t.x=e:n+=e;for(var r=0;r<n.length+64;r++)t.x^=n.charCodeAt(r)|0,r==n.length&&(t.d=t.x<<10^t.x>>>4),t.next()}function i(e,t){return t.x=e.x,t.y=e.y,t.z=e.z,t.w=e.w,t.v=e.v,t.d=e.d,t}function a(e,t){var n=new r(e),a=t&&t.state,o=function(){return(n.next()>>>0)/4294967296};return o.double=function(){do var e=((n.next()>>>11)+(n.next()>>>0)/4294967296)/(1<<21);while(e===0);return e},o.int32=n.next,o.quick=o,a&&(typeof a==`object`&&i(a,n),o.state=function(){return i(n,{})}),o}t&&t.exports?t.exports=a:n&&n.amd?n(function(){return a}):this.xorwow=a})(e,typeof t==`object`&&t,typeof define==`function`&&define)})),es=n(((e,t)=>{(function(e,t,n){function r(e){var t=this;t.next=function(){var e=t.x,n=t.i,r=e[n],i;return r^=r>>>7,i=r^r<<24,r=e[n+1&7],i^=r^r>>>10,r=e[n+3&7],i^=r^r>>>3,r=e[n+4&7],i^=r^r<<7,r=e[n+7&7],r^=r<<13,i^=r^r<<9,e[n]=i,t.i=n+1&7,i};function n(e,t){var n,r=[];if(t===(t|0))r[0]=t;else for(t=``+t,n=0;n<t.length;++n)r[n&7]=r[n&7]<<15^t.charCodeAt(n)+r[n+1&7]<<13;for(;r.length<8;)r.push(0);for(n=0;n<8&&r[n]===0;++n);for(n==8?r[7]=-1:r[n],e.x=r,e.i=0,n=256;n>0;--n)e.next()}n(t,e)}function i(e,t){return t.x=e.x.slice(),t.i=e.i,t}function a(e,t){e??=+new Date;var n=new r(e),a=t&&t.state,o=function(){return(n.next()>>>0)/4294967296};return o.double=function(){do var e=((n.next()>>>11)+(n.next()>>>0)/4294967296)/(1<<21);while(e===0);return e},o.int32=n.next,o.quick=o,a&&(a.x&&i(a,n),o.state=function(){return i(n,{})}),o}t&&t.exports?t.exports=a:n&&n.amd?n(function(){return a}):this.xorshift7=a})(e,typeof t==`object`&&t,typeof define==`function`&&define)})),ts=n(((e,t)=>{(function(e,t,n){function r(e){var t=this;t.next=function(){var e=t.w,n=t.X,r=t.i,i,a;return t.w=e=e+1640531527|0,a=n[r+34&127],i=n[r=r+1&127],a^=a<<13,i^=i<<17,a^=a>>>15,i^=i>>>12,a=n[r]=a^i,t.i=r,a+(e^e>>>16)|0};function n(e,t){var n,r,i,a,o,s=[],c=128;for(t===(t|0)?(r=t,t=null):(t+=`\0`,r=0,c=Math.max(c,t.length)),i=0,a=-32;a<c;++a)t&&(r^=t.charCodeAt((a+32)%t.length)),a===0&&(o=r),r^=r<<10,r^=r>>>15,r^=r<<4,r^=r>>>13,a>=0&&(o=o+1640531527|0,n=s[a&127]^=r+o,i=n==0?i+1:0);for(i>=128&&(s[(t&&t.length||0)&127]=-1),i=127,a=512;a>0;--a)r=s[i+34&127],n=s[i=i+1&127],r^=r<<13,n^=n<<17,r^=r>>>15,n^=n>>>12,s[i]=r^n;e.w=o,e.X=s,e.i=i}n(t,e)}function i(e,t){return t.i=e.i,t.w=e.w,t.X=e.X.slice(),t}function a(e,t){e??=+new Date;var n=new r(e),a=t&&t.state,o=function(){return(n.next()>>>0)/4294967296};return o.double=function(){do var e=((n.next()>>>11)+(n.next()>>>0)/4294967296)/(1<<21);while(e===0);return e},o.int32=n.next,o.quick=o,a&&(a.X&&i(a,n),o.state=function(){return i(n,{})}),o}t&&t.exports?t.exports=a:n&&n.amd?n(function(){return a}):this.xor4096=a})(e,typeof t==`object`&&t,typeof define==`function`&&define)})),ns=n(((e,t)=>{(function(e,t,n){function r(e){var t=this,n=``;t.next=function(){var e=t.b,n=t.c,r=t.d,i=t.a;return e=e<<25^e>>>7^n,n=n-r|0,r=r<<24^r>>>8^i,i=i-e|0,t.b=e=e<<20^e>>>12^n,t.c=n=n-r|0,t.d=r<<16^n>>>16^i,t.a=i-e|0},t.a=0,t.b=0,t.c=-1640531527,t.d=1367130551,e===Math.floor(e)?(t.a=e/4294967296|0,t.b=e|0):n+=e;for(var r=0;r<n.length+20;r++)t.b^=n.charCodeAt(r)|0,t.next()}function i(e,t){return t.a=e.a,t.b=e.b,t.c=e.c,t.d=e.d,t}function a(e,t){var n=new r(e),a=t&&t.state,o=function(){return(n.next()>>>0)/4294967296};return o.double=function(){do var e=((n.next()>>>11)+(n.next()>>>0)/4294967296)/(1<<21);while(e===0);return e},o.int32=n.next,o.quick=o,a&&(typeof a==`object`&&i(a,n),o.state=function(){return i(n,{})}),o}t&&t.exports?t.exports=a:n&&n.amd?n(function(){return a}):this.tychei=a})(e,typeof t==`object`&&t,typeof define==`function`&&define)})),rs=n(((t,n)=>{(function(t,r,i){var a=256,o=6,s=52,c=`random`,l=i.pow(a,o),u=i.pow(2,s),d=u*2,f=a-1,p;function m(e,t,n){var s=[];t=t==1?{entropy:!0}:t||{};var f=v(_(t.entropy?[e,b(r)]:e??y(),3),s),p=new h(s),m=function(){for(var e=p.g(o),t=l,n=0;e<u;)e=(e+n)*a,t*=a,n=p.g(1);for(;e>=d;)e/=2,t/=2,n>>>=1;return(e+n)/t};return m.int32=function(){return p.g(4)|0},m.quick=function(){return p.g(4)/4294967296},m.double=m,v(b(p.S),r),(t.pass||n||function(e,t,n,r){return r&&(r.S&&g(r,p),e.state=function(){return g(p,{})}),n?(i[c]=e,t):e})(m,f,`global`in t?t.global:this==i,t.state)}function h(e){var t,n=e.length,r=this,i=0,o=r.i=r.j=0,s=r.S=[];for(n||(e=[n++]);i<a;)s[i]=i++;for(i=0;i<a;i++)s[i]=s[o=f&o+e[i%n]+(t=s[i])],s[o]=t;(r.g=function(e){for(var t,n=0,i=r.i,o=r.j,s=r.S;e--;)t=s[i=f&i+1],n=n*a+s[f&(s[i]=s[o=f&o+t])+(s[o]=t)];return r.i=i,r.j=o,n})(a)}function g(e,t){return t.i=e.i,t.j=e.j,t.S=e.S.slice(),t}function _(e,t){var n=[],r=typeof e,i;if(t&&r==`object`)for(i in e)try{n.push(_(e[i],t-1))}catch{}return n.length?n:r==`string`?e:e+`\0`}function v(e,t){for(var n=e+``,r,i=0;i<n.length;)t[f&i]=f&(r^=t[f&i]*19)+n.charCodeAt(i++);return b(t)}function y(){try{var e;return p&&(e=p.randomBytes)?e=e(a):(e=new Uint8Array(a),(t.crypto||t.msCrypto).getRandomValues(e)),b(e)}catch{var n=t.navigator,i=n&&n.plugins;return[+new Date,t,i,t.screen,b(r)]}}function b(e){return String.fromCharCode.apply(0,e)}if(v(i.random(),r),typeof n==`object`&&n.exports){n.exports=m;try{p=e(`crypto`)}catch{}}else typeof define==`function`&&define.amd?define(function(){return m}):i[`seed`+c]=m})(typeof self<`u`?self:t,[],Math)})),is=t(n(((e,t)=>{var n=Zo(),r=Qo(),i=$o(),a=es(),o=ts(),s=ns(),c=rs();c.alea=n,c.xor128=r,c.xorwow=i,c.xorshift7=a,c.xor4096=o,c.tychei=s,t.exports=c}))(),1);const as=`ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/`,os=new Uint8Array(128).fill(255);for(let e=0;e<64;e++)os[as.charCodeAt(e)]=e;function ss(e){return e===9||e===10||e===12||e===13||e===32}function cs(e,t){for(;t<e.length&&ss(e.charCodeAt(t));)t++;return t}function ls(e,t){let n=e.length,r=e;n===2?r=e+`AA`:n===3&&(r=e+`A`);let i=os[r.charCodeAt(0)],a=os[r.charCodeAt(1)],o=os[r.charCodeAt(2)],s=os[r.charCodeAt(3)],c=i<<2|a>>4,l=(a&15)<<4|o>>2,u=(o&3)<<6|s;if(n===2){if(t&&l!==0)throw SyntaxError(`Extra bits in base64 chunk`);return[c]}if(n===3){if(t&&u!==0)throw SyntaxError(`Extra bits in base64 chunk`);return[c,l]}return[c,l,u]}function us(e,t,n,r){if(r===void 0&&(r=2**53-1),r===0)return{read:0,bytes:[],error:null};let i=0,a=[],o=``,s=0,c=0,l=e.length;for(;;){if(c=cs(e,c),c===l){if(s>0){if(n===`stop-before-partial`)return{read:i,bytes:a,error:null};if(n===`loose`){if(s===1)return{read:i,bytes:a,error:SyntaxError(`Invalid base64: lone character in final chunk`)};a.push(...ls(o,!1))}else return{read:i,bytes:a,error:SyntaxError(`Invalid base64: incomplete chunk in strict mode`)}}return{read:l,bytes:a,error:null}}let u=e[c];if(c++,u===`=`){if(s<2)return{read:i,bytes:a,error:SyntaxError(`Invalid base64: padding in unexpected place`)};if(c=cs(e,c),s===2){if(c===l)return n===`stop-before-partial`?{read:i,bytes:a,error:null}:{read:i,bytes:a,error:SyntaxError(`Invalid base64: missing second padding character`)};u=e[c],u===`=`&&(c=cs(e,c+1))}if(c<l)return{read:i,bytes:a,error:SyntaxError(`Invalid base64: unexpected characters after padding`)};let t=n===`strict`;try{a.push(...ls(o,t))}catch(e){return{read:i,bytes:a,error:e}}return{read:l,bytes:a,error:null}}if(t===`base64url`){if(u===`+`||u===`/`)return{read:i,bytes:a,error:SyntaxError(`Invalid base64url: unexpected character '${u}'`)};u===`-`?u=`+`:u===`_`&&(u=`/`)}let d=u.charCodeAt(0);if(d>=128||os[d]===255)return{read:i,bytes:a,error:SyntaxError(`Invalid base64: unexpected character '${e[c-1]}'`)};let f=r-a.length;if(f===1&&s===2||f===2&&s===3||(o+=u,s=o.length,s===4&&(a.push(...ls(o)),o=``,s=0,i=c,a.length===r)))return{read:i,bytes:a,error:null}}}function ds(e,t){t===void 0&&(t=2**53-1);let n=e.length,r=[],i=0;if(n%2!=0)return{read:0,bytes:[],error:SyntaxError(`Invalid hex: string length must be even`)};for(;i<n&&r.length<t;){let t=e.substring(i,i+2);if(!/^[0-9a-fA-F]{2}$/.test(t))return{read:i,bytes:r,error:SyntaxError(`Invalid hex: unexpected character at position ${i}`)};i+=2,r.push(Number.parseInt(t,16))}return{read:i,bytes:r,error:null}}function fs(e,t){let n=t?.alphabet??`base64`;if(n!==`base64`&&n!==`base64url`)throw TypeError(`Invalid alphabet: expected "base64" or "base64url", got "${n}"`);let r=!!t?.omitPadding,i=``,a=e.length;for(let t=0;t<a;t+=3){let n=e[t],o=t+1<a?e[t+1]:0,s=t+2<a?e[t+2]:0;i+=as[n>>2&63],i+=as[(n&3)<<4|o>>4&15],t+1<a?i+=as[(o&15)<<2|s>>6&3]:r||(i+=`=`),t+2<a?i+=as[s&63]:r||(i+=`=`)}return n===`base64url`&&(i=i.replace(/\+/g,`-`).replace(/\//g,`_`)),i}function ps(e){let t=``;for(let n=0;n<e.length;n++)t+=e[n].toString(16).padStart(2,`0`);return t}function ms(e){let t=e.prototype,n=e;t.toBase64||Object.defineProperty(t,"toBase64",{value:function(t){if(!(this instanceof e))throw TypeError(`this is not a Uint8Array`);return fs(this,t)},writable:!0,enumerable:!1,configurable:!0}),t.toHex||Object.defineProperty(t,"toHex",{value:function(){if(!(this instanceof e))throw TypeError(`this is not a Uint8Array`);return ps(this)},writable:!0,enumerable:!1,configurable:!0}),t.setFromBase64||Object.defineProperty(t,"setFromBase64",{value:function(t,n){if(!(this instanceof e))throw TypeError(`this is not a Uint8Array`);if(typeof t!=`string`)throw TypeError(`expected a string`);let r=n?.alphabet??`base64`;if(r!==`base64`&&r!==`base64url`)throw TypeError(`Invalid alphabet: expected "base64" or "base64url", got "${r}"`);let i=n?.lastChunkHandling??`loose`;if(i!==`loose`&&i!==`strict`&&i!==`stop-before-partial`)throw TypeError(`Invalid lastChunkHandling: expected "loose", "strict", or "stop-before-partial", got "${i}"`);let a=us(t,r,i,this.length),o=a.bytes,s=o.length;for(let e=0;e<s;e++)this[e]=o[e];if(a.error)throw a.error;return{read:a.read,written:s}},writable:!0,enumerable:!1,configurable:!0}),t.setFromHex||Object.defineProperty(t,"setFromHex",{value:function(t){if(!(this instanceof e))throw TypeError(`this is not a Uint8Array`);if(typeof t!=`string`)throw TypeError(`expected a string`);let n=ds(t,this.length),r=n.bytes,i=r.length;for(let e=0;e<i;e++)this[e]=r[e];if(n.error)throw n.error;return{read:n.read,written:i}},writable:!0,enumerable:!1,configurable:!0}),n.fromBase64||Object.defineProperty(e,"fromBase64",{value:function(t,n){if(typeof t!=`string`)throw TypeError(`expected a string`);let r=n?.alphabet??`base64`;if(r!==`base64`&&r!==`base64url`)throw TypeError(`Invalid alphabet: expected "base64" or "base64url", got "${r}"`);let i=n?.lastChunkHandling??`loose`;if(i!==`loose`&&i!==`strict`&&i!==`stop-before-partial`)throw TypeError(`Invalid lastChunkHandling: expected "loose", "strict", or "stop-before-partial", got "${i}"`);let a=us(t,r,i);if(a.error)throw a.error;return new e(a.bytes)},writable:!0,enumerable:!1,configurable:!0}),n.fromHex||Object.defineProperty(e,"fromHex",{value:function(t){if(typeof t!=`string`)throw TypeError(`expected a string`);let n=ds(t);if(n.error)throw n.error;return new e(n.bytes)},writable:!0,enumerable:!1,configurable:!0})}function hs(e){return function(){let t=`0123456789abcdef`,n=``;for(let r=0;r<36;r++)n+=r===8||r===13||r===18||r===23?`-`:r===14?`4`:r===19?t[Math.floor(e()*4)+8]:t[Math.floor(e()*16)];return n}}const gs={"SHA-1":`sha1`,"SHA-256":`sha256`,"SHA-384":`sha384`,"SHA-512":`sha512`};function _s(e){if(Nr.isTypedArray(e)||Nr.isDataView(e)){if(Nr.isSharedArrayBuffer(e.buffer))throw TypeError(`crypto.subtle.digest does not accept SharedArrayBuffer-backed views`);return e}if(!Nr.isArrayBuffer(e))throw TypeError(`data must be an ArrayBuffer or ArrayBufferView`);return new Uint8Array(e)}function vs(e){let{fixedTimestamp:t}=e,{seed:n}=e,r=(0,is.default)(n),i=Lr(),a=Rr(`globalThis`,i);a.Math.random=r;let o=a.Date;a.Date=function(...e){return new.target===void 0?new o(t).toString():Reflect.construct(o,e.length===0?[t]:e,new.target)},a.Date.prototype=o.prototype,Object.setPrototypeOf(a.Date,o),a.Date.now=()=>t;let s=globalThis.crypto,c=s.subtle;function l(e){for(let t=0;t<e.length;t++)e[t]=Math.floor(r()*256);return e}let u=hs(r),d=a;delete d.Atomics.waitAsync,delete d.WebAssembly.compile,delete d.WebAssembly.instantiate,delete d.WebAssembly.compileStreaming,delete d.WebAssembly.instantiateStreaming,delete d.WeakRef,delete d.FinalizationRegistry;let f=async(e,t)=>{let n=typeof e==`string`?e:e.name,r=gs[n.toUpperCase()];if(!r)throw new DOMException(`Unrecognized algorithm name: ${n}`,`NotSupportedError`);let i=Mr(r).update(_s(t)).digest(),a=new ArrayBuffer(i.byteLength);return new Uint8Array(a).set(i),a};return a.crypto=new Proxy(s,{get(e,t){return t===`getRandomValues`?l:t===`randomUUID`?u:t===`subtle`?new Proxy(c,{get(e,t){if(t===`digest`)return f;let n=e[t];return typeof n==`function`?()=>{throw new K(`\`crypto.subtle.${String(t)}()\` is not available inside a workflow function. Move it to a step function where full Node.js crypto is available.`)}:n}}):e[t]}}),a.process={env:Object.freeze({...process.env})},a.DOMException=globalThis.DOMException,a.Headers=globalThis.Headers,a.TextEncoder=globalThis.TextEncoder,a.TextDecoder=globalThis.TextDecoder,a.console=globalThis.console,a.URL=globalThis.URL,a.URLSearchParams=globalThis.URLSearchParams,a.structuredClone=globalThis.structuredClone,a.atob=globalThis.atob,a.btoa=globalThis.btoa,ms(a.Uint8Array),a.Symbol.dispose??=Symbol.for(`Symbol.dispose`),a.Symbol.asyncDispose??=Symbol.for(`Symbol.asyncDispose`),a.exports={},a.module={exports:a.exports},{context:i,globalThis:a,updateTimestamp:e=>{t=e}}}const ys=d(`@workflow/core//vmScriptCache`,1,()=>({byCode:new Map}));function bs(e){let t=ys.byCode.get(e);if(t!==void 0)return ys.byCode.delete(e),ys.byCode.set(e,t),t}function xs(e,t){let n=bs(e);if(n===void 0)for(n=new Map,ys.byCode.set(e,n);ys.byCode.size>8;){let e=ys.byCode.keys().next().value;if(e===void 0)break;ys.byCode.delete(e)}let r=n.get(t),i=r!==void 0;return r===void 0&&(r=new Ir(e,{filename:t}),n.set(t,r)),{script:r,cacheHit:i}}function Ss(e){return async function(t,n={}){let{promise:r,resolve:i}=Wt(),a=`attr_${e.generateUlid()}`;try{f({changes:t,writer:{type:`workflow`},...n.allowReservedAttributes===!0?{allowReservedAttributes:!0}:{}})}catch(t){if(!(t instanceof p))throw t;if(!e.eventsConsumer.events.some(e=>e.eventType===`attr_set`&&e.correlationId===a))throw new Y(t.message)}let o={type:`attribute`,correlationId:a,changes:t,...n.allowReservedAttributes===!0?{allowReservedAttributes:!0}:{}};return e.invocationsQueue.set(a,o),e.eventsConsumer.subscribe(r=>r?r.correlationId===a?r.eventType!==`attr_set`||r.eventData.writer.type!==`workflow`||JSON.stringify(r.eventData.changes)!==JSON.stringify(t)||r.eventData.allowReservedAttributes===!0!=(n.allowReservedAttributes===!0)?(e.promiseQueue=e.promiseQueue.then(()=>{e.onWorkflowError(new Ht(`Replay divergence: Unexpected attribute event for ${a}`,{eventId:r.eventId}))}),Q.Finished):(e.invocationsQueue.delete(a),e.promiseQueue=e.promiseQueue.then(()=>{i()}),Q.Finished):Q.NotConsumed:(jn(e),Q.NotConsumed)),r}}function Cs(e,t){if(typeof t!=`string`)return null;let n=ln(cn,e.globalThis),r=n?.[nn];return typeof r==`function`?r.call(n,{runId:t}):null}function ws(e){return function(t={}){if(t.token===``)throw Error("`createHook()` was called with an empty string token. Pass a non-empty token, or omit the `token` option to use a generated one.");if(t.isWebhook===!0&&t.experimental_minRetention!==void 0)throw Error("Webhook hooks do not support `experimental_minRetention`. Use a non-webhook `createHook()` with `resumeHook()`.");if(t.experimental_minRetention!==void 0&&e.worldCapabilities?.hookRetention?.active!==!0)throw new Y("The configured World does not support `experimental_minRetention` for Hooks.");if(t.experimental_force===!0){if(t.token===void 0||t.token===null)throw Error("`createHook()` was called with `experimental_force: true` but no `token`. Force-claiming only applies to an explicit token another run may hold.");if(t.isWebhook===!0)throw Error("Webhook hooks do not support `experimental_force`. Use a non-webhook `createHook()` with an explicit token.");if(e.worldCapabilities?.hookForceClaim!==!0)throw new Y("The configured World does not support `experimental_force` for Hooks.")}let n=`hook_${e.generateUlid()}`,r=t.token??e.generateNanoid(),i=t.experimental_minRetention===void 0?void 0:Ot(t.experimental_minRetention),a=t.isWebhook??!1;e.invocationsQueue.set(n,{type:`hook`,correlationId:n,token:r,tokenRetentionUntil:i,...t.experimental_force===!0&&{force:!0},metadata:t.metadata,isWebhook:a});let o=[],s=[],c=[],l=!1,u=!1,d=!1,f=!1,p=null,m=null,h=null,g=Promise.resolve();function _(t,n){let r=e.eventsConsumer.eventIndex,i=An(e,r,`hook`,{deliveredAt:t}),a=Dn(e,r,`hook`);g=e.promiseQueue.then(()=>a).then(()=>{i.markDelivered(),n()})}function v(t){let n=g;e.promiseQueue=e.promiseQueue.then(()=>{n.then(t)})}let y=new Set;ze.debug(`Hook consumer setup`,{correlationId:n,token:r}),e.eventsConsumer.subscribe(i=>{if(!i)return l=!0,(s.length>0&&o.length===0||c.length>0&&!u&&!f)&&jn(e),Q.NotConsumed;if(i.correlationId!==n)return Q.NotConsumed;let a=`eventData`in i&&i.eventData&&`token`in i.eventData?i.eventData.token:void 0;if(typeof a==`string`&&a!==r)return e.promiseQueue=e.promiseQueue.then(()=>{e.onWorkflowError(new Ht(`Replay divergence: hook event ${i.eventType} for ${n} belongs to token "${a}", but the current hook consumer expects "${r}"`,{eventId:i.eventId}))}),Q.Finished;if(i.eventType===`hook_created`){let t=e.invocationsQueue.get(n);t&&t.type===`hook`&&(t.hasCreatedEvent=!0,t.tokenRetentionUntil=i.eventData.tokenRetentionUntil),u=!0;let r=c.slice();return c.length=0,_(+i.createdAt,()=>{for(let e of r)e.resolve(null)}),Q.Consumed}if(i.eventType===`hook_conflict`){e.invocationsQueue.delete(n);let r=i,a=t.experimental_force===!0&&r.eventData.forceRefusedReason===void 0,o=a?new Y(`createHook({ experimental_force: true }) for token "${r.eventData.token}" was answered with a hook_conflict: the configured World does not support force-claiming hook tokens${r.eventData.conflictingRunId?` (run "${r.eventData.conflictingRunId}" holds it)`:``}.`):new jt(r.eventData.token,r.eventData.conflictingRunId);f=!0,p=o,h=a?null:Cs(e,r.eventData.conflictingRunId);let l=s.slice();s.length=0;let u=c.slice();return c.length=0,_(+i.createdAt,()=>{for(let e of l)e.reject(o);for(let e of u)h?e.resolve(h):e.reject(o)}),Q.Consumed}if(i.eventType===`hook_received`){let t=i.resumeId;if(typeof t==`string`){if(y.has(t))return Q.Consumed;y.add(t)}let n=e.eventsConsumer.eventIndex,r=s.length>0,a=An(e,n,`hook`,{armed:r,deliveredAt:+i.createdAt});if(r){let t=Dn(e,n,`hook`),r=s.shift();if(r){e.pendingDeliveries++;let n;e.promiseQueue=e.promiseQueue.then(async()=>{try{let t=await e.replayPayloadCache.prepareEventPayload(i.eventId,`payload`,i.eventData.payload);n={ok:!0,value:await vn(i.eventData.payload,e.runId,e.encryptionKey,e.globalThis,{},t)}}catch(e){n={ok:!1,error:e}}finally{e.pendingDeliveries--}t.then(()=>{a.markDelivered(),n.ok?r.resolve(n.value):r.reject(n.error)})})}}else{let t,r=Wt();e.pendingDeliveries++,e.promiseQueue=e.promiseQueue.then(async()=>{try{let n=await e.replayPayloadCache.prepareEventPayload(i.eventId,`payload`,i.eventData.payload);t={ok:!0,value:await vn(i.eventData.payload,e.runId,e.encryptionKey,e.globalThis,{},n)}}catch(e){t={ok:!1,error:e}}finally{e.pendingDeliveries--,r.resolve()}}),o.push({claim:()=>(a.arm(),r.promise.then(()=>Dn(e,n,`hook`)).then(()=>{if(a.markDelivered(),t&&!t.ok)throw t.error;return t.value}))})}return Q.Consumed}if(i.eventType===`hook_disposed`){e.invocationsQueue.delete(n),d=!0;let t=i.eventData?.forceClaimedBy;if(t){let i=new zt(r,t.runId,t.hookId);m=i;let a=s.slice();s.length=0;let o=c.slice();c.length=0,e.promiseQueue=e.promiseQueue.then(()=>{for(let e of a)e.reject(i);for(let e of o)e.resolve(null)}),ze.debug(`Hook force-claimed by another run`,{correlationId:n,token:r,claimedByRunId:t.runId})}return Q.Finished}return e.promiseQueue=e.promiseQueue.then(()=>{e.onWorkflowError(new Ht(`Replay divergence: Unexpected event type for hook ${n} (token: ${r}) "${i.eventType}"`,{eventId:i.eventId}))}),Q.Finished});let b=!1;function x(){let t=Wt();if(f&&p)return v(()=>{t.reject(p)}),t.promise;if(o.length>0){let e=o.shift();if(e)return e.claim()}if(m){let n=m;return e.promiseQueue=e.promiseQueue.then(()=>{t.reject(n)}),t.promise}return l&&jn(e),s.push(t),t.promise}function S(){let t=Wt();if(u)return v(()=>{t.resolve(null)}),t.promise;if(f)return v(()=>{h?t.resolve(h):t.reject(p)}),t.promise;let r=e.invocationsQueue.get(n);return r&&r.type===`hook`&&(r.hasConflictAwaiter=!0),l&&jn(e),c.push(t),t.promise}function C(){if(b||(b=!0,d))return;let t=e.invocationsQueue.get(n);t&&t.type===`hook`&&(t.disposed=!0),s.length>0&&(s.length=0,jn(e)),ze.debug(`Hook disposed`,{correlationId:n,token:r})}let w={token:r,getConflict(){return S()},then(e,t){return x().then(e,t)},async*[Symbol.asyncIterator](){for(;!b;)yield await this},dispose:C,[Symbol.dispose]:C},T=e.globalThis.Symbol.dispose;return T&&T!==Symbol.dispose&&(w[T]=C),w}}function Ts(e){return async function(t){let{promise:n,resolve:r}=Wt(),i=`wait_${e.generateUlid()}`,a=Ot(t),o={type:`wait`,correlationId:i,resumeAt:a};return e.invocationsQueue.set(i,o),e.eventsConsumer.subscribe(t=>{if(!t)return jn(e),Q.NotConsumed;if(t.correlationId!==i)return Q.NotConsumed;if(t.eventType===`wait_created`){let n=e.invocationsQueue.get(i);return n&&n.type===`wait`&&(n.hasCreatedEvent=!0,n.resumeAt=t.eventData.resumeAt),Q.Consumed}if(t.eventType===`wait_completed`){let n=t.eventData?.resumeAt;if(n!==void 0){let r=e.invocationsQueue.get(i),o=r&&r.type===`wait`?r.resumeAt:a,s=new Date(n),c=s.getTime(),l=o.getTime(),u=Number.isFinite(c)?s.toISOString():String(n);if(c!==l)return e.promiseQueue=e.promiseQueue.then(()=>{e.onWorkflowError(new Ht(`Replay divergence: wait_completed event for ${i} has resumeAt "${u}", but the current wait consumer expects "${o.toISOString()}"`,{eventId:t.eventId}))}),Q.Finished}e.invocationsQueue.delete(i);let o=e.eventsConsumer.eventIndex,s=An(e,o,`wait`,{deliveredAt:+t.createdAt}),c=Dn(e,o,`wait`);return e.promiseQueue.then(()=>c).then(()=>{s.markDelivered(),r()}),Q.Finished}return e.promiseQueue=e.promiseQueue.then(()=>{e.onWorkflowError(new Ht(`Replay divergence: Unexpected event type for wait ${i} "${t.eventType}"`,{eventId:t.eventId}))}),Q.Finished}),n}}async function Es(e,t,n,r,i,a){if(t.size!==0){for(let e of t.values())e.type===`hook`&&e.isSystem&&!e.disposed&&!e.abortRequested&&(e.disposed=!0);try{let e=await ea();await Na({suspension:new Gt(t,n),world:e,run:r,runReadyBarrier:a})}catch(t){W.warn(`Failed to drain pending queue items for ${i} workflow run`,{workflowRunId:e,message:t instanceof Error?t.message:String(t)})}}}function Ds(e,t){let n=je(t)?.moduleSpecifier||t,r=`globalThis.__private_workflows?.get(${JSON.stringify(t)})`;return G(`workflow.bundle.compile`,async t=>{let i=xs(e,n),a=xs(r,n);return t?.setAttributes({...j(i.cacheHit)}),{bundleScript:i.script,workflowLookupScript:a.script}})}function Os(e){return As(`replay`,e.workflowRun,e.events,async t=>{let{session:n,execution:r}=await Ms(e);return t?.setAttributes({...x(n.argumentCount)}),js(await r,t)})}function ks(e,t){return As(`retained`,e.workflowRun,t,async n=>{n?.setAttributes({...x(e.argumentCount)});let r=await e.resume(t);return r.type===`replay`?r:js(r,n)})}function As(e,t,n,r){return G(`workflow.run ${t.workflowName}`,i=>(i?.setAttributes({...Je(t.workflowName),...Re(t.runId),...xt(t.status),...ae(n.length),...Ae(e)}),r(i)))}function js(e,t){return e.type===`completed`?t?.setAttributes({...Ke(e.resultType)}):t&&(U(e.suspension,t),e.parked&&t.setAttributes({...st(e.parked.count),...Se(e.parked.eventId),...Qe(e.parked.eventType)})),e}async function Ms(e){let t=await pt(`workflow.vm.create_context`);return Ns(e,t.end).catch(e=>{throw t.fail(e),e})}async function Ns({workflowCode:e,workflowRun:t,events:n,encryptionKey:r,replayPayloadCache:i,compiledWorkflowScripts:a,runReadyBarrier:o,worldCapabilities:s},c){let u=t.startedAt;if(!u)throw new K(`Workflow run "${t.runId}" has no "startedAt" timestamp (should not happen)`);let d=fa(t.runId)??+t.createdAt,f=!!process.env.VERCEL_URL,p=Jt(f?`https://${process.env.VERCEL_URL}`:`http://localhost:${await ma()??3e3}`),{context:m,globalThis:h,updateTimestamp:g}=vs({seed:`${t.runId}:${t.workflowName}:${t.deploymentId}`,fixedTimestamp:d}),_=Wt(),v={type:`running`,interruption:_},y=e=>{switch(v.type){case`running`:{let{interruption:t}=v;v=Gt.is(e)?{type:`suspended`,suspension:e}:{type:`replay`},k.suspensionGeneration++,t.reject(e);return}case`suspended`:v={type:`replay`};return;case`replay`:case`completed`:return}},b=l(()=>h.Math.random()),x=0,S=()=>(x+=1,b(d)),C=Go(`useandom-26T198340PX75pxJACKVERYMINDBUSHWOLF_GQZbfghjklqvwyzrict`,21,e=>new Uint8Array(e).map(()=>256*h.Math.random())),w={current:Promise.resolve()},T={current:()=>!0},E=d,D=e=>{e>E&&(E=e,g(e))},O=new on(n,{onUnconsumedEvent:e=>{y(new Ht(`Replay could not consume event: eventType=${e.eventType}, correlationId=${e.correlationId}, eventId=${e.eventId}. ${Yo(e,k.invocationsQueue,O)}`,{eventId:e.eventId}))},onDuplicateEvent:(e,n)=>{let r={workflowRunId:t.runId,eventId:e.eventId,eventType:e.eventType,firstEventType:n,correlationId:e.correlationId};if(n!==e.eventType){W.debug(`Ignoring inert event that decides an already-decided outcome differently`,r);return}W.debug(`Ignoring inert event that repeats a class already in the event log`,r)},getPromiseQueue:()=>w.current,isDeliveryIdle:()=>T.current()}),k={runId:t.runId,encryptionKey:r,worldCapabilities:s,globalThis:h,onWorkflowError:y,eventsConsumer:O,generateUlid:S,generateNanoid:C,get mintCount(){return x},invocationsQueue:new Map,get promiseQueue(){return w.current},set promiseQueue(e){w.current=e},pendingDeliveries:0,suspensionGeneration:0,pendingDeliveryBarriers:new Map,advanceClock:D,replayPayloadCache:i};T.current=()=>kn(k);let A=!1;k.eventsConsumer.subscribe(e=>e?e.eventType===`run_created`?Q.Consumed:e.eventType===`run_started`?A?Q.NotConsumed:(A=!0,Q.Consumed):e.eventType===`attr_set`&&e.eventData.writer.type===`step`?Q.Consumed:Q.NotConsumed:Q.NotConsumed);let j=Xo(k),M=ws(k),N=Ts(k),P=Ss(k);h[gn]=j,h[xn]=P,h[hn]=M,h[_n]=N,h[wn]=e=>sn(t.runId,e);let ee={workflowName:t.workflowName,workflowRunId:t.runId,workflowStartedAt:new h.Date(+u),url:p,features:{encryption:!!r}};h[or]=ee,h[Sn]=S,h.fetch=()=>{throw new h.Error(`Global "fetch" is unavailable in workflow functions. Use the "fetch" step function from "workflow" to make HTTP requests.\n\nLearn more: https://workflow-sdk.dev/err/${Rt.FETCH_IN_WORKFLOW_FUNCTION}`)};let F=`Timeout functions like "setTimeout" and "setInterval" are not supported in workflow functions. Use the "sleep" function from "workflow" for time-based delays.`;h.setTimeout=()=>{throw new K(F,{slug:Rt.TIMEOUT_FUNCTIONS_IN_WORKFLOW})},h.setInterval=()=>{throw new K(F,{slug:Rt.TIMEOUT_FUNCTIONS_IN_WORKFLOW})},h.clearTimeout=()=>{throw new K(F,{slug:Rt.TIMEOUT_FUNCTIONS_IN_WORKFLOW})},h.clearInterval=()=>{throw new K(F,{slug:Rt.TIMEOUT_FUNCTIONS_IN_WORKFLOW})},h.setImmediate=()=>{throw new K(F,{slug:Rt.TIMEOUT_FUNCTIONS_IN_WORKFLOW})},h.clearImmediate=()=>{throw new K(F,{slug:Rt.TIMEOUT_FUNCTIONS_IN_WORKFLOW})},h.AbortController=En(k);let I=rn();h.AbortSignal={abort:I.abort,any:I.any,timeout:I.timeout};class L{cache;credentials;destination;headers;integrity;method;mode;redirect;referrer;referrerPolicy;url;keepalive;signal;duplex;body;constructor(e,t){if(typeof e==`string`||e instanceof h.URL){let t=String(e);try{new h.URL(t),this.url=t}catch(e){throw TypeError(`Failed to parse URL from ${t}`,{cause:e})}}else{if(this.url=e.url,!t){this.method=e.method,this.headers=new h.Headers(e.headers),this.body=e.body,this.mode=e.mode,this.credentials=e.credentials,this.cache=e.cache,this.redirect=e.redirect,this.referrer=e.referrer,this.referrerPolicy=e.referrerPolicy,this.integrity=e.integrity,this.keepalive=e.keepalive,this.signal=e.signal,this.duplex=e.duplex,this.destination=e.destination;return}this.method=e.method,this.headers=new h.Headers(e.headers),this.body=e.body,this.mode=e.mode,this.credentials=e.credentials,this.cache=e.cache,this.redirect=e.redirect,this.referrer=e.referrer,this.referrerPolicy=e.referrerPolicy,this.integrity=e.integrity,this.keepalive=e.keepalive,this.signal=e.signal,this.duplex=e.duplex,this.destination=e.destination}t?.method?this.method=t.method.toUpperCase():typeof this.method!=`string`&&(this.method=`GET`),t?.headers?this.headers=new h.Headers(t.headers):(typeof e==`string`||e instanceof h.URL)&&(this.headers=new h.Headers),t?.mode===void 0?typeof this.mode!=`string`&&(this.mode=`cors`):this.mode=t.mode,t?.credentials===void 0?typeof this.credentials!=`string`&&(this.credentials=`same-origin`):this.credentials=t.credentials,t?.cache===void 0?typeof this.cache!=`string`&&(this.cache=`default`):this.cache=t.cache,t?.redirect===void 0?typeof this.redirect!=`string`&&(this.redirect=`follow`):this.redirect=t.redirect,t?.referrer===void 0?typeof this.referrer!=`string`&&(this.referrer=`about:client`):this.referrer=t.referrer,t?.referrerPolicy===void 0?typeof this.referrerPolicy!=`string`&&(this.referrerPolicy=``):this.referrerPolicy=t.referrerPolicy,t?.integrity===void 0?typeof this.integrity!=`string`&&(this.integrity=``):this.integrity=t.integrity,t?.keepalive===void 0?typeof this.keepalive!=`boolean`&&(this.keepalive=!1):this.keepalive=t.keepalive,t?.signal===void 0?this.signal||={aborted:!1}:this.signal=t.signal,this.duplex||=`half`,this.destination||=`document`;let n=t?.body;if(n!=null&&(this.method===`GET`||this.method===`HEAD`))throw TypeError(`Request with GET/HEAD method cannot have body.`);this.body=n==null?null:Object.create(h.ReadableStream.prototype,{[dn]:{value:n,writable:!1}})}clone(){Z()}get bodyUsed(){return!1}blob;formData;arrayBuffer;json;text;async bytes(){return new Uint8Array(await this.arrayBuffer())}}h.Request=L,Object.defineProperties(L.prototype,{arrayBuffer:{value:j(`__builtin_response_array_buffer`),writable:!0,configurable:!0},json:{value:j(`__builtin_response_json`),writable:!0,configurable:!0},text:{value:j(`__builtin_response_text`),writable:!0,configurable:!0}});class R{type;url;status;statusText;body;headers;redirected;constructor(e,t){if(this.status=t?.status??200,this.statusText=t?.statusText??``,this.headers=new h.Headers(t?.headers),this.type=`default`,this.url=``,this.redirected=!1,e!=null&&(this.status===204||this.status===205||this.status===304))throw TypeError(`Response constructor: Invalid response status code ${this.status}`);this.body=e==null?null:Object.create(h.ReadableStream.prototype,{[dn]:{value:e,writable:!1}})}clone;blob;formData;get ok(){return this.status>=200&&this.status<300}get bodyUsed(){return!1}arrayBuffer;json;text;async bytes(){return new Uint8Array(await this.arrayBuffer())}static json(e,t){let n=JSON.stringify(e),r=new h.Headers(t?.headers);return r.has(`content-type`)||r.set(`content-type`,`application/json`),new R(n,{...t,headers:r})}static error(){Z()}static redirect(e,t=302){if(![301,302,303,307,308].includes(t))throw RangeError(`Invalid redirect status code: ${t}. Must be one of: 301, 302, 303, 307, 308`);let n=new h.Headers;n.set(`Location`,String(e));let r=Object.create(R.prototype);return r.status=t,r.statusText=``,r.headers=n,r.body=null,r.type=`default`,r.url=``,r.redirected=!1,r}}h.Response=R,Object.defineProperties(R.prototype,{arrayBuffer:{value:j(`__builtin_response_array_buffer`),writable:!0,configurable:!0},json:{value:j(`__builtin_response_json`),writable:!0,configurable:!0},text:{value:j(`__builtin_response_text`),writable:!0,configurable:!0}});class z{constructor(){Z()}get locked(){return!1}cancel(){Z()}getReader(){Z()}pipeThrough(){Z()}pipeTo(){Z()}tee(){Z()}values(){Z()}static from(){Z()}[Symbol.asyncIterator](){Z()}}h.ReadableStream=z;class te{constructor(){Z()}get locked(){return!1}abort(){Z()}close(){Z()}getWriter(){Z()}}h.WritableStream=te;class ne{readable;writable;constructor(){Z()}}h.TransformStream=ne,h.console=globalThis.console;let re=Symbol.for(`@vercel/request-context`);h[re]=globalThis[re],c();let{bundleScript:ie,workflowLookupScript:B}=a??await Ds(e,t.workflowName),ae=await G(`workflow.bundle.evaluate`,async()=>(ie.runInContext(m),B.runInContext(m)));if(typeof ae!=`function`)throw new At(t.workflowName);let oe=[];k.promiseQueue=k.promiseQueue.then(async()=>{oe=await G(`workflow.input.hydrate`,async()=>{let e=await i.prepareWorkflowInput(t);return en(t.input,t.runId,r,h,{},e)})}),await k.promiseQueue;let se=async e=>{throw Gt.is(e)||Ht.is(e)?(v.type===`running`&&(v={type:`replay`}),e):(v={type:`completed`},await Es(t.runId,k.invocationsQueue,h,t,`failed`,o),e)},ce=async(e,n)=>{let i;try{i=await Promise.race([e,n.promise])}catch(e){return v.type===`suspended`&&e===v.suspension?{type:`suspended`,suspension:v.suspension,session:fe,parked:O.parkedSummary}:se(e)}v={type:`completed`};let a=O.strandedEvent;if(a)return se(new Ht(`Replay finished without consuming event: eventType=${a.eventType}, correlationId=${a.correlationId}, eventId=${a.eventId}. ${Yo(a,k.invocationsQueue,O)}`,{eventId:a.eventId}));try{let e=await Cn(i,t.runId,r,h,!1,(t.specVersion??0)>=5);return await Es(t.runId,k.invocationsQueue,h,t,`completed`,o),{type:`completed`,output:e,resultType:typeof i}}catch(e){return se(e)}},le=await Ee(),ue=await pt(`workflow.replay.execute`),de=le.run(async()=>ae(...oe)),fe={workflowRun:t,argumentCount:oe.length,async resume(e){switch(v.type){case`suspended`:{let t=O.events;if(!(e.length>t.length&&t.every((t,n)=>t.eventId===e[n].eventId)))return v={type:`replay`},{type:`replay`};let n=Wt();return v={type:`running`,interruption:n},k.suspensionGeneration++,le.refresh(),O.append(e.slice(t.length)),ce(de,n)}case`replay`:return{type:`replay`};case`completed`:case`running`:throw new K(`Cannot resume ${v.type} workflow "${t.runId}"`)}}},V=ce(de,_);return V.then(ue.end,ue.fail),{session:fe,execution:V}}function Ps(e){let t=ai();return t===void 0?e:e===void 0?t:Math.min(e,t)}function Fs({world:e,runInput:t,runId:n,runLogger:r}){let i=t?.environment;if(!i)return!1;let a=e.getEnvironment?.();return!a||a===i?!1:(r.error(`Refusing to run this workflow: it was created in the "${i}" environment but this deployment runs in "${a}". Executing it here would create a second copy of the same run id in both environments — one pending forever, one running — so the queue message is being discarded without executing and without retrying. The client that called start() wrote the run to its own environment but addressed the queue message to a deployment in another one. Check that the environment that client authenticates as (WORKFLOW_VERCEL_ENV for CLI and CI clients, or the OIDC token's environment inside a deployment) matches the environment of the deployment it targets. The run it created is still pending in "${i}" and will not run.`,{workflowRunId:n,creatorEnvironment:i,currentEnvironment:a,pinnedDeploymentId:t?.deploymentId}),!0)}async function Is({world:e,runInput:t,runId:n,runLogger:r}){let i=t?.deploymentId;if(!i)return;let a;try{a=await e.getDeploymentId()}catch{return}a&&a!==i&&r.error(`Queue message was delivered to a deployment it was not pinned to. The run was created targeting a different deployment, so this invocation may be replaying against code the run was not started on. Continuing — this is expected if the Workflow SDK version changed mid-run in local development, where the deployment id is derived from that version.`,{workflowRunId:n,pinnedDeploymentId:i,currentDeploymentId:a})}function Ls(e){return K.is(e)?q.RUNTIME_ERROR:Sr(e)?q.WORLD_CONTRACT_ERROR:null}function Rs(e){return!It.is(e)||e.status!==void 0&&e.status!==404?!1:/step/i.test(e.message)&&/not found/i.test(e.message)}async function zs({world:e,workflowRun:t,runId:n,workflowName:r,requestId:i,err:a,errorCode:o,logMessage:s}){W.error(s,{workflowRunId:n,errorCode:o,error:a instanceof Error?a.message:String(a)});let c,l;try{c=await Wn(e,t??n)(),l=await fn(a,n,c,globalThis,(t?.specVersion??0)>=5),await e.events.create(n,{eventType:`run_failed`,specVersion:8,eventData:{error:l,errorCode:o}},{requestId:i})}catch(e){if(X.is(e)||J.is(e))return;if(Sr(e)){W.error(`Fatal world contract error while recording workflow failure`,{workflowRunId:n,errorCode:q.WORLD_CONTRACT_ERROR,error:e instanceof Error?e.message:String(e)});return}throw e}Li(n,r,l,c,o)}function Bs(e,t){return e.find(e=>e.runId===t&&(e.eventType===`run_completed`||e.eventType===`run_failed`||e.eventType===`run_cancelled`))}function Vs(e,t){let n=Bs(e,t);return n?(W.debug(`Run reached terminal event, exiting`,{workflowRunId:t,eventType:n.eventType,eventId:n.eventId}),!0):!1}function Hs(e,t){let n=0;for(let r of e)t.has(r)||n++;return n}function Us({suspension:e,serializationBlockerCount:t,hookContinuation:n=!1,invocationContinuation:r=!1}){return li()?t>0?{retain:!1,reason:`serialization_executed_workflow_code`}:n?{retain:!0}:!r&&e.stepCount===0&&e.attributeCount===0?{retain:!1,reason:`no_replay_driver`}:{retain:!0}:{retain:!1,reason:`disabled`}}function Ws(e,t){return{serializationBlockerCount:t,serializationBlockers:e.map(({source:e,correlationId:t,kind:n,detail:r})=>({source:e,correlationId:t,kind:n,detail:r&&r.length>160?`${r.slice(0,160)}…`:r})),serializationBlockersTruncated:t>e.length}}function Gs(e){return e.cursor===null?{type:`loadAll`}:{type:`loadAfter`,events:e.events,cursor:e.cursor}}async function Ks(e,t){let n=process.env.WORKFLOW_V2_TIMEOUT_MS;if(n!==void 0&&n!==``){let e=Number(n);if(Number.isFinite(e)&&e>0)return e}let r=await e.getRuntimeDeadline?.();if(r!==void 0){let e=r.getTime();if(!Number.isNaN(e)){let n=Math.floor(e-t);if(n>=(0,Vr.default)(`25m`))return(0,Vr.default)(`10m`);if(n>=(0,Vr.default)(`10m`))return(0,Vr.default)(`5m`)}}return(0,Vr.default)(`2m`)}function qs(e,t){qt(t?.basePath);let n=s(t?.namespace),l=a(`workflow`,n),u=t=>t.createQueueHandler(l,ur(t)(async(a,s,u)=>{let d=Date.now(),f=Rn(a);if(f){await Kn(f,t.specVersion);return}let{runId:p,traceCarrier:m,requestedAt:_,stepId:v,stepName:y,replayDivergence:x,preconditionReinvocations:S,deploymentMismatchRetryCount:w,runInput:E,hookInput:D,stepInput:O,runContext:k,hookResumeTiming:A,waitContinuation:j}=o.parse(a),M=ca(A,v===void 0?`inline`:`dispatched`);M&&v===void 0&&(M.consumerStartedAtMs=d),M&&!Number.isFinite(M.consumerStartedAtMs)&&(M=void 0);let N=$e(m)?m:void 0,{requestId:P}=s,F=s.queueName.slice(l.length),I=W.forRun(p,F),L=Jr();if(s.attempt>L){let e=Wr(void 0,q.MAX_DELIVERIES_EXCEEDED);I.error(`Workflow handler exceeded max deliveries (${s.attempt}/${L})`,{attempt:s.attempt,errorCode:e.errorCode,errorAttribution:e.attribution});let t,n;try{let e=await ea(),r=Wn(e,p),i=new Y(`Workflow exceeded maximum queue deliveries (${s.attempt}/${L})`);t=await r(),n=await fn(i,p,t),await e.events.create(p,{eventType:`run_failed`,specVersion:8,eventData:{error:n,errorCode:q.MAX_DELIVERIES_EXCEEDED}},{requestId:P})}catch(e){if(X.is(e)||J.is(e))return;if(Tr(e))throw I.warn(`Transient error marking run as failed after max deliveries, retrying via queue redelivery`,{attempt:s.attempt,errorName:e instanceof Error?e.name:`UnknownError`,errorMessage:e instanceof Error?e.message:String(e)}),e;I.error(`Failed to mark run as failed after ${s.attempt} delivery attempts. A persistent error is preventing the run from being terminated. The run will remain in its current state until manually resolved. This is most likely due to a persistent outage of the workflow backend or a bug in the workflow runtime and should be reported to the Workflow team.`,{attempt:s.attempt,errorName:e instanceof Error?e.name:`UnknownError`,errorMessage:e instanceof Error?e.message:String(e),errorStack:e instanceof Error?e.stack:void 0});return}Li(p,F,n,t,q.MAX_DELIVERIES_EXCEEDED);return}let R=Ne(),z=()=>dt(R,N),te=await ot(R,N),ne=new ra,re=R===`continuous`?N:void 0,ie=await Oe(`CONSUMER`);return await Ce(re,async()=>await vt({workflowRunId:p,workflowName:F},async()=>{let t=await G(`workflow.route.get_world`,async()=>ea());if(!Fs({world:t,runInput:E,runId:p,runLogger:I}))return await Is({world:t,runInput:E,runId:p,runLogger:I}),G(`workflow.execute ${Ye(F)}`,{kind:ie,links:te},async a=>{a?.setAttributes({...Je(F),...it(`execute_v2`),...pe(`vercel-queue`),...oe(s.queueName),...Ct(s.messageId),...b(`process`),...Xn({requestedAt:_}),...Re(p),...gt(!!N),...C(R)});let o=Date.now(),l=await Ks(t,o),d=o+l+pi(),f=!1,m=0,L=new Set,te=x?new oa(x.count):oa.inert(),re,ie,B=await Ze(t=>{if(t&&!vr(t))return ie!==t.workflowName&&(ie=t.workflowName,re=Ds(e,t.workflowName),re.catch(()=>{})),re}),se=Kt(()=>{let e=tr(t,p);return e.catch(()=>{}),e}),ce,le=e=>{if(e&&!vr(e))return ce||=new Kr(se.value),ce},fe=e=>{e.eventType===`run_created`&&(le(e.eventData),B(e.eventData)),ce?.prepareEvent(e)},V=async(e,n)=>{let r=ve(e,n),i={...ge(),resolveData:Zn,...n},a=await te.withEventCreate(r===void 0?i:{...i,sinceCursor:r},n=>t.events.create(p,e,n));return r!==void 0&&be(r,a),a},he=(e,t)=>G(`workflow.replay.load`,async n=>{let r=0;n?.setAttributes({...Re(p),...De(e)});try{let e=await t(e=>{r++,fe(e)});return r=e.events?.length??r,e}finally{n?.setAttributes(ae(r))}}),ge=()=>H.type===`loadAll`?{}:Ln(H.events),ve=(e,t)=>{if(!(Ae||H.type!==`ready`||t?.sinceCursor!==void 0||t?.preloadEvents===!0||h(e.eventType)))return H.cursor??void 0},be=(e,t)=>{H.type===`ready`&&H.cursor===e&&t.events!==void 0&&t.hasMore!==!0&&Gn(H,{events:t.events,cursor:t.cursor})},H={type:`loadAll`},U,Se,Ce=-1,Te,Ee,Oe=0,ke,Ae=ci()&&E!==void 0&&s.attempt===1&&v===void 0&&!x;a?.setAttributes(de(Ae));let Me,Ne=async()=>{if(Me)try{await Me}catch{}},Pe=async e=>{let n=Ls(e);return n?(await zs({world:t,workflowRun:U,runId:p,workflowName:F,requestId:P,err:e,errorCode:n,logMessage:`Fatal runtime error during workflow setup`}),!0):!1},Fe=new Set,Ie=e=>{Fe.size>0&&W.error(`Invariant violation: acking the workflow message while owned inline steps are still executing — crash recovery for these steps is broken`,{workflowRunId:p,ackPath:e,stepIds:[...Fe]})},Le=async()=>({runId:p,traceCarrier:await z(),requestedAt:new Date}),ze=async(e,r)=>{if(Ie(`reinvoke`),!Ae)return{timeoutSeconds:e};await nr(t,Bn(F,n),{...await Le(),...r},e>0?{delaySeconds:e}:void 0)},Ve=0,Ue=null,Ge=e=>{let t=Ue;if(!t)return;Ue=null;let n=new Set(e.map(e=>e.eventId)),r=Hs(n,t.ids),i=Hs(t.ids,n),a=i>0?`shrank`:r>0?`grew`:`unchanged`;W.warn(`Restarted replay reloaded its event log after a stale-snapshot rejection`,{workflowRunId:p,outcome:a,added:r,dropped:i,eventsBefore:t.ids.size,eventsAfter:n.size,preconditionRestarts:t.restart,reason:t.reason,source:t.source,loopIteration:m})},Ke=(e,t,{allowDelta:n=!0}={})=>{if(Ve>=mi())return!1;Ve++,Qe=null;let r=n&&Ve===1?$n(t,p):null,i=r!==null&&H.type!==`loadAll`;return Ue=H.type===`loadAll`?null:{ids:new Set(H.events.map(e=>e.eventId)),restart:Ve,reason:e,source:i?`inline-delta`:`full-reload`},r&&H.type!==`loadAll`?(Gn(H,r),H={...H,type:`ready`}):(H={type:`loadAll`},ce?.resetScan()),W.warn(`Event creation rejected as stale; restarting replay in-process`,{workflowRunId:p,reason:e,loopIteration:m,preconditionRestarts:Ve,source:i?`inline-delta`:`full-reload`}),a?.setAttributes({"workflow.precondition_restarts":Ve}),!0},qe=async(e,t)=>{let n=(S??0)+1,r=hi();return n>r?{reinvoked:!1,error:new K(`Event creation was rejected as stale after ${r} re-invocations of ${mi()} in-process replay restarts each: this run cannot observe its own event log completely enough to make progress. Last rejection (${e}): ${t instanceof Error?t.message:String(t)}`,{cause:t})}:(W.warn(`Event creation rejected as stale after in-process restarts; re-invoking run for a fresh replay`,{workflowRunId:p,reason:e,loopIteration:m,preconditionReinvocations:n,maxReinvocations:r}),a?.setAttributes({"workflow.precondition_reinvocations":n}),{reinvoked:!0,result:await ze(gi(),{preconditionReinvocations:n})})},Ye=async(e,r,i)=>{let{outcome:o,spanAttributes:s}=await Bi({world:t,run:e,workflowName:F,requestId:P,retryCount:w,beforeStop:i,isDeploymentUnavailableError:t.isDeploymentUnavailableError,reenqueue:async({deploymentId:e,specVersion:i,deploymentMismatchRetryCount:a,delaySeconds:o})=>{await nr(t,Bn(F,n),{...await r(),deploymentMismatchRetryCount:a},{deploymentId:e,specVersion:i,delaySeconds:o})}});return s&&a?.setAttributes(s),o};if(v&&y)try{let e=async()=>{if(!O)return`ok`;try{await t.events.create(p,{eventType:`step_created`,specVersion:8,correlationId:v,eventData:{stepName:y,workflowName:F,input:O.input}},{requestId:P,viaStepDispatch:!0}),a?.setAttributes(T(!0)),W.warn(`Materialized step_created from the queue message — the producer’s direct write did not land`,{workflowRunId:p,stepId:v,stepName:y})}catch(e){if(X.is(e))return`ok`;if(J.is(e))return`gone`;throw e}return`ok`},r,o;if(a?.setAttributes(mt(k?`run_context`:`runs_get`)),k){if((O&&s.attempt>1?await e():`ok`)===`gone`){W.debug(`Run already finished, skipping background step`,{workflowRunId:p});return}o=k}else{let[n,i]=await Promise.all([t.runs.get(p,{resolveData:`none`}),O&&s.attempt>1?e():`ok`]);if(i===`gone`){W.debug(`Run already finished, skipping background step`,{workflowRunId:p});return}if(n.status!==`running`){W.debug(`Run already finished, skipping background step`,{workflowRunId:p,status:n.status});return}r=n,o={deploymentId:n.deploymentId,specVersion:n.specVersion??0,...n.startedAt?{startedAt:+n.startedAt}:{},rootRunId:In(n.attributes,p)}}if(await Ye({runId:p,deploymentId:o.deploymentId,specVersion:o.specVersion},async()=>({...await Le(),stepId:v,stepName:y,...O?{stepInput:O}:{},...k?{runContext:k}:{},...A?{hookResumeTiming:A}:{}}))!==`continue`)return;let l=o.startedAt??Date.now(),u=s.attempt,d=On(y)?.maxRetries??3;s.attempt>d+1&&(u=yi((await Jn(p)).events,v,{type:`totalAttempts`})+1);let f=M;M=void 0,ne.pause();let m;try{let n=()=>Ta({world:t,workflowRunId:p,workflowDeploymentId:o.deploymentId,workflowName:F,workflowStartedAt:l,rootRunId:o.rootRunId??p,requestId:P,stepId:v,stepName:y,runSpecVersion:o.specVersion,authoritativeAttempt:u,...f?{resumeTracking:f}:{}});m=await ja(p,v,async()=>{try{return await n()}catch(t){if(!O||!Rs(t))throw t;return await e()===`gone`?{type:`gone`}:await n()}})}finally{ne.resume()}if(m.type===`retry`||m.type===`throttled`)return{timeoutSeconds:m.timeoutSeconds};if(t.capabilities?.invoke&&m.type!==`gone`){await nr(t,Bn(F,n),{runId:p,traceCarrier:await z(),requestedAt:new Date});return}if(m.type===`completed`&&m.hasPendingOps){await nr(t,Bn(F,n),{runId:p,traceCarrier:await z(),requestedAt:new Date});return}if(m.type===`completed`||m.type===`failed`||m.type===`skipped`){let e=await Jn(p);H=Gs(e);let n=new Set,a=new Set;for(let t of e.events)t.eventType===`step_created`?n.add(t.correlationId):(t.eventType===`step_completed`||t.eventType===`step_failed`)&&a.add(t.correlationId);let o=new Set;for(let e of n)a.has(e)||o.add(e);if(o.size>0){if(ui()&&ka(e.events,o,s.messageId))W.debug(`Background step done; falling through to recover an inline step owned by this message`,{workflowRunId:p});else{W.debug(`Background step done but other steps pending, returning`,{workflowRunId:p});return}}W.debug(`All parallel steps done, replaying inline after background step`,{workflowRunId:p});let u=r??await t.runs.get(p,{resolveData:`none`});if(i(u.status)){W.debug(`Run already finished, skipping inline replay after background step`,{workflowRunId:p,status:u.status});return}B(u);let d=e.events.find(e=>e.eventType===`run_created`),f;if(d)f=d.eventData.input;else{if(!c(u.specVersion))throw new K(`Workflow run "${p}" has no "run_created" event`);let e=await t.runs.get(p,{resolveData:`all`});if(e.status!==`running`)return;f=e.input}U={...u,input:f,status:`running`,output:void 0,error:void 0,completedAt:void 0},Ce=l}else return}catch(e){let n=Ls(e);if(!n)throw e;await zs({world:t,workflowRun:U,runId:p,workflowName:F,requestId:P,err:e,errorCode:n,logMessage:`Fatal error while preparing background workflow step`});return}if(!U&&D?.deploymentId!==void 0&&t.capabilities?.deploymentAffinity===!0){let e=D.deploymentId,n;try{n=await t.getDeploymentId()}catch{n=void 0}if(n!==void 0&&n!==e&&await Ye(await t.runs.get(p,{resolveData:`none`}),async()=>({...await Le(),hookInput:D,...A?{hookResumeTiming:A}:{}}),Ne)!==`continue`)return}let Xe=!1;if(!U&&D&&D.resumeId!==void 0&&D.payloadDigest!==void 0){let e=D,t;try{t=new Date(g(e.resumeId))}catch{t=void 0}try{a?.addEvent(`workflow.hook_received.create.start`,{"workflow.hook_received.preload_events":!0});let n=await he(`hook_preload`,n=>V({eventType:`hook_received`,specVersion:8,correlationId:e.hookId,eventData:{token:e.token,payload:e.payload}},{requestId:P,occurredAt:t,resumeId:e.resumeId,resumePayloadDigest:e.payloadDigest,preloadEvents:!0,replayEventObserver:n}));if(Xe=!0,n.run!==void 0&&n.run.startedAt!==void 0&&n.event!==void 0&&n.events!==void 0&&n.events.length>0&&n.cursor!=null&&n.hasMore===!1&&typeof n.maxEvents==`number`&&n.events.some(e=>e.eventType===`run_created`)&&n.events.some(e=>e.eventType===`run_started`)&&n.events.some(t=>t.eventType===`hook_received`&&t.resumeId===e.resumeId)&&n.run?.startedAt&&n.events){let e=n.events.find(e=>e.runId===p&&(e.eventType===`run_completed`||e.eventType===`run_failed`||e.eventType===`run_cancelled`));if(e){a?.setAttributes({...xt(e.eventType===`run_completed`?`completed`:e.eventType===`run_failed`?`failed`:`cancelled`),...He(`hook_received_stream`)}),W.info(`Run already finished during lazy hook setup, skipping`,{workflowRunId:p,eventType:e.eventType});return}U=n.run,B(U),Se=Ps(n.maxEvents),Ee=Date.now(),M&&(M.setupSource=`hook_preload`),H={type:`ready`,events:n.events,cursor:n.cursor},Ce=+n.run.startedAt,a?.setAttributes({...xt(n.run.status),...we(Ce),...He(`hook_received_stream`)})}else a?.setAttributes(He(`hook_received_fallback`))}catch(e){if(Bt.is(e)||J.is(e)){W.info(`Run already finished during lazy hook setup, skipping`,{workflowRunId:p,message:e.message});return}if(await Pe(e))return;throw e}}if(!U){let e={eventType:`run_started`,specVersion:E?.specVersion??8,...E?{eventData:{input:E.input,deploymentId:E.deploymentId,workflowName:E.workflowName,executionContext:E.executionContext,attributes:E.attributes,allowReservedAttributes:E.allowReservedAttributes}}:{}};if(Ae&&E){a?.addEvent(`workflow.run_started.create.start`,{"workflow.run_started.skip_preload":!0});let t=V(e,{requestId:P,skipPreload:!0});Me=t;try{B(E),le(E)}catch(e){if(await Ne(),!await Pe(e))throw e;return}t.then(e=>{let t=Ps(e.maxEvents);t!==void 0&&(Se=t)}).catch(()=>{}),H={type:`ready`,events:[],cursor:null};let n=new Date;U={runId:p,status:`running`,deploymentId:E.deploymentId,workflowName:E.workflowName,specVersion:E.specVersion,executionContext:E.executionContext,input:E.input,attributes:E.attributes??{},startedAt:n,createdAt:n,updatedAt:n},Ce=+n,Ee=+n,a?.setAttributes({...xt(`running`),...we(Ce)})}else try{a?.addEvent(`workflow.run_started.create.start`,{"workflow.run_started.skip_preload":!1});let t=he(`run_started`,t=>V(e,{requestId:P,replayEventObserver:t}));try{B(E),le(E)}catch(e){try{await t}catch{}throw e}let n=await t;if(U=n.run,Se=Ps(n.maxEvents),Ee=Date.now(),M&&(M.setupSource=`run_started`),n.events?.length){let e={events:[...n.events],cursor:n.cursor??null};H=n.hasMore?Gs(e):{...e,type:`ready`}}if(Ce=+n.run.startedAt,a?.setAttributes({...xt(n.run.status),...we(Ce)}),n.run.status!==`running`){W.info(`Workflow already completed or failed, skipping`,{workflowRunId:p,status:n.run.status});return}B(U)}catch(e){if(X.is(e)||J.is(e)){W.info(`Run already finished during setup, skipping`,{workflowRunId:p,message:e.message});return}if(!await Pe(e))throw e;return}}if(Pr(U,`Workflow run must be loaded before replay`),M&&M.setupSource===void 0&&(M.setupSource=`event_load`),await Ye(U,async()=>({...await Le(),...D?{hookInput:D}:{},...A?{hookResumeTiming:A}:{}}),Ne)!==`continue`)return;if(D&&!Xe&&!(D.resumeId!==void 0&&H.type!==`loadAll`&&H.events.some(e=>e.eventType===`hook_received`&&e.resumeId===D.resumeId))){let e;try{e=D.resumeId===void 0?void 0:new Date(g(D.resumeId))}catch{e=void 0}let n;try{let r=await t.events.create(p,{eventType:`hook_received`,specVersion:8,correlationId:D.hookId,eventData:{token:D.token,payload:D.payload}},{requestId:P,occurredAt:e,resumeId:D.resumeId,resumePayloadDigest:D.payloadDigest});a?.setAttributes(We(!0));let i=r.event;n=i?{...i,eventData:{token:D.token,payload:D.payload}}:void 0}catch(e){if(Bt.is(e)||J.is(e))return;throw e}H.type!==`loadAll`&&n?(Vn(H.events,n),fe(n)):H={type:`loadAll`}}let Qe=null,$e=new Set,et=new Set;for(;;){let i=u?.revision??0;if(m++,ne.isExhausted()){await aa({runId:p,workflowName:F,requestId:P,attempt:s.attempt,limitMs:ne.configuredLimitMs,slotSnapshot:ge()});return}if(Date.now()-o>=l){W.info(`V2 timeout reached, re-scheduling workflow`,{workflowRunId:p,loopIteration:m,elapsedMs:Date.now()-o}),await nr(t,Bn(F,n),{runId:p,traceCarrier:await z(),requestedAt:new Date});return}let c=0,h=!1;try{if(vr(U)){W.debug(`Using QuickJS VM engine`,{workflowRunId:p,loopIteration:m}),await Ne(),H.type===`loadAfter`&&(Gn(H,await Jn(p,H.cursor)),H={...H,type:`ready`});let{runWorkflowWithQuickJS:t}=await import(`../../_chunks/workflow/_eve-core-quickjs-entrypoint-stub-qIV0OaFz.js`),r=await t({workflowCode:e,workflowName:F,workflowRun:U,preloadedEvents:H.type===`ready`?H.events:void 0,preloadedEventsComplete:H.type===`ready`,preloadedCursor:H.type===`ready`?H.cursor:void 0,runInput:E,parentSpan:a,maxEventsLimit:Se,namespace:n,nextTraceCarrier:z,waitContinuation:j,deliveryAttempt:s.attempt,ownerMessageId:s.messageId,requestId:P});return r?.timeoutSeconds===void 0?void 0:await ze(r.timeoutSeconds)}if(H.type!==`ready`){f=!1;let e=await Jn(p,H.type===`loadAfter`?H.cursor:void 0);H.type===`loadAfter`?(Gn(H,e),H={...H,type:`ready`}):H={...e,type:`ready`}}if(Pr(H.type===`ready`),Ge(H.events),Vs(H.events,p))return;let i=Date.now(),o=new Set(H.events.filter(e=>e.eventType===`wait_completed`).map(e=>e.correlationId)),l=H.events.filter(e=>e.eventType===`wait_created`&&e.correlationId!==void 0&&!o.has(e.correlationId)&&i>=e.eventData.resumeAt.getTime()).map(e=>({eventType:`wait_completed`,specVersion:8,correlationId:e.correlationId,eventData:{resumeAt:e.eventData.resumeAt}}));for(let e of l)try{let t=await V(e,{requestId:P});Yn(H.events,t)}catch(t){if(X.is(t)){W.info(`Wait already completed, skipping`,{workflowRunId:p,correlationId:e.correlationId});continue}throw t}Pr(H.type===`ready`);let u=new Set(H.events.filter(e=>e.eventType===`wait_completed`).map(e=>e.correlationId)),d=l.filter(e=>!u.has(e.correlationId));if(d.length>0){if(f=!1,H.cursor){let e=await Jn(p,H.cursor),t=new Set(e.events.filter(e=>e.eventType===`wait_completed`).map(e=>e.correlationId));d.every(e=>t.has(e.correlationId))?Gn(H,e):H={...await Jn(p),type:`ready`}}else H={...await Jn(p),type:`ready`}}if(Hn()){let e=await er(p,{events:H.events,cursor:H.cursor});if(H={...e.log,type:`ready`},e.gap!==void 0)throw new Vt(`Event log for run ${p} has a hole at slot ${e.gap.firstMissingSlot}: ${e.gap.missingCount} of the ${e.gap.maxSlot} slots up to the log's maximum hold no event.`)}if(Vs(H.events,p))return;if(Se!==void 0){let e=H.events.reduce((e,t)=>r(t)?e:e+1,0);if(e>=Se)throw new Nt(e,Se)}Te??=H.events.every(e=>e.eventType===`run_created`||e.eventType===`run_started`||e.eventType===`attr_set`||r(e)),W.debug(`Starting workflow execution`,{workflowRunId:p,loopIteration:m,eventCount:H.events.length,executionMode:Qe?`retained`:`replay`}),c=Date.now(),M&&(M.replayStartedAtMs??=c);let g=le(U);Pr(g,`Node workflow replay requires payload preparation`);let _=g.prewarm(U,H.events),v=Qe?await ks(Qe,H.events):{type:`replay`};if(h=Qe!==null&&v.type!==`replay`,v.type===`replay`){Qe=null;let n=B(U);Pr(n,`Node workflow replay requires compiled scripts`),v=await Os({workflowCode:e,workflowRun:U,events:H.events,encryptionKey:await se.value,replayPayloadCache:g,compiledWorkflowScripts:await n,runReadyBarrier:Me,worldCapabilities:t.capabilities})}if(await _,v.type===`suspended`)throw Qe=v.session,v.suspension;let y=v.output;W.debug(`Workflow execution completed`,{workflowRunId:p,loopIteration:m,replayMs:Date.now()-c,executionMode:Qe?`retained`:`replay`}),te.activate();try{await Ne(),await V({eventType:`run_completed`,specVersion:8,eventData:{output:y}},{requestId:P})}catch(e){if(X.is(e)||J.is(e)){W.info(`Tried completing workflow run, but run has already finished.`,{workflowRunId:p,message:e.message});return}throw e}Fi(p,F),a?.setAttributes({...xt(`completed`)});return}catch(r){if(Gt.is(r)){te.activate();let e=Date.now(),g=e-c;M&&r.stepCount>0&&(M.nextStepEncounteredAtMs??=e),W.debug(`Workflow suspended`,{workflowRunId:p,loopIteration:m,replayMs:g,steps:r.stepCount,hooks:r.hookCount,waits:r.waitCount});let _=Zt(r.stepCount,r.hookCount,r.waitCount);_&&W.debug(_);let v=Date.now();Pr(H.type===`ready`,`Workflow suspended before its event log was loaded`);let y;try{y=await Na({suspension:r,world:t,run:U,span:a,requestId:P,eventLog:H,runReadyBarrier:Me,replayRecoveryReporter:te,forceClaimVictimWakes:L,stepDispatch:{queueName:Bn(F,n),getTraceCarrier:z},ownerMessageId:s.messageId,allowDeferredBatchWork:!0})}catch(e){if(Lt.is(e)){if(Ke(`suspension-create`,e))continue;let t=await qe(`suspension-create`,e);if(t.reinvoked)return t.result;throw t.error}if(!Y.is(e))throw e;let t=yr(e);W.error(`Non-retryable error while committing workflow suspension; failing run`,{workflowRunId:p,errorCode:t,errorName:e.name,errorMessage:e.message});let n,r;try{await Ne(),n=await se.value,r=await fn(e,p,n,globalThis,(U?.specVersion??0)>=5),await V({eventType:`run_failed`,specVersion:8,eventData:{error:r,errorCode:t}},{requestId:P})}catch(e){if(X.is(e)||J.is(e)){W.info(`Tried failing workflow run, but run has already finished.`,{workflowRunId:p,message:e.message});return}throw e}Li(p,F,r,n,t),a?.setAttributes({...xt(`failed`),...ye(t),...xe(e.name),..._e(e.message),...ue(e.name)});return}let b=Kt(()=>(Pr(H.type===`ready`),Vi(H.events))),x=Qe?Us({suspension:r,serializationBlockerCount:y.serializationBlockerCount,hookContinuation:y.hasAwaitedHookCreation||y.hasHookConflict,invocationContinuation:u!==void 0}):void 0;x?.retain===!1&&(Qe=null),y.hasAttributeEvents&&ke===void 0&&(ke=Oe),Oe+=y.hookCreationMs,W.debug(`Suspension handled`,{workflowRunId:p,suspensionMs:Date.now()-v,pendingSteps:y.pendingSteps.length,timeoutSeconds:y.waitTimeout?.seconds,hasHookConflict:y.hasHookConflict,hasAwaitedHookCreation:y.hasAwaitedHookCreation,hasAttributeEvents:y.hasAttributeEvents,...x?{workflowVmRetention:x.retain?`retained`:`replay`}:{},...x?.retain===!1?{workflowVmRetentionReason:x.reason}:{},...y.serializationBlockerCount>0?Ws(y.serializationBlockers,y.serializationBlockerCount):{}});let S=(e,t)=>{if(!Qe)return!1;let n=e.filter(e=>!$e.has(e));if(n.length===0)return!1;for(let e of n)$e.add(e);let r=y.eventLogCarriedForward&&!b.value.openWait;return r||(Pr(H.type===`ready`),H=Gs(H)),W.debug(`Continuing over a hook write in-process`,{workflowRunId:p,loopIteration:m,settles:t,hookIds:n,carriedForward:y.eventLogCarriedForward,readBeforeResume:!r}),a?.setAttributes({"workflow.hook_write_continuations":$e.size}),!0};if(y.hasHookConflict){if(await y.deferredBatchWork,S(y.hookConflictCorrelationIds,`hook_conflict`))continue;if([...y.inlineClaims.values()].some(e=>e.owned)){H=Gs(H);continue}return await ze(0)}if(y.hasAttributeEvents){H=Gs(H);continue}if(y.failedStepCorrelationIds.size>0){await y.deferredBatchWork,Qe=null,H=Gs(H);continue}let C=y.pendingSteps;if(f&&y.waitTimeout!==void 0&&C.length===0&&!y.hasAwaitedHookCreation&&b.value.openWait){W.debug(`Re-reading the event log before parking on a wait over an inline delta`,{workflowRunId:p,loopIteration:m,waitCorrelationId:y.waitTimeout.correlationId}),a?.setAttributes({"workflow.wait_park_reread":!0}),H=Gs(H);continue}let w=y.lazyInlineSteps,T=new Set(w.map(e=>e.correlationId)),E=await z(),D=[],O=ui(),k=Date.now(),A=[],N=0,I=0;for(let e of y.queuedStepCorrelationIds)et.add(e);let R=M!==void 0&&w.length===0&&!C.some(e=>!T.has(e.correlationId)&&O&&Ea(e)&&e.ownerMessageId===s.messageId);for(let e of C){if(T.has(e.correlationId)||y.queuedStepCorrelationIds.has(e.correlationId))continue;let r=O&&Ea(e);if(r&&e.ownerMessageId===s.messageId){A.push(e);continue}let i=r?Da(e,k):0;if(i>0){N++,W.debug(`Pending step is inline-owned by a live invocation; ensuring delayed backstop wake instead of immediate requeue`,{workflowRunId:p,stepId:e.correlationId,ownerMessageId:e.ownerMessageId,backstopDelaySeconds:i}),D.push(nr(t,Bn(F,n),{runId:p,traceCarrier:E,requestedAt:new Date},{delaySeconds:i,idempotencyKey:Oa(e)}));continue}if(et.has(e.correlationId)&&e.sawRetrying!==!0){I++;continue}et.add(e.correlationId);let a=R?la(M):void 0;a&&(R=!1,M=void 0),D.push(nr(t,Bn(F,n),{runId:p,stepId:e.correlationId,stepName:e.stepName,traceCarrier:E,requestedAt:new Date,runContext:Mn(U),...a?{hookResumeTiming:a}:{}},{idempotencyKey:Pn(e.correlationId,e.stepName)}))}if(y.waitTimeout){let e=j?.correlationId===y.waitTimeout.correlationId?j.attempt+1:0;D.push(nr(t,Bn(F,n),{runId:p,traceCarrier:E,requestedAt:new Date,waitContinuation:{correlationId:y.waitTimeout.correlationId,attempt:e}},La(y.waitTimeout.seconds,y.waitTimeout.correlationId,Date.now(),e)))}let re=Promise.all(D);re.catch(()=>{});let ie=[...w.map(e=>{let t=y.inlineClaims.get(e.correlationId);return t?{correlationId:e.correlationId,stepName:e.stepName,preclaimedStart:t}:{correlationId:e.correlationId,stepName:e.stepName,lazyStepInput:e.dehydratedInput}}),...A.map(e=>({correlationId:e.correlationId,stepName:e.stepName}))];if((N>0||A.length>0||I>0)&&a?.setAttributes({...A.length>0?Be(A.length):{},...N>0?me(N):{},...I>0?ee(I):{}}),I>0&&W.debug(`Skipped re-publishing step messages this invocation already published on an earlier replay pass`,{workflowRunId:p,loopIteration:m,republishesSkipped:I}),A.length>0&&W.warn(`Re-executing inline steps owned by this queue message — a previous delivery crashed mid-body and this redelivery is recovering them`,{workflowRunId:p,stepIds:A.map(e=>e.correlationId)}),ie.length===0){if(await Promise.all([re,y.deferredBatchWork]),y.hasAwaitedHookCreation){if(S(y.awaitedHookCorrelationIds,`hook_created`))continue;return await ze(0)}if(u&&Date.now()-o<l&&await u.waitForActivity(i)){H=Gs(H);continue}return}let B=b.value,ae=Ui(B,d)||y.waitTimeout!==void 0&&!(y.waitTimeout.resumeAtMs>d),oe=typeof H.cursor==`string`&&r.stepCount===1&&C.length===1&&w.length===1&&A.length===0&&!ae;oe&&(B.openWait||y.waitTimeout!==void 0)&&a?.setAttributes({"workflow.inline_delta_over_pending_wait":!0});let ce=B.openHook||r.hookCount>0||y.hasHookEvents,le=Ae&&!y.hasAttributeEvents&&!y.waitTimeout&&!y.hasHookEvents&&!y.hasAwaitedHookCreation&&!B.openHook&&!B.openWait,de=ga({events:H.events,invocationStartedClean:Te===!0,runCreatedAtMs:fa(p)??(Ae?void 0:+U.createdAt),runStartedReceivedAtMs:Ee,replayMs:g,preStepBlockingMs:Oe,preStepBlockingBeforeAttrMs:ke,suspensionHasWaits:r.waitCount>0||y.waitTimeout!==void 0,suspensionCreatedHooks:r.hookCount>0||y.hasHookEvents,turbo:Ae,retained:h}),fe=M;M=void 0,ne.pause();let pe,he=ie.map((e,n)=>{let r=()=>(Pr(H.type===`ready`),Ta({world:t,workflowRunId:p,workflowDeploymentId:U.deploymentId,workflowName:F,workflowStartedAt:Ce,requestId:P,rootRunId:In(U.attributes,p),stepId:e.correlationId,stepName:e.stepName,runSpecVersion:U.specVersion,authoritativeAttempt:e.lazyStepInput!==void 0||e.preclaimedStart!==void 0?1:yi(H.events,e.correlationId,{type:`ownedBy`,messageId:s.messageId})+1,lazyStepInput:e.lazyStepInput,preclaimedStart:e.preclaimedStart,ownerMessageId:s.messageId,forceOptimisticStart:le,suppressOptimisticStart:ce,runReadyBarrier:Me,...n===0&&(e.lazyStepInput!==void 0||e.preclaimedStart!==void 0)&&de?{latencyTracking:de}:{},...fe?{resumeTracking:fe}:{},...oe&&H.cursor?{inlineDeltaSinceCursor:H.cursor}:{},replayRecoveryReporter:te}));Fe.add(e.correlationId);let i=e.lazyStepInput!==void 0||e.preclaimedStart!==void 0;return(e.preclaimedStart?.owned===!1?r():ja(p,e.correlationId,r,i?`debug`:`warn`)).finally(()=>Fe.delete(e.correlationId))});for(let e of he)e.catch(()=>{});try{try{await Promise.all([re,y.deferredBatchWork])}catch(e){throw await Promise.allSettled(he),e}pe=await Promise.all(he)}catch(e){if(Lt.is(e)){if(Ke(`inline-claim`,e,{allowDelta:!(await Promise.allSettled(he)).some(e=>e.status===`fulfilled`&&(e.value.type===`completed`||e.value.type===`failed`||e.value.type===`retry`))}))continue;let t=await qe(`inline-claim`,e);if(t.reinvoked)return t.result;throw t.error}throw e}finally{ne.resume()}let ge=[],ve=!1,be;for(let e=0;e<ie.length;e++){let t=pe[e],n=ie[e];t.type===`retry`?ge.push({step:n,delaySeconds:t.timeoutSeconds}):t.type===`throttled`?be=Math.max(be??0,t.timeoutSeconds):t.type===`completed`&&t.hasPendingOps&&(ve=!0)}if(be!==void 0)return await ze(be);if(ge.length>0){let e=await z();await Promise.all(ge.map(({step:r,delaySeconds:i})=>nr(t,Bn(F,n),{runId:p,stepId:r.correlationId,stepName:r.stepName,traceCarrier:e,requestedAt:new Date,runContext:Mn(U)},{delaySeconds:i,idempotencyKey:Pn(r.correlationId,r.stepName)})))}if(ve){W.debug(`Breaking loop: inline step has pending ops`,{workflowRunId:p,loopIteration:m}),await nr(t,Bn(F,n),{runId:p,traceCarrier:await z(),requestedAt:new Date});return}if(ge.length>0)return;if(ie.length===1){let e=pe[0];if(e.type===`completed`&&e.inlineDelta){Gn(H,e.inlineDelta),f=!e.inlineDelta.hasMore,H=e.inlineDelta.hasMore?Gs(H):{...H,type:`ready`};continue}}H=Gs(H)}else{let i=r;if(Lt.is(r)){if(Ke(`replay-write`,r))continue;let e=await qe(`replay-write`,r);if(e.reinvoked)return e.result;i=e.error}if(Tr(r))throw I.warn(`Transient world error during replay; redelivering via queue instead of failing the run`,{errorName:r instanceof Error?r.name:`UnknownError`,errorMessage:r instanceof Error?r.message:String(r),deliveryAttempt:s.attempt}),r;let o,l={};if(Ht.is(r)){let e=(x?.count??0)+1,a=fi(),c=[...x?.eventIds??(x?[x.eventId]:[]),r.eventId].slice(-(a+1));if(l={errorCode:q.REPLAY_DIVERGENCE,divergenceEventId:r.eventId,priorDivergenceEventId:x?.eventId,divergenceEventIds:c,divergenceCount:e,deliveryAttempt:s.attempt,maxRecoveryReplays:a,loopIteration:m,servedByRetainedSession:h,eventLogState:H.type,eventLogLength:H.type===`loadAll`?void 0:H.events.length,eventLogLastEventId:H.type===`loadAll`?void 0:H.events.at(-1)?.eventId,cursor:H.type===`ready`?H.cursor??void 0:H.type===`loadAfter`?H.cursor:void 0,hasHookInput:D!==void 0,hasWaitContinuation:j!==void 0,isRecoveryReplay:x!==void 0,setupSource:M?.setupSource},e<=a){I.warn(`Workflow replay diverged; queueing a recovery replay before declaring the event log corrupted`,{...l,errorMessage:r.message}),await nr(t,Bn(F,n),{runId:p,traceCarrier:await z(),requestedAt:new Date,replayDivergence:{eventId:r.eventId,count:e,eventIds:c}});return}o=e,i=new Vt(`Workflow replay diverged ${e} times after ${a} recovery replays; latest divergent event was ${r.eventId}; divergent event ids: ${c.join(`, `)}. Last divergence: ${r.message}`,{cause:r})}else c>0&&te.activate();i instanceof Error&&a?.recordException?.(i);let u=await ji(i),d=u.name||bi(i),f=u.message,g=u.stack||Si(i);if(g){let t=je(F)?.moduleSpecifier||F;g=Wo(g,t,e)}let _=yr(i);W.error(`Error while running workflow`,{...l,workflowRunId:p,errorCode:_,errorName:d,errorMessage:f,errorStack:g,errorCause:wi(i)||void 0}),Nr.isNativeError(i)&&g&&(i.stack=g);let v,y;try{await Ne(),v=await se.value,y=await fn(i,p,v,globalThis,(U?.specVersion??0)>=5),await V({eventType:`run_failed`,specVersion:8,eventData:{error:y,errorCode:_}},{requestId:P,...o===void 0?{}:{replayDivergenceCount:o}})}catch(e){if(X.is(e)||J.is(e)){W.info(`Tried failing workflow run, but run has already finished.`,{workflowRunId:p,message:e.message});return}if(Sr(e)){W.error(`Fatal world contract error while recording workflow failure`,{workflowRunId:p,errorCode:q.WORLD_CONTRACT_ERROR,error:e instanceof Error?e.message:String(e)});return}throw e}Li(p,F,y,v,_),a?.setAttributes({...xt(`failed`),...ye(_),...xe(d),..._e(f),...ue(d)});return}}}})}))})),d,f=0,p=Date.now(),m=typeof t?.routeModuleBodyStartedAt==`number`?p-t.routeModuleBodyStartedAt:void 0;return Nn(async e=>{f+=1;let t=d!==void 0,n=await Oe(`SERVER`);return G(`workflow.route.flow`,{kind:n,attributes:{...qe(`flow`),...E(qr),...ke(t),...Pe(f),...ft(Date.now()-p),...m===void 0?{}:et(m),...ne(e.method),...M(`/.well-known/workflow/v1/flow`)}},async t=>{d||=await G(`workflow.route.init`,async()=>{let e=await G(`workflow.route.get_world_handlers`,async()=>ea());return u(e)});let n=await d(e);return n instanceof Response&&t?.setAttributes(k(n.status)),n})})}export{Or as Run,Gt as WorkflowSuspension,Er as cancelRun,br as cancelRuns,Qi as createWorld,Xi as createWorldFromModule,hr as getHookByToken,Cr as getRun,ea as getWorld,$i as getWorldHandlers,Qn as healthCheck,gr as listStreams,wr as readStream,Dr as recreateRunFromExisting,_r as reenqueueRun,dr as resumeHook,pr as resumeWebhook,ta as setWorld,kr as start,xr as wakeUpRun,qs as workflowEntrypoint};