CLOSING PROBE-SCRIPTS PROBE

== (a) 42011b7abf72 — 'got' in gap_doctor_timeout_probe ==
  occurrences of the name 'got' as a variable: 0
  names BOUND inside fake_roles: [] (captured.append is a call, not a binding)
  'captured' is initialised before patching: True
  hook never called -> captured reads back as [] (no UnboundLocalError)
  VERDICT: REBUTTED — the file binds no 'got'; the only state the fake hook touches is a list initialised before the patch, read safely whether or not the hook fires.

== (b) b7d613672e71 — hardening_parent_fail failure path ==
  exit code: 1
      File "/usr/lib/python3.12/subprocess.py", line 571, in run
        raise CalledProcessError(retcode, process.args,
    subprocess.CalledProcessError: Command '['git', 'worktree', 'add', '--detach', '/tmp/pt1-hardening-pf-xl0f1u3x/wt', '0000000']' returned non-zero exit status 128.
  NameError/UnboundLocalError in traceback: False; CalledProcessError: True
  VERDICT: PARTIAL — the claimed mechanism does NOT occur: the worktree-add's CalledProcessError propagates through the finally (grep of the full stderr shows zero NameError), so the parse loop over 'out' is never reached. The residue that holds: the failure is an uncontrolled traceback rather than a controlled failure report — a different exception than the claim names.
