pub enum NerError {
NetworkTimeout,
ProviderRejected {
status: u16,
body_excerpt: String,
},
ResponseMalformed {
reason: String,
},
ResponseExceedsTokenLimit {
count: usize,
max: usize,
},
SecretInResponse {
pattern: String,
},
AuthDenied,
}Expand description
All the ways LlmNer::extract can fail. Variants mirror the
metric labels emitted by runtime/ai_ner_failures_total.
Variants§
NetworkTimeout
LLM call exceeded timeout_ms.
ProviderRejected
Provider returned a non-2xx status. body_excerpt is the first
256 bytes of the body, with control bytes stripped — safe to log.
ResponseMalformed
Response wasn’t valid JSON, or didn’t match the expected shape.
ResponseExceedsTokenLimit
Provider returned more than max_tokens_returned tokens.
SecretInResponse
A returned token matched a secret-redactor pattern. The
pattern label says which one (sk_live, bearer, etc.) so
SOC tooling can alert on hallucinated leaks.
AuthDenied
Caller does not hold ai:ner:read.
Trait Implementations§
Source§impl Error for NerError
impl Error for NerError
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()
impl Eq for NerError
impl StructuralPartialEq for NerError
Auto Trait Implementations§
impl Freeze for NerError
impl RefUnwindSafe for NerError
impl Send for NerError
impl Sync for NerError
impl Unpin for NerError
impl UnsafeUnpin for NerError
impl UnwindSafe for NerError
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,
Source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
Source§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
Compare self to
key and return true if they are equal.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 moreSource§impl<T> IntoRequest<T> for T
impl<T> IntoRequest<T> for T
Source§fn into_request(self) -> Request<T>
fn into_request(self) -> Request<T>
Wrap the input message
T in a tonic::Request