Slide 11 of 28
Part 2 — Failure PatternsSlide 11
Slide 11 · Patterns 3 & 4
Feedback loops create runaway behavior with no natural stopping point. Resource cascades spread overload to healthy components.
Pattern 3 — Runaway Feedback Loops

A feedback loop occurs when agent A's output influences the inputs that agent A (or a peer it coordinates with) receives in subsequent cycles. When the loop is functioning normally, this is a feature — iterative refinement, self-correcting recommendations. When the loop encounters a failure, it can become a self-reinforcing cycle driving behavior to an extreme.

Classic example — pricing feedback: A pricing agent raises prices based on detected high demand. A demand analysis agent observes the higher prices and interprets them as a signal of increased desirability, increasing its demand estimate. The pricing agent raises prices again. Without a circuit breaker, the loop continues until prices reach an absurd level — the loop has no mechanism to detect that it has crossed from "responsive pricing" to "runaway behavior."

Classic example — alert storms: A monitoring agent detects a problem and sends an alert. The alert causes downstream agents to take recovery actions that generate events. Those events trigger more alerts. The monitoring agent, now overloaded with alerts, cannot distinguish the original problem from the noise it created. The alert storm consumes all available alert-processing capacity, masking the original issue.

Why agent loops are harder to break: In traditional systems, loops are often prevented by design (idempotency, change-detection guards). In agent pipelines, the loop may emerge from the natural language reasoning: the agent has no instruction telling it that its last action contributed to the current state, so it reasons about the current state as if its action hadn't occurred.

Pattern 4 — Resource Exhaustion Cascade

A slow or failing agent causes pending requests to queue at dependent agents. As the queue grows, the dependent agents increase memory usage. When dependent agents begin timing out, they retry — multiplying the load on the already-struggling upstream agent. The additional load causes more failures, which cause more retries, which cause more load.

The thundering herd: When the slow agent partially recovers and becomes available, all queued retries arrive simultaneously — "thundering herd" — potentially causing the agent to fail again under the sudden load spike. Exponential backoff with jitter (randomized retry timing) is the standard defense; without it, retry storms reliably extend outages.

← Back Patterns 5 & 6 →