Skip to main content

liminal_server/console/
mod.rs

1//! The console's live streams (SRV-011 R1 and R2).
2//!
3//! The server publishes them as the participant `liminal.<device>` on the
4//! ordinary transport:
5//! `console.topology` (one full topology record per change event; a reader's
6//! snapshot is the stream's latest record) and `console.tap.<target>` (one
7//! record per tap batch for the node or stream `<target>`).
8//!
9//! Nothing here reads a store row: the topology is built from the channel
10//! roster and the responder registry the server already holds, and the tap is
11//! fed at the publish return.
12
13pub mod counts;
14pub mod error;
15pub mod hub;
16pub mod model;
17pub mod publisher;
18pub mod records;
19pub mod topology;
20pub mod wall;
21
22pub use counts::ConsoleCountsSnapshot;
23pub use error::ConsoleError;
24pub use hub::{
25    ConsoleHub, MAX_LIVE_TAPS, PumpReport, TAP_SUBJECT_PREFIX, TOPOLOGY_SUBJECT, tappable,
26};
27pub use model::{FlowRole, ThisDevice, TopologyChange, TopologyModel};
28pub use publisher::ServerPublisher;
29pub use topology::{ChannelNode, TopologySnapshot, snapshot};
30
31#[cfg(test)]
32mod hub_tests;
33#[cfg(test)]
34mod model_tests;
35#[cfg(test)]
36mod records_tests;
37#[cfg(test)]
38mod tests;