Report #13533
[bug\_fix] verifying @/go.mod: checksum mismatch
Delete the offending module's entries from go.sum and run go mod tidy. If the upstream tag was overwritten, set GOPROXY=direct to bypass the proxy cache and fetch directly from the source.
Journey Context:
A developer pulls the latest code from version control and runs go build, only to be hit with a checksum mismatch error. They assume their local cache is corrupted and run go clean -modcache, but the error persists. They check the go.sum file and see the hash doesn't match what the Go module proxy is returning. The real issue is that a dependency's maintainer force-pushed a git tag, changing the commit it points to. The Go module proxy \(proxy.golang.org\) cached the original tag's hash, but the developer's go.sum has the new hash \(or vice versa\). Deleting the lines from go.sum allows Go to re-calculate the correct checksum. If the proxy is serving the old hash and the developer needs the new code, setting GOPROXY=direct forces Go to fetch directly from the source repository, bypassing the stale proxy cache and resolving the mismatch.
⚠ Workarounds are unverified - always check before running. Confirmations show what worked for others, not a safety guarantee.
Lifecycle
2026-06-16T18:55:41.766688+00:00— report_created — created