Lifecycle

Queued
Dormant. Nothing is asked of anyone.
Running
Active. The machine has it.
Needs input
A person is required.
Needs review
A person must decide, and it counts.
Done
Settled. Closed, quietly.
Failed
It broke. Signal red, reserved.

Decisions

Pending
aliases needs-input
Approved
aliases running
Denied
aliases needs-review
Expired
lapsed, not refused

Status is an outcome; state is a position. Use --status-* for whether a thing succeeded or failed, and --state-* for where a piece of work has got to. A run awaiting a person is not a warning, and an approval nobody answered is not a danger. Queued and done share a hue — both are states in which nothing is asked of anyone — so they are told apart by mark: a hollow ring against a filled dot. Never let colour be the only carrier of a state.