How Voting Works: Difference between revisions

From MusicBrainz Wiki
Jump to navigationJump to search
(update status notice: duplication of content (Imported from MoinMoin))
 
(Redirecting to Introduction to Voting)
 
(7 intermediate revisions by 3 users not shown)
Line 1: Line 1:
#REDIRECT [[Introduction to Voting]]
<ul><li style="list-style-type:none">[[Image:Attention.png]] '''Status:''' ''This page is work in progress and [[Needs Editing|NeedsEditing]] and [[Needs Intertwingling|NeedsIntertwingling]] quite badly. I just gathered some information that went over the [[Mailing List|MailingList]], so that it would not be lost. It partially duplicates Information which is on the [http://wiki.musicbrainz.org/ModerationFAQ#head-d9b521e9caacf43d4efefab55e3efb61044dc721 FAQ]. That stuff should probably get moved here'' --[[User:DonRedman|DonRedman]]
</ul>

Generally ties (as many yes as no-votes) fail.

==Algorithm for closing moderations==

by [[User:DaveEvans|DaveEvans]]

Every hour, the server runs the following algorithm, applying it to each open moderation in turn. In the text below, EXIT means that the fate of the mod in question has been determined; the system turns its attention to the next open mod.
# If the editor has marked the mod as "to be deleted", it will be deleted. EXIT.
# There is then some logic to do with dependencies between mods (which, to be honest, I've never really understood and I'm tempted to try to remove). The mod may go to "Failed Prerequisite" (EXIT), or it may stay "Open" (EXIT). Or, we might continue...
# If the mod has expired (i.e. it is 7 or more days old), then:
## If there are MORE yes votes than no votes, then the mod is "Applied". EXIT.
## As long as anyone voted (i.e. yes or no - abstains are ignored), then the mod has now "Failed Vote". EXIT.
## By now we know that the mod is expired (a week old) and no-one has voted on it.
## If the mod's "grace period" has expired (i.e. it is 14 or more days old), then the mod is "Applied" (since no-one was apparently interested either way). EXIT.
## By now we know we're dealing with a mod between 7 and 14 days old, and with no votes so far.
## Each mod is associated with one artist; if that artist has no subscribers (excluding the original editor), then the mod is "Applied". EXIT.
## Otherwise, we continue...

# By now we're either dealing with a mod less than 7 days old, or one 7-14 days old with no votes.
# If there are at least 3 "yes" votes and zero "no" votes, the vote is deemed to be unanimous, and the mod is "Applied". EXIT.
# If there are at least 3 "no" votes and zero "yes" votes, the vote is deemed to be unanimous, and the mod is "Failed Vote". EXIT.
# Otherwise, the mod stays open for now.

====

The following is from [http://lists.musicbrainz.org/pipermail/musicbrainz-users/2005-January/019318.html a mail] by [[User:MatthiasFriedrich|MatthiasFriedrich]]:

==Algorithm for Expired Moderations==

The algorithm for ''expired'' edits is the following (translated from CVS mb_server/cgi-bin/[[MusicBrainz]]/Server/[[ModBot]].pm to pseudo code):

----

<pre>IF someone voted yes or no; THEN
IF yes_votes > no_votes; THEN
apply()# and exit
ELSE
fail()# and exit
FI
FI

# At this point, we only have expired mods that nobody voted on
# yet. Abstains aren't counted

IF grace period has expired; THEN # grace period is another week
apply()# and exit
ELSE
# grace period has not expired yet
IF the mod submitter is the only subscriber; THEN

apply()# and exit

FI

FI
</pre>

----

Perhaps a decision table helps:

<pre>Condition | | |
<hr>+<hr>+<hr>+<hr>
| | |
yes > no | X | |
yes < no | | X |
| | |
yes = no | X X | X | X X
yes=0, no=0 | X X | | X X
| | |
grace expired | X X | |
other sub. exist | X | | X
| | |
<hr>+<hr>+<hr>+<hr>
| | |
apply | X X X | |
fail | | X X |
do nothing | | | X X
</pre>

I was too lazy to introduce a "don't care" symbol and merge the superfluous columns. Too much work in ASCII art.
<ul><li style="list-style-type:none">To tell you the truth, I did not understand the table --[[User:DonRedman|DonRedman]]
</ul>

[[Category:To Be Reviewed]] [[Category:Documentation]]

Latest revision as of 22:11, 28 September 2011