omni_orchestrator/
state.rs

1use std::sync::Arc;
2
3use serde::{Deserialize, Serialize};
4#[derive(Debug, Clone, Serialize, Deserialize)]
5pub struct SharedState {
6    pub node_id: Arc<str>,
7    pub is_leader: bool,
8    pub cluster_size: usize,
9    pub leader_id: Option<Arc<str>>,
10}
11
12impl SharedState {
13    pub fn new(node_id: Arc<str>) -> Self {
14        Self {
15            node_id,
16            is_leader: false,
17            cluster_size: 1,
18            leader_id: None,
19        }
20    }
21}