pub enum HostError {
Show 40 variants
Application {
stage: &'static str,
source: AppError,
},
AnnouncerConnect {
address: String,
detail: String,
},
AnnouncerPublish {
channel: String,
detail: String,
},
AnnouncerIntakeClosed,
AnnouncerAlreadyStarted,
AnnouncerSpawn {
source: Error,
},
AnnouncerPanicked,
Runtime(RuntimeError),
Registry(RegistryError),
Capability(CapabilityMutationError),
StatusMissing {
id: ComponentId,
},
NotRunning {
id: ComponentId,
state: LifecycleState,
},
EventLoggerSpawn {
source: Error,
},
EventLoggerPanicked,
TruthRecorderSpawn {
source: Error,
},
TruthRecorderPanicked,
AssetRoot {
path: PathBuf,
detail: String,
},
ConfigContract {
detail: String,
},
MissingIndex {
path: PathBuf,
},
Bind {
addr: SocketAddr,
source: Error,
},
PageServerUnavailable {
addr: SocketAddr,
source: Error,
},
NoFreePagePort {
from: u16,
},
Serve {
source: Error,
},
AsyncRuntime {
source: Error,
},
ShutdownSignal {
source: Error,
},
ProcessResidue {
count: usize,
},
SynchronizationPoisoned,
ConfigRead {
path: PathBuf,
source: Error,
},
ConfigParse {
path: PathBuf,
detail: String,
},
LiminalConfig {
source: ServerError,
},
EmbeddedModeUnsupported {
detail: String,
},
LiminalComponent {
component: &'static str,
source: ServerError,
},
LiminalShutdown {
source: ServerError,
},
LiminalExited {
detail: String,
},
DocumentContent {
path: PathBuf,
source: Error,
},
DocumentState {
source: StateError,
},
DocumentService {
source: DocServiceError,
},
DocumentAuthorityConfig {
source: ConfigError,
},
DocumentBusClient {
component: &'static str,
detail: String,
},
AuthoringPump {
detail: String,
},
}Expand description
A typed failure from the frame host.
Variants§
Application
The embedding application’s own hook (readiness proof or fact announcement) refused.
Fields
AnnouncerConnect
The application-event announcer failed to connect to the embedded bus at boot. A typed boot failure — never a silently event-less page.
Fields
AnnouncerPublish
The application-event announcer failed to publish on the bus. At boot this is a boot failure; at runtime the announcer records the death loudly and the served page shows it by absence of events.
Fields
AnnouncerIntakeClosed
A fact was announced after teardown had already closed the announcer’s intake.
AnnouncerAlreadyStarted
The announcer pump was started twice or its subscription was already consumed — a host composition error.
AnnouncerSpawn
The announcer pump thread could not be spawned.
AnnouncerPanicked
The announcer pump thread panicked.
Runtime(RuntimeError)
The composed component runtime refused or failed an operation (composition, policy validation, or residue-checked teardown).
Registry(RegistryError)
The component registry refused or failed an operation.
Capability(CapabilityMutationError)
The host capability facade refused an operation.
StatusMissing
An installed component vanished from the registry between operations.
Fields
id: ComponentIdIdentity whose snapshot was absent.
NotRunning
An installed component did not reach Running after start.
Fields
id: ComponentIdIdentity that failed to reach Running.
state: LifecycleStateObserved lifecycle state.
EventLoggerSpawn
The lifecycle event logger thread could not be spawned.
EventLoggerPanicked
The lifecycle event logger thread panicked.
TruthRecorderSpawn
The application-truth recorder thread (crate::truth::AppTruth)
could not be spawned.
TruthRecorderPanicked
The application-truth recorder thread panicked.
AssetRoot
The asset directory is unusable as a shell root.
ConfigContract
The served config would be refused by the shell’s config contract.
MissingIndex
The asset directory has no index.html shell entry point.
Bind
Binding the shell listener failed.
A stated [frame].bind page-server address is already in use. The page
server binds exactly what [frame].bind states and never silently
moves — this is the loud refusal (2026-07-22 portless ruling).
NoFreePagePort
The forward walk from the preferred page-server port found no free port anywhere above it — a genuinely exhausted local port space, never a silent give-up.
Serve
The shell server failed while serving.
AsyncRuntime
The async runtime hosting the shell server could not be built.
ShutdownSignal
The shutdown signal handler could not be installed or failed.
ProcessResidue
Ordered shutdown left live processes on the scheduler.
SynchronizationPoisoned
Host-internal synchronization was poisoned by a panic.
ConfigRead
The frame configuration file could not be read.
ConfigParse
The frame configuration file could not be parsed as TOML into the
[frame] + [bus] schema (or [liminal], the deprecated alias of
[bus] during the compatibility window), or its bus section was
missing or doubled.
LiminalConfig
The embedded [bus] config failed liminal’s own validation.
Fields
source: ServerErrorExact typed liminal validation failure.
EmbeddedModeUnsupported
The [bus] config selects a shape the embedded frame server does
not faithfully orchestrate (cluster, worker-front-door, or an absent
WebSocket transport). Loud refusal at startup, never a silent downgrade.
LiminalComponent
A liminal component failed to bind or boot. Frame-host exits nonzero with the component named — never a half-up stack.
Fields
component: &'static strWhich liminal component failed (health endpoint, connection services, connection supervisor, TCP listener, WebSocket listener).
source: ServerErrorExact typed liminal failure.
LiminalShutdown
Liminal’s graceful shutdown sequence failed.
Fields
source: ServerErrorExact typed liminal shutdown failure.
LiminalExited
The embedded liminal component stopped answering at runtime while the host was still meant to be serving. A dead server behind a healthy host is forbidden: frame-host tears down and exits nonzero.
DocumentContent
The [document] initial-content file could not be read.
DocumentState
The document service’s frame-state store refused an operation.
Fields
source: StateErrorExact typed frame-state failure.
DocumentService
The document service refused to boot, run, or shut down.
Fields
source: DocServiceErrorExact typed service failure.
DocumentAuthorityConfig
The document authority’s declared configuration was refused.
Fields
source: ConfigErrorExact typed configuration refusal.
DocumentBusClient
The document binding’s bus client (publisher or authoring subscriber) failed to connect or subscribe.
Fields
AuthoringPump
The authoring pump thread could not start or join.
Trait Implementations§
Source§impl Error for HostError
impl Error for HostError
Source§fn source(&self) -> Option<&(dyn Error + 'static)>
fn source(&self) -> Option<&(dyn Error + 'static)>
1.0.0 · Source§fn description(&self) -> &str
fn description(&self) -> &str
use the Display impl or to_string()