pub enum PlanAction {
OpenRollout {
rollout_id: RolloutId,
channel: ChannelId,
target_ref: ChannelRef,
},
QueueDispatch {
host: HostId,
rollout: RolloutId,
target_closure: ClosureHash,
soak_due_at: DateTime<Utc>,
},
RecordHaltLifted {
channel: ChannelId,
},
DeferDispatch {
host: HostId,
rollout: RolloutId,
gate: &'static str,
reason: String,
},
}Expand description
Planner outputs. The applier interprets each variant against real I/O (DB writes, queued HTTP responses, metrics).
Variants§
OpenRollout
A new channel ref has arrived and the planner is opening the
per-host record set for it. Applier inserts the rollout into
rollouts + creates host_rollout_records rows.
QueueDispatch
Queue a Dispatch for a single host on the agent’s next long-poll
to /v1/agent/dispatch. Per RFC-0005 §4.1 the payload is
advisory; agent cross-checks against signed manifest.
RecordHaltLifted
Record that a channel was halted (operator-visible status hint).
DeferDispatch
A host was eligible for dispatch but a gate blocked it. Applier
appends an event_log entry with kind = 'gate_decision' and the
supplied reason. Does NOT queue any agent-visible work.
Trait Implementations§
Source§impl Clone for PlanAction
impl Clone for PlanAction
Source§fn clone(&self) -> PlanAction
fn clone(&self) -> PlanAction
Returns a duplicate of the value. Read more
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source. Read moreSource§impl Debug for PlanAction
impl Debug for PlanAction
Source§impl PartialEq for PlanAction
impl PartialEq for PlanAction
impl Eq for PlanAction
impl StructuralPartialEq for PlanAction
Auto Trait Implementations§
impl Freeze for PlanAction
impl RefUnwindSafe for PlanAction
impl Send for PlanAction
impl Sync for PlanAction
impl Unpin for PlanAction
impl UnwindSafe for PlanAction
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