pub enum DespawnResult {
Despawned {
worktree_cleanup_warning: Option<String>,
branch_cleanup_warning: Option<String>,
},
Blocked {
reason: String,
},
NotFound,
Failed {
reason: String,
},
}Expand description
Outcome of a Command::DespawnWorker, sent back to the calling
agents__despawn Tool via the command’s respond oneshot.
Variants§
Despawned
The worker was torn down (subprocess killed, dropped from
live_workers). worktree_cleanup_warning
is Some when the post-teardown git worktree remove failed -
the worker is still gone; only the worktree directory lingers.
Teardown and worktree cleanup are independent: a cleanup failure
never rolls back the kill.
branch_cleanup_warning is Some when the worker’s
worktree-<label> branch was left in place - it holds commits
reachable from no other ref, or the check itself failed.
Blocked
Despawn refused: the worktree has uncommitted/untracked changes
or unpushed commits and force was not set. Nothing was torn
down; the worker stays live. reason names what is dirty.
NotFound
No live worker matched label (already gone or never existed).
Failed
The despawn could not be carried out: the worker’s durable row
could not be read or removed, so whether one is there is unknown.
Distinct from Self::NotFound, which claims there is none.
Trait Implementations§
Source§impl Debug for DespawnResult
impl Debug for DespawnResult
Source§impl<'de> Deserialize<'de> for DespawnResult
impl<'de> Deserialize<'de> for DespawnResult
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>,
Auto Trait Implementations§
impl Freeze for DespawnResult
impl RefUnwindSafe for DespawnResult
impl Send for DespawnResult
impl Sync for DespawnResult
impl Unpin for DespawnResult
impl UnsafeUnpin for DespawnResult
impl UnwindSafe for DespawnResult
Blanket Implementations§
§impl<T> AnySync for T
impl<T> AnySync for T
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
impl<T> DeserializeOwned for Twhere
T: for<'de> Deserialize<'de>,
impl<S, T> Duplex<S> for Twhere
T: FromSample<S> + ToSample<S>,
§impl<S> FromSample<S> for S
impl<S> FromSample<S> for S
fn from_sample_(s: S) -> S
§impl<T> Instrument for T
impl<T> Instrument for T
§fn instrument(self, span: Span) -> Instrumented<Self> ⓘ
fn instrument(self, span: Span) -> 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