Documentation menu

Operate

Reading the record

How to follow a run end to end, whatever the outcome.

The record is the account of what a run did, in order, from the moment it started to however it ended. Reading it is the main way to understand whether an active Environment and its Agent revisions are behaving the way you expect.

What you see

Open a run and you see a timeline: one line per operation the agent called, in the order it called them. Each line has an icon for the kind of action it was — creating something, looking something up, sending a notification, approving or rejecting a step — and a short sentence describing what happened, with the actual values filled in. "Created assignment for profile 8f2a… on project 3c91…", "Recorded skill 91bd… on assignment 4e02…", "Listed hearing question templates" — the sentence names the record the operation touched and, where relevant, the identifiers or values involved, rather than only the operation's name. Every operation a definition declares carries its own line like this, so nothing that ran is missing from the timeline and nothing on the timeline is guesswork about what an operation probably did.

The record does not summarize or interpret beyond that. It shows what happened, in the order it happened, with enough detail that you do not have to take the outcome on faith.

A completed run

For a run that finished cleanly, the timeline shows every operation that ran, one line after another, ending with whatever the last operation produced. There is nothing further to act on; the record is there for confirming that the process did what it was supposed to, or for tracing back through afterward if a downstream result looks wrong.

A run that waited

A run that stopped for approval shows the same lines up to the point it paused, then the operation it was waiting on. While it is still waiting, that same entry appears in Approvals. Once someone decides, the timeline shows who decided and when, and whether the operation went on to happen or was stopped — and if it went on, the run's later lines, if any, continue below it. If it was stopped, the run continues from that point knowing the operation did not happen, and its later lines reflect that.

A run that was blocked

A run that a rule refused shows the same way as any other: the lines leading up to the refused operation, then a line for the refusal itself, naming the specific reason it did not go through. Nothing about the record marks this as an error state — a block is the rule doing what it was written to do, and the record treats it with the same weight as a line that completed normally. If a block turns out to be wrong for the case at hand, that is a reason to revisit the rule, not the run. See Revising a definition.

Why it can be trusted

The record is append-only. Once a line is written, it cannot be edited or removed — later information about a run is added as new entries, never by changing what is already there. This holds for runs still in progress as much as for finished ones, which is what makes the record usable as a source of truth rather than a log that could have been cleaned up after the fact.

API equivalents

Everything described here is also reachable through the API. A run and its lifecycle live under Agent Runs. Each timeline line comes from an underlying operation call, listed under Operation Invocations. A line for an operation that is waiting on a person, and the decision once it is made, is listed under Operation Approvals.

Related