pub enum Trigger {
Dispatch,
Activity,
Suspend,
Resume,
Kill,
Complete,
Fail,
Abandon,
HostRestart,
}Expand description
The event driving a lifecycle transition attempt. Distinct from the wire-level verbs
(agent.spawn/agent.resume/agent.kill/agent.suspend/agent.observe): Dispatch,
Activity, Complete, Fail, Abandon, and HostRestart are runtime-internal triggers
that ADR-142’s table drives automatically rather than through a caller-issued verb.
agent.spawn itself is not a Trigger — it creates a record rather than transitioning
an existing one, so it is out of scope for this function (see the module-level tests).
Variants§
Dispatch
The provider begins producing the first turn (spawned -> running).
Activity
A subsequent round of an already-running turn (running -> running, a no-op:
no state change is persisted and state_changed_at is not refreshed).
Suspend
Resume
Kill
Complete
The provider returns its terminal result with no further tool calls pending.
Fail
An unrecoverable provider or dispatch error.
Abandon
The record’s persistent native attachment disconnects without an explicit kill.
HostRestart
Runtime restart boot scan.
Trait Implementations§
impl Copy for Trigger
impl Eq for Trigger
impl StructuralPartialEq for Trigger
Auto Trait Implementations§
impl Freeze for Trigger
impl RefUnwindSafe for Trigger
impl Send for Trigger
impl Sync for Trigger
impl Unpin for Trigger
impl UnsafeUnpin for Trigger
impl UnwindSafe for Trigger
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,
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<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
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> ⓘ
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