1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
//! `TypeConfig` — wires openraft's generic surface to revoada's
//! typed domain.
//!
//! - `D` = [`RoleAssignment`] (the command we replicate)
//! - `R` = `ApplyResult` (the state-machine response)
//! - `NodeId` = `u64` (small + serde-friendly; maps onto revoada's
//! 32-byte [`crate::NodeId`] via the mesh-shape resolver layer)
//! - `Node` = [`openraft::BasicNode`] (carries the Raft listen addr)
//! - `SnapshotData` = `std::io::Cursor<Vec<u8>>` (the openraft idiom)
use BasicNode;
use crateRoleAssignment;
/// Openraft NodeId — `u64`. Distinct from [`crate::NodeId`] (the
/// ed25519 pubkey we gossip); the mapping is owned by `RaftMesh`.
pub type RaftNodeId = u64;
/// The state-machine reply written back to the proposing client.
declare_raft_types!;