Správa filtra zneužití

Rozdiely medzi verziami

PoložkaVerzia z 14:31, 24. november 2011 od používateľa MercyVerzia z 19:05, 18. máj 2016 od používateľa Teslaton
Základné informácie
Poznámky:
Tchoř importoval z en:
Prerábka na jednoduchšie kritérium, chytajúce aj pozitívne prípady, ktoré pôvodná verzia z en nechytala. --Teslaton 2016-05-18
http://en.wikipedia.org/wiki/Special:AbuseFilter/61
-------
"<ref|</ref" split for clarity
 
Appears to get more and better hits on referenced info now too. Apparently, previous version wasn't working properly. --Mgm
 
Switched on. - It Is Me Here
Tagging instead of disallowing, there are plenty of good reasons to remove references. -- Mgm
Oh, is this for all references? Wasn't there one regarding removing a {{Reflist}} template? - It Is Me Here
  That one (filter 79) was a test, and it doesn't appear to be working properly. It hasn't caught anything for at least 24 hours. - Mgm
removed private flag, unnecessary --  Zzuuzz
Updated format that should also catch named references and avoid the old reference grouping tag. --Mgm
Filter 79 now working properly, removing line that specifies reflist. Working on better regex to avoid <references/> being hit with this one --Mgm
 
Changing to edit_delta <= -1000 from >= -1000; seems like this was the intent. >= and <= comparisons are based on actual value, not absolute value. Correct me if this was the intent. Also, we are getting some false positives on this, see http://en.wikipedia.org/w/index.php?title=Interstate_5_in_Washington&diff=279452062&oldid=278504317 - Hersfold
 
>= is correct. It is supposed to exclude large removals from being evaluated since they're covered by blanking filters.  It was an error in the regex. Instead of allowing for <ref name="whatever">, the regex allowed choosing between <ref> and <ref name>, the last of which obviously didn't work. -- Mgm
 
added note in filter to avoid confusion --Mgm
 
Altered regex to treat refs as whole blocks, to avoid situation where a duplicate ref is changed to a named ref (<ref>Blah</ref> --> <ref name=foo/>).  Now won't catch users removing one end of a ref though.  Might have ec'd with cmt above, but can't tell in this wierd system :D --HM
 
 
Okay... I THINK this is finally a correct regex that:
 
  1) grabs <ref> ... </ref> as entire blocks
  2) grabs <ref name="foo"/>
  3) ignores <references/>
  4) allows newline breaks between <ref> and </ref> tags.
  5) grabs only consecutive <ref>, </ref> pairs (as opposed to jumping from the first <ref> to the last </ref>).
 
-DF
 
Restored original version, added exclusions for naming references and removing closing tags of named references. --Mgm
 
Added comments for clarity --Mgm
 
Too many false positives, setting to log only. --Conti
 
From Coppertwig:
A more exact count might be obtained by defining a ref-opening as either "<ref>" or "<ref name" and a ref-closing as either "</ref>" or "ref name ... />".  (With the named reference, the same tag will sometimes count as both an opening and a closing.)  The code might look something like this (assuming rcount expects regular expressions):
 
/* count of removed ref-openings exceeds count of added ref-openings, or count of removed ref-closings exceeds count of added ref-closings; named refs with slashes count as both openings and closings. */ & (rcount("(<ref>|<ref\sname)",removed_lines) > rcount("(<ref>|<ref\sname)",added_lines) | rcount("(</ref>|<ref\sname[^>/]*/>)",removed_lines) > rcount("(</ref>|<ref\sname[^>/]*/>)",added_lines)
 
Adjusted delta to -3000 due to a sock removing references that has been missed due to the total removed content. Ref [[User:Ryulong/Sandbox#Ref_removing_vandal]] - Shirik 24 Jan
 
I replaced \sname with \s(name|group). - Ruslik
 
Something 'wrong' here .. it catches also '<ref></ref>' (i.e., empty tags, as included in the article creation wizard).  They should be excluded.
Podmienky filtra
Pravidlá:
!("autoconfirmed" in user_groups)
(!("autoconfirmed" in user_groups) | (user_editcount < 50)) &
/* this edit_delta ignores large blankings that are treated by another filter */
(article_namespace == 0) &
& edit_delta >= -3000
 
& article_namespace == 0
/* Nejde o rozsiahle mazanie/vypráznenie */
/* No added lines usually mean a blanking which is dealt with by other filter */
(edit_delta >= -3000) &
& length(added_lines) != 0
 
& !("#redirect" in lcase(added_lines))
/* Nejde o presmerovanie, rozlišovačku, stránku s údržbovou šablónou */
/*Counts of more reference tags are removed than added */
!(new_wikitext rlike '(?i)\{\{\s*(zmazať|zl|delete|porušenie autorských práv|copyvio|disambig|rozlišovacia)\b|#(redirect|presmeruj)') &
& (rcount("(<ref>|<ref\s+(name|group)|</ref>)",removed_lines) > rcount("(<ref>|<ref\s+(name|group)|</ref>)",added_lines))
 
/*Excludes changing to the named reference format and removing closing tags attached to formerly named refs. Unequality is to account for closing the first named tag */
/* Odstránených viac <ref> tagov, než doplnených */
& !(rcount("<ref>",removed_lines) = rcount("<ref\s+(name|group)",added_lines) | rcount("</ref>",removed_lines) <= rcount("<ref\s+(name|group)",added_lines))
(rcount("<ref\b", removed_lines) > rcount("<ref\b", added_lines)) &
/*Excludes removal of references to Wikipedia itself */
 
& !(count("http://en.wikipedia.org",removed_lines) > count("http://en.wikipedia.org",added_lines))
/* Nejde o redukciu cross-wiki ref */
!(count(".wikipedia.org", removed_lines) > count(".wikipedia.org", added_lines))