Second, here's what I did:
The crux of the issues I believe was the fact that you would never get a fight disabled page when you were actually disabled. Every time you see that page, it's because you were disabled the PREVIOUS time you clicked Fight. I (hopefully) made it such that when you actually trip the threshold, you do in fact get the message. What's funny is that the comment in the code where we let the fight go through said "return ok so as not to confuse users." I think it became very confusing :)
Now, there's still an issue such that if you have a bot check, but instead of answering it, you click Fight again, and you do it enough times such that you trigger a suspension, you probably won't see the bot check until you click fight a second time. But that issue is there already anyway, so I'm not making things worse.
So... have at it, and report all the server errors that appear because of this.
...and, I guess you have to complain to me on this one :(