Trying to be completely dispassionate about this, it doesn't sound like such an awful thing.
The Windows 10 that you buy with your new computer will be supported for the reasonable life of that computer. During that period you might be allowed (or forced) to upgrade to one or more later versions of Windows 10 which will also be supported for the reasonable life of that computer. Not too bad so far...
At some point your computer will no longer be eligible for newer versions of Windows 10. At that point you can either decide to stick with the version of Windows 10 you currently have for the remaining life of the computer, migrate to a new computer which supports the newer version of Windows 10, or switch to an alternative operating system such as Linux. Still not too bad, and older computers make great Linux machines.
If you buy a computer with the intention of downgrading it from Windows 10 to Windows 8 or Windows 7 you might not be able to do that. OK, this is pretty bad for people who actually need Windows 7 or 8 but as long as you check the specification of the computer carefully before purchase it's not that big a deal. And really, not many people actually need older versions of Windows at all.
And all of this is true for macOS or your favourite Linux distribution as well - at some point new versions will not be supported on your existing hardware, or you won't be able to install an old OS on your new hardware, and you'll have to decide what to do about that.
At no point in any of this is your computer any worse off than on the day it was bought. So what's the problem? And why is Microsoft being vilified for doing exactly the same as everyone else?