pub enum RuntimeError {
Show 24 variants
Storage(StorageError),
Sqlite(SqliteError),
Query(QueryError),
NotFound(String),
InvalidInput(String),
Unconfigured(String),
Embedding(EmbedError),
Ambiguous(String),
Internal(String),
MissingPackDependency(MissingPackDependency),
MissingPackDependencies(MissingPackDependencies),
CircularPackDependency(CircularPackDependency),
PackRedeclared {
name: String,
first_idx: usize,
second_idx: usize,
},
VerbCollision {
verb: String,
first_pack: String,
second_pack: String,
},
PermissionDenied {
verb: String,
reason: String,
},
Khive(KhiveError),
NamespaceMismatch {
id: Uuid,
},
AmbiguousPrefix {
prefix: String,
matches: Vec<Uuid>,
},
CrossBackendMergeUnsupported {
into_id: Uuid,
from_id: Uuid,
into_backend: String,
from_backend: String,
},
UnknownRemote {
name: String,
},
RemoteCacheMissing {
remote: String,
namespace: String,
},
AmbiguousId {
id: String,
count: usize,
},
CrossNamespaceWrite {
namespace: String,
},
RemoteFetchError {
remote: String,
message: String,
},
}Variants§
Storage(StorageError)
Sqlite(SqliteError)
Query(QueryError)
NotFound(String)
InvalidInput(String)
Unconfigured(String)
Embedding(EmbedError)
Ambiguous(String)
Internal(String)
MissingPackDependency(MissingPackDependency)
MissingPackDependencies(MissingPackDependencies)
CircularPackDependency(CircularPackDependency)
PackRedeclared
VerbCollision
Two packs declared the same Visibility::Verb handler name (ADR-017
§Boot-time collision checks). Visibility::Subhandler entries are
pack-prefixed and do not participate in cross-pack collision checks.
PermissionDenied
Gate denied this verb invocation (ADR-035).
Returned by VerbRegistry::dispatch when the configured Gate returns
GateDecision::Deny. The pack is never invoked. The reason field
carries the deny message produced by the gate implementation.
Khive(KhiveError)
A structured khive_types::KhiveError converted into the runtime
layer. The full structured error is preserved so callers can inspect
kind, code, details, and retry_hint without information loss.
NamespaceMismatch
Record exists but belongs to a different namespace than the provided token.
Externally reported as “not found in this namespace” to avoid leaking cross-namespace existence information (ADR-007 timing-oracle mitigation).
AmbiguousPrefix
A short-prefix lookup matched more than one record (ADR-016 §UUID arguments).
prefix is the 8+ hex-char prefix supplied by the caller.
matches holds the full UUIDs of all matching records (at most 2 are
reported to bound the scan — callers must supply the full UUID to disambiguate).
CrossBackendMergeUnsupported
Cross-backend merge_entity is unsupported in v1 (ADR-009 §cross-backend-merge).
Both entities must reside on the same backend. To merge entities on different
backends, manually export from_id, delete it, and re-import on into_id’s backend.
UnknownRemote
A kg:// ref names a remote not declared in schema.yaml.
RemoteCacheMissing
A remote cache entry is absent and --fetch was not requested.
AmbiguousId
A short ID matches multiple entities in the same namespace or remote cache.
CrossNamespaceWrite
A write operation targeted a remote namespace, which is read-only.
RemoteFetchError
A remote fetch failed (network error, authentication failure, etc.).
Trait Implementations§
Source§impl Debug for RuntimeError
impl Debug for RuntimeError
Source§impl Display for RuntimeError
impl Display for RuntimeError
Source§impl Error for RuntimeError
impl Error for RuntimeError
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()