---
name: golden-respin-test
description: "Never respin an assembled golden head for a fix CI cannot inspect — 'does this matter' (severity) and 'must it ride THIS sha' (respin) are separate questions; collapsing them cost a ~50-min window for a doc-only delta."
metadata: 
  node_type: memory
  type: feedback
  originSessionId: 4dc44016-b3d5-40c6-a592-a99f070b1e1a
  modified: 2026-08-02T04:28:13.457Z
---

DOORBELL v0.51.0, 2026-08-02. I found a stale passage in `docs-site/src/networking/knocking.md` on assembled head `65d2c98` — it told users cross-node `knock redeem --mutual` "currently does nothing" while the same head's `--help` said it arms and proves. Correct find. The plan that followed was to respin the head and burn a **second full golden window**. The operator overruled it: golden CI does not inspect prose, so the second run re-purchases evidence already held.

**The rule (filed as releases#105):** when a defect is found on an assembled golden head, answer two questions SEPARATELY and in order.

1. **RESPIN (cost): could golden CI's verdict change because of this fix?** YES (code, build config, tests, CI config, any gated artifact) → respin; `tested sha == merged sha` demands it. NO (prose, comments, non-gated docs, board metadata) → **never respin**; the fix re-homes to the fast-follow.
2. **SEVERITY (quality, independent): does shipping it mislead a user?** YES → board home in the fast-follow before the arc proceeds, sized explicitly as user-facing correctness, not tidying. NO → ordinary backlog.

Q2 never feeds back into Q1. Severity sets urgency and sizing; it never picks the sha.

**Why I got it wrong, so I catch the shape not the instance:** "does this matter" was yes, so "must it ride this head" was assumed yes. The operator's principle *functionality gaps found mid-wave get fixed IN the milestone* was authored for FUNCTIONALITY and I let it govern a DOCUMENTATION gap; and "fixed in the milestone" is not "tops the tested sha" — a code-inert fix lands in the release without touching the validated head. I argued against dropping the fix (a Q2 argument) and let that settle a Q1 question. The fact I had and did not apply: golden's classifier hardcodes `code=true`, so a doc-only respin re-runs both test legs, both n1-gates and both two-host legs against a byte-identical compiled tree. **"Golden" means the evidence is bought once.**

**Prevention half (todlando):** the passage survived a full gate because the doc audit read the file's DIFF and nobody had touched that region — the stale-hedge class lives outside diffs by construction. Audit the whole page, and activate the `doc` stage on the governing REQ so vigilance becomes a gate. Never split the prose fix from its REQ activation.

Related: [[stale-carried-forward-sentence]], [[wave-gap-fixes-in-milestone]], [[doc-audit-reads-whole-file]].
