Skip to content

workflow@5.0.0-beta.58

Pre-release
Pre-release

Choose a tag to compare

@github-actions github-actions released this 29 Sep 21:25
Immutable release. Only release title and notes can be modified.
ee1bf67

@workflow/core@5.0.0-beta.58

  • #2062 20e8440 @pranaygp - Add experimental dynamic workflows: start() accepts workflow source as a string, compiles and stores it with the run through the run-payload serialization pipeline, and replays from that stored code. Steps are exposed to the source through an explicit experimental_dynamic.steps map, which is not a security boundary: dynamic source runs with the deployment's full privileges. Off by default; a deployment opts in with WORKFLOW_EXPERIMENTAL_DYNAMIC_WORKFLOWS=1, and dynamic runs can only start on the current deployment.
  • #4440 ee1a09b @karthikscale3 - Add the optional world.telemetry.recordStepExecution hook so Worlds can correlate flow requests with inline-executed workflow steps.
  • #4478 9d72807 @VaguelySerious - Worlds declare dynamic workflow support with capabilities.dynamicWorkflowCode, replacing getBackendCapabilities()
  • #4443 29bc3e0 @TooTallNate - Serialize a DataView as the bytes it views. It previously fell through to devalue's built-in encoding, which persists the whole backing ArrayBuffer — for a view onto Node's pooled Buffer allocator, unrelated process memory.

@workflow/cli@5.0.0-beta.58

  • #2062 20e8440 @pranaygp - Add experimental dynamic workflows: start() accepts workflow source as a string, compiles and stores it with the run through the run-payload serialization pipeline, and replays from that stored code. Steps are exposed to the source through an explicit experimental_dynamic.steps map, which is not a security boundary: dynamic source runs with the deployment's full privileges. Off by default; a deployment opts in with WORKFLOW_EXPERIMENTAL_DYNAMIC_WORKFLOWS=1, and dynamic runs can only start on the current deployment.
  • #3193 ad0fcc7 @RihanArfan - Track the standalone web UI server as a srvx Server, following the @workflow/web change.

@workflow/world@5.0.0-beta.40

  • #2062 20e8440 @pranaygp - Add experimental dynamic workflows: start() accepts workflow source as a string, compiles and stores it with the run through the run-payload serialization pipeline, and replays from that stored code. Steps are exposed to the source through an explicit experimental_dynamic.steps map, which is not a security boundary: dynamic source runs with the deployment's full privileges. Off by default; a deployment opts in with WORKFLOW_EXPERIMENTAL_DYNAMIC_WORKFLOWS=1, and dynamic runs can only start on the current deployment.
  • #4440 ee1a09b @karthikscale3 - Add the optional world.telemetry.recordStepExecution hook so Worlds can correlate flow requests with inline-executed workflow steps.
  • #4478 9d72807 @VaguelySerious - Worlds declare dynamic workflow support with capabilities.dynamicWorkflowCode, replacing getBackendCapabilities()

@workflow/world-local@5.0.0-beta.49

  • #2062 20e8440 @pranaygp - Add experimental dynamic workflows: start() accepts workflow source as a string, compiles and stores it with the run through the run-payload serialization pipeline, and replays from that stored code. Steps are exposed to the source through an explicit experimental_dynamic.steps map, which is not a security boundary: dynamic source runs with the deployment's full privileges. Off by default; a deployment opts in with WORKFLOW_EXPERIMENTAL_DYNAMIC_WORKFLOWS=1, and dynamic runs can only start on the current deployment.
  • #4478 9d72807 @VaguelySerious - Worlds declare dynamic workflow support with capabilities.dynamicWorkflowCode, replacing getBackendCapabilities()
  • #4458 35bc428 @pranaygp - Upgrade undici to 7.30.0, which stops a failed HTTP/2 stream from leaving a phantom in-flight request on its connection.

@workflow/world-postgres@5.0.0-beta.48

  • #2062 20e8440 @pranaygp - Add experimental dynamic workflows: start() accepts workflow source as a string, compiles and stores it with the run through the run-payload serialization pipeline, and replays from that stored code. Steps are exposed to the source through an explicit experimental_dynamic.steps map, which is not a security boundary: dynamic source runs with the deployment's full privileges. Off by default; a deployment opts in with WORKFLOW_EXPERIMENTAL_DYNAMIC_WORKFLOWS=1, and dynamic runs can only start on the current deployment.
  • #4478 9d72807 @VaguelySerious - Worlds declare dynamic workflow support with capabilities.dynamicWorkflowCode, replacing getBackendCapabilities()
  • #4428 efb58a0 @pranaygp - Leave job attempts past core's max-deliveries ceiling, so a run whose terminal run_failed write fails transiently at the ceiling is retried instead of stranded when the job runs out of attempts. Jobs enqueued before this release keep their stored cap of 49 attempts (executor transfers carry it forward); only jobs enqueued after upgrading get the headroom.
  • #4458 35bc428 @pranaygp - Upgrade undici to 7.30.0, which stops a failed HTTP/2 stream from leaving a phantom in-flight request on its connection.

@workflow/world-vercel@5.0.0-beta.53

  • #2062 20e8440 @pranaygp - Add experimental dynamic workflows: start() accepts workflow source as a string, compiles and stores it with the run through the run-payload serialization pipeline, and replays from that stored code. Steps are exposed to the source through an explicit experimental_dynamic.steps map, which is not a security boundary: dynamic source runs with the deployment's full privileges. Off by default; a deployment opts in with WORKFLOW_EXPERIMENTAL_DYNAMIC_WORKFLOWS=1, and dynamic runs can only start on the current deployment.
  • #4488 bf4b45c @shalabhc - Default the events transport back to HTTP. The WebSocket events transport is now opt-in with WORKFLOW_EVENTS_TRANSPORT=ws; any other value, including unset or http, uses HTTP.
  • #4440 ee1a09b @karthikscale3 - Add the optional world.telemetry.recordStepExecution hook so Worlds can correlate flow requests with inline-executed workflow steps.
  • #4478 9d72807 @VaguelySerious - Worlds declare dynamic workflow support with capabilities.dynamicWorkflowCode, replacing getBackendCapabilities()
  • #4458 35bc428 @pranaygp - Send event requests with bodies too large to re-buffer over HTTP/1.1 so they no longer stall behind in-flight HTTP/2 streams, bound events requests at 60s instead of 300s, and retry event-log reads whose HTTP/2 stream the peer reset.
  • #4483 f58ab84 @karthikscale3 - Limit inline workflow request correlation to the first 10 unique step IDs.
  • #4458 35bc428 @pranaygp - Upgrade undici to 7.30.0, which stops a failed HTTP/2 stream from leaving a phantom in-flight request on its connection.
  • #4469 2d8b8a3 @pranaygp - Export openEventsChannel so code writing a run's events outside a queue delivery can use the WebSocket events transport.

@workflow/web@5.0.0-beta.58

  • #3193 ad0fcc7 @RihanArfan - Replace Express with srvx in the standalone server, adding ETag/304, Last-Modified, byte ranges and on-the-fly compression.

@workflow/web-shared@5.0.0-beta.58

  • #2062 20e8440 @pranaygp - Add experimental dynamic workflows: start() accepts workflow source as a string, compiles and stores it with the run through the run-payload serialization pipeline, and replays from that stored code. Steps are exposed to the source through an explicit experimental_dynamic.steps map, which is not a security boundary: dynamic source runs with the deployment's full privileges. Off by default; a deployment opts in with WORKFLOW_EXPERIMENTAL_DYNAMIC_WORKFLOWS=1, and dynamic runs can only start on the current deployment.
  • #4443 29bc3e0 @TooTallNate - Add a DataView reviver so run payloads containing one still hydrate in the observability UI.