Skip to content
All posts

Perspective · Observability

Charts Are for Humans. Agents Want the Table.

The user hasn't changed. The question hasn't changed. What changed is how the question gets answered. A human clicks through a dashboard. An agent fans out into hundreds of retrievals. Two very different workloads on the same backend.

July 30, 2026Cardinal Team6 min read

The thesis

Same user. Different execution model.

The endpoints of the flow are unchanged. The middle got replaced by a computational process, and the backend has to hold up under it.

Interactive · today

Human
UI
Human investigation
Answer
the middle got replaced

Computational · now

Human
Agent
Hundreds of retrievals
Answer

The short version

Six places the old stack cracks under agents.

01

Charts drop numbers to fit a screen. Agents want the full table.

02

One agent session runs 100+ queries. The concurrency floor moved 100×.

03

Three seconds per query is fine for a human. In a 20-step loop, it's a minute of waiting.

04

Sampling drops 90% of traces. Agents ask for specific ones. Dropped traces come back as confident hallucinations.

05

Per-seat pricing breaks with agents. They fan out, run in parallel, and clone cheap.

06

The bill has to explain itself. Every session should tie back to a shipped PR.

01 · The load shape changed

Ten years of tools optimized for one reader.

Query language, sampling, cardinality caps, TTLs all exist to make dashboards feel fast for a person scanning them. Agents don't scan. A five-minute investigation might chain a hundred tool calls: discover_service_graph, list_services, execute_metrics_query fifteen times, execute_logs_query on the outliers, then a second pass when the first didn't fit. The old stack has the raw throughput. The shape of the load is what breaks it.

Query load shape comparison. Sparse human interactions versus dense agent bursts of tool calls.

02 · Structured over rendered

Give agents tables, not pixels.

A chart drops numbers to fit a screen. The human eye fills in the rest. LLMs cannot. Feed a model a screenshot of a P95 chart, ask if the canary regressed, and you get a plausible guess. Feed it the same data as a structured payload with baseline, current, canary, deltas, and cited traces, and the answer comes back with citations.

Context payload versus rendered chart. The same underlying data, one usable by an LLM and one not.

03 · P50 is the new p95

The latency budget flipped.

For a human, three seconds is where loading turns slow. In a 20-step agent loop, three seconds per query is a full minute before the agent can think. Alerts win the race. A dashboard tuned for the p95 does not help. Agent loops need columnar storage, tight indexes, and compute close to the data. Sub-second has to be the default return.

Latency budget comparison. The same 3-second query is fine for a human read but multiplies across a 20-step agent loop.

Knock-on effects

The economics change too.

04 · Sampling

Sampling breaks agents.

Legacy stacks sampled hard because humans couldn't read every log. Agents read specifically. They ask for the three traces from the deploy window with DEADLINE_EXCEEDED on cohort=canary. Drop those three, and the agent writes a confident, wrong summary. Full fidelity on cheap object storage keeps every trace available when a specific question asks for it.

05 · Pricing

Per-seat stops making sense.

Seat pricing assumed one human per license. Agents have sessions, token budgets, and siblings. Ten engineers on Claude Code can spin up a hundred concurrent investigations without hiring anyone. Seats become a growth tax with no ceiling. The moment agents are useful, the bill goes non-linear against the same headcount.

06 · Accountability

The bill has to explain itself.

A faster black box is still a black box. Managers keep asking what the spend produced. Every session has to tie back to a shipped piece of work with explicit confidence. Merged PRs are outcomes. Token counts are consumption metrics.

07 · Properties

Six properties. None optional.

All six have to hold. A fast API that returns three-second calls makes the loop uneconomical. If the engine only returns PNGs, the model can't cite anything. Full fidelity in a vendor silo means you can query it but never explain the bill. Miss any one, and the cost per useful answer climbs until someone shuts the pilot down.

Hex diagram showing six properties an observability layer needs to be agent-native.

Where Cardinal sits

Cardinal was built for this reader.

The MCP gateway and in-agent plugins expose typed tool calls alongside the UI. Lakerunner keeps full-fidelity telemetry on object storage in your own cloud. Agent Outcomes ties every observed session back to the PR it produced, putting spend and delivery on the same axis.