HostRolloutState

Type Alias HostRolloutState 

Source
pub type HostRolloutState = HostState;
Expand description

Per-host state representation as seen by the rollout reducer.

The rollout reducer reasons about per-host transitions at a coarser granularity than RFC-0005 §3’s six states; this alias names the input shape it accepts on HostStateChanged. Today it carries the full RFC-0005 state (re-exported from the host reducer); future projection to a coarser enum is a v0.3 optimisation.

Aliased Type§

pub enum HostRolloutState {
    Pending,
    Activating,
    Deferred,
    Soaking,
    Converged,
    Failed,
    Reverted,
}

Variants§

§

Pending

CP has issued a Dispatch; agent has not yet acked.

§

Activating

Agent acked; switch-to-configuration is firing or has fired pending confirmation.

§

Deferred

Activation pipeline set the profile + bootloader but skipped the live switch-to-configuration because a critical component (dbus/systemd/kernel/init) cannot be live-swapped on a running system. The new generation activates on next reboot. Ordering- eligible (host-edges + wave-promotion + advance_current_waves treat Deferred ≡ Converged for cascade-progression purposes — the host has done what it can within the rollout step) but not health-verified (probes haven’t run against the new closure; channel-edges stays strict and waits for actual Converged). On operator reboot, the agent’s boot-recovery handshake observes current_closure == target_closure and CP’s handle_heartbeat synthesis (LIFT #1) drives Deferred → Soaking via RemoteActivationCompleted.

§

Soaking

Agent reports activation succeeded; probes have started; soak window has not yet elapsed.

§

Converged

Soak elapsed, probes passing, current == declared. Terminal for ordering (successor channels may release).

§

Failed

Sustained probe failure observed by the agent and reported to CP. Agent has read onHealthFailure from the signed manifest and decided autonomously what comes next (RFC-0005 §4.2 Failed event).

§

Reverted

Agent has completed rollback to prior closure. Channel-level quarantine holds the bad SHA.