What is an execution record?
An execution record is a persisted object created before a side effect lands. It captures:- Execution ID — a unique identifier for the action
- Tool name and parameters — exactly what the agent asked to do
- Agent ID — which agent made the call
- Idempotency key — the deduplication handle for this action
- Safety class — how Invoke classified the tool
- Timestamp and workflow context — when it happened and in what run
Why records come first
Writing the record before the side effect is the key design choice. It means:- No silent duplicates — if a second attempt arrives, Invoke checks the existing record and blocks it if the first already succeeded
- No lost context — even if the agent restarts, the execution history is intact
- No untracked actions — every risky tool call is accounted for before it happens
What you can do with execution records
Every execution record feeds into:| Feature | What it enables |
|---|---|
| Dashboard | See every agent action in real time |
| Replay | Re-run an execution against its original parameters |
| Debugging | Inspect exactly what the agent called, when, and what happened |
| Audit | Prove what your agent did and didn’t do in any run |
| Reconciliation | Resolve unknown outcomes against the committed record |
Record lifecycle
An execution record moves through these states:- created — record committed before the tool call
- attempted — tool call dispatched
- succeeded / failed / unknown — outcome from the API
- reconciled — unknown outcome resolved via live state check
- blocked — duplicate attempt stopped by idempotency enforcement
Next steps
- Reconciliation — how Invoke resolves unknown outcomes using execution records
- Traces — the full timeline attached to every execution record
- Tool Safety Classes — how safety class affects record handling