Anti-Harassment Tools/SecurePoll Improvements/Test Results/20 9 5000 1730013084

Comments
There is a discrepancy in candidates elected by SecurePoll and OpenSTV due to the way SecurePoll eliminates candidates.

SecurePoll elects candidates 1, 2, 3, 4, 5, 6, 7 and 8, leaving the final seat unfilled.

OpenSTV elects candidates 1, 2, 3, 4, 5, 6, 7, 8 and 19. Candidate 19 was elected at random.

Notice that in all rounds candidate 9 earns "0" votes. This is due to us rounding down to 6 decimal places when displaying results. This can lead to confusing results, such as in round 12 candidates 10, 11 and 12 being eliminated due to having the lowest number of votes (82). Candidate 9 is shown as having 82 votes as well, but is not eliminated because in reality they have slightly more than 82 votes (82.0000000000000012905624009558917). This behaviour is correct, but could be confusing for people interpreting the results.

This election was created for the purposes of testing precision.

Election setup

 * Candidates: 20
 * Seats: 9
 * Votes: 5000

Actual results latest
Output from SecurePoll : actual

Output from SecurePoll : https://github.com/dominic998/SecurePoll-Test-Data/blob/main/test_data/20_9_5000_1730013084.blt.php

SecurePoll tally page: https://vote.wikimedia.beta.wmflabs.org/wiki/Special:SecurePoll/tally/1427 (currently, there is a bug stopping this from being tallied.)

Expected
Output from OpenSTV: expected

Files

 * blt: https://github.com/dominic998/SecurePoll-Test-Data/blob/main/test_data/20_9_5000_1730013084.blt

Environment

 * Where you tested: beta and local docker
 * Latest version of SecurePoll tested: SecurePoll 3.0.0 (543f6f0) 04:43, 12 August 2021.