Skip to content

chore(ci): pin third-party GitHub Actions to commit SHA - #540

Merged
debba merged 5 commits into
TabularisDB:mainfrom
jeffersongoncalves:chore/pin-github-actions-sha
Jul 28, 2026
Merged

chore(ci): pin third-party GitHub Actions to commit SHA#540
debba merged 5 commits into
TabularisDB:mainfrom
jeffersongoncalves:chore/pin-github-actions-sha

Conversation

@jeffersongoncalves

Copy link
Copy Markdown
Contributor

Summary

  • Pin every third-party action reference (actions/checkout, pnpm/action-setup, actions/setup-node, dtolnay/rust-toolchain, swatinem/rust-cache, tauri-apps/tauri-action, KSXGitHub/github-actions-deploy-aur, vedantmgoyal9/winget-releaser, snapcore/action-build, snapcore/action-publish) to a full 40-char commit SHA, keeping the resolved tag as a trailing comment.
  • First-party refs (./.github/workflows/build.yml) left as-is — already covered by branch protection.

Motivation: tag-pinned actions can be silently re-pointed to malicious code by a compromised maintainer, as happened with tj-actions/changed-files in March 2025 (secrets exfiltrated from thousands of repos mid-run). SHA pinning guarantees the code that ran yesterday runs again today.

Test plan

  • CI workflow run passes on this branch

jeffersongoncalves and others added 3 commits July 27, 2026 08:09
Tag refs can be re-pointed by a compromised maintainer to inject
malicious code into CI (e.g. the tj-actions/changed-files incident,
March 2025). Pin every third-party action to its full commit SHA,
with the resolved tag kept as a trailing comment for readability.
First-party ./path and same-repo reusable workflow refs are left
alone since branch protection already covers them.

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
@debba

debba commented Jul 28, 2026

Copy link
Copy Markdown
Collaborator

@jeffersongoncalves Thanks a lot for this, and for keeping the resolved tags as comments. I verified all the pinned SHAs against their tags and everything checks out.

One thought: without automation these pins will go stale over time and the version comments will slowly drift from reality. Since the repo has no Dependabot config yet, what do you think about adding a dependabot.yml with the github-actions ecosystem directly in this PR? Dependabot updates the SHAs and keeps the version comments in sync, so it feels like the natural companion to this change.

Happy to merge either way. If you'd rather keep this PR focused, a follow-up works too.

Auto-update pinned action SHAs weekly.

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
@jeffersongoncalves

jeffersongoncalves commented Jul 28, 2026

Copy link
Copy Markdown
Contributor Author

@debba Added .github/dependabot.yml (github-actions ecosystem, weekly) so pinned SHAs get automatic update PRs going forward.

@debba
debba merged commit f9c0113 into TabularisDB:main Jul 28, 2026
1 check passed
@jeffersongoncalves
jeffersongoncalves deleted the chore/pin-github-actions-sha branch July 28, 2026 19:58
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants