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.
| Pattern | What it means |
|---|---|
| Hard error | The tool returned an unrecoverable error — a 5xx, timeout, or transport failure (connection reset). The agent can't proceed. |
| Authentication failure | The tool rejected the call for missing or invalid credentials (401/403). Usually expired tokens or misconfigured access. |
| Validation failure | The tool rejected the input for bad or missing arguments (4xx, schema errors). The agent is sending malformed requests. |
| Rate limit storm | A burst of rate-limit errors (429 / quota) from one tool. The agent is hammering an API past its quota. |
| Retry exhaustion | The tool was retried up to the limit and every attempt failed. The task is stuck in a retry loop. |
| Silent empty | The tool returned success but with no useful data. The agent may quietly proceed on nothing. |
| Latency outlier | The 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.
| Pattern | What it means |
|---|---|
| Agent loop | The agent called the same tool with the same arguments repeatedly in one run — a loop that burns budget and goes nowhere. |
| Tool call storm | The agent fired far too many tool calls in a single run. Often a planning failure or unbounded fan-out. |
| Parallel when serial | Tools 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.
| Pattern | What it means |
|---|---|
| Rephrase loop | The user kept rephrasing the same question without getting a satisfactory answer. The agent keeps missing the intent. |
| Language mismatch | The 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.
| Pattern | What it means |
|---|---|
| Contextual grounding | The output was only weakly supported by the context you provided. A hallucination risk. |
| Rule adherence | The output broke a mechanical instruction — format, length, or a required/forbidden phrase. |
| Logical contradiction | The output contradicted the context or reversed a key fact. |
| Trajectory confabulation | The output drifted from how this LLM node usually behaves, compared to its own baseline. |
| Factual retention | The output dropped hard facts from the source — IDs, numbers, dates, URLs. |
| Semantic echo | The output barely changed the input — a lazy near-copy of the prompt. |
| Refusal overreach | The 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.
| Pattern | What it means |
|---|---|
| Rage click | The user clicked the same element rapidly in frustration. |
| Dead zone | The user clicked elements that did nothing. |
| Form abandonment | The user started a form and left before finishing. |
| Exit intent burst | The user bounced quickly after landing on a page. |
| Scroll dead-end | The user scrolled to the end of the content and left without acting. |
| Slow page load | The 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
Overview
Signals turn the raw failures in your traces into a short, ranked list of problems worth acting on. Built on patterns, gated by thresholds you control.
Thresholds
Thresholds decide when a recurring pattern becomes a signal. Set occurrences, distinct users, and a lookback window per pattern — and tune the noise to your taste.