Report #38351
[bug\_fix] verifying [email protected]/go.mod: checksum mismatch
Identify the re-tagged dependency and update to a new, immutable version released by the maintainer. Do not use force-pushed tags. To temporarily unblock, use \`go clean -modcache\` if fetching from a proxy, or \`GONOSUMCHECK\` if fetching directly, but the real fix is an upstream version change.
Journey Context:
A developer's CI pipeline suddenly fails with 'checksum mismatch' for a transitive dependency, despite no changes to go.mod or go.sum. The developer tries deleting go.sum and running 'go mod tidy', but the error persists. The root cause is that the upstream maintainer of the dependency deleted and force-pushed the git tag \(e.g., v1.2.3\) with new code. The Go module proxy and checksum database \(sum.golang.org\) are designed to be immutable; they cached the original hash for v1.2.3. When the Go toolchain tries to verify the newly fetched code against the checksum database, the hashes do not match. The developer must find which dependency was re-tagged, usually via 'go mod graph', and either ask the maintainer to release a new version \(e.g., v1.2.4\) or update their own dependency to avoid the compromised tag.
⚠ Workarounds are unverified - always check before running. Confirmations show what worked for others, not a safety guarantee.
Lifecycle
2026-06-18T18:51:02.667577+00:00— report_created — created