Requested edit filters

This page can be used to request edit filters, or changes to existing filters. Edit filters are primarily used to address common patterns of harmful editing.

Private filters should not be discussed in detail. If you wish to discuss creating an LTA filter, or changing an existing one, please instead email details to wikipedia-en-editfilters@lists.wikimedia.org.

Otherwise, please add a new section at the bottom using the following format:

== Brief description of filter ==
*'''Task''': What is the filter supposed to do? To what pages and editors does it apply?
*'''Reason''': Why is the filter needed?
*'''Diffs''': Diffs of sample edits/cases. If the diffs are revdelled, consider emailing their contents to the mailing list.
~~~~

Please note the following:

  • Edit filters are used primarily to prevent abuse. Contributors are not expected to have read all 200+ policies, guidelines and style pages before editing. Trivial formatting mistakes and edits that at first glance look fine but go against some obscure style guideline or arbitration ruling are not suitable candidates for an edit filter.
  • Filters are applied to all edits. Problematic changes that apply to a single page are likely not suitable for an edit filter. Page protection may be more appropriate in such cases.
  • Non-essential tasks or those that require access to complex criteria, especially information that the filter does not have access to, may be more appropriate for a bot task or external software.
  • To prevent the creation of pages with certain names, the title blacklist is usually a better way to handle the problem - see MediaWiki talk:Titleblacklist for details.
  • To prevent the addition of problematic external links, please make your request at the spam blacklist.
  • To prevent the registration of accounts with certain names, please make your request at the global title blacklist.
  • To prevent the registration of accounts with certain email addresses, please make your request at the email blacklist.



Disallow creation of redirects from User/User talk root page to Main Page

  • Task: Disallow the creation of redirects from root User/User talk pages to Main Page (or any other page that suppresses the (Redirect from ...) verbiage). Applies to all editors, applies only to edits on root User/User talk pages.
  • Reason: Violation of WP:UP, interferes with interface, makes reaching an editor to contact them or collaborate with them difficult.
  • Diffs: 1 2, 3

Locke Colet • c 18:25, 26 June 2022 (UTC)Reply[reply]

Yeah, I will admit to doing that once (quite a while ago, I had a content dispute spillover onto my talkpage, and couldn't even edit it without hitting edit conflicts over and over). Tripping a filter would have let me know that what I was about to do was a really stupid idea. So I'll add a diff here
4 Mako001 (C)  (T)  🇺🇦 04:18, 27 June 2022 (UTC)Reply[reply]
@Locke Cole Is there a list of pages that suppress "Redirect from"? You mention Main Page and I assume the special namespace does it too but it's not something I pay specific attention to. PHANTOMTECH (talk) 04:32, 27 June 2022 (UTC)Reply[reply]
@PhantomTech: I assume the special namespace does it too apparently redirects to Special pages are not allowed by design: User:SPUI/random Is there a list of pages that suppress "Redirect from"? Not that I'm aware of, there is some discussion at this BOT request page about how the notice is suppressed. Ideally we wouldn't suppress the redirect notice at all, but I assumed (perhaps incorrectly?) there was a legitimate reason for Main Page to have that turned off. —Locke Colet • c 04:42, 27 June 2022 (UTC)Reply[reply]
Here's a filter for it. This catches any redirect from user root or user talk root to any destination outside of either of those two places. It does not catch a soft redirect. I can't move it here for testing because I don't have the permission. PHANTOMTECH (talk) 05:57, 27 June 2022 (UTC)Reply[reply]
I would honestly just restrict it to redirects to Main Page. Other redirects are annoying, but produce the expected "(Redirected from...)" link that allows you to get back to the user page. Unless there's a consensus for disallowing them all, which I am not opposed to (because: WP:BEANS). —Locke Colet • c 15:55, 27 June 2022 (UTC)Reply[reply]
If this is going to expand to not allowing redirects outside of ns2/3 at all: I don't think this should apply to ns2. — xaosflux Talk 15:54, 27 June 2022 (UTC)Reply[reply]
Would you be fine with not allowing redirects to just Main Page from 2/3? —Locke Colet • c 15:57, 27 June 2022 (UTC)Reply[reply]
As a note, I have no preference to how restrictive this should be other than redirects from root user talk to Main Page should not be allowed at a minimum, it just wasn't a big step up from that to what I made on testwiki so that's the filter I made. PHANTOMTECH (talk) 19:50, 27 June 2022 (UTC)Reply[reply]
I know we're all volunteers here, but is there any timetable for when requests are acted on, or what does the process look like? —Locke Colet • c 19:57, 19 July 2022 (UTC)Reply[reply]
@Locke Cole: Logging at 1210 (hist · log). Sorry for the delay. There just don't seem to be many active EFMs right now. Suffusion of Yellow (talk) 18:16, 23 July 2022 (UTC)Reply[reply]
It's all good, I was worried about it getting archived more than anything. =) As it's just logging right now I'll need to periodically check the filter log to see if anyone has tripped it and revert as necessary, but it's a start. —Locke Colet • c 20:24, 23 July 2022 (UTC)Reply[reply]
@Locke Cole I see you've tested the filter here. I copied over the filter here to Special:AbuseFilter/251 without group exclusions because I wanted to test something. I don't think there's any issue with the edits you made here for your test but wanted to let you know that you have the option of doing any future or more extensive test on testwiki if you'd like to. PhantomTech[talk] 23:51, 23 July 2022 (UTC)Reply[reply]

Offensive edit summary

Shouldn't an existing filter catch this? Certes (talk) 10:23, 3 July 2022 (UTC)Reply[reply]

Special:AbuseFilter/384 is probably the most relevant filter. It doesn't check summaries but I'm not sure if there's a reason for that. PHANTOMTECH (talk) 19:31, 6 July 2022 (UTC)Reply[reply]
@PhantomTech, I think it's because it would FP for section edits that contain profanities. Someguy1221 commented in the notes about this. Perhaps this could be achieved through excluding hits if the profanities are found in the old wikitext or added ones? 🐶 EpicPupper (he/him | talk) 03:48, 4 August 2022 (UTC)Reply[reply]
@EpicPupper Looks like you're right. Section names in edit summaries use a specific format so another option is to check if the bad_word regex is not in a section (a simple but imperfect solution is adding (?!.+?\*\/) to the end) or to only run the test against the edit summary if it is not a section edit by replacing line 9 with:
(added_lines irlike bad_word | (
    !(summary irlike "\/\* .+? \*\/") &
    summary irlike bad_word &
    !(summary irlike dick_name)
)) &
PhantomTech[talk] 04:24, 4 August 2022 (UTC)Reply[reply]
Looks good to me! 🐶 EpicPupper (he/him | talk) 04:26, 4 August 2022 (UTC)Reply[reply]
Thanks. Alternatively, if it's not too costly, you could create a variable which contains the summary with any /* ... */ removed and check that, to catch an edit summary like "/* Legitimate header */ Redacted is a butthole". (I'm not familiar enough with EF syntax to code that.) Certes (talk) 12:24, 4 August 2022 (UTC)Reply[reply]
This should do that
(added_lines irlike bad_word | (
    section_start := strpos(summary, "/* ");
    section_end := strpos(summary, " */");
    if (section_start === 0 & section_end > section_start)
        then (summary_prime := substr(summary, section_end + 3))
        else (summary_prime := summary) end;
    summary_prime irlike bad_word &
    !(summary_prime irlike dick_name)
)) &
PhantomTech[talk] 21:40, 4 August 2022 (UTC)Reply[reply]
Made a small change. PhantomTech[talk] 02:52, 5 August 2022 (UTC)Reply[reply]

Special:AbuseFilter/627

Can the phrase "contact us" be added to this filter? Contact information is almost never appropriate to insert to an article, and I would have expected a page such as User:Myhomewatch/sandbox to have triggered this filter for containing this phrase. Mori Calliope fan talk 18:27, 6 July 2022 (UTC)Reply[reply]

That might be a little tricky. Contact us frequently appears inside of references (why it does or whether or not it ever should is another matter). OhNoitsJamie Talk 18:51, 6 July 2022 (UTC)Reply[reply]
I wonder if negative lookbehinds/aheads could be used? Refs are tricky to parse, though. 🐶 EpicPupper (he/him | talk) 04:09, 4 August 2022 (UTC)Reply[reply]

The word ‘singao’

  • Task: Warn and tag as possible vandalism when a non-autoconfirmed user adds the word 'singao' into a Cuba-related article.
  • Reason: 'Singao' is a vulgar Spanish word used in Cuba, meaning something to the extent of 'motherfucker'. It's a term frequently used to vandalise pages related to Cuban politics.
  • Diffs: Special:Diff/1096814939, Special:Diff/1089277019

Helen(💬📖) 23:57, 6 July 2022 (UTC)Reply[reply]

This should work:
!("confirmed" in user_groups) &
page_namespace == 0 & 
added_lines irlike "sin ?gao" &
!((removed_lines + page_title) irlike "sin\s*gao") &
old_wikitext irlike "cuba"
Cheers, and thanks EFMs in advance. 🐶 EpicPupper (he/him | talk) 04:02, 4 August 2022 (UTC)Reply[reply]

EF 189 and ccnorm/norm

189 (hist · log)
This filter should probably match a libelous edit like this: Special:Diff/1088504111. I saw ccnorm from mw:Extension:AbuseFilter/Rules format#Functions, and I think it can be used for this? Thanks. 0xDeadbeef 06:22, 7 July 2022 (UTC)Reply[reply]

ccnorm() can be wrapped around the added_lines and removed_lines. 🐶 EpicPupper (he/him | talk) 04:06, 4 August 2022 (UTC)Reply[reply]

Requested Update to Filter 614

  • Task: Match LMFAO
  • Reason: Currently matches LMAO but not LMFAO
  • Diffs: Special:Diff/1098091075
  • Regex should become:

y\s*o\s*[lo\s]+s\s*w\s*[4ae]+\s*g+|\by+o+l+o[lo]+|s+w+[4ae]+gg[g]+|#yolo|#sw[4ae]g|sw[4ae]g\s*(?:yolo|daddy|money|lord|master)|420\s*b+l+a+z+e+\s*i+t+|\s*i\s*n\s*t\s*h\s*[ae]\s*p\s*(?:(?:[@uv*]\s*)+(?:[zs$*]\s*)+|[zs$*]{2,})\s*a*y+|\bt+r+o+l(?:o+l|ll)|lolo(?:lo)+|(?:d[3e](?:[3e]+[sz]+|[sz][sz]*)e*|th[3e][zs$][3e])\s*n+u+t+[zs$]|(?:f[u\*][c\*]k(?:ing?|ed|s)|sex\s*with?)\s*chickens?|chicken\s*f[u\*]?[c\*]k(?:er|s|ing)?|(?:them\'?s?|dems?|those\s+are)'?\s+(?:th[ea]|da)\s+fa(?:cts|x)!?|hitler\s*did\s*nothing?\s*wrong|bush\s*did\s*9.?11|dank\s*meme|drumpf|\bdat\s* boi|sub(?:scrib(?:e|es|ed|ing))?\s*(?:to|2)\s*(?:p(ew|ud|ue|uw|oo)|te*.?series)|tran?s?.?manian?\b|chung[uea]s\b|gucci\s*gang[\s,]*gucci\s*gang|\br+eeeeee|fetus\s*deletus|(?<!koe\s)\by+ee+t+(?:e+(?:r+|d+))?\b|\beats?\s*ass\b|ugandan\s*knuckles|hard\s+(?:pp|peepee)|(?:pp|peepee)\s+hard|\booo+f+\b|\bnibb+a+\b|absolute\s*unit|you'?ve\s*been\s*gnomed|\bt+\s*h+\s*i+\s*c\s*c|\bg+a+yy(?:y|\b)|\bayyy|\bl+m+f*a+o|rawr\s*xd|b+o+iii|e+s+k+e+t+i+t|\bh+iii+\b|h+iiiii|hehehe|aviation\s*,[\s\S]*?there\s*is\s*no[\s\S]*?bee[\s\S]*?be\s*able\s*to\s*fly|dQw4w9WgXcQ|\buwu\b|hit\s*or\s*miss[\s,]*I\s*guess|ok(?:ay)?,? boomer|joe m[oa]m+a|#redirect\s*\[\[donald[\s_]trump\]\]|epst(?:ei|ie)n\W+did\s*n.?t\s+kill|\bbruv+\b|\bbruh+\b|(?<!\d|#)(?:69\D*420|420\D*69|(?:69\D{0,50}){3,})(?!\d)|\b(?:ranboo|tubbo)|quandale\s*dingle


It's really hard to see the change because of the regex length, to clarify the change the current segment \bl+m+a+o should become \bl+m+f*a+o PHANTOMTECH [TALK] 05:23, 14 July 2022 (UTC)Reply[reply]

"Matthew Fagwell" vandalism

I've encountered a few instances recently ([1] [2] [3]) of different editors adding a bogus name into articles. I'm not sure if this is a widespread thing recently or just a one-time spree, but considering it could be very easily missed I thought it'd be worth adding a request here, or at the very least adding it to an existing test filter temporarily to see if the edits subside. DatGuyTalkContribs 11:31, 15 July 2022 (UTC)Reply[reply]

You could also do an insource search: https://en.wikipedia.org/w/index.php?search=insource%3A%22Fagwell%22&title=Special:Search&profile=advanced&fulltext=1&ns0=1 0xDeadbeef 11:37, 15 July 2022 (UTC)Reply[reply]
I don't see why this couldn't be tested in a log-only filter. This should work.
!("confirmed" in user_groups) &
page_namespace == 0 & 
added_lines irlike "Matthew\s*Fagwell"
Thanks EFMs in advance. 🐶 EpicPupper (he/him | talk) 04:04, 4 August 2022 (UTC)Reply[reply]

Shouting outside of mainspace

  • Task: Using Special:AbuseFilter/50 for shouting outside of mainspace
  • Reason: Typically just as disruptive as any other shouting.
  • Diffs: Special:Diff/1098440575

LaundryPizza03 (d) 23:01, 15 July 2022 (UTC)Reply[reply]

This would be quite easy to implement. Filter 50 could have "page_namespace == 0 &" fully removed, and MediaWiki:Abusefilter-warning-shouting could have "for both articles and discussion pages" changed to "for all pages". I suggest utilizing filter 1 to test this, log-only. Pinging @TheresNoTime, if you're interested? 🐶 EpicPupper (he/him | talk) 02:48, 4 August 2022 (UTC)Reply[reply]
Hmmm, I've added it to Special:AbuseFilter/1, but I think this might be a fairly active/false-positive heavy idea. We'll see Face-smile.svgTheresNoTime (talk • she/her) 10:25, 4 August 2022 (UTC)Reply[reply]
Most results so far have been positive, so I’m hopeful! 🐶 EpicPupper (he/him | talk) 17:57, 4 August 2022 (UTC)Reply[reply]

De-duplication

"niggah" is matched twice in the regex of AbuseFilter/260. AbuseFilter/384 has it as well. They should be unified. 0xDeadbeef 15:29, 16 July 2022 (UTC)Reply[reply]

@0xDeadbeef:  Done Already took care of this when responding to your EFN post. Suffusion of Yellow (talk) 19:32, 18 July 2022 (UTC)Reply[reply]

Adding links to pornographic actors

0xDeadbeef 09:16, 22 July 2022 (UTC)Reply[reply]

@0xDeadbeef I don't think there's any way to check if a linked article is in a category so I think the only way to do this with edit filters would be to have a manually updated list which is probably not practical given the size alone. PhantomTech[talk] 09:34, 22 July 2022 (UTC)Reply[reply]
Based on similar experience with another film genre, such vandals may include one favourite name (along with others) in most edits. Could you identify such a name, without revealing it here? Then, rather than check for the whole category, the filter could trigger whenever the vandal inserts the dominant member between the welcoming brackets of the receptive article. Certes (talk) 11:18, 22 July 2022 (UTC)Reply[reply]
Here's where I insert a "titular character" joke (for gender balance, since there are occasional complaints about too many dick jokes). 15:29, 22 July 2022 (UTC)
This could also just be a bot that runs on toolforge. 0xDeadbeef 11:51, 22 July 2022 (UTC)Reply[reply]
Done. Contact me privately if you're interested in details. PhantomTech[talk] 04:44, 4 August 2022 (UTC)Reply[reply]

N-word edit filter

  • Task: Prevent vandalism that later requires revision deletion by preventing the word "niggerpox" from being accepted in an edit
  • Reason: Because of persistent vandalism, on and off for several months
  • Diffs: The diffs get revision deleted but you can see evidence of their RD status at the contributions list of an IP range where this broke out.
  • There are probably a half dozen or dozen monkeypox articles where I've seen this happen (and also on their talk pages). I would think that there is a general filter that prevents edits containing the N-word but somehow these edits get through. I'm not sure whether it is one persistent IP editor who gets the urge to do this once in a while or it's a "thing" to do but I've seen it go on since the outbreak of monkeypox. It seems like it would be a simple thing to add this term to whatever filters out the N-word. I can't think of a legitimate use for this term that a filter would prevent. Thank you. Liz Read! Talk! 22:41, 22 July 2022 (UTC)Reply[reply]
    @Liz and Samwalton9: Restored 1209 (hist · log). "Nigger" (without word boundaries) was already stopped by several filters, at least in article space; likely they were using some tricks to evade the filters. Suffusion of Yellow (talk) 21:18, 29 July 2022 (UTC)Reply[reply]
    Suffusion of Yellow, they were likely using an invisible space, such as the Zero-width joiner. An example of this can be found here. Note that even though the diff doesn't show anything, if you copy the "Test" I inserted and use the javascript console to check its length, it would show as 5. This is because I inserted a zero-width joiner between the "e" and the "s". 0xDeadbeef 18:08, 30 July 2022 (UTC)Reply[reply]
    @0xDeadbeef: FWIW, the degree of determination to get around the filter yesterday suggests an LTA, or at least of those people who tries to get around filters to make themselves feel smart. So maybe best to end this public discussion. Suffusion of Yellow (talk) 19:35, 30 July 2022 (UTC)Reply[reply]

Account Simodmart*

maybe more ?

Simodmart is also indefinitely blocked on ar.WP Supertoff (talk) 21:36, 3 August 2022 (UTC) (Sysop and Abuse Filter on fr.WP)Reply[reply]

@Supertoff The {{user}} template pings so I won't be too detailed but I don't think a disallow filter is the best solution. Your list of accounts appears to be complete. PhantomTech[talk] 22:38, 3 August 2022 (UTC)Reply[reply]
I forgot the ping... I asked it because 3 of them were created in the past 2 days. Supertoff (talk) 08:42, 4 August 2022 (UTC)Reply[reply]
@Supertoff I sent you an email with my reasoning for why I don't think the disallow filter is the best option and something that should help you deal with the user. PhantomTech[talk] 08:55, 4 August 2022 (UTC)Reply[reply]
@PhantomTech I understand and tks for the query. I made an RCU on frwiki to check if there are other accounts in case of. Supertoff (talk) 09:06, 4 August 2022 (UTC)Reply[reply]

Add "poo poo" to the poop filter

  • Task: Stop edits adding this string, by adding it to a "disallow" filter (such as the existing "poop" filter)
  • Reason: Because the poop vandalism filter doesn't catch it, and this is quite common.
  • Diffs: [4]

Can this string ("poo poo") be added to the ones prevented by the "poop" filter? I see virtually no legitimate use for this string in mainspace. 💩 Mako001 (C)  (T)  🇺🇦 12:20, 12 May 2022 (UTC)Reply[reply]

just another example. Mako001 (C)  (T)  🇺🇦 10:44, 18 May 2022 (UTC)Reply[reply]
Unarchiving. 🐶 EpicPupper (he/him | talk) 05:03, 5 August 2022 (UTC)Reply[reply]

SCP vandalism?

This is infrequent enough that I'm not really sure if an edit filter is justified, but would it be worth it to have a filter that tags additions of strings like "keter", "overseer council", "secure. contain, protect" etc. to pages with SCP in the title other than SCP Foundation and SCP: Containment Breach? See, for example, [5], [6]. casualdejekyll 03:17, 11 March 2022 (UTC)Reply[reply]

That's one of the weirdest types of vandalism I've ever seen. Stifle (talk) 14:10, 4 April 2022 (UTC)Reply[reply]
It's not all that different to something like what happened with Bishop Auckland. Internet memes are inevitable, and Wikipedia is on the internet. casualdejekyll 23:37, 20 April 2022 (UTC)Reply[reply]
Unarchiving. This should work:
!("confirmed" in user_groups) &
page_namespace == 0 & 
added_lines irlike "keter|overseer\s+council|secure\.?\s+contain\.?\s+protect\.?" &
!(page_title rlike "SCP Foundation|SCP: Containment Breach")
This checks for "keter", "overseer council", and "secure. contain. protect" in pages other than SCP Foundation and SCP: Containment Breach. There can be any amount of spaces between the latter two. 🐶 EpicPupper (he/him | talk) 05:11, 5 August 2022 (UTC)Reply[reply]

Sheesh

Add the word "sheesh" to the list of vandal meme phrases. It is often used in vandalism and has very few good users. aeschylus (talk) 17:49, 1 June 2021 (UTC)Reply[reply]

EFMs, please test with the same code as Filter 614 but with "|s+h+e{2,}s+h+" appended to the search string. There can be an infinite amount of repetition of the string with this reegx, e.g. "sheesh", "shhheeeessssshh", or "sshheeesssssssshhh". 🐶 EpicPupper (he/him | talk) 05:13, 5 August 2022 (UTC)Reply[reply]