Skip to content

fix(deps): clear the vulnerability gate with a patched toolchain and x/net bump - #40

Merged
rsbin1178 merged 1 commit into
mainfrom
fix/deps-vuln-gate
Oct 9, 2026
Merged

rsbin1178 merged 1 commit into
mainfrom
fix/deps-vuln-gate

Conversation

@rsbin1178

Copy link
Copy Markdown
Owner

The Go quality and security job fails on main right now, not just on a branch: its govulncheck step reports standard-library advisories that affect the declared Go 1.26.6, plus two module advisories. The database moved after the last green Quality run (2026-10-08 15:12Z), so every push to main fails the same step.

Reproduced on pristine origin/main before changing anything:

$ go tool govulncheck ./...
Your code is affected by 14 vulnerabilities from 1 module and the Go standard library.

The bump

The smallest change that clears it, staying on the repository's 1.26 line rather than moving to 1.27:

before after why
go directive 1.26.6 1.26.9 the first 1.26 patch the advisories name as fixed (net/http, HTTP/2 internals, mime/multipart, crypto/tls, os, net/textproto)
golang.org/x/net v0.57.0 v0.60.0 GO-2026-6617, 6611, 6610, 6603
golang.org/x/image v0.28.0 v0.43.0 GO-2026-5066, 5062, 5032
transitive x/mod v0.41.0, x/sync v0.23.0, x/sys v0.48.0, x/telemetry 20260811, x/text v0.42.0, x/tools v0.49.0 what the three bumps require

CI installs its toolchain from go-version-file: go.mod, so the go directive is the only place the standard-library version is chosen.

Verification, with the declared toolchain

  • go tool govulncheck ./... → 0 vulnerabilities, exit 0 (was 14 affected, 10 reachable from the standard library)
  • go test ./... -count=1 → 89 packages ok
  • the repository's own race gate, bash .github/scripts/go-test.sh -race -p 2 ./agent/... ./internal/coding/... → exit 0
  • go mod verify → all modules verified; make deps-check → all three policies OK
  • golangci-lint run --new-from-rev=origin/main ./... → 0 issues

No code changes: this is the toolchain and two modules only.

Note

golang.org/x/image is an indirect dependency (it arrives through the clipboard and image-attachment paths), and its advisories are about tiff decoding, reachable from internal/coding/clipboard and internal/coding/attachment. Worth knowing that the reachable set is real, not theoretical.

…x/net bump

The quality job's govulncheck step fails on main as well as on any branch: the
vulnerability database has picked up standard-library advisories that affect the
declared Go 1.26.6 (net/http and its HTTP/2 internals, mime/multipart, crypto/tls,
os, net/textproto) plus two module advisories, golang.org/x/net v0.57.0 and
golang.org/x/image v0.28.0.

Take the smallest bump that clears them, which keeps the repository on its 1.26
line rather than moving to 1.27: the go directive moves to 1.26.9, the first 1.26
patch the advisories name as fixed, golang.org/x/net to v0.60.0 and
golang.org/x/image to v0.43.0, with the transitive x/mod, x/sync, x/sys,
x/telemetry, x/text and x/tools companions they require.

Verified with the declared toolchain, which is the one setup-go installs from
go.mod: `go tool govulncheck ./...` reports 0 vulnerabilities and exits 0, where
the declared 1.26.6 reported 14 affected, 10 of them reachable from the standard
library. `go test ./... -count=1` passes 89 packages, the repository's own race
gate (`go-test.sh -race -p 2 ./agent/... ./internal/coding/...`) passes, `go mod
verify` and `make deps-check` are clean, and golangci-lint reports 0 issues.
@rsbin1178
rsbin1178 merged commit 59df191 into main Oct 9, 2026
8 checks passed
@rsbin1178
rsbin1178 deleted the fix/deps-vuln-gate branch October 9, 2026 03:12
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