This additional constraint enables adding a route to the template (and p...

...otentially to the UseMvc method) without actually implementing the actual artifact.

For example without adding an area to a controller, a route can still be added to the template.
I would think the onus is on the person changing the version, if they choose to decrement the version ( for some bizzare reason, for example it might depend on the version of a file.), we should be using that value. Its a safe race in the sense that the next time it will be updated with the latest one. However I kind of agree that we should not be supporting decrementing the version. 
Not to mention there is still a race in the case where version gets incremented twice.