param( [string]$Python = "C:\Users\A\.cache\codex-runtimes\codex-primary-runtime\dependencies\python\python.exe", [int]$Epochs = 50, [int]$BatchSize = 32 ) $ErrorActionPreference = "Stop" $Root = "E:\Gaze_estimation" $Participants = @("p01", "p08", "p11") $Seeds = @(20260809, 20260810, 20260811) $Arms = @("control", "point_kd", "quality_gated_point_kd", "shuffled_teacher_kd") Set-Location -LiteralPath $Root foreach ($Participant in $Participants) { foreach ($Seed in $Seeds) { foreach ($Arm in $Arms) { $Summary = Join-Path $Root "artifacts\kd-teacher-trap-diagnostic\matched-runs-v1\$Participant\seed-$Seed\$Arm\summary.json" if (Test-Path -LiteralPath $Summary) { throw "immutable run already exists: $Summary" } & $Python experiments\train_matched_pointkd.py --held-out $Participant --arm $Arm --seed $Seed --epochs $Epochs --batch-size $BatchSize --workers 4 --device cpu if ($LASTEXITCODE -ne 0) { throw "matched preflight failed for $Participant seed $Seed arm $Arm" } } } } & $Python scripts\analyze_matched_pointkd_runs.py if ($LASTEXITCODE -ne 0) { throw "matched preflight analysis failed" }