How Voting Works: Difference between revisions

From MusicBrainz Wiki
Jump to navigationJump to search
m (2 revision(s))
(Redirecting to Introduction to Voting)
 
Line 1: Line 1:
#REDIRECT [[Introduction to Voting]]
=How Votes on Edits are processed=

<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/VotingFAQ#head-98cdf8c12bcb1138613e5940fabaa929662fa216 FAQ]. That stuff should probably get moved here'' --[[User:DonRedman|DonRedman]]
<ul><li style="list-style-type:none">I rewrite and updated all of the top two sections. The pseudo code section needs doing still, plus any moving in of data from VotingFAQ that is needed. -- [[Brian Schweitzer|BrianSchweitzer]] 19:34, 28 August 2007 (UTC)
</ul>
</ul>

==Preface==

* Edits are kept open for either 4 or 14 days, depending on the [[Data Quality|DataQuality]] setting for the artist or release.
* Edits with as many <code><nowiki>Yes</nowiki></code> as <code><nowiki>No</nowiki></code> votes are generally considered failed and not applied by the <code><nowiki>ModBot</nowiki></code>.

==Algorithm for closing edits==

Every hour, the server runs the following algorithm, applying it to each open edit in turn. In the text below, '''EXIT''' means that the fate of the edit in question has been determined, the <code><nowiki>ModBot</nowiki></code> turns its attention to the next open edit. <small>by [[User:DaveEvans|DaveEvans]] </small>
# If the editor has cancelled the edit, it will be deleted. '''EXIT'''.
# There is then some logic to do with dependencies between edits, there are 3 possible outcomes of the dependency checks
#* <code><nowiki>ModBot</nowiki></code> determines that the edit fails due to ''Failed Prerequisite'' '''EXIT'''
#* <code><nowiki>ModBot</nowiki></code> determines that the edit stays "Open" '''EXIT'''
#* The outcome of the check does not require any action, and the <code><nowiki>ModBot</nowiki></code> continues to process the edit...

# If there are at least 3 <code><nowiki>Yes</nowiki></code> votes and 0 <code><nowiki>No</nowiki></code> votes, the vote is deemed to be unanimous, and the edit is applied, and is ''Applied''. '''EXIT'''.
# If there are at least 3 <code><nowiki>No</nowiki></code> votes and 0 <code><nowiki>Yes</nowiki></code> votes, the vote is deemed to be unanimous, and the edit is failed due to <code><nowiki>Failed Vote</nowiki></code>. '''EXIT'''.
# If the edit has expired (older than 14 days (4 days if at Low Quality)), then:
## If there are MORE <code><nowiki>Yes</nowiki></code> votes than <code><nowiki>No</nowiki></code> votes, then the edit is ''Applied''. '''EXIT'''.
## If there are MORE <code><nowiki>No</nowiki></code> votes than <code><nowiki>Yes</nowiki></code> votes, then the edit is failed due to ''Failed Vote''. '''EXIT'''.
## If the edit has at least two <code><nowiki>Yes</nowiki></code> or <code><nowiki>No</nowiki></code> votes, and the same number of <code><nowiki>Yes</nowiki></code> and <code><nowiki>No</nowiki></code> votes (<code><nowiki>Abstain</nowiki></code> are ignored), then the edit is failed due to ''Failed Vote''. '''EXIT'''.
## If there are no <code><nowiki>Yes</nowiki></code> or <code><nowiki>No</nowiki></code> votes, the edit is ''Applied''.

# Otherwise, the edit stays open for now. Note that the number of required votes for the above conditions is different if the artist or release is set to either '''High''' or '''Low''' [[Data Quality|DataQuality]]. These numbers assume that the artist or release is set to the '''Normal''' [[Data Quality|DataQuality]] setting.

==Algorithm for Expired Edits==

The algorithm for ''expired'' edits is the following (translated from [http://bugs.musicbrainz.org/browser/mb_server/trunk/cgi-bin/MusicBrainz/Server/ModBot.pm ModBot.pm] to pseudo code) <small>by [[User:MatthiasFriedrich|MatthiasFriedrich]] on the [http://lists.musicbrainz.org/pipermail/musicbrainz-users/2005-January/019318.html mailing list] </small>

<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 are not 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>

----<br/> <small>Original version: - </small>

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

Latest revision as of 22:11, 28 September 2011