pub enum LeaveError {
Refused {
class: RefusalClass,
detail: String,
},
ConnectionLost {
detail: String,
},
AnswerTimeout {
waited: Duration,
},
Endpoint {
detail: String,
},
ResumeRejected {
detail: String,
},
Store {
detail: String,
},
Protocol {
detail: String,
},
}Expand description
Failure leaving a conversation (the F-3b R1 explicit-leave surface,
wrapping the substrate’s terminal LeaveRequest — brief §Gate fill S1
leave paragraph, probe findings 2026-07-23). The typed already-left
answers are OUTCOMES (LeaveOutcome), never errors.
Variants§
Refused
The substrate answered the leave with a typed refusal (stale authority, generation conflict, identity refusal — the exact upstream answer is preserved in the detail).
ConnectionLost
The connection was lost before the leave’s correlated answer.
AnswerTimeout
The declared answer window elapsed without the leave’s correlated terminal answer.
Endpoint
The bus endpoint was rejected or unreachable (the resumed-leave path’s connect leg).
ResumeRejected
The caller-supplied resume state failed decode/validate/restore (the resumed-leave path’s restore leg).
Store
The caller-owned durable store failed a persistence barrier.
Protocol
A protocol-shape violation at the leave seam.
Trait Implementations§
Source§impl Debug for LeaveError
impl Debug for LeaveError
Source§impl Display for LeaveError
impl Display for LeaveError
Source§impl Error for LeaveError
impl Error for LeaveError
1.30.0 · 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()
Auto Trait Implementations§
impl Freeze for LeaveError
impl RefUnwindSafe for LeaveError
impl Send for LeaveError
impl Sync for LeaveError
impl Unpin for LeaveError
impl UnsafeUnpin for LeaveError
impl UnwindSafe for LeaveError
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
impl<ST, DT> CastableFrom<ST, Initialized, Initialized> for DT
impl<ST, DT> CastableFrom<ST, Uninit, Uninit> for DT
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> IntoRequest<T> for T
impl<T> IntoRequest<T> for T
Source§fn into_request(self) -> Request<T>
fn into_request(self) -> Request<T>
T in a tonic::Request