Skip to main content

Module execute

Module execute 

Source
Expand description

Action execution framework.

Stage 5a of M3B wires the surface through which any crate::pack::Action is consumed at run time. The ActionExecutor trait is the uniform boundary:

Keeping the trait narrow (one execute method, read-only ExecCtx) means implementations can be tested in isolation and swapped freely.

§Scope (5a)

The planner applies variable expansion, evaluates predicates, reads the filesystem for idempotency (path.exists(), symlink target), but never writes. RegKey and PsVersion predicates probe the Windows registry and PowerShell on Windows (M4-C) and surface ExecError::PredicateNotSupported on other platforms.

Re-exports§

pub use error::ExecError;
pub use error::EXEC_STDERR_CAPTURE_MAX;
pub use fs_executor::FsExecutor;
pub use plan::PlanExecutor;

Modules§

error
Error taxonomy for the execute phase.
fs_executor
Wet-run executor — slice 5b.
plan
Dry-run executor.

Structs§

ExecCtx
Read-only context passed to every crate::execute::ActionExecutor::execute call.
ExecStep
Observable record of a single action’s execution (or planned execution).

Enums§

ExecResult
Coarse-grained outcome of a single step.
Platform
OS discriminator used by the planner and when/os predicate paths.
PredicateOutcome
Whether a require predicate tree evaluated to true.
StepKind
Variant-specific detail for a recorded step.

Traits§

ActionExecutor
Uniform surface for anything that consumes an Action.

Type Aliases§

MetaVisitedSet
Shared cycle-detection set threaded through crate::plugin::pack_type::MetaPlugin recursion.