The “check all” button is supposed to check all messages currently visible in the list (since the list can theoretically be infinitely long) – is this not what you’e seeing?
That was what was happening. I have since cleared out Spam.
I did notice, after having deleted all messages manually and lodging this bug report, that RB7 was still showing a badge count of 1 read message in Spam, even though no messages were showing.
I closed the browser, opened it again, logged into RB7, and Spam showed zero messages.