Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

What does "documented process" mean? #1139

Closed
TomHennen opened this issue Sep 19, 2024 · 3 comments · Fixed by #1206
Closed

What does "documented process" mean? #1139

TomHennen opened this issue Sep 19, 2024 · 3 comments · Fixed by #1206
Assignees

Comments

@TomHennen
Copy link
Contributor

What does "documented process" mean?

Originally posted by @marcelamelara in #1094 (comment)

@adityasaky
Copy link
Member

adityasaky commented Sep 20, 2024

The full text is:

The repo must define how the content of a branch is allowed to change. This is typically done via the configuration of branch protection rules. It MUST NOT be possible to modify the content of a branch without following its documented process.

In addition to @zachariahcox's suggestion of saying "this documented process", we may want to clarify who the consumer of this documented process is. Is it visible to anyone (eg. github ruleset definitions around a PR, gittuf policy metadata) who can read the repository? Is there a minimum expectation on a set of entities having access to the documented process (eg. the full set of verifiers issuing VSAs)? Is this just back to whoever the repository owners allow to view the process (I imagine VSA issuers would likely be allow-listed)? We should also discuss how process changes are tracked as that can be really important for rewinding time and auditing some past change.

@adityasaky
Copy link
Member

From a discussion at Git Merge between @TomHennen and I:

"documented process" seems to mean the configured rules governing the change management process. Tom and I agree this is likely what we want, but Tom highlighted that the term can be parsed to mean a longform textual description of a change process (eg. CONTRIBUTING.md). Another term may be in order if we all agree that we really mean the configurations / rules.

If we agree on that note, the next question goes back to my previous comment about who can see these configurations, the ability to see how they evolve etc. Among other things, I think this would tie into the ability to verify the source provenance attestations introduced in #1094.

@TomHennen
Copy link
Contributor Author

Quick follow up: we'd also discussed that perhaps this can be simplified to ACLing. E.g. "the actors involved in creating the revision met the requirements of the access control list at the time the revision was created"

?

@TomHennen TomHennen self-assigned this Oct 16, 2024
TomHennen added a commit to TomHennen/slsa that referenced this issue Oct 16, 2024
fixes slsa-framework#1139

Per slsa-framework#1139, 'documented process' was somewhat confusing and could
be interpreted as meaning some _prose_ documentation. I think the
real aim is to ensure all the rules for making a change to a
branch were followed.

So I changed the text to talk about those rules, rather than
'documented process'.  I think this is more aligned with what
we're looking for?

Signed-off-by: Tom Hennen <[email protected]>
TomHennen added a commit to TomHennen/slsa that referenced this issue Oct 23, 2024
fixes slsa-framework#1139

Per slsa-framework#1139, 'documented process' was somewhat confusing and could
be interpreted as meaning some _prose_ documentation. I think the
real aim is to ensure all the rules for making a change to a
branch were followed.

So I changed the text to talk about those rules, rather than
'documented process'.  I think this is more aligned with what
we're looking for?

Signed-off-by: Tom Hennen <[email protected]>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
Status: Done
Status: Done
Development

Successfully merging a pull request may close this issue.

3 participants