#[non_exhaustive]pub enum Status {
Completed,
MaxTurns,
ModelError,
Error,
Cancelled,
}Expand description
The terminal state of a run. Serializes to the exact strings in ADR-0009.
Envelope evolution policy at schema_version: 1 (ADR-0018): additions
— new status values, new optional record/report fields — are
non-breaking and do not bump schema_version; renames and removals
are breaking and would. JSON consumers should therefore treat an
unrecognized status string as “unknown terminal state”, not a parse
error; Rust consumers get the same discipline from #[non_exhaustive]
(match with a wildcard arm — locode-exec maps unknown statuses to
exit 1).
Variants (Non-exhaustive)§
This enum is marked as non-exhaustive
Completed
The model finished with a text answer and no further tool calls.
MaxTurns
The max-turns ceiling was hit.
ModelError
A provider/network error after bounded retry.
Error
A fatal (Tool/host) error aborted the run.
Cancelled
The run was cancelled through the session’s cancel handle (Esc, a SIGTERM-driven timeout, …) — a structured terminal state, distinct from failure (ADR-0018): partial work is preserved and the report is still emitted.
Trait Implementations§
impl Copy for Status
Source§impl<'de> Deserialize<'de> for Status
impl<'de> Deserialize<'de> for Status
Source§fn deserialize<__D>(
__deserializer: __D,
) -> Result<Status, <__D as Deserializer<'de>>::Error>where
__D: Deserializer<'de>,
fn deserialize<__D>(
__deserializer: __D,
) -> Result<Status, <__D as Deserializer<'de>>::Error>where
__D: Deserializer<'de>,
impl Eq for Status
Source§impl Serialize for Status
impl Serialize for Status
Source§fn serialize<__S>(
&self,
__serializer: __S,
) -> Result<<__S as Serializer>::Ok, <__S as Serializer>::Error>where
__S: Serializer,
fn serialize<__S>(
&self,
__serializer: __S,
) -> Result<<__S as Serializer>::Ok, <__S as Serializer>::Error>where
__S: Serializer,
impl StructuralPartialEq for Status
Auto Trait Implementations§
impl Freeze for Status
impl RefUnwindSafe for Status
impl Send for Status
impl Sync for Status
impl Unpin for Status
impl UnsafeUnpin for Status
impl UnwindSafe for Status
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> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> DeserializeOwned for Twhere
T: for<'de> Deserialize<'de>,
Source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
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
key and return true if they are equal.