1#![deny(unsafe_code)]
2#![allow(missing_docs)]
3
4pub mod async_optimizations;
17pub mod commands;
18pub mod config;
19pub mod mcp;
20pub mod node_manager;
21pub mod output;
22pub mod peer_manager;
23pub mod performance;
24pub mod rpc;
25pub mod startup;
26
27#[cfg(test)]
28pub mod mocks;
29
30pub use commands::{
31 check_node_connectivity, execute_status_command, show_status, start_node, stop_node,
32 CommandRouter, DagStatistics, MemoryUsage, NetworkStatistics, NodeState, NodeStatusResponse,
33 OutputFormat, PeerStatusInfo, StatusArgs,
34};
35
36pub use config::{NodeConfig, NodeConfigManager};
37
38#[derive(Debug, thiserror::Error)]
40pub enum CliError {
41 #[error("Node error: {0}")]
42 Node(String),
43 #[error("Network error: {0}")]
44 Network(String),
45 #[error("Visualization error: {0}")]
46 Visualization(String),
47 #[error("Configuration error: {0}")]
48 Config(String),
49 #[error("Command error: {0}")]
50 Command(String),
51 #[error("RPC error: {0}")]
52 Rpc(String),
53 #[error("Status error: {0}")]
54 Status(String),
55 #[error("Connection error: {0}")]
56 Connection(String),
57 #[error("Timeout error: {0}")]
58 Timeout(String),
59 #[error("Validation error: {0}")]
60 Validation(String),
61 #[error("Server error: {0}")]
62 Server(String),
63}