absolute
absolute is a unanimous vote. Every person on a list of required signers must approve; one rejection is enough to end the vote.
Its job is the owner sign-off of a package deploy. Each owner that getSignoffs found receives a task, and the deploy only goes ahead once all of them have approved.
Unlike Voting, which decides by majority over a fixed number of voters, absolute works on a named list of people and needs every one of them.
absolute is a platform step. metamorphOS adds it to every package deploy. It is not meant to be added to your own processes; for a vote in your own process, use Voting.
Configuration
Required Signers
Required Signers is the list of users who must approve. In a package deploy it is filled in from getSignoffs, and the sign-off task goes to exactly those people.
Decision Name
Decision Name is optional. It names the decision being voted on.
Vote
Each signer gives their vote in the task: approve or reject.
Runtime behavior
absolute waits for people. Each required signer gets a task and votes once.
- When every required signer has approved, the step succeeds with
Unanimously approved by all required signers, and the deploy continues. - When any signer rejects, the step fails with
Rejected by at least one required signer, at once, without waiting for the others. The package is not deployed. - While approvals are still missing and nobody has rejected, the step stays open.
A vote is refused, and nothing is recorded, when:
- the person is not on the list of required signers,
- the person has already voted, or
- the vote is neither approve nor reject.
With an empty list of signers the step passes straight away. In a package deploy this does not come up: when nobody has to sign off, the deploy skips this step.
Works well with
- getSignoffs, which decides who the signers are.
- deploy, which runs once everyone has approved.
- Voting, the majority vote for your own processes.