Skip to main content

Is my fleet alive?

Twenty scheduled agents and one question: did they run? Not "did the config change" — the Updated timestamp on an agent card tells you that — but whether the agent actually executed on schedule, how it went, and whether one has quietly stopped.

The freshness line​

Every card on Agents carries a second footer line, read from the agent's real run history rather than its configuration:

Last run 42 min ago · completed        next due in 5 h 18 min
Last run 7 h ago · degraded OVERDUE
Never run next due in 12 min
PieceMeaning
Last runstarted_at of the most recent execution of this agent (any trigger — schedule, API, chat).
statusThat run's status — completed, degraded, or failed — using the same three states as the run page.
next dueThe next fire time of the agent's enabled schedule, computed from its cron.
OVERDUEThe schedule is enabled, the next fire time has passed, and it has stayed passed for more than one schedule interval. A run that is a few minutes late (worker backlog, stagger) is not overdue; one that missed a whole cycle is.
Never runThe agent has a schedule but no execution has ever been recorded. Usually a schedule that was created disabled, or a worker that never picked it up.

Use the status filter's overdue value to see only the agents that need attention.

Where the numbers come from​

The list endpoint returns one run_freshness object per agent, computed in a single grouped query so a 200-agent list costs the same as a 2-agent one:

GET /api/v1/tenant-agents/
{
"name": "ops.sre.otlp-debugger",
"run_freshness": {
"last_run_at": "2026-09-09T14:02:11Z",
"last_run_status": "degraded",
"cron": "0 */6 * * *",
"next_due_at": "2026-09-09T18:00:00Z",
"overdue": false
}
}

overdue is computed server-side with the grace rule above, so a dashboard, a script and the UI all agree on what "late" means.

The dogfood fleet view​

Platform operators see the same signal on the fleet's Mission Control roster: each agent shows ran ‹when› next to its status dot, never run when its schedule has never fired, and an amber overdue pill under the same one-interval grace rule. The per-agent page's schedule rail shows the cadence itself.

What to do with an overdue agent​

  1. Open the agent → Executions. If the last run is failed, the run page's outcome header and the AI narrator say why.
  2. If there is no recent run at all, check the schedule is enabled and the worker is healthy (the config doctor covers the keys and providers the agent needs).
  3. If runs exist but are all degraded, the Couldn't do list on the run header names the read or provider that keeps failing.

Where to go next​