Source: scripts/evaluate_observability_supervision.py · Plain text

scripts/evaluate_observability_supervision.py

"""Evaluate frozen context-supervision states after every phase state is sealed."""

import argparse
import json
from pathlib import Path

from mcss.mechanism_pilot.observability_supervision_evaluation import evaluate_supervision

if __name__ == "__main__":
    parser = argparse.ArgumentParser(description=__doc__)
    parser.add_argument("--root", required=True)
    parser.add_argument("--phase", choices=("baseline", "formal"), required=True)
    parser.add_argument("--device", default="cuda")
    args = parser.parse_args()
    rows = evaluate_supervision(args.root, args.phase, args.device)
    print({"phase": args.phase, "rows": len(rows)})

    if args.phase == "baseline":
        reproduction = json.loads((Path(args.root) / "baseline_reproduction.json").read_text())
        print({"BASELINE_REPRO_STATUS": reproduction["status"]})
        if reproduction["status"] != "PASS":
            raise SystemExit(2)