Anti-Harassment Tools/SecurePoll Improvements/Test Results/20 4 5120 1609394555

Comments
SecurePoll and OpenSTV both declare candidates 1, 2 and 20 winners.

OpenSTV declares another candidate (at random) as winner as well. SecurePoll leaves the fourth seat empty.

Election setup

 * Candidates: 20
 * Seats: 4
 * Votes: 5120

Actual
Output from SecurePoll: https://phabricator.wikimedia.org/P16845

Elected
Election for 4 seats with 20 candidates. Total 5,100 votes.


 * 1) "1"
 * 2) "2"
 * 3) "20"
 * 4) This seat could not be filled because no candidates fulfill the criteria. The last eliminated candidates were: "4", "13", "19", "18", "17", "16", "15", "14", "12", "5", "3", "10", "9", "8", "7", "6", "11"

Eliminated/Not elected

 * "4"
 * "13"
 * "19"
 * "18"
 * "17"
 * "16"
 * "15"
 * "14"
 * "12"
 * "5"
 * "3"
 * "10"
 * "9"
 * "8"
 * "7"
 * "6"
 * "11"

Rounds table
The following table describes the calculations that happened in order to achieve the result above. In each round of calculation, the candidate(s) who achieved more votes than the quota are declared elected. Their surplus votes above the quota are redistributed to the remaining candidates. If nobody achieves the quota, the lowest ranking candidate is eliminated and their votes are redistributed to the remaining candidates. To understand this better, please refer to this link. (Results from 20:11, 31 August 2021)

Navigation menu

 * Admin
 * Talk
 * Preferences
 * Watchlist
 * Contributions
 * Log out


 * Special page


 * Main page
 * Recent changes
 * Random page
 * Help about MediaWiki

Tools

 * Special pages
 * Printable version

Expected
Output from OpenSTV: https://phabricator.wikimedia.org/P16846

Files
array ( '2_20' =>   array ( 'count' => 2532, 'rank' => array (     1 => 2,      2 => 20,    ), ), 17 =>   array ( 'count' => 2, 'rank' => array (     1 => 17,    ), ), 6 =>   array ( 'count' => 2, 'rank' => array (     1 => 6,    ), ), 12 =>   array ( 'count' => 2, 'rank' => array (     1 => 12,    ), ), 19 =>   array ( 'count' => 2, 'rank' => array (     1 => 19,    ), ), 13 =>   array ( 'count' => 2, 'rank' => array (     1 => 13,    ), ), 14 =>   array ( 'count' => 2, 'rank' => array (     1 => 14,    ), ), 20 =>   array ( 'count' => 1, 'rank' => array (     1 => 20,    ), ), 7 =>   array ( 'count' => 2, 'rank' => array (     1 => 7,    ), ), 15 =>   array ( 'count' => 2, 'rank' => array (     1 => 15,    ), ), 18 =>   array ( 'count' => 2, 'rank' => array (     1 => 18,    ), ), 16 =>   array ( 'count' => 2, 'rank' => array (     1 => 16,    ), ), 8 =>   array ( 'count' => 2, 'rank' => array (     1 => 8,    ), ), 3 =>   array ( 'count' => 2, 'rank' => array (     1 => 3,    ), ), 4 =>   array ( 'count' => 2, 'rank' => array (     1 => 4,    ), ), 11 =>   array ( 'count' => 2, 'rank' => array (     1 => 11,    ), ), 5 =>   array ( 'count' => 2, 'rank' => array (     1 => 5,    ), ), 9 =>   array ( 'count' => 2, 'rank' => array (     1 => 9,    ), ), 10 =>   array ( 'count' => 2, 'rank' => array (     1 => 10,    ), ), '1_20' =>   array ( 'count' => 2533, 'rank' => array (     1 => 1,      2 => 20,    ), ), )
 * blt: https://github.com/dominic998/SecurePoll-Test-Data/blob/main/test_data/20_4_5120_1609394555.blt
 * php:

Environment

 * Where you tested: local docker using phpunit
 * Version of SecurePoll: commit 271145d5f3cae3b0a1b76d0f5dfeb609615d60b7 (patch 16 from https://gerrit.wikimedia.org/r/c/mediawiki/extensions/SecurePoll/+/704454/)