ci: declare contents:read on pre-commit workflow#7848
Open
arpitjain099 wants to merge 1 commit into
Open
Conversation
The pre-commit workflow runs pre-commit/action@v3.0.1 against a diff range. No GitHub API write beyond actions/checkout. contents:read is the minimum. Matches the per-job permissions block already used by wheels.yml (id-token:write for trusted publishing). ci-test.yml is left out because it uses both setup-python cache and bazelisk-cache, which interact with the cache-save path and warrant a separate discussion. Signed-off-by: Arpit Jain <arpitjain099@gmail.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
pre-commitworkflow runspre-commit/action@v3.0.1against the diff range. It only checks out the repo and invokes pre-commit hooks locally; no GitHub API write, no comment-on-PR step.This patch sets
permissions: contents: readat workflow scope, matching the per-job permission block already declared inwheels.yml(id-token: writefor trusted publishing).With explicit scope:
Token-Permissionscheck passes for this fileactions/checkout,actions/setup-python, orpre-commit/action(cf. tj-actions/changed-files CVE-2025-30066) stays boxed in read-onlyci-test.ymlis deliberately out of scope: it usescache: 'pip'insetup-pythonplus abazelisk-cache: truedirective, both of which write back to the GitHub Actions cache. Pinning explicit permissions there has to account for the cache-save path, which deserves a separate look.No behavioural change.