pub async fn execute_single(
gate_name: &str,
dag: &GateDAG,
cached_results: &HashMap<String, (GateResult, String)>,
current_hashes: &HashMap<String, String>,
workspace_root: &Path,
runner: &dyn GateRunner,
) -> Vec<GateResult>Expand description
Execute a single named gate, running its unsatisfied prerequisites first.
Prerequisites are considered satisfied (and skipped) when the cache map
contains a valid cached result for that gate. Cache validity is determined
by is_cache_valid.
§Parameters
gate_name: the target gate to execute.dag: the full gate graph.cached_results: map from gate name →(GateResult, content_hash). Pass an empty map to run all prerequisites unconditionally.current_hashes: map from gate name → current content hash for validation.workspace_root: working directory.runner: injectable gate runner.