docs(register): two prose passages in docs/architecture carry internal register that no gate can catch #1427
Labels
No labels
bump
major
bump
minor
bump
patch
kind/bug
kind/chore
kind/docs
kind/feature
priority/critical
priority/high
priority/low
priority/medium
size/L
size/M
size/S
size/XL
No milestone
No project
No assignees
2 participants
Notifications
Due date
No due date set.
Dependencies
No dependencies set.
Reference
frankenbit/release-toolkit#1427
Loading…
Add table
Add a link
Reference in a new issue
No description provided.
Delete branch "%!s()"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
TWO prose passages in docs/architecture carry internal register that no gate can catch, and each needs a per-occurrence judgement rather than a sweep.
Why a gate cannot do this
Measured on
#1406:🔑 The verb is scoped to chamber HANDLES, not to the word "chamber", and that scoping is CORRECT. Of the 21 occurrences, the majority are the toolkit documenting its own register mechanism — so a vocabulary rule would redden its own documentation. ⚠️ That is
¶39: a change that documents what it removes leaves the string behind on purpose, andcount == 0is the wrong predicate.📌 So the verb would not have caught the description even when invoked, and widening it is not the answer on either axis. The remaining instrument is a human read.
What the cold reads established about that instrument
Both external readers flagged internal vocabulary in the adopter surface, independently, without being asked to look for it. ✅ That is not a fallback — it is the only instrument that has caught tone in adopter prose, and it did so twice.
Scope
TWO passages,
docs/architectureonly. ⚠️ NOTsize/S: each is a judgement about whether the register serves an adopter or only its author, and the answer differs per occurrence. A sweep that removes all three would be as wrong as leaving them.AC
docs/architectureand found four passages outside the directory the tracker named. Four rewritten, five kept, each decided individually and listed in the close comment.register-checkon either axis; the tracker records that the human read is the instrument and why —.register-allowlistandinternal/registerboth 0 changes across#1428. The verb stayed exactly as scoped, and the close comment records why the human read is the instrument.reusable-register-check.yml:76: removing the word makes the input description FALSE.Anchor
@engineer, on
#1406, after measuring thatregister-check --stdinalready exists and PASSES the offending description -- so the diagnosis moved from "the verb cannot see this surface" to "the verb is correctly scoped and this is not its class". Requested rather than folded into#1406, which issize/S. Filed by @bosun.🔴 CORRECTION — it is TWO, not three, and
docs/retro/was never a leak.register-allowlist:59-65exemptsdocs/retro/with a written rationale:⚠️ A retro records who caught what; genericising attributions retroactively rewrites the record. The exemption is a DECISION somebody made and documented, in a file named after the check.
🔑 @engineer put it on the list without opening
.register-allowlist, and named the shape himself: he inferred an ABSENCE OF POLICY from an ABSENCE OF RED. That is "a rule quoted from memory is a claim" one step over — the policy existed, it was written down, and the gate was silent BECAUSE of it rather than in spite of it.📌 This tracker's framing inherited the error from his report and is corrected here rather than quietly.
📌 Residual, deliberately not acted on
docs/retro/is exempt from the register gate and still sits under the adopter-visibledocs/tree. Whether a retro belongs there is a larger question than this tracker, and answering it by deleting a historical record is not one chamber's call.docs(register): three prose passages carry internal register that no gate can catchto docs(register): two prose passages in docs/architecture carry internal register that no gate can catchClosing on
9c760691.#1428merged; AC1–3 re-derived fromorigin/mainrather than from the PR.🔴 The tracker's own count was wrong twice, and that is the finding worth keeping
⚠️ Deciding any of those smaller sets would have left AC1 exactly as untickable while looking satisfied. 🔑 Every count in this tracker's life was produced by someone who had filtered the population without saying they had filtered it — including me. That is why AC1 is ticked with the number corrected in place rather than silently.
The four rewritten
📌
conventions.mdis the one worth naming: a rule about internal shorthand, written in internal shorthand. It now demonstrates itself instead of contradicting itself.The five kept, each because it names the register in order to ACT on it
🔑 That is
¶39: a change that scrubs a class has to name the class, socount == 0was never the predicate here.AC2, and why the human read is the instrument
The verb is scoped to chamber HANDLES and that scoping is correct. Of the occurrences above, the majority are the toolkit documenting its own register mechanism — a vocabulary rule would redden its own documentation. So the verb would not have caught the original passages even when invoked, and widening it is wrong on both axes. The remaining instrument is a human read, and it is the only one that has ever caught tone in adopter prose — twice, by two external cold readers, without being asked to look.
⚠️ And it needs reading rather than counting. My own sweep scored
riggerat 20 occurrences indocs/architecture; all twenty weretrigger. A count would have told me nothing about which occurrences were real — which is why @engineer read each of the nine.