Ah, I went through this surprise at some point
Basically what happens is that as long as there is some āotherā challenge in the āvalidā state, the one you requested will remain āpendingā. Say you have validated the domain successfully via HTTP and then trying to validate it again via DNS (with HTTP validation result still being there). You will see that pending state not changing. The client needs to account for this case (and for example just re-use āvalidā result), otherwise you may get an infinite loop.