P-NP / tools /probe_v110_integration.py
adamm-hf's picture
adamm-hf HF Staff
1.11 multi folded in, lots of thinking
5136969 verified
Raw History Blame Contribute Delete
932 Bytes
#!/usr/bin/env python3
from __future__ import annotations
import argparse,json,sys
from pathlib import Path
from pnp_lab.integration_probe import probe_v110_source
from pnp_lab.rebase_v110 import RebaseGateError
p=argparse.ArgumentParser(description="Fail-closed v1.11 integration probe for exact signed-off v1.10 source")
p.add_argument("source",type=Path,help="exact pnp-autonomous-lab-v1.10.zip or Git checkout at signed-off commit")
p.add_argument("--out",type=Path)
a=p.parse_args()
try:
report=probe_v110_source(a.source).to_dict()
except Exception as exc:
report={"accepted_base":False,"ready_for_exact_rebase":False,"can_stamp_v111_release":False,"error":f"{type(exc).__name__}: {exc}"}
text=json.dumps(report,indent=2,sort_keys=True)+"\n"
if a.out:a.out.parent.mkdir(parents=True,exist_ok=True);a.out.write_text(text,encoding="utf-8")
print(text,end="")
sys.exit(0 if report.get("ready_for_exact_rebase") else 2)