Portal de anuncios
de los filtros
Reporte de falsos positivos
Implementación



Nuvola apps download manager.png

Imágenes sin extensiónEditar

Este hilo no se archivará. (info)

¿Algún filtro del tipo «posible pruebas» en el cual se pueda añadir la inserción de imágenes sin extensión? (ejemplo). --Metrónomo's truth of the day: «persevera y triunfarás» 13:50 24 mar 2017 (UTC)

Filtro 18Editar

Este hilo no se archivará. (info)

Symbol question.svg Pregunta: ¿Hay algún motivo en particular por el cual el filtro 18 no previene la edición? Aquí ni siquiera veo una etiqueta. ¿O está fallando? --Metrónomo's truth of the day: «persevera y triunfarás» 08:33 26 abr 2017 (UTC)

Otro ejemplo. Algo anda mal con ese filtro, no está funcionando correctamente. --Metrónomo's truth of the day: «persevera y triunfarás» 06:41 29 may 2017 (UTC)
La segunda condición del filtro está anulándolo totalmente. No entiendo muy bien lo que se pretendía, pero creo que se soluciona modificándola según sigue:
& ((article_namespace==0)|!("prueba" in lcase(article_prefixedtext)|"sandbox" in lcase(article_prefixedtext)|user_name in article_prefixedtext))
En este caso se activa el filtro si es en el espacio principal, o en caso contrario solo cuando el título no contenga las palabras “prueba”, “sandbox” o el nombre del usuario. Saludos. -- Leoncastro (discusión) 04:13 19 ago 2017 (UTC)
He modificado el filtro como propones, pero no encuentro cambios recientes (menos de 30 días) para probar que ahora esté funcionando el filtro, Jmvkrecords Intracorrespondencia 18:44 19 ago 2017 (UTC).
@Jmvkrecords, pues es fácil de comprobar. Funciona con los casos más sencillos,[1] aunque no con el caso de [[miniaturadeimagen]],[2] o [[nombre del artículo]][3] ¿Es posible que esos requieran las barras antes de los corchetes? (\[\[nombre del artículo\]\]) -- Leoncastro (discusión) 19:06 19 ago 2017 (UTC)
Esto es justamente lo que no he querido usar. Lo ideal sería hacer pruebas en un sitio ideal para ello, pero bueno... le he puesto las barritas a ver qué pasa, Jmvkrecords Intracorrespondencia 19:25 19 ago 2017 (UTC).
Eso no me ha importado, pero esto sí, especialmente cuando no esperaba que sucediera, y porque he ensuciado el historial. Tomo nota de la opción de test, aunque allí tampoco puedo editar los filtros. -- Leoncastro (discusión) 19:35 19 ago 2017 (UTC)
@Jmvkrecords, ahora que lo pienso... no ha funcionado correctamente. La condición dos que he propuesto es correcta, y las demás, antes de la última prueba, también lo eran. Al menos cumplen la documentación. Es decir, puedes deshacer el último cambio con las barras antes de los corchetes; no son expresiones regulares, sino cadenas literales. Pero... ¿acaso no soy autoconfirmado? Ni siquiera debió saltarme el filtro. Ha fallado sorprendentemente ya en la primera condición. Un fallo impensable. Tiene que deberse a algún bug propio de la extensión.
Vaya, he propuesto tres modificaciones y has empezado por la única que indicaba «creo que se soluciona». Pues no ha funcionado totalmente. Espero que eso no afecte a mi credibilidad. -- Leoncastro (discusión) 23:55 19 ago 2017 (UTC)
Leoncastro, sobre el filtro 16 entiendo lo que propones pero tengo la intuición de que podría generar algunos falsos positivos suplementarios, he preferido no tocarlo por ahora. Sobre el filtro 38, es un filtro que no entiendo muy bien cómo funciona, y no entiendo bien el resultado deseado, por lo que por ahora no me meto con eso. Tendré que mirarlo mejor. El filtro 18 lo entiendo un poco más y por eso comencé por ese. Supongo que habría que reportar el problema en Phabricator, cosa que ellos revisen por qué sigue sin saltar el filtro... Si te animas a hacer eso, que yo estaré ausente por los próximos días, Jmvkrecords Intracorrespondencia 04:23 20 ago 2017 (UTC).
Leoncastro, lo que te ha saltado es el filtro 78, no el 18. Ahora que lo veo esos dos filtros deberían ser fusionados pues cumplen una función similar, Jmvkrecords Intracorrespondencia 04:30 20 ago 2017 (UTC).
No estoy siguiendo el hilo, pero justo leí el último comentario. Cuando creé el filtro 78 (autoconfirmados), éste tenía una diferencia importante con respecto al 18 (no autoconfirmados) que es que el 78 da una advertencia sobre una posible inserción accidental del código, dando lugar a que se pueda guardar de todas formas, mientras que el 18 directamente impedía la edición. Ahora no recuerdo qué falso positivo pudo justificar el filtro 78 ni sé en qué momento cambiaron el 18 para que no impida la edición. Creé el 78 después de revisar las contribuciones de Panderine! (disc. · contr. · bloq.) y comprobar que todas las inserciones eran de autoconfirmados que no se veían afectados por el filtro 18. --Metrónomo's truth of the day: «persevera y triunfarás» 04:54 20 ago 2017 (UTC)
El filtro 18 no impide la edición desde 2010, antes de que crearas el 78 en 2013. Si bien es cierto que la descripción del 18 hace pensar que bloquea la edición. Platonides (discusión) 21:57 12 sep 2019 (UTC)

Aumentar estrictidad de filtro que evita eliminación de plantillas de mantenimiento críticoEditar

Asunto

Debería modificarse el filtro 17 para que evite que se oculten las plantillas de mantenimiento crítico, ya sea con <!-- o <includeonly>.

Usuario que lo solicita

--SRuizR Flag of Costa Rica.svg ¡Para servirles!Farm-Fresh email edit.png 18:21 21 jun 2019 (UTC)

Comentario

Para evitar que se oculten las plantillas de mantenimiento crítico, podría configurarse algo así:

|
(
    plantillas:="{{(autotrad|artículoinfraesbozo|autopromoción|avisoborrar|bloqueopermanente|borrar|cdb|contextualizar|copyright|copyvio|cuenta remunerada|d|db|delete|destruir|eliminar|fp|fuenteprimaria|huggle|infraesbozo|irrelevante|plagio|posiblecopyvio|promocional|propb|propbfecha|reducido|robotdestruir|sinrelevancia|speedy|sra|t[íi]tere|traducciónautomática|traducciónincomprensible|usuarioexpulsado|usuariotítere)[|}/}/]";
    ocultar:="(<!--|<nowiki>|<includeonly>)";
    (  
    (lcase(rmwhitespace(added_lines)) rlike plantillas)
    &
    (lcase(rmwhitespace(added_lines)) rlike ocultar)
    )
  )

Saludos.--SRuizR ¡Pura vida! 06:44 29 jun 2020 (UTC)

comentario Comentario: advierto de la enorme posibilidad de falsos positivos, por ejemplo al tratar de escribir <nowiki>{{destruir}}</nowiki> como parte de una explicación. -- Leoncastro (discusión) 13:27 29 jun 2020 (UTC)
Ok, entonces talvez podría añadirse
& (lcase(rmwhitespace(removed_lines)) rlike plantillas)
--SRuizR ¡Pura vida! 20:30 29 jun 2020 (UTC)
Aunque esto que puse tiene un problema también, pues si alguien pone explicaciones y olvida poner el nowiki, al ponerlo salta un falso positivo.--SRuizR ¡Pura vida! 20:44 29 jun 2020 (UTC)
Retiro lo del nowiki por los motivos expuestos arriba. Quedaría así entonces:
|
(
    plantillas:="{{(autotrad|artículoinfraesbozo|autopromoción|avisoborrar|bloqueopermanente|borrar|cdb|contextualizar|copyright|copyvio|cuenta remunerada|d|db|delete|destruir|eliminar|fp|fuenteprimaria|huggle|infraesbozo|irrelevante|plagio|posiblecopyvio|promocional|propb|propbfecha|reducido|robotdestruir|sinrelevancia|speedy|sra|t[íi]tere|traducciónautomática|traducciónincomprensible|usuarioexpulsado|usuariotítere)[|}/}/]";
    ocultar:="<!--|<includeonly>";
    (  
    (lcase(rmwhitespace(added_lines)) rlike plantillas)
    &
    (lcase(rmwhitespace(added_lines)) rlike ocultar)
    )
  )
¿Algún otro problema? Saludos.--SRuizR ¡Pura vida! 04:37 9 jul 2020 (UTC)
SRuizR, el mismo problema. Como parte de una explicación se podría usar el nowiki como he explicado anteriormente, o también se podría usar <pre> o <syntaxhighlight> con cualquiera de las otras etiquetas <!-- o <includeonly> agregadas. -- Leoncastro (discusión) 11:08 9 jul 2020 (UTC)
@Leoncastro: ¿Se utiliza <!-- e <includeonly> en explicaciones? — El comentario anterior sin firmar es obra de SRuizR (disc.contribsbloq). 11:30 9 jul 2020 (UTC)
@SRuizR, por ejemplo, «la plantilla {{Ficha de edificio}} fue sustituida por:
<includeonly>
{{#invoke:Ficha de edificio|Ficha}}
</inludeonly>
<noinclude>
{{Documentación}}
</noinclude>
Pero eso fue discutido en el Café porque todavía se realizan pruebas en el módulo, y hasta que no se complete será mejor no modificarla de nuevo. Además, será mejor evitar los saltos de línea entre las etiquetas para no generar espacios vacíos innecesarios». ¿Te sirve como ejemplo? -- Leoncastro (discusión) 12:03 9 jul 2020 (UTC)
Más ejemplos:
«Para evitar los espacios generados por saltos de línea se pueden simplemente eliminar en la propia plantilla, quedando:
<includeonly>{{#invoke:Ficha de edificio|Ficha}}</inludeonly><noinclude>
{{Documentación}}
</noinclude>
Para plantillas más complejas, donde los saltos ayudaban a diferenciar los niveles de inclusión mediante sangrados, se pueden encapsular estos saltos mediante comentarios, de la forma siguiente:
<!--
--><includeonly><!--
  -->{{#invoke:Ficha de edificio|Ficha}}<!--
--></inludeonly><!--
--><noinclude>
{{Documentación}}
</noinclude>
De esa forma se pueden generar diferentes sangrados —como se remarca en la línea amarilla— sin que ello afecte al resultado final de la plantilla». -- Leoncastro (discusión) 12:10 9 jul 2020 (UTC)
No entiendo. ¿tiene esto que ver con las plantillas de mantenimiento crítico?--SRuizR ¡Pura vida! 12:13 9 jul 2020 (UTC)
Sí, SRuizR, te he puesto un ejemplo real donde se explica y se usan las etiquetas en apenas cuatro breves líneas. Cambia ahora el ejemplo y en lugar de hablar del caso real de la Ficha de edificio, pon que quiera hablar de algún supuesto problema usando {{autotrad}}, {{destruir}}, {{plagio}}, etc. Si en lugar del invoke necesito mencionar {{autotrad}}, ya no podría hacerlo. Y ese es el principal problema de esta propuesta: no se está diferenciando cuando se trata de poner o quitar la plantilla, sino que simplemente se detecta cuando se menciona, incluso cuando no se trata de usar la plantilla sino solamente se trata de escribir el código para usarla. -- Leoncastro (discusión) 12:26 9 jul 2020 (UTC)
Respuesta

(A rellenar por un bibliotecario)

Vandalismos tipo "No confíen en Wikipedia"Editar

Asunto

Me preguntaba si sería posible implementar un filtro que impida que un usuario vandalice un artículo poniendo frases como "No confíen en Wikipedia", "Wikipedia no es confiable" "Wikipedia la puede editar cualquiera", "No le hagan caso a esto", "Es una mala fuente", et cetera. Saludos.

Usuario que lo solicita

SRuizR ¡Pura vida! 18:24 29 sep 2019 (UTC)

Respuesta

(A rellenar por un bibliotecario)

Votos nulosEditar

Asunto

Hola, creo que se podría implementar un filtro que impida que los usuarios sin derecho a voto puedan votar en páginas de votación como CABs, RECABs, Votaciones estándar, VECADs, CADs, etc. Saludos.

Usuario que lo solicita

SRuizR ¡Pura vida! 01:17 8 nov 2019 (UTC)

Comentario

Hice una base para hacer el filtro, aunque hay un error, ya que la variable votaciones no está funcionando. No sé si alguien sabe cómo hacer que funcione.

firma:="~~~|\[\[(_|\s)*user((_|\s)talk)?:|\[\[(_|\s)*usuario((_|\s)discusión)?:|\[\[(_|\s)*{{(subst:)?ns:[23]}}:";
votaciones:="Votaciones|Candidaturas a bibliotecario|Revalidación de bibliotecarios|Checkusers/Candidaturas|Supresores/Votación|Candidatos a artículos destacados";

((page_namespace == 4) & (votaciones in page_title))
& ! ((user_editcount >= 500) & (user_age >= 15778800))
& (action == 'edit')
& (
 rcount(firma, lcase(added_lines)) > rcount(firma, lcase(removed_lines))
)

Igual no se filtrarían a los usuarios que tengan más de 500 ediciones pero menos de 500 en espacio principal y anexo, pero esos se pueden anular manualmente y el trabajo sería menor. Saludos.--SRuizR ¡Pura vida! 08:00 29 jun 2020 (UTC)

Hay por ahí alguna barra '/' que necesita "escaparse".--Xana (discusión) 12:35 29 jun 2020 (UTC)
comentario Comentario: que un usuario no tenga derecho a voto no significa que se le pueda impedir la edición, por ejemplo para corregir algún error en una votación. -- Leoncastro (discusión) 13:21 29 jun 2020 (UTC)
@Leoncastro: Pero no se le impide la edición, se le impide firmar. ¿Ese código estaría impidiendo la edición?--SRuizR ¡Pura vida! 20:24 29 jun 2020 (UTC)
@SRuizR, se impide, por ejemplo, si trata de agregar {{sust:Votonulo|SRuizR|~~~~}}. -- Leoncastro (discusión) 21:13 29 jun 2020 (UTC)
Ok, entonces se podría agregar esto:
& (
 plantilla:="\{\{(subst:)?(votonulo|voto nulo|votonulo2).*?(" + firma + ").*?}}";
 rcount(plantilla, lcase(added_lines)) == rcount(plantilla, lcase(removed_lines))
)
@Leoncastro: ¿Se está impidiendo algo más?--SRuizR ¡Pura vida! 22:33 29 jun 2020 (UTC)
SRuizR, por ejemplo el candidato a una CAB no tiene que cumplir el derecho a voto, y sin embargo no va a poder ni siquiera postularse porque necesita cubrir la tabla con su candidatura; y como contiene un enlace a usuario no va a poder hacerlo. Me temo que tampoco va a poder editar ninguna línea de texto donde figure una firma de usuario (con enlace al usuario), aunque esa edición sea —como ya he mencionado anteriormente— para corregir algún error. Un error que puede ser simplemente una etiqueta de cierre faltante. No creo que agregar una condición para cada caso particular sea una solución efectiva, pues en conjunto la propuesta puede causar más perjuicio que beneficio. Repito que, aunque un usuario no tenga derecho a voto no significa que se le pueda impedir la edición. Y me temo que lo plantees como lo plantees, no se puede diferenciar fácilmente un voto de cualquier otro tipo de edición. -- Leoncastro (discusión) 22:53 29 jun 2020 (UTC)

┌─────────────┘
Retiro mi propuesta. Concuerdo con Leoncastro. Por ahora esto no. Aún así, XanaG me gustaría saber a qué te refieres con la barra que necesita escaparse, pues me interesa aprender sobre los filtros.--SRuizR ¡Pura vida! 06:19 30 jun 2020 (UTC)

Con permiso, si te sirve te respondo yo mismo SRuizR. Al igual que escapas el corchete \[ en la primera línea, o la llave \{ al inicio del parche, creo que también se deberían escapar las otras llaves (las del subst: y las de cierre) y —lo que recalca XanaG— las barras diagonales \/. En expresiones regulares hay que escaparlas, aunque no estoy seguro de si es obligatorio hacerlo en este formato especial para los filtros. Por precaución, mejor incluirlo. PD: por cierto, es mejor usar sub?st:, para que acepte tanto subst: como sust:. -- Leoncastro (discusión) 11:33 30 jun 2020 (UTC)
Creo que en el caso de las variables que define el usuario el texto entre comillas se interpreta siempre como una expresión regular; pero hay algunas variables predeterminadas donde se trata como texto y no hacen falta escapes. Caveat: no he mirado la documentación. --Xana (discusión) 18:37 30 jun 2020 (UTC)
Ah ok. Gracias.--SRuizR ¡Pura vida! 04:39 9 jul 2020 (UTC)
Respuesta

Firmo para que se archive.--Xana (discusión) 18:37 30 jun 2020 (UTC)

Filtro 109Editar

Asunto

No sé porque se desactivó lo de no permitir. Han habido problemas desde entonces ya que las alteraciones no se están evitando. [4] [5]

Usuario que lo solicita

SRuizR ¡Pura vida! 02:55 19 feb 2020 (UTC)

Comentarios
Se limitó por falsos positivos. ¿Tienes una idea de cuántos falsos positivos da respecto al número de detecciones? (sí, hay que hacer un poco de investigación laboriosa :-) .--Xana (discusión) 12:18 21 mar 2020 (UTC)
Entiendo, pues hay que ver que hacemos al respecto, pues es un filtro importante.--SRuizR ¡Pura vida! 17:54 31 mar 2020 (UTC)
@SRuizR: Mi pregunta no era retórica (aunque al verla de nuevo, me parece que se puede entender así). Si una inmensa mayoría de las detecciones del filtro son acertadas se puede argumentar que se admisible frustrar a un puñado de usuarios a los que se impide una edición válida. Pero si el número de falsos positivos es alto, hay que replantearse si los beneficios superan a los daños. El caso es que no lo sé. Si alguien puede mirar las detecciones del filtro y dividirlas entre legítimas y legítimas , tendremos una mejor base para tomar un decisión. --Xana (discusión) 18:07 31 mar 2020 (UTC)
@XanaG: Mientras tanto, se podría activar la acción de advertir. Ya adapté la plantilla del filtro para poner la advertencia.
Saludos.--SRuizR ¡Pura vida! 22:05 31 may 2020 (UTC)
✓ Hecho --Xana (discusión) 18:21 2 jun 2020 (UTC)
Respuesta

(a rellenar por un bibliotecario)

Prohibición de utilizar ciertas plantillasEditar

Asunto

Revisando plantillas que no se utilizan estoy viendo que son muchas las plantillas que se traen de otros idiomas y no se adaptan a eswiki. En la mayoría de los casos estos artículos están mal traducidos, no siguen la estructura básica del artículo, etc. ¿Se podrían filtrar ciertas plantillas de este tipo? Gracias y un saludo.

Usuario que lo solicita

vanbasten_23 (discusión) 16:38 10 abr 2020 (UTC)

Respuesta

(a rellenar por un bibliotecario)

No firmar en páginas de discusiónEditar

Asunto

Pienso que se podría crear un filtro que avisara y etiquetara cuando no se firma en una discusión. He crado un prototipo basándose en el filtro "Sin wikificar" (o otro nombre similar), que detecta si no se ponen [[, {{, <ref, etc. y pone una etiqueta. Quizás tiene algún fallo.

Caption text
Código Para que sirve
& (article_namespace == 1 | article_namespace == 3 | article_namespace == 5 | article_namespace == 7 | article_namespace == 9 | article_namespace == 11 | article_namespace == 13 | article_namespace == 15 | article_namespace == 101 | article_namespace == 103 | article_namespace == 105 | article_namespace == 829 | article_namespace == 2301 | article_namespace == 2303)
(Solo las páginas de discusión, es decir, Usuario Discusión, Plantilla Discusión, etc.) Los identificadores de tipo de página están en Ayuda:Espacios de nombres
& !(contains_any(added_lines, "~~~"))
(Esto hace que el filtro salte si no se firma, si pongo solo ~~~ se incluye ~~~~.)
& (
  plantilla:="\{\{(subst:)?(Ayuda en el café|Discusión protegida|Discusión sosegada|Encabezado discusión|Fuenteinternet|Música japonesa|No es un foro|Precarga|Respuesta|Separado de|Traducción revisada|Traducido de|Trasladar tema|Visitas|PR|Metaplantilla de avisos|Polémico|Sugerencias discusión|Discusión|Archivado automático|Archivo|Archivo programado|No archivar|No archivar hasta|Cdbpasada|No está censurada|Respuesta usuario|BPV).*?}}";
 rcount(plantilla, lcase(added_lines)) == rcount(plantilla, lcase(removed_lines))
)
( Si se incluye una de estas plantillas que se ponen sin firmar (quizás falta alguna) y no se firma no se debería activar)
@Leoncastro: No había pensado en ello, visto así, tiene algo de lógica que no se implementara antes. Aún así, me refería a que avisara y no a que te impidiera hacerlo, aunque claro, quizás es un poco molesto. (: Usuario Sin Identidad (discusión) 19:24 26 jun 2020 (UTC)
Usuario que lo solicita

Usuario Sin Identidad (discusión) 18:30 26 jun 2020 (UTC)

Respuesta

(a rellenar por un bibliotecario)