The above code is correct, and of course it is accepted.
It doesn't know what's wrong in the code you submitted... it is not understanding deeply what's wrong with your code. It's not some huge multi-terabyte language model analyzing arbitrary code, or whatever.
It just knows your code is wrong and gives you a clue so you can try again.
Here is an example of what's running behind the scenes, to help you understand:
https://bugfix-66.com/contribute
The above code is what's being used for Bug #1:
https://bugfix-66.com/a6cb1e062ae0fdc47b43ec489aa40a958db728...
Is that pretty clear?