HSX_E_ROLLBACK_FAILED
Rollback did not change live traffic.
What this error means
A linked rollback could not restore live Cloudflare traffic to the target version. Traffic is unchanged: either the plan/commit was rejected by the control plane, the Cloudflare deployment create failed, or the target went live but its health probe failed and traffic was restored to the pre-rollback version. The attempt is recorded; the active pointer was NOT advanced.
When this error stops a command, hs-x exits with code 1. With --json, the failure is reported as a structured error whose code field is HSX_E_ROLLBACK_FAILED — stable to match on in scripts and agents.
Likely causes
- The target deploy has no recorded Cloudflare Worker version (history-only) and cannot be a rollback target
- The target bindings differ from the current deploy (re-run with --force after reviewing compatibility)
- Cloudflare rejected the deployment create (version not found/not deployable, auth, or API error)
- The rolled-back version went live but failed its health probe, so traffic was restored
How to fix it
- Read the recorded status/detail in the error output (failed vs probe-failed-restored)
- Roll forward with a fresh healthy deploy instead of rolling back to an unhealthy version
- Pass --force to override the non-adjacent / binding-compatibility gate when you have reviewed it
Still stuck? Re-run the command with --debug for the wire-level detail, or hs-x doctor to check accounts, link state, and connectivity in one pass.