ci: pin third-party actions to SHAs, persist-credentials: false, seed zizmor.yml - #32
Merged
Merged
Conversation
… zizmor.yml Match the wave 2 zizmor remediation pattern already shipped across nine other repos (e.g. smartwatermelon/scripts#172). - SHA-pin actions/checkout@v7.0.1 and anthropics/claude-code-action@v1.0.219 in ci.yml, claude.yml, release.yml, and update-mirrors.yml. - Add persist-credentials: false to checkouts in ci.yml, claude.yml, and release.yml — none of those jobs push or commit with the checkout's token. - Leave update-mirrors.yml's checkout without persist-credentials: false and mark it with an inline zizmor: ignore[artipacked]: its "Create pull request" step runs `git push origin "$BRANCH"`, which authenticates with the credential this checkout persists (the GH_TOKEN env on that step only covers the `gh` CLI calls, not git itself). - Seed the canonical zizmor.yml at the repo root. zizmor and actionlint are clean locally; markdownlint debt remains and is wave 3. Claude-Session: https://claude.ai/code/session_019HDRKLQNv82SEBd4zGpcXf
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.
Wave 2 zizmor remediation, matching the pattern already shipped across nine other repos (e.g. smartwatermelon/scripts#172).
actions/checkout@v7.0.1(ci.yml x2, release.yml, update-mirrors.yml, claude.yml) andanthropics/claude-code-action@v1.0.219(claude.yml).persist-credentials: falseto the checkouts in ci.yml, claude.yml, and release.yml — none of those jobs push or commit with the checkout's token.update-mirrors.yml's checkout withoutpersist-credentials: false, with an inline# zizmor: ignore[artipacked]: its "Create pull request" step runsgit push origin "$BRANCH", which authenticates using the credential that checkout persists (theGH_TOKENenv on that step covers only theghCLI calls, notgit pushitself). Dropping the persisted credential would break the push.template-injection(info) findings inupdate-mirrors.ymlby moving${{ steps.check.outputs.* }}interpolations out of inline shell and intoenv:blocks, matching the pattern the rest of the file already used forANOMALY_REASON/RUN_URL. This was required to get past the local pre-commit hook, which blocks on any zizmor finding regardless of severity.zizmor.ymlat the repo root..github/dependabot.ymlalready existed; left unchanged.zizmor and actionlint are clean locally; markdownlint debt (1 pre-existing finding in LICENSE.md) remains and is wave 3.
https://claude.ai/code/session_019HDRKLQNv82SEBd4zGpcXf