Repository navigation
chore: ban em-dashes from the public README and CI output - #13
Conversation
This repo is public and the README is the first thing a prospective user reads, so it is in scope for the external-voice sweep. All eight dashes in it were doing the same job, a label in front of a definition, which is what a colon is for. One more turned up outside the README: the post-upload notice in src/index.js prints into the user's own CI log, which makes it published copy under a public action's name. dist/ is rebuilt in the same commit, as the README requires. Every other em-dash in src/ is a code comment and is deliberately left alone. EXTERNAL-VOICE.md is the shared rule, identical in agents, web-client, customer-agents, and test-reporter-action. It is a taxonomy rather than a ban, because told only "no em-dashes" a writer swaps in a spaced hyphen and nothing is gained. Not fixable from a PR: the GitHub repo description still reads "BuildPulse test reporter — upload CI test results...". That is a repo setting, and it renders on the repo page and in search. Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
There was a problem hiding this comment.
Agent code review
Walkthrough
This PR is a copy-edit pass to remove em-dashes from user-visible output, per the EXTERNAL-VOICE.md house style rule. The single substantive change is in the post-upload core.notice(...) message in src/index.js (and its counterpart in dist/index.js): the em-dash phrase — without it uploads are silently dropped is rewritten to is not installed on this repository. Without it, uploads are silently dropped. The commit also adds EXTERNAL-VOICE.md and updates README.md, but those do not appear in the review diff and were read for context only.
Findings
No issues found.
Verdict
The diff is a pure copy-edit with no logic changes. src/index.js and dist/index.js are consistent with each other (both updated). The rewrite is semantically equivalent and grammatically correct. No security surface, no behavioral change, no tests weakened, no auto-merge red flags. All pre-APPROVE checklist items pass.
Confidence
HIGH — every changed file was read in full and the diff is unambiguous.
💡 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).
web-client runs prettier on markdown in a pre-commit hook, and it trimmed the significant spaces inside the two inline code spans. The rule banning a spaced en-dash rendered as a bare en-dash, and the rule against substituting a spaced hyphen rendered as a bare hyphen. Both then said close to the opposite of what was meant, and both would have been re-broken by the next format. Written out in words instead, with a note saying why, and re-formatted so all four copies stay byte-identical. Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
There was a problem hiding this comment.
Agent code review
Walkthrough
This PR enforces BuildPulse's no-em-dash external-voice policy across the public-facing surface of this repo. The functional change is a single-line edit in src/index.js (and its compiled dist/index.js) that rewrites a core.notice() message: the em-dash construction — without it becomes Without it, (a new sentence). The PR also adds EXTERNAL-VOICE.md (a canonical cross-repo style document) and updates README.md to replace all em-dashes with colons, with a note pointing to the new document. The dist/index.js.map source map is updated in sync with dist/index.js, as required by the repo's own contributing guide.
Findings
No issues found.
Verdict
All five changed files are in scope for the stated goal (em-dash removal), src/index.js and dist/index.js are in sync, the dist/index.js.map is updated accordingly, no logic is altered, no tests are touched, and no red flags are present. This is a safe, purely cosmetic change to user-facing copy.
Confidence
HIGH — every changed file was reviewed; the functional change is a string-literal edit with no semantic impact on the upload flow.
💡 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).
* chore: ban em-dashes from the public README and CI output This repo is public and the README is the first thing a prospective user reads, so it is in scope for the external-voice sweep. All eight dashes in it were doing the same job, a label in front of a definition, which is what a colon is for. One more turned up outside the README: the post-upload notice in src/index.js prints into the user's own CI log, which makes it published copy under a public action's name. dist/ is rebuilt in the same commit, as the README requires. Every other em-dash in src/ is a code comment and is deliberately left alone. EXTERNAL-VOICE.md is the shared rule, identical in agents, web-client, customer-agents, and test-reporter-action. It is a taxonomy rather than a ban, because told only "no em-dashes" a writer swaps in a spaced hyphen and nothing is gained. Not fixable from a PR: the GitHub repo description still reads "BuildPulse test reporter — upload CI test results...". That is a repo setting, and it renders on the repo page and in search. Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com> * docs: state the spaced-dash rules in words, not inline code web-client runs prettier on markdown in a pre-commit hook, and it trimmed the significant spaces inside the two inline code spans. The rule banning a spaced en-dash rendered as a bare en-dash, and the rule against substituting a spaced hyphen rendered as a bare hyphen. Both then said close to the opposite of what was meant, and both would have been re-broken by the next format. Written out in words instead, with a note saying why, and re-formatted so all four copies stay byte-identical. Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com> --------- Co-authored-by: Claude Opus 5 (1M context) <noreply@anthropic.com>
What
Removes em-dashes from the two things in this repo that a user outside the company actually reads: the public README, and the notice the action prints into their CI log.
Third of four PRs. Companions: agents#285, customer-agents#92.
web-clientfollows.Changes
README.mdsrc/index.jsdist/index.js,dist/index.js.mapsrc/changesEXTERNAL-VOICE.mdOne thing this PR cannot fix
The GitHub repo description still reads:
That is a repository setting, not a file, and it renders on the repo page, in org listings, and in search results. It needs
gh repo edit --descriptionor a click in Settings. Left alone deliberately rather than changed out from under you.Out of scope
Every other em-dash in
src/is a code comment. Internal, not published, and rewriting them would have buried the one line that ships.Test
No test asserted the notice text, so nothing needed updating. Verified the dash is gone from the rebuilt bundle rather than assuming the build picked it up.
🤖 Generated with Claude Code