docs(diag): say that a unix group name is deliberately kept, and pin it - #71
Merged
Merged
Conversation
A redacted bundle ships `control.group` verbatim in config.json and in doctor's control-check summary, and the question of whether that is a leak has now been raised once and answered: it is not. A unix group is a property of the machine rather than of the person or the provider — the default is `admin` — and the control check exists to tell you which group to join, which "you are not in the `profile-1` group" cannot do. Redacting it would replace the answer and hide no identity. Written into docs/usage/cli.md beside the kinds list, because the page already enumerates what IS replaced and a reader would otherwise reasonably assume this was covered. The same paragraph names the other deliberate keep, dezhban's own file paths, since both are the same reasoning and both have now been questioned. Pinned by TestAUnixGroupNameIsKeptInEveryEntryThatCarriesIt, which asserts BOTH entries keep it. One of the two would be worse than either answer: the same value reading as a token in one file and a name in the other is the "one identifier, two tokens" confusion the package already works to avoid. No CHANGELOG entry: nothing about the behaviour changed, only what is written down about it. Closes #69 Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
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.
Closes #69.
A redacted bundle ships
control.groupverbatim, in two entries:#69 asked whether that is a leak. It is not, and this records the answer so it is not refiled.
A unix group is a property of the machine rather than of the person or the provider — the macOS default is
admin, which names nobody. The control check exists to tell you which group to join, and "you are not in theprofile-1group" cannot do that. Redacting it would replace the answer and hide no identity, which is the failuredocs/contribute/testing.mdnames in its own words:What changes
Nothing in the behaviour. Two things that make the decision durable:
docs/usage/cli.mdgains a paragraph beside the kinds list. The page already enumerates what is replaced, so a reader would reasonably assume a group name was covered; now it says it is kept, and why. The same paragraph names the other deliberate keep — dezhban's own file paths, from redact: control.sock is redacted as a hostname, so the control check's path reads ashost-N#68 — because it is the same reasoning and both have now been questioned.TestAUnixGroupNameIsKeptInEveryEntryThatCarriesItasserts both entries keep it, plus the socket path beside it, plus that the legend mints nothing for either.Both entries, deliberately. Keeping it in only one would be worse than either answer: the same value reading as a token in one file and a name in the other is the "one identifier, two tokens" confusion
internal/redactalready works to avoid.The other reading, and why it lost
A site-chosen group can carry an organisation (
acme-vpn-ops). That is real, but it would need a key-aware case forconfig.jsonand a field carrier on the doctor check — the ADR-0016 shape — and it buys redaction of a string most people never customise, at the cost of the one check whose entire output is an instruction naming that string. If a site does use a revealing group name,--include-networkis not the relevant lever; renaming the group is.No CHANGELOG entry
Nothing user-visible changed — only what is written down about it.
🤖 Generated with Claude Code