Each star is a radio that announces its position, like “radio, 2 of 5”. The root is a focusable list with no radio group role, so nothing announces what the scale is for or the score as one number.
- Every star up to the value reads as checked, so a score of 4 is four checked radios. A half value checks its own star too.
- An aria-label you pass lands on that root list.
Treat the stars as a picture, and make sure the score also exists as text.