Abuse filter management

From Test Wiki
Abuse Filter navigation (Home | Recent filter changes | Examine past edits | Abuse log)

Differences between versions

ItemVersion from 19:47, 5 April 2025 by Codename NoresteVersion from 01:13, 15 April 2025 by Codename Noreste
Basic information
Notes:
Test filter imported from the English Wikipedia, see Filter 384 there, log only for now. -Justa
Test filter imported from the English Wikipedia, see Filter 384 there, log only for now. -Justa


Enable warn and tag, and remove page namespace condition. -Justa
Enable warn and tag, and remove page namespace condition. -Justa


Exempt sysops -Justa
Exempt sysops -Justa
Tailor to Test Wiki -Justa
Tailor to Test Wiki -Justa


Most of the conditions, excluding the string, are removed since this is not Wikipedia, and I've reduced the edit_delta to 20 (for newer users) as well as merged the condition that excludes autopatrolled users and admins into one. -- Codename Noreste, April 21 2024
Most of the conditions, excluding the string, are removed since this is not Wikipedia, and I've reduced the edit_delta to 20 (for newer users) as well as merged the condition that excludes autopatrolled users and admins into one. -- Codename Noreste, April 21 2024


Exclude userspace and user talk pages, this is already covered by another filter; no need for edit_delta. [Norte to Noreste changed in the notes too.] — Codename Noreste
Exclude userspace and user talk pages, this is already covered by another filter; no need for edit_delta. [Norte to Noreste changed in the notes too.] — Codename Noreste


Switched to equals_to_any in line 2. -- Codename Noreste, July 17 2024
Switched to equals_to_any in line 2. -- Codename Noreste, July 17 2024


Converted the main regex string to ccnorm and modified some of that as well. I also split the repeating characters part into another regex variable. --Codename Noreste 02:14 29 Nov 2024
Converted the main regex string to ccnorm and modified some of that as well. I also split the repeating characters part into another regex variable. --Codename Noreste 02:14 29 Nov 2024


Merged both words on some negative lookbehinds into one for "was here". --Codename Noreste 02:04 8 Dec 2024
Merged both words on some negative lookbehinds into one for "was here". --Codename Noreste 02:04 8 Dec 2024


Updating again, and I removed the repeating characters part as it's covered by another filter. --Codename Noreste 19:47 5 Apr 2025
Updating again, and I removed the repeating characters part as it's covered by another filter. --Codename Noreste 19:47 5 Apr 2025
Another general update. --Codename Noreste 01:13 15 Apr 2025
Filter conditions
Conditions:
action == "edit" &
!equals_to_any(page_namespace, 2, 3) &
!equals_to_any(page_namespace, 2, 3) &
!contains_any(user_rights, "autopatrol", "autoreview") &
!contains_any(user_rights, "autopatrol", "autoreview") &
(
(
     bad_words := "\b(?:(?:ASS|ARSE|BUTT)\s?HOLES?|(?:DUMB|(?:F|PH)AT+(?:EST)?)\s*ASS|ARSE|BITCH(?:E[SZ]{1,2})?|COCK(?:S|SUCKER)?|DICK(?:HEAD|SUCKER)?S?|CUCK(?:ER|ING|S)?|CUNTS?|DILDO|DOUCH|(?:M[OU]TH[AER]+)?F[UV]CK(?:ER[SYZ]{0,2}|HEAD|HOLE)|N[IL]G{2,}(?:A[HSZ]{0,3}|[AEIOU]{1,5}R[SZ]{0,2})|P[AE]DO(?:F|PH)ILE?|FAG(?:G[AIO]T)?|PENIS|CRAP(?:PY)?|SLUTS?|WHORES?|(?:BULL|DOG|HORSE|PIG)?SHITE?(?:HOLE|S|TI?ER|T?Y|T?ING)?|PUSS(?!YCAT|YFOOT|Y RIOT)A?Y|IDIOTS?|(?<!IT |THAT )WAS HERE|LOL)\b";
     bad_words := "(?x)\b(?:
        (?:ass|arse|butt)\s?holes?
        |(?:dumb|(?:f|ph)at+(?:est)?)\s*a(?:ss|rse)
        |arse
        |bitch(?:e[sz]{1,2})?
        |cock(?:s|sucker)?
        |dick(?:head|s|sucker)?
        |cuck(?:er|ing|s)?
        |cunts?
        |dildo
        |douche
        |(?:m[ou]th[aer]+)?f[uv]ck(?:er[syz]{0,2}|head|hole)
        |n[il]g{2,}(?:a[hsz]{0,3}|[aeiou]r[sz]{0,2})
        |p[ae]do(?:f|ph)ile?
        |fag(?:g[aio]t)?
        |penis
        |crap(?:py)?
        |sluts?
        |whores?
        |(?:(?:bull|dip|dog|horse)\s?)?shite?(?:hole|s|ti?(?:er|ing)|t?y)?
        |puss(?:a?y|ies)(?!y(?:cat|foot)|y riot)
        |idiots?
        |(?<!it[ ]|that[ ])was here
    )\b";
      
      
     ccnorm(added_lines) rlike bad_words &
     added_lines irlike bad_words &
     !(ccnorm(removed_lines) rlike bad_words)
     !removed_lines irlike bad_words
)
)