Expand description
subc daemon core.
This crate owns the loopback TCP transport and the thin splice-router core: routing decisions are made from the 21-byte envelope header, while message bodies are carried as opaque bytes and are never deserialized by the router.
Re-exports§
pub use control::ControlHandler;pub use control::MIN_SUPPORTED_VERSION;pub use forwarding::ForwardingError;pub use forwarding::ForwardingTable;pub use forwarding::ModuleEndpointId;pub use control::DEFAULT_ROUTE_BIND_BREAKER_COOLDOWN;pub use control::DEFAULT_ROUTE_BIND_BREAKER_THRESHOLD;pub use control::DEFAULT_ROUTE_BIND_RELAY_TIMEOUT;pub use identity::RequestIdentity;pub use identity::SessionId;pub use observability::ConnectedClients;pub use observability::DaemonCounters;pub use registry::ChannelState;pub use registry::ConnectionId;pub use registry::ModuleRegistration;pub use registry::Registry;pub use registry::RegistryError;pub use router::Backend;pub use router::EchoBackend;pub use router::ForwardBackend;pub use router::FrameSink;pub use router::RouteCtx;pub use router::Router;pub use router::RouterConnection;pub use router::RouterError;pub use server::handle_connection;pub use server::serve_listener;pub use server::serve_listeners;pub use server::ConnectionError;pub use server::ServerAuth;pub use server::ServerError;pub use server::DEFAULT_AUTH_DEADLINE;pub use server::DEFAULT_MAX_UNAUTHENTICATED_CONNECTIONS;pub use supervise::ExitKind;pub use supervise::ExitReport;pub use supervise::HealthAction;pub use supervise::HealthConfig;pub use supervise::ModuleHealthStatus;pub use supervise::ModuleOverlap;pub use supervise::ModuleProcessLiveness;pub use supervise::ModuleSpec;pub use supervise::ModuleState;pub use supervise::ModuleStatus;pub use supervise::RestartPolicy;pub use supervise::SuperviseError;pub use supervise::SupervisedModule;pub use supervise::Supervisor;pub use supervise::SupervisorHandle;pub use supervise::SupervisorProcessLiveness;pub use supervise::SwapFailureArm;pub use supervise::SwapRefusal;pub use supervise::DEFAULT_DRAIN_TIMEOUT;pub use supervise::DEFAULT_SWAP_READY_TIMEOUT;pub use supervise::SPAWN_ROLE_SWAP_CANDIDATE;pub use supervise::SUBC_ARG;pub use supervise::SUBC_SPAWN_ROLE_ENV;pub use watchdog::DaemonSelfWatchdog;pub use watchdog::DaemonSelfWatchdogConfig;pub use watchdog::WatchdogStage;pub use watchdog::WatchdogTickError;pub use watchdog::DEFAULT_SELF_WATCHDOG_DEADLINE;pub use watchdog::DEFAULT_SELF_WATCHDOG_INTERVAL;
Modules§
- bootstrap
- control
- daemon_
config - fleet_
lint - Offline capability-manifest evaluation for
ck daemon lint. - forwarding
- identity
- machine_
id - The machine id file: where the daemon’s
MachineIdlives on disk, how the daemon mints it once, and how an operator replaces it. - observability
- registry
- router
- server
- stderr_
tail - Bounded per-module stderr capture.
- supervise
- terminal_
ring - watchdog
Structs§
- Frame
- A complete wire frame: the decoded envelope header plus its opaque body.
- Project
Root Id - Stable canonical identity for a project root.
Enums§
- Frame
Build Error - Why a frame could not be constructed or emitted coherently.
- Frame
IoError - Errors from async envelope frame I/O.
- Identity
Error - Typed identity-resolution failures.
- Read
Stage - Which part of a frame was being read when EOF arrived.
Functions§
- read_
frame - Read one complete frame from an async stream.
- write_
frame - Write one complete frame to an async stream.