---
name: branch-fixes-off-current-main
description: "Base fix branches on current origin/main, not a triage/RCA branch tip — stale base forces deployah to trial-merge at release time (doyle catch, r4 UPDATE-WEDGE)"
metadata: 
  node_type: memory
  type: feedback
  originSessionId: fa4bae0f-ba28-4088-86d4-6708a0340f53
---

UPDATE-WEDGE r4 (2026-07-10): fix branch `fix/update-wedge-bounded-conn-write` @f10e5e9 was based on stale main 5555648 (a triage-branch tip, pre-round-3) — missing v0.30.3/4/5. Doyle caught it at release time; deployah had to base the release on current origin/main (0a306c9) and merge the fix branch in (clean except a traceable-reqs.toml tail-conflict).

**Why:** a gate PASS on the fix branch only certifies the fix in isolation; the shipped tree is the MERGED tree, which nobody gated until release-PR CI. Stale bases also create avoidable merge conflicts in append-heavy files (traceable-reqs.toml tails).

**How to apply:** before starting a dispatched fix, `git fetch` and branch off current `origin/main` — never off the triage/RCA branch you happen to be sitting on. If the RCA work needs the triage branch's uncommitted context, cherry-pick or copy, don't base. See [[redirect-folded-req-seeds]] for the same append-tail conflict class in traceable-reqs.toml.
