Expand description
Transition dispatcher. Routes (state, event) to the per-source-state
handler in a sibling module, after performing the universal pre-checks
(seq monotonicity, basic structural validity).
Each per-state module pattern-matches the events legal from that source
state and returns either the new state + effects, or IllegalForState
for events the Β§3 graph doesnβt permit from that source. The runtime
layer is expected to log + drop illegal events (out-of-order retransmits)
and rely on Replay-From heartbeat drift-detection (RFC-0005 Β§4.3) for
gap recovery.
ModulesΒ§
- activating π
- Transitions from
Activating. - converged π
- Transitions from
Converged. Terminal for this rollout β the runtime creates a NEWHostRolloutState(a fresh record with a newrollout_id) when the channel opens its next rollout. The existingConvergedrecord is read-only history from this point. - deferred π
- Transitions from
Deferred. - failed π
- Transitions from
Failed. Legal events: - pending π
- Transitions from
Pending. Only legal events:LocalActivate(agent side, after long-poll receives Dispatch + cross-check vs manifest) andRemoteDispatchAck(CP mirror, after agent posts to/v1/agent/events). Both drivePending β Activating. - reverted π
- Transitions from
Reverted. Terminal until the channel halt is lifted by a new declared SHA (RFC-0005 Β§3). The runtime creates a freshHostRolloutStatewhen the next rollout opens for this channel; this record staysRevertedas history. - soaking π
- Transitions from
Soaking.
FunctionsΒ§
- dispatch π
- event_
name π - Shared utility β variant name for diagnostic strings.
- illegal π