Thanks to visit codestin.com
Credit goes to github.com

Skip to content

ci: harden GitHub Actions workflows#1284

Merged
flavorjones merged 5 commits into
mainfrom
harden-github-actions
Mar 20, 2026
Merged

ci: harden GitHub Actions workflows#1284
flavorjones merged 5 commits into
mainfrom
harden-github-actions

Conversation

@flavorjones
Copy link
Copy Markdown
Member

Summary

  • Add zizmor and actionlint CI job
  • Configure dependabot with batched updates and cooldown periods
  • Pin all GitHub Actions to SHA hashes
  • Fix excessive-permissions and artipacked findings
  • Scope all permissions to job-level
  • Add local workflow linting to bin/setup and bin/ci

Test plan

  • CI passes (lint-actions job runs clean)
  • Existing test jobs unaffected

🤖 Generated with Claude Code

flavorjones and others added 5 commits March 20, 2026 16:34
Co-Authored-By: Claude Opus 4.6 (1M context) <[email protected]>
…ng and cooldowns

Co-Authored-By: Claude Opus 4.6 (1M context) <[email protected]>
…nd bin/ci

Co-Authored-By: Claude Opus 4.6 (1M context) <[email protected]>
Co-Authored-By: Claude Opus 4.6 (1M context) <[email protected]>
Set workflow-level permissions: {} and add per-job contents: read.
Add persist-credentials: false to all checkout steps.

Co-Authored-By: Claude Opus 4.6 (1M context) <[email protected]>
Copilot AI review requested due to automatic review settings March 20, 2026 21:18
Copy link
Copy Markdown

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

This PR hardens the repository’s GitHub Actions posture by adding workflow lint/audit checks, scoping permissions more tightly, pinning actions to SHAs, and introducing Dependabot configuration for batched updates.

Changes:

  • Add a dedicated lint-actions CI job running actionlint and zizmor, and set default workflow permissions to none with job-level scoping.
  • Pin GitHub Actions used in CI to specific commit SHAs and disable persisted checkout credentials.
  • Add local workflow linting hooks to bin/setup / bin/ci, plus a new Dependabot config with grouping and cooldown settings.

Tip

If you aren't ready for review, convert to a draft PR.
Click "Convert to draft" or run gh pr ready --undo.
Click "Ready for review" or run gh pr ready to reengage.

Reviewed changes

Copilot reviewed 2 out of 4 changed files in this pull request and generated 1 comment.

File Description
bin/setup Installs local workflow linting tools (actionlint/shellcheck/zizmor) during developer setup.
bin/ci Runs local workflow linting (when tools are available) before executing the test suite.
.github/workflows/ci.yml Adds lint-actions, scopes permissions to job-level, and pins actions to SHAs.
.github/dependabot.yml Configures grouped Dependabot updates with weekly cadence and cooldown windows.

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

Comment thread .github/workflows/ci.yml
@flavorjones flavorjones merged commit e62fcc3 into main Mar 20, 2026
41 of 42 checks passed
@flavorjones flavorjones deleted the harden-github-actions branch March 20, 2026 23:34
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