AsianPlayer/TriDrive / code /eval /run_joint_evals_final_ncroi.sh
AsianPlayer's picture
download
raw
3.85 kB
#!/usr/bin/env bash
# cwm3/eval/run_joint_evals_final_ncroi.sh — roadmap E4: paired evaluations of the joint-level NON-CAUSAL ROI sensitivity row (2026-09-13; pre-registered in
# docs/decisions.md), CPU, layout guards on. Runs I1_{indep,all_minus_road2drv}_s<k>_final_ncroi (U base = survivor recipe on the cwm2 route-median NON-causal
# kinematics) vs the FROZEN main I1_all_minus_road2drv_s<k>_final and I1_indep_s<k>_final (read-only). Identical rows; every tag idempotent.
# finalc_s<k>_allminusncroi_vs_allminus (a) ncroi variant vs FROZEN main on the v2 CAUSAL driver targets — the pre-registered comparison (per-cell verdicts)
# finalc_s<k>_allminusncroi_vs_indepncroi (b) interaction effect on the ncroi bases
# finalc_s<k>_indepncroi_vs_indep the U-base swap alone (assembled bases, no training)
# finalcm_s<k>_allminusncroi_vs_{allminus,indepncroi} masked protocol (64 v2 driver-box-suspect routes censored)
# finalc_s<k>_{allminusncroi,indepncroi}_vs_k0, finalcm_s<k>_allminusncroi_vs_k0 driver cells vs k0 / persistence (B1 on the variant)
# final_s<k>_allminusncroi_vs_allminus, final_s<k>_indepncroi_vs_indep DESCRIPTIVE: cwm2 route-median targets (the leak picture K4 removed)
# finalP_s<k>_allminusncroi_vs_{allminus,indepncroi} P cells (eval/pressure_eval.py)
# bash eval/run_joint_evals_final_ncroi.sh "0 1 2" [render=1]
set -u
cd "$(dirname "$0")/.."
PY=python
export OMP_NUM_THREADS=4 MKL_NUM_THREADS=4
MASK=results/targets_kin_causal_routes_v2/driver_box_suspect_routes.json
have_tag() { grep -q ",$1,$2,test," results/paired_compare.csv 2>/dev/null; }
done_run() { [[ -f results/runs/$1/PRED_DONE && -f results/runs/$1/TRAIN_DONE ]]; }
pc() { # tag a b [extra args] (b = none with --b-k0)
local tag="$1" a="$2" b="$3"; shift 3
done_run "$a" || { echo "skip $tag ($a not finished)"; return; }
[[ "$b" == none ]] || done_run "$b" || { echo "skip $tag ($b not finished)"; return; }
for reg in manual engaged; do
have_tag "$tag" "$reg" && continue
echo "== $tag $reg"
$PY eval/paired_compare_joint.py --regime "$reg" --a "results/runs/$a" --b "results/runs/$b" --tag "$tag" "$@" 2>&1 | grep -E "appended|Error|Traceback|File \"|LAYOUT GUARD" | cut -c1-220
done
}
pe() { # pressure_eval: tag a b
local tag="$1" a="$2" b="$3"
done_run "$a" && done_run "$b" || { echo "skip $tag"; return; }
for reg in manual engaged; do
have_tag "$tag" "$reg" && continue
echo "== $tag $reg (P cells)"
$PY eval/pressure_eval.py --regime "$reg" --a "results/runs/$a" --b "results/runs/$b" --tag "$tag" 2>&1 | grep -E "appended|Error|Traceback|File \"|LAYOUT GUARD" | cut -c1-220
done
}
C="--kin-targets causal_routes --kin-version v2"
for s in ${1:-0 1 2}; do
AN=I1_all_minus_road2drv_s${s}_final_ncroi; IN=I1_indep_s${s}_final_ncroi; AM=I1_all_minus_road2drv_s${s}_final; I=I1_indep_s${s}_final
pc "finalc_s${s}_allminusncroi_vs_allminus" $AN $AM $C
pc "finalc_s${s}_allminusncroi_vs_indepncroi" $AN $IN $C
pc "finalc_s${s}_indepncroi_vs_indep" $IN $I $C
pc "finalcm_s${s}_allminusncroi_vs_allminus" $AN $AM $C --mask-routes $MASK
pc "finalcm_s${s}_allminusncroi_vs_indepncroi" $AN $IN $C --mask-routes $MASK
pc "finalc_s${s}_allminusncroi_vs_k0" $AN none $C --b-k0
pc "finalcm_s${s}_allminusncroi_vs_k0" $AN none $C --b-k0 --mask-routes $MASK
pc "finalc_s${s}_indepncroi_vs_k0" $IN none $C --b-k0
pc "final_s${s}_allminusncroi_vs_allminus" $AN $AM
pc "final_s${s}_indepncroi_vs_indep" $IN $I
pe "finalP_s${s}_allminusncroi_vs_allminus" $AN $AM
pe "finalP_s${s}_allminusncroi_vs_indepncroi" $AN $IN
done
if [[ "${2:-1}" == "1" ]]; then S=${1:-0 1 2}
$PY eval/report_final_ncroi.py --seeds ${S// /,} --out results/tables/stage_final_ncroi.md 2>&1 | grep -E "written|READING|VERDICT"
fi
echo FINAL_NCROI_EVALS_DONE

Xet Storage Details

Size:
3.85 kB
·
Xet hash:
5bc8a972192feddd588750467a2e9b0f2103498583c9615ab02066b7d18372b1

Xet efficiently stores files, intelligently splitting them into unique chunks and accelerating uploads and downloads. More info.