Module wave_promotion

Module wave_promotion 

Source
Expand description

Wave-promotion gate (new-shape). Host’s wave index must not exceed the rollout’s current_wave. Wave index comes from the verified FleetResolved.waves[channel] (positional). current_wave lives on RolloutSummary and is maintained by the applier.

Default-deny on inconsistent inputs. A silent pass when host-wave resolution returns None (host not listed in any wave for its channel) would mask operator misconfiguration. An unstaged host in a channel that declares waves is blocked with GateBlock::HostUnstaged. The “channel has no waves at all” shape (typical of all-at-once policies; mk-fleet builds fleet.waves[channel] = [] when the policy declares no explicit waves) still passes — that’s intentional “no wave gating”, not misconfiguration.

Functions§

check