Expand description
The gate: whether a built request may be sent, decided once.
Every caller that has a request and what the user answered builds a Plan
and executes what it gets back, rather than testing the flags again. That is
what makes a dry run print the exact bytes a confirmed run sends — they are
this one value.
What the user answered is an Answers: the write confirmation, plus one
answer per gate the operation names. Both halves are demanded together, so
an operation that stands behind enshrine needs the confirmation and that
word, and neither substitutes for the other.
Nothing here knows about command lines. A CLI reaches it through
the tree module (feature clap), and a Rust caller that wants the same gate over a typed
wrapper calls Plan::decide directly, which is what the finalize-voucher
verb in the example does.
Structs§
- Answers
- What a caller answered at the gate: the write confirmation, and one answer per named gate the operation carries.