pub fn backoff(attempt: u32, rng: &mut impl RngCore) -> Duration
Compute backoff for attempt index (0-based). exp 1s→2s→4s…, jitter ±20%, cap 5min.