mirror of
https://github.com/vercel/workflow.git
synced 2026-09-14 19:59:43 +08:00
631f1035a0
Review of the guidance added here turned up several claims that disagree with https://vercel.com/docs/workflows/pricing#workflow-run-limits, the page this change designates as the single source of truth. - Steps per run are capped too. The skill said "deep runs are fine — a long sequential chain of steps is not itself a problem", but the pricing page publishes a separate steps-per-run ceiling, which the v5 comparison tables already cite. Size all three axes, not two. - The ceilings are raisable. The skill said "raising the limit is not an option"; the pricing table annotates both the event and step limits with "reach out if you need a higher limit". The env-var reasoning was right, the conclusion was not. - Split threshold. Six places recommended child workflows at "tens of thousands of events". The pricing page recommends them past a few thousand, because replay slows down long before the run fails — and since the ceiling itself is tens of thousands, the old advice fired once the run was already failing. Calibrate to the degradation point. - step_retrying is optional. "A retry adds a step_retrying and another step_started" contradicted the event table eight lines above it, in the one section whose purpose is counting events. Guard test: - Resolve anchors. Renaming the Vercel World heading previously broke four inbound links with the suite still green; two new cases catch it. The section is now "Per-run limits", since it covers steps as well. - Close the literal bypass. The forbidden spellings were derived from the Local World's SDK default, which only happens to match the managed ceiling; deriving from it meant an SDK bump would silently re-point the guard. They are now literal, cover the "25K" form, and span every docs tree rather than v5 alone. - Cover sequential-and-parallel.mdx, which presents the ceiling but was missing from the list. - Replace the "~1000 steps in flight" assertion. That figure was "~100" two commits ago and has no published source; the guard now rejects unsourced steps-in-flight thresholds instead of pinning one. Skill snippets now typecheck: processItem and handle were undefined, and the bundled example was never called from a workflow. Signed-off-by: Pranay Prakash <1797812+pranaygp@users.noreply.github.com> Co-Authored-By: Pranay Prakash <1797812+pranaygp@users.noreply.github.com>