pub enum GradatumError {
Show 16 variants
Validation(ValidationError),
Drift(DriftError),
Storage(String),
Markdown(String),
NoteNotFound(NoteId),
InvalidStatusTransition {
from: NoteStatus,
to: NoteStatus,
},
SchemaVersionMismatch {
expected: SchemaVersion,
found: SchemaVersion,
},
VaultNotFound(VaultId),
VaultOnNfs {
path: PathBuf,
},
SchemaValidation(ValidationError),
SchemaMigration(MigrationError),
Io(Error),
TomlParse(Error),
TomlSerialize(Error),
Config(ConfigError),
Inference(String),
}Expand description
Erreur top-level de gradatum-core.
Produite par les couches L0 (core) et retournée aux consommateurs L1+. Chaque variante mappe une couche spécifique de l’architecture.
Variants§
Validation(ValidationError)
Erreur de validation d’une valeur entrante.
Drift(DriftError)
Drift détecté entre le Markdown sur disque et l’index SQLite.
Storage(String)
Erreur de stockage (SQLite, OpenDAL, filesystem).
Les couches de stockage mapent leurs erreurs spécifiques via GradatumError::Storage.
Markdown(String)
Erreur de parsing Markdown.
NoteNotFound(NoteId)
Note introuvable dans l’index.
InvalidStatusTransition
Transition de statut invalide (ne respecte pas la state machine §2.6).
SchemaVersionMismatch
Mismatch de version de schéma frontmatter.
Fields
expected: SchemaVersionVersion attendue par le crate courant.
found: SchemaVersionVersion trouvée dans le frontmatter.
VaultNotFound(VaultId)
Vault introuvable dans la configuration.
VaultOnNfs
Vault monté sur NFS — non supporté.
Caveat C11 — le vault doit être sur un filesystem local.
Détection via nix::sys::statfs::statfs + NFS_SUPER_MAGIC comparison.
SchemaValidation(ValidationError)
Erreur de validation du payload override contre le schéma registry.
SchemaMigration(MigrationError)
Erreur de migration du payload override.
Io(Error)
Erreur I/O (lecture/écriture fichier, permissions, etc.).
TomlParse(Error)
Erreur de parsing TOML.
TomlSerialize(Error)
Erreur de sérialisation TOML.
Config(ConfigError)
Erreur de configuration (chargement TOML, validation champs).
Inference(String)
Erreur d’inférence (embedding, reranker, modèle LLM).
Variant dédié pour les erreurs d’embedder/reranker.
Permet aux handlers (ex: vault_search) de distinguer une panne d’inférence
d’une erreur de stockage et de dégrader gracieusement (fallback BM25 au lieu de 500).
La conversion From<EmbedError> est implémentée côté
gradatum-embed::error pour respecter les orphan rules.
Mapping HTTP recommandé : 503 Service Unavailable (embedder en panne)
— mais les handlers production peuvent préférer un fallback gracieux
(200 + BM25 only) via tracing::warn! et un vecteur sémantique vide.
Trait Implementations§
Source§impl Debug for GradatumError
impl Debug for GradatumError
Source§impl Display for GradatumError
impl Display for GradatumError
Source§impl Error for GradatumError
impl Error for GradatumError
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()