Wikipédia:Filtro de edições/5

Origem: Wikipédia, a enciclopédia livre.

Uso excessivo de maiúsculas
Status
Impedindo
Manutenção
Nula
Resumo
Adição de linhas que tenham apenas letras maiúsculas e símbolos, sem letras minúsculas, e o total de caracteres adicionados seja maior que 12.
Ferramentas
Falsos positivos
Total 0
Lista Lista filtrada (com gadget)
(PS: futuramente, poderíamos ver os 5 mais recentes aqui mesmo)
Tarefas

O filtro não detecta caracteres como !@#$%¨&*()?: o que diminui o seu potencial. Sugiro aprimorar a string de REGEX para incluir, pelo menos !@*=+-? que são de uso comum no wikicódigo. Algo como ^[A-Z0-9\s\pP!@*=+-?]*?[A-Z]{5}[A-Z0-9\s\pP]*$ deve resolver segundo o rubular.OTAVIO1981 (discussão) 12h37min de 24 de junho de 2013 (UTC)[responder]

P.S.:Opcionalmente, a ^[A-Z0-9\s\pP\S]*?[A-Z]{5}[A-Z0-9\s\pP\S]*$ funciona para um número mais amplo de caracteres.OTAVIO1981 (discussão) 13h05min de 24 de junho de 2013 (UTC)[responder]
Para facilitar a análise, a regex atual, idêntica a uma usada na wiki em inglês, é esta: ^[A-Z0-9\s\pP]*?[A-Z]{5}[A-Z0-9\s\pP]*$.
Conforme Unicode Character Properties,

\p{P} or \p{Punctuation}: any kind of punctuation character.

O rubular pode estar sujeito a limitações do JavaScript ou algo assim, então fui conferir direto na b:Especial:Filtro de abusos/tools, e os únicos caracteres da sua lista que não são detectados por [A-Z0-9\s\pP] são "+" e "=" (caracteres que, por sinal, aparecem no código wiki das tabelas e no título das seções). Então sua proposta se resumiria à inclusão de "+" e "=", mas por enquanto não acho que seja boa ideia, pois acho que pode dar falsos positivos. O que o filtro deveria detectar e atualmente não detecta? (teria algum link de exemplo?)
Eu preferiria que fosse atualizado para a versão atual do en:Special:AbuseFilter/50, pois as condições usadas no nosso filtro 5 foram copiadas (e permanecem idênticas às) da versão de abril de 2009, que já recebeu várias correções desde então. Helder 13h28min de 24 de junho de 2013 (UTC)[responder]
Sim, a edição que não foi filtrada foi esta conforme este registro. O rubular indicou que o filtro atual não é capaz de detectar este vandalismo pela inserção do asterisco no início. Se tivesse uma interrogação, também não seria detectado. Não consegui usar o recurso do books para ver como fica. Comparando com a anglófona, lá o vandalismo seria detectado pelo parâmetro extra !(removed_lines rlike "[A-Z0-9\s\pP]*?[A-Z]{5}[A-Z0-9\s\pP]") que aqui não tem. Atualizar o código me parece suficiente.OTAVIO1981 (discussão) 13h59min de 24 de junho de 2013 (UTC)[responder]
Não foi por isso. Conforme a b:Especial:Filtro de abusos/test, um filtro que tenha o código
added_lines rlike "^[A-Z0-9\s\pP]*?[A-Z]{5}[A-Z0-9\s\pP]*$"
detecta esta edição, mas um que tenha o código
length(added_lines) > 15
não, o que acho muito estranho. Helder 14h53min de 24 de junho de 2013 (UTC)[responder]
Postei um exemplo (sem conteúdo ofensivo) no bugzilla:50107. Helder 15h42min de 24 de junho de 2013 (UTC)[responder]
Outro exemplo que não foi pego. OTAVIO1981 (discussão) 18h34min de 24 de junho de 2013 (UTC)[responder]
Neste caso, também foi culpa do teste "length(added_lines) > 15". A edição é detectada normalmente se esse código é removido, ou trocado por length(added_lines) = 1. Helder 11h48min de 3 de julho de 2013 (UTC)[responder]
outro exemplo que não foi detectado.OTAVIO1981 (discussão) 11h38min de 22 de julho de 2013 (UTC)[responder]
A expressão regular foi escolhida de modo que só detecte edições em que a "added_lines" inteira não tenha uma letra minúscula sequer (compare [1] e [2]), provavelmente para evitar falsos positivos. Helder 12h46min de 22 de julho de 2013 (UTC)[responder]

Olhei as últimas 100 edições (de fevereiro pra frente) e só vi 2 falso-positivos: Redirecionamento (só tinha exceção para Redirect, já arrumei), e wikificação (parcial) de texto já existente que era todo em maiúscula. Pra esse segundo caso, acho q podemos colocar uma exceção pros casos das linhas removidas terem maiúsculas em excesso. Diminui um pouco o falso-positivo, e não acho que deixará de detectar nada de significativo. Proponho mudar tb para desautorizar a edição. Rjclaudio msg 18h07min de 10 de julho de 2013 (UTC)[responder]

Modifiquei novamente para deixá-lo mais parecido com o original da wiki em inglês (agora o problema das maiúsculas no trecho removido não deverá mais ocorrer). Helder 18h55min de 10 de julho de 2013 (UTC)[responder]

Avaliei 150 registros, de hoje até o dia 15 de julho, e os únicos possíveis falso-positivos são itens em uma lista de obras, para uma obra que é toda em maiúscula. Porém os casos que vi, a obra na verdade era em minúscula, e escrever em maiúscula estava errado. Há algum modo de pesquisar quais nossos artigos que a simples inclusão dele na lista dispararia o filtro? Se quiserem mais preciso, excluir da análise as linhas que começam com * (item de lista). Mas mesmo tendo esses raros casos, eu acho que vale a pena mudar para impedir a edição. Rjclaudio msg 16h54min de 29 de julho de 2013 (UTC)[responder]

Agora que eu vi, teve 200 registros em 20 dias (desde a alteração do dia 10), e antes disso eram 200 registros em 6 meses (desde o início do ano). O filtro mudou tanto assim? Rjclaudio msg 18h03min de 29 de julho de 2013 (UTC)[responder]
Com o meu olhar leigo, só vi remoção de parênteses e diferenciação no método de detectar Redirs mas felizmente o filtro me parece funcionar corretamente.OTAVIO1981 (discussão) 16h49min de 30 de julho de 2013 (UTC)[responder]
Sim, mudou!
A alteração mais significativa foi a troca de
length(added_lines) > 15
por
length(rmwhitespace(added_lines)) > 12
principalmente levando em conta o bugzilla:50107, e o fato de que a versão anterior não convertia added_lines para uma string ante de verificar o tamanho, então ele só detectava edições em que apareciam mais de 15 sinais de igual (+) no lado direito do dif (nesta edição por exemplo, length(added_lines) === 49), o que não é muito comum. Helder 21h34min de 4 de agosto de 2013 (UTC)[responder]

Fiz uma nova verificação com os registros salvos desde o dia 15 e alguns impedidos e não houve falsos positivos. Admito que existe a possibilidade dos falsos positivos que o Cláudio mencionou em listas mas neste caso a recomendação seria converter tudo para minúsculas e não deixar as maiúsculas. Portanto, de modo a possibilitar que o filtro passe ao modo impedimento, proponho um aviso personalizado para esta questão em específico:

Atenção: o sistema identificou automaticamente que a edição adicionou uma quantidade excessiva de caracteres em caixa alta ou maiúsculas, geralmente significando erros na edição.

Caso seja uma edição de boa-fé, veja o nosso guia de edição. Ou mais especificamente, para o caso a seguir:

  • Ao adicionar itens em uma lista que contém entradas com caixa alta, por favor rescreva todas as entradas utilizando minúsculas para poder gravar sua edição. Obrigado!

Caso acredite que tenha resolvido o problema mas ainda assim não conseguiu salvar a edição, você pode também nos avisar aqui, para que tal mensagem não apareça novamente.

Uma breve descrição da regra de abuso com a qual a sua acção coincidiu é: $1

O que acham?OTAVIO1981 (discussão) 19h16min de 23 de agosto de 2013 (UTC)[responder]

Concordo, o aviso está bom. São mesmo poucos casos (se aparecer algum), então não é impedimento o suficiente. Mudei o aviso e o filtro, e retirei a etiqueta por não ser mais necessária. Rjclaudio msg 15h24min de 25 de agosto de 2013 (UTC)[responder]

O added_lines está com >12, o número foi escolhido "aleatoriamente" né? Vale testar para valores mais baixos? Rjclaudio msg 15h25min de 25 de agosto de 2013 (UTC)[responder]

Acho possível que valores menores causem falsos positivos com siglas, mas nada nos impede de criarmos um filtro apenas para registrar essas ocorrências com valores menores, para confirmar ou refutar essa hipótese... Helder 15h40min de 25 de agosto de 2013 (UTC)[responder]
Fiquei curioso e fui pesquisar um pouco pela net. Siglas maiores que 6 e 8 foram raras e a maior que encontrei foi ARISTOTELES. Acho que não tem necessidade de criar o filtro por enquanto. Talvez inverter a lógica e analisar a frequência dos casos que estão passando para ver se vale a pena reduzir.OTAVIO1981 (discussão) 19h55min de 26 de agosto de 2013 (UTC)[responder]