zenkey_fleet/lib.rs
1//! Fleet engine for keyspace-v2 tooling (issue #15).
2//!
3//! The shared core of `zenctl` and `zengui`: everything a bus explorer needs
4//! that is not presentation. The RFC 05 §2.1 fan-in discipline lives in
5//! exactly one place ([`query::fleet_get`], moved verbatim from zenctl —
6//! target `All`, consolidation `None`, attribution by the reply's own key);
7//! the liveliness roster, registry-slice sets, and the schema-aware decode
8//! seam build on it.
9//!
10//! Sessions opened here are deliberately **un-namespaced** (RFC 09 §5): an
11//! explorer sees the wire as it really is, full keys included — that is what
12//! lets it spot a leak. Do not "fix" this by setting a namespace.
13
14pub mod admin;
15pub mod discover;
16pub mod query;
17pub mod registry;
18pub mod roster;
19pub mod session;
20pub mod stats;
21pub mod sub;
22pub mod tree;
23
24#[cfg(feature = "decode")]
25pub mod decode;
26
27pub use admin::{
28 AdminEntry, Coverage, CoverageRow, RouterInfo, StorageInfo, admin_get, routers, state_coverage,
29 storages,
30};
31pub use discover::{AliveToken, DiscoveredBase, discover_bases};
32pub use query::{Answer, FleetAnswer, StateSample, fleet_get, fleet_registry, state_snapshot};
33pub use registry::SliceSet;
34pub use roster::roster;
35pub use session::open;
36pub use sub::{EventStream, FleetEvent, Monitor, MonitorCore, MonitorSpec, SampleView, StreamItem};
37pub use tree::KeyTreeSnapshot;