Overview
Every scan produces a run record that moves through a small, predictable state machine. The state is the single source of truth for whether results are trustworthy, and no dashboard widget shows numbers from a non-completed run.
Run lifecycle
Runs move forward only — there is no reverse transition. A run that hits warnings or failed stays in that terminal state; a retry creates a new run.
- Queued
- Accepted, waiting for a worker slot.
- Running
- Actively querying models and parsing responses.
- Completed
- All prompts succeeded; score is canonical.
- Warnings
- Score is usable but some prompts were skipped.
- Failed
- Too many prompts failed; score is not shown.
Failure handling
Individual prompt failures are tolerated up to a threshold. Below the threshold the run completes with warnings; above it the run is marked failed and no score is written.
Plans are enforced by audit limits only. When an audit cannot be saved, your usage count does not increase.
Retry behavior
Warnings and failed runs can be retried from the run history page. Retries create a brand-new run record; the original is preserved for audit. Retrying does not inherit any state from the previous run.