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

Comments

edit

There is a discrepancy between the candidates SecurePoll and OpenSTV elect, due to how we deal with ties.

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

OpenSTV elects candidates 1, 2, 3, 4, 5, 6, 7, 8 and 18, candidate 18 being chosen randomly.

It should be noted that between rounds 3 and 13, candidate 9 does technically have votes transferred to them (when calculated with bc). However, the number of votes is so small (~4.80449350E-17) that SecurePoll treats it as 0.

This is further confused by the fact that in 20_9_5000_1730013084 numbers as small as 7.810096726086052E-21 are displayed (as "0") in the "Tally" column (see round 3, for example).

This election was created during the testing of precision.

Election setup

edit
  • Candidates: 20
  • Seats: 9
  • Votes: 5000

Actual results latest

edit

Output from SecurePoll tally.php: actual

Output from SecurePoll var_export( $this->tallier->resultsLog );: https://github.com/dominic998/SecurePoll-Test-Data/blob/main/test_data/20_9_5000_439818328.blt.php

SecurePoll tally page: https://vote.wikimedia.beta.wmflabs.org/wiki/Special:SecurePoll/tally/1449 (there is a bug which prevents this from being tallied from the UI at the moment.)

Actual results archive

edit

Archive

Expected

edit

Output from OpenSTV: expected

Files

edit

Environment

edit
  • Where you tested: local docker and beta
  • Latest version of SecurePoll tested: 3.0.0 (624ef32) 00:10, 28 September 2021.