Meta Stack Exchange is where users like you discuss bugs, features, and support issues that affect the software powering all 158 Stack Exchange communities.

What is meta?
Here's how it works:
  1. Any Stack Exchange user can ask a question
  2. The community provides support, votes on ideas, and reports bugs
  3. Your voice helps shape the way Stack Exchange operates

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:

  1. At 10:30 user X downvotes A's answer for -2
  2. At 10:31 user Y upvotes A's answer for +2 (+8 gets capped out)
  3. At 10:32 user X reverses the downvote for 0 (+2 gets capped out)
  4. At 10:33 user X downvotes 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?

share|improve this question
2  
Just a sanity check, do you run a rep recalc to ensure that this behavior wasn't temporary? Many rep oddities surrounding the rep cap get resolved on their own. – Servy Aug 13 '12 at 19:01
1  
@Servy This example is theoretical - the interaction I saw included an edit of the answer, so event #3 has happened about two hours after the event #1; it was allowed because of the edit. I did not force a recalc, but I waited for about fifteen minutes for the number to fix itself - this is usually enough for the periodic recalculation to kick in and fix the number; it did not fix it. I ended up deleting the answer, because there was a much more detailed one that I upvoted. – dasblinkenlight Aug 13 '12 at 19:09
    
For a long time, I've considered pulling an Office Space and installing a script that piped overflow reputation to my account. I will have gained 10 rep from this hypothetical person. – gobernador Aug 13 '12 at 20:14
up vote 1 down vote accepted

I don't see what the problem is. The final downvote that's being counted occurred after all the previous gain events, therefore the -2 should still stand.

By undownvoting, the user is basically cancelling the previous downvote. In reality if you recalculated, it should update as if #1 and #3 never existed (if they occur on the same day, they're completely removed from your reputation history as well), and #2 gained you 0 reputation due to the cap. Then #4 was a new downvote that occurred after the previous event was already capped, triggering the -2.

It's not events #3 and #4 that are cancelling out to be 0 (in your 100 scenario), it's #1 and #3 that are cancelling out to be 0, and #4 is enforcing the current -2.

It may be a "sneaky" way to enforce your -2 on someone, but it's not a bug.

share|improve this answer
    
I guess the "1 and 3 cancelling out" explanation makes sense, although I suspect that it's a case of "working as coded" as opposed to "working as specified" kind of behavior :) – dasblinkenlight Aug 13 '12 at 19:50
    
I have a follow-up question that came out of this discussion with casperOne: do you think that SO may be open to changing the way the over-the-cap votes interact with downvotes by allowing over-the-cap votes to offset same-day downvotes in cases when both the upvote and the downvote are for the same question or answer, regardless of the timing? – dasblinkenlight Aug 17 '12 at 14:44
    
That seems like an overly complicated way to allow a user to keep a mere 2 reputation. – animuson Aug 17 '12 at 18:24
    
That depends on the number of downvotes: the answer "cost" me -18 points (some of which were offset in between by +2 upvotes to this and to other answers), ultimately prompting me to convert the answer to CW. – dasblinkenlight Aug 17 '12 at 18:30

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .