Retry

/retry Tier 1

Retry transient failures with a configurable backoff strategy. Three flavors: Retry (transient-only via xerr.IsTransient), RetryIf (custom predicate), RetryAll (any non-nil error — idempotent jobs only).

t=0t→Initialtransient err100msRetry 1transient err200msRetry 2transient err400msRetry 3✓ okmaxRetry=3 → 4 total invocations (1 initial + 3 retries)

Signature

action contract
.Retry(maxRetry int, backoff func(int) time.Duration) *Builder[Req, Res]