pub enum Status {
Done,
Missing,
Wrong,
Unknown,
Declined,
}Expand description
Where a step stands. Deliberately three-valued: “cannot tell from here” is a real answer and must not be printed as “not done” — a person told their mail is unconfigured, when it is merely unreadable from this process, goes and re-runs an OAuth flow they did not need.
Variants§
Done
Missing
Wrong
Configured, but something about it disagrees with reality.
Unknown
Declined
The owner said they do not want this one.
Not a fifth shade of “not done” — its opposite. Every other status
here describes the machine; this one describes a decision, and the two
were indistinguishable until it existed: somebody who does not use
Slack read not set up on every mecha setup forever, and every
scripted run exited non-zero over a choice they had already made. The
same “a dash is never zero” rule crate::backlog states, one noun
over — an absence of the thing and a decision against the thing are
different findings, and a reader that cannot tell them apart turns a
finished install into a permanent defect list.