You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
The Trivy scan steps in .github/workflows/gke-images.yml are currently report-only (exit-code: "0") so CVE findings upload SARIF to GitHub Security but don't fail the build. This was a deliberate, documented softening (commit 76eb6f9, PR #162) so we could ship v2.2.0 — the gate was blocking every release due to upstream CVE-DB growth (litestream Go stdlib, devDep CVEs) on code that was identical to what was running in production.
The softening is intended to be temporary. This issue tracks restoring the blocking gate.
If anything is left, allowlist it explicitly via .trivyignore with a comment justifying each entry (vendor-non-applicable, scheduled upgrade in <30 days, etc.). Don't silently lower thresholds.
In .github/workflows/gke-images.yml, restore exit-code: "1" on both Trivy steps (lines ~170 and ~188 at the time of writing; check the file for the current line numbers).
Push a tag (or trigger a build) and verify Trivy passes on the new images, then verify it would have failed on the v2.2.0 image (sanity check the gate still works).
Why this matters
A blocking SCA gate is one of our supply-chain controls. Leaving it report-only means a real CVE introduction in app code wouldn't auto-block a deploy.
Trivy SARIF baseline for v2.2.0: GitHub Security tab → trivy-hub and trivy-watchtower categories.
Severity
Medium — supply-chain control. Not currently exploitable, but the SCA gate is a defense-in-depth measure that should be restored as soon as the prerequisite CVE cleanup lands.
Context
The Trivy scan steps in
.github/workflows/gke-images.ymlare currently report-only (exit-code: "0") so CVE findings upload SARIF to GitHub Security but don't fail the build. This was a deliberate, documented softening (commit 76eb6f9, PR #162) so we could ship v2.2.0 — the gate was blocking every release due to upstream CVE-DB growth (litestream Go stdlib, devDep CVEs) on code that was identical to what was running in production.The softening is intended to be temporary. This issue tracks restoring the blocking gate.
Prerequisites
This issue is gated on:
After both land, re-run a build and verify the SARIF in GitHub Security drops below the gate's tolerance.
Acceptance criteria
ignore-unfixed: true..trivyignorewith a comment justifying each entry (vendor-non-applicable, scheduled upgrade in <30 days, etc.). Don't silently lower thresholds..github/workflows/gke-images.yml, restoreexit-code: "1"on both Trivy steps (lines ~170 and ~188 at the time of writing; check the file for the current line numbers).Trivy scan - hubstep in PR ci(gke-images): make Trivy scan report-only #162.Why this matters
A blocking SCA gate is one of our supply-chain controls. Leaving it report-only means a real CVE introduction in app code wouldn't auto-block a deploy.
Pointers
.github/workflows/gke-images.yml:156-19176eb6f9(PR ci(gke-images): make Trivy scan report-only #162). Read the commit message — it documents the policy.trivy-hubandtrivy-watchtowercategories.Severity
Medium — supply-chain control. Not currently exploitable, but the SCA gate is a defense-in-depth measure that should be restored as soon as the prerequisite CVE cleanup lands.