ANIA Blog
Meta-Analysis · Operational Telemetry

We aggregated 311 anomalies. The dangerous failures were all disguised as success.

A meta-analysis of the control-plane anomalies raised while operating ANIA. The pattern only appears when you aggregate the whole window — one run at a time, it is invisible.

By the ANIA team8 min read

There is a temptation when you run an autonomous agent to react to each alert as it fires. We did, for a while. Then we stepped back and aggregated every anomaly the control plane raised across the same ten-week window, and the picture inverted. The failures that paged us at 3am were almost never the ones that mattered. The ones that mattered were quiet.

This is a meta-analysis in the literal sense: we took 311individual anomaly events, each one a noisy single data point, and asked which class of failure actually predicted damage. The answer was not intuitive, and it is not visible in any single log line.

What we aggregated

These are the same production numbers behind our recent post on goal self-pruning, but viewed from a different angle. Instead of asking what the agent achieved, we asked which operational signals most reliably warned us that the autonomous loop was deceiving itself.

Telemetry surface
Volume (10 wks)
Resolved
Control-plane anomalies
311
271 (~87%)
Self-governance reviews
369
365 reflections
Tracked issues
969
112 done
Goals created
484
222 achieved

The pattern that only appears in aggregate

Bucketed by failure class, the 311 anomalies split into three families. Two of them were loud and cheap. One was rare and corrosive.

Failure class
Share of anomalies
Damage risk
Loud timeouts
~58%
Low (transient)
Missed schedules
~27%
Medium
Succeeded-but-empty
~15%
High (silent)

The loud timeouts — an HTTP adapter hanging past its deadline, a heartbeat that errored out — generated the majority of the noise and the majority of the alerts. They were also the cheapest to live with. A timeout is honest: the system raised its hand and said it could not finish. Retry logic and an operator eyeball close most of them, and no wrong data ships while they happen.

The rare class was the one that mattered. A worker run that returned status succeeded, exited zero, wrote a clean log line — and mutated zero state. No file touched, no goal advanced, no evidence recorded. From the outside it looked like the loop was alive and productive. From the inside it had done nothing, and it had told nobody.

Why single-run monitoring missed it

A per-run health check asks a simple question: did this run error? The silent-success class answers “no” truthfully and moves on. That is why it survived for weeks. Every individual run was green. The damage only became visible when we compared the volume of green runs against the volume of state they actually produced — a ratio that does not exist in any single log.

This is the defining property of a meta-analysis versus a bug report. A bug report says: this run failed. A meta-analysis says: across 311 failures, the failure mode that predicts real harm is the one that never fails loudly. You cannot reach that conclusion by reading runs. You reach it by aggregating them.

The control plane that watches the watcher

The fix was to stop trusting the worker’s own success claim. Our control plane now treats a run as suspect not when it errors, but when it reports success without a corresponding evidence event — a diff, a written row, a committed file, a goal mutation. A claim is not authority. A succeeded status with no evidence is reclassified as the failure it actually is.

That single reclassification is why 271 of the 311 anomalies resolved without escalating to a human. The loud ones resolved themselves or via retry; the silent ones were caught early enough that the loop could repair them before they compounded. The ~13% that did not resolve are the ones we surface to a human, because those are the cases where the agent has genuinely exhausted its options.

The honest ratio

The same honesty that made us publish the goal-cancellation numbers applies here. Across 969 tracked issues, 112 reached done. That is roughly one in nine. The rest were blocked, superseded, or reabsorbed into a better-framed goal. We could dress that up. We will not, because the ratio is what makes the ~87% anomaly resolution rate trustworthy rather than suspicious. An autonomous system that resolved 100% of its anomalies would be a system that was not detecting the silent-success class at all.

If you operate an autonomous agent, do not alert on what is loud. Aggregate, and alert on what is absent. The failures that hurt you are the ones that report success and produce nothing.

The ANIA promise

A claim is not authority. We verify every one.

We build ANIA in the open — including the meta-analyses of our own operational telemetry. If field notes on what autonomous systems actually do in production are useful to you, follow along.

Try ANIA free