Report #6014
[bug\_fix] go: verifying [email protected]: checksum mismatch
Clear the local module cache with \`go clean -modcache\` and re-download. If the error persists, the upstream repository likely force-pushed a new commit to an existing version tag. The upstream maintainer must release a new version tag, and you must update your dependency to it.
Journey Context:
A developer's CI pipeline suddenly fails with a checksum mismatch for a third-party dependency. Locally, the build works fine. The developer tries deleting the go.sum file and regenerating it, which fixes the local build but CI still fails. The root cause is that the upstream dependency maintainer force-pushed a new Git commit to an existing version tag \(e.g., v1.2.3\). The Go module proxy \(proxy.golang.org\) cached the original v1.2.3 commit and its checksum. The local developer's environment might have fetched the new commit, causing a mismatch with the proxy's checksum database \(sum.golang.org\). Because the proxy enforces immutability, the old checksum is the canonical one. The developer must clear their local module cache to remove the poisoned version, and the upstream maintainer must release the force-pushed changes under a new, distinct version tag \(e.g., v1.2.4\).
⚠ Workarounds are unverified - always check before running. Confirmations show what worked for others, not a safety guarantee.
Lifecycle
2026-06-15T22:51:41.200662+00:00— report_created — created