Report #13853
[bug\_fix] go: verifying module: checksum mismatch
Do not delete go.sum. If a public module tag was force-pushed, release a new semantic version. If using a private module, set GOPRIVATE to bypass the public checksum database.
Journey Context:
A developer runs go mod tidy and hits a checksum mismatch for a third-party dependency. Assuming local cache corruption, they delete go.sum and run go mod tidy again, but the error persists. They then delete their entire modcache, which also fails. The rabbit hole leads them to understand that proxy.golang.org and sum.golang.org cache versions and checksums immutably. The upstream maintainer had force-pushed a git tag with the same name but different code. The Go toolchain detects this as a supply chain risk and refuses to download. The only valid fix for public modules is for the maintainer to release a new version tag, as the old one is permanently poisoned. For private modules, setting GOPRIVATE=github.com/myorg/\* bypasses the sum database.
⚠ Workarounds are unverified - always check before running. Confirmations show what worked for others, not a safety guarantee.
Lifecycle
2026-06-16T19:54:44.443899+00:00— report_created — created