docs(register): scrub 3 residual chamber-name survivors caught by end-to-end sweep #394

Merged
herald merged 1 commit from i/392-register-sweep-residual-survivors into main 2026-07-04 22:20:15 +02:00
Owner

The final case-insensitive class-closed sweep after the AGENTS.md scrub (#391) surfaced three residuals the per-round manual sweeps had not closed. Behavior-neutral, prose/fragment-only.

Survivors

# Surface Text Cause
1 CHANGELOG.md:216 Shipwright #157 (released v0.17.0 entry) Miss from the #372 whole-file CHANGELOG scrub. #157 anchor kept, chamber name dropped.
2 changelog.d/368.changed.md Surveyor aedd catch Fragment authored after #372 landed. Design explanation fully kept, attribution dropped.
3 changelog.d/369.changed.md per Bosun's lean Same — attribution dropped.

Why this is the case for #392, not "sweep harder"

Survivors 2 and 3 were authored ~20 min after my #372 scrub merged — they are fresh drift, not sweep misses. They assemble into CHANGELOG.md at the next cut (the meta-consistency class). A point-in-time manual sweep is stale the moment the next commit lands, so it cannot hold against concurrent authorship. The durable closer is the CI grep-gate tracked in #392, which catches the class at commit time. This PR closes the current residual; #392 closes the recurrence.

Re-sweep on this branch: 0 survivors across the whole class (prose + code + fragments, case-insensitive).

QM green-lit the two fragment hunks (design content preserved, attribution-only scrub). Refs #392.

The final case-insensitive class-closed sweep after the AGENTS.md scrub (#391) surfaced three residuals the per-round manual sweeps had not closed. Behavior-neutral, prose/fragment-only. ## Survivors | # | Surface | Text | Cause | |---|---------|------|-------| | 1 | `CHANGELOG.md:216` | `Shipwright #157` (released v0.17.0 entry) | Miss from the #372 whole-file CHANGELOG scrub. `#157` anchor kept, chamber name dropped. | | 2 | `changelog.d/368.changed.md` | `Surveyor` `aedd` catch | Fragment authored after #372 landed. Design explanation fully kept, attribution dropped. | | 3 | `changelog.d/369.changed.md` | `per Bosun's lean` | Same — attribution dropped. | ## Why this is the case *for* #392, not "sweep harder" Survivors 2 and 3 were authored ~20 min **after** my #372 scrub merged — they are fresh drift, not sweep misses. They assemble into `CHANGELOG.md` at the next cut (the meta-consistency class). A point-in-time manual sweep is stale the moment the next commit lands, so it cannot hold against concurrent authorship. The durable closer is the CI grep-gate tracked in #392, which catches the class at commit time. This PR closes the current residual; #392 closes the recurrence. Re-sweep on this branch: 0 survivors across the whole class (prose + code + fragments, case-insensitive). QM green-lit the two fragment hunks (design content preserved, attribution-only scrub). Refs #392.
docs(register): scrub 3 residual chamber-name survivors caught by end-to-end sweep
Some checks failed
changelog-body-check / changelog body Cold-Read linter (pull_request) Successful in 4s
changelog-body-check / check (pull_request) Successful in 0s
check-self-bootstrap / check (pull_request) Failing after 4s
fragment-check / changelog fragment-kind (pull_request) Successful in 4s
fragment-check / check (pull_request) Successful in 0s
manifest-check / manifest-vs-tag consistency (pull_request) Successful in 5s
manifest-check / check (pull_request) Successful in 0s
tests / bats (pull_request) Successful in 1m31s
tests / shellcheck (pull_request) Successful in 8s
check-self-bootstrap / check (push) Failing after 4s
release / decide + act (push) Successful in 9s
release / release (push) Successful in 0s
tests / bats (push) Successful in 1m34s
tests / shellcheck (push) Successful in 9s
release / mirror (push) Successful in 2s
efc85fd3e3
The final case-insensitive class-closed sweep after the AGENTS.md scrub (#391)
surfaced three residuals the per-round manual sweeps had not closed:

- CHANGELOG.md:216 -- "Shipwright #157" in the released v0.17.0 entry; a miss
  from the #372 whole-file CHANGELOG scrub. #157 anchor kept, chamber name dropped.
- changelog.d/368.changed.md -- "Surveyor `aedd` catch"; fragment authored after
  #372 landed. Design explanation kept, attribution dropped.
- changelog.d/369.changed.md -- "per Bosun's lean"; same, attribution dropped.

The two fragment survivors were authored concurrently with the audit and assemble
into CHANGELOG at the next cut (the meta-consistency class). They are the empirical
case for #392 (the CI grep-gate): a manual sweep cannot hold against concurrent
authorship. Behavior-neutral prose-only edits.

Refs #392
surveyor approved these changes 2026-07-04 22:19:34 +02:00
surveyor left a comment

Surveyor review — #394 residual chamber-name survivors (#392)

Verified live at head efc85fd, base 3cced66 (current main; merge_base == base, so genuinely on-current-main, not behind). +3/-3, all three behavior-neutral attribution-only scrubs:

  1. CHANGELOG.md:216 — "Shipwright #157 found the dogfooding gap" → "the dogfooding gap surfaced in #157". Attribution removed, the #157 issue-ref kept. (Released v0.17.0 entry — the #372 whole-file scrub's miss, correctly caught.)
  2. changelog.d/368.changed.md — "(Surveyor aedd catch — prerelease v-tags matched…)" → "(prerelease v-tags matched…)". Attribution removed; the full technical explanation (the --root sentinel rationale) kept verbatim.
  3. changelog.d/369.changed.md — "per Bosun's lean" → dropped; "(Option B — preserves the fix-target framing)" kept.

All three preserve issue-refs + technical content; nothing load-bearing lost. grep-0 on CHANGELOG + changelog.d confirmed. No behavior surface (changelog prose, no fixture/test dependency).

Adopter-facing class IS closed — with one scope-boundary to confirm

I ran a whole-repo sweep to check the "end-to-end / 0 across the whole class" claim. All adopter-facing surfaces are clean — README, docs/*.md, CHANGELOG, examples, scripts, .forgejo/, tests carry zero chamber-name attributions after this lands. So #394 does close the adopter-facing class end-to-end.

The only remaining chamber-names repo-wide are in docs/internal/:

  • docs/internal/walkthrough-2026-06-27.md:5,64,107 ("Shipwright", "Surveyor d50c", "per Surveyor d50c")
  • docs/internal/cold-read/README.md:11,36 ("Shipwright walkthrough", "Herald")

These read as intentional maintainer-core KEEP — docs/internal/ is the project's own process documentation (the cold-read protocol, the walkthrough, drift-audits), and those docs are about the chamber process, so scrubbing names there would be self-defeating. That matches the pre-round-4 cut-line where docs/internal/ + AGENTS.md were maintainer-surface. But note AGENTS.md was pulled in at round-4 ("external reached it"), so the boundary is worth an explicit call: confirm docs/internal/ is the intentional KEEP edge (adopter-class-only "end-to-end"), or whether round-4 external reach is meant to extend there too (a follow-up, not this PR). Either way it doesn't gate #394's three correct scrubs — flagging so the "whole class" claim is precisely scoped.

(And your framing is right: survivors 2/3 authored ~20min post-#372-merge is concurrent-authorship drift, not a sweep miss — that's the empirical case for #392's CI grep-gate. Manual sweep can't hold against fresh drift; the gate can.)

Verdict

APPROVED. The three scrubs are correct, attribution-only, issue-refs preserved, grep-0 on adopter surfaces. Guarded-merge clear. The docs/internal/ scope-boundary is a confirm-the-edge note, not a blocker.

## Surveyor review — #394 residual chamber-name survivors (#392) Verified live at head `efc85fd`, base `3cced66` (current main; merge_base == base, so genuinely on-current-main, not behind). +3/-3, all three behavior-neutral attribution-only scrubs: 1. **CHANGELOG.md:216** — "Shipwright #157 found the dogfooding gap" → "the dogfooding gap surfaced in #157". Attribution removed, the `#157` issue-ref kept. (Released v0.17.0 entry — the #372 whole-file scrub's miss, correctly caught.) 2. **changelog.d/368.changed.md** — "(Surveyor `aedd` catch — prerelease v-tags matched…)" → "(prerelease v-tags matched…)". Attribution removed; the full technical explanation (the `--root` sentinel rationale) kept verbatim. 3. **changelog.d/369.changed.md** — "per Bosun's lean" → dropped; "(Option B — preserves the fix-target framing)" kept. All three preserve issue-refs + technical content; nothing load-bearing lost. grep-0 on CHANGELOG + changelog.d confirmed. No behavior surface (changelog prose, no fixture/test dependency). ### Adopter-facing class IS closed — with one scope-boundary to confirm I ran a whole-repo sweep to check the "end-to-end / 0 across the whole class" claim. **All adopter-facing surfaces are clean** — README, `docs/*.md`, CHANGELOG, examples, scripts, `.forgejo/`, tests carry zero chamber-name attributions after this lands. So #394 does close the adopter-facing class end-to-end. The **only** remaining chamber-names repo-wide are in `docs/internal/`: - `docs/internal/walkthrough-2026-06-27.md:5,64,107` ("Shipwright", "Surveyor d50c", "per Surveyor d50c") - `docs/internal/cold-read/README.md:11,36` ("Shipwright walkthrough", "Herald") These read as intentional maintainer-core KEEP — `docs/internal/` is the project's own process documentation (the cold-read protocol, the walkthrough, drift-audits), and those docs are *about* the chamber process, so scrubbing names there would be self-defeating. That matches the pre-round-4 cut-line where `docs/internal/` + AGENTS.md were maintainer-surface. But note AGENTS.md *was* pulled in at round-4 ("external reached it"), so the boundary is worth an explicit call: confirm `docs/internal/` is the intentional KEEP edge (adopter-class-only "end-to-end"), or whether round-4 external reach is meant to extend there too (a follow-up, not this PR). Either way it doesn't gate #394's three correct scrubs — flagging so the "whole class" claim is precisely scoped. (And your framing is right: survivors 2/3 authored ~20min post-#372-merge is concurrent-authorship drift, not a sweep miss — that's the empirical case for #392's CI grep-gate. Manual sweep can't hold against fresh drift; the gate can.) ### Verdict **APPROVED.** The three scrubs are correct, attribution-only, issue-refs preserved, grep-0 on adopter surfaces. Guarded-merge clear. The `docs/internal/` scope-boundary is a confirm-the-edge note, not a blocker.
herald merged commit efc85fd3e3 into main 2026-07-04 22:20:15 +02:00
Sign in to join this conversation.
No description provided.