Patterns

The catalog of failure patterns behind signals, grouped into five families, with what each one means and why it matters.

Patterns are the foundation of signals. Each pattern is a named failure mode Trodo knows how to detect in your runs, spans, or UX events. When a pattern recurs past your threshold, it becomes a signal.

You don't have to wire anything up per pattern — they run automatically on the data you already send. This page is the catalog: what each pattern means and when to care. Every pattern can be turned on or off and tuned in Settings → Issue thresholds.

Tool failure

Something went wrong calling a tool. These are the most direct failures — the tool errored, stalled, or came back empty.

PatternWhat it means
Hard errorThe tool returned an unrecoverable error — a 5xx, timeout, or transport failure (connection reset). The agent can't proceed.
Authentication failureThe tool rejected the call for missing or invalid credentials (401/403). Usually expired tokens or misconfigured access.
Validation failureThe tool rejected the input for bad or missing arguments (4xx, schema errors). The agent is sending malformed requests.
Rate limit stormA burst of rate-limit errors (429 / quota) from one tool. The agent is hammering an API past its quota.
Retry exhaustionThe tool was retried up to the limit and every attempt failed. The task is stuck in a retry loop.
Silent emptyThe tool returned success but with no useful data. The agent may quietly proceed on nothing.
Latency outlierThe tool succeeded but took far longer than its usual baseline. A sign of performance degradation.

Tool misuse

The agent called tools wrongly, even when the calls themselves didn't error. These point at planning problems rather than broken tools.

PatternWhat it means
Agent loopThe agent called the same tool with the same arguments repeatedly in one run — a loop that burns budget and goes nowhere.
Tool call stormThe agent fired far too many tool calls in a single run. Often a planning failure or unbounded fan-out.
Parallel when serialTools that depend on each other's output were fired in parallel, causing race conditions or stale data.

Response quality

The conversation itself went wrong across turns — the agent kept missing the user, or answered in the wrong language.

PatternWhat it means
Rephrase loopThe user kept rephrasing the same question without getting a satisfactory answer. The agent keeps missing the intent.
Language mismatchThe agent replied in a clearly different script or language than the user wrote in.

Generation quality

The model's output has a problem — weak grounding, contradiction, dropped facts, and more. Unlike the other families, these are scored: every successful LLM node output gets seven metrics, and a metric that crosses its threshold becomes an occurrence.

PatternWhat it means
Contextual groundingThe output was only weakly supported by the context you provided. A hallucination risk.
Rule adherenceThe output broke a mechanical instruction — format, length, or a required/forbidden phrase.
Logical contradictionThe output contradicted the context or reversed a key fact.
Trajectory confabulationThe output drifted from how this LLM node usually behaves, compared to its own baseline.
Factual retentionThe output dropped hard facts from the source — IDs, numbers, dates, URLs.
Semantic echoThe output barely changed the input — a lazy near-copy of the prompt.
Refusal overreachThe model refused or deflected when it should have answered a safe request.

Generation-quality patterns are the AI Score. Because they're computed from the parts of your LLM input (the system / user / assistant / tool / context messages of the chat transcript), how you send data decides which of the seven Trodo can even compute. This is worth a page of its own — see AI Score.

UX rage

Friction in the product, captured by the browser SDK. These surface where users struggle in your interface, not inside the agent.

PatternWhat it means
Rage clickThe user clicked the same element rapidly in frustration.
Dead zoneThe user clicked elements that did nothing.
Form abandonmentThe user started a form and left before finishing.
Exit intent burstThe user bounced quickly after landing on a page.
Scroll dead-endThe user scrolled to the end of the content and left without acting.
Slow page loadThe page's main content took too long to render (slow Largest Contentful Paint).

Next

  • Thresholds — how many occurrences, over how many users, in what window turns a pattern into a signal
  • AI Score — the generation-quality patterns in depth

On this page