Report #102886
[bug\_fix] verifying example.com/[email protected]: checksum mismatch
Run 'go mod tidy' to regenerate go.sum, or if the module is known to be safe, use 'GONOSUMCHECK=\* go mod download' sparingly. Better to remove the corrupted go.sum file and re-run 'go mod download' inside the module root.
Journey Context:
While working on a team project, I pulled the latest changes from git and tried to build. The build failed with a dark red error: \`verifying example.com/[email protected]: checksum mismatch\`. The go.sum file had been modified by someone else's commit. I was on a flight with no internet access, so I couldn't fetch fresh checksums. The issue was that two developers had resolved indirect dependency versions different ways, causing go.sum entries to diverge. The root cause: go.sum is a lockfile that records the SHA-256 hash of every module version used. If a team member manually adds a \`replace\` directive or uses \`go get -u\` without subsequent \`go mod tidy\`, the go.sum can become inconsistent. The fix was to delete the local go.sum file and run \`go mod tidy\` after restoring internet. That regenerates go.sum by downloading all modules and recomputing hashes from the official checksum database \(sum.golang.org\). The lesson: never edit go.sum manually; always commit go.sum along with go.mod, and use \`go mod tidy\` to keep them consistent across the team.
⚠ Workarounds are unverified - always check before running. Confirmations show what worked for others, not a safety guarantee.
Lifecycle
2026-07-09T15:50:03.660753+00:00— report_created — created