pub struct BgProcessSnapshot {
pub pid: u32,
pub command: String,
pub age: Duration,
pub status: BgProcessStatus,
pub spawner: Option<u32>,
}Expand description
Snapshot of a tracked background process — what /agents (combined
view, see #996 Layer 2) and the ListBackgroundTasks LLM tool render.
Cloned out of the registry under the lock so callers can format / display without holding it.
Fields§
§pid: u32OS process id. Stable for the process’s lifetime; reused by the kernel after it exits (so don’t compare snapshots across long pauses).
command: StringThe original shell command string. Surfaced verbatim by the TUI; truncation is the renderer’s job.
age: DurationWall-clock duration since insert. Computed at snapshot time, so successive snapshots of the same process report different ages.
status: BgProcessStatusLatest known status (set by BgRegistry::reap / kill).
spawner: Option<u32>Sub-agent invocation id of the spawner, or None for the
top-level inference loop. Drives BgRegistry::kill_for_spawner
(Model E cleanup-on-exit) and the LLM scope-filter.
Trait Implementations§
Source§impl Clone for BgProcessSnapshot
impl Clone for BgProcessSnapshot
Source§fn clone(&self) -> BgProcessSnapshot
fn clone(&self) -> BgProcessSnapshot
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read moreSource§impl Debug for BgProcessSnapshot
impl Debug for BgProcessSnapshot
Source§impl PartialEq for BgProcessSnapshot
impl PartialEq for BgProcessSnapshot
impl Eq for BgProcessSnapshot
impl StructuralPartialEq for BgProcessSnapshot
Auto Trait Implementations§
impl Freeze for BgProcessSnapshot
impl RefUnwindSafe for BgProcessSnapshot
impl Send for BgProcessSnapshot
impl Sync for BgProcessSnapshot
impl Unpin for BgProcessSnapshot
impl UnsafeUnpin for BgProcessSnapshot
impl UnwindSafe for BgProcessSnapshot
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§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