Reference · page 12 of 13
Every state, listed
The exact words Constat uses, and what each one means.
A requirement
| State | Meaning |
|---|---|
draft | Written, not yet frozen. Still editable. |
approved | The words and the envelope are frozen. Ready to be built. |
building | An attempt is running. |
implemented | The attempt finished; evidence is still arriving. |
validating | The door is open. Waiting on a person. |
verified | Accepted. A Constat was sealed. |
failed | Refused. The reason is on the record. |
withdrawn | Taken off the board. Sealed records are unaffected. |
An attempt
| State | Meaning |
|---|---|
queued | Dispatched; no runner has taken it yet. |
running | A runner has it. |
completed | The agent finished and reported. |
failed | It ended without reporting. The record says what the tool said. |
halted | Stopped at a cap, by a person, or because the runner never reported back. |
A release
| State | Meaning |
|---|---|
waiting_for_ground | Pressed while an attempt of this project was still running. It is kept, not refused, and takes itself the moment the last attempt ends. |
queued | The ground is free. Waiting for a runner to take it. |
taken | A runner has it: merging the branch, then starting your deploy. |
waiting_for_person | The default branch is protected; a pull request was opened instead. |
merged | Constat has seen the merge commit on the default branch. |
live | Observed answering at that commit. |
refused | It did not go through, and the reason is recorded. Most often the branch no longer merges. |
withdrawn | A person took the release back. Never a failure, and never confused with refused. |
A release travels in one direction, and only two states end it:
pressed ──▶ waiting_for_ground ──▶ queued ──▶ taken ──┬──▶ merged ──▶ live
(an attempt is (the ground │
still running) is free) ├──▶ waiting_for_person
└──▶ refused
withdrawn is the one way a release leaves without going through, and it is a person's own doing.
Sending accepted work round again
Work that a person accepted can still fail to reach the default branch: another attempt landed first and the branch no longer merges. The seal is untouched by that — it keeps its number, its verdict and its evidence — and the requirement page says the work is judged and not on the default branch, with one control: Send it round again.
That starts an attempt of a particular kind, called a landing. It is not a state, and it is not a fresh ask:
| An ordinary attempt | A landing |
|---|---|
| Asks for work that has not been judged | Carries work a person already accepted |
| Opens a door, and waits for a verdict | Opens no door, and is never re-judged |
| May seal a new Constat | The seal keeps its number |
| Starts from the default branch | Rebuilds that judged work on today's default branch |
If the rebuilt branch comes back green and merges cleanly, Constat releases it itself and the trail says so. If it still will not merge, it is refused in the same words as any release, and the way back round is offered again.
Evidence — what Constat observed
| Type | What it is |
|---|---|
ci_run | A run of your CI and what it concluded. |
criterion_check | What CI said about the check a criterion named. |
diff_stat | What the change actually touched. |
artifact | What CI published: the report, the pictures. |
screenshot | A screen at the moment a check passed. |
preview | A running copy of the attempt, to try. |
build | A build, where the project has one. |
scope_violation | A change outside the files the envelope allowed. |
method_substitution | The attempt used a different method than the ask named. |
manual_review | A person's own look, recorded as a person's. |
Each piece carries its source. criterion_check is never something an agent promises to produce — it is what Constat reads out of CI's own report.
Claims — what the agent said
| Type | What it means |
|---|---|
tests_pass | The agent says the checks pass. |
implemented | The agent says it built the thing. |
files_changed | The agent's account of what it touched. |
criteria_met | The agent's view of a criterion, met or not. |
infeasible | It cannot be done as asked, and why. A complete, acceptable report. |
other | Anything else the agent wanted on the record. |
A claim is never used as a result. Independent evidence is collected to check it.
Roles and seats
| Role | May |
|---|---|
admin | Everything, including people and settings. |
author | Write and approve requirements, dispatch attempts. |
reader | Read. |
Judge is granted per project and is what a verdict requires.