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.
chore(readme): reorganize for scannability and clearer positioning #120
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Uh oh!
There was an error while loading. Please reload this page.
chore(readme): reorganize for scannability and clearer positioning #120
Changes from all commits
d902fdded5c3385c1afb5018a91bFile filter
Filter by extension
Conversations
Uh oh!
There was an error while loading. Please reload this page.
Jump to
Uh oh!
There was an error while loading. Please reload this page.
There are no files selected for viewing
Check warning
Code scanning / CodeQL
Unpinned tag for a non-immutable Action in workflow or composite action Medium
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
🧩 Analysis chain
🏁 Script executed:
Repository: vaaraio/vaara
Length of output: 181
🏁 Script executed:
Repository: vaaraio/vaara
Length of output: 1735
Pin third-party action refs to commit SHAs in clusterfuzzlite workflows.
.github/workflows/cflite_batch.yml uses tag refs:
Tag refs like
@v1can move upstream and change behavior without notice..github/workflows/cflite_pr.yml(build_fuzzers@v1, run_fuzzers@v1) and.github/workflows/cflite_cifuzz.yml(build_fuzzers@v1)Suggested change
🧰 Tools
🪛 GitHub Check: CodeQL
[warning] 20-20: Unpinned tag for a non-immutable Action in workflow
Unpinned 3rd party Action 'ClusterFuzzLite batch fuzzing' step Uses Step: build uses 'google/clusterfuzzlite/actions/build_fuzzers' with ref 'v1', not a pinned commit hash
🪛 zizmor (1.25.2)
[error] 20-20: unpinned action reference (unpinned-uses): action is not pinned to a hash (required by blanket policy)
(unpinned-uses)
🤖 Prompt for AI Agents
Check warning
Code scanning / CodeQL
Unpinned tag for a non-immutable Action in workflow or composite action Medium
Check warning
Code scanning / CodeQL
Unpinned tag for a non-immutable Action in workflow or composite action Medium
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
🧩 Analysis chain
🏁 Script executed:
Repository: vaaraio/vaara
Length of output: 100
🏁 Script executed:
Repository: vaaraio/vaara
Length of output: 625
🌐 Web query:
google/clusterfuzzlite/actions/build_fuzzers v1 tag moving or stable💡 Result:
In the
google/clusterfuzzliteGitHub Actions, thev1tag forbuild_fuzzersis a moving tag [1]. While it is commonly used in documentation as a stable reference for production workflows [2], it is technically a pointer to a specific Docker image version (e.g.,gcr.io/oss-fuzz-base/clusterfuzzlite-build-fuzzers:v1) [1]. In the context of GitHub Actions, using@v1means your workflow will pull the version of the action currently associated with that tag at the time of execution [1]. Becausev1is a moving tag, it may be updated by maintainers to include improvements or fixes [1][3]. For users who prioritize strict build reproducibility and want to avoid unexpected changes, it is recommended to pin the action to a specific commit SHA rather than using thev1tag [2][4].Citations:
🌐 Web query:
GitHub Actions security hardening pin actions to commit SHA recommended💡 Result:
Pinning GitHub Actions to a full-length commit SHA is a highly recommended security practice that creates an immutable, predictable reference for your workflows [1][2][3]. Why it is recommended: - Supply Chain Security: Unlike version tags (e.g.,
@v4) or branches (e.g.,@main), which are mutable and can be repointed by repository maintainers or attackers who compromise an account, a commit SHA points to a specific, immutable version of the code [3][4]. - Protection Against Compromise: If a third-party action is compromised, attackers often update the tag to point to malicious code. Workflows pinned to a specific SHA will continue to use the known-good code, preventing automatic execution of the malicious changes [5][4]. - Organizational Compliance: GitHub now provides organization-level policies that allow administrators to enforce full commit SHA pinning [6][5]. When enabled, any workflow using a tag or branch instead of a SHA will fail [6][7]. Note that this policy enforcement can also apply to nested sub-actions, which can cause failures if sub-dependencies are not also pinned [6]. How to implement: - Format: Use the full-length (40-character) SHA instead of a tag [1][2]. - Maintainability: To ensure clarity, it is a common best practice to include a comment indicating which version the SHA corresponds to [8][7][9]: uses: actions/checkout@f43a0e5 # v4.1.1 - Automation: Because manual pinning can be burdensome, organizations often use tools like Dependabot, Renovate, or specialized CLI tools to manage and update these pinned SHAs automatically [6][3]. When to use: While pinning is the gold standard for security, it is especially critical for high-trust pipelines, release-sensitive jobs, and any workflows handling sensitive data or secrets [2][10]. If you choose to use tags for convenience in lower-risk environments, ensure you only use actions from highly trusted sources [1].Citations:
Pin
google/clusterfuzzlite/actions/build_fuzzersto an immutable commit SHA (not@v1)..github/workflows/cflite_cifuzz.ymlusesgoogle/clusterfuzzlite/actions/build_fuzzers@v1in the fuzz build job;@v1is a moving tag, so upstream changes can alter CI behavior without notice. Pinning to a full commit SHA avoids that supply-chain/surprise risk.Suggested change
🧰 Tools
🪛 GitHub Check: CodeQL
[warning] 26-26: Unpinned tag for a non-immutable Action in workflow
Unpinned 3rd party Action 'ClusterFuzzLite continuous build' step Uses Step: build uses 'google/clusterfuzzlite/actions/build_fuzzers' with ref 'v1', not a pinned commit hash
🪛 zizmor (1.25.2)
[error] 26-26: unpinned action reference (unpinned-uses): action is not pinned to a hash (required by blanket policy)
(unpinned-uses)
🤖 Prompt for AI Agents
Check warning
Code scanning / CodeQL
Unpinned tag for a non-immutable Action in workflow or composite action Medium
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
🧩 Analysis chain
🏁 Script executed:
Repository: vaaraio/vaara
Length of output: 156
🏁 Script executed:
Repository: vaaraio/vaara
Length of output: 1628
Pin both ClusterFuzzLite GitHub Actions to immutable SHAs (avoid moving
@v1tags).In
.github/workflows/cflite_pr.yml:uses: google/clusterfuzzlite/actions/build_fuzzers@v1(line 30)uses: google/clusterfuzzlite/actions/run_fuzzers@v1(line 36)Suggested change
🧰 Tools
🪛 GitHub Check: CodeQL
[warning] 30-30: Unpinned tag for a non-immutable Action in workflow
Unpinned 3rd party Action 'ClusterFuzzLite PR fuzzing' step Uses Step: build uses 'google/clusterfuzzlite/actions/build_fuzzers' with ref 'v1', not a pinned commit hash
🪛 zizmor (1.25.2)
[error] 30-30: unpinned action reference (unpinned-uses): action is not pinned to a hash (required by blanket policy)
(unpinned-uses)
🤖 Prompt for AI Agents
Check warning
Code scanning / CodeQL
Unpinned tag for a non-immutable Action in workflow or composite action Medium
Uh oh!
There was an error while loading. Please reload this page.