#!/usr/bin/env python3 # SPDX-License-Identifier: GPL-3.0-or-later """Validate Phase-1.0AJ external source bindings and closed boundary.""" from __future__ import annotations import argparse import hashlib import json import subprocess from pathlib import Path def sha256(path: Path) -> str: return hashlib.sha256(path.read_bytes()).hexdigest() def commit(root: Path) -> str: return subprocess.run( ["git", "rev-parse", "HEAD"], cwd=root, check=True, capture_output=True, text=True).stdout.strip() def main() -> int: parser = argparse.ArgumentParser() parser.add_argument("--root", type=Path, required=True) parser.add_argument("--shsrv-v07-root", type=Path, required=True) parser.add_argument("--hardened-elfldr-root", type=Path, required=True) args = parser.parse_args() data = json.loads((args.root / "manifests/retroarch/phase-1.0aj-primitive-audit.json").read_text(encoding="utf-8")) bindings = data["source_bindings"] assert sha256(args.root / "manifests/retroarch/phase-1.0ai-mapping-model.json") == bindings["phase10ai_manifest_sha256"] assert commit(args.shsrv_v07_root) == bindings["shsrv_v07_commit"] assert sha256(args.shsrv_v07_root / "elfldr.c") == bindings["shsrv_v07_elfldr_sha256"] assert sha256(args.shsrv_v07_root / "pt.c") == bindings["shsrv_v07_pt_sha256"] assert commit(args.hardened_elfldr_root) == bindings["hardened_elfldr_commit"] for key, relative in ( ("controlled_runtime_c_sha256", "controlled_runtime.c"), ("controlled_runtime_h_sha256", "controlled_runtime.h"), ("hardened_pt_sha256", "pt.c"), ("ps5_controlled_sha256", "ps5_controlled.c"), ): assert sha256(args.hardened_elfldr_root / relative) == bindings[key] assert not any(data["authorizations"].values()) assert data["decision"]["target_implementation_allowed"] is False assert data["decision"]["device_action_allowed"] is False print("Phase-1.0AJ primitive source audit validation passed") return 0 if __name__ == "__main__": raise SystemExit(main())