memoir_core/client/
error.rs1use crate::embedding::EmbeddingError;
2use crate::jobs::JobsError;
3use crate::llm::LlmError;
4use crate::store::StoreError;
5use crate::vector::VectorError;
6
7#[derive(Debug, thiserror::Error)]
9pub enum ClientError {
10 #[error("embedding model failed: {0}")]
11 Embedding(#[from] EmbeddingError),
12
13 #[error("vector index failed: {0}")]
14 Vector(#[from] VectorError),
15
16 #[error("store failed: {0}")]
17 Store(#[from] StoreError),
18
19 #[error("jobs failed: {0}")]
20 Jobs(#[from] JobsError),
21
22 #[error("llm provider failed: {0}")]
23 Llm(#[from] LlmError),
24
25 #[error("migration failed: {0}")]
26 Migration(#[from] crate::migration::MigrationError),
27
28 #[error("database connection failed: {0}")]
29 Database(#[from] sea_orm::DbErr),
30
31 #[error(
32 "metadata uses reserved key '{key}'; reserved keys are owned by memoir-core's payload schema and cannot be set via metadata"
33 )]
34 ReservedMetadataKey { key: String },
35
36 #[error("nli classifier failed: {0}")]
38 Nli(String),
39
40 #[error("memory {pid} is not correctable via feedback: {reason}")]
47 NotCorrectable { pid: String, reason: String },
48
49 #[cfg(feature = "knowledge-graph")]
51 #[error("knowledge graph failed: {0}")]
52 Graph(#[from] crate::graph::GraphError),
53
54 #[cfg(feature = "knowledge-graph")]
56 #[error("a graph_name was configured but no falkor connection was supplied")]
57 GraphNotConfigured,
58}