pub enum PolicyDecision {
AlwaysAllow,
AskEveryTime,
NeverAllow,
}Expand description
The closed §7.1.7 policy-decision vocabulary, as a type.
Same repair, same reasons as ChannelKind above, found by the same
audit discipline one field over: the wire field was a bare String the
reference validated NOWHERE, while the independent TypeScript
implementation refused an unrecognized value at parse — two
conformant-claiming implementations reaching opposite verdicts on the
same bytes. The reference was the permissive surface, and per the
standing guardrail the permissive surface is the wrong one. The
published protocol bundle had declared this vocabulary as an enum all
along; the reference was the LAST populator without the type.
The doc-comment on the wire field (§7.1.7) carries the semantic warning: this records the human’s standing CONFIGURATION, never the verdict on this act.
Variants§
AlwaysAllow
Wire value AlwaysAllow.
AskEveryTime
Wire value AskEveryTime — and it stays AskEveryTime after the
human approves; the mandate’s existence is what asserts the approval
(§9.1 admits no path to issuance that bypasses Approved).
NeverAllow
Wire value NeverAllow — recorded, but never yields an envelope.
Implementations§
Trait Implementations§
Source§impl Clone for PolicyDecision
impl Clone for PolicyDecision
Source§fn clone(&self) -> PolicyDecision
fn clone(&self) -> PolicyDecision
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read more