Skip to content

Version Packages (beta) - #3378

Merged
VaguelySerious merged 1 commit into
mainfrom
changeset-release/main
Aug 11, 2026
Merged

Version Packages (beta)#3378
VaguelySerious merged 1 commit into
mainfrom
changeset-release/main

Conversation

@github-actions

@github-actionsgithub-actionsBot commented Aug 7, 2026

Copy link
Copy Markdown
Contributor

This PR was opened by the Changesets release GitHub action. When you're ready to do a release, you can merge this and the packages will be published to npm automatically. If you're not ready to do a release yet, that's fine, whenever you add more changesets to main, this PR will be updated.

⚠️⚠️⚠️⚠️⚠️⚠️

main is currently in pre mode so this branch has prereleases rather than normal releases. If you want to exit prereleases, run changeset pre exit on main.

⚠️⚠️⚠️⚠️⚠️⚠️

Releases

@workflow/builders@5.0.0-beta.41

Minor Changes

Patch Changes

@workflow/world@5.0.0-beta.26

Minor Changes

  • #3374439a495 Thanks @karthikscale3! - Carry the run's pinned deployment on lazy resume messages so misrouted deliveries re-route before the hook_received write.

Patch Changes

  • #338574dbf81 Thanks @NathanColosimo! - Retry replay timeouts through normal queue redelivery instead of exiting the process, and keep Postgres jobs retryable through Core's terminal delivery limit.

  • #3382a8db185 Thanks @VaguelySerious! - Fold new events returned by events.create into the replay log so a completed wait no longer needs a follow-up events.list round trip

  • #33896786db9 Thanks @VaguelySerious! - Breaking: SpecVersion 6: Event IDs are now a dense per-run slot number, allocated by the world at publish time so a rejected write leaves no gap in the event log. A replay tells the world how many events it had read and gets back the ones it did not see, so an event that arrives from outside the replay and lands ahead of an event the replay wrote no longer fails the run with CORRUPTED_EVENT_LOG: it is held for whichever part of the workflow awaits it. A gap in the numbering fails the run instead of being replayed over.

  • #320522349e9 Thanks @NathanColosimo! - Load replay-event suffixes through one World request.

  • #312465139ac Thanks @NathanColosimo! - Infer required run and step entities, including their start times, from
    events.create request types.

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

Minor Changes

  • #32864bb86d3 Thanks @NathanColosimo! - Support Hook minimum retention on Vercel.

  • #3084264ddff Thanks @shalabhc! - Add an opt-in WebSocket transport for event writes during step execution, enabled with WORKFLOW_EVENTS_TRANSPORT=ws. Defaults to HTTP; no behavior change unless explicitly enabled.

Patch Changes

  • #338574dbf81 Thanks @NathanColosimo! - Retry replay timeouts through normal queue redelivery instead of exiting the process, and keep Postgres jobs retryable through Core's terminal delivery limit.

  • #3382a8db185 Thanks @VaguelySerious! - Fold new events returned by events.create into the replay log so a completed wait no longer needs a follow-up events.list round trip

  • #3370bf4dda6 Thanks @VaguelySerious! - Recover from HTTP/2 connections that stop delivering event requests, and make WORKFLOW_H2_MULTIPLEX=0 disable HTTP/2 on the events path entirely

  • #33896786db9 Thanks @VaguelySerious! - Breaking: SpecVersion 6: Event IDs are now a dense per-run slot number, allocated by the world at publish time so a rejected write leaves no gap in the event log. A replay tells the world how many events it had read and gets back the ones it did not see, so an event that arrives from outside the replay and lands ahead of an event the replay wrote no longer fails the run with CORRUPTED_EVENT_LOG: it is held for whichever part of the workflow awaits it. A gap in the numbering fails the run instead of being replayed over.

  • #320522349e9 Thanks @NathanColosimo! - Load replay-event suffixes through one World request.

  • #3191665110b Thanks @NathanColosimo! - Load the current replay log from non-Turbo run_started responses while preserving Turbo's preload opt-out.

  • #312465139ac Thanks @NathanColosimo! - Infer required run and step entities, including their start times, from
    events.create request types.

  • Updated dependencies [74dbf81, a8db185, 439a495, 6786db9, 22349e9, 65139ac]:

    • @workflow/world@5.0.0-beta.26
    • @workflow/errors@5.0.0-beta.16

@workflow/astro@5.0.0-beta.41

Patch Changes

  • Updated dependencies [4ec7aca, 264ddff]:
    • @workflow/builders@5.0.0-beta.41
    • @workflow/rollup@5.0.0-beta.41
    • @workflow/vite@5.0.0-beta.41

@workflow/cli@5.0.0-beta.41

Patch Changes

@workflow/core@5.0.0-beta.41

Patch Changes

  • #338574dbf81 Thanks @NathanColosimo! - Retry replay timeouts through normal queue redelivery instead of exiting the process, and keep Postgres jobs retryable through Core's terminal delivery limit.

  • #312465139ac Thanks @NathanColosimo! - Continue partial run_started event preloads from their cursor instead of reloading the event log from the beginning.

  • #33721a64f68 Thanks @ar-tama! - Fix Date subclassing inside workflow functions. The deterministic Date override in the workflow VM now forwards new.target via Reflect.construct, so subclasses like TZDate from @date-fns/tz keep their identity, methods, and fields. Calling Date() without new now returns the (fixed) time string per spec, instead of a Date object.

  • #3382a8db185 Thanks @VaguelySerious! - Fold new events returned by events.create into the replay log so a completed wait no longer needs a follow-up events.list round trip

  • #32864bb86d3 Thanks @NathanColosimo! - Fail a workflow when its World deterministically rejects Hook creation.

  • #3374439a495 Thanks @karthikscale3! - Carry the run's pinned deployment on lazy resume messages so misrouted deliveries re-route before the hook_received write.

  • #3342eb9e13f Thanks @TooTallNate! - QuickJS engine: start invocations by restoring a bundle-hydrated VM-memory snapshot instead of re-evaluating the workflow bundle (~25× faster VM startup; bundles with module-scope randomness or clock reads automatically fall back to fresh evaluation). Disable with WORKFLOW_QUICKJS_BASELINE_SNAPSHOT=0.

  • #326319b5b85 Thanks @TooTallNate! - QuickJS engine: move serialization out of the VM onto the host, replacing the in-VM serde bundle with side-effect-free handle introspection (same wire format, 2–100× faster).

  • #3406fbebf71 Thanks @VaguelySerious! - Fix replay divergence when a step result overtook an earlier sleep or hook delivery that was parked behind an unread hook's payload

  • #33896786db9 Thanks @VaguelySerious! - Breaking: SpecVersion 6: Event IDs are now a dense per-run slot number, allocated by the world at publish time so a rejected write leaves no gap in the event log. A replay tells the world how many events it had read and gets back the ones it did not see, so an event that arrives from outside the replay and lands ahead of an event the replay wrote no longer fails the run with CORRUPTED_EVENT_LOG: it is held for whichever part of the workflow awaits it. A gap in the numbering fails the run instead of being replayed over.

  • #320522349e9 Thanks @NathanColosimo! - Load replay-event suffixes through one World request.

  • #343969c30ff Thanks @VaguelySerious! - Stop reporting replay divergence for an event the workflow is still on its way to consuming, by waiting for in-flight step and hook deliveries instead of a fixed delay

  • #312465139ac Thanks @NathanColosimo! - Infer required run and step entities, including their start times, from
    events.create request types.

  • Updated dependencies [74dbf81, a8db185, 439a495, bf4dda6, 6786db9, 22349e9, 665110b, 65139ac, 4bb86d3, 264ddff]:

    • @workflow/world@5.0.0-beta.26
    • @workflow/world-vercel@5.0.0-beta.37
    • @workflow/world-local@5.0.0-beta.35
    • @workflow/errors@5.0.0-beta.16

@workflow/nest@5.0.0-beta.41

Patch Changes

  • Updated dependencies [4ec7aca, 264ddff]:
    • @workflow/builders@5.0.0-beta.41

@workflow/next@5.0.0-beta.41

Patch Changes

@workflow/nitro@5.0.0-beta.41

Patch Changes

@workflow/nuxt@5.0.0-beta.41

Patch Changes

  • Updated dependencies []:
    • @workflow/nitro@5.0.0-beta.41

@workflow/rollup@5.0.0-beta.41

Patch Changes

  • #3084264ddff Thanks @shalabhc! - Add an opt-in WebSocket transport for event writes during step execution, enabled with WORKFLOW_EVENTS_TRANSPORT=ws. Defaults to HTTP; no behavior change unless explicitly enabled.

  • Updated dependencies [4ec7aca, 264ddff]:

    • @workflow/builders@5.0.0-beta.41

@workflow/sveltekit@5.0.0-beta.41

Patch Changes

  • Updated dependencies [4ec7aca, 264ddff]:
    • @workflow/builders@5.0.0-beta.41
    • @workflow/rollup@5.0.0-beta.41
    • @workflow/vite@5.0.0-beta.41

@workflow/vite@5.0.0-beta.41

Patch Changes

  • Updated dependencies [4ec7aca, 264ddff]:
    • @workflow/builders@5.0.0-beta.41

@workflow/vitest@5.0.0-beta.41

Patch Changes

@workflow/web@5.0.0-beta.41

Patch Changes

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

Patch Changes

workflow@5.0.0-beta.41

Patch Changes

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

Patch Changes

  • #3382a8db185 Thanks @VaguelySerious! - Fold new events returned by events.create into the replay log so a completed wait no longer needs a follow-up events.list round trip

  • #33896786db9 Thanks @VaguelySerious! - Breaking: SpecVersion 6: Event IDs are now a dense per-run slot number, allocated by the world at publish time so a rejected write leaves no gap in the event log. A replay tells the world how many events it had read and gets back the ones it did not see, so an event that arrives from outside the replay and lands ahead of an event the replay wrote no longer fails the run with CORRUPTED_EVENT_LOG: it is held for whichever part of the workflow awaits it. A gap in the numbering fails the run instead of being replayed over.

  • #320522349e9 Thanks @NathanColosimo! - Load replay-event suffixes through one World request.

  • #312465139ac Thanks @NathanColosimo! - Infer required run and step entities, including their start times, from
    events.create request types.

  • Updated dependencies [74dbf81, a8db185, 439a495, 6786db9, 22349e9, 65139ac]:

    • @workflow/world@5.0.0-beta.26
    • @workflow/errors@5.0.0-beta.16

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

Patch Changes

  • #338574dbf81 Thanks @NathanColosimo! - Retry replay timeouts through normal queue redelivery instead of exiting the process, and keep Postgres jobs retryable through Core's terminal delivery limit.

  • #3382a8db185 Thanks @VaguelySerious! - Fold new events returned by events.create into the replay log so a completed wait no longer needs a follow-up events.list round trip

  • #33896786db9 Thanks @VaguelySerious! - Breaking: SpecVersion 6: Event IDs are now a dense per-run slot number, allocated by the world at publish time so a rejected write leaves no gap in the event log. A replay tells the world how many events it had read and gets back the ones it did not see, so an event that arrives from outside the replay and lands ahead of an event the replay wrote no longer fails the run with CORRUPTED_EVENT_LOG: it is held for whichever part of the workflow awaits it. A gap in the numbering fails the run instead of being replayed over.

  • #320522349e9 Thanks @NathanColosimo! - Load replay-event suffixes through one World request.

  • #312465139ac Thanks @NathanColosimo! - Infer required run and step entities, including their start times, from
    events.create request types.

  • Updated dependencies [74dbf81, a8db185, 439a495, 6786db9, 22349e9, 65139ac]:

    • @workflow/world@5.0.0-beta.26
    • @workflow/world-local@5.0.0-beta.35
    • @workflow/errors@5.0.0-beta.16

@workflow/world-testing@5.0.0-beta.41

Patch Changes

@github-actions
github-actionsBot requested a review from a team as a code ownerAugust 7, 2026 00:01
@vercel

vercelBot commented Aug 7, 2026

Copy link
Copy Markdown
Contributor

The latest updates on your projects. Learn more about Vercel for GitHub.

ProjectDeploymentActionsUpdated (UTC)
workbench-python-workflowErrorErrorAug 11, 2026 4:08pm

@github-actions
github-actionsBotforce-pushed the changeset-release/main branch from bbd5aff to eb9e13fCompareAugust 7, 2026 09:57
@github-actionsgithub-actionsBot reopened this Aug 7, 2026
@github-actions
github-actionsBotforce-pushed the changeset-release/main branch from 9daf704 to a8db185CompareAugust 7, 2026 17:13
@github-actionsgithub-actionsBot reopened this Aug 7, 2026
@github-actions
github-actionsBotforce-pushed the changeset-release/main branch from 60dc276 to 4bb86d3CompareAugust 7, 2026 20:01
@github-actionsgithub-actionsBot reopened this Aug 7, 2026
@github-actions
github-actionsBotforce-pushed the changeset-release/main branch from 019bea8 to 74dbf81CompareAugust 7, 2026 22:18
@github-actionsgithub-actionsBot reopened this Aug 7, 2026
@github-actions
github-actionsBotforce-pushed the changeset-release/main branch from e775650 to 22349e9CompareAugust 8, 2026 04:56
@github-actionsgithub-actionsBot reopened this Aug 8, 2026
@github-actions
github-actionsBotforce-pushed the changeset-release/main branch from b7bf9f1 to 264ddffCompareAugust 10, 2026 00:35
@github-actionsgithub-actionsBot reopened this Aug 10, 2026
@github-actions
github-actionsBotforce-pushed the changeset-release/main branch from 2314abc to 1aed119CompareAugust 10, 2026 15:23
@github-actionsgithub-actionsBot reopened this Aug 10, 2026
@github-actions

github-actionsBot commented Aug 11, 2026

Copy link
Copy Markdown
ContributorAuthor

🧪 E2E Test Results

All tests passed

E2E Test Summary

Summary
PassedFailedSkippedTotal
✅ ▲ Vercel Production346605904056
✅ 💻 Local Development367305394212
✅ 📦 Local Production381005584368
✅ 🐘 Local Postgres381005584368
✅ 🪟 Windows31200312
✅ vercel-multi-region270027
Total150980224517343
Details by Category

✅ ▲ Vercel Production

AppPassedFailedSkipped
✅ astro-node128028
✅ astro-quickjs128028
✅ example-node128028
✅ example-quickjs128028
✅ express-node128028
✅ express-quickjs128028
✅ fastify-node128028
✅ fastify-quickjs128028
✅ hono-node128028
✅ hono-quickjs128028
✅ nest-node128028
✅ nest-quickjs128028
✅ nextjs-turbopack-node15303
✅ nextjs-turbopack-quickjs15303
✅ nextjs-webpack-node15303
✅ nextjs-webpack-quickjs15303
✅ nitro-node128028
✅ nitro-quickjs128028
✅ nuxt-node128028
✅ nuxt-quickjs128028
✅ sveltekit-node14709
✅ sveltekit-quickjs14709
✅ tanstack-start-node128028
✅ tanstack-start-quickjs128028
✅ vite-node128028
✅ vite-quickjs128028

✅ 💻 Local Development

AppPassedFailedSkipped
✅ astro-stable-node130026
✅ astro-stable-quickjs130026
✅ express-stable-node130026
✅ express-stable-quickjs130026
✅ fastify-stable-node130026
✅ fastify-stable-quickjs130026
✅ hono-stable-node130026
✅ hono-stable-quickjs130026
✅ nest-stable-node130026
✅ nest-stable-quickjs130026
✅ nextjs-turbopack-canary-node137019
✅ nextjs-turbopack-canary-quickjs137019
✅ nextjs-turbopack-stable-node15600
✅ nextjs-turbopack-stable-quickjs15600
✅ nextjs-webpack-canary-quickjs137019
✅ nextjs-webpack-stable-node15600
✅ nextjs-webpack-stable-quickjs15600
✅ nitro-stable-node130026
✅ nitro-stable-quickjs130026
✅ nuxt-stable-node130026
✅ nuxt-stable-quickjs130026
✅ sveltekit-stable-node14907
✅ sveltekit-stable-quickjs14907
✅ tanstack-start-node130026
✅ tanstack-start-quickjs130026
✅ vite-stable-node130026
✅ vite-stable-quickjs130026

✅ 📦 Local Production

AppPassedFailedSkipped
✅ astro-stable-node130026
✅ astro-stable-quickjs130026
✅ express-stable-node130026
✅ express-stable-quickjs130026
✅ fastify-stable-node130026
✅ fastify-stable-quickjs130026
✅ hono-stable-node130026
✅ hono-stable-quickjs130026
✅ nest-stable-node130026
✅ nest-stable-quickjs130026
✅ nextjs-turbopack-canary-node137019
✅ nextjs-turbopack-canary-quickjs137019
✅ nextjs-turbopack-stable-node15600
✅ nextjs-turbopack-stable-quickjs15600
✅ nextjs-webpack-canary-node137019
✅ nextjs-webpack-canary-quickjs137019
✅ nextjs-webpack-stable-node15600
✅ nextjs-webpack-stable-quickjs15600
✅ nitro-stable-node130026
✅ nitro-stable-quickjs130026
✅ nuxt-stable-node130026
✅ nuxt-stable-quickjs130026
✅ sveltekit-stable-node14907
✅ sveltekit-stable-quickjs14907
✅ tanstack-start-node130026
✅ tanstack-start-quickjs130026
✅ vite-stable-node130026
✅ vite-stable-quickjs130026

✅ 🐘 Local Postgres

AppPassedFailedSkipped
✅ astro-stable-node130026
✅ astro-stable-quickjs130026
✅ express-stable-node130026
✅ express-stable-quickjs130026
✅ fastify-stable-node130026
✅ fastify-stable-quickjs130026
✅ hono-stable-node130026
✅ hono-stable-quickjs130026
✅ nest-stable-node130026
✅ nest-stable-quickjs130026
✅ nextjs-turbopack-canary-node137019
✅ nextjs-turbopack-canary-quickjs137019
✅ nextjs-turbopack-stable-node15600
✅ nextjs-turbopack-stable-quickjs15600
✅ nextjs-webpack-canary-node137019
✅ nextjs-webpack-canary-quickjs137019
✅ nextjs-webpack-stable-node15600
✅ nextjs-webpack-stable-quickjs15600
✅ nitro-stable-node130026
✅ nitro-stable-quickjs130026
✅ nuxt-stable-node130026
✅ nuxt-stable-quickjs130026
✅ sveltekit-stable-node14907
✅ sveltekit-stable-quickjs14907
✅ tanstack-start-node130026
✅ tanstack-start-quickjs130026
✅ vite-stable-node130026
✅ vite-stable-quickjs130026

✅ 🪟 Windows

AppPassedFailedSkipped
✅ nextjs-turbopack-node15600
✅ nextjs-turbopack-quickjs15600

✅ vercel-multi-region

AppPassedFailedSkipped
✅ nextjs-turbopack2700

📋 View full workflow run

@github-actions

Copy link
Copy Markdown
ContributorAuthor

Sim World

Simulated world deterministic testing for races. Traces

🟠 Mint-ordered log — 6 fail of 41 total

log=mint-ordered · fence=per-spec

scenariooutcomeeventsvirtreplayviolations
smoke-no-stepscompleted30msok0
smoke-one-stepcompleted60msok0
hook-at-step-startedcompleted120msok0
hook-at-step-completedcompleted120msok0
hook-at-hook-createdcompleted120msok0
deadline-hook-winscompleted71.0hok0
deadline-expirescompleted71.0hok0
long-sleepcompleted1130.0dok0
hook-never-arrivesstalled30msskipped0
step-retries-twicecompleted102.0sok0
parallel-stepscompleted90msok0
hook-on-execution-statecompleted120msok0
peek-hook-before-branchcompleted120msok0
peek-hook-after-branchcompleted120msok0
peek-hook-at-registrationcompleted120msok0
race-hook-before-probecompleted120msok0
race-hook-after-probecompleted120msok0
race-duplicate-deliverycompleted130msok0
attr-hook-before-stepcompleted110msok0
attr-hook-after-stepcompleted110msok0
attr-from-step-bodycompleted130msok0
fork-hook-after-timeoutcompleted141.0mok0
fork-hook-before-timeoutcompleted141.0mok0
count-hook-after-timeoutcompleted171.0mok0
count-hook-before-timeoutcompleted201.0mok0
stale-read-step-count-forkcompleted171.0mMISMATCH1
stale-read-equal-step-countscompleted141.0mMISMATCH1
step-vs-step-forkcompleted120msMISMATCH1
step-vs-step-fork-fencedcompleted120msMISMATCH1
fence-catches-benign-directioncompleted125msok0
in-flight-before-decisioncompleted171.0mMISMATCH1
in-flight-before-decision-countedcompleted201.0mok0
in-flight-after-decisionfailed142.0mMISMATCH1
stale-read-step-count-fork-fencedcompleted201.0mok0
fork-hook-winscompleted131.0mok0
fork-timeout-winscompleted131.0mok0
unclaimed-payload-under-forkcompleted171.0mok0
claimed-payload-under-forkcompleted171.0mok0
writers-independent-step-bodiescompleted120msok0
writers-scripted-tempocompleted120msok0
cancel-mid-stepcancelled70msskipped0

Full trace: world-sim-mint.txt

🟢 Append-only log — 0 fail of 41 total

log=append-only · fence=per-spec

scenariooutcomeeventsvirtreplayviolations
smoke-no-stepscompleted30msok0
smoke-one-stepcompleted60msok0
hook-at-step-startedcompleted120msok0
hook-at-step-completedcompleted120msok0
hook-at-hook-createdcompleted120msok0
deadline-hook-winscompleted71.0hok0
deadline-expirescompleted71.0hok0
long-sleepcompleted1130.0dok0
hook-never-arrivesstalled30msskipped0
step-retries-twicecompleted102.0sok0
parallel-stepscompleted90msok0
hook-on-execution-statecompleted120msok0
peek-hook-before-branchcompleted120msok0
peek-hook-after-branchcompleted120msok0
peek-hook-at-registrationcompleted120msok0
race-hook-before-probecompleted120msok0
race-hook-after-probecompleted120msok0
race-duplicate-deliverycompleted130msok0
attr-hook-before-stepcompleted110msok0
attr-hook-after-stepcompleted110msok0
attr-from-step-bodycompleted130msok0
fork-hook-after-timeoutcompleted141.0mok0
fork-hook-before-timeoutcompleted141.0mok0
count-hook-after-timeoutcompleted171.0mok0
count-hook-before-timeoutcompleted201.0mok0
stale-read-step-count-forkcompleted201.0mok0
stale-read-equal-step-countscompleted141.0mok0
step-vs-step-forkcompleted120msok0
step-vs-step-fork-fencedcompleted120msok0
fence-catches-benign-directioncompleted125msok0
in-flight-before-decisioncompleted171.0mok0
in-flight-before-decision-countedcompleted171.0mok0
in-flight-after-decisioncompleted192.0mok0
stale-read-step-count-fork-fencedcompleted201.0mok0
fork-hook-winscompleted131.0mok0
fork-timeout-winscompleted131.0mok0
unclaimed-payload-under-forkcompleted171.0mok0
claimed-payload-under-forkcompleted171.0mok0
writers-independent-step-bodiescompleted120msok0
writers-scripted-tempocompleted120msok0
cancel-mid-stepcancelled70msskipped0

Full trace: world-sim-append-only.txt

@VaguelySerious
VaguelySerious merged commit 9f5015b into mainAug 11, 2026
154 of 186 checks passed
@VaguelySerious
VaguelySerious deleted the changeset-release/main branch August 11, 2026 19:30
@github-actions

Copy link
Copy Markdown
ContributorAuthor

No backport to stable for 9f5015b (AI decision).

This is an automated changesets "Version Packages (beta)" release commit: it only bumps package versions, regenerates CHANGELOG entries, and updates .changeset/pre.json. Version-bump/release-plumbing commits are explicitly not backported; stable maintains its own independent versioning via its own changesets flow.

To override, re-run the Backport to stable workflow manually via workflow_dispatch and paste this commit SHA into the ref input:

9f5015b805d2b5bfd24235c4c04017a26c3c7a80

Sign up for freeto join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant

@VaguelySerious