pub enum TimeoutOutputKind {
NoResult,
PartialResult,
}Expand description
Whether a timed-out agent produced a result file before being cut off.
Carried in AgentEvent::TimedOut so the reducer can apply different retry
policies based on the state of the expected output file.
§Classification Logic
NoResult: No result file was produced at all — agent likely crashed, hit an auth/API failure, or was never able to start work.PartialResult: Result file exists on disk but is not valid XML — agent started work but was interrupted before writing a complete, parseable result.
Note: a completed result (valid file) is NOT represented here — that case is
promoted to AgentInvocationSucceeded before this enum is consulted.
§Serde Backward Compatibility
Old checkpoints used “NoOutput” and “PartialOutput”; serde aliases map those serialized strings to the renamed variants.
Old checkpoints did not carry output_kind; the field uses an explicit default
function (default_timeout_output_kind) that defaults to PartialResult to
preserve pre-feature retry behavior (same-agent retry, not immediate switch).
Variants§
NoResult
No result file was produced — likely a crash, auth failure, or network issue.
PartialResult
Result file exists but is invalid or incomplete — agent was interrupted mid-work.
Trait Implementations§
Source§impl Clone for TimeoutOutputKind
impl Clone for TimeoutOutputKind
Source§fn clone(&self) -> TimeoutOutputKind
fn clone(&self) -> TimeoutOutputKind
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read moreSource§impl Debug for TimeoutOutputKind
impl Debug for TimeoutOutputKind
Source§impl<'de> Deserialize<'de> for TimeoutOutputKind
impl<'de> Deserialize<'de> for TimeoutOutputKind
Source§fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
Source§impl PartialEq for TimeoutOutputKind
impl PartialEq for TimeoutOutputKind
Source§impl Serialize for TimeoutOutputKind
impl Serialize for TimeoutOutputKind
impl Copy for TimeoutOutputKind
impl Eq for TimeoutOutputKind
impl StructuralPartialEq for TimeoutOutputKind
Auto Trait Implementations§
impl Freeze for TimeoutOutputKind
impl RefUnwindSafe for TimeoutOutputKind
impl Send for TimeoutOutputKind
impl Sync for TimeoutOutputKind
impl Unpin for TimeoutOutputKind
impl UnsafeUnpin for TimeoutOutputKind
impl UnwindSafe for TimeoutOutputKind
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
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§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.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>
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>
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