pub async fn run_validator(
backend: &dyn AgentBackend,
log: &mut EventLog,
paths: &MissionPaths,
cfg: &MissionConfig,
kind: Role,
milestone: &Milestone,
contract: &[Assertion],
start_sha: &str,
cancel: Option<Arc<Notify>>,
base_sha: Option<&str>,
grants: &[String],
egress_grants: &[String],
worker_commands: &[String],
guidance: Option<&str>,
standards_pin: Option<&StandardsPin>,
) -> Result<RunOutcome>Expand description
Run one validator session for a milestone (plan §4.4/§4.6).
kind must be Role::ValidatorScrutiny or Role::ValidatorFunctional.
Contract command strings (plus config allow_validator_commands and
operator grants) become Bash(<command>*) allows via
permissions::for_role. worker_commands do NOT: they are the
worker’s own report of what it ran, so they reach the prompt as a claim
and never as a permission. Engine-run contract results are a
validation_round concern — this wrapper passes none; callers with
captured results use run_validator_in directly.