I'd like a user script that, on moderator election pages, queries the API for user's candidate scores at the time they nominated in the election in question. Election pages, including historical election pages, always load the candidate score live; this user script should add in an additional bar indicating the user's score was at the time they nominated (or the best estimation for historical elections).

This is useful for two major reasons:

  • First, it helps easily catch users who attempt to inflate their score by specifically targeting badges that count for the score after nominating. This point was raised back in 2012; while the statistics are no longer shown directly on the election page as they were at the time, the same thing applies: a user nominates, sees that they have a low score, and goes and specifically targets the candidate badges (e.g. using their max 30 answer votes in a day for 2-3 days to upvote competing answers while they only had upvoted 10-40 competing answers in the past, to inorganically earn Sportsmanship, a candidate badge). To quote/paraphrase from that post:

    If users suddenly [change their activity] during the election to get [their score] up, it does two things. First of all, it's not an honest assessment of their contributions over time - they're intentionally skewing the statistics. And secondly, it creates an inordinate amount of work for the current mods [in the case of flagging badges, which are candidate badges].

  • Second, as I mentioned, historical election pages still continue to load candidate scores live, rather than show the scores at the time the election took place. This impedes users from getting more historical context about an election (e.g. to see that the elected moderators were the ones with the highest scores at the time, while the losers have since surpassed them). Users browse historical election pages to see the full details of the election at the time it took place; it doesn't make sense to continue loading the candidate score live.

To be clear: candidate scores in elections are out of 40, with 20 points awarded for reputation (one point per 1,000 up to 20,000), and the other 20 points earned for having unique badges that are specifically marked as candidate badges. The date badges were earned is public, and while the reputation history API excludes the -1 from downvoting answers and the -100 from making a spam/offensive post, the script can ignore those.

Bonus: add in a graph of the user's historical candidate score over time, from when they registered until the present day, with a bar for the time the user nominated.

Update: After writing this, I realized I forgot about the November 2019 revaluation of question upvotes to 10 rep instead of 5, and the reputation history API calculates all historical rep based on the new formula. Factoring this into the script would be tough, so it's OK if it doesn't take this into account. I'm mainly looking for badge history, since it's unlikely that rep would be gamed for a candidate score (and even if it is, it's positive since there are higher-quality contributions on the site). I'm also changing the title of this request to estimate historical scores based on this. This also wouldn't affect the script's functionality for current or recent elections.

  • 1
    What would be even neater is if the API could give you stats for a particular point in time so you would not need a user script. (Second-guessing here how the current logic works; haven't examined it.)
    – tripleee
    Jun 18, 2021 at 9:27


You must log in to answer this question.

Browse other questions tagged .