pub enum CanaryOutcome {
Confirmed,
Absent,
Unverified(String),
}Expand description
What one canary run established.
Absent and Unverified are kept apart on purpose, and collapsing them
would be a real loss of information: “the CLI ran and the behaviour is gone”
and “the CLI could not be run at all” call for completely different operator
action, and a merged variant would report a missing binary as a broken
premise (threat T-31-12 — the risk this guard carries is a FALSE refusal).
Variants§
Confirmed
The declared token came back from a trustworthy place. The notification path is alive. This says NOTHING about whether work happened.
Absent
The CLI ran and the token did not come back. The premise this arc rests on is no longer backed by observed behaviour.
Unverified(String)
The guard itself could not reach a conclusion — carries the reason. Not a statement about the CLI’s behaviour.
Trait Implementations§
Source§impl Clone for CanaryOutcome
impl Clone for CanaryOutcome
Source§fn clone(&self) -> CanaryOutcome
fn clone(&self) -> CanaryOutcome
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read moreSource§impl Debug for CanaryOutcome
impl Debug for CanaryOutcome
Source§impl<'de> Deserialize<'de> for CanaryOutcome
impl<'de> Deserialize<'de> for CanaryOutcome
Source§fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
impl Eq for CanaryOutcome
Source§impl PartialEq for CanaryOutcome
impl PartialEq for CanaryOutcome
Source§impl Serialize for CanaryOutcome
impl Serialize for CanaryOutcome
impl StructuralPartialEq for CanaryOutcome
Auto Trait Implementations§
impl Freeze for CanaryOutcome
impl RefUnwindSafe for CanaryOutcome
impl Send for CanaryOutcome
impl Sync for CanaryOutcome
impl Unpin for CanaryOutcome
impl UnsafeUnpin for CanaryOutcome
impl UnwindSafe for CanaryOutcome
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> DeserializeOwned for Twhere
T: for<'de> Deserialize<'de>,
Source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
Source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
Source§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
key and return true if they are equal.