Guard the telemetry disclosure, and unwind the README's em-dashes - #24
Merged
Merged
Conversation
Two things, both about the README saying what it means. **A guard, because the disclosure drifted once already.** The Privacy section claimed we collect exit codes, which we never have; called the `command/` marker a command name when it is the service; and did not mention the terminal markers at all, which go out on every request. Prose and code drifted because nothing compared them. `every_telemetry_marker_is_disclosed` now does, in the blunt spirit of the other guards here: a table pairs each marker with the words in README.md that disclose it, and the test fails in both directions. Removing the terminal sentence reports which marker it was disclosing; adding a marker fails a count whose message names the README as the thing to update. It does not prove the disclosure is *well* written, only that nothing we send is missing from it. Both failures verified by making them happen. **And the prose.** Twenty-nine em-dashes, nearly all of them the same "sentence — explanatory clause" habit, which reads as machine-written when it is that consistent. They are gone, mostly by ending the sentence or using a colon where a list actually follows. The densest paragraph got restructured rather than repunctuated. "Fifteen agents are known" now says "supported", and the three flags that were buried in the same paragraph as a fifteen-item list are a table, which is how this README presents flags everywhere else. Also unpicked a few over-long sentences: the 40-word one about command groups and spec files, and the 36-word one about signed builds. **One em-dash stays, deliberately.** `Dry run — nothing was sent.` is quoted output, and `executor.rs:606` prints it with the dash. I had flattened it, which made the README misquote the binary; reverted. No fenced block changed at all — checked by diffing the set of code-block lines before and after, so every command and every sample output is byte-identical. 596 tests, fmt and clippy clean, and no in-page anchor broken.
zmofei
previously approved these changes
Sep 15, 2026
was the last British spelling left in it.
zmofei
approved these changes
Sep 15, 2026
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Two things, both about the README saying what it means.
A guard, because the disclosure already drifted once
The Privacy section claimed we collect exit codes, which we never have; described the
command/marker as a command name when it's the service; and didn't mention the terminal markers at all, which go out on every request. Prose and code drifted because nothing compared them.every_telemetry_marker_is_disclosednow does, in the blunt spirit of the other guards in that file. A table pairs each marker with the words in README.md that disclose it, and it fails in both directions:Both verified by making them happen, rather than trusting a green tick. It doesn't prove the disclosure is well written — only that nothing we send is missing from it, and that the sentence disclosing something can't quietly be edited away.
The prose
Twenty-nine em-dashes, nearly all the same
sentence — explanatory clausehabit. At that consistency it reads as machine-written, which it largely was. Gone, mostly by ending the sentence or using a colon where a list actually follows.The densest paragraph got restructured rather than repunctuated. "Fifteen agents are known" now says supported, and the three flags that were buried in the same paragraph as a fifteen-item list are a table, which is how this README presents flags everywhere else:
--agent <name>--global--dir <path>Also unpicked two over-long sentences — the 40-word one about command groups versus spec files, and the 36-word one about signed builds.
One em-dash stays, deliberately
Dry run — nothing was sent.is quoted output, andexecutor.rs:606prints it with the dash. I flattened it at first, which made the README misquote the binary, and reverted.Worth knowing there are four more of those in
agent_skills.rs(Dry run — nothing was written/changed/removed). Changing the strings the binary prints is a different decision from editing docs, so I left them; say the word if you want them too.No fenced block changed at all — verified by diffing the set of code-block lines before and after, so every command and every sample output is byte-identical. Only prose moved.
602 tests, fmt and clippy clean, and no in-page anchor broken.