Workflow Development Kit Release Notes
Last updated: Apr 8, 2026
- Apr 8, 2026
- Date parsed from source:Apr 8, 2026
- First seen by Releasebot:Apr 8, 2026
Workflow Development Kit by Vercel
Workflow Development Kit releases an initial v5 beta across core, CLI, web, plugins, and major framework integrations, plus SWC plugin improvements that reduce false positives and better support getter functions with "use step" directives.
@workflow/[email protected]
#1642 c5cdfc0 @VaguelySerious - Initial v5 beta release
@workflow/[email protected]
#1642 c5cdfc0 @VaguelySerious - Initial v5 beta release
@workflow/[email protected]
#1642 c5cdfc0 @VaguelySerious - Initial v5 beta release
@workflow/[email protected]
#1642 c5cdfc0 @VaguelySerious - Initial v5 beta release
@workflow/[email protected]
#1642 c5cdfc0 @VaguelySerious - Initial v5 beta release
@workflow/[email protected]
#1642 c5cdfc0 @VaguelySerious - Initial v5 beta release
@workflow/[email protected]
#1642 c5cdfc0 @VaguelySerious - Initial v5 beta release
@workflow/[email protected]
#1642 c5cdfc0 @VaguelySerious - Initial v5 beta release
@workflow/[email protected]
#1642 c5cdfc0 @VaguelySerious - Initial v5 beta release
@workflow/[email protected]
#1642 c5cdfc0 @VaguelySerious - Initial v5 beta release
@workflow/[email protected]
#1642 c5cdfc0 @VaguelySerious - Initial v5 beta release
@workflow/[email protected]
#1642 c5cdfc0 @VaguelySerious - Initial v5 beta release
#1641 35b539b @TooTallNate - Add detect mode to SWC plugin and use it during discovery to filter false positive directive detections
#1630 bab8cdd @TooTallNate - Support getter functions with "use step" directive
@workflow/[email protected]
#1642 c5cdfc0 @VaguelySerious - Initial v5 beta release
#1641 35b539b @TooTallNate - Add detect mode to SWC plugin and use it during discovery to filter false positive directive detections
#1644 372abba @TooTallNate - Fix Node.js builtin imports being relativized in step bundles
@workflow/[email protected]
#1642 c5cdfc0 @VaguelySerious - Initial v5 beta release
#1641 35b539b @TooTallNate - Add detect mode to SWC plugin and use it during discovery to filter false positive directive detections
@workflow/[email protected]
#1642 c5cdfc0 @VaguelySerious - Initial v5 beta release
@workflow/[email protected]
#1642 c5cdfc0 @VaguelySerious - Initial v5 beta release
@workflow/[email protected]
#1642 c5cdfc0 @VaguelySerious - Initial v5 beta release
@workflow/[email protected]
#1642 c5cdfc0 @VaguelySerious - Initial v5 beta release
@workflow/[email protected]
#1642 c5cdfc0 @VaguelySerious - Initial v5 beta release
@workflow/[email protected]
#1642 c5cdfc0 @VaguelySerious - Initial v5 beta release
@workflow/[email protected]
#1642 c5cdfc0 @VaguelySerious - Initial v5 beta release
@workflow/[email protected]
#1642 c5cdfc0 @VaguelySerious - Initial v5 beta release
@workflow/[email protected]
#1642 c5cdfc0 @VaguelySerious - Initial v5 beta release
@workflow/[email protected]
#1642 c5cdfc0 @VaguelySerious - Initial v5 beta release
@workflow/[email protected]
#1642 c5cdfc0 @VaguelySerious - Initial v5 beta release
Original source Report a problem - Apr 7, 2026
- Date parsed from source:Apr 7, 2026
- First seen by Releasebot:Apr 8, 2026
Workflow Development Kit by Vercel
Workflow Development Kit releases a broad set of stable package updates across core, CLI, web, AI, plugins, and framework adapters, plus a fix for Node.js builtin imports being relativized in step bundles.
@workflow/[email protected]
#1640 8890b33 @VaguelySerious - Stable release
@workflow/[email protected]
#1640 8890b33 @VaguelySerious - Stable release
@workflow/[email protected]
#1640 8890b33 @VaguelySerious - Stable release
@workflow/[email protected]
#1640 8890b33 @VaguelySerious - Stable release
@workflow/[email protected]
#1640 8890b33 @VaguelySerious - Stable release
@workflow/[email protected]
#1640 8890b33 @VaguelySerious - Stable release
@workflow/[email protected]
#1640 8890b33 @VaguelySerious - Stable release
@workflow/[email protected]
#1640 8890b33 @VaguelySerious - Stable release
@workflow/[email protected]
#1640 8890b33 @VaguelySerious - Stable release
@workflow/[email protected]
#1640 8890b33 @VaguelySerious - Stable release
@workflow/[email protected]
#1640 8890b33 @VaguelySerious - Stable release
@workflow/[email protected]
#1640 8890b33 @VaguelySerious - Stable release
@workflow/[email protected]
#1640 8890b33 @VaguelySerious - Stable release
1ef83dc @TooTallNate - Fix Node.js builtin imports being relativized in step bundles
@workflow/[email protected]
#1640 8890b33 @VaguelySerious - Stable release
@workflow/[email protected]
#1640 8890b33 @VaguelySerious - Stable release
@workflow/[email protected]
#1640 8890b33 @VaguelySerious - Stable release
@workflow/[email protected]
#1640 8890b33 @VaguelySerious - Stable release
@workflow/[email protected]
#1640 8890b33 @VaguelySerious - Stable release
@workflow/[email protected]
#1640 8890b33 @VaguelySerious - Stable release
@workflow/[email protected]
#1640 8890b33 @VaguelySerious - Stable release
@workflow/[email protected]
#1640 8890b33 @VaguelySerious - Stable release
@workflow/[email protected]
#1640 8890b33 @VaguelySerious - Stable release
@workflow/[email protected]
#1640 8890b33 @VaguelySerious - Stable release
@workflow/[email protected]
#1640 8890b33 @VaguelySerious - Stable release
@workflow/[email protected]
#1640 8890b33 @VaguelySerious - Stable release
Original source Report a problem All of your release notes in one feed
Join Releasebot and get updates from Vercel and hundreds of other software products.
- Apr 7, 2026
- Date parsed from source:Apr 7, 2026
- First seen by Releasebot:Apr 7, 2026
Workflow Development Kit by Vercel
Workflow Development Kit releases broader workflow and CLI updates with specVersion 3, CBOR queue transport, improved replay compatibility, new serde validation and transform tooling, stronger stream handling, and better serialization support across VM, web, and AI components.
@workflow/[email protected]
- #1627 5f138f2 @VaguelySerious - Bump specVersion to 3 and gate CBOR queue transport on spec version. Old deployments (specVersion < 3) receive JSON queue messages; new deployments receive CBOR. Handler uses dual transport to deserialize both formats. Fixes replay/reenqueue from dashboard to older deployments.
- #1629 a6bcea9 @VaguelySerious - CLI start command probes deployment specVersion via health check before choosing queue transport. Health check always uses JSON transport for compatibility with old deployments.
- #1533 7e70d18 @VaguelySerious - Add streamFlushIntervalMs option to Streamer interface, optional for worlds to allow overwriting the default of 10ms in low-latency environments.
- #1512 ba916e1 @TooTallNate - Add DOMException to the workflow VM context and add first-class serialization support, preserving message, name, and derived code across serialization boundaries
- #1618 c9b3038 @VaguelySerious - fix(core): properly propagate stream cancellation on disconnect
- #1537 c8dce52 @VaguelySerious - Allow workflow invocation to create run if initial storage call in start did not succeed. Send run input through queue to enable this. Allow creating run_created and run_started events together in World, and skip first event list call by returning events directly.
- #1606 ab872cc @VaguelySerious - Make registeredSteps a global singleton to protect against module duplication and caching issues
@workflow/[email protected]
- #1552 f5d2aef @TooTallNate - Add workflow transform command for inspecting SWC transform output with optional serde compliance analysis
- #1552 f5d2aef @TooTallNate - Implement serde compliance checks in workflow validate
- #1629 a6bcea9 @VaguelySerious - CLI start command probes deployment specVersion via health check before choosing queue transport. Health check always uses JSON transport for compatibility with old deployments.
- #1414 2680a42 @TooTallNate - Add Request and Response revivers to web and CLI hydration so serialized Request/Response objects display correctly in the observability UI and CLI inspect output.
@workflow/[email protected]
- #1627 5f138f2 @VaguelySerious - Bump specVersion to 3 and gate CBOR queue transport on spec version. Old deployments (specVersion < 3) receive JSON queue messages; new deployments receive CBOR. Handler uses dual transport to deserialize both formats. Fixes replay/reenqueue from dashboard to older deployments.
- #1533 7e70d18 @VaguelySerious - Add streamFlushIntervalMs option to Streamer interface, optional for worlds to allow overwriting the default of 10ms in low-latency environments.
- #1537 c8dce52 @VaguelySerious - Allow workflow invocation to create run if initial storage call in start did not succeed. Send run input through queue to enable this. Allow creating run_created and run_started events together in World, and skip first event list call by returning events directly.
@workflow/[email protected]
- #1533 7e70d18 @VaguelySerious - Add streamFlushIntervalMs option to Streamer interface, optional for worlds to allow overwriting the default of 10ms in low-latency environments.
- #1537 c8dce52 @VaguelySerious - Allow workflow invocation to create run if initial storage call in start did not succeed. Send run input through queue to enable this. Allow creating run_created and run_started events together in World, and skip first event list call by returning events directly.
@workflow/[email protected]
- #1533 7e70d18 @VaguelySerious - Add streamFlushIntervalMs option to Streamer interface, optional for worlds to allow overwriting the default of 10ms in low-latency environments.
- #1537 c8dce52 @VaguelySerious - Allow workflow invocation to create run if initial storage call in start did not succeed. Send run input through queue to enable this. Allow creating run_created and run_started events together in World, and skip first event list call by returning events directly.
@workflow/[email protected]
- #1627 5f138f2 @VaguelySerious - Bump specVersion to 3 and gate CBOR queue transport on spec version. Old deployments (specVersion < 3) receive JSON queue messages; new deployments receive CBOR. Handler uses dual transport to deserialize both formats. Fixes replay/reenqueue from dashboard to older deployments.
- #1537 c8dce52 @VaguelySerious - Allow workflow invocation to create run if initial storage call in start did not succeed. Send run input through queue to enable this. Allow creating run_created and run_started events together in World, and skip first event list call by returning events directly.
- #1626 5b9eb40 @VaguelySerious - Paginate writeToStreamMulti to stay within the server's 1000 chunks per batch limit
@workflow/[email protected]
- #1414 2680a42 @TooTallNate - Add Request and Response revivers to web and CLI hydration so serialized Request/Response objects display correctly in the observability UI and CLI inspect output.
@workflow/[email protected]
- #1444 e9ebe8f @gr2m - Preserve reasoning content in DurableAgent conversation history across tool loop steps
- #1608 70e89bf @VaguelySerious - DurableAgent telemetry: emit full AI SDK-compatible attributes on spans
@workflow/[email protected]
- #1599 5d22e61 @TooTallNate - Fix class expression method registrations to use binding name instead of internal class name, preventing ReferenceError at runtime for pre-bundled packages
- #1601 7c996a7 @TooTallNate - Rewrite anonymous export default class to a const declaration so the class has an accessible binding name for serde/step registration code
@workflow/[email protected]
- #1552 f5d2aef @TooTallNate - Add serde compliance checker (analyzeSerdeCompliance) and build-time warnings for classes with Node.js imports in workflow bundle
- #1613 3308701 @matchai - Resolve path aliases when externalizing non-step imports
@workflow/[email protected]
- #1619 5aab85b @johnlindquist - Remove unused dataDir option from withWorkflow() config. The option was accepted in the type but never read.
- Apr 7, 2026
- Date parsed from source:Apr 7, 2026
- First seen by Releasebot:Apr 7, 2026
Workflow Development Kit by Vercel
Workflow Development Kit ships fixes across core, world, builders, and Next integrations, improving deployment typing, ULID timestamp validation, header naming, module handling, and dev manifest behavior.
@workflow/[email protected]
#1591 d8aaf27 @VaguelySerious - Fix step contextStorage global potentially seeing dual-instance issues when bundlers create multiple copies of the module.
#1367 047c01b @pranaygp - Make start() return Run<unknown> with unknown[] args when deploymentId is provided, since the deployed workflow version may have different types
@workflow/[email protected]
#1605 b30b0dc @VaguelySerious - Use asymmetric ULID timestamp validation thresholds: 24h past, 5min future.
@workflow/[email protected]
#1605 b30b0dc @VaguelySerious - Use asymmetric ULID timestamp validation thresholds: 24h past, 5min future.
@workflow/[email protected]
#1602 760ebf1 @karthikscale3 - Update headers from x-workflow-run-id and x-workflow-step-id to x-vercel-workflow-run-id and x-vercel-workflow-step-id in order to align with header naming convention
@workflow/[email protected]
#1554 d1330cf @pranaygp - Fix node-module-error plugin pointing at multi-line comments instead of code usage
#1598 443a9e6 @TooTallNate - Override "sideEffects": false from package.json for discovered workflow/step/serde entries so esbuild does not drop their bare imports from the virtual entry
@workflow/[email protected]
#1597 4429078 @TooTallNate - Stop unconditionally setting WORKFLOW_PUBLIC_MANIFEST=1 during next dev, which caused public/.well-known/workflow/v1/manifest.json to be created without the env var being explicitly set.
Original source Report a problem - Apr 2, 2026
- Date parsed from source:Apr 2, 2026
- First seen by Releasebot:Apr 3, 2026
Workflow Development Kit by Vercel
Workflow Development Kit fixes crash issues across local, Postgres, and Vercel queue files, resolves server crashes on unmatched routes like /robots.txt and /favicon.ico, and improves AI stream error reporting with clearer messages.
@workflow/[email protected]
- #1588 ef2218a @VaguelySerious - Fix zod v3/v4 schema mismatch crash (keyValidator._parse is not a function) by using consistent zod/v4 imports in queue files that consume v4-native schemas from @workflow/world
@workflow/[email protected]
- #1588 ef2218a @VaguelySerious - Fix zod v3/v4 schema mismatch crash (keyValidator._parse is not a function) by using consistent zod/v4 imports in queue files that consume v4-native schemas from @workflow/world
@workflow/[email protected]
- #1588 ef2218a @VaguelySerious - Fix zod v3/v4 schema mismatch crash (keyValidator._parse is not a function) by using consistent zod/v4 imports in queue files that consume v4-native schemas from @workflow/world
@workflow/[email protected]
- #1590 74c4cdb @VaguelySerious - Fix server crash on unmatched routes (e.g. /robots.txt, /favicon.ico)
@workflow/[email protected]
- #1589 c0f07a9 @VaguelySerious - Fix fatal stream errors surfacing as [object Object] instead of real error messages
- Apr 1, 2026
- Date parsed from source:Apr 1, 2026
- First seen by Releasebot:Apr 1, 2026
Workflow Development Kit by Vercel
Workflow Development Kit releases reliability and runtime improvements across core, world, builders, next, Nitro, SvelteKit, and errors, including faster run startup, better resume handling for older deployments, safer replay limits, and smoother recovery of active runs after restarts.
@workflow/[email protected]
- #1569 a98f8de @VaguelySerious - Combine initial run fetch, event fetch, and run_started event creation
- #1572 d38114b @TooTallNate - Fix resumeHook()/resumeWebhook() failing on workflow runs from pre-encryption deployments by checking the target run's workflowCoreVersion capabilities before encoding the payload
- #1567 6dc1b78 @VaguelySerious - Increase flow route limit to max fluid duration and fail run if a single replay takes too long
@workflow/[email protected]
- #1569 a98f8de @VaguelySerious - Combine initial run fetch, event fetch, and run_started event creation
- #1534 329cdb3 @VaguelySerious - Re-enqueue active runs on world restart so inflight runs resume instead of getting stuck
@workflow/[email protected]
- #1569 a98f8de @VaguelySerious - Combine initial run fetch, event fetch, and run_started event creation
- #1534 329cdb3 @VaguelySerious - Re-enqueue active runs on world restart so inflight runs resume instead of getting stuck
@workflow/[email protected]
- #1569 a98f8de @VaguelySerious - Combine initial run fetch, event fetch, and run_started event creation
- #1534 329cdb3 @VaguelySerious - Re-enqueue active runs on world restart so inflight runs resume instead of getting stuck
@workflow/[email protected]
- #1567 6dc1b78 @VaguelySerious - Increase flow route limit to max fluid duration and fail run if a single replay takes too long
@workflow/[email protected]
- #1567 6dc1b78 @VaguelySerious - Increase flow route limit to max fluid duration and fail run if a single replay takes too long
@workflow/[email protected]
- #1386 0e8a880 @comfuture - Preserve generated step bundle side effects in Nitro virtual handlers so local production builds keep workflow step registrations available at runtime.
@workflow/[email protected]
- #1567 6dc1b78 @VaguelySerious - Increase flow route limit to max fluid duration and fail run if a single replay takes too long
@workflow/[email protected]
- #1567 6dc1b78 @VaguelySerious - Increase flow route limit to max fluid duration and fail run if a single replay takes too long
- Mar 30, 2026
- Date parsed from source:Mar 30, 2026
- First seen by Releasebot:Mar 31, 2026
Workflow Development Kit by Vercel
Workflow Development Kit releases beta updates across core, web, ai, builders, and world-local with VM context fixes, Uint8Array base64 and hex polyfills, stream handling improvements, browser paint responsiveness during reconnects, and CJS and ESM build fixes.
@workflow/[email protected]
- #1546 62ff600 @TooTallNate - Remove Buffer global from workflow VM context
- #1547 4f646e3 @TooTallNate - Polyfill TC39 Uint8Array base64/hex methods in workflow VM context
@workflow/[email protected]
- #1494 bd1f7e4 @VaguelySerious - Tidy code for stream chunk listing and metadata
@workflow/[email protected]
- #1542 c488877 @karthikscale3 - fix: switch web stream reader from readFromStream to getStreamChunks
@workflow/[email protected]
- #1529 a0a7195 @VaguelySerious - Fix WorkflowChatTransport blocking browser paint during stream reconnect by yielding to the macrotask queue between chunks
@workflow/[email protected]
- #1560 a3b7c48 @VaguelySerious - Only rewrite .ts extensions to .js in externalized step imports when targeting Node's native ESM loader (vitest), preserving original extensions for framework bundlers (Next.js, SvelteKit, etc.)
- #1509 d119c74 @VaguelySerious - Fix import.meta.url being undefined when using CJS builds
- Mar 27, 2026
- Date parsed from source:Mar 27, 2026
- First seen by Releasebot:Mar 27, 2026
Workflow Development Kit by Vercel
Workflow Development Kit adds VM base64 helpers, fixes duplicate hook_disposed events, and improves step function writable handling to avoid Vercel timeouts. It also adds maxPoolSize for postgres, hides the workflow graph viewer tab, and fixes TypeScript dependency resolution and mocking.
@workflow/[email protected]
- #1520 8e7083b @pranaygp - Add btoa, atob, and Buffer globals to workflow VM context for base64 encoding/decoding
- #1523 d1391e1 @pranaygp - Fix race condition allowing duplicate hook_disposed events for the same hook
- #1518 c739b99 @ceolinwill - Fix getWritable() in step functions to resolve on lock release instead of requiring stream close, preventing Vercel function timeouts
@workflow/[email protected]
- #1523 d1391e1 @pranaygp - Fix race condition allowing duplicate hook_disposed events for the same hook
@workflow/[email protected]
- #1523 d1391e1 @pranaygp - Fix race condition allowing duplicate hook_disposed events for the same hook
- #1527 e045b59 @NathanColosimo - Add maxPoolSize configuration
@workflow/[email protected]
- #1492 dab106a @karthikscale3 - Hide the workflow graph viewer tab
- #1515 bb86b69 @karthikscale3 - Fix Streams tab crash when decrypting large stream chunks
@workflow/[email protected]
- #1524 52db376 @matchai - Fix dependency resolution for step imports with .ts, .mts, and .cts extensions
@workflow/[email protected]
- #1524 52db376 @matchai - Fix step dependencies not being mockable when imported from TypeScript files
- Mar 24, 2026
- Date parsed from source:Mar 24, 2026
- First seen by Releasebot:Mar 25, 2026
Workflow Development Kit by Vercel
Workflow Development Kit ships a broad beta update with stronger error handling, safer workflow and step retries, improved streaming support, and better CLI and web display behavior. It also adds new semantic error types, negative stream indexing, and several integration and builder fixes.
@workflow/[email protected]
- #1448 73a851a @pranaygp - Add HookConflictError to @workflow/errors and use it for hook token conflicts instead of WorkflowRuntimeError
- #1340 84599b7 @pranaygp - Add error code classification (USER_ERROR, RUNTIME_ERROR) to run_failed events, improve queue and schema validation error logging
- #1452 672d919 @pranaygp - Fix workflow/step not found errors to fail gracefully instead of causing infinite queue retries
- #1344 beccbc4 @pranaygp - Remove VQS maxDeliveries cap and enforce max delivery limit in workflow/step handlers with graceful failure
- #1460 78f1b0e @VaguelySerious - Support negative startIndex for streaming (e.g. -3 reads last 3 chunks)
- #1438 da6adf7 @VaguelySerious - Improve display when run data has expired
- #1342 aee035f @pranaygp - Replace HTTP status code checks with semantic error types (EntityConflictError, RunExpiredError, ThrottleError, TooEarlyError). BREAKING CHANGE: WorkflowAPIError renamed to WorkflowWorldError.
- #1470 01bbe66 @VaguelySerious - Add getStreamChunks() and getStreamInfo() to the Streamer interface, and getTailIndex() to the readable stream returned by run.getReadable(). WorkflowChatTransport now reads the x-workflow-stream-tail-index response header to resolve negative initialStartIndex values into absolute positions, fixing reconnection retries after a disconnect.
- #1446 2b07294 @VaguelySerious - Ensure open stream flush is await-able in pendingOps
@workflow/[email protected]
- #1467 0d72b2d @Ralph-20 - Add bulk cancel (workflow cancel --status=<status>) and --status filter for inspect runs. Fix step I/O hydration in JSON output.
- #1442 fdbe853 @VaguelySerious - Fix WORKFLOW_LOCAL_BASE_URL not being passed to health check command
- #1490 5837d57 @VaguelySerious - Ensure update checks don't suggest upgrading from stable release to pre-releases
- #1438 da6adf7 @VaguelySerious - Improve display when run data has expired
@workflow/[email protected]
- #1460 78f1b0e @VaguelySerious - Support negative startIndex for streaming (e.g. -3 reads last 3 chunks)
- #1470 01bbe66 @VaguelySerious - Add getStreamChunks() and getStreamInfo() to the Streamer interface, and getTailIndex() to the readable stream returned by run.getReadable(). WorkflowChatTransport now reads the x-workflow-stream-tail-index response header to resolve negative initialStartIndex values into absolute positions, fixing reconnection retries after a disconnect.
@workflow/[email protected]
- #1340 84599b7 @pranaygp - Add error code classification (USER_ERROR, RUNTIME_ERROR) to run_failed events, improve queue and schema validation error logging
- #1434 d428d66 @pranaygp - Add atomic terminal-state guards to step and wait transitions using writeExclusive lock files. Prevents concurrent step_completed/step_failed/wait_completed races and blocks step_started on already-terminal steps. Also adds cancelled to isStepTerminal.
- #1344 beccbc4 @pranaygp - Remove VQS maxDeliveries cap and enforce max delivery limit in workflow/step handlers with graceful failure
- #1460 78f1b0e @VaguelySerious - Support negative startIndex for streaming (e.g. -3 reads last 3 chunks)
- #1342 aee035f @pranaygp - Replace HTTP status code checks with semantic error types (EntityConflictError, RunExpiredError, ThrottleError, TooEarlyError). BREAKING CHANGE: WorkflowAPIError renamed to WorkflowWorldError.
- #1470 01bbe66 @VaguelySerious - Add getStreamChunks() and getStreamInfo() to the Streamer interface, and getTailIndex() to the readable stream returned by run.getReadable(). WorkflowChatTransport now reads the x-workflow-stream-tail-index response header to resolve negative initialStartIndex values into absolute positions, fixing reconnection retries after a disconnect.
@workflow/[email protected]
- #1434 d428d66 @pranaygp - Fix race condition in step_started that could corrupt the event log. The UPDATE for step_started now includes a conditional guard (status NOT IN ('completed', 'failed', 'cancelled')) to prevent a concurrent step execution from reverting a completed step back to running. Also adds terminal-state guards to step_retrying, run_completed, run_failed, and run_cancelled, and adds cancelled to the existing guards on step_completed and step_failed.
- #1484 5502438 @jlalmes - Replace postgres (postgres.js) with pg (node-postgres) for Drizzle and Graphile Worker. Add optional pool on createWorld to share a pg.Pool; when provided
- #1460 78f1b0e @VaguelySerious - Support negative startIndex for streaming (e.g. -3 reads last 3 chunks)
- #1342 aee035f @pranaygp - Replace HTTP status code checks with semantic error types (EntityConflictError, RunExpiredError, ThrottleError, TooEarlyError). BREAKING CHANGE: WorkflowAPIError renamed to WorkflowWorldError.
- #1470 01bbe66 @VaguelySerious - Add getStreamChunks() and getStreamInfo() to the Streamer interface, and getTailIndex() to the readable stream returned by run.getReadable(). WorkflowChatTransport now reads the x-workflow-stream-tail-index response header to resolve negative initialStartIndex values into absolute positions, fixing reconnection retries after a disconnect.
@workflow/[email protected]
- #1340 84599b7 @pranaygp - Add error code classification (USER_ERROR, RUNTIME_ERROR) to run_failed events, improve queue and schema validation error logging
- #1442 fdbe853 @VaguelySerious - When DEBUG=workflow: is enabled, show API timing debug logs
- #1342 aee035f @pranaygp - Replace HTTP status code checks with semantic error types (EntityConflictError, RunExpiredError, ThrottleError, TooEarlyError). BREAKING CHANGE: WorkflowAPIError renamed to WorkflowWorldError.
- #1429 741661b @VaguelySerious - Support refs inside hook_received event payload
- #1470 01bbe66 @VaguelySerious - Add getStreamChunks() and getStreamInfo() to the Streamer interface, and getTailIndex() to the readable stream returned by run.getReadable(). WorkflowChatTransport now reads the x-workflow-stream-tail-index response header to resolve negative initialStartIndex values into absolute positions, fixing reconnection retries after a disconnect.
@workflow/[email protected]
- #1340 84599b7 @pranaygp - Add error code classification (USER_ERROR, RUNTIME_ERROR) to run_failed events, improve queue and schema validation error logging
- #1473 2b80e2d @karthikscale3 - Fix stream display for streams created before version 4.1.0-beta.56
@workflow/[email protected]
- #1482 a89f35a @karthikscale3 - Fix traceviewer timeline precision
- #1437 58830ca @karthikscale3 - Prevent re-renders to detail panel inputs and outputs when they are decrypted and while the run is in "running" state
- #1438 da6adf7 @VaguelySerious - Improve display when run data has expired
@workflow/[email protected]
- #1489 90ea870 @openharness - Allow experimental_context to be configured on DurableAgentOptions and used as the default context for stream() calls.
- #1488 e4e0140 @openharness - Expose configured tools on DurableAgent instances via agent.tools
- #1470 01bbe66 @VaguelySerious - Add getStreamChunks() and getStreamInfo() to the Streamer interface, and getTailIndex() to the readable stream returned by run.getReadable(). WorkflowChatTransport now reads the x-workflow-stream-tail-index response header to resolve negative initialStartIndex values into absolute positions, fixing reconnection retries after a disconnect.
@workflow/[email protected]
- #1503 77fd9ad @TooTallNate - Inline class serialization registration instead of importing from workflow/internal/class-serialization. This eliminates the dependency on the workflow package in SWC-generated code, enabling 3rd-party packages (like @vercel/sandbox) to define serializable classes without needing workflow as a dependency.
- #1144 992d768 @TooTallNate - Add class registration detection for CommonJS syntax
@workflow/[email protected]
- #1344 beccbc4 @pranaygp - Remove VQS maxDeliveries cap and enforce max delivery limit in workflow/step handlers with graceful failure
- #1468 5010ebe @ijjk - Fix deferred Next.js discovery bootstrap and improve workflow alias path resolution for app/pages/workflows sources.
- #1455 6cce021 @ijjk - catch node builtin usage when entry fields diverge
- #1461 977b7e9 @AndrewBarba - Add optional projectRoot to builder config to allow explicit resolution of workflow module specifiers without relying on process.cwd(). Threads the root through discovery, SWC transforms, and the Next.js deferred builder while preserving existing behavior when omitted.
@workflow/[email protected]
- #1496 ef4ca00 @pranaygp - Update NextJS to 16.2
- #1468 5010ebe @ijjk - Fix deferred Next.js discovery bootstrap and improve workflow alias path resolution for app/pages/workflows sources.
- #1461 977b7e9 @AndrewBarba - Add optional projectRoot to builder config to allow explicit resolution of workflow module specifiers without relying on process.cwd(). Threads the root through discovery, SWC transforms, and the Next.js deferred builder while preserving existing behavior when omitted.
@workflow/[email protected]
- #1501 1b4a3ab @pranaygp - Update nest, nitro, nuxt and sveltekit integration dependencies
@workflow/[email protected]
- #1501 1b4a3ab @pranaygp - Update nest, nitro, nuxt and sveltekit integration dependencies
@workflow/[email protected]
- #1501 1b4a3ab @pranaygp - Update nest, nitro, nuxt and sveltekit integration dependencies
- #1344 beccbc4 @pranaygp - Remove VQS maxDeliveries cap and enforce max delivery limit in workflow/step handlers with graceful failure
@workflow/[email protected]
- #1448 73a851a @pranaygp - Add HookConflictError to @workflow/errors and use it for hook token conflicts instead of WorkflowRuntimeError
- #1340 84599b7 @pranaygp - Add error code classification (USER_ERROR, RUNTIME_ERROR) to run_failed events, improve queue and schema validation error logging
- #1447 2ef33d2 @pranaygp - Export semantic error types from workflow/internal/errors and add API reference documentation
- #1452 672d919 @pranaygp - Fix workflow/step not found errors to fail gracefully instead of causing infinite queue retries
- #1344 beccbc4 @pranaygp - Remove VQS maxDeliveries cap and enforce max delivery limit in workflow/step handlers with graceful failure
- #1342 aee035f @pranaygp - Replace HTTP status code checks with semantic error types (EntityConflictError, RunExpiredError, ThrottleError, TooEarlyError). BREAKING CHANGE: WorkflowAPIError renamed to WorkflowWorldError.
@workflow/[email protected]
- #1501 1b4a3ab @pranaygp - Update nest, nitro, nuxt and sveltekit integration dependencies
- Mar 18, 2026
- Date parsed from source:Mar 18, 2026
- First seen by Releasebot:Mar 18, 2026
Workflow Development Kit by Vercel
Workflow Development Kit releases a multi‑package beta update across core, world, web, and AI. Highlights include removing a deprecated deploymentId tag, tracking Vercel request IDs, improved handling for 409/429, updated world-local and Postgres queue tests, and AI SDK v6 migration changes.
@workflow/[email protected]
- #1409 97e4384 @TooTallNate - Remove @deprecated tag from deploymentId in StartOptions
- #1413 dcb0761 @TooTallNate - Refactor builtin step functions to use this value serialization instead of explicit parameter passing. Remove unused duplicate builtins file from @workflow/core.
- #1396 2f0772d @karthikscale3 - Track Vercel request IDs (x-vercel-id) on all workflow events for correlating request logs with workflow executions
- #1400 a2c0c7e @VaguelySerious - Seed lazy workflow file discovery in NextJS. Require workflow definitions to be in manifest for Vercel environments.
- #1418 2cc42cb @VaguelySerious - Don't fail to queue on 409 responses
- #1402 f52afe7 @VaguelySerious - Reduce log severity for 409/429 logs from warn to info, as they can't be meaningfully acted on by the consumer.
@workflow/[email protected]
- #1396 2f0772d @karthikscale3 - Track Vercel request IDs (x-vercel-id) on all workflow events for correlating request logs with workflow executions
- #1364 94c14c7 @karthikscale3 - Strip only ref/payload fields from eventData when resolveData is 'none', preserving all other metadata
@workflow/[email protected]
- #1417 02ea057 @NathanColosimo - Remove the unused world-local queue executor API and clean up postgres queue tests.
- #1359 0f07403 @VaguelySerious - Write workflow data for vitest to the same folder as other local world runs, allowing them to be visible in observability tooling. Use a suffix-based system to ensure clearing runs on test start only affects vitest-related data.
- #1364 94c14c7 @karthikscale3 - Strip only ref/payload fields from eventData when resolveData is 'none', preserving all other metadata
@workflow/[email protected]
- #1417 02ea057 @NathanColosimo - Remove the unused world-local queue executor API and clean up postgres queue tests.
- #1417 02ea057 @NathanColosimo - Fix world-postgres queue execution to use workflow HTTP routes instead of in-process handlers.
- #1364 94c14c7 @karthikscale3 - Strip only ref/payload fields from eventData when resolveData is 'none', preserving all other metadata
@workflow/[email protected]
- #1378 d6e8727 @TooTallNate - Reorder token resolution in fetchRunKey and resolveLatestDeploymentId to prefer options.token / VERCEL_TOKEN before calling OIDC, skipping the OIDC network call when a token is already available
- #1396 2f0772d @karthikscale3 - Track Vercel request IDs (x-vercel-id) on all workflow events for correlating request logs with workflow executions
- #1335 e902980 @VaguelySerious - Use undici dispatcher for queue client
- #1364 94c14c7 @karthikscale3 - Strip only ref/payload fields from eventData when resolveData is 'none', preserving all other metadata
@workflow/[email protected]
- #1381 7b9b3c1 @karthikscale3 - web-shared: Timestamp tooltips, toast adapter, improved skeletons, and encrypted data detection for lazy-loaded events web: Add toast for decryption
- #1364 94c14c7 @karthikscale3 - Strip only ref/payload fields from eventData when resolveData is 'none', preserving all other metadata
@workflow/[email protected]
- #1404 0e2eb5c @karthikscale3 - Fix trace viewer construction of traces for v1 runs
- #1406 29eb8bb @karthikscale3 - Fix trace construction for v1 runs
- #1381 7b9b3c1 @karthikscale3 - web-shared: Timestamp tooltips, toast adapter, improved skeletons, and encrypted data detection for lazy-loaded events web: Add toast for decryption
- #1427 11f45b2 @karthikscale3 - Fix re-rendering of side panel inputs during live poll, sanitize error messages and add loading state for side panel.
@workflow/[email protected]
- #1362 74aea7b @pranaygp - BREAKING CHANGE: Migrate to AI SDK v6. Drop AI SDK v5 support. - Migrate all types from V2 to V3 (LanguageModelV2* → LanguageModelV3*) - Update peer dependency: ai ^5 || ^6 → ^6, @ai-sdk/provider ^2 || ^3 → ^3 - Simplify CompatibleLanguageModel from V2|V3 union to LanguageModelV3 - Remove providerExecuted guard on tool-result stream parts (V3: all tool-results are provider-executed) - Add instructions constructor option (replaces deprecated system) - Add onStepFinish and onFinish on constructor (merged with stream callbacks) - Add timeout stream option - Enrich onFinish event with text, finishReason, totalUsage - Add @workflow/ai/test export with mockTextModel and mockSequenceModel for workflow e2e testing - Update OutputSpecification to match AI SDK v6 Output interface - Fix WorkflowChatTransport to forward body and headers from ChatRequestOptions to prepareSendMessagesRequest and the default request body
- #1385 2c80ec7 @VaguelySerious - Add type helpers (InferDurableAgentTools, InferDurableAgentUIMessage), support prepareStep on DurableAgent constructor, fix supportedUrls causing AI_DownloadError for image URLs, and add telemetry span support for experimental_telemetry. Fix LanguageModelV3ToolResultOutput breaking response when not json compatible.
- #1389 4a298b5 @TooTallNate - Fix prepareStep system message being discarded when messages is also returned
@workflow/[email protected]
- #1368 5d95abf @TooTallNate - Fix closure variable detection for new expressions, exclude module-level declarations from being over-captured, preserve original step function bodies in enclosing functions for direct calls, and walk into nested function/method bodies to detect deeply nested closure variable usage
@workflow/[email protected]
- #1420 3cc2943 @TooTallNate - Set maxDuration in generated .vc-config.json for workflow functions ("max" for step, 60 for flow)
@workflow/[email protected]
- #1420 3cc2943 @TooTallNate - Set maxDuration in generated .vc-config.json for workflow functions ("max" for step, 60 for flow)
- #1400 a2c0c7e @VaguelySerious - Seed lazy workflow file discovery in NextJS. Require workflow definitions to be in manifest for Vercel environments.
@workflow/[email protected]
- #1420 3cc2943 @TooTallNate - Set maxDuration in generated .vc-config.json for workflow functions ("max" for step, 60 for flow)
@workflow/[email protected]
- #1359 0f07403 @VaguelySerious - Write workflow data for vitest to the same folder as other local world runs, allowing them to be visible in observability tooling. Use a suffix-based system to ensure clearing runs on test start only affects vitest-related data.