{
  "file": ".worktrees/hertz-307-evidence/crates/spt-daemon/tests/support/refresh_freeze/rig.py",
  "protocol": "python rig.py --config <JSON>; emits RIG_READY after real RC/producer admission. receipt.json statuses and exits: PASS=0, REGRESSION=1, PRECONDITION=2, CLEANUP_FAILED=3; cleanup failure preserves predicate_status.",
  "behavior": "Self-contained stdlib Windows driver with kill-on-close job admission, ctypes process birth/image/ancestry and production socket-owner guards, isolated explicit scrubbed environments, pinned copied spt.exe, real net-enabled daemon, evidencerig/refreshrig producer fixture, continuously drained real RC. Baseline requires 12 unique timely ACK+independent-state tags. Real node refresh followed by one-second tagged probes over 25 seconds including final ACK grace; recovery within 15 seconds, sustained <=2-second ACK/state, bounded accounting of every post-refresh tag, no replacement write-poison, and detach-only controller closures from the complete pre-cleanup log.",
  "evidence": "Retains raw base64/text timestamped RC chunks, parsed semantic markers, independent producer ledger/state, all command receipts, full durable daemon stderr, baseline/post-refresh samples, refresh brain identities, guard events, final predicate receipt and teardown receipt. Scoped daemon stop --force only under guards; verifies retained process identities, job survivors and absent owned sockets within 60-second teardown.",
  "validation": "Not run, as assigned. Main must perform integrated native-launcher negative-control execution before accepting the cell. No known missing implementation prerequisite; producer.py sibling and Main-owned native launcher/socket fixture are required."
}