Skip to content

[WIP] Add DurableAgent deprecation notice#2101

Draft
karthikscale3 wants to merge 105 commits into
mainfrom
karthik/durable-agent-deprecation-notice
Draft

[WIP] Add DurableAgent deprecation notice#2101
karthikscale3 wants to merge 105 commits into
mainfrom
karthik/durable-agent-deprecation-notice

Conversation

@karthikscale3
Copy link
Copy Markdown
Contributor

Summary

  • Adds deprecation notices on DurableAgent across v4/v5 cookbook, API reference, streaming, and cookbook index pages
  • Recommends WorkflowAgent from @ai-sdk/workflow for new durable agent workflows
  • Updates AI SDK integration docs to prefer WorkflowAgent over DurableAgent in comparison tables and guidance
  • Adds @deprecated JSDoc on the DurableAgent class in @workflow/ai

Test plan

Made with Cursor

karthikscale3 and others added 6 commits May 15, 2026 14:22
Co-authored-by: Cursor <cursoragent@cursor.com>
Point new durable agent work to WorkflowAgent from @ai-sdk/workflow and
link the AI SDK migration guide across v4/v5 cookbook, API reference,
streaming, and source JSDoc.

Co-authored-by: Cursor <cursoragent@cursor.com>
@karthikscale3 karthikscale3 requested a review from a team as a code owner May 23, 2026 00:29
@changeset-bot
Copy link
Copy Markdown

changeset-bot Bot commented May 23, 2026

⚠️ No Changeset found

Latest commit: 9a8a73f

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

@github-actions
Copy link
Copy Markdown
Contributor

github-actions Bot commented May 23, 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 🥇 Express 0.031s (-30.7% 🟢) 1.005s (~) 0.974s 10 1.00x
💻 Local Next.js (Turbopack) 0.043s 1.006s 0.962s 10 1.41x
🐘 Postgres Nitro 0.045s (-52.9% 🟢) 1.011s (-3.1%) 0.966s 10 1.46x
🐘 Postgres Express 0.046s (-20.7% 🟢) 1.012s (~) 0.966s 10 1.50x
🐘 Postgres Next.js (Turbopack) 0.056s 1.012s 0.955s 10 1.83x
💻 Local Nitro ⚠️ missing - - - -

▲ Production (Vercel)

World Framework Workflow Time Wall Time Overhead Samples vs Fastest
▲ Vercel 🥇 Express 0.318s (+35.0% 🔺) 2.395s (+12.2% 🔺) 2.077s 10 1.00x
▲ Vercel Next.js (Turbopack) ⚠️ missing - - - -
▲ Vercel Nitro ⚠️ missing - - - -

🔍 Observability: Express

workflow with 1 step

💻 Local Development

World Framework Workflow Time Wall Time Overhead Samples vs Fastest
💻 Local 🥇 Express 1.075s (-4.5%) 2.005s (~) 0.930s 10 1.00x
🐘 Postgres Nitro 1.079s (-5.3% 🟢) 2.008s (~) 0.929s 10 1.00x
🐘 Postgres Express 1.081s (-5.7% 🟢) 2.010s (~) 0.929s 10 1.01x
💻 Local Next.js (Turbopack) 1.084s 2.006s 0.922s 10 1.01x
🐘 Postgres Next.js (Turbopack) 1.121s 2.008s 0.887s 10 1.04x
💻 Local Nitro ⚠️ missing - - - -

▲ Production (Vercel)

World Framework Workflow Time Wall Time Overhead Samples vs Fastest
▲ Vercel 🥇 Express 1.705s (-9.1% 🟢) 3.836s (+0.8%) 2.131s 10 1.00x
▲ Vercel Next.js (Turbopack) ⚠️ missing - - - -
▲ Vercel Nitro ⚠️ missing - - - -

🔍 Observability: Express

workflow with 10 sequential steps

💻 Local Development

World Framework Workflow Time Wall Time Overhead Samples vs Fastest
🐘 Postgres 🥇 Express 10.402s (-5.1% 🟢) 11.019s (~) 0.617s 3 1.00x
💻 Local Express 10.414s (-4.6%) 11.020s (~) 0.605s 3 1.00x
🐘 Postgres Nitro 10.442s (-3.9%) 11.017s (~) 0.575s 3 1.00x
💻 Local Next.js (Turbopack) 10.522s 11.023s 0.501s 3 1.01x
🐘 Postgres Next.js (Turbopack) 10.736s 11.017s 0.281s 3 1.03x
💻 Local Nitro ⚠️ missing - - - -

▲ Production (Vercel)

World Framework Workflow Time Wall Time Overhead Samples vs Fastest
▲ Vercel 🥇 Express 13.768s (-18.9% 🟢) 16.151s (-19.3% 🟢) 2.382s 2 1.00x
▲ Vercel Next.js (Turbopack) ⚠️ missing - - - -
▲ Vercel Nitro ⚠️ missing - - - -

🔍 Observability: Express

workflow with 25 sequential steps

💻 Local Development

World Framework Workflow Time Wall Time Overhead Samples vs Fastest
💻 Local 🥇 Express 13.466s (-10.0% 🟢) 14.026s (-6.7% 🟢) 0.560s 5 1.00x
🐘 Postgres Express 13.474s (-7.6% 🟢) 14.022s (-6.7% 🟢) 0.548s 5 1.00x
🐘 Postgres Nitro 13.522s (-7.4% 🟢) 14.016s (-6.7% 🟢) 0.494s 5 1.00x
💻 Local Next.js (Turbopack) 13.704s 14.029s 0.325s 5 1.02x
🐘 Postgres Next.js (Turbopack) 14.112s 15.017s 0.906s 4 1.05x
💻 Local Nitro ⚠️ missing - - - -

▲ Production (Vercel)

World Framework Workflow Time Wall Time Overhead Samples vs Fastest
▲ Vercel 🥇 Express 21.208s (-57.8% 🟢) 23.208s (-55.8% 🟢) 2.000s 3 1.00x
▲ Vercel Next.js (Turbopack) ⚠️ missing - - - -
▲ Vercel Nitro ⚠️ missing - - - -

🔍 Observability: Express

workflow with 50 sequential steps

💻 Local Development

World Framework Workflow Time Wall Time Overhead Samples vs Fastest
💻 Local 🥇 Express 11.882s (-28.4% 🟢) 12.020s (-29.4% 🟢) 0.138s 8 1.00x
🐘 Postgres Express 11.891s (-15.1% 🟢) 12.018s (-17.6% 🟢) 0.127s 8 1.00x
🐘 Postgres Nitro 12.061s (-13.6% 🟢) 12.876s (-10.0% 🟢) 0.815s 7 1.02x
💻 Local Next.js (Turbopack) 12.297s 13.024s 0.727s 7 1.03x
🐘 Postgres Next.js (Turbopack) 13.156s 14.018s 0.862s 7 1.11x
💻 Local Nitro ⚠️ missing - - - -

▲ Production (Vercel)

World Framework Workflow Time Wall Time Overhead Samples vs Fastest
▲ Vercel 🥇 Express 31.717s (-73.8% 🟢) 33.858s (-72.6% 🟢) 2.141s 3 1.00x
▲ Vercel Next.js (Turbopack) ⚠️ missing - - - -
▲ Vercel Nitro ⚠️ missing - - - -

🔍 Observability: Express

Promise.all with 10 concurrent steps

💻 Local Development

World Framework Workflow Time Wall Time Overhead Samples vs Fastest
🐘 Postgres 🥇 Express 1.139s (-9.7% 🟢) 2.007s (~) 0.869s 15 1.00x
🐘 Postgres Nitro 1.143s (-10.3% 🟢) 2.007s (~) 0.864s 15 1.00x
💻 Local Express 1.158s (-22.2% 🟢) 2.006s (~) 0.848s 15 1.02x
💻 Local Next.js (Turbopack) 1.208s 2.006s 0.798s 15 1.06x
🐘 Postgres Next.js (Turbopack) 1.211s 2.007s 0.795s 15 1.06x
💻 Local Nitro ⚠️ missing - - - -

▲ Production (Vercel)

World Framework Workflow Time Wall Time Overhead Samples vs Fastest
▲ Vercel 🥇 Express 3.297s (+15.3% 🔺) 5.069s (+9.6% 🔺) 1.772s 6 1.00x
▲ Vercel Next.js (Turbopack) ⚠️ missing - - - -
▲ Vercel Nitro ⚠️ missing - - - -

🔍 Observability: Express

Promise.all with 25 concurrent steps

💻 Local Development

World Framework Workflow Time Wall Time Overhead Samples vs Fastest
🐘 Postgres 🥇 Nitro 1.187s (-49.5% 🟢) 2.007s (-33.3% 🟢) 0.819s 15 1.00x
🐘 Postgres Express 1.206s (-48.9% 🟢) 2.007s (-33.3% 🟢) 0.801s 15 1.02x
🐘 Postgres Next.js (Turbopack) 1.337s 2.007s 0.671s 15 1.13x
💻 Local Express 1.624s (-45.0% 🟢) 2.005s (-41.9% 🟢) 0.381s 15 1.37x
💻 Local Next.js (Turbopack) 1.679s 2.005s 0.326s 15 1.41x
💻 Local Nitro ⚠️ missing - - - -

▲ Production (Vercel)

World Framework Workflow Time Wall Time Overhead Samples vs Fastest
▲ Vercel 🥇 Express 3.540s (-2.2%) 5.437s (+6.4% 🔺) 1.896s 6 1.00x
▲ Vercel Next.js (Turbopack) ⚠️ missing - - - -
▲ Vercel Nitro ⚠️ missing - - - -

🔍 Observability: Express

Promise.all with 50 concurrent steps

💻 Local Development

World Framework Workflow Time Wall Time Overhead Samples vs Fastest
🐘 Postgres 🥇 Nitro 1.283s (-63.1% 🟢) 2.007s (-49.9% 🟢) 0.724s 15 1.00x
🐘 Postgres Express 1.314s (-62.3% 🟢) 2.007s (-50.0% 🟢) 0.692s 15 1.02x
🐘 Postgres Next.js (Turbopack) 1.584s 2.008s 0.423s 15 1.23x
💻 Local Express 4.346s (-47.9% 🟢) 4.870s (-46.0% 🟢) 0.525s 7 3.39x
💻 Local Next.js (Turbopack) 4.430s 4.867s 0.437s 7 3.45x
💻 Local Nitro ⚠️ missing - - - -

▲ Production (Vercel)

World Framework Workflow Time Wall Time Overhead Samples vs Fastest
▲ Vercel 🥇 Express 5.099s (+20.3% 🔺) 6.763s (+10.4% 🔺) 1.664s 5 1.00x
▲ Vercel Next.js (Turbopack) ⚠️ missing - - - -
▲ Vercel Nitro ⚠️ missing - - - -

🔍 Observability: Express

Promise.race with 10 concurrent steps

💻 Local Development

World Framework Workflow Time Wall Time Overhead Samples vs Fastest
🐘 Postgres 🥇 Nitro 1.135s (-9.7% 🟢) 2.008s (~) 0.872s 15 1.00x
🐘 Postgres Express 1.143s (-9.1% 🟢) 2.008s (~) 0.866s 15 1.01x
🐘 Postgres Next.js (Turbopack) 1.193s 2.007s 0.814s 15 1.05x
💻 Local Express 1.218s (-35.7% 🟢) 2.005s (-15.2% 🟢) 0.787s 15 1.07x
💻 Local Next.js (Turbopack) 1.269s 2.006s 0.737s 15 1.12x
💻 Local Nitro ⚠️ missing - - - -

▲ Production (Vercel)

World Framework Workflow Time Wall Time Overhead Samples vs Fastest
▲ Vercel 🥇 Express 2.833s (+9.8% 🔺) 4.401s (+1.2%) 1.568s 7 1.00x
▲ Vercel Next.js (Turbopack) ⚠️ missing - - - -
▲ Vercel Nitro ⚠️ missing - - - -

🔍 Observability: Express

Promise.race with 25 concurrent steps

💻 Local Development

World Framework Workflow Time Wall Time Overhead Samples vs Fastest
🐘 Postgres 🥇 Nitro 1.204s (-48.5% 🟢) 2.008s (-33.3% 🟢) 0.803s 15 1.00x
🐘 Postgres Express 1.209s (-48.4% 🟢) 2.008s (-33.3% 🟢) 0.799s 15 1.00x
🐘 Postgres Next.js (Turbopack) 1.322s 2.007s 0.685s 15 1.10x
💻 Local Express 1.676s (-46.5% 🟢) 2.005s (-46.7% 🟢) 0.330s 15 1.39x
💻 Local Next.js (Turbopack) 1.892s 2.221s 0.328s 14 1.57x
💻 Local Nitro ⚠️ missing - - - -

▲ Production (Vercel)

World Framework Workflow Time Wall Time Overhead Samples vs Fastest
▲ Vercel 🥇 Express 3.510s (+10.0% 🔺) 5.400s (+12.7% 🔺) 1.890s 6 1.00x
▲ Vercel Next.js (Turbopack) ⚠️ missing - - - -
▲ Vercel Nitro ⚠️ missing - - - -

🔍 Observability: Express

Promise.race with 50 concurrent steps

💻 Local Development

World Framework Workflow Time Wall Time Overhead Samples vs Fastest
🐘 Postgres 🥇 Nitro 1.300s (-62.6% 🟢) 2.007s (-49.9% 🟢) 0.707s 15 1.00x
🐘 Postgres Express 1.336s (-61.8% 🟢) 2.008s (-49.9% 🟢) 0.672s 15 1.03x
🐘 Postgres Next.js (Turbopack) 1.586s 2.074s 0.489s 15 1.22x
💻 Local Express 4.571s (-48.1% 🟢) 5.177s (-44.2% 🟢) 0.607s 6 3.52x
💻 Local Next.js (Turbopack) 4.792s 5.178s 0.386s 6 3.69x
💻 Local Nitro ⚠️ missing - - - -

▲ Production (Vercel)

World Framework Workflow Time Wall Time Overhead Samples vs Fastest
▲ Vercel 🥇 Express 4.878s (-24.0% 🟢) 6.524s (-20.2% 🟢) 1.646s 5 1.00x
▲ Vercel Next.js (Turbopack) ⚠️ missing - - - -
▲ Vercel Nitro ⚠️ missing - - - -

🔍 Observability: Express

workflow with 10 sequential data payload steps (10KB)

💻 Local Development

World Framework Workflow Time Wall Time Overhead Samples vs Fastest
🐘 Postgres 🥇 Express 0.448s (-46.6% 🟢) 1.024s (~) 0.575s 59 1.00x
🐘 Postgres Nitro 0.452s (-45.0% 🟢) 1.006s (~) 0.555s 60 1.01x
💻 Local Express 0.482s (-51.0% 🟢) 1.004s (-6.7% 🟢) 0.522s 60 1.07x
💻 Local Next.js (Turbopack) 0.560s 1.004s 0.445s 60 1.25x
🐘 Postgres Next.js (Turbopack) 0.682s 1.006s 0.324s 60 1.52x
💻 Local Nitro ⚠️ missing - - - -

▲ Production (Vercel)

World Framework Workflow Time Wall Time Overhead Samples vs Fastest
▲ Vercel 🥇 Express 5.342s (-71.9% 🟢) 7.132s (-66.6% 🟢) 1.790s 9 1.00x
▲ Vercel Next.js (Turbopack) ⚠️ missing - - - -
▲ Vercel Nitro ⚠️ missing - - - -

🔍 Observability: Express

workflow with 25 sequential data payload steps (10KB)

💻 Local Development

World Framework Workflow Time Wall Time Overhead Samples vs Fastest
🐘 Postgres 🥇 Express 1.056s (-46.5% 🟢) 1.631s (-27.7% 🟢) 0.575s 56 1.00x
🐘 Postgres Nitro 1.088s (-43.5% 🟢) 2.007s (-4.4%) 0.919s 45 1.03x
💻 Local Express 1.171s (-61.2% 🟢) 2.005s (-44.1% 🟢) 0.834s 45 1.11x
💻 Local Next.js (Turbopack) 1.370s 2.005s 0.635s 45 1.30x
🐘 Postgres Next.js (Turbopack) 1.585s 2.007s 0.422s 45 1.50x
💻 Local Nitro ⚠️ missing - - - -

▲ Production (Vercel)

World Framework Workflow Time Wall Time Overhead Samples vs Fastest
▲ Vercel 🥇 Express 14.206s (-58.9% 🟢) 16.092s (-56.3% 🟢) 1.886s 6 1.00x
▲ Vercel Next.js (Turbopack) ⚠️ missing - - - -
▲ Vercel Nitro ⚠️ missing - - - -

🔍 Observability: Express

workflow with 50 sequential data payload steps (10KB)

💻 Local Development

World Framework Workflow Time Wall Time Overhead Samples vs Fastest
🐘 Postgres 🥇 Express 2.079s (-47.9% 🟢) 2.617s (-40.1% 🟢) 0.538s 46 1.00x
🐘 Postgres Nitro 2.433s (-40.7% 🟢) 3.166s (-31.2% 🟢) 0.733s 38 1.17x
💻 Local Express 2.587s (-71.9% 🟢) 3.007s (-70.0% 🟢) 0.420s 40 1.24x
💻 Local Next.js (Turbopack) 3.010s 3.537s 0.526s 34 1.45x
🐘 Postgres Next.js (Turbopack) 3.094s 4.009s 0.915s 30 1.49x
💻 Local Nitro ⚠️ missing - - - -

▲ Production (Vercel)

World Framework Workflow Time Wall Time Overhead Samples vs Fastest
▲ Vercel 🥇 Express 28.226s (-78.3% 🟢) 30.877s (-76.6% 🟢) 2.651s 4 1.00x
▲ Vercel Next.js (Turbopack) ⚠️ missing - - - -
▲ Vercel Nitro ⚠️ missing - - - -

🔍 Observability: Express

workflow with 10 concurrent data payload steps (10KB)

💻 Local Development

World Framework Workflow Time Wall Time Overhead Samples vs Fastest
🐘 Postgres 🥇 Express 0.179s (-36.5% 🟢) 1.006s (~) 0.827s 60 1.00x
🐘 Postgres Nitro 0.180s (-36.6% 🟢) 1.006s (~) 0.826s 60 1.00x
🐘 Postgres Next.js (Turbopack) 0.226s 1.006s 0.779s 60 1.26x
💻 Local Express 0.388s (-30.7% 🟢) 1.004s (~) 0.615s 60 2.16x
💻 Local Next.js (Turbopack) 0.493s 1.004s 0.510s 60 2.75x
💻 Local Nitro ⚠️ missing - - - -

▲ Production (Vercel)

World Framework Workflow Time Wall Time Overhead Samples vs Fastest
▲ Vercel 🥇 Express 2.139s (+9.4% 🔺) 3.937s (+8.2% 🔺) 1.798s 16 1.00x
▲ Vercel Next.js (Turbopack) ⚠️ missing - - - -
▲ Vercel Nitro ⚠️ missing - - - -

🔍 Observability: Express

workflow with 25 concurrent data payload steps (10KB)

💻 Local Development

World Framework Workflow Time Wall Time Overhead Samples vs Fastest
🐘 Postgres 🥇 Express 0.285s (-44.1% 🟢) 1.006s (~) 0.721s 90 1.00x
🐘 Postgres Nitro 0.293s (-41.0% 🟢) 1.006s (~) 0.714s 90 1.03x
🐘 Postgres Next.js (Turbopack) 0.426s 1.017s 0.591s 89 1.49x
💻 Local Express 2.015s (-19.8% 🟢) 2.534s (-15.8% 🟢) 0.519s 36 7.07x
💻 Local Next.js (Turbopack) 2.208s 2.912s 0.704s 31 7.75x
💻 Local Nitro ⚠️ missing - - - -

▲ Production (Vercel)

World Framework Workflow Time Wall Time Overhead Samples vs Fastest
▲ Vercel 🥇 Express 4.701s (+54.3% 🔺) 6.452s (+34.2% 🔺) 1.750s 14 1.00x
▲ Vercel Next.js (Turbopack) ⚠️ missing - - - -
▲ Vercel Nitro ⚠️ missing - - - -

🔍 Observability: Express

workflow with 50 concurrent data payload steps (10KB)

💻 Local Development

World Framework Workflow Time Wall Time Overhead Samples vs Fastest
🐘 Postgres 🥇 Nitro 0.597s (-24.5% 🟢) 1.006s (~) 0.409s 120 1.00x
🐘 Postgres Express 0.631s (-22.9% 🟢) 1.006s (-1.1%) 0.375s 120 1.06x
🐘 Postgres Next.js (Turbopack) 0.855s 1.023s 0.168s 118 1.43x
💻 Local Express 9.164s (-18.1% 🟢) 9.793s (-18.0% 🟢) 0.629s 13 15.35x
💻 Local Next.js (Turbopack) 10.236s 10.860s 0.624s 12 17.15x
💻 Local Nitro ⚠️ missing - - - -

▲ Production (Vercel)

World Framework Workflow Time Wall Time Overhead Samples vs Fastest
▲ Vercel 🥇 Express 15.303s (+106.2% 🔺) 17.307s (+87.2% 🔺) 2.004s 7 1.00x
▲ Vercel Next.js (Turbopack) ⚠️ missing - - - -
▲ Vercel Nitro ⚠️ missing - - - -

🔍 Observability: Express

Stream Benchmarks (includes TTFB metrics)
workflow with stream

💻 Local Development

World Framework Workflow Time TTFB Slurp Wall Time Overhead Samples vs Fastest
💻 Local 🥇 Express 1.129s (+467.2% 🔺) 2.005s (+99.6% 🔺) 0.009s (-23.1% 🟢) 2.017s (+98.1% 🔺) 0.887s 10 1.00x
🐘 Postgres Express 1.131s (+451.6% 🔺) 1.996s (+99.9% 🔺) 0.001s (-37.5% 🟢) 2.010s (+98.7% 🔺) 0.879s 10 1.00x
🐘 Postgres Nitro 1.138s (+455.1% 🔺) 2.002s (+100.3% 🔺) 0.001s (-26.7% 🟢) 2.009s (+98.7% 🔺) 0.871s 10 1.01x
💻 Local Next.js (Turbopack) 1.153s 2.003s 0.009s 2.016s 0.863s 10 1.02x
🐘 Postgres Next.js (Turbopack) 1.200s 2.002s 0.001s 2.011s 0.811s 10 1.06x
💻 Local Nitro ⚠️ missing - - - - -

▲ Production (Vercel)

World Framework Workflow Time TTFB Slurp Wall Time Overhead Samples vs Fastest
▲ Vercel 🥇 Express 2.289s (-8.6% 🟢) 3.584s (-12.4% 🟢) 13.338s (+1288.2% 🔺) 17.413s (+211.5% 🔺) 15.124s 10 1.00x
▲ Vercel Next.js (Turbopack) ⚠️ missing - - - - -
▲ Vercel Nitro ⚠️ missing - - - - -

🔍 Observability: Express

stream pipeline with 5 transform steps (1MB)

💻 Local Development

World Framework Workflow Time TTFB Slurp Wall Time Overhead Samples vs Fastest
💻 Local 🥇 Express 1.513s (+99.8% 🔺) 2.010s (+95.3% 🔺) 0.010s (+2.7%) 2.022s (+94.4% 🔺) 0.509s 30 1.00x
🐘 Postgres Express 1.523s (+141.8% 🔺) 2.001s (+98.8% 🔺) 0.004s (+9.6% 🔺) 2.026s (+98.1% 🔺) 0.503s 30 1.01x
🐘 Postgres Nitro 1.557s (+149.4% 🔺) 2.009s (+99.5% 🔺) 0.004s (-11.3% 🟢) 2.025s (+98.1% 🔺) 0.468s 30 1.03x
💻 Local Next.js (Turbopack) 1.585s 2.010s 0.010s 2.023s 0.438s 30 1.05x
🐘 Postgres Next.js (Turbopack) 1.660s 2.010s 0.004s 2.024s 0.365s 30 1.10x
💻 Local Nitro ⚠️ missing - - - - -

▲ Production (Vercel)

World Framework Workflow Time TTFB Slurp Wall Time Overhead Samples vs Fastest
▲ Vercel 🥇 Express 6.004s (-7.7% 🟢) 7.366s (-8.0% 🟢) 0.232s (-43.3% 🟢) 8.092s (-8.4% 🟢) 2.088s 8 1.00x
▲ Vercel Next.js (Turbopack) ⚠️ missing - - - - -
▲ Vercel Nitro ⚠️ missing - - - - -

🔍 Observability: Express

10 parallel streams (1MB each)

💻 Local Development

World Framework Workflow Time TTFB Slurp Wall Time Overhead Samples vs Fastest
🐘 Postgres 🥇 Nitro 0.649s (-33.1% 🟢) 1.034s (-17.1% 🟢) 0.000s (+106.9% 🔺) 1.042s (-17.2% 🟢) 0.393s 58 1.00x
🐘 Postgres Express 0.662s (-31.1% 🟢) 1.032s (-19.2% 🟢) 0.000s (+21.1% 🔺) 1.055s (-19.3% 🟢) 0.393s 57 1.02x
🐘 Postgres Next.js (Turbopack) 0.754s 1.036s 0.000s 1.060s 0.306s 57 1.16x
💻 Local Express 1.305s (+6.5% 🔺) 2.013s (~) 0.000s (-10.0% 🟢) 2.015s (~) 0.710s 30 2.01x
💻 Local Next.js (Turbopack) 1.428s 2.013s 0.000s 2.016s 0.588s 30 2.20x
💻 Local Nitro ⚠️ missing - - - - -

▲ Production (Vercel)

World Framework Workflow Time TTFB Slurp Wall Time Overhead Samples vs Fastest
▲ Vercel 🥇 Express 3.766s (+0.7%) 5.309s (+4.0%) 0.000s (+100.0% 🔺) 5.995s (+8.4% 🔺) 2.229s 11 1.00x
▲ Vercel Next.js (Turbopack) ⚠️ missing - - - - -
▲ Vercel Nitro ⚠️ missing - - - - -

🔍 Observability: Express

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

💻 Local Development

World Framework Workflow Time TTFB Slurp Wall Time Overhead Samples vs Fastest
🐘 Postgres 🥇 Express 1.250s (-29.5% 🟢) 1.998s (-8.3% 🟢) 0.000s (NaN%) 2.015s (-8.4% 🟢) 0.765s 30 1.00x
🐘 Postgres Nitro 1.386s (-22.6% 🟢) 2.103s (-1.8%) 0.000s (-3.4%) 2.112s (-2.9%) 0.726s 29 1.11x
🐘 Postgres Next.js (Turbopack) 1.489s 2.182s 0.000s 2.191s 0.701s 28 1.19x
💻 Local Next.js (Turbopack) 2.825s 3.470s 0.001s 3.475s 0.649s 18 2.26x
💻 Local Express 3.336s (-3.8%) 3.692s (-8.5% 🟢) 0.000s (-75.0% 🟢) 4.029s (~) 0.692s 15 2.67x
💻 Local Nitro ⚠️ missing - - - - -

▲ Production (Vercel)

World Framework Workflow Time TTFB Slurp Wall Time Overhead Samples vs Fastest
▲ Vercel 🥇 Express 5.904s (+28.7% 🔺) 7.464s (+23.9% 🔺) 0.000s (+Infinity% 🔺) 8.186s (+26.8% 🔺) 2.282s 8 1.00x
▲ Vercel Next.js (Turbopack) ⚠️ missing - - - - -
▲ Vercel Nitro ⚠️ missing - - - - -

🔍 Observability: Express

Summary

Fastest Framework by World

Winner determined by most benchmark wins

World 🥇 Fastest Framework Wins
💻 Local Express 20/21
🐘 Postgres Express 12/21
▲ Vercel Express 21/21
Fastest World by Framework

Winner determined by most benchmark wins

Framework 🥇 Fastest World Wins
Express 🐘 Postgres 15/21
Next.js (Turbopack) 💻 Local 11/21
Nitro 🐘 Postgres 21/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: failure
  • Postgres: success
  • Vercel: failure

Check the workflow run for details.

@github-actions
Copy link
Copy Markdown
Contributor

github-actions Bot commented May 23, 2026

🧪 E2E Test Results

Some tests failed

Summary

Passed Failed Skipped Total
❌ ▲ Vercel Production 1219 3 219 1441
✅ 💻 Local Development 1615 0 219 1834
✅ 📦 Local Production 1615 0 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 (3 failed)

nextjs-turbopack (2 failed):

  • sleepingWorkflow | wrun_01KS93Y7YM9S5FPQS2RCW512HJ | 🔍 observability
  • AbortController abortAnyInStepWorkflow: AbortSignal.any inside a step composes deserialized signals

nextjs-webpack (1 failed):

  • startFromWorkflow - calling start() directly inside a workflow function with hook communication | wrun_01KS948S0F6ZD2K80QWHPNNMHX | 🔍 observability

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 127 2 2
❌ nextjs-webpack 128 1 2
✅ nitro 105 0 26
✅ nuxt 105 0 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 131 0 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 106 0 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: success
  • Local Prod: success
  • Local Postgres: success
  • Windows: success

Check the workflow run for details.

@vercel
Copy link
Copy Markdown
Contributor

vercel Bot commented May 23, 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 23, 2026 12:33am
example-nextjs-workflow-webpack Ready Ready Preview, Comment May 23, 2026 12:33am
example-workflow Ready Ready Preview, Comment May 23, 2026 12:33am
workbench-astro-workflow Ready Ready Preview, Comment May 23, 2026 12:33am
workbench-express-workflow Ready Ready Preview, Comment May 23, 2026 12:33am
workbench-fastify-workflow Ready Ready Preview, Comment May 23, 2026 12:33am
workbench-hono-workflow Ready Ready Preview, Comment May 23, 2026 12:33am
workbench-nitro-workflow Ready Ready Preview, Comment May 23, 2026 12:33am
workbench-nuxt-workflow Ready Ready Preview, Comment May 23, 2026 12:33am
workbench-sveltekit-workflow Ready Ready Preview, Comment May 23, 2026 12:33am
workbench-tanstack-start-workflow Ready Ready Preview, Comment May 23, 2026 12:33am
workbench-vite-workflow Ready Ready Preview, Comment May 23, 2026 12:33am
workflow-docs Ready Ready Preview, Comment, Open in v0 May 23, 2026 12:33am
workflow-swc-playground Ready Ready Preview, Comment May 23, 2026 12:33am
workflow-tarballs Ready Ready Preview, Comment May 23, 2026 12:33am
workflow-web Ready Ready Preview, Comment May 23, 2026 12:33am

Copy link
Copy Markdown
Contributor

@vercel vercel Bot left a comment

Choose a reason for hiding this comment

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

Additional Suggestion:

The skills/workflow/SKILL.md file was modified (deprecation notice added for DurableAgent) but the frontmatter version was not bumped from '1.8' to '1.9', violating the repository's AGENTS.md guidelines.

Fix on Vercel

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