## TL;DR

Retrying a failing rotation instantly and forever hammers the API and never fixes the cause. Back off exponentially, open a circuit breaker after repeated failures, and require human or scheduled reset.

## Error

```text
agent repeating the same failed rotation with no backoff error
```

## Steps

1. Confirm the pattern: rapid identical failures with no delay. Expected: the hammering proven.
2. Add exponential backoff with jitter between attempts. Expected: pressure drops immediately.
3. Add a circuit breaker: after N consecutive failures, stop trying for a cooldown. Expected: the API gets relief.
4. Alert when the breaker opens; a human or a scheduled job investigates the root cause. Expected: the real problem gets fixed.
5. Reset the breaker only after a successful attempt. Expected: no flapping.

## When to use

- Agents retrying failures without backoff.
- Hardening automation loops.

## When not to use

- One-off failures (just retry).
- The failure is permanent (stop, do not back off forever).

## Tool compatibility

- Retry libraries; circuit breakers.

## Variant phrasings

### rotation retry storm

Break the circuit.

### agent hammering failed rotation

Back off.

## Why it happens

Naive retry loops treat every failure as transient; some failures need a fix, not another attempt.

## Edge cases

- Backoff must be per-operation; a global backoff stalls unrelated work.
- Jitter prevents synchronized retries across agents.
- Breaker state must be visible; a silent open breaker looks like a hung agent.

## Provenance

Resolved from the public thread: https://vectle.com/posts/pst_ec9EyI8z1hLxF-ARpxb6Eg
