pub struct WorkExplanation {Show 16 fields
pub gates: GateReport,
pub transitions: BTreeMap<Transition, GateReport>,
pub progress: ProgressSummary,
pub context: ExecutionContext,
pub work: WorkItem,
pub ready: bool,
pub applicability: Applicability,
pub predecessors: Vec<WorkItem>,
pub downstream_count: usize,
pub schedule: Option<ActivitySchedule>,
pub unestimated: bool,
pub criticality: Option<f64>,
pub drag_hours: Option<f64>,
pub pert_variance_hours2: Option<f64>,
pub why_now: Vec<String>,
pub basis: BasisReport,
}Expand description
Execution contract, prerequisites, and derived reason for a work item.
Fields§
§gates: GateReportClaim eligibility, the same report next and status use.
transitions: BTreeMap<Transition, GateReport>Eligibility of every lifecycle transition, so FF/SF finish gates are visible before a claim.
progress: ProgressSummaryExecution percentage, independent completion condition and completion time.
context: ExecutionContextResolved requirements, gates, evidence and related work for the execution contract.
work: WorkItemWork-item projection represented by this result, including recorded event times.
ready: boolWhether this task can be claimed now.
applicability: ApplicabilityWhether the work belongs to the active graph, derived from conditions, joins and choices.
predecessors: Vec<WorkItem>Direct predecessor work items.
downstream_count: usizeCount of distinct transitively dependent work items.
schedule: Option<ActivitySchedule>Derived timing of this activity when available.
unestimated: boolWhether the forecast counts this task as 0 h because it has no estimate, so schedule,
criticality and every forecast that includes it are optimistic; see
is_unestimated.
criticality: Option<f64>Fraction of sampled schedules in which each activity is critical.
drag_hours: Option<f64>Hours the deterministic remaining finish would move if this work took no time: zero off the critical path, negative when shortening it would delay the finish; absent for work outside the active graph.
pert_variance_hours2: Option<f64>Classical PERT variance ((P − O) / 6)² of the remaining duration, in hours squared:
started work keeps only the range its elapsed time allows (O raised to the elapsed
hours), finished or unestimated work has none. It is the analytic approximation’s input,
not the variance of the beta-PERT duration the simulation samples. Absent for work outside
the active graph.
why_now: Vec<String>Readiness, blocker, gate, lifecycle, lag and schedule explanations.
basis: BasisReportProvisional bases this work relies on, and other work relying on its submission attempts.