pub struct ExecutionRecord {
pub status: WorkStatus,
pub reported_progress_percent: u8,
pub artifact_ids: BTreeSet<ArtifactId>,
pub owner: Option<ActorId>,
pub handoffs: Vec<Handoff>,
pub releases: Vec<ClaimRelease>,
pub events: ExecutionEvents,
pub last_rejection: Option<ReviewRejection>,
pub attempts: Vec<SubmissionAttempt>,
pub basis: Vec<DependencyBasis>,
pub block_reason: Option<String>,
}Expand description
Execution records protected as one value by reviewed plan changes.
Fields§
§status: WorkStatusStored lifecycle; aggregate work has derived completion.
reported_progress_percent: u8Owner-reported task execution progress; verification remains a separate condition.
artifact_ids: BTreeSet<ArtifactId>Attached evidence identifiers.
owner: Option<ActorId>Principal that claimed the task and owns submission.
handoffs: Vec<Handoff>Authorized ownership transfers in order; append-only, so every earlier holder stays known.
releases: Vec<ClaimRelease>Claims given back before a start, in order; append-only, so a releaser stays a holder.
events: ExecutionEventsExecution event times recorded by lifecycle commands.
last_rejection: Option<ReviewRejection>Most recent independent rejection; retained across resubmission as review context.
attempts: Vec<SubmissionAttempt>Every submission in order; reviews close attempts but never remove or renumber them.
basis: Vec<DependencyBasis>Predecessor attempts this task’s execution relies on; append-only, latest per edge applies.
block_reason: Option<String>Non-empty reason while the task is blocked.
Implementations§
Source§impl ExecutionRecord
impl ExecutionRecord
Sourcepub fn latest_recorded_at(&self) -> Option<DateTime<Utc>>
pub fn latest_recorded_at(&self) -> Option<DateTime<Utc>>
Latest time carried by any lifecycle, ownership, review or basis record of this execution.
An unstarted claim contributes its reservation time; after the start, the start time, which cannot precede the claim, orders the history instead. A backfilled event must not precede anything the task’s history already orders.