First rule of ARIA: your semantic HTML already works
I shipped a button that passed every automated audit and still could not be triggered with a screen reader. The cause was a role attribute I had added for styling, which is the exact thing the first rule of ARIA warns about.