Skip to content

[ci] Skip running backport agent for changeset PRs#2078

Open
VaguelySerious wants to merge 1 commit into
mainfrom
peter/no-backport-for-release-pr
Open

[ci] Skip running backport agent for changeset PRs#2078
VaguelySerious wants to merge 1 commit into
mainfrom
peter/no-backport-for-release-pr

Conversation

@VaguelySerious
Copy link
Copy Markdown
Member

No description provided.

Signed-off-by: Peter Wielander <peter.wielander@vercel.com>
@VaguelySerious VaguelySerious requested a review from a team as a code owner May 22, 2026 07:41
@changeset-bot
Copy link
Copy Markdown

changeset-bot Bot commented May 22, 2026

⚠️ No Changeset found

Latest commit: 9b491d9

Merging this PR will not cause a version bump for any packages. If these changes should not result in a new version, you're good to go. If these changes should result in a version bump, you need to add a changeset.

This PR includes no changesets

When changesets are added to this PR, you'll see the packages that this PR includes changesets for and the associated semver types

Click here to learn what changesets are, and how to add one.

Click here if you're a maintainer who wants to add a changeset to this PR

@vercel
Copy link
Copy Markdown
Contributor

vercel Bot commented May 22, 2026

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

Project Deployment Actions Updated (UTC)
example-nextjs-workflow-turbopack Ready Ready Preview, Comment May 22, 2026 7:45am
example-nextjs-workflow-webpack Ready Ready Preview, Comment May 22, 2026 7:45am
example-workflow Ready Ready Preview, Comment May 22, 2026 7:45am
workbench-astro-workflow Ready Ready Preview, Comment May 22, 2026 7:45am
workbench-express-workflow Ready Ready Preview, Comment May 22, 2026 7:45am
workbench-fastify-workflow Ready Ready Preview, Comment May 22, 2026 7:45am
workbench-hono-workflow Ready Ready Preview, Comment May 22, 2026 7:45am
workbench-nitro-workflow Ready Ready Preview, Comment May 22, 2026 7:45am
workbench-nuxt-workflow Ready Ready Preview, Comment May 22, 2026 7:45am
workbench-sveltekit-workflow Ready Ready Preview, Comment May 22, 2026 7:45am
workbench-tanstack-start-workflow Ready Ready Preview, Comment May 22, 2026 7:45am
workbench-vite-workflow Ready Ready Preview, Comment May 22, 2026 7:45am
workflow-docs Ready Ready Preview, Comment, Open in v0 May 22, 2026 7:45am
workflow-swc-playground Ready Ready Preview, Comment May 22, 2026 7:45am
workflow-tarballs Ready Ready Preview, Comment May 22, 2026 7:45am
workflow-web Ready Ready Preview, Comment May 22, 2026 7:45am

@github-actions
Copy link
Copy Markdown
Contributor

github-actions Bot commented May 22, 2026

📊 Benchmark Results

📈 Comparing against baseline from main branch. Green 🟢 = faster, Red 🔺 = slower.

workflow with no steps

💻 Local Development

World Framework Workflow Time Wall Time Overhead Samples vs Fastest
💻 Local 🥇 Nitro 0.029s (-32.3% 🟢) 1.005s (~) 0.976s 10 1.00x
💻 Local Express 0.031s (-30.0% 🟢) 1.006s (~) 0.975s 10 1.06x
💻 Local Next.js (Turbopack) 0.048s 1.006s 0.957s 10 1.65x
🐘 Postgres Express 0.051s (-12.9% 🟢) 1.013s (~) 0.962s 10 1.73x
🐘 Postgres Nitro 0.060s (-37.2% 🟢) 1.023s (-1.9%) 0.963s 10 2.05x
🐘 Postgres Next.js (Turbopack) 0.063s 1.013s 0.950s 10 2.14x

▲ Production (Vercel)

World Framework Workflow Time Wall Time Overhead Samples vs Fastest
▲ Vercel 🥇 Nitro 0.200s (-51.1% 🟢) 1.599s (-36.3% 🟢) 1.398s 10 1.00x
▲ Vercel Next.js (Turbopack) 0.278s (+10.7% 🔺) 2.245s (-3.8%) 1.967s 10 1.39x
▲ Vercel Express ⚠️ missing - - - -

🔍 Observability: Nitro | Next.js (Turbopack)

workflow with 1 step

💻 Local Development

World Framework Workflow Time Wall Time Overhead Samples vs Fastest
💻 Local 🥇 Nitro 1.073s (-5.2% 🟢) 2.006s (~) 0.933s 10 1.00x
💻 Local Express 1.076s (-4.4%) 2.006s (~) 0.930s 10 1.00x
🐘 Postgres Nitro 1.085s (-4.9%) 2.027s (+0.8%) 0.942s 10 1.01x
🐘 Postgres Express 1.086s (-5.3% 🟢) 2.011s (~) 0.925s 10 1.01x
💻 Local Next.js (Turbopack) 1.118s 2.005s 0.888s 10 1.04x
🐘 Postgres Next.js (Turbopack) 1.124s 2.007s 0.883s 10 1.05x

▲ Production (Vercel)

World Framework Workflow Time Wall Time Overhead Samples vs Fastest
▲ Vercel 🥇 Nitro 1.472s (-62.2% 🟢) 3.208s (-45.7% 🟢) 1.736s 10 1.00x
▲ Vercel Next.js (Turbopack) 1.580s (-22.4% 🟢) 3.614s (-5.6% 🟢) 2.034s 10 1.07x
▲ Vercel Express ⚠️ missing - - - -

🔍 Observability: Nitro | Next.js (Turbopack)

workflow with 10 sequential steps

💻 Local Development

World Framework Workflow Time Wall Time Overhead Samples vs Fastest
💻 Local 🥇 Nitro 10.393s (-5.1% 🟢) 11.021s (~) 0.628s 3 1.00x
💻 Local Express 10.425s (-4.6%) 11.021s (~) 0.597s 3 1.00x
🐘 Postgres Express 10.425s (-4.9%) 11.013s (~) 0.587s 3 1.00x
🐘 Postgres Nitro 10.519s (-3.2%) 11.017s (~) 0.498s 3 1.01x
💻 Local Next.js (Turbopack) 10.657s 11.021s 0.364s 3 1.03x
🐘 Postgres Next.js (Turbopack) 10.712s 11.014s 0.301s 3 1.03x

▲ Production (Vercel)

World Framework Workflow Time Wall Time Overhead Samples vs Fastest
▲ Vercel 🥇 Nitro 13.178s (-44.5% 🟢) 15.186s (-39.5% 🟢) 2.008s 2 1.00x
▲ Vercel Next.js (Turbopack) 13.265s (-23.4% 🟢) 15.215s (-21.6% 🟢) 1.950s 2 1.01x
▲ Vercel Express ⚠️ missing - - - -

🔍 Observability: Nitro | Next.js (Turbopack)

workflow with 25 sequential steps

💻 Local Development

World Framework Workflow Time Wall Time Overhead Samples vs Fastest
💻 Local 🥇 Nitro 13.428s (-10.8% 🟢) 14.027s (-12.5% 🟢) 0.599s 5 1.00x
💻 Local Express 13.509s (-9.8% 🟢) 14.028s (-6.7% 🟢) 0.519s 5 1.01x
🐘 Postgres Express 13.570s (-6.9% 🟢) 14.025s (-6.6% 🟢) 0.455s 5 1.01x
🐘 Postgres Nitro 13.713s (-6.0% 🟢) 14.217s (-5.4% 🟢) 0.504s 5 1.02x
🐘 Postgres Next.js (Turbopack) 14.089s 15.015s 0.926s 4 1.05x
💻 Local Next.js (Turbopack) 14.203s 15.029s 0.826s 4 1.06x

▲ Production (Vercel)

World Framework Workflow Time Wall Time Overhead Samples vs Fastest
▲ Vercel 🥇 Nitro 20.235s (-68.6% 🟢) 21.978s (-67.0% 🟢) 1.742s 3 1.00x
▲ Vercel Next.js (Turbopack) 20.826s (-60.4% 🟢) 22.660s (-58.5% 🟢) 1.834s 3 1.03x
▲ Vercel Express ⚠️ missing - - - -

🔍 Observability: Nitro | Next.js (Turbopack)

workflow with 50 sequential steps

💻 Local Development

World Framework Workflow Time Wall Time Overhead Samples vs Fastest
💻 Local 🥇 Nitro 11.853s (-29.4% 🟢) 12.022s (-29.4% 🟢) 0.169s 8 1.00x
💻 Local Express 11.989s (-27.8% 🟢) 12.398s (-27.2% 🟢) 0.409s 8 1.01x
🐘 Postgres Express 12.114s (-13.5% 🟢) 12.770s (-12.5% 🟢) 0.656s 8 1.02x
🐘 Postgres Nitro 12.202s (-12.6% 🟢) 12.870s (-10.1% 🟢) 0.668s 7 1.03x
💻 Local Next.js (Turbopack) 13.109s 13.596s 0.487s 7 1.11x
🐘 Postgres Next.js (Turbopack) 13.111s 13.872s 0.761s 7 1.11x

▲ Production (Vercel)

World Framework Workflow Time Wall Time Overhead Samples vs Fastest
▲ Vercel 🥇 Nitro 28.463s (-93.3% 🟢) 30.625s (-92.8% 🟢) 2.162s 3 1.00x
▲ Vercel Next.js (Turbopack) 30.264s (-92.3% 🟢) 32.580s (-91.8% 🟢) 2.316s 3 1.06x
▲ Vercel Express ⚠️ missing - - - -

🔍 Observability: Nitro | Next.js (Turbopack)

Promise.all with 10 concurrent steps

💻 Local Development

World Framework Workflow Time Wall Time Overhead Samples vs Fastest
💻 Local 🥇 Nitro 1.161s (-28.9% 🟢) 2.006s (-3.3%) 0.845s 15 1.00x
🐘 Postgres Express 1.165s (-7.6% 🟢) 2.008s (~) 0.843s 15 1.00x
🐘 Postgres Nitro 1.184s (-7.1% 🟢) 2.013s (~) 0.828s 15 1.02x
💻 Local Express 1.191s (-20.0% 🟢) 2.006s (~) 0.815s 15 1.03x
🐘 Postgres Next.js (Turbopack) 1.200s 2.006s 0.806s 15 1.03x
💻 Local Next.js (Turbopack) 1.279s 2.006s 0.727s 15 1.10x

▲ Production (Vercel)

World Framework Workflow Time Wall Time Overhead Samples vs Fastest
▲ Vercel 🥇 Nitro 2.282s (-19.0% 🟢) 4.090s (-5.4% 🟢) 1.808s 8 1.00x
▲ Vercel Next.js (Turbopack) 2.673s (-21.3% 🟢) 4.298s (-12.9% 🟢) 1.625s 8 1.17x
▲ Vercel Express ⚠️ missing - - - -

🔍 Observability: Nitro | Next.js (Turbopack)

Promise.all with 25 concurrent steps

💻 Local Development

World Framework Workflow Time Wall Time Overhead Samples vs Fastest
🐘 Postgres 🥇 Express 1.219s (-48.4% 🟢) 2.007s (-33.3% 🟢) 0.788s 15 1.00x
🐘 Postgres Nitro 1.277s (-45.7% 🟢) 2.016s (-33.0% 🟢) 0.739s 15 1.05x
🐘 Postgres Next.js (Turbopack) 1.351s 2.007s 0.655s 15 1.11x
💻 Local Nitro 1.679s (-46.6% 🟢) 2.006s (-48.4% 🟢) 0.327s 15 1.38x
💻 Local Next.js (Turbopack) 1.732s 2.006s 0.274s 15 1.42x
💻 Local Express 1.837s (-37.8% 🟢) 2.150s (-37.7% 🟢) 0.313s 14 1.51x

▲ Production (Vercel)

World Framework Workflow Time Wall Time Overhead Samples vs Fastest
▲ Vercel 🥇 Nitro 3.448s (-14.9% 🟢) 5.099s (-13.9% 🟢) 1.651s 6 1.00x
▲ Vercel Next.js (Turbopack) 3.744s (-47.3% 🟢) 5.521s (-38.0% 🟢) 1.778s 6 1.09x
▲ Vercel Express ⚠️ missing - - - -

🔍 Observability: Nitro | Next.js (Turbopack)

Promise.all with 50 concurrent steps

💻 Local Development

World Framework Workflow Time Wall Time Overhead Samples vs Fastest
🐘 Postgres 🥇 Express 1.333s (-61.8% 🟢) 2.007s (-49.9% 🟢) 0.674s 15 1.00x
🐘 Postgres Nitro 1.544s (-55.6% 🟢) 2.144s (-46.5% 🟢) 0.600s 15 1.16x
🐘 Postgres Next.js (Turbopack) 1.636s 2.008s 0.371s 15 1.23x
💻 Local Next.js (Turbopack) 4.622s 5.299s 0.677s 7 3.47x
💻 Local Nitro 4.665s (-44.1% 🟢) 5.346s (-40.7% 🟢) 0.681s 6 3.50x
💻 Local Express 5.345s (-35.9% 🟢) 5.846s (-35.2% 🟢) 0.501s 6 4.01x

▲ Production (Vercel)

World Framework Workflow Time Wall Time Overhead Samples vs Fastest
▲ Vercel 🥇 Next.js (Turbopack) 6.017s (-32.5% 🟢) 7.686s (-29.9% 🟢) 1.669s 4 1.00x
▲ Vercel Nitro 7.549s (+114.1% 🔺) 9.520s (+72.0% 🔺) 1.970s 4 1.25x
▲ Vercel Express ⚠️ missing - - - -

🔍 Observability: Next.js (Turbopack) | Nitro

Promise.race with 10 concurrent steps

💻 Local Development

World Framework Workflow Time Wall Time Overhead Samples vs Fastest
🐘 Postgres 🥇 Express 1.153s (-8.3% 🟢) 2.010s (~) 0.857s 15 1.00x
🐘 Postgres Nitro 1.176s (-6.4% 🟢) 2.015s (~) 0.838s 15 1.02x
🐘 Postgres Next.js (Turbopack) 1.194s 2.008s 0.814s 15 1.04x
💻 Local Nitro 1.359s (-27.1% 🟢) 2.006s (-14.3% 🟢) 0.647s 15 1.18x
💻 Local Express 1.407s (-25.7% 🟢) 2.006s (-15.1% 🟢) 0.600s 15 1.22x
💻 Local Next.js (Turbopack) 1.692s 2.391s 0.699s 13 1.47x

▲ Production (Vercel)

World Framework Workflow Time Wall Time Overhead Samples vs Fastest
▲ Vercel 🥇 Nitro 2.414s (-1.8%) 4.031s (-3.3%) 1.617s 8 1.00x
▲ Vercel Next.js (Turbopack) 2.452s (-16.4% 🟢) 3.974s (-14.4% 🟢) 1.522s 8 1.02x
▲ Vercel Express ⚠️ missing - - - -

🔍 Observability: Nitro | Next.js (Turbopack)

Promise.race with 25 concurrent steps

💻 Local Development

World Framework Workflow Time Wall Time Overhead Samples vs Fastest
🐘 Postgres 🥇 Express 1.215s (-48.1% 🟢) 2.009s (-33.3% 🟢) 0.794s 15 1.00x
🐘 Postgres Nitro 1.305s (-44.2% 🟢) 2.074s (-31.1% 🟢) 0.769s 15 1.07x
🐘 Postgres Next.js (Turbopack) 1.332s 2.007s 0.675s 15 1.10x
💻 Local Nitro 1.883s (-38.6% 🟢) 2.294s (-41.0% 🟢) 0.411s 14 1.55x
💻 Local Next.js (Turbopack) 2.121s 2.826s 0.705s 11 1.75x
💻 Local Express 2.229s (-28.8% 🟢) 2.591s (-31.1% 🟢) 0.362s 12 1.83x

▲ Production (Vercel)

World Framework Workflow Time Wall Time Overhead Samples vs Fastest
▲ Vercel 🥇 Nitro 3.535s (+9.3% 🔺) 5.122s (+0.9%) 1.587s 6 1.00x
▲ Vercel Next.js (Turbopack) 3.651s (+16.2% 🔺) 5.658s (+25.1% 🔺) 2.007s 6 1.03x
▲ Vercel Express ⚠️ missing - - - -

🔍 Observability: Nitro | Next.js (Turbopack)

Promise.race with 50 concurrent steps

💻 Local Development

World Framework Workflow Time Wall Time Overhead Samples vs Fastest
🐘 Postgres 🥇 Express 1.342s (-61.7% 🟢) 2.007s (-49.9% 🟢) 0.666s 15 1.00x
🐘 Postgres Nitro 1.548s (-55.5% 🟢) 2.152s (-46.3% 🟢) 0.603s 14 1.15x
🐘 Postgres Next.js (Turbopack) 1.597s 2.007s 0.410s 15 1.19x
💻 Local Nitro 4.888s (-46.5% 🟢) 5.346s (-46.7% 🟢) 0.458s 6 3.64x
💻 Local Next.js (Turbopack) 5.438s 6.014s 0.577s 6 4.05x
💻 Local Express 6.000s (-31.8% 🟢) 6.614s (-28.7% 🟢) 0.614s 5 4.47x

▲ Production (Vercel)

World Framework Workflow Time Wall Time Overhead Samples vs Fastest
▲ Vercel 🥇 Nitro 4.769s (-6.4% 🟢) 6.626s (-2.8%) 1.857s 5 1.00x
▲ Vercel Next.js (Turbopack) 5.291s (-21.7% 🟢) 7.017s (-17.9% 🟢) 1.727s 5 1.11x
▲ Vercel Express ⚠️ missing - - - -

🔍 Observability: Nitro | Next.js (Turbopack)

workflow with 10 sequential data payload steps (10KB)

💻 Local Development

World Framework Workflow Time Wall Time Overhead Samples vs Fastest
🐘 Postgres 🥇 Express 0.479s (-42.9% 🟢) 1.007s (-1.5%) 0.528s 60 1.00x
💻 Local Express 0.501s (-49.1% 🟢) 1.021s (-5.1% 🟢) 0.520s 59 1.05x
💻 Local Nitro 0.548s (-44.2% 🟢) 1.057s (-3.3%) 0.510s 57 1.14x
🐘 Postgres Nitro 0.571s (-30.4% 🟢) 1.050s (+4.3%) 0.479s 58 1.19x
🐘 Postgres Next.js (Turbopack) 0.659s 1.005s 0.346s 60 1.38x
💻 Local Next.js (Turbopack) 0.744s 1.021s 0.277s 59 1.55x

▲ Production (Vercel)

World Framework Workflow Time Wall Time Overhead Samples vs Fastest
▲ Vercel 🥇 Nitro 4.546s (-79.4% 🟢) 6.160s (-74.4% 🟢) 1.614s 10 1.00x
▲ Vercel Next.js (Turbopack) 4.612s (-68.2% 🟢) 6.324s (-60.7% 🟢) 1.711s 10 1.01x
▲ Vercel Express ⚠️ missing - - - -

🔍 Observability: Nitro | Next.js (Turbopack)

workflow with 25 sequential data payload steps (10KB)

💻 Local Development

World Framework Workflow Time Wall Time Overhead Samples vs Fastest
🐘 Postgres 🥇 Express 1.066s (-46.1% 🟢) 1.986s (-12.0% 🟢) 0.920s 46 1.00x
🐘 Postgres Nitro 1.153s (-40.2% 🟢) 1.649s (-21.5% 🟢) 0.495s 55 1.08x
💻 Local Nitro 1.190s (-60.8% 🟢) 2.005s (-46.6% 🟢) 0.815s 45 1.12x
💻 Local Express 1.223s (-59.4% 🟢) 2.006s (-44.0% 🟢) 0.783s 45 1.15x
🐘 Postgres Next.js (Turbopack) 1.575s 2.006s 0.432s 45 1.48x
💻 Local Next.js (Turbopack) 1.840s 2.028s 0.188s 45 1.73x

▲ Production (Vercel)

World Framework Workflow Time Wall Time Overhead Samples vs Fastest
▲ Vercel 🥇 Next.js (Turbopack) 12.055s (-75.8% 🟢) 14.298s (-72.4% 🟢) 2.243s 7 1.00x
▲ Vercel Nitro 12.141s (-69.2% 🟢) 14.392s (-65.1% 🟢) 2.251s 7 1.01x
▲ Vercel Express ⚠️ missing - - - -

🔍 Observability: Next.js (Turbopack) | Nitro

workflow with 50 sequential data payload steps (10KB)

💻 Local Development

World Framework Workflow Time Wall Time Overhead Samples vs Fastest
🐘 Postgres 🥇 Express 2.160s (-45.9% 🟢) 3.008s (-31.2% 🟢) 0.848s 40 1.00x
🐘 Postgres Nitro 2.260s (-44.9% 🟢) 2.804s (-39.1% 🟢) 0.544s 43 1.05x
💻 Local Express 2.714s (-70.5% 🟢) 3.033s (-69.7% 🟢) 0.318s 40 1.26x
💻 Local Nitro 2.719s (-70.8% 🟢) 3.032s (-69.7% 🟢) 0.314s 40 1.26x
🐘 Postgres Next.js (Turbopack) 3.117s 4.010s 0.893s 30 1.44x
💻 Local Next.js (Turbopack) 3.868s 4.041s 0.173s 30 1.79x

▲ Production (Vercel)

World Framework Workflow Time Wall Time Overhead Samples vs Fastest
▲ Vercel 🥇 Nitro 26.441s (-72.7% 🟢) 28.840s (-70.7% 🟢) 2.400s 5 1.00x
▲ Vercel Next.js (Turbopack) 28.211s (-73.7% 🟢) 30.444s (-72.0% 🟢) 2.233s 5 1.07x
▲ Vercel Express ⚠️ missing - - - -

🔍 Observability: Nitro | Next.js (Turbopack)

workflow with 10 concurrent data payload steps (10KB)

💻 Local Development

World Framework Workflow Time Wall Time Overhead Samples vs Fastest
🐘 Postgres 🥇 Express 0.193s (-31.6% 🟢) 1.007s (~) 0.814s 60 1.00x
🐘 Postgres Next.js (Turbopack) 0.230s 1.006s 0.776s 60 1.19x
🐘 Postgres Nitro 0.315s (+11.1% 🔺) 1.037s (+2.9%) 0.722s 58 1.63x
💻 Local Express 0.384s (-31.5% 🟢) 1.004s (~) 0.621s 60 1.99x
💻 Local Nitro 0.407s (-32.8% 🟢) 1.004s (-1.7%) 0.598s 60 2.11x
💻 Local Next.js (Turbopack) 0.541s 1.021s 0.480s 59 2.80x

▲ Production (Vercel)

World Framework Workflow Time Wall Time Overhead Samples vs Fastest
▲ Vercel 🥇 Nitro 2.181s (+31.3% 🔺) 4.444s (+32.6% 🔺) 2.262s 14 1.00x
▲ Vercel Next.js (Turbopack) 2.787s (+37.8% 🔺) 4.685s (+23.5% 🔺) 1.899s 13 1.28x
▲ Vercel Express ⚠️ missing - - - -

🔍 Observability: Nitro | Next.js (Turbopack)

workflow with 25 concurrent data payload steps (10KB)

💻 Local Development

World Framework Workflow Time Wall Time Overhead Samples vs Fastest
🐘 Postgres 🥇 Express 0.322s (-36.8% 🟢) 1.007s (~) 0.685s 90 1.00x
🐘 Postgres Next.js (Turbopack) 0.439s 1.006s 0.567s 90 1.36x
🐘 Postgres Nitro 0.490s (-1.2%) 1.102s (+9.5% 🔺) 0.612s 82 1.52x
💻 Local Express 2.111s (-16.0% 🟢) 2.766s (-8.1% 🟢) 0.655s 33 6.55x
💻 Local Next.js (Turbopack) 2.177s 2.976s 0.799s 31 6.76x
💻 Local Nitro 2.180s (-14.1% 🟢) 2.821s (-6.3% 🟢) 0.641s 32 6.77x

▲ Production (Vercel)

World Framework Workflow Time Wall Time Overhead Samples vs Fastest
▲ Vercel 🥇 Nitro 4.949s (+53.4% 🔺) 6.667s (+38.3% 🔺) 1.719s 14 1.00x
▲ Vercel Next.js (Turbopack) 5.950s (+68.3% 🔺) 7.981s (+53.7% 🔺) 2.031s 12 1.20x
▲ Vercel Express ⚠️ missing - - - -

🔍 Observability: Nitro | Next.js (Turbopack)

workflow with 50 concurrent data payload steps (10KB)

💻 Local Development

World Framework Workflow Time Wall Time Overhead Samples vs Fastest
🐘 Postgres 🥇 Express 0.692s (-15.4% 🟢) 1.006s (-1.1%) 0.314s 120 1.00x
🐘 Postgres Nitro 0.735s (-7.0% 🟢) 1.173s (+16.5% 🔺) 0.439s 103 1.06x
🐘 Postgres Next.js (Turbopack) 0.895s 1.050s 0.154s 115 1.29x
💻 Local Express 10.092s (-9.8% 🟢) 10.691s (-10.5% 🟢) 0.600s 12 14.58x
💻 Local Nitro 10.301s (-7.9% 🟢) 10.693s (-8.3% 🟢) 0.392s 12 14.88x
💻 Local Next.js (Turbopack) 10.711s 11.482s 0.772s 11 15.47x

▲ Production (Vercel)

World Framework Workflow Time Wall Time Overhead Samples vs Fastest
▲ Vercel 🥇 Next.js (Turbopack) 15.370s (+48.8% 🔺) 17.712s (+44.2% 🔺) 2.342s 7 1.00x
▲ Vercel Nitro 17.604s (+127.9% 🔺) 19.553s (+108.0% 🔺) 1.950s 7 1.15x
▲ Vercel Express ⚠️ missing - - - -

🔍 Observability: Next.js (Turbopack) | Nitro

Stream Benchmarks (includes TTFB metrics)
workflow with stream

💻 Local Development

World Framework Workflow Time TTFB Slurp Wall Time Overhead Samples vs Fastest
💻 Local 🥇 Nitro 1.129s (+428.5% 🔺) 2.005s (+99.6% 🔺) 0.010s (-17.6% 🟢) 2.017s (+98.0% 🔺) 0.888s 10 1.00x
💻 Local Express 1.137s (+471.3% 🔺) 2.005s (+99.6% 🔺) 0.013s (+5.8% 🔺) 2.020s (+98.4% 🔺) 0.883s 10 1.01x
🐘 Postgres Nitro 1.141s (+456.6% 🔺) 2.002s (+100.3% 🔺) 0.001s (-40.0% 🟢) 2.009s (+98.7% 🔺) 0.868s 10 1.01x
🐘 Postgres Express 1.145s (+458.0% 🔺) 2.000s (+100.2% 🔺) 0.002s (-6.3% 🟢) 2.012s (+98.9% 🔺) 0.867s 10 1.01x
💻 Local Next.js (Turbopack) 1.173s 2.003s 0.011s 2.018s 0.845s 10 1.04x
🐘 Postgres Next.js (Turbopack) 1.186s 2.001s 0.002s 2.011s 0.825s 10 1.05x

▲ Production (Vercel)

World Framework Workflow Time TTFB Slurp Wall Time Overhead Samples vs Fastest
▲ Vercel 🥇 Nitro 2.137s (-44.2% 🟢) 3.720s (-29.5% 🟢) 1.190s (+60.3% 🔺) 5.399s (-16.7% 🟢) 3.262s 10 1.00x
▲ Vercel Next.js (Turbopack) 2.160s (-68.5% 🟢) 3.532s (-59.2% 🟢) 1.465s (+131.9% 🔺) 5.522s (-43.6% 🟢) 3.361s 10 1.01x
▲ Vercel Express ⚠️ missing - - - - -

🔍 Observability: Nitro | Next.js (Turbopack)

stream pipeline with 5 transform steps (1MB)

💻 Local Development

World Framework Workflow Time TTFB Slurp Wall Time Overhead Samples vs Fastest
💻 Local 🥇 Nitro 1.528s (+82.2% 🔺) 2.011s (+98.7% 🔺) 0.010s (+5.3% 🔺) 2.022s (+81.2% 🔺) 0.494s 30 1.00x
🐘 Postgres Express 1.618s (+156.8% 🔺) 2.002s (+98.9% 🔺) 0.004s (+7.0% 🔺) 2.029s (+98.3% 🔺) 0.410s 30 1.06x
🐘 Postgres Next.js (Turbopack) 1.647s 2.009s 0.004s 2.024s 0.377s 30 1.08x
💻 Local Next.js (Turbopack) 1.685s 2.010s 0.010s 2.023s 0.338s 30 1.10x
🐘 Postgres Nitro 1.715s (+174.9% 🔺) 2.180s (+116.5% 🔺) 0.003s (-17.1% 🟢) 2.204s (+115.6% 🔺) 0.489s 28 1.12x
💻 Local Express 1.935s (+155.6% 🔺) 2.012s (+95.5% 🔺) 0.008s (-15.0% 🟢) 2.423s (+133.0% 🔺) 0.488s 25 1.27x

▲ Production (Vercel)

World Framework Workflow Time TTFB Slurp Wall Time Overhead Samples vs Fastest
▲ Vercel 🥇 Nitro 5.947s (-79.8% 🟢) 7.701s (-75.0% 🟢) 0.362s (+223.7% 🔺) 8.569s (-73.0% 🟢) 2.622s 8 1.00x
▲ Vercel Next.js (Turbopack) 6.043s (-64.3% 🟢) 7.633s (-58.2% 🟢) 0.296s (+39.9% 🔺) 8.409s (-55.6% 🟢) 2.366s 8 1.02x
▲ Vercel Express ⚠️ missing - - - - -

🔍 Observability: Nitro | Next.js (Turbopack)

10 parallel streams (1MB each)

💻 Local Development

World Framework Workflow Time TTFB Slurp Wall Time Overhead Samples vs Fastest
🐘 Postgres 🥇 Express 0.704s (-26.7% 🟢) 1.029s (-19.5% 🟢) 0.000s (+98.3% 🔺) 1.043s (-20.2% 🟢) 0.339s 58 1.00x
🐘 Postgres Next.js (Turbopack) 0.756s 1.018s 0.000s 1.044s 0.288s 58 1.07x
🐘 Postgres Nitro 0.870s (-10.2% 🟢) 1.198s (-4.0%) 0.000s (-51.0% 🟢) 1.229s (-2.3%) 0.359s 49 1.23x
💻 Local Express 1.336s (+9.1% 🔺) 2.015s (~) 0.000s (+40.0% 🔺) 2.017s (~) 0.681s 30 1.90x
💻 Local Nitro 1.399s (+14.4% 🔺) 2.015s (~) 0.000s (+133.3% 🔺) 2.017s (~) 0.618s 30 1.99x
💻 Local Next.js (Turbopack) 1.471s 2.014s 0.000s 2.017s 0.546s 30 2.09x

▲ Production (Vercel)

World Framework Workflow Time TTFB Slurp Wall Time Overhead Samples vs Fastest
▲ Vercel 🥇 Nitro 3.465s (+13.6% 🔺) 4.762s (+8.4% 🔺) 0.002s (+1958.3% 🔺) 5.238s (+8.9% 🔺) 1.773s 12 1.00x
▲ Vercel Next.js (Turbopack) 3.955s (-61.2% 🟢) 5.173s (-55.1% 🟢) 0.000s (NaN%) 5.691s (-52.8% 🟢) 1.737s 11 1.14x
▲ Vercel Express ⚠️ missing - - - - -

🔍 Observability: Nitro | Next.js (Turbopack)

fan-out fan-in 10 streams (1MB each)

💻 Local Development

World Framework Workflow Time TTFB Slurp Wall Time Overhead Samples vs Fastest
🐘 Postgres 🥇 Next.js (Turbopack) 1.445s 2.071s 0.000s 2.078s 0.634s 29 1.00x
🐘 Postgres Express 1.601s (-9.7% 🟢) 2.140s (-1.7%) 0.000s (+Infinity% 🔺) 2.155s (-2.0%) 0.554s 28 1.11x
🐘 Postgres Nitro 2.054s (+14.7% 🔺) 2.607s (+21.8% 🔺) 0.000s (+21.7% 🔺) 2.634s (+21.1% 🔺) 0.580s 23 1.42x
💻 Local Next.js (Turbopack) 2.862s 3.419s 0.001s 3.423s 0.561s 18 1.98x
💻 Local Express 3.032s (-12.6% 🟢) 3.903s (-3.2%) 0.001s (+9.4% 🔺) 3.906s (-3.2%) 0.873s 16 2.10x
💻 Local Nitro 3.501s (+3.3%) 3.897s (-3.3%) 0.001s (+37.5% 🔺) 4.234s (+4.9%) 0.733s 15 2.42x

▲ Production (Vercel)

World Framework Workflow Time TTFB Slurp Wall Time Overhead Samples vs Fastest
▲ Vercel 🥇 Nitro 5.529s (+35.1% 🔺) 6.753s (+25.7% 🔺) 0.000s (-59.3% 🟢) 7.302s (+26.0% 🔺) 1.773s 9 1.00x
▲ Vercel Next.js (Turbopack) 6.532s (+16.3% 🔺) 8.455s (+21.1% 🔺) 0.000s (+14.3% 🔺) 8.980s (+19.1% 🔺) 2.448s 7 1.18x
▲ Vercel Express ⚠️ missing - - - - -

🔍 Observability: Nitro | Next.js (Turbopack)

Summary

Fastest Framework by World

Winner determined by most benchmark wins

World 🥇 Fastest Framework Wins
💻 Local Nitro 13/21
🐘 Postgres Express 18/21
▲ Vercel Nitro 18/21
Fastest World by Framework

Winner determined by most benchmark wins

Framework 🥇 Fastest World Wins
Express 🐘 Postgres 15/21
Next.js (Turbopack) 🐘 Postgres 16/21
Nitro 🐘 Postgres 12/21
Column Definitions
  • Workflow Time: Runtime reported by workflow (completedAt - createdAt) - primary metric
  • TTFB: Time to First Byte - time from workflow start until first stream byte received (stream benchmarks only)
  • Slurp: Time from first byte to complete stream consumption (stream benchmarks only)
  • Wall Time: Total testbench time (trigger workflow + poll for result)
  • Overhead: Testbench overhead (Wall Time - Workflow Time)
  • Samples: Number of benchmark iterations run
  • vs Fastest: How much slower compared to the fastest configuration for this benchmark

Worlds:

  • 💻 Local: In-memory filesystem world (local development)
  • 🐘 Postgres: PostgreSQL database world (local development)
  • ▲ Vercel: Vercel production/preview deployment
  • 🌐 Turso: Community world (local development)
  • 🌐 MongoDB: Community world (local development)
  • 🌐 Redis: Community world (local development)
  • 🌐 Jazz: Community world (local development)
  • 🌐 Redis: Community world (local development)
  • 🌐 Redis + BullMQ: Community world (local development)
  • 🌐 Cloudflare: Community world (local development)
  • 🌐 MySQL: Community world (local development)
  • 🌐 Azure: Community world (local development)
  • 🌐 NATS JetStream: Community world (local development)
  • 🌐 Upstash: Community world (local development)

📋 View full workflow run


Some benchmark jobs failed:

  • Local: success
  • Postgres: success
  • Vercel: failure

Check the workflow run for details.

@github-actions
Copy link
Copy Markdown
Contributor

github-actions Bot commented May 22, 2026

🧪 E2E Test Results

Some tests failed

Summary

Passed Failed Skipped Total
❌ ▲ Vercel Production 1221 1 219 1441
❌ 💻 Local Development 1614 1 219 1834
❌ 📦 Local Production 1614 1 219 1834
✅ 🐘 Local Postgres 1615 0 219 1834
✅ 🪟 Windows 131 0 0 131
✅ 📋 Other 741 0 176 917
Total 6936 3 1052 7991

❌ Failed Tests

▲ Vercel Production (1 failed)

nuxt (1 failed):

  • instanceMethodStepWorkflow - instance methods with "use step" directive | wrun_01KS7AKMZBW8BCCF1R4WDAXB4M | 🔍 observability
💻 Local Development (1 failed)

nextjs-webpack-stable-lazy-discovery-enabled (1 failed):

  • AbortController abortVoidSleepTimeoutWorkflow: documented void sleep().then(abort) pattern works
📦 Local Production (1 failed)

nitro-stable (1 failed):

  • AbortController abortFetchInFlightWorkflow: aborting cancels an in-flight fetch

Details by Category

❌ ▲ Vercel Production
App Passed Failed Skipped
✅ astro 105 0 26
✅ example 105 0 26
✅ express 105 0 26
✅ fastify 105 0 26
✅ hono 105 0 26
✅ nextjs-turbopack 129 0 2
✅ nextjs-webpack 129 0 2
✅ nitro 105 0 26
❌ nuxt 104 1 26
✅ sveltekit 124 0 7
✅ vite 105 0 26
❌ 💻 Local Development
App Passed Failed Skipped
✅ astro-stable 106 0 25
✅ express-stable 106 0 25
✅ fastify-stable 106 0 25
✅ hono-stable 106 0 25
✅ nextjs-turbopack-canary 112 0 19
✅ nextjs-turbopack-stable-lazy-discovery-disabled 131 0 0
✅ nextjs-turbopack-stable-lazy-discovery-enabled 131 0 0
✅ nextjs-webpack-canary 112 0 19
✅ nextjs-webpack-stable-lazy-discovery-disabled 131 0 0
❌ nextjs-webpack-stable-lazy-discovery-enabled 130 1 0
✅ nitro-stable 106 0 25
✅ nuxt-stable 106 0 25
✅ sveltekit-stable 125 0 6
✅ vite-stable 106 0 25
❌ 📦 Local Production
App Passed Failed Skipped
✅ astro-stable 106 0 25
✅ express-stable 106 0 25
✅ fastify-stable 106 0 25
✅ hono-stable 106 0 25
✅ nextjs-turbopack-canary 112 0 19
✅ nextjs-turbopack-stable-lazy-discovery-disabled 131 0 0
✅ nextjs-turbopack-stable-lazy-discovery-enabled 131 0 0
✅ nextjs-webpack-canary 112 0 19
✅ nextjs-webpack-stable-lazy-discovery-disabled 131 0 0
✅ nextjs-webpack-stable-lazy-discovery-enabled 131 0 0
❌ nitro-stable 105 1 25
✅ nuxt-stable 106 0 25
✅ sveltekit-stable 125 0 6
✅ vite-stable 106 0 25
✅ 🐘 Local Postgres
App Passed Failed Skipped
✅ astro-stable 106 0 25
✅ express-stable 106 0 25
✅ fastify-stable 106 0 25
✅ hono-stable 106 0 25
✅ nextjs-turbopack-canary 112 0 19
✅ nextjs-turbopack-stable-lazy-discovery-disabled 131 0 0
✅ nextjs-turbopack-stable-lazy-discovery-enabled 131 0 0
✅ nextjs-webpack-canary 112 0 19
✅ nextjs-webpack-stable-lazy-discovery-disabled 131 0 0
✅ nextjs-webpack-stable-lazy-discovery-enabled 131 0 0
✅ nitro-stable 106 0 25
✅ nuxt-stable 106 0 25
✅ sveltekit-stable 125 0 6
✅ vite-stable 106 0 25
✅ 🪟 Windows
App Passed Failed Skipped
✅ nextjs-turbopack 131 0 0
✅ 📋 Other
App Passed Failed Skipped
✅ e2e-local-dev-nest-stable 106 0 25
✅ e2e-local-dev-tanstack-start- 106 0 25
✅ e2e-local-postgres-nest-stable 106 0 25
✅ e2e-local-postgres-tanstack-start- 106 0 25
✅ e2e-local-prod-nest-stable 106 0 25
✅ e2e-local-prod-tanstack-start- 106 0 25
✅ e2e-vercel-prod-tanstack-start 105 0 26

📋 View full workflow run


Some E2E test jobs failed:

  • Vercel Prod: failure
  • Local Dev: failure
  • Local Prod: failure
  • Local Postgres: success
  • Windows: success

Check the workflow run for details.

# step would just burn a call. `workflow_dispatch` still forces a run.
if: |
github.event_name == 'workflow_dispatch' ||
!(github.event.head_commit.author.username == 'github-actions[bot]' && startsWith(github.event.head_commit.message, 'Version Packages'))
Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Note that this username would change once #2005 lands. So we can drop this check IMO (gh-sts uses a pool of bot accounts so we'd have to regexp match or similar - not impossible but I don't think the extra guard here adds much value).

Copy link
Copy Markdown
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

ah, annoying, ok

Sign up for free to 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.

2 participants