dpm-engine 0.1.0

Command/query execution engine for DPM
Documentation
//! Validated commands and consistent execution projections for humans and agents.

mod change;
pub use change::{
    AffectedWork, ApplicabilityChange, ChangePreview, EdgeRelaxation, EntityChange,
    RelaxedConstraint, apply_plan_change, json_equivalent, patch, plan_change, propose_change,
    propose_revert, protected_work,
};
mod command;
mod context;
mod execution;
mod gates;
pub use gates::{
    GateReport, ProvisionalRelease, Transition, UnmetGate, describe_applicability, gate_report,
};
mod progress;
mod query;
mod readiness;
mod run;
pub use run::{
    LinkRefusal, OperationFacts, RunError, STALE_AFTER, authorize as authorize_run, check_link,
    check_transition as check_run_transition, observe_start as observe_run_start,
    project as project_run, start_event as run_start_event,
};
mod schedule_view;
pub use schedule_view::{
    ScheduleProjection, ScheduleSpan, ScheduleUncertainty, ScheduledRelation, ScheduledTimes,
    ScheduledWork, schedule_projection, schedule_span,
};
mod scope;
pub use scope::{
    NEXT_RESULT_VERSION, NextWorkResult, OutsideScope, ScopeError, ScopeMember, ScopedCandidate,
    WorkScope, next_in_scope,
};

pub use command::{Command, EngineError, ExternalLinkRequest, Operation};
pub use execution::apply_command;
pub use query::{
    Advisory, AgingWork, AppliedCalibration, AppliedFactor, AppliedReviewDelay,
    BULK_WINDOW_SECONDS, BasisReport, CalibrationReport, CalibrationRules, ClaimOutcomes,
    CriticalityBasis, Durations, EstimateCalibration, EstimateSample, Exclusion, ExclusionReason,
    FlowReport, ForecastSpread, HistoryCoverage, HolderOutcomes, HourBasis, InapplicableWork,
    MAX_APPLIED_RATIO, MAX_SCENARIOS, MIN_ACTUAL_SECONDS, MIN_AGENT_APPLIED_RATIO,
    MIN_APPLIED_RATIO, MIN_SAMPLES, MilestoneForecast, NextWorkCandidate, NextWorkQuery,
    OpenChoices, PathStep, PertApproximationReport, REVIEW_FLOOR_SECONDS, RatioGroup, ReasonCount,
    Reliability, RiskForecast, ScenarioForecast, StatusSummary, THROUGHPUT_WEEKS, Throughput,
    WaitGroup, WaitReport, WeekCount, WorkExplanation, advisories, calibration, excluded_in_flight,
    explain_work, in_status_scope, is_unestimated, min_applied_ratio, next_work, status,
    status_at_horizon, status_calibrated, status_calibrated_at_horizon, unestimated,
};
pub use readiness::{completion, is_ready, show_work};

pub use context::ExecutionContext;

pub use progress::{ProgressProjection, ProgressScope, ProgressSummary, progress};