Unit 05.02: Choosing the one step a human must approve
Human review is expensive attention. Spending it on the wrong step means spending it and getting nothing.
Gate on irreversibility, at the last possible moment
Sort the steps by whether they can be undone. Reversible steps do not need a gate, and the gate goes immediately before the step that cannot be taken back.
The code sorts a five-step refund workflow.
STEPS = [
("read the account record", "reversible", False),
("decide refund eligibility", "reversible", False),
("draft the customer reply", "reversible", False),
("issue the refund", "moves money", True),
("send the reply to the customer", "irreversible", True),
]
print(f"{'step':32} {'nature':16} gate?")
for step, nature, gate in STEPS:
print(f"{step:32} {nature:16} {'YES' if gate else 'no'}")
gates = sum(1 for _, _, g in STEPS if g)
print(f"\n{gates} gates across {len(STEPS)} steps")
print("""
If two gates is one too many for your reviewers, combine them: approve the
decision and the wording together, at the last point before either takes
effect. What you must not do is move the gate earlier to make it cheaper --
a gate before the draft exists approves nothing that matters.
""")
Two gates, both at the end, both on things that cannot be undone: money moving and a message reaching a customer.
The note in the output is the practical part. If two gates is one too many for your reviewers, combine them - approve the decision and the wording together, at the last point before either takes effect. What you must not do is move a gate earlier to make it cheaper, because a gate before the draft exists approves nothing that matters.
The mistake this prevents
The mistake is adding gates in proportion to anxiety. A workflow that pauses at every step is not reviewed more carefully - reviewers approve reflexively by the third pause, and the two gates that mattered get the same click as the three that did not.
Takeaway
Gate on irreversibility, place the gate immediately before the irreversible step, and keep the count low. Combining two late gates beats moving one earlier.
