pub struct TaskSnapshot {
pub task_id: TaskId,
pub name: String,
pub state: TaskState,
pub blocked_by: Vec<TaskId>,
pub gates: Vec<(GateType, GateResult)>,
pub last_transition_at: Option<DateTime<Utc>>,
pub resource_usage: Option<CommandResourceUsage>,
pub token_usage: Option<TokenUsage>,
pub budget_breach_reason: Option<String>,
}Expand description
Snapshot of a single task’s state for explain computation.
Fields§
§task_id: TaskId§name: String§state: TaskState§blocked_by: Vec<TaskId>Task IDs this task is blocked by (dependency graph edges).
gates: Vec<(GateType, GateResult)>Gate results for this specific task.
last_transition_at: Option<DateTime<Utc>>When the task last changed state.
resource_usage: Option<CommandResourceUsage>Resource usage from the last command execution (if available).
token_usage: Option<TokenUsage>Token usage from the last command execution (if available).
budget_breach_reason: Option<String>If the task failed due to budget breach, the failure reason.
Trait Implementations§
Source§impl Clone for TaskSnapshot
impl Clone for TaskSnapshot
Source§fn clone(&self) -> TaskSnapshot
fn clone(&self) -> TaskSnapshot
Returns a duplicate of the value. Read more
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source. Read moreSource§impl Debug for TaskSnapshot
impl Debug for TaskSnapshot
Source§impl<'de> Deserialize<'de> for TaskSnapshot
impl<'de> Deserialize<'de> for TaskSnapshot
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>,
Deserialize this value from the given Serde deserializer. Read more
Auto Trait Implementations§
impl Freeze for TaskSnapshot
impl RefUnwindSafe for TaskSnapshot
impl Send for TaskSnapshot
impl Sync for TaskSnapshot
impl Unpin for TaskSnapshot
impl UnsafeUnpin for TaskSnapshot
impl UnwindSafe for TaskSnapshot
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
Mutably borrows from an owned value. Read more
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Source§impl<T> FutureExt for T
impl<T> FutureExt for T
Source§fn with_context(self, otel_cx: Context) -> WithContext<Self>
fn with_context(self, otel_cx: Context) -> WithContext<Self>
Source§fn with_current_context(self) -> WithContext<Self>
fn with_current_context(self) -> WithContext<Self>
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>
Converts
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>
Converts
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 moreSource§impl<T> IntoRequest<T> for T
impl<T> IntoRequest<T> for T
Source§fn into_request(self) -> Request<T>
fn into_request(self) -> Request<T>
Wrap the input message
T in a tonic::Request