Repository navigation
ci(security): govulncheck every Go module through the fail-closed gate (#2569) - #2579
Merged
AhmedElBanna80 merged 3 commits intoOct 22, 2026
Merged
Conversation
#2569) Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_0198oVxWkEEDJJnVhES6ULnx
|
The latest updates on your projects. Learn more about Vercel for GitHub.
|
…odule, non-nightly coverage guard (#2569) Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_0198oVxWkEEDJJnVhES6ULnx
…n scopes (#2569) Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_0198oVxWkEEDJJnVhES6ULnx
This branch was successfully deployed
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
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.
Refs #2569
govulncheck (pinned v1.9.0, fail-closed gate,
set -euo pipefail) now covers every Go module, not only templates/go. The nightly half lands on main in #2581 (which closes #2569)..github/workflows/govulncheck-modules.yml: matrix overpackages/kn-next-operatorandpackages/scale-zero-pg/gateway, on PRs and pushes touching the module, the gate/exceptions files and the gate tests. Read-only permissions, SHA-pinned actions. templates/go stays gated in go-template.yml.security/govulncheck-modules.json: explicit exclusion list, read by the test.spikes/zone-functions-coldstart/fn-gois excluded with a reason: throwaway benchmark spike pinned to go 1.26.0, 8 called stdlib advisories, never shipped.tests/govulncheck-all-modules.test.ts: every tracked go.mod must be gated in a workflow or excluded with a reason.Measured locally (govulncheck v1.9.0 through the gate): operator, gateway and templates/go each show only GO-2026-6809 (covered by the existing exception expiring 2026-10-25). No new exception needed.
Round 2
security/govulncheck-exceptions.jsontakes an optionalmodules: [...](module directories); omitted means all modules, so the GO-2026-6809 entry is unchanged.scripts/govulncheck-gate.mjstakes the module being scanned (argument orGOVULNCHECK_MODULE, and REFUSES to run without it) and applies the "covers this finding" and "stale" checks only to in-scope entries. Every gated step passes the module (go-template.yml, govulncheck-modules.yml, the nightly). New tests/govulncheck-gate-scope.test.ts: an operator-scoped entry does not make the gateway stale; an out-of-scope entry does not excuse a finding; an in-scope stale entry still fails.13 2 * * *cron), identical to the file in ci(security): govulncheck nightly over every Go module and both refs (#2569) #2581 so the two refs stay byte-identical; its require step FAILS every leg except main x templates/go.Final fix
Typecheck (root tests/) is clean: the gate carries JSDoc types and the nightly test types the module axis. The gate now rejects an exception scope that is not a scanned module (trailing slash, ./ prefix, no go.mod, or listed as excluded), via
knownModules, so an unscanned scope can no longer linger. Mutation-proved. Shared files stay byte-identical with #2581.Escalation trigger acknowledged: supply chain — extends the vulnerability-scan gate and CI workflows to all Go modules; no new credentials or write scopes.
no user-visible surface changed
🤖 Generated with Claude Code
https://claude.ai/code/session_0198oVxWkEEDJJnVhES6ULnx