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:
PlanExecutor— producesExecSteprecords describing what a wet-run would do without mutating state. Safe to call over any pack.FsExecutor(slice 5b) performs the side effects and returns the sameExecStepshape withExecResult::PerformedChange.
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::executecall. - Exec
Step - Observable record of a single action’s execution (or planned execution).
Enums§
- Exec
Result - Coarse-grained outcome of a single step.
- Platform
- OS discriminator used by the planner and
when/ospredicate paths. - Predicate
Outcome - Whether a
requirepredicate tree evaluated to true. - Step
Kind - Variant-specific detail for a recorded step.
Traits§
- Action
Executor - Uniform surface for anything that consumes an
Action.
Type Aliases§
- Meta
Visited Set - Shared cycle-detection set threaded through
crate::plugin::pack_type::MetaPluginrecursion.