SteamCMD update problems split into two kinds: hard failures (disk space, permissions, an interrupted appmanifest) and the sneakier one where SteamCMD reports success but the server stays on the old build. The second kind is causing a wave of version mismatches right now because of the V3.0 Dead Hot Summer branch flips. Both fixes are below.
If SteamCMD prints "Success! App already up to date" (or "Success, No Error") and yet your server is still on the previous build, you are hitting a stale Steam PICS (product info) cache. SteamCMD trusts a cached copy of the app's metadata and never sees that a newer build exists, so it keeps the old files. Force a fresh product-info refresh with +app_info_update 1:
steamcmd +login anonymous +app_info_update 1 +app_update 294420 validate +quit
+app_info_update 1, SteamCMD can report success while silently staying on the old build - this is the exact cause of the "I updated but players still get a version mismatch" problem.V3.0 Dead Hot Summer is the experimental branch (opt in via the Steam beta branch latest_experimental); V2.6 is stable. When a server flips between stable and experimental, the new branch points at a different build than the one SteamCMD has cached. Without a forced product-info refresh, SteamCMD keeps the cached branch info and reports success on a stale build, so clients on the new branch are rejected with an incompatible version. Add +app_info_update 1 to clear the cache, and add the beta flag when moving branches:
steamcmd +login anonymous +app_info_update 1 +app_update 294420 -beta latest_experimental validate +quit
To return to stable, run the update with no -beta flag (or -beta ""). On managed hosts with auto-update enabled, the server runs its Steam update on every start or restart, so the practical fix is usually to confirm the branch and restart - the update runs before the server boots.
steamcmd +login anonymous +force_install_dir /path/to/7d2d +app_update 294420 validate +quit
appmanifest_294420.acf and retry.+app_info_update 1 (see above).