Reset the lower numbers
Moving major sets minor and patch to zero. A version 3.4.2 released as a major is a mistake, because the number then claims compatibility that a major does not promise.
Pre-release tags
A version can carry a suffix for a build that is not final. That suffix is what keeps a release candidate from being mistaken for a release, which is a real confusion in a team that ships.