pub enum FallbackReason {
EmbeddingFailed(String),
Cancelled,
Timeout {
operation: String,
duration_secs: u64,
},
}Expand description
G58/S1: reason an embedding call could not be completed and the caller must fall back to a non-vector retrieval path (FTS5 prefix + LIKE).
Returned by try_embed_query_with_fallback so the recall and
hybrid-search handlers can surface a structured vec_degraded /
warning envelope instead of a hard AppError::Embedding exit 11.
Variants§
EmbeddingFailed(String)
The LLM subprocess failed (rate limit, OAuth contention, quota exhausted, model unparsable response, divergent dim, etc.). Carries the original error message for observability.
Cancelled
The embedding was cancelled by an external signal (SIGTERM, etc.).
Timeout
The embedding exceeded its time budget. Carries the operation name and the elapsed seconds for diagnostic logging.
Trait Implementations§
Source§impl Clone for FallbackReason
impl Clone for FallbackReason
Source§fn clone(&self) -> FallbackReason
fn clone(&self) -> FallbackReason
Returns a duplicate of the value. Read more
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source. Read moreSource§impl Debug for FallbackReason
impl Debug for FallbackReason
Source§impl Display for FallbackReason
impl Display for FallbackReason
Source§impl Error for FallbackReason
impl Error for FallbackReason
1.30.0 · Source§fn source(&self) -> Option<&(dyn Error + 'static)>
fn source(&self) -> Option<&(dyn Error + 'static)>
Returns the lower-level source of this error, if any. Read more
1.0.0 · Source§fn description(&self) -> &str
fn description(&self) -> &str
👎Deprecated since 1.42.0:
use the Display impl or to_string()
Source§impl PartialEq for FallbackReason
impl PartialEq for FallbackReason
Source§fn eq(&self, other: &FallbackReason) -> bool
fn eq(&self, other: &FallbackReason) -> bool
Tests for
self and other values to be equal, and is used by ==.impl StructuralPartialEq for FallbackReason
Auto Trait Implementations§
impl Freeze for FallbackReason
impl RefUnwindSafe for FallbackReason
impl Send for FallbackReason
impl Sync for FallbackReason
impl Unpin for FallbackReason
impl UnsafeUnpin for FallbackReason
impl UnwindSafe for FallbackReason
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> ErasedDestructor for Twhere
T: 'static,
Source§impl<T> Instrument for T
impl<T> Instrument for T
Source§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
Source§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self>
fn into_either(self, into_left: bool) -> Either<Self, Self>
Converts
self into a Left variant of Either<Self, Self>
if into_left is true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
Converts
self into a Left variant of Either<Self, Self>
if into_left(&self) returns true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read more