Skip to content

chore(ci): close the fixable Scorecard alerts - #206

Merged
PIsberg merged 1 commit into
mainfrom
chore/scorecard-findings
Aug 4, 2026
Merged

chore(ci): close the fixable Scorecard alerts#206
PIsberg merged 1 commit into
mainfrom
chore/scorecard-findings

Conversation

@PIsberg

@PIsberg PIsberg commented Aug 4, 2026

Copy link
Copy Markdown
Owner

Closes 11 of the 19 open code-scanning alerts (the ones a code change can close); the remaining 8 are dismissed with recorded reasons, see below.

Pinned dependencies (9 alerts): demo.yml, gradle-tests.yml and load-tests.yml predated the repo's SHA-pinning convention. Actions now pin to the same SHAs Dependabot already maintains in sbom.yml and tests.yml; asciinema pins to 2.4.0; agg stops downloading releases/latest and pins v1.9.0 with its published sha256 verified before chmod.

Token permissions (2 of 4 alerts): demo.yml's workflow-level token drops to contents: read, with the write grant moved into the one job that pushes the GIF. sbom.yml loses packages: write, which nothing in the workflow uses.

Dismissed as won't fix: publish.yml and sbom.yml job-level contents: write (required for gh release create and release-asset upload), the two gradle-wrapper.jar binary-artifact alerts (wrapper validation runs via gradle/actions in every CI job), and the four repo-level alerts (branch protection conflicts with the direct-push release flow, code review needs a second maintainer, CII badge and OSS-Fuzz enrollment are external registrations).

Verified: all five touched workflows parse as YAML; pinned SHAs are byte-identical to the ones already trusted elsewhere in the repo.

🤖 Generated with Claude Code

https://claude.ai/code/session_01UsCqogShCj1AVTEcP4FzLg

…east-privilege demo.yml

Scorecard flagged 13 fixable spots across three workflows. The repo
convention is SHA-pinned actions with a version comment (sbom.yml,
tests.yml); demo.yml, gradle-tests.yml and load-tests.yml predated it.

- demo.yml: top-level token drops to contents: read with the write
  grant moved to the one job that pushes the GIF; harden-runner,
  checkout and setup-java move to the same SHAs the other workflows
  already trust; asciinema pins to 2.4.0; agg stops downloading
  releases/latest and pins v1.9.0, verified against the sha256 the
  GitHub release publishes.
- gradle-tests.yml, load-tests.yml: gradle/actions/setup-gradle pins
  to the v6.2.0 commit.
- sbom.yml: packages: write removed — nothing in the workflow touches
  GitHub Packages; the SBOM goes to artifacts and release assets.

Verified: all five touched workflows still parse as YAML; the pinned
SHAs are byte-identical to the ones Dependabot already maintains in
the other workflow files.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01UsCqogShCj1AVTEcP4FzLg
@codecov

codecov Bot commented Aug 4, 2026

Copy link
Copy Markdown

Codecov Report

✅ All modified and coverable lines are covered by tests.

📢 Thoughts on this report? Let us know!

@PIsberg
PIsberg merged commit 4bfe3f2 into main Aug 4, 2026
28 checks passed
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.

1 participant