Version Packages (beta) - #3466
Conversation
|
The latest updates on your projects. Learn more about Vercel for GitHub.
|
fc9e588 to
c1a5c74
Compare
4c027ce to
9add9d7
Compare
61c47ab to
600b096
Compare
a06aa5c to
efbc408
Compare
40fe21f to
a0ccfe0
Compare
f3ed6ee to
14b52ac
Compare
0b65dfb to
b589460
Compare
5e21336 to
3450c86
Compare
eaf9c61 to
0b7c967
Compare
d329688 to
8d8b7b3
Compare
4f0c2a7 to
834d1f9
Compare
b2665bd to
dc85865
Compare
318db55 to
c041d3d
Compare
🧪 E2E Test Results✅ All tests passed
|
| Passed | Failed | Skipped | Total | |
|---|---|---|---|---|
| ✅ ▲ Vercel Production | 3466 | 0 | 590 | 4056 |
| ✅ 💻 Local Development | 3654 | 0 | 558 | 4212 |
| ✅ 📦 Local Production | 3810 | 0 | 558 | 4368 |
| ✅ 🐘 Local Postgres | 3810 | 0 | 558 | 4368 |
| ✅ 🪟 Windows | 312 | 0 | 0 | 312 |
| ✅ vercel-multi-region | 27 | 0 | 0 | 27 |
| Total | 15079 | 0 | 2264 | 17343 |
Details by Category
✅ ▲ Vercel Production
| App | Passed | Failed | Skipped |
|---|---|---|---|
| ✅ astro-node | 128 | 0 | 28 |
| ✅ astro-quickjs | 128 | 0 | 28 |
| ✅ example-node | 128 | 0 | 28 |
| ✅ example-quickjs | 128 | 0 | 28 |
| ✅ express-node | 128 | 0 | 28 |
| ✅ express-quickjs | 128 | 0 | 28 |
| ✅ fastify-node | 128 | 0 | 28 |
| ✅ fastify-quickjs | 128 | 0 | 28 |
| ✅ hono-node | 128 | 0 | 28 |
| ✅ hono-quickjs | 128 | 0 | 28 |
| ✅ nest-node | 128 | 0 | 28 |
| ✅ nest-quickjs | 128 | 0 | 28 |
| ✅ nextjs-turbopack-node | 153 | 0 | 3 |
| ✅ nextjs-turbopack-quickjs | 153 | 0 | 3 |
| ✅ nextjs-webpack-node | 153 | 0 | 3 |
| ✅ nextjs-webpack-quickjs | 153 | 0 | 3 |
| ✅ nitro-node | 128 | 0 | 28 |
| ✅ nitro-quickjs | 128 | 0 | 28 |
| ✅ nuxt-node | 128 | 0 | 28 |
| ✅ nuxt-quickjs | 128 | 0 | 28 |
| ✅ sveltekit-node | 147 | 0 | 9 |
| ✅ sveltekit-quickjs | 147 | 0 | 9 |
| ✅ tanstack-start-node | 128 | 0 | 28 |
| ✅ tanstack-start-quickjs | 128 | 0 | 28 |
| ✅ vite-node | 128 | 0 | 28 |
| ✅ vite-quickjs | 128 | 0 | 28 |
✅ 💻 Local Development
| App | Passed | Failed | Skipped |
|---|---|---|---|
| ✅ astro-stable-node | 130 | 0 | 26 |
| ✅ astro-stable-quickjs | 130 | 0 | 26 |
| ✅ express-stable-node | 130 | 0 | 26 |
| ✅ express-stable-quickjs | 130 | 0 | 26 |
| ✅ fastify-stable-node | 130 | 0 | 26 |
| ✅ fastify-stable-quickjs | 130 | 0 | 26 |
| ✅ hono-stable-node | 130 | 0 | 26 |
| ✅ hono-stable-quickjs | 130 | 0 | 26 |
| ✅ nest-stable-node | 130 | 0 | 26 |
| ✅ nest-stable-quickjs | 130 | 0 | 26 |
| ✅ nextjs-turbopack-canary-node | 137 | 0 | 19 |
| ✅ nextjs-turbopack-canary-quickjs | 137 | 0 | 19 |
| ✅ nextjs-turbopack-stable-quickjs | 156 | 0 | 0 |
| ✅ nextjs-webpack-canary-node | 137 | 0 | 19 |
| ✅ nextjs-webpack-canary-quickjs | 137 | 0 | 19 |
| ✅ nextjs-webpack-stable-node | 156 | 0 | 0 |
| ✅ nextjs-webpack-stable-quickjs | 156 | 0 | 0 |
| ✅ nitro-stable-node | 130 | 0 | 26 |
| ✅ nitro-stable-quickjs | 130 | 0 | 26 |
| ✅ nuxt-stable-node | 130 | 0 | 26 |
| ✅ nuxt-stable-quickjs | 130 | 0 | 26 |
| ✅ sveltekit-stable-node | 149 | 0 | 7 |
| ✅ sveltekit-stable-quickjs | 149 | 0 | 7 |
| ✅ tanstack-start-node | 130 | 0 | 26 |
| ✅ tanstack-start-quickjs | 130 | 0 | 26 |
| ✅ vite-stable-node | 130 | 0 | 26 |
| ✅ vite-stable-quickjs | 130 | 0 | 26 |
✅ 📦 Local Production
| App | Passed | Failed | Skipped |
|---|---|---|---|
| ✅ astro-stable-node | 130 | 0 | 26 |
| ✅ astro-stable-quickjs | 130 | 0 | 26 |
| ✅ express-stable-node | 130 | 0 | 26 |
| ✅ express-stable-quickjs | 130 | 0 | 26 |
| ✅ fastify-stable-node | 130 | 0 | 26 |
| ✅ fastify-stable-quickjs | 130 | 0 | 26 |
| ✅ hono-stable-node | 130 | 0 | 26 |
| ✅ hono-stable-quickjs | 130 | 0 | 26 |
| ✅ nest-stable-node | 130 | 0 | 26 |
| ✅ nest-stable-quickjs | 130 | 0 | 26 |
| ✅ nextjs-turbopack-canary-node | 137 | 0 | 19 |
| ✅ nextjs-turbopack-canary-quickjs | 137 | 0 | 19 |
| ✅ nextjs-turbopack-stable-node | 156 | 0 | 0 |
| ✅ nextjs-turbopack-stable-quickjs | 156 | 0 | 0 |
| ✅ nextjs-webpack-canary-node | 137 | 0 | 19 |
| ✅ nextjs-webpack-canary-quickjs | 137 | 0 | 19 |
| ✅ nextjs-webpack-stable-node | 156 | 0 | 0 |
| ✅ nextjs-webpack-stable-quickjs | 156 | 0 | 0 |
| ✅ nitro-stable-node | 130 | 0 | 26 |
| ✅ nitro-stable-quickjs | 130 | 0 | 26 |
| ✅ nuxt-stable-node | 130 | 0 | 26 |
| ✅ nuxt-stable-quickjs | 130 | 0 | 26 |
| ✅ sveltekit-stable-node | 149 | 0 | 7 |
| ✅ sveltekit-stable-quickjs | 149 | 0 | 7 |
| ✅ tanstack-start-node | 130 | 0 | 26 |
| ✅ tanstack-start-quickjs | 130 | 0 | 26 |
| ✅ vite-stable-node | 130 | 0 | 26 |
| ✅ vite-stable-quickjs | 130 | 0 | 26 |
✅ 🐘 Local Postgres
| App | Passed | Failed | Skipped |
|---|---|---|---|
| ✅ astro-stable-node | 130 | 0 | 26 |
| ✅ astro-stable-quickjs | 130 | 0 | 26 |
| ✅ express-stable-node | 130 | 0 | 26 |
| ✅ express-stable-quickjs | 130 | 0 | 26 |
| ✅ fastify-stable-node | 130 | 0 | 26 |
| ✅ fastify-stable-quickjs | 130 | 0 | 26 |
| ✅ hono-stable-node | 130 | 0 | 26 |
| ✅ hono-stable-quickjs | 130 | 0 | 26 |
| ✅ nest-stable-node | 130 | 0 | 26 |
| ✅ nest-stable-quickjs | 130 | 0 | 26 |
| ✅ nextjs-turbopack-canary-node | 137 | 0 | 19 |
| ✅ nextjs-turbopack-canary-quickjs | 137 | 0 | 19 |
| ✅ nextjs-turbopack-stable-node | 156 | 0 | 0 |
| ✅ nextjs-turbopack-stable-quickjs | 156 | 0 | 0 |
| ✅ nextjs-webpack-canary-node | 137 | 0 | 19 |
| ✅ nextjs-webpack-canary-quickjs | 137 | 0 | 19 |
| ✅ nextjs-webpack-stable-node | 156 | 0 | 0 |
| ✅ nextjs-webpack-stable-quickjs | 156 | 0 | 0 |
| ✅ nitro-stable-node | 130 | 0 | 26 |
| ✅ nitro-stable-quickjs | 130 | 0 | 26 |
| ✅ nuxt-stable-node | 130 | 0 | 26 |
| ✅ nuxt-stable-quickjs | 130 | 0 | 26 |
| ✅ sveltekit-stable-node | 149 | 0 | 7 |
| ✅ sveltekit-stable-quickjs | 149 | 0 | 7 |
| ✅ tanstack-start-node | 130 | 0 | 26 |
| ✅ tanstack-start-quickjs | 130 | 0 | 26 |
| ✅ vite-stable-node | 130 | 0 | 26 |
| ✅ vite-stable-quickjs | 130 | 0 | 26 |
✅ 🪟 Windows
| App | Passed | Failed | Skipped |
|---|---|---|---|
| ✅ nextjs-turbopack-node | 156 | 0 | 0 |
| ✅ nextjs-turbopack-quickjs | 156 | 0 | 0 |
✅ vercel-multi-region
| App | Passed | Failed | Skipped |
|---|---|---|---|
| ✅ nextjs-turbopack | 27 | 0 | 0 |
Sim WorldSimulated world deterministic testing for races. Traces 🟠 Mint-ordered log — 3 fail of 41 total
Full trace: 🟢 Append-only log — 0 fail of 41 total
Full trace: |
Event Log Race Repro
Run History
Latest Non-Completed Runs
Config14 runs / step-storm 6, hook-storm 6, hook-sleep 2 / c8 / 6x8 / watchdog 2500ms / step 2200±250ms / stagger 400ms / poke 750ms / timeout 240000ms |
|
No backport to This is an automated changesets "Version Packages (beta)" commit that only bumps package versions, updates CHANGELOG.md files, and consumes changeset entries in To override, re-run the Backport to stable workflow manually via |
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.
mainis currently in pre mode so this branch has prereleases rather than normal releases. If you want to exit prereleases, runchangeset pre exitonmain.Releases
@workflow/core@5.0.0-beta.42
Minor Changes
7683130Thanks @TooTallNate! - Resilient step dispatch: newly created steps are published to the queue in parallel with theirstep_createdevent write, with the serialized input carried on the message (stepInput) so the consumer re-ensures the event if the direct write failed transiently — mirroring resilient start (runInput) and resilient hook resume (hookInput). Worlds that enforce the precondition guard keep the sequential create-then-publish dispatch (only sequencing gives the message a happens-after edge over the create's guard verdict); step-dispatch idempotency keys are now step-identity-scoped. Disable viaWORKFLOW_RESILIENT_STEP_DISPATCH=0.Patch Changes
#3462
9add9d7Thanks @NathanColosimo! - Reject compact sparse-array payloads with logical lengths above 100,000 during hydration.#3519
dc85865Thanks @VaguelySerious! - Remove thepreconditionGuardWorld capability. A stale replay-context write no longer needs to be rejected: a reader holds a prefix of the log, replay is deterministic on a prefix, and the writer's next write reports the events it was pushed past.#3381
efbc408Thanks @VaguelySerious! - Ignore duplicate events that a concurrent replay wrote for an entity the event log already records, instead of failing the run with a corrupted event log#3530
c041d3dThanks @alangenfeld! - Retry e2e tests once in CI and surface retried-then-passed tests as flaky in annotations and the PR results comment.#3531
60dd206Thanks @alangenfeld! - Fix flaky timing-sensitive tests: stall-proof budgets for the events-consumer deferred-check tests and a sibling-matched budget for the TTL-expiration abort e2e test.#3437
a0ccfe0Thanks @karthikscale3! - Add OTEL telemetry for hook-triggered time-to-resume:workflow.resume.total_msplus a non-overlapping phase breakdown, on the first durable step after a resume.#3552
3560218Thanks @AndrewBarba! - Preserve event-log order when adjacent hook payloads resume independent workflow branches.#3542
de2a86cThanks @VaguelySerious! - Breaking: New runs are created at spec version 6, and a World that declares an older spec version is now rejected before the first run rather than failing partway through one.#3519
dc85865Thanks @VaguelySerious! - Require every event id the runtime reads to be a log position.requireEventSlotreplaces the lenient decode that returned "no position" for an id that is not a slot.#3519
dc85865Thanks @VaguelySerious! - Turn resilient step dispatch off by default. SetWORKFLOW_RESILIENT_STEP_DISPATCH=1to opt back in.#3479
b589460Thanks @VaguelySerious! - Replay-context event writes now always report the log position they replayed from, and theWORKFLOW_PRECONDITION_GUARDflag is removed.#3410
c1a5c74Thanks @alangenfeld! - Surface typed terminal errors when stream retention expires.Updated dependencies [
600b096,dc85865,efbc408,63cc09e,a0ccfe0,de2a86c,dc85865,7683130,dc85865,b589460,c1a5c74,8d8b7b3,0f4b35f,01991ed]:@workflow/world@5.0.0-beta.27
Minor Changes
#3390
600b096Thanks @alangenfeld! - Add a bounded batch analytics event lookup for enriching canonical event pages.#3365
7683130Thanks @TooTallNate! - Resilient step dispatch: newly created steps are published to the queue in parallel with theirstep_createdevent write, with the serialized input carried on the message (stepInput) so the consumer re-ensures the event if the direct write failed transiently — mirroring resilient start (runInput) and resilient hook resume (hookInput). Worlds that enforce the precondition guard keep the sequential create-then-publish dispatch (only sequencing gives the message a happens-after edge over the create's guard verdict); step-dispatch idempotency keys are now step-identity-scoped. Disable viaWORKFLOW_RESILIENT_STEP_DISPATCH=0.Patch Changes
#3519
dc85865Thanks @VaguelySerious! - Remove thepreconditionGuardWorld capability. A stale replay-context write no longer needs to be rejected: a reader holds a prefix of the log, replay is deterministic on a prefix, and the writer's next write reports the events it was pushed past.#3381
efbc408Thanks @VaguelySerious! - Ignore duplicate events that a concurrent replay wrote for an entity the event log already records, instead of failing the run with a corrupted event log#3437
a0ccfe0Thanks @karthikscale3! - Add OTEL telemetry for hook-triggered time-to-resume:workflow.resume.total_msplus a non-overlapping phase breakdown, on the first durable step after a resume.#3542
de2a86cThanks @VaguelySerious! - Breaking: New runs are created at spec version 6, and a World that declares an older spec version is now rejected before the first run rather than failing partway through one.#3519
dc85865Thanks @VaguelySerious! - Require every event id the runtime reads to be a log position.requireEventSlotreplaces the lenient decode that returned "no position" for an id that is not a slot.#3519
dc85865Thanks @VaguelySerious! - Slot-numbered event ids are a requirement of the World contract, not a capability. TheslotEventIdsflag is gone, and the conformance suite now fails a World whose event ids are not positions.#3479
b589460Thanks @VaguelySerious! - Replay-context event writes now always report the log position they replayed from, and theWORKFLOW_PRECONDITION_GUARDflag is removed.@workflow/world-vercel@5.0.0-beta.38
Minor Changes
#3390
600b096Thanks @alangenfeld! - Add a bounded batch analytics event lookup for enriching canonical event pages.#3365
7683130Thanks @TooTallNate! - Resilient step dispatch: newly created steps are published to the queue in parallel with theirstep_createdevent write, with the serialized input carried on the message (stepInput) so the consumer re-ensures the event if the direct write failed transiently — mirroring resilient start (runInput) and resilient hook resume (hookInput). Worlds that enforce the precondition guard keep the sequential create-then-publish dispatch (only sequencing gives the message a happens-after edge over the create's guard verdict); step-dispatch idempotency keys are now step-identity-scoped. Disable viaWORKFLOW_RESILIENT_STEP_DISPATCH=0.Patch Changes
#3519
dc85865Thanks @VaguelySerious! - Remove thepreconditionGuardWorld capability. A stale replay-context write no longer needs to be rejected: a reader holds a prefix of the log, replay is deterministic on a prefix, and the writer's next write reports the events it was pushed past.#3536
63cc09eThanks @shalabhc! - Add the Workflow client version, step-to-step overhead, and active latency optimizations to terminal event-write client spans for service and version latency analysis.#3542
de2a86cThanks @VaguelySerious! - Breaking: New runs are created at spec version 6, and a World that declares an older spec version is now rejected before the first run rather than failing partway through one.#3519
dc85865Thanks @VaguelySerious! - Slot-numbered event ids are a requirement of the World contract, not a capability. TheslotEventIdsflag is gone, and the conformance suite now fails a World whose event ids are not positions.#3479
b589460Thanks @VaguelySerious! - Replay-context event writes now always report the log position they replayed from, and theWORKFLOW_PRECONDITION_GUARDflag is removed.#3410
c1a5c74Thanks @alangenfeld! - Surface typed terminal errors when stream retention expires.#3504
8d8b7b3Thanks @TooTallNate! - Retry 429 (ThrottleError) event writes in-process, honoring the server'sRetry-After, bounded by a 30s cumulative wait budget per write. Previously a throttled event write escaped to the queue handler, whose retry directive can be delayed up to ~5 minutes by queue redelivery scheduling.#3452
01991edThanks @shalabhc! - Restore the per-event client span on the WebSocket events transport (WORKFLOW_EVENTS_TRANSPORT=ws), and add aworkflow.events.ws.connectspan for the handshake. Event write spans now carryworkflow.events.transportandworkflow.event.typeon both transports.Updated dependencies [
600b096,dc85865,efbc408,a0ccfe0,de2a86c,dc85865,7683130,dc85865,b589460,c1a5c74]:@workflow/astro@5.0.0-beta.42
Patch Changes
@workflow/builders@5.0.0-beta.42
Patch Changes
9add9d7,dc85865,efbc408,c041d3d,60dd206,a0ccfe0,3560218,de2a86c,dc85865,dc85865,7683130,b589460,c1a5c74]:@workflow/cli@5.0.0-beta.42
Patch Changes
600b096,9add9d7,dc85865,efbc408,c041d3d,60dd206,63cc09e,a0ccfe0,3560218,de2a86c,dc85865,dc85865,7683130,dc85865,b589460,c1a5c74,8d8b7b3,0f4b35f,01991ed]:@workflow/errors@5.0.0-beta.17
Patch Changes
#3479
b589460Thanks @VaguelySerious! - Replay-context event writes now always report the log position they replayed from, and theWORKFLOW_PRECONDITION_GUARDflag is removed.#3410
c1a5c74Thanks @alangenfeld! - Surface typed terminal errors when stream retention expires.@workflow/nest@5.0.0-beta.42
Patch Changes
@workflow/next@5.0.0-beta.42
Patch Changes
9add9d7,dc85865,efbc408,c041d3d,60dd206,a0ccfe0,3560218,de2a86c,dc85865,dc85865,7683130,b589460,c1a5c74]:@workflow/nitro@5.0.0-beta.42
Patch Changes
9add9d7,dc85865,efbc408,c041d3d,60dd206,a0ccfe0,3560218,de2a86c,dc85865,dc85865,7683130,b589460,c1a5c74]:@workflow/nuxt@5.0.0-beta.42
Patch Changes
@workflow/rollup@5.0.0-beta.42
Patch Changes
@workflow/sveltekit@5.0.0-beta.42
Patch Changes
@workflow/vite@5.0.0-beta.42
Patch Changes
@workflow/vitest@5.0.0-beta.42
Patch Changes
600b096,9add9d7,dc85865,efbc408,c041d3d,60dd206,a0ccfe0,3560218,de2a86c,dc85865,dc85865,7683130,dc85865,b589460,c1a5c74,0f4b35f]:@workflow/web@5.0.0-beta.42
Patch Changes
de2a86c,dc85865,0f4b35f]:@workflow/web-shared@5.0.0-beta.42
Patch Changes
#3295
14b52acThanks @mitul-s! - Replace hard-coded shared observability component styles with Tailwind utilities.#3295
14b52acThanks @mitul-s! - Replace static trace viewer styles with Tailwind theme utilities.#3467
834d1f9Thanks @VaguelySerious! - Mark ignored duplicate events in the observability UI and, when the whole event log is loaded, exclude them from derived step status, durations, and trace spansUpdated dependencies [
600b096,9add9d7,dc85865,efbc408,c041d3d,60dd206,a0ccfe0,3560218,de2a86c,dc85865,dc85865,7683130,dc85865,b589460,c1a5c74]:workflow@5.0.0-beta.42
Patch Changes
9add9d7,dc85865,efbc408,c041d3d,60dd206,a0ccfe0,3560218,de2a86c,dc85865,dc85865,7683130,b589460,c1a5c74]:@workflow/world-local@5.0.0-beta.36
Patch Changes
#3542
de2a86cThanks @VaguelySerious! - Breaking: New runs are created at spec version 6, and a World that declares an older spec version is now rejected before the first run rather than failing partway through one.#3519
dc85865Thanks @VaguelySerious! - Slot-numbered event ids are a requirement of the World contract, not a capability. TheslotEventIdsflag is gone, and the conformance suite now fails a World whose event ids are not positions.#3492
0f4b35fThanks @VaguelySerious! - FixCORRUPTED_EVENT_LOGafter a hook resume that raced another writer or was interrupted mid-write, and deliver a raced resume exactly once instead of duplicating it or reporting a conflict.Updated dependencies [
600b096,dc85865,efbc408,a0ccfe0,de2a86c,dc85865,7683130,dc85865,b589460,c1a5c74]:@workflow/world-postgres@5.0.0-beta.34
Patch Changes
#3542
de2a86cThanks @VaguelySerious! - Breaking: New runs are created at spec version 6, and a World that declares an older spec version is now rejected before the first run rather than failing partway through one.#3519
dc85865Thanks @VaguelySerious! - Slot-numbered event ids are a requirement of the World contract, not a capability. TheslotEventIdsflag is gone, and the conformance suite now fails a World whose event ids are not positions.Updated dependencies [
600b096,dc85865,efbc408,a0ccfe0,de2a86c,dc85865,7683130,dc85865,b589460,c1a5c74,0f4b35f]:@workflow/world-testing@5.0.0-beta.42
Patch Changes
#3542
de2a86cThanks @VaguelySerious! - Breaking: New runs are created at spec version 6, and a World that declares an older spec version is now rejected before the first run rather than failing partway through one.#3519
dc85865Thanks @VaguelySerious! - Slot-numbered event ids are a requirement of the World contract, not a capability. TheslotEventIdsflag is gone, and the conformance suite now fails a World whose event ids are not positions.Updated dependencies [
600b096,9add9d7,dc85865,efbc408,c041d3d,60dd206,a0ccfe0,3560218,de2a86c,dc85865,dc85865,7683130,dc85865,b589460,c1a5c74]: