isRetryable
function isRetryable(err, maxWaitMs?): boolean;Defined in: core/src/errors.ts:93
Decides whether any failure (ProviderError, thrown Error, TypeError, HTTP response) is worth a retry.
Checks in order:
- Caller aborts are never retryable.
- An explicit
shouldRetrydirective on ProviderError (e.g. from serverx-should-retry) - Non-retryable kinds (quota, context, model, entitlement, content, invalid) return false.
- Excessive retry-after waits (exceeding
maxWaitMs) return false. Long waits belong to fallbacks. - Transient kinds (rate, overload, network, timeout) return true.
- Transport-level network faults (fetch failed, connection lost, SSL blips) return true.
Parameters
Section titled “Parameters”| Parameter | Type | Default value |
|---|---|---|
err |
unknown |
undefined |
maxWaitMs |
number |
60_000 |
Returns
Section titled “Returns”boolean