Files
rune/scripts/walk_contract_construction_depth.py
T

42 lines
1.6 KiB
Python

#!/usr/bin/env python3
"""Open + walk the #2479 dichotomy-wave construction contract for
construction_depth to verifying. Full lifecycle in ONE process (shared-store
clobber hazard). The close step runs separately (close_contract script)
after the register commit, per the dichotomy-wave store pattern."""
import json
import sys
from pathlib import Path
sys.path.insert(0, str(Path(__file__).resolve().parents[1] / "src"))
from rune.construction_interface import ConstructionInterface
iface = ConstructionInterface(builder="factory-batch-b")
r = iface.submit_need(
"Complete the construction_depth dichotomy port to FULL Rust (#2479 "
"tranche): oracle-exact depth kernel (UNKNOWN ceremony/bypassed, "
"PROJECT_BUILD full-lifecycle strings, EXISTING_PROJECT_CHANGE base "
"ceremony + wide-surface escalation restored to oracle truth), "
"doc-envelope FFI (cd_select_depth, free via capability_scoring "
"cs_free_string — no free re-export), cd_loader mirroring "
"broker_loader.py, facade delegation with RUNE_CD_CORE=python pin, "
"frozen-oracle battery (40 cases, every public function/branch), live "
"parity 100%, Phase B language-advantage pass.",
origin="builder",
)
print("submit_need:", json.dumps(r)[:400])
if not r.get("success"):
print("NEED FAILED — aborting")
sys.exit(1)
cid = r["ids"]["contract_id"]
print("contract_id:", cid)
for phase in ("approved", "building", "verifying"):
t = iface.transition(cid, phase)
print(f"transition->{phase}:", json.dumps(t)[:200])
if not t.get("success"):
sys.exit(1)
print("CONTRACT", cid, "verifying")