pub struct CommandEvidence {
pub id: String,
pub description: String,
pub exit_code: Option<i32>,
pub result_summary: String,
pub source: String,
}Expand description
One command a CLI’s own structured event stream reported running, with the result it reported for it.
This is evidence the CLI chose to report about its own tool loop — never
something magi polled, supervised, or inferred from a process list. Only
the Codex arm of [extract] currently populates it (its item.completed
/ command_execution events name id, command, exit_code and
aggregated_output directly); every other backend’s CLI does not expose
this in what magi currently captures, so its seats simply never produce
any. A command a CLI never reported finishing (still running when the
turn ended, or the event stream never named it) has no entry here either
— there is no event to build one from, and this type must never be used
to guess that a command is still in flight.
Fields§
§id: StringThe CLI’s own id for this command.
description: StringThe command itself, as the CLI reported it.
exit_code: Option<i32>Exit code the CLI reported for it.
result_summary: StringTail of the command’s own output, when the CLI reported one.
source: StringWhich CLI/event stream this came from, e.g. "codex".
Trait Implementations§
Source§impl Clone for CommandEvidence
impl Clone for CommandEvidence
Source§impl Debug for CommandEvidence
impl Debug for CommandEvidence
Source§impl<'de> Deserialize<'de> for CommandEvidence
impl<'de> Deserialize<'de> for CommandEvidence
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 CommandEvidence
impl RefUnwindSafe for CommandEvidence
impl Send for CommandEvidence
impl Sync for CommandEvidence
impl Unpin for CommandEvidence
impl UnsafeUnpin for CommandEvidence
impl UnwindSafe for CommandEvidence
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,
impl<T> DeserializeOwned for Twhere
T: for<'de> Deserialize<'de>,
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