Files
rune/scripts/walk_contract_intent_continuity.py

38 lines
1.5 KiB
Python

#!/usr/bin/env python3
"""Open + walk the #2479 dichotomy-wave construction contract for
intent_continuity to verifying. Full lifecycle in ONE process."""
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 intent_continuity dichotomy port to FULL Rust (#2479 "
"tranche): ledger transition kernel (create/create_detour/resolve/"
"resolve_detour/supersede + record validation, oracle-exact error "
"strings and PARK-the-looked-up-object semantics) as doc-envelope FFI "
"(ic_* symbols, free via capability_scoring cs_free_string — no free "
"re-export); ic_loader mirroring broker_loader.py; facade owns file "
"persistence + clock (now passed per op), RUNE_IC_CORE=python pin; "
"frozen-oracle battery (16 cases, every transition/branch, stubbed "
"clock); live parity 100% (16/16 frozen + 40/40 fuzz seeds); Phase B "
"language-advantage pass (positional transitions).",
origin="builder",
)
print("submit_need:", json.dumps(r)[:300])
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)[:150])
if not t.get("success"):
sys.exit(1)
print("CONTRACT", cid, "verifying")