This is the issue that is being avoided by having this limitation. It’s a hard demarcation between official and user naming conventions such that naming collisions between the two can’t occur (and also hopefully reducing collisions in user space by encouraging the prefix to be used as namespacing).
If anyone tries to suggest a new element and there’s a hyphen in it that will be the first thing that will be picked on as needing to change.
This is the opposite of short-sighted, it’s actively preventing future issues.
I suspect there were discussions on that and I suspect that the answer would have come back to “well we need these and unfortunately anyone not using best practices because they are polluting global scope may be affected”. Just because standards have broken sites doesn’t mean there’s no concern about it, nor does it mean steps shouldn’t be taken in future to minimise it.
This basically means every component will need a long list of every native element they depend on and everyone using a component is going to need to start cross referencing for what should be built in functionality. All that allowing this change would do is massively increase the complexity of checking dependencies all for the sake that some developers find it a little bit more aesthetically pleasing.