docs: Add durable streaming migration guide, FAQ, and content enhancements#1323
docs: Add durable streaming migration guide, FAQ, and content enhancements#1323johnlindquist wants to merge 4 commits intomainfrom
Conversation
|
📊 Benchmark Results
workflow with no steps💻 Local Development
workflow with 1 step💻 Local Development
workflow with 10 sequential steps💻 Local Development
workflow with 25 sequential steps💻 Local Development
workflow with 50 sequential steps💻 Local Development
Promise.all with 10 concurrent steps💻 Local Development
Promise.all with 25 concurrent steps💻 Local Development
Promise.all with 50 concurrent steps💻 Local Development
Promise.race with 10 concurrent steps💻 Local Development
Promise.race with 25 concurrent steps💻 Local Development
Promise.race with 50 concurrent steps💻 Local Development
workflow with 10 sequential data payload steps (10KB)💻 Local Development
workflow with 25 sequential data payload steps (10KB)💻 Local Development
workflow with 50 sequential data payload steps (10KB)💻 Local Development
workflow with 10 concurrent data payload steps (10KB)💻 Local Development
workflow with 25 concurrent data payload steps (10KB)💻 Local Development
workflow with 50 concurrent data payload steps (10KB)💻 Local Development
Stream Benchmarks (includes TTFB metrics)workflow with stream💻 Local Development
stream pipeline with 5 transform steps (1MB)💻 Local Development
10 parallel streams (1MB each)💻 Local Development
fan-out fan-in 10 streams (1MB each)💻 Local Development
SummaryFastest Framework by WorldWinner determined by most benchmark wins
Fastest World by FrameworkWinner determined by most benchmark wins
Column Definitions
Worlds:
❌ Some benchmark jobs failed:
Check the workflow run for details. |
🧪 E2E Test Results❌ Some tests failed Summary
❌ Failed Tests🌍 Community Worlds (63 failed)mongodb (3 failed):
redis (3 failed):
turso (57 failed):
Details by Category✅ ▲ Vercel Production
✅ 💻 Local Development
✅ 📦 Local Production
✅ 🐘 Local Postgres
✅ 🪟 Windows
❌ 🌍 Community Worlds
✅ 📋 Other
|
Use DurableAgent string model IDs ("anthropic/claude-haiku-4.5") instead
of AI SDK provider functions (openai("gpt-4o")) in new docs content.
- Use workflow-level getWritable() instead of wrapping in a step - DurableAgent internally creates steps, no manual "use step" needed - Use ModelMessage type with convertToModelMessages - Split workflow definition and route handler into separate files matching the pattern in ai/index.mdx
b566f42 to
faf25b5
Compare
- resumable-streams.mdx: clarify run does not need to be active to connect to a stream (per VaguelySerious) - faq/index.mdx: same correction for reconnection troubleshooting - faq/index.mdx: update deployment FAQ answer — Vercel World runs continue on their original deployment, not just "survive"
Summary
foundations/migrate-ephemeral-streaming.mdx) — Step-by-step guide for moving from ephemeral streaming to durable streaming with Workflow DevKit. Covers wrapping generation in a workflow step, exposingrunId, swapping inWorkflowChatTransport, and common gotchas.faq/index.mdx) — 13 questions covering troubleshooting (silent step failures,WorkflowChatTransportbody shape), migration (incremental adoption, what you get after migrating), compatibility (local dev, AI SDK, frameworks,DurableAgent), and advanced usage (reconnection flow, user input hooks, redeploy behavior, multiple clients).foundations/streaming.mdx— Added "Why durable streaming" section explaining the durability model vs ephemeral connections, with links to migration guide and resumable streams.ai/resumable-streams.mdx— Added common gotchas callout forWorkflowChatTransportrequest body customization viaprepareSendMessagesRequest, and local debugging tips using the Web UI.deploying/world/local-world.mdx— Added "Why local development matters" section highlighting the step debugger for catching silent failures during development.observability/index.mdx— Added debugging walkthrough for silent step failures using the Web UI, with step-by-step instructions.Context
Based on real developer feedback from a Workflow migration (async-recipes app). The feedback identified these gaps:
WorkflowChatTransportgotchas not documented near usage examplesTest plan
npm run dev)