---
name: a-hand-tracked-branch-is-a-snapshot-of-the-last-assembly-it-was-moved-to
description: "r3-gate-head froze at assembly 3; a message reword on a detached HEAD kept the tree and left the branch behind, so pushing the NAME would have run golden at the 26.7%-flaky tree — push the OBJECT at a 40-char sha and verify ls-remote + tree"
metadata: 
  node_type: memory
  type: feedback
  originSessionId: 4d017315-4e1e-4dc0-81e1-a5c508a9672c
  modified: 2026-09-09T04:23:36.055Z
---

2026-09-09 #272 golden r3 (deployah caught it pre-push, hertz measured the mechanism): the local
branch `r3-gate-head` pointed at 3fef8375, not the ruled head f6110c2a, and f6110c2a was on NO local
branch (held only by a detached worktree HEAD). Reflog: three lockstep resets (20:13, 20:19, 20:24,
each within ~1 s of an assembly commit), then nothing. Assembly 4 (c4919243) was a message reword
2 min 34 s later with the SAME tree (be2184af) — an amend on a detached HEAD moves HEAD and leaves
every branch name behind. Rider 5 came 32 min after the divergence and only inherited it.

**Why:** a branch a human/agent moves by hand is a snapshot of the last assembly it was moved to,
not a pointer to "the head". golden.yml dispatches on `push: branches: ['golden/**']`, so pushing
the NAME would have run golden at the c4919243-equivalent tree — the one measured 26.7% flaky on
Windows cell3 — and every gate would have passed ABOUT THAT RUN. The proof was bound to the TREE
(0c9dfd6c) and the tree was right; only the name lied. Same family as
[[a-stale-target-makes-a-check-pass-harder-not-fail]].

**How to apply:** dispatch golden by pushing the OBJECT — `git push origin <40-char sha>:refs/heads/golden/<lane>` —
never a branch name, then verify `git ls-remote origin refs/heads/golden/<lane>` == sha AND
`git rev-parse <sha>^{tree}` == the ruled tree, and record both lines before the run id. When a
head is ruled, `git branch -a --contains <sha>` empty is a finding, not a curiosity. A pool claim
on a detached lane records `lane_base` as a SHA with no branch field, and it too froze at assembly 3
(stale in the refusing direction — safe, but state it in the release note). Repoint a cited branch
name after the run is terminal rather than deleting it: a deleted name reads as "never existed".
