Carry the whole data posture in the security policy, not two thirds of it - #113
Merged
Merged
Conversation
…f it decisions/data-posture.md names four sections that repeat the posture and says four things have to survive an edit to any of them: that a server fetching the file sends nothing about itself or its users, that the hosting provider is named rather than implied, that the catalogue makes no promise about the plugins it lists, and that sending data anywhere is something an operator configures rather than a default. The section in the security policy carried the first two and stopped. The other three documents carry all four. This adds the missing two to it. What that prevents is a reader who opens the security policy first, which is where somebody goes once they are already worried, and gets a posture that ends before the two sentences they can act on. It also keeps a wrong reading of the policy's own scope section: that one decides where a report goes, which is a different boundary from who answers for what a plugin does with data, so the new paragraph states the difference rather than restating the section above it. Named in #49, which this does not close. That issue also asks for the posture in the operator instruction, and no such document exists yet. Signed-off-by: Nils Lehnen <30603423+iderex@users.noreply.github.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.
The section
## What this project holds about youinSECURITY.mdgains the twostatements it did not carry. Nothing else changes.
What the rule is
decisions/data-posture.mdnames four sections that repeat the posture, and thensays what each of them owes:
What was missing, measured
The last two of those four. Both sentences wrap in every file that carries them,
so the count is taken with the line breaks removed rather than by
git grep,which reads a line at a time and would report a file that carries a sentence as
one that does not:
Run 2026-08-16,
origin/mainate376e7aandHEADataa24c16.The two probes are the wording each document already uses, so they say a
sentence on the subject is present rather than that it says the right thing.
That part is a reading, and it is what the review is for.
The security policy's
## What is out of scopesection is a different boundaryfrom the plugin one, which is why the new paragraph is not a restatement of it:
that section decides where a report goes, and this one says who answers for what
a plugin does with data.
The gate
Run at
aa24c16in a checkout holding nothing else. The harness disclosure therun prints after that table is unchanged by this change: none of the three
requirements was asked for, and no leg depends on one.
This adds no check, so there is no guard to show refusing anything. What it adds
is prose, and what backs it is the measurement above rather than a test.
What this does not do
#49 is not met by this. That issue asks for the posture in the operator
instruction as well, and no such document is in the tree. It cannot be written
yet either, because it would have to print the address an operator pastes and
that address does not answer:
Run 2026-08-16.
install-address-is-answeredrefuses a tracked file that printsan install address before it has been read as answering, and the list that leg
reads is empty:
Nobody else has read this change. The evidence above stands in place of a second
reader rather than beside one.
Named in #49.
A correction to this body
The paragraph above read "It does not close #49" until 2026-08-16, and the merge
closed #49 anyway: the keyword parser matches
close #49and does not read theword in front of it. I reopened the issue. The state it is in now is the state
the paragraph describes, and the wording no longer carries the keyword.