Record a decision
vivac_decideRecord a decision with its reason and each ruled-out alternative to prevent the same option being proposed again by people who missed the discussion.
Instructions
Record a decision, with the reason it was made and every alternative that lost. Call it the moment a choice is actually settled, not before and not long after: the alternatives are optional in the schema and not in practice, because without them the same option gets proposed again in a month by whoever was not in the room. When the project has pillars or rules, name in against the ones this was judged against, each with a sentence: a pillar judged in silence reads the same as one skipped.
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| ref | No | Paths or identifiers this decision is about. | |
| root | No | Born at the root, with no parent, instead of under the focus. Refused together with parent. | |
| title | Yes | The decision, in a few words. | |
| blocks | No | Its parent cannot close while this one is still open. | |
| parent | No | The node it hangs from. Defaults to the current focus, or the root if there is none. | |
| reason | Yes | Why this and not something else. A decision with no reason is a datum, not a decision. | |
| against | No | A pillar or rule this was judged against and a sentence on how it holds, as one entry: "r12: the write path stays local". Repeat for each one. vivac checks that the pillar or rule exists and still governs; the sentence is not judged. | |
| governs | No | Globs of files this decision's work is expected to touch. | |
| supersedes | No | An earlier decision this one retires. | |
| alternative | No | An option that was ruled out. Repeat for each one. |