Anti-Harassment Tools/SecurePoll Improvements/Test Results/stackoverflow-com-2016-election-results

Comments
SecurePoll and OpenSTV agree on elected candidates.

Election setup

 * Candidates: 10
 * Seats: 3
 * Votes: 29904

Actual results latest
SecurePoll tally page (patch 27):

Elected

 * 1) "Candidate 7"
 * 2) "Candidate 9"
 * 3) "Candidate 1"

Eliminated

 * "Candidate 10"
 * "Candidate 8"
 * "Candidate 5"
 * "Candidate 2"
 * "Candidate 4"
 * "Candidate 6"

Rounds table
(Results from 13:32, 28 July 2021)

Actual results archive
Patch 17: Output from SecurePoll: https://phabricator.wikimedia.org/P16876

Expected
Output from OpenSTV: https://stackoverflow.com/election/8 Loading ballots from file stackoverflow-com-2016-election-results.blt. Ballot file contains 10 candidates and 29904 ballots. No candidates have withdrawn. Ballot file contains 29904 non-empty ballots.

Counting votes for Stack Overflow Moderator Election 2016 using Meek STV. 10 candidates running for 3 seats.

R|Candidate 1  |Candidate 2   |Candidate 3   |Candidate 4   |Candidate 5 |--+--+--+--+-- |Candidate 6   |Candidate 7   |Candidate 8   |Candidate 9   |Candidate 10 |--+--+--+--+-- |Exhausted     |Surplus       |Threshold

=
================================================================ 1|  4314.000000|   1606.000000|   3380.000000|   1696.000000|   1512.000000  |   2153.000000|   8582.000000|   1244.000000|   4224.000000|   1193.000000  |      0.000000|   1105.999999|   7476.000001  |--  | Count of first choices. Candidate Candidate 7 has reached the threshold | and is elected.

=
================================================================ 2|  4474.061508|   1659.740458|   3635.943764|   1767.267322|   1603.371666  |   2264.991506|   7476.003332|   1302.508796|   4443.085800|   1244.936222  |     32.089626|      8.025738|   7467.977594  |--  | Count after transferring surplus votes. Keep factors of candidates who | have exceeded the threshold: Candidate 7, 0.871126.

=
================================================================ 3|  4620.077782|   1753.153166|   3776.444542|   1890.932872|   1700.201988  |   2411.883812|   7642.388398|   1412.823622|   4587.813334|                |    108.280484|    193.458518|   7448.929880  |--  | Count after eliminating Candidate 10 and transferring votes. All losing | candidates are eliminated.

=
================================================================ 4|  4801.996174|   1874.983488|   3987.007304|   2059.500540|   1797.387940  |   2582.544456|   7853.200890|              |   4740.381002|                |    206.998206|    428.950441|   7424.250449  |--  | Count after eliminating Candidate 8 and transferring votes. All losing | candidates are eliminated.

=
================================================================ 5|  4871.036205|   1899.344960|   4091.495180|   2093.283050|   1835.928550  |   2632.219020|   7424.258175|              |   4829.500215|                |    226.934645|      4.991836|   7419.266339  |--  | Count after transferring surplus votes. Keep factors of candidates who | have exceeded the threshold: Candidate 7, 0.823545.

=
================================================================ 6|  5083.916890|   2006.167710|   4423.314750|   2270.340455|                |   2823.864520|   7705.087020|              |   5184.907615|                |    406.401040|    330.687279|   7374.399741  |--  | Count after eliminating Candidate 5 and transferring votes. All losing | candidates are eliminated.

=
================================================================ 7|  5138.982842|   2026.031038|   4509.907550|   2298.650999|                |   2864.298056|   7374.408556|              |   5261.003247|                |    430.717712|      6.087983|   7368.320573  |--  | Count after transferring surplus votes. Keep factors of candidates who | have exceeded the threshold: Candidate 7, 0.788201.

=
================================================================ 8|  5405.975124|              |   4782.781842|   2488.417934|                |   3078.182981|   7651.067107|              |   5712.019710|                |    785.555302|    371.455932|   7279.611175  |--  | Count after eliminating Candidate 2 and transferring votes. All losing | candidates are eliminated.

=
================================================================ 9|  5789.144391|              |   5186.787672|              |                |   3351.456690|   8004.181155|              |   6096.011992|                |   1476.418100|    897.285679|   7106.895476  |--  | Count after eliminating Candidate 4 and transferring votes. All losing | candidates are eliminated.

=
================================================================ 10|  6408.104774|              |   5751.514990|              |                |              |   8523.605614|              |   6577.243169|                |   2643.531453|   1708.488477|   6815.117137  |--  | Count after eliminating Candidate 6 and transferring votes. All losing | candidates are eliminated.

=
================================================================ 11|  6728.188462|              |   6227.058870|              |                |              |   6815.123382|              |   6992.909597|                |   3140.719689|    463.761207|   6690.820078  |--  | Count after transferring surplus votes. Keep factors of candidates who | have exceeded the threshold: Candidate 7, 0.630213. Candidates Candidate | 1 and Candidate 9 have reached the threshold and are elected.

Winners are Candidate 1, Candidate 7, and Candidate 9.

Files

 * blt: https://stackoverflow.com/election/download-result/8
 * php:

Environment

 * Where you tested: local docker using phpunit
 * Latest version of SecurePoll tested:
 * commit 89ccd71c1af2a3e1cde1891ada0626ef6138d7e3 (patch 27 https://gerrit.wikimedia.org/r/c/mediawiki/extensions/SecurePoll/+/704454/)
 * commit 851050be43c9376575d497f7c321902b42772562 (patch 15 https://gerrit.wikimedia.org/r/c/mediawiki/extensions/SecurePoll/+/704210/)