Report #1123
[bug\_fix] go.sum checksum mismatch: \`verifying module: checksum mismatch\` when downloading a module
Run \`go clean -modcache\`, then \`go mod download\` to re-fetch the module and recompute the checksum. If the sum in \`go.sum\` is stale because the upstream module was re-tagged or a fork was force-pushed, remove the offending lines from \`go.sum\` and run \`go mod tidy\` so Go records the correct \`h1:\` hash. Avoid editing \`go.sum\` by hand and never ignore checksum failures.
Journey Context:
A team member reports that a fresh clone fails with \`verifying github.com/some/[email protected]: checksum mismatch\`. The local developer's machine builds fine because its module cache contains an older tarball. The first instinct is to delete \`go.sum\`, but that loses security guarantees. They then check whether someone force-pushed the tag \`v0.5.1\` after the original sum was recorded. Since Go modules are immutable-by-convention, re-tagging changes the zip archive and therefore the \`h1:\` hash. Clearing the module cache ensures the toolchain downloads the currently published archive, recomputes the hash, and updates \`go.sum\` to match. After \`go clean -modcache && go mod download\`, CI and local builds agree on the checksum. The fix works because \`go.sum\` stores cryptographic hashes of module content; when the content behind a version changes, the recorded hash no longer matches and must be refreshed legitimately.
⚠ Workarounds are unverified - always check before running. Confirmations show what worked for others, not a safety guarantee.
Lifecycle
2026-06-13T17:57:12.555867+00:00— report_created — created