Skip to content

Remove SvelteKit prepare lifecycle hook#2821

Open
NathanColosimo wants to merge 1 commit into
mainfrom
codex/skip-sveltekit-prepare-ci
Open

Remove SvelteKit prepare lifecycle hook#2821
NathanColosimo wants to merge 1 commit into
mainfrom
codex/skip-sveltekit-prepare-ci

Conversation

@NathanColosimo

@NathanColosimo NathanColosimo commented Jul 8, 2026

Copy link
Copy Markdown
Contributor

Problem

SvelteKit 2.62+ loads the Vite config during svelte-kit sync. Because the workbench ran sync from prepare, pnpm install imported the Workflow plugin and started compilation before workspace build artifacts such as the SWC wasm were available, causing CI installs to hang.

Solution

Remove the redundant prepare hook. SvelteKit still synchronizes during dev and build, and the check script runs svelte-kit sync explicitly.

Verification

  • pnpm install --frozen-lockfile
  • pnpm --dir workbench/sveltekit check
  • pnpm --dir workbench/sveltekit build

@changeset-bot

changeset-bot Bot commented Jul 8, 2026

Copy link
Copy Markdown

⚠️ No Changeset found

Latest commit: 91b4893

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

vercel Bot commented Jul 8, 2026

Copy link
Copy Markdown
Contributor

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 Jul 8, 2026 6:12pm
example-nextjs-workflow-webpack Ready Ready Preview, Comment Jul 8, 2026 6:12pm
example-workflow Ready Ready Preview, Comment Jul 8, 2026 6:12pm
workbench-astro-workflow Ready Ready Preview, Comment Jul 8, 2026 6:12pm
workbench-express-workflow Ready Ready Preview, Comment Jul 8, 2026 6:12pm
workbench-fastify-workflow Ready Ready Preview, Comment Jul 8, 2026 6:12pm
workbench-hono-workflow Ready Ready Preview, Comment Jul 8, 2026 6:12pm
workbench-nitro-workflow Ready Ready Preview, Comment Jul 8, 2026 6:12pm
workbench-nuxt-workflow Ready Ready Preview, Comment Jul 8, 2026 6:12pm
workbench-sveltekit-workflow Ready Ready Preview, Comment Jul 8, 2026 6:12pm
workbench-tanstack-start-workflow Ready Ready Preview, Comment Jul 8, 2026 6:12pm
workbench-vite-workflow Ready Ready Preview, Comment Jul 8, 2026 6:12pm
workflow-docs Ready Ready Preview, Comment, Open in v0 Jul 8, 2026 6:12pm
workflow-swc-playground Ready Ready Preview, Comment Jul 8, 2026 6:12pm
workflow-tarballs Ready Ready Preview, Comment Jul 8, 2026 6:12pm
workflow-web Ready Ready Preview, Comment Jul 8, 2026 6:12pm

@vercel vercel Bot temporarily deployed to Preview – workflow-docs July 8, 2026 17:42 Inactive
@github-actions

github-actions Bot commented Jul 8, 2026

Copy link
Copy Markdown
Contributor

🧪 E2E Test Results

All tests passed

Summary

Passed Failed Skipped Total
✅ ▲ Vercel Production 1453 0 230 1683
✅ 💻 Local Development 1617 0 219 1836
✅ 📦 Local Production 1617 0 219 1836
✅ 🐘 Local Postgres 1617 0 219 1836
✅ 🪟 Windows 153 0 0 153
✅ 📋 Other 894 0 177 1071
Total 7351 0 1064 8415

Details by Category

✅ ▲ Vercel Production
App Passed Failed Skipped
✅ astro 126 0 27
✅ example 126 0 27
✅ express 126 0 27
✅ fastify 126 0 27
✅ hono 126 0 27
✅ nextjs-turbopack 150 0 3
✅ nextjs-webpack 150 0 3
✅ nitro 126 0 27
✅ nuxt 126 0 27
✅ sveltekit 145 0 8
✅ vite 126 0 27
✅ 💻 Local Development
App Passed Failed Skipped
✅ astro-stable 128 0 25
✅ express-stable 128 0 25
✅ fastify-stable 128 0 25
✅ hono-stable 128 0 25
✅ nextjs-turbopack-canary 134 0 19
✅ nextjs-turbopack-stable 153 0 0
✅ nextjs-webpack-canary 134 0 19
✅ nextjs-webpack-stable 153 0 0
✅ nitro-stable 128 0 25
✅ nuxt-stable 128 0 25
✅ sveltekit-stable 147 0 6
✅ vite-stable 128 0 25
✅ 📦 Local Production
App Passed Failed Skipped
✅ astro-stable 128 0 25
✅ express-stable 128 0 25
✅ fastify-stable 128 0 25
✅ hono-stable 128 0 25
✅ nextjs-turbopack-canary 134 0 19
✅ nextjs-turbopack-stable 153 0 0
✅ nextjs-webpack-canary 134 0 19
✅ nextjs-webpack-stable 153 0 0
✅ nitro-stable 128 0 25
✅ nuxt-stable 128 0 25
✅ sveltekit-stable 147 0 6
✅ vite-stable 128 0 25
✅ 🐘 Local Postgres
App Passed Failed Skipped
✅ astro-stable 128 0 25
✅ express-stable 128 0 25
✅ fastify-stable 128 0 25
✅ hono-stable 128 0 25
✅ nextjs-turbopack-canary 134 0 19
✅ nextjs-turbopack-stable 153 0 0
✅ nextjs-webpack-canary 134 0 19
✅ nextjs-webpack-stable 153 0 0
✅ nitro-stable 128 0 25
✅ nuxt-stable 128 0 25
✅ sveltekit-stable 147 0 6
✅ vite-stable 128 0 25
✅ 🪟 Windows
App Passed Failed Skipped
✅ nextjs-turbopack 153 0 0
✅ 📋 Other
App Passed Failed Skipped
✅ e2e-local-dev-nest-stable 128 0 25
✅ e2e-local-dev-tanstack-start- 128 0 25
✅ e2e-local-postgres-nest-stable 128 0 25
✅ e2e-local-postgres-tanstack-start- 128 0 25
✅ e2e-local-prod-nest-stable 128 0 25
✅ e2e-local-prod-tanstack-start- 128 0 25
✅ e2e-vercel-prod-tanstack-start 126 0 27

📋 View full workflow run

@github-actions

github-actions Bot commented Jul 8, 2026

Copy link
Copy Markdown
Contributor

📊 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 🥇 Express 0.047s (+4.3%) 1.006s (~) 0.960s 10 1.00x
💻 Local Nitro 0.049s (+5.2% 🔺) 1.006s (~) 0.958s 10 1.05x
💻 Local Next.js (Turbopack) 0.054s (+1.7%) 1.006s (~) 0.952s 10 1.16x
🐘 Postgres Nitro 0.065s (-0.8%) 1.014s (~) 0.949s 10 1.39x
🐘 Postgres Express ⚠️ missing - - - -
🐘 Postgres Next.js (Turbopack) ⚠️ missing - - - -

▲ Production (Vercel)

World Framework Workflow Time Wall Time Overhead Samples vs Fastest
▲ Vercel 🥇 Express 0.211s (-6.1% 🟢) 2.041s (~) 1.830s 10 1.00x
▲ Vercel Nitro 0.280s (+48.8% 🔺) 2.186s (+7.7% 🔺) 1.906s 10 1.32x
▲ Vercel Next.js (Turbopack) 0.630s (+159.0% 🔺) 2.176s (-8.5% 🟢) 1.546s 10 2.98x

🔍 Observability: Express | Nitro | Next.js (Turbopack)

workflow with 1 step

💻 Local Development

World Framework Workflow Time Wall Time Overhead Samples vs Fastest
💻 Local 🥇 Nitro 1.088s (+0.9%) 2.007s (~) 0.919s 10 1.00x
💻 Local Express 1.091s (+0.5%) 2.007s (~) 0.916s 10 1.00x
💻 Local Next.js (Turbopack) 1.093s (~) 2.006s (~) 0.913s 10 1.00x
🐘 Postgres Nitro 1.103s (~) 2.011s (~) 0.908s 10 1.01x
🐘 Postgres Express ⚠️ missing - - - -
🐘 Postgres Next.js (Turbopack) ⚠️ missing - - - -

▲ Production (Vercel)

World Framework Workflow Time Wall Time Overhead Samples vs Fastest
▲ Vercel 🥇 Nitro 1.410s (+3.6%) 2.811s (-6.8% 🟢) 1.401s 10 1.00x
▲ Vercel Express 1.439s (+1.5%) 2.811s (~) 1.372s 10 1.02x
▲ Vercel Next.js (Turbopack) 2.386s (+1.7%) 3.936s (+9.6% 🔺) 1.550s 10 1.69x

🔍 Observability: Nitro | Express | Next.js (Turbopack)

workflow with 10 sequential steps

💻 Local Development

World Framework Workflow Time Wall Time Overhead Samples vs Fastest
💻 Local 🥇 Express 10.481s (~) 11.023s (~) 0.542s 3 1.00x
🐘 Postgres Nitro 10.493s (~) 11.016s (~) 0.523s 3 1.00x
💻 Local Nitro 10.494s (~) 11.024s (~) 0.530s 3 1.00x
💻 Local Next.js (Turbopack) 10.504s (~) 11.024s (~) 0.520s 3 1.00x
🐘 Postgres Express ⚠️ missing - - - -
🐘 Postgres Next.js (Turbopack) ⚠️ missing - - - -

▲ Production (Vercel)

World Framework Workflow Time Wall Time Overhead Samples vs Fastest
▲ Vercel 🥇 Express 11.947s (+2.3%) 13.951s (~) 2.004s 3 1.00x
▲ Vercel Nitro 12.048s (+3.1%) 14.003s (+10.3% 🔺) 1.955s 3 1.01x
▲ Vercel Next.js (Turbopack) 13.088s (+1.3%) 15.184s (+7.1% 🔺) 2.097s 2 1.10x

🔍 Observability: Express | Nitro | Next.js (Turbopack)

workflow with 25 sequential steps

💻 Local Development

World Framework Workflow Time Wall Time Overhead Samples vs Fastest
💻 Local 🥇 Express 13.697s (~) 14.028s (~) 0.331s 5 1.00x
💻 Local Next.js (Turbopack) 13.765s (~) 14.027s (~) 0.262s 5 1.00x
💻 Local Nitro 13.802s (+0.7%) 14.029s (~) 0.227s 5 1.01x
🐘 Postgres Nitro 13.844s (+1.0%) 14.017s (~) 0.173s 5 1.01x
🐘 Postgres Express ⚠️ missing - - - -
🐘 Postgres Next.js (Turbopack) ⚠️ missing - - - -

▲ Production (Vercel)

World Framework Workflow Time Wall Time Overhead Samples vs Fastest
▲ Vercel 🥇 Express 16.730s (~) 18.757s (-1.0%) 2.028s 4 1.00x
▲ Vercel Nitro 17.329s (+7.1% 🔺) 19.500s (+11.8% 🔺) 2.172s 4 1.04x
▲ Vercel Next.js (Turbopack) 17.915s (~) 20.062s (+1.5%) 2.147s 4 1.07x

🔍 Observability: Express | Nitro | Next.js (Turbopack)

workflow with 50 sequential steps

💻 Local Development

World Framework Workflow Time Wall Time Overhead Samples vs Fastest
💻 Local 🥇 Express 12.290s (+0.6%) 13.026s (~) 0.736s 7 1.00x
💻 Local Nitro 12.321s (+0.8%) 13.026s (~) 0.705s 7 1.00x
🐘 Postgres Nitro 12.329s (~) 13.018s (~) 0.688s 7 1.00x
💻 Local Next.js (Turbopack) 12.374s (+1.1%) 13.025s (~) 0.651s 7 1.01x
🐘 Postgres Express ⚠️ missing - - - -
🐘 Postgres Next.js (Turbopack) ⚠️ missing - - - -

▲ Production (Vercel)

World Framework Workflow Time Wall Time Overhead Samples vs Fastest
▲ Vercel 🥇 Express 17.712s (+2.4%) 19.860s (+3.5%) 2.148s 5 1.00x
▲ Vercel Nitro 18.356s (+7.5% 🔺) 20.602s (+9.7% 🔺) 2.246s 5 1.04x
▲ Vercel Next.js (Turbopack) 20.467s (+3.9%) 22.487s (+3.7%) 2.020s 5 1.16x

🔍 Observability: Express | Nitro | Next.js (Turbopack)

Promise.all with 10 concurrent steps

💻 Local Development

World Framework Workflow Time Wall Time Overhead Samples vs Fastest
🐘 Postgres 🥇 Nitro 1.188s (~) 2.007s (~) 0.820s 15 1.00x
💻 Local Nitro 1.416s (+0.6%) 2.007s (~) 0.591s 15 1.19x
💻 Local Next.js (Turbopack) 1.442s (+2.5%) 2.006s (~) 0.564s 15 1.21x
💻 Local Express 1.443s (~) 2.007s (~) 0.563s 15 1.22x
🐘 Postgres Express ⚠️ missing - - - -
🐘 Postgres Next.js (Turbopack) ⚠️ missing - - - -

▲ Production (Vercel)

World Framework Workflow Time Wall Time Overhead Samples vs Fastest
▲ Vercel 🥇 Nitro 2.468s (+7.9% 🔺) 4.345s (+20.6% 🔺) 1.878s 7 1.00x
▲ Vercel Express 2.518s (+10.8% 🔺) 4.190s (+7.4% 🔺) 1.672s 8 1.02x
▲ Vercel Next.js (Turbopack) 6.258s (+113.0% 🔺) 7.975s (+71.9% 🔺) 1.718s 4 2.54x

🔍 Observability: Nitro | Express | Next.js (Turbopack)

Promise.all with 25 concurrent steps

💻 Local Development

World Framework Workflow Time Wall Time Overhead Samples vs Fastest
🐘 Postgres 🥇 Nitro 1.342s (-4.1%) 2.509s (+1.6%) 1.168s 12 1.00x
💻 Local Next.js (Turbopack) 2.298s (-7.7% 🟢) 3.009s (-3.2%) 0.711s 10 1.71x
💻 Local Nitro 2.350s (+1.3%) 3.009s (~) 0.658s 10 1.75x
💻 Local Express 2.539s (-4.4%) 3.110s (~) 0.571s 10 1.89x
🐘 Postgres Express ⚠️ missing - - - -
🐘 Postgres Next.js (Turbopack) ⚠️ missing - - - -

▲ Production (Vercel)

World Framework Workflow Time Wall Time Overhead Samples vs Fastest
▲ Vercel 🥇 Nitro 2.426s (-4.1%) 4.063s (+14.2% 🔺) 1.637s 8 1.00x
▲ Vercel Express 2.914s (+11.8% 🔺) 4.792s (+16.4% 🔺) 1.878s 7 1.20x
▲ Vercel Next.js (Turbopack) 5.001s (+50.2% 🔺) 6.964s (+41.9% 🔺) 1.963s 5 2.06x

🔍 Observability: Nitro | Express | Next.js (Turbopack)

Promise.all with 50 concurrent steps

💻 Local Development

World Framework Workflow Time Wall Time Overhead Samples vs Fastest
🐘 Postgres 🥇 Nitro 1.605s (-1.4%) 4.137s (~) 2.532s 8 1.00x
💻 Local Next.js (Turbopack) 3.976s (-15.4% 🟢) 5.014s (-9.1% 🟢) 1.038s 6 2.48x
💻 Local Nitro 4.164s (-3.0%) 5.182s (+6.4% 🔺) 1.018s 6 2.59x
💻 Local Express 4.173s (-5.5% 🟢) 5.180s (~) 1.007s 6 2.60x
🐘 Postgres Express ⚠️ missing - - - -
🐘 Postgres Next.js (Turbopack) ⚠️ missing - - - -

▲ Production (Vercel)

World Framework Workflow Time Wall Time Overhead Samples vs Fastest
▲ Vercel 🥇 Nitro 2.851s (+0.8%) 4.577s (+1.5%) 1.726s 7 1.00x
▲ Vercel Express 3.675s (+25.9% 🔺) 5.450s (+24.1% 🔺) 1.775s 6 1.29x
▲ Vercel Next.js (Turbopack) 4.680s (+18.4% 🔺) 6.613s (+14.6% 🔺) 1.933s 5 1.64x

🔍 Observability: Nitro | Express | Next.js (Turbopack)

Promise.race with 10 concurrent steps

💻 Local Development

World Framework Workflow Time Wall Time Overhead Samples vs Fastest
🐘 Postgres 🥇 Nitro 1.199s (~) 2.007s (~) 0.808s 15 1.00x
💻 Local Express 1.450s (~) 2.007s (~) 0.557s 15 1.21x
💻 Local Next.js (Turbopack) 1.461s (-2.6%) 2.007s (~) 0.546s 15 1.22x
💻 Local Nitro 1.475s (+4.3%) 2.007s (~) 0.532s 15 1.23x
🐘 Postgres Express ⚠️ missing - - - -
🐘 Postgres Next.js (Turbopack) ⚠️ missing - - - -

▲ Production (Vercel)

World Framework Workflow Time Wall Time Overhead Samples vs Fastest
▲ Vercel 🥇 Nitro 2.098s (+10.4% 🔺) 3.818s (+14.1% 🔺) 1.720s 8 1.00x
▲ Vercel Express 2.134s (+10.4% 🔺) 3.913s (+7.0% 🔺) 1.779s 8 1.02x
▲ Vercel Next.js (Turbopack) 3.277s (+10.2% 🔺) 5.159s (+9.7% 🔺) 1.882s 6 1.56x

🔍 Observability: Nitro | Express | Next.js (Turbopack)

Promise.race with 25 concurrent steps

💻 Local Development

World Framework Workflow Time Wall Time Overhead Samples vs Fastest
🐘 Postgres 🥇 Nitro 1.462s (+10.9% 🔺) 2.510s (+25.0% 🔺) 1.047s 12 1.00x
💻 Local Nitro 2.472s (+1.2%) 3.008s (~) 0.537s 10 1.69x
💻 Local Express 2.627s (+5.6% 🔺) 3.110s (+3.3%) 0.482s 10 1.80x
💻 Local Next.js (Turbopack) 2.708s (-3.6%) 3.210s (-4.0%) 0.502s 10 1.85x
🐘 Postgres Express ⚠️ missing - - - -
🐘 Postgres Next.js (Turbopack) ⚠️ missing - - - -

▲ Production (Vercel)

World Framework Workflow Time Wall Time Overhead Samples vs Fastest
▲ Vercel 🥇 Nitro 2.517s (+14.6% 🔺) 4.320s (+23.2% 🔺) 1.803s 7 1.00x
▲ Vercel Express 2.677s (-13.7% 🟢) 4.575s (~) 1.898s 7 1.06x
▲ Vercel Next.js (Turbopack) 3.861s (+22.4% 🔺) 5.332s (+17.5% 🔺) 1.471s 6 1.53x

🔍 Observability: Nitro | Express | Next.js (Turbopack)

Promise.race with 50 concurrent steps

💻 Local Development

World Framework Workflow Time Wall Time Overhead Samples vs Fastest
🐘 Postgres 🥇 Nitro 1.668s (+2.0%) 4.589s (+6.7% 🔺) 2.921s 7 1.00x
💻 Local Next.js (Turbopack) 5.890s (+9.0% 🔺) 6.215s (+3.4%) 0.326s 5 3.53x
💻 Local Express 5.943s (+66.6% 🔺) 6.414s (+28.0% 🔺) 0.471s 5 3.56x
💻 Local Nitro 6.046s (+9.5% 🔺) 6.620s (+10.0% 🔺) 0.574s 5 3.63x
🐘 Postgres Express ⚠️ missing - - - -
🐘 Postgres Next.js (Turbopack) ⚠️ missing - - - -

▲ Production (Vercel)

World Framework Workflow Time Wall Time Overhead Samples vs Fastest
▲ Vercel 🥇 Nitro 3.455s (+35.6% 🔺) 5.558s (+46.0% 🔺) 2.103s 6 1.00x
▲ Vercel Express 3.893s (+46.2% 🔺) 6.280s (+41.6% 🔺) 2.387s 6 1.13x
▲ Vercel Next.js (Turbopack) 4.794s (+6.3% 🔺) 6.647s (+8.2% 🔺) 1.854s 5 1.39x

🔍 Observability: Nitro | Express | Next.js (Turbopack)

workflow with 10 sequential data payload steps (10KB)

💻 Local Development

World Framework Workflow Time Wall Time Overhead Samples vs Fastest
🐘 Postgres 🥇 Nitro 0.582s (-3.2%) 1.023s (~) 0.441s 59 1.00x
💻 Local Express 0.632s (+4.4%) 1.022s (+1.7%) 0.390s 59 1.09x
💻 Local Next.js (Turbopack) 0.634s (+5.9% 🔺) 1.005s (~) 0.371s 60 1.09x
💻 Local Nitro 0.651s (+11.5% 🔺) 1.005s (~) 0.354s 60 1.12x
🐘 Postgres Express ⚠️ missing - - - -
🐘 Postgres Next.js (Turbopack) ⚠️ missing - - - -

▲ Production (Vercel)

World Framework Workflow Time Wall Time Overhead Samples vs Fastest
▲ Vercel 🥇 Nitro 2.619s (+0.5%) 4.361s (+8.7% 🔺) 1.742s 14 1.00x
▲ Vercel Express 2.680s (+7.7% 🔺) 4.398s (+10.8% 🔺) 1.718s 14 1.02x
▲ Vercel Next.js (Turbopack) 4.718s (+16.4% 🔺) 6.698s (+18.3% 🔺) 1.979s 10 1.80x

🔍 Observability: Nitro | Express | Next.js (Turbopack)

workflow with 25 sequential data payload steps (10KB)

💻 Local Development

World Framework Workflow Time Wall Time Overhead Samples vs Fastest
🐘 Postgres 🥇 Nitro 1.432s (+2.8%) 2.030s (~) 0.598s 45 1.00x
💻 Local Express 1.554s (+4.1%) 2.007s (~) 0.452s 45 1.09x
💻 Local Next.js (Turbopack) 1.591s (+1.1%) 2.006s (~) 0.415s 45 1.11x
💻 Local Nitro 1.612s (+11.4% 🔺) 2.007s (~) 0.395s 45 1.13x
🐘 Postgres Express ⚠️ missing - - - -
🐘 Postgres Next.js (Turbopack) ⚠️ missing - - - -

▲ Production (Vercel)

World Framework Workflow Time Wall Time Overhead Samples vs Fastest
▲ Vercel 🥇 Express 6.154s (+5.7% 🔺) 7.932s (+6.0% 🔺) 1.778s 12 1.00x
▲ Vercel Nitro 6.364s (+9.0% 🔺) 8.147s (+10.4% 🔺) 1.783s 12 1.03x
▲ Vercel Next.js (Turbopack) 9.697s (+17.5% 🔺) 11.486s (+19.8% 🔺) 1.789s 8 1.58x

🔍 Observability: Express | Nitro | Next.js (Turbopack)

workflow with 50 sequential data payload steps (10KB)

💻 Local Development

World Framework Workflow Time Wall Time Overhead Samples vs Fastest
🐘 Postgres 🥇 Nitro 2.728s (-4.2%) 3.058s (-5.0% 🟢) 0.330s 40 1.00x
💻 Local Express 3.457s (+3.7%) 4.076s (+1.7%) 0.620s 30 1.27x
💻 Local Next.js (Turbopack) 3.470s (+1.1%) 4.010s (~) 0.540s 30 1.27x
💻 Local Nitro 3.582s (+12.7% 🔺) 4.077s (+3.3%) 0.495s 30 1.31x
🐘 Postgres Express ⚠️ missing - - - -
🐘 Postgres Next.js (Turbopack) ⚠️ missing - - - -

▲ Production (Vercel)

World Framework Workflow Time Wall Time Overhead Samples vs Fastest
▲ Vercel 🥇 Nitro 13.016s (+13.3% 🔺) 14.995s (+16.0% 🔺) 1.979s 9 1.00x
▲ Vercel Express 13.782s (+17.9% 🔺) 16.010s (+15.7% 🔺) 2.227s 9 1.06x
▲ Vercel Next.js (Turbopack) 17.450s (+1.8%) 19.654s (+5.1% 🔺) 2.204s 7 1.34x

🔍 Observability: Nitro | Express | Next.js (Turbopack)

workflow with 10 concurrent data payload steps (10KB)

💻 Local Development

World Framework Workflow Time Wall Time Overhead Samples vs Fastest
🐘 Postgres 🥇 Nitro 0.231s (+4.5%) 1.006s (~) 0.775s 60 1.00x
💻 Local Nitro 0.555s (+8.3% 🔺) 1.005s (~) 0.450s 60 2.40x
💻 Local Express 0.575s (+11.3% 🔺) 1.022s (+1.7%) 0.447s 59 2.49x
💻 Local Next.js (Turbopack) 0.659s (+2.6%) 1.022s (~) 0.363s 59 2.85x
🐘 Postgres Express ⚠️ missing - - - -
🐘 Postgres Next.js (Turbopack) ⚠️ missing - - - -

▲ Production (Vercel)

World Framework Workflow Time Wall Time Overhead Samples vs Fastest
▲ Vercel 🥇 Nitro 1.122s (+2.4%) 2.899s (+20.7% 🔺) 1.777s 21 1.00x
▲ Vercel Express 1.187s (+5.4% 🔺) 2.756s (+4.9%) 1.569s 22 1.06x
▲ Vercel Next.js (Turbopack) 2.459s (+25.6% 🔺) 3.888s (+15.8% 🔺) 1.429s 16 2.19x

🔍 Observability: Nitro | Express | Next.js (Turbopack)

workflow with 25 concurrent data payload steps (10KB)

💻 Local Development

World Framework Workflow Time Wall Time Overhead Samples vs Fastest
🐘 Postgres 🥇 Nitro 0.363s (+3.6%) 1.017s (+1.1%) 0.654s 89 1.00x
💻 Local Express 2.528s (~) 3.010s (-1.1%) 0.482s 30 6.97x
💻 Local Nitro 2.587s (+2.4%) 3.010s (~) 0.422s 30 7.13x
💻 Local Next.js (Turbopack) 2.636s (-4.0%) 3.008s (-4.4%) 0.372s 30 7.27x
🐘 Postgres Express ⚠️ missing - - - -
🐘 Postgres Next.js (Turbopack) ⚠️ missing - - - -

▲ Production (Vercel)

World Framework Workflow Time Wall Time Overhead Samples vs Fastest
▲ Vercel 🥇 Express 1.515s (+6.3% 🔺) 2.971s (-2.6%) 1.456s 31 1.00x
▲ Vercel Nitro 1.920s (+45.1% 🔺) 3.763s (+51.1% 🔺) 1.842s 24 1.27x
▲ Vercel Next.js (Turbopack) 3.201s (+23.6% 🔺) 5.192s (+27.9% 🔺) 1.991s 18 2.11x

🔍 Observability: Express | 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 🥇 Nitro 0.593s (+3.5%) 1.207s (+12.0% 🔺) 0.613s 100 1.00x
💻 Local Nitro 5.514s (-5.8% 🟢) 8.954s (+3.0%) 3.440s 14 9.29x
💻 Local Express 5.711s (-4.5%) 8.559s (+0.8%) 2.848s 15 9.62x
💻 Local Next.js (Turbopack) 6.180s (-3.9%) 9.097s (-1.6%) 2.917s 14 10.42x
🐘 Postgres Express ⚠️ missing - - - -
🐘 Postgres Next.js (Turbopack) ⚠️ missing - - - -

▲ Production (Vercel)

World Framework Workflow Time Wall Time Overhead Samples vs Fastest
▲ Vercel 🥇 Nitro 1.937s (+16.3% 🔺) 3.979s (+12.4% 🔺) 2.042s 31 1.00x
▲ Vercel Express 2.044s (+27.3% 🔺) 3.983s (+9.5% 🔺) 1.939s 31 1.05x
▲ Vercel Next.js (Turbopack) 20.065s (+377.6% 🔺) 21.899s (+282.3% 🔺) 1.834s 19 10.36x

🔍 Observability: Nitro | Express | Next.js (Turbopack)

Stream Benchmarks (includes TTFB metrics)
workflow with stream

💻 Local Development

World Framework Workflow Time TTFB Slurp Wall Time Overhead Samples vs Fastest
💻 Local 🥇 Next.js (Turbopack) 1.151s (+1.0%) 1.962s (~) 0.012s (+17.5% 🔺) 2.019s (~) 0.868s 10 1.00x
💻 Local Express 1.164s (~) 2.004s (~) 0.012s (+7.9% 🔺) 2.020s (~) 0.856s 10 1.01x
💻 Local Nitro 1.164s (+0.8%) 2.004s (~) 0.012s (+16.2% 🔺) 2.019s (~) 0.855s 10 1.01x
🐘 Postgres Nitro 1.166s (~) 1.995s (~) 0.001s (+16.7% 🔺) 2.013s (~) 0.847s 10 1.01x
🐘 Postgres Express ⚠️ missing - - - - -
🐘 Postgres Next.js (Turbopack) ⚠️ missing - - - - -

▲ Production (Vercel)

World Framework Workflow Time TTFB Slurp Wall Time Overhead Samples vs Fastest
▲ Vercel 🥇 Nitro 1.993s (+4.5%) 3.849s (+30.0% 🔺) 5.380s (+192.5% 🔺) 9.769s (+87.1% 🔺) 7.776s 10 1.00x
▲ Vercel Express 2.099s (+11.0% 🔺) 4.137s (+27.8% 🔺) 5.377s (+228.3% 🔺) 10.039s (+87.8% 🔺) 7.940s 10 1.05x
▲ Vercel Next.js (Turbopack) 3.505s (+10.0% 🔺) 4.567s (+30.6% 🔺) 4.849s (+233.0% 🔺) 10.605s (+64.8% 🔺) 7.100s 10 1.76x

🔍 Observability: Nitro | Express | 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.569s (-0.8%) 2.005s (-1.7%) 0.014s (+7.7% 🔺) 2.023s (-1.8%) 0.453s 30 1.00x
💻 Local Express 1.572s (~) 2.005s (~) 0.013s (+6.2% 🔺) 2.022s (~) 0.450s 30 1.00x
🐘 Postgres Nitro 1.585s (-2.8%) 2.001s (~) 0.005s (-0.6%) 2.025s (~) 0.441s 30 1.01x
💻 Local Next.js (Turbopack) 1.589s (-0.8%) 1.965s (~) 0.013s (+3.0%) 2.021s (~) 0.433s 30 1.01x
🐘 Postgres Express ⚠️ missing - - - - -
🐘 Postgres Next.js (Turbopack) ⚠️ missing - - - - -

▲ Production (Vercel)

World Framework Workflow Time TTFB Slurp Wall Time Overhead Samples vs Fastest
▲ Vercel 🥇 Nitro 5.540s (-2.6%) 8.553s (+29.7% 🔺) 0.086s (-63.2% 🟢) 9.157s (+23.5% 🔺) 3.617s 7 1.00x
▲ Vercel Express 5.757s (+6.1% 🔺) 8.035s (+13.9% 🔺) 0.245s (+9.7% 🔺) 8.784s (+12.9% 🔺) 3.026s 7 1.04x
▲ Vercel Next.js (Turbopack) 10.430s (+9.7% 🔺) 11.416s (+8.3% 🔺) 0.256s (+17.2% 🔺) 12.914s (+11.8% 🔺) 2.484s 5 1.88x

🔍 Observability: Nitro | Express | Next.js (Turbopack)

10 parallel streams (1MB each)

💻 Local Development

World Framework Workflow Time TTFB Slurp Wall Time Overhead Samples vs Fastest
🐘 Postgres 🥇 Nitro 0.770s (-9.1% 🟢) 1.042s (-7.1% 🟢) 0.000s (+364.9% 🔺) 1.069s (-6.4% 🟢) 0.299s 57 1.00x
💻 Local Next.js (Turbopack) 1.207s (-13.8% 🟢) 1.902s (-3.8%) 0.000s (-69.4% 🟢) 1.942s (-3.7%) 0.735s 31 1.57x
💻 Local Express 1.247s (-8.0% 🟢) 1.822s (-5.0% 🟢) 0.000s (+9.1% 🔺) 1.825s (-5.0% 🟢) 0.578s 33 1.62x
💻 Local Nitro 1.268s (-6.0% 🟢) 1.910s (-2.0%) 0.000s (+126.0% 🔺) 1.913s (-2.0%) 0.645s 32 1.65x
🐘 Postgres Express ⚠️ missing - - - - -
🐘 Postgres Next.js (Turbopack) ⚠️ missing - - - - -

▲ Production (Vercel)

World Framework Workflow Time TTFB Slurp Wall Time Overhead Samples vs Fastest
▲ Vercel 🥇 Nitro 3.020s (-26.5% 🟢) 4.736s (-9.9% 🟢) 0.000s (+Infinity% 🔺) 5.199s (-9.1% 🟢) 2.179s 12 1.00x
▲ Vercel Express 3.163s (-39.5% 🟢) 4.967s (-24.9% 🟢) 0.001s (+118.2% 🔺) 5.461s (-23.5% 🟢) 2.298s 11 1.05x
▲ Vercel Next.js (Turbopack) 5.428s (+20.7% 🔺) 6.351s (+17.5% 🔺) 0.000s (NaN%) 7.672s (+24.3% 🔺) 2.244s 8 1.80x

🔍 Observability: Nitro | Express | 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 🥇 Nitro 1.626s (-8.7% 🟢) 2.216s (-8.3% 🟢) 0.000s (NaN%) 2.232s (-8.3% 🟢) 0.605s 27 1.00x
💻 Local Express 3.000s (-9.7% 🟢) 3.655s (-6.4% 🟢) 0.000s (+119.6% 🔺) 3.658s (-6.4% 🟢) 0.658s 17 1.84x
💻 Local Nitro 3.017s (-7.0% 🟢) 3.537s (-9.4% 🟢) 0.000s (-81.2% 🟢) 3.540s (-9.4% 🟢) 0.523s 17 1.86x
💻 Local Next.js (Turbopack) 3.078s (-11.0% 🟢) 3.558s (-10.8% 🟢) 0.000s (-84.4% 🟢) 3.600s (-10.7% 🟢) 0.522s 17 1.89x
🐘 Postgres Express ⚠️ missing - - - - -
🐘 Postgres Next.js (Turbopack) ⚠️ missing - - - - -

▲ Production (Vercel)

World Framework Workflow Time TTFB Slurp Wall Time Overhead Samples vs Fastest
▲ Vercel 🥇 Express 4.674s (+4.1%) 6.379s (+12.0% 🔺) 0.000s (NaN%) 6.822s (+10.7% 🔺) 2.148s 9 1.00x
▲ Vercel Nitro 4.937s (+13.5% 🔺) 6.368s (+21.3% 🔺) 0.000s (+Infinity% 🔺) 6.849s (+20.9% 🔺) 1.913s 9 1.06x
▲ Vercel Next.js (Turbopack) 7.415s (+0.7%) 8.643s (+10.7% 🔺) 0.000s (+Infinity% 🔺) 9.521s (+6.4% 🔺) 2.106s 7 1.59x

🔍 Observability: Express | Nitro | Next.js (Turbopack)

Summary

Fastest Framework by World

Winner determined by most benchmark wins

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

Winner determined by most benchmark wins

Framework 🥇 Fastest World Wins
Express 💻 Local 17/21
Next.js (Turbopack) 💻 Local 20/21
Nitro 🐘 Postgres 15/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)
  • 🌐 Platformatic: Community world (local development)

📋 View full workflow run

@NathanColosimo NathanColosimo force-pushed the codex/skip-sveltekit-prepare-ci branch from 092d47c to bfc4e9f Compare July 8, 2026 18:05
@NathanColosimo NathanColosimo changed the title Skip SvelteKit prepare sync during CI installs Remove SvelteKit prepare lifecycle hook Jul 8, 2026
@NathanColosimo NathanColosimo force-pushed the codex/skip-sveltekit-prepare-ci branch from bfc4e9f to 91b4893 Compare July 8, 2026 18:09
@NathanColosimo NathanColosimo marked this pull request as ready for review July 8, 2026 20:08
@NathanColosimo NathanColosimo requested review from a team and ijjk as code owners July 8, 2026 20:08
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.

1 participant