campaign-state: honest follow-up outcomes; campaigns resolve Moved #62

Merged
eureka merged 1 commit from eureka-self/outcome-table into main 2026-11-09 09:27:29 +00:00

View file

@ -142,11 +142,12 @@ reversal.
| ruling | `Superseded { by: [ruling] }` |
| cut_spec | `Superseded { by: [cut_spec of the same cut] }`, `Withdrawn { reason }` |
| finding | `Fixed { commit, by?: cut_report }`, `Deferred { to: follow_up or cut_spec }` (the spec must be in force), `Recorded { reason }`, `Withdrawn { reason }` |
| follow_up | `Fixed { commit, by?: cut_report }`, `Superseded { by: [follow_up] }`, `Withdrawn { reason }` |
| follow_up | `Fixed { commit, by?: cut_report }` (the commit on the default branch that holds the change), `Recorded { reason }` (only for a follow-up that asked for an answer, or for an act with no commit, naming where it can be seen), `Superseded { by: [follow_up] }` (a change pushed but waiting on someone: her own follow-up names the PR and whom it waits on), `Withdrawn { reason }`. An open PR, a pushed branch or a local commit is not done. |
| stewardship | `Superseded { by: [stewardship] }`, `Withdrawn { reason }` |
| campaign | `Moved { to: mind }`: it freezes the campaign in the giver, and the receiver imports it with `huginn import`. A Moved is final and travels alone under its campaign in its batch. |
| resolution | `Withdrawn { reason }`, which reopens its subject. It cannot itself be withdrawn: resolve the subject again. |
Campaigns, cut reports, verdicts and instances have no resolution.
Cut reports, verdicts and instances have no resolution.
Only Self closes a finding `Fixed`, and only after a Soul pass on the fix's
report holds the claim the finding broke. Hands never resolves a finding: a fix