It's not that difficult to create a bot / script that undoes edits made from a list of IP's / IP ranges.
What's needed, basically, is to:
- check RecentChanges for edits by the targeted IP's
- use EditCopy to quickly revert the edit
- 'touch' the page using a different IP to purge the EditCopy
In PseudoCode rather than real code (lest any one tries and uses such a contraption against this site):
Every couple of minutes:
{
Fetch RecentChanges from the server
For each IP on list:
{
filter for IP address
For each mentioned page not removed:
{
Send http request for EditCopy
Send http request to click Save button
From different IP address:
{
Send http request for Edit
Add or delete one whitespace character (null changes are rejected)
Send http request to click Save button
},
},
},
},
The above is easily done in PerlLanguage, JavaScript or similar. A bit harder, but certainly doable, in C++ or similar.
More complex versions could possibly:
- Detect earlier changes by an IP and revert to a version before that
- Instead of reverting to before that version, merge those changes out, leaving other people's contributions intact
- Detect spam cleanups and leave those alone, even if done by the targeted IP
Detecting any edit by user JohnDoe coming from any random IP and deleting those while leaving a consistent version of the page is very possibly AiComplete, and could only be done by a human masquerading as a bot.
But what even the simplest version of such a bot would do, effectively, would be denying edits by a particular user or group of users, since most of us have either a fixed IP or an IP within a certain range.
MichaelSparks seems to have used a similar approach in fighting spam (since a lot of spam seems to come from a limited range of IP's).
See also: WikiBot, WikiVandals, DefensiveScriptIdea