Skip to main content

run_differential_in

Function run_differential_in 

Source
pub fn run_differential_in(
    session: &mut DifferentialSession,
    merge: &str,
    runner: &Path,
    command_file: &Path,
    state_dir: &Path,
) -> Result<DifferentialOutcome, String>
Expand description

Runs one observation in an already-open session’s three worktrees.

This is the loop body of a calibration run: the session is opened once and reused, so the build directories the operator’s command creates survive between observations. Everything about the result is unchanged — the same runner, the same argv, the same structured receipt validation as the single-observation run_differential.

The result is always advisory. This function only validates and returns a closed structured result; callers have no landing-gate output to consume. The state directory and command file are explicit arguments, never environment configuration.

§Errors

The merge does not have two parents, a worktree cannot be created or moved to the requested revision, the runner fails operationally, or its structured result is malformed/claims that landing gating is enabled.