pub struct JobSnapshot {
pub family: JobFamily,
pub enqueued_ns: u64,
pub started_ns: u64,
pub finished_ns: u64,
pub outcome: Outcome,
pub failure: Option<Failure>,
pub stages: Vec<JobStage>,
pub handoffs: Vec<ComponentHandoff>,
}Expand description
Complete, deterministic timing record for one local workspace job.
Fields§
§family: JobFamilyFinite job family.
enqueued_ns: u64Enqueue boundary on the job’s monotonic timeline.
started_ns: u64Start boundary on the same timeline.
finished_ns: u64Finish boundary on the same timeline.
outcome: OutcomeNormalized job outcome.
failure: Option<Failure>Normalized failure class; raw provider or engine errors are never retained.
stages: Vec<JobStage>Non-overlapping active intervals in chronological order.
handoffs: Vec<ComponentHandoff>Ordered component transfers actually observed.
Implementations§
Source§impl JobSnapshot
impl JobSnapshot
Sourcepub fn validate(&self) -> Result<(), InvalidJobSnapshot>
pub fn validate(&self) -> Result<(), InvalidJobSnapshot>
Validate timing math and deny ambiguous or overlapping attribution.
Sourcepub const fn queue_delay_ns(&self) -> u64
pub const fn queue_delay_ns(&self) -> u64
Queue delay in nanoseconds.
Sourcepub const fn active_duration_ns(&self) -> u64
pub const fn active_duration_ns(&self) -> u64
Active wall time in nanoseconds.
Sourcepub const fn total_duration_ns(&self) -> u64
pub const fn total_duration_ns(&self) -> u64
Total elapsed wall time in nanoseconds.
Trait Implementations§
Source§impl Clone for JobSnapshot
impl Clone for JobSnapshot
Source§impl Debug for JobSnapshot
impl Debug for JobSnapshot
impl Eq for JobSnapshot
Source§impl PartialEq for JobSnapshot
impl PartialEq for JobSnapshot
Source§impl Serialize for JobSnapshot
impl Serialize for JobSnapshot
impl StructuralPartialEq for JobSnapshot
Auto Trait Implementations§
impl Freeze for JobSnapshot
impl RefUnwindSafe for JobSnapshot
impl Send for JobSnapshot
impl Sync for JobSnapshot
impl Unpin for JobSnapshot
impl UnsafeUnpin for JobSnapshot
impl UnwindSafe for JobSnapshot
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