pub enum GateBlock {
ChannelEdges {
predecessor_channel: String,
},
WavePromotion {
host_wave: u32,
current_wave: u32,
},
HostUnstaged {
channel: String,
},
HostEdge {
gating_host: String,
},
DisruptionBudget {
in_flight: u32,
max: u32,
selector_summary: String,
},
ComplianceWave {
failing_events_count: usize,
host_wave: u32,
},
Quarantined {
channel: String,
closure_hash: String,
},
}Expand description
Reason a host can’t be dispatched right now. Variants carry enough
detail to render the log line + observability event without re-
querying state. The legacy &Observed-shaped gate variants from
v0.1 are not represented.
Variants§
ChannelEdges
WavePromotion
HostUnstaged
Default-deny variant of the wave-promotion gate: the channel
declares waves but this host is not listed in any of them.
Pre-hardening this case silently passed (position(...) returns
None → ?-early-return → gate returns None → host dispatches).
That’s an operator misconfiguration (host should be in a wave;
either an operator forgot to assign it, or a fleet-build bug
dropped it). Default-deny prevents silent dispatch of an
unstaged host.
HostEdge
DisruptionBudget
ComplianceWave
Quarantined
Implementations§
Trait Implementations§
impl Eq for GateBlock
impl StructuralPartialEq for GateBlock
Auto Trait Implementations§
impl Freeze for GateBlock
impl RefUnwindSafe for GateBlock
impl Send for GateBlock
impl Sync for GateBlock
impl Unpin for GateBlock
impl UnwindSafe for GateBlock
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
Mutably borrows from an owned value. Read more
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
Checks if this value is equivalent to the given key. Read more