use bevy::prelude::States; /// Lifecycle of the QUIC listener inside the ECS schedule. /// /// `Starting` is the default; `OnEnter(Starting)` performs the bind and, on /// success, transitions to `Started`. A `Failed` variant will join when we /// add proper error surfacing — for now a bind failure panics the app. #[derive(States, Debug, Clone, Copy, Default, Eq, PartialEq, Hash)] pub enum ServerState { #[default] Starting, Started, }