The last example is actually a great argument in favor of this “user-unfriendly” mindset. The removal of that CLI flag forced the user to actually figure out the root cause of the problem rather than paper it over with a workaround they didn’t really understand, which would inevitably metastasize and explode later in an even more frustrating way.
All of these examples are devs trying to make sure users understand what’s going on. Nothing wrong with that when it is necessary complexity. The trouble I think comes when you’re making sure the user understands something that really shouldn’t matter - unnecessary complexity. Especially complexity that is just a byproduct of a disorganized group of people building a “bazaar”, like in the Node ecosystem (and apparently Rust too). Who cares if X is actually a fork of Y that was merged into Z.