Concepts
Failover and retries
What is retried, what fails over, what does not.
- Retryable: HTTP 429/432/433, 408/504, 5xx, abort timeouts.
- Not retryable: 401/403, 4xx (except the above),
CapabilityError, bad URLs. retries(default1) is extra attempts per provider on retryable errors only.- Then the next provider in the chain runs.
onFailover(error, from, to)fires once per hop. - Timeouts use
AbortSignal, so the in-flightfetchis cancelled.