The key to aria roles like aria-label is that they are a way of throwing mroe code at trying to "fix" a proble, rather than fixing it.
But take the example MDN uses:
https://developer.mozilla.org/en-US/docs/Web/Accessibility/ARIA/Attributes/aria-label
The reason they are using the label is that they crapped a presentational SVG image -- something that in most cases has no business in the markup in the first place -- into their HTML, without any text inside the wrapping <button>. The proper solution is to get that SVG out of the markup and apply it via CSS, and to put the text inside the button. You then hide the text with CSS for screen UA's... add a span and you could even using absolute positioning to make a styled "tooltip" out of it.
Though the real comedy is that we already have an HTML attribute to do that. It's called "title". In their usage case not only is it dumbass to crap that SVG in there flipping the bird at non-visual users and caching models, it's also redundant to why title="" exists.
That is how silly WAI Aria is. It's at best a crutch for people who refuse to embrace what already exists in HTML, at worst it's slapping "flex seal" on the leaking 500 gallon tank of water that are bad practices like that MDN example.
Harldy a shock they sleaze the onclick markup in there too, something that in modern code really shouldn't ever be done since the function would have to be global. AddEventListener exists for a reason.