Currently, the interaction of over-the-cap votes and downvotes depends on the timing of the events: downvotes that come in before an over-the-cap vote get cancelled out, while the ones that come in after an over-the-cap votes stay in place. This may lead to minor inconsistencies.
Consider an example: user
A gets to a daily cap of 200 through upvotes, and then the following sequence of events takes place:
- At 10:30 user
A's answer for -2
- At 10:31 user
A's answer for +2 (+8 gets capped out)
- At 10:32 user
Xreverses the downvote for 0 (+2 gets capped out)
- At 10:33 user
Xdownvotes the same answer again for -2
Theoretically, the undo-redo in steps 3 and 4 should not change anything. It wouldn't if it were not for the cap: if
A's daily reputation had been 100 instead of 200, the net result of steps 3 and 4 would be zero. This is inconsistent.
Is this a bug or an intended behavior? If it is an intended behavior, is there a rationale for it?