User:Crazynas/Vandalism

Just an idea of mine, don't know how to implement it.

Requires:

A dedicated 'master' server to handle parse out the RC.
 * A program to interactivly control the priority of the possible vandlism (server program)
 * A program that each user uses to deal with the pages (prolly a modified VandalProof)(user program).

The server:

databases:


 * user lists:


 * moderators -- list (static) of users with access to the config utilites
 * program users -- list (static) of users allowed to access the server
 * admin -- list (static) of admins
 * trusted users -- list (static) of users not likely to cause vandalism
 * uservandal -- list (dynamic) of users that have vandaliszed recently
 * ipvandal -- list (dynamic) of IP addresses that have vandalized recently
 * permentip -- list (static) of IPs that need to be watched


 * filter databases:
 * strict-- this edit will be reverted by vandalbot, add user to vandal list and ignore edit
 * probable -- it is probable that this edit is vandalism, assign higher priority
 * unknown -- not known if edit is vandalism or not
 * RC list:
 * high priority -- likely vandalism (kept in list for x seconds)
 * normal priority -- unknown (kept in list for y seconds)
 * low priority -- not likely vandalism (kept in list for z seconds)
 * the time restriction is to keep the sever sending out reletivly up to date information, if there are too few people working the system

Process:


 * 1. Recive a RC edit
 * 2. Check to see if the edit meets the strict critera
 * if yes ignores edit and adds user to vandal list
 * if user is moderator, user, admin or trusted user, sends a message to a moderator alerting them
 * 3. Check to see if the edit meets the probable critera
 * if yes, high priority
 * if user is moderator, user, admin or trusted user, sends a message to a moderator alerting them
 * 4. Check to see the user level
 * if user is a moderator, program user, admin or trusted user sets low priority
 * if user is a vandal or permentip sets high priority
 * else sets normal priority
 * 5. The latest edit to each article sets the priority
 * 6. Distributes page diffs to check to the program users starting from high to low
 * 7. Recives and catagorizes vandals based on reverts by program users edits

The user program


 * Sends a request for a new page to the server
 * Displays the diff with the option of reverting as vandalism (per VandalProof) or marking the edit as not vandalism
 * Repeat