Pin CI dependencies to exact versions and commit SHAs - #234
Open
Scott-Emberson wants to merge 1 commit into
Open
Pin CI dependencies to exact versions and commit SHAs#234Scott-Emberson wants to merge 1 commit into
Scott-Emberson wants to merge 1 commit into
Conversation
The marketplace step installed @anthropic-ai/claude-code at whatever latest resolved to, so the same commit could pass one day and fail the next, and each run executed unreviewed new code on the runner. The skills step already pinned 1.5.20; this makes the policy uniform. Actions move from mutable tags to full commit SHAs per GitHub's hardening guidance, with versions in trailing comments for bumps. Co-Authored-By: Claude Fable 5 <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.
Two hardening gaps in
.github/workflows/validate.yml, found in a full-repo review:Unpinned npm install.
npm install --global @anthropic-ai/claude-coderesolved to whateverlatestpointed at on each run, so every pull request and push executed a freshly published package (plus its dependency tree's lifecycle scripts) on the runner, and the same commit could pass one day and fail the next when a new release changed validation rules. The adjacent step already pinsskills@1.5.20. Now pinned to2.1.237(current latest at the time of this PR); bump it deliberately in a commit when you want new validation behavior.Mutable action tags.
actions/checkout@v4,setup-node@v4, andsetup-python@v5are tag references, and tags can be retargeted. Now pinned to full commit SHAs per GitHub's hardening guidance, with the human-readable version in a trailing comment so Dependabot can still bump them. SHAs verified against each action repo (checkout v4.4.0, setup-node v4.4.0, setup-python v5.6.0); same major versions as before, so no behavior change.The workflow's trigger and permission choices (
pull_request, workflow-levelcontents: read) were already correct and are untouched. No version bump since this changes CI only, not the skill.🤖 Generated with Claude Code