Skip to content

VOICE.md: labels aren't sentences, and two other lessons from #142/#143 - #144

Open
adnaan wants to merge 1 commit into
mainfrom
voice-labels
Open

VOICE.md: labels aren't sentences, and two other lessons from #142/#143#144
adnaan wants to merge 1 commit into
mainfrom
voice-labels

Conversation

@adnaan

@adnaan adnaan commented Aug 23, 2026

Copy link
Copy Markdown
Contributor

Three rules, each earned by getting it wrong on the landing first. No content changes — VOICE.md only.

Labels are not sentences

#142 added the rule that a heading ending in a period has to be one. That rule stops at headings, and I applied it one slot too far.

Eyebrows, rail links, nav items and link glosses name a topic. They don't argue. Three of them took two attempts each before landing somewhere plain:

Everything else         ->  More capabilities
What the wall skipped   ->  More capabilities
What's going on         ->  Line by line

Every attempt in between was a phrase doing rhetorical work — meeting an objection, or naming a gap. The test: read the label with the page hidden. If it doesn't say what's in the section, it's decoration.

If the heading won't come, the section is the problem

The landing's last section carried three subjects at once: a heading about the documentation, a lead listing app types, and eight links listing capabilities. Three consecutive heading rewrites failed, because no heading summarises three subjects.

This is the more useful diagnosis of the two, because the symptom presents as an unwritable heading — which invites another heading draft rather than a look at the section. Cut to one subject and the heading writes itself.

Same pass deleted a lead that enumerated the eight links directly below it, each already carrying its own gloss. A lead that lists what the layout is already showing is doing the layout's job.

A pointer bolted onto a finished paragraph

"The pubsub reference has the topic rules and the ACL in full."
"…and the error handling reference has the rest."

Both came from one nav change: two reference links were pulled out of the capabilities grid and needed re-homing, and a trailing sentence was the lazy answer — twice. Flagged in review on #143, one as "nonsensical and doesnt mean anything".

Hang the link on the noun or API symbol the reader is already looking at, and let the paragraph keep its ending. Both of those paragraphs previously ended on an imperative, which the trailing pointer flattened.

One thing worth knowing

scripts/voice-check.sh walks content/ only, so this file is not checked against its own rules — despite saying it applies to itself. The additions here were checked by hand against the claudism list, the passive regex, triadic negation and exclamations: all clean.

Not proposing to widen the checker's scope in this PR; VOICE.md and README.md are a different kind of document from a content page and would need their own ceilings.

🤖 Generated with Claude Code

https://claude.ai/code/session_0166MK1arBYbVZq6wfm8EsQZ

Three rules, each earned by getting it wrong on the landing first.

**Labels are not sentences.** #142 added the rule that a heading ending in a
period has to be one. That rule stops at headings. Applying it to the slots
around them — eyebrows, rail links, nav items, link glosses — produced
"What the wall skipped", which reads as a sentence fragment doing rhetorical
work when the slot wanted a name. It took two attempts on each of three
labels before they landed on something plain. The test: read the label with
the page hidden and see whether it says what's in the section.

**If the heading won't come, the section is the problem.** The landing's last
section held three subjects, so three consecutive heading rewrites all failed.
No heading summarises three subjects. This is the more useful diagnosis,
because the symptom shows up as an unwritable heading, which invites more
heading drafts rather than a look at the section.

**A pointer bolted onto a finished paragraph.** Both instances came from the
same nav change: two reference links were pulled out of a capabilities grid
and needed re-homing, and a trailing sentence was the lazy answer twice. Both
flagged in review, one as "nonsensical and doesnt mean anything".

Noting for whoever reads this next: voice-check.sh walks content/ only, so
this file is not checked against its own rules. The additions above were
checked by hand.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_0166MK1arBYbVZq6wfm8EsQZ
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant