Repository navigation
fix: remove the internal voice doc from the public action repo - #16
Conversation
EXTERNAL-VOICE.md is an internal style rulebook. It was copied here by its own sync convention, which targets "every repo that owns a public surface": agents, web-client, customer-agents, test-reporter-action. Three of those are private. This one is not, so the convention put an internal document into the only repo where it is world readable. What it exposed: - The rationale for the rule, which states that we avoid the em-dash because it is the most recognizable tell of machine written prose. - Paths inside three private repos (blog-generator/validate.go, social-poster/compose.go, video-poster/shotlist.go, review-trigger/capnotice_test.go) and which guard covers which surface. - A production bug, named and dated. - A declined cleanup: roughly 750 em-dashes across 88 published posts, left in place on purpose. None of it is a credential. All of it is internal reasoning about public copy, sitting in the repo customers clone. The README's "Writing for this repo" section linked the file, so that link is gone too. The practical instruction stays, because a contributor does need to know the house style. What leaves is the reasoning behind it, the map of private code, and the two admissions. Deleting the file removes it from the tip. It remains reachable in history at the commits that added it, and purging that needs a rewrite, which is a separate decision. Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_015WfnKeNtnjCawdQQwWhybU
There was a problem hiding this comment.
Agent code review
Walkthrough
This PR removes EXTERNAL-VOICE.md (119 lines), a canonical style guide that was previously shared across multiple repos, and updates the one in-repo reference to it in README.md to point to "the house style below" instead. The README already contains the relevant style guidance inline (the em-dash rule paragraph), so no prose is lost. This is a clean, coupled 2-file documentation change.
Findings
No issues found.
Verdict
Both changes are coupled and correct: the file is deleted, the sole reference to it is updated to avoid a broken link, and the README already contains the necessary style guidance inline. No code, logic, or tests are affected. Approving.
Confidence
HIGH — both changed files were read in full; no callers or tests to check for a docs-only change.
💡 Tips for working with the BuildPulse reviewer
- Re-review on demand — comment
@buildpulse reviewon the PR (/buildpulse reviewalso works). The fresh review bills the requester's seat. - Teach it by replying to a finding — reply to any inline comment: "we never do X here" becomes a standing rule for this repository (acknowledged in-thread, not raised again); "not in this PR" mutes the topic for this PR only. Replies are free. Org admins can view or remove learned rules on the AI Features page.
- Every push is re-reviewed automatically — smaller PRs get a fresh full review, larger ones get a delta review of what changed since the last look; an "Update branch" merge with an unchanged diff carries the previous verdict forward without a new billed review.
- Draft PRs are skipped until marked ready for review (repositories can opt in to draft reviews on the AI Features page).
EXTERNAL-VOICE.mdis an internal style rulebook and this is a public repo.It got here honestly. The file's own sync rule says to copy it into "every repo
that owns a public surface":
agents,web-client,customer-agents,test-reporter-action. Three of those are private. This one is not, so a rulewritten about public surfaces landed an internal document in the only repo
that is itself public.
What was readable by anyone
agents/blog-generator/validate.go,agents/social-poster/compose.go,agents/video-poster/shotlist.go,customer-agents/review-trigger/capnotice_test.go, and which guard covers which surfaceNo credentials, no security issue. It is internal reasoning about public copy,
in the repo customers clone.
What this changes
Deletes the file. The README's "Writing for this repo" section linked it, so
that link goes too.
The practical line stays:
A contributor does need the house style. What leaves is the reasoning behind
it, the map of private code, and the two admissions.
What this does not do
It does not remove the file from history. It is still reachable at the
commits that added it, and anyone can read it there. Fully purging it needs a
history rewrite and a force-push to a protected public branch, which changes
every commit SHA and would break anyone pinned to a raw SHA. That is a separate
call, deliberately not made here.
Follow-up
The canonical copies in
agentsandweb-clientstill list this repo as a synctarget, so the file can come back. Those need the target list narrowed to private
repos only. Not done in this PR because it is a different repo and
web-clientcurrently has a branch under review on shared dev.