{
 "round": "two-frontiers-cove-r1",
 "gate": "G-TOOLS",
 "verdict": "PASS",
 "detail": "the tool channel is closed on every arm, read off each call's own record",
 "started_utc": "2026-09-06T13:43:01Z",
 "finished_utc": "2026-09-06T13:43:01Z",
 "evidence": {
  "calls_of_its_own": 0,
  "why_no_call": "the CLI transport asserts the whole G-TOOLS set on EVERY call and stops the arm on a hit, and an HTTP transport's reading is about the body it sent — so §5's gate budget spends nothing here and this gate reads the G-EFFORT records.",
  "hooks": "CLOSED BY A LAUNCH FLAG AND RECEIPTED BY NOTHING: the vendor's init record exposes no hooks key, so this is stated on the row rather than inferred from the other assertions.",
  "session_persistence": "closed by the same launch flag; the sealed child runs in an empty scratch cwd, and the seal is a CHANNEL seal rather than a filesystem one — the child inherits a real home directory because the vendor CLI's only credential lives there.",
  "problems": []
 },
 "arms": {},
 "records": [],
 "withheld": {
  "rule": "a receipt publishes in the kit, so these fields are removed here rather than at kit time — and named, because a field quietly absent from a receipt is indistinguishable from a gate that never read it."
 },
 "note": "written by harness/cove/gates_cove.py. Every generation call rides the same send() the scored run uses; a gate that hand-rolled its own call would receipt a field the run never sent.",
 "supersedes": {
  "earlier_runs": [
   {
    "receipt": "g-tools-cove.json",
    "verdict": "PASS",
    "finished_utc": "2026-09-06T13:30:58Z",
    "detail": "the tool channel is closed on every arm, read off each call's own record"
   },
   {
    "receipt": "g-tools-cove.2.json",
    "verdict": "FAIL",
    "finished_utc": "2026-09-06T13:41:39Z",
    "detail": "cloud-glm-5-3: the ollama-cloud law record carries no `tool_fields_sent` key, so this gate cann"
   }
  ],
  "rule": "this gate ran before and its earlier receipt(s) are KEPT in place. This file is the later reading; an earlier FAIL is not erased by it, and a reader can see both. The freeze index pins whichever receipt is the gate of record."
 }
}
