Workflow SDK adds idempotent starts
The Workflow SDK's start() function can now admit a run and claim a hook in one atomic step, so duplicate workflow starts fail safely. This replaces the previous lookup-then-start pattern, which had a documented duplicate-start race between the lookup and the start.

Why it matters
Builders who start workflows from events such as orders, invoices, imports, or requests can rely on the token as an idempotency key, so retries and duplicate requests do not create duplicate runs. Hooks are claimed at admission, so early payloads are buffered and delivered in order, and the experimental_minRetention option keeps tokens refused after a run ends.
Who should care
Ecommerce brands, SaaS developers, and teams running background jobs or webhook-driven workflows on Vercel
What you can do
Upgrade to Workflow SDK 5.4.0, then use an order, invoice, or request ID as the token in start() and review the idempotency documentation.

