Ran govulncheck ./... against current main (980f2f4, go 1.26.5 in go.mod, golang.org/x/image v0.44.0). 7 reachable vulnerabilities: 6 in the standard library (all fixed in go1.26.6) and 1 in golang.org/x/image (fixed in v0.45.0).
Not a request to bump CI pins blindly: per AGENTS.md the toolchain version is declared in go.mod, so the fix is the go/toolchain directive plus one dependency bump, then re-running make vulncheck.
Standard library (fixed in go1.26.6)
GO-2026-6218 - quadratic complexity in net/url resolvePath
internal/tools/web_search.go:266 - httpSearchBackend.Search -> http.Client.Do -> url.URL.Parse
internal/mcp/network_client.go:736 - resolveSSEEndpointURL -> url.URL.ResolveReference
GO-2026-6090 - unbounded post-handshake messages in crypto/tls
internal/mcp/oauth.go:430 - Login -> http.Server.Serve -> tls.Conn.HandshakeContext
internal/dictation/download.go:722 - progressReader.Read -> tls.Conn.Read
internal/daemon/protocol.go:64 - WriteFrame -> tls.Conn.Write
internal/daemon/remote/client.go:79 - dialAuthenticated -> tls.Dialer.DialContext
GO-2026-6089 - ReadHeaderTimeout not applied during the unencrypted HTTP/2 check in net/http
internal/mcp/oauth.go:430 - Login -> http.Server.Serve
GO-2026-6088 - missing recursion depth guard in encoding/xml
internal/daemon/pool.go:326 - Pool.Drain -> xml.Decoder.Decode
internal/tui/syntax_highlight.go:11 - lexers.init -> xml.Decoder.DecodeElement / xml.Decoder.Token
GO-2026-5972 - no maximum recursion depth in encoding/asn1
internal/daemon/remote/bridge.go:250 - ServerTLSConfig -> tls.LoadX509KeyPair -> asn1.Unmarshal
GO-2026-5026 - ASCII-only Punycode-encoded labels not rejected in golang.org/x/net/idna (vendored in stdlib net/http)
internal/tools/web_search.go:266, internal/mcp/network_client.go:782
All six resolve by moving the go directive to 1.26.6.
Module dependency (fixed in v0.45.0)
GO-2026-6222 - excessive memory allocation during VP8L decoding in golang.org/x/image
internal/terminalpet/client.go:738 - decodeImage -> image.Decode -> vp8l.Decode
Resolves with go get golang.org/x/image@v0.45.0 and go mod tidy.
govulncheck also reported 2 unreachable findings (1 imported package, 1 required module); those do not affect callers and are not listed here. Full output available with go run golang.org/x/vuln/cmd/govulncheck@v1.3.0 ./... once built with a >= 1.26.6 toolchain.
Proposed fix
- Bump
go in go.mod to 1.26.6 (no toolchain line is currently pinned).
go get golang.org/x/image@v0.45.0 && go mod tidy.
- Re-run
make fmt-check, go vet ./..., go test ./..., make vulncheck per AGENTS.md validation.
Happy to open the PR if the approach sounds right.
Ran
govulncheck ./...against currentmain(980f2f4,go 1.26.5in go.mod,golang.org/x/image v0.44.0). 7 reachable vulnerabilities: 6 in the standard library (all fixed in go1.26.6) and 1 ingolang.org/x/image(fixed in v0.45.0).Not a request to bump CI pins blindly: per AGENTS.md the toolchain version is declared in
go.mod, so the fix is thego/toolchaindirective plus one dependency bump, then re-runningmake vulncheck.Standard library (fixed in go1.26.6)
GO-2026-6218 - quadratic complexity in
net/urlresolvePathinternal/tools/web_search.go:266-httpSearchBackend.Search->http.Client.Do->url.URL.Parseinternal/mcp/network_client.go:736-resolveSSEEndpointURL->url.URL.ResolveReferenceGO-2026-6090 - unbounded post-handshake messages in
crypto/tlsinternal/mcp/oauth.go:430-Login->http.Server.Serve->tls.Conn.HandshakeContextinternal/dictation/download.go:722-progressReader.Read->tls.Conn.Readinternal/daemon/protocol.go:64-WriteFrame->tls.Conn.Writeinternal/daemon/remote/client.go:79-dialAuthenticated->tls.Dialer.DialContextGO-2026-6089 -
ReadHeaderTimeoutnot applied during the unencrypted HTTP/2 check innet/httpinternal/mcp/oauth.go:430-Login->http.Server.ServeGO-2026-6088 - missing recursion depth guard in
encoding/xmlinternal/daemon/pool.go:326-Pool.Drain->xml.Decoder.Decodeinternal/tui/syntax_highlight.go:11-lexers.init->xml.Decoder.DecodeElement/xml.Decoder.TokenGO-2026-5972 - no maximum recursion depth in
encoding/asn1internal/daemon/remote/bridge.go:250-ServerTLSConfig->tls.LoadX509KeyPair->asn1.UnmarshalGO-2026-5026 - ASCII-only Punycode-encoded labels not rejected in
golang.org/x/net/idna(vendored in stdlibnet/http)internal/tools/web_search.go:266,internal/mcp/network_client.go:782All six resolve by moving the
godirective to 1.26.6.Module dependency (fixed in v0.45.0)
GO-2026-6222 - excessive memory allocation during VP8L decoding in
golang.org/x/imageinternal/terminalpet/client.go:738-decodeImage->image.Decode->vp8l.DecodeResolves with
go get golang.org/x/image@v0.45.0andgo mod tidy.govulncheck also reported 2 unreachable findings (1 imported package, 1 required module); those do not affect callers and are not listed here. Full output available with
go run golang.org/x/vuln/cmd/govulncheck@v1.3.0 ./...once built with a >= 1.26.6 toolchain.Proposed fix
goingo.modto 1.26.6 (notoolchainline is currently pinned).go get golang.org/x/image@v0.45.0 && go mod tidy.make fmt-check,go vet ./...,go test ./...,make vulncheckper AGENTS.md validation.Happy to open the PR if the approach sounds right.