Skip to content

Dependency & toolchain bump: close all reachable CVEs#3

Merged
sethpjohnson merged 1 commit into
mainfrom
claude/z9m8meke-deps-bump
Jul 17, 2026
Merged

Dependency & toolchain bump: close all reachable CVEs#3
sethpjohnson merged 1 commit into
mainfrom
claude/z9m8meke-deps-bump

Conversation

@sethpjohnson

@sethpjohnson sethpjohnson commented Jul 17, 2026

Copy link
Copy Markdown
Owner

Summary

Stacked on #2 (which stacks on #1) — merge in order.

  • go 1.22 → 1.25.0 with toolchain go1.25.12 pinned. govulncheck now reports zero reachable vulnerabilities — closing the three reachable x/net v0.10.0 HTTP/2 CVEs traced through the live API port (Rapid Reset, CONTINUATION flood) plus 17 reachable stdlib CVEs present at 1.25.4.
  • gin v1.9.1 → v1.12.0 and all stale indirects bumped (x/net v0.57.0, x/crypto v0.54.0, protobuf, sonic, go-sqlite3). Zero application-code changes needed; the full Tier 1/2 test suite passes unchanged and served as the compatibility net.
  • Docker image: multi-GB → ~200MB. Runtime base switched from nvidia/cuda:12.4.1-runtime to debian:bookworm-slim; nvidia-smi is injected at run time by the NVIDIA Container Toolkit regardless of base image (verified against NVIDIA docs and by the reviewer's live container run). NVIDIA_VISIBLE_DEVICES/NVIDIA_DRIVER_CAPABILITIES are now set explicitly, preserving the implicit CUDA-image defaults the Unraid template relies on.

Review & verification

  • Principal review → APPROVED WITH SUGGESTIONS: reviewer independently re-ran govulncheck (clean), audited go.sum churn for supply-chain issues (none; new transitives quic-go/mongo-driver are genuine gin v1.12 requirements), built and ran the container (ipmitool present, CGO sqlite works on slim, /api/status serves), and judged Unraid/CPU-only deployment behavior unchanged.
  • go vet + go test -race -count=1 ./... clean; local docker build succeeded; demo smoke test (status + dashboard 200s, clean SIGINT with single restore line).
  • Follow-up filed: pin builder image to golang:1.25.12-bookworm exactly (folded into Tier 4).

⚠️ One thing to watch on first real deploy: the slim image's nvidia-smi injection is verified from docs + container runs here, but the definitive proof is your Unraid host with --runtime=nvidia — check GPU temps appear in the dashboard after upgrading.

Task: dex z9m8meke — Tier 3: Dependency & toolchain bump

🤖 Generated with Claude Code

govulncheck traced three reachable vulnerabilities in x/net v0.10.0
through the live API serving path (HTTP/2 Rapid Reset GO-2023-2102,
CONTINUATION flood GO-2024-2687, GO-2025-3595), and Go 1.22 is past
end-of-support.

- go.mod: go 1.25.0 with toolchain go1.25.12 pinned (1.25.4 still had 17
  reachable stdlib CVEs; the pin clears them all - govulncheck now
  reports zero reachable vulnerabilities).
- gin v1.9.1 -> v1.12.0, x/net v0.10.0 -> v0.57.0, x/crypto -> v0.54.0,
  protobuf -> v1.36.11, sonic -> v1.15.2, go-sqlite3 -> v1.14.48. No
  application code changes required; full test suite passes unchanged.
- Dockerfile: build stage golang:1.25-bookworm; runtime stage switched
  from nvidia/cuda:12.4.1-runtime-ubuntu22.04 to debian:bookworm-slim
  (205MB vs multi-GB). GPU monitoring only shells out to nvidia-smi,
  which the NVIDIA Container Toolkit injects at run time for any base
  image; NVIDIA_VISIBLE_DEVICES=all and NVIDIA_DRIVER_CAPABILITIES=utility
  are now set explicitly in the image, preserving the implicit defaults
  the CUDA base provided (the Unraid template depends on them).

Task: dex z9m8meke - Tier 3: Dependency & toolchain bump

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01EQmqj1Hj8DL3GGAcBDNm8v
Base automatically changed from claude/ttm1g3x0-api-security to main July 17, 2026 17:09
@sethpjohnson
sethpjohnson merged commit bc6b5ad into main Jul 17, 2026
@sethpjohnson
sethpjohnson deleted the claude/z9m8meke-deps-bump branch July 17, 2026 17:10
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