pub enum RegistryError {
Show 41 variants
DuplicateComponent {
id: ComponentId,
},
MissingDependency {
component: ComponentId,
required: ComponentId,
},
CyclicDependency {
component: ComponentId,
required: ComponentId,
},
CapabilityConflict {
capability: String,
provider: ComponentId,
},
InvalidCapabilityScope {
component: ComponentId,
request: CapabilityRequest,
reason: ScopeValidationError,
},
InvalidActionDeclaration {
component: ComponentId,
action: String,
detail: String,
},
DuplicateActionId {
component: ComponentId,
action: String,
},
DuplicateActionRequirement {
component: ComponentId,
action: String,
requirement: Capability,
},
ActionRequirementUndeclared {
component: ComponentId,
action: String,
requirement: Capability,
},
InvalidFragmentDeclaration {
component: ComponentId,
fragment: String,
detail: String,
},
DuplicateFragmentId {
component: ComponentId,
fragment: String,
},
FragmentContentOversize {
component: ComponentId,
fragment: String,
size: usize,
limit: usize,
},
FragmentLimitUnconfigured {
component: ComponentId,
},
UnknownFragment {
component: ComponentId,
fragment: String,
},
FragmentIncarnationStale {
component: ComponentId,
fragment: String,
held: ComponentIncarnation,
current: Option<ComponentIncarnation>,
},
DuplicateCapabilityNeed {
component: ComponentId,
request: CapabilityRequest,
},
UndeclaredSupervision {
id: ComponentId,
},
InvalidSupervisionWindow {
id: ComponentId,
},
DuplicateChild {
id: ComponentId,
child: String,
},
NotRegistered {
id: ComponentId,
},
AlreadyStarting {
id: ComponentId,
},
AlreadyRunning {
id: ComponentId,
},
AlreadyStopping {
id: ComponentId,
},
AlreadyRemoving {
id: ComponentId,
},
AlreadyUpgrading {
id: ComponentId,
},
UpgradeRequiresStopped {
id: ComponentId,
state: LifecycleState,
},
DependencyNotRunning {
component: ComponentId,
required: ComponentId,
state: LifecycleState,
},
RunningDependent {
dependent: ComponentId,
required: ComponentId,
},
DeferredBifImports {
id: ComponentId,
module: String,
imports: String,
},
ModuleLoad {
id: ComponentId,
detail: String,
},
Spawn {
id: ComponentId,
process: String,
detail: String,
},
LivenessTimeout {
id: ComponentId,
child: String,
},
StartFailed {
id: ComponentId,
reason: FailureReason,
},
StopFailed {
id: ComponentId,
reason: FailureReason,
},
ModulePurge {
id: ComponentId,
module: String,
detail: String,
},
ModuleDelete {
id: ComponentId,
module: String,
},
ModuleStillLoaded {
id: ComponentId,
module: String,
},
CommandDelivery {
id: ComponentId,
command: &'static str,
source: MailboxSendError,
},
SupervisorProtocol {
id: ComponentId,
detail: String,
},
SynchronizationPoisoned,
MonitorTerminated {
id: ComponentId,
},
}Expand description
A typed refusal or runtime failure from the component registry.
Variants§
DuplicateComponent
Registration attempted to reuse a stable identity.
Fields
id: ComponentIdConflicting stable identity.
MissingDependency
A declared dependency was not in the registration table.
CyclicDependency
A dependency edge would make the graph cyclic.
Fields
component: ComponentIdSource of the cyclic edge.
required: ComponentIdTarget of the cyclic edge.
CapabilityConflict
Two registered components claimed the same capability identifier.
Fields
provider: ComponentIdExisting provider.
InvalidCapabilityScope
A host-authority declaration used a malformed typed scope.
Fields
component: ComponentIdComponent being registered.
request: CapabilityRequestOffending declaration.
reason: ScopeValidationErrorExact scope validation refusal.
InvalidActionDeclaration
An action declaration failed field validation (empty id, description, or schema source).
Fields
component: ComponentIdComponent being registered.
DuplicateActionId
A component declared the same local action id twice.
DuplicateActionRequirement
One action listed an exact capability requirement twice.
Fields
component: ComponentIdComponent being registered.
requirement: CapabilityDuplicate requirement.
ActionRequirementUndeclared
An action requires a capability its component never declared as a need — a permanently dead tool, refused at registration (F-6a R1).
Fields
component: ComponentIdComponent being registered.
requirement: CapabilityThe requirement no declared need covers.
InvalidFragmentDeclaration
A fragment declaration failed field validation (empty id or kind).
Fields
component: ComponentIdComponent being registered.
DuplicateFragmentId
A component declared the same local fragment id twice (F-5a R1’s typed refusal; the whole batch is refused atomically).
FragmentContentOversize
Fragment content exceeded the registry’s caller-supplied byte limit (registration and content update validate identically — F-5a R2).
Fields
component: ComponentIdDeclaring or updating component.
FragmentLimitUnconfigured
Fragments were declared but the embedding host supplied no
max_fragment_bytes — there is no hidden default limit (F-5a R1);
the host states one in its lifecycle configuration or fragments are
refused loudly.
Fields
component: ComponentIdComponent being registered.
UnknownFragment
A fragment act named a fragment id with no live entry in the authority — an undeclared local id (the ID set is static per incarnation, F-5a R2), or an internal invariant breach surfaced loudly rather than papered over.
Fields
component: ComponentIdComponent named by the act.
FragmentIncarnationStale
A fragment act carried an incarnation that is not the live Running
incarnation — the typed held-vs-current refusal (F-2a’s rule applied
to fragments, F-5a R2). current is absent when no incarnation is
live (the component is not Running).
Fields
component: ComponentIdComponent named by the act.
held: ComponentIncarnationThe incarnation the caller holds.
current: Option<ComponentIncarnation>The live Running incarnation, absent when not Running.
DuplicateCapabilityNeed
A manifest repeated an exact kind-and-scope pair.
Fields
component: ComponentIdComponent being registered.
request: CapabilityRequestDuplicate declaration.
UndeclaredSupervision
Registration omitted the mandatory restart intensity declaration.
Fields
id: ComponentIdComponent missing the declaration.
InvalidSupervisionWindow
A restart window of zero cannot define an intensity interval.
Fields
id: ComponentIdComponent with the invalid policy.
DuplicateChild
Child names are component-local unique keys.
NotRegistered
The requested component is not registered.
Fields
id: ComponentIdRequested identity.
AlreadyStarting
A start is already in flight for this identity.
Fields
id: ComponentIdBusy identity.
AlreadyRunning
The component is already running.
Fields
id: ComponentIdRunning identity.
AlreadyStopping
A stop is already in flight for this identity.
Fields
id: ComponentIdBusy identity.
AlreadyRemoving
A remove is already in flight for this identity.
Fields
id: ComponentIdBusy identity.
AlreadyUpgrading
A bytecode upgrade is already in flight for this identity.
Fields
id: ComponentIdBusy identity.
UpgradeRequiresStopped
A bytecode upgrade was requested outside the stopped states.
DependencyNotRunning
A dependency exists but has not reached Running.
Fields
component: ComponentIdComponent whose start was refused.
required: ComponentIdRequired component.
state: LifecycleStateObserved dependency state.
RunningDependent
A running component still depends on the removal target.
Fields
dependent: ComponentIdRunning dependent preventing removal.
required: ComponentIdRequested removal target.
DeferredBifImports
Hot-loaded bytecode carries erlang:* imports the scheduler composition
left Deferred — dispatch would kill the process at first use.
Fields
id: ComponentIdComponent whose start was refused.
ModuleLoad
beamr refused or could not parse component bytecode.
Spawn
A native supervisor or linked child could not be spawned.
Fields
id: ComponentIdComponent being started or restarted.
LivenessTimeout
A child did not answer its declared mailbox probe in time.
StartFailed
Start failed after entering Starting; status remains Failed.
StopFailed
Ordered stop observed a non-normal or missing tombstone.
ModulePurge
A retained old module generation could not be safely purged.
Fields
id: ComponentIdComponent being removed.
ModuleDelete
The current module generation was absent when removal expected it.
ModuleStillLoaded
Lookup still found code after deletion.
CommandDelivery
beamr refused a typed host command at supervisor mailbox admission.
Fields
id: ComponentIdAffected component.
source: MailboxSendErrorExact beamr mailbox admission refusal.
SupervisorProtocol
Host/supervisor mailbox protocol was violated.
SynchronizationPoisoned
Internal synchronization was poisoned by a panic.
MonitorTerminated
A component monitor thread terminated without returning its result.
Fields
id: ComponentIdComponent whose monitor was lost.
Trait Implementations§
Source§impl Debug for RegistryError
impl Debug for RegistryError
Source§impl Display for RegistryError
impl Display for RegistryError
Source§impl Error for RegistryError
impl Error for RegistryError
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()