Wikipedia:Filtro de ediciones

Logo de la herramienta
Logo de la herramienta

El filtro de ediciones es una herramienta utilizada para permitir a bibliotecarios y administradores de filtros activar determinados controles sobre patrones de edición que generan a su vez determinadas reacciones.

La extensión del filtro de ediciones fue desarrollada por Werdna con ayuda de la Fundación Wikimedia. Se instauró en la Wikipedia en inglés en marzo de 2009 y en la versión en español en abril de 2010.

La extensión permite aplicar filtros automáticos / heurística a todas las ediciones con cantidad de parámetros configurables. Por ejemplo, "a los usuarios con menos de 500 ediciones se les impide trasladar páginas a títulos que incluyan la palabra /tonto/". Si bien, las reglas pueden ser de mucha más complejidad.

Las entradas de los registros están disponibles para todos los usuarios, y aunque los filtros son de acceso público por defecto, pueden ocultarse. Para todos los filtros, tanto los públicos como los privados, hay un resumen de acceso público donde se describe el propósito del filtro, la lista de todos los filtros activos y los posibles mensajes de error generados por el filtro.

La implementación del filtro de ediciones en Wikipedia se hace con mucha precaución, verificándose los mismos antes de su implementación (en modo de registro) antes de que sean activados (modo de advertir, impedir o frecuencia). Solo los bibliotecarios y administradores de filtros pueden realizar cambios en los filtros.

Documentación de la extensión

Criterios de filtrado

Para todos los criterios que se detallan es posible aplicar una normalización extensiva, comparación de expresiones regulares, comparación de longitud y comparaciones regulares ("menor que", "mayor que", "igual a") combinando diferentes filtros con tipos de datos lógicos.

Usuario

  • Cantidad de ediciones;
  • Antigüedad de la cuenta;
  • Permisos;
  • Estado confirmado por correo.
Nombre de la variable Valor
user_editcount Cantidad de ediciones que ha efectuado el usuario hasta el momento, no se incrementa para las ediciones de IP
user_name Nombre del usuario. En el caso de un cuenta nueva, se utiliza en su lugar accountname.
user_age Edad de una cuenta de usuario en segundos, es siempre 0 para las IP.
user_groups Lista de los grupos a los que pertenece el usuario, las IPs solo pertenecen al grupo "*" (grupo al que pertenecen todos los usuarios), los registrados pueden ser "user", "bot" y "autoconfirmed", ver la lista completa aquí.
user_emailconfirm Sello temporal con el formato AAAAMMDDHHMMSS, Ejemplo „20100531135959“.

Títulos (incluyendo traslados a y desde)

Nombre de la variable Valor
page_namespace Número del espacio de nombres, en el que se efectúa la edición, por ejemplo 0 es el espacio de artículos y 14 el de anexos (ver lista).
page_prefixedtitle
page_title
Título de la página con y sin prefijo del espacio de nombres. Es idéntico en el caso del espacio de artículos.
page_restrictions_edit
page_restrictions_move
Artículo con restricción para su edición y para su traslado, respectivamente.

Acciones

  • Tipo de acción (editar, trasladar o crear cuenta);
  • Resumen de edición;
  • Contenidos de la edición.
Nombre de la variable Valor
action Acción que efectúa el usuario, por ejemplo "edit" o "createaccount".
summary Resumen de edición
old_size
new_size
edit_delta
Tamaño en bytes antes y después de la edición, así como el cambio (delta) del tamaño (positivo si se aumenta el tamaño del artículo y negativo si disminuye).
old_wikitext
new_wikitext
Contenido (wikitexto) antes y después de la edición.
added_lines
removed_lines
Líneas de texto que se añadieron o se borraron, al igual que un diff.
minor_edit La edición se marca como menor.
all_links
old_links
Cantidad de enlaces externos antes y después de la edición.

Flujo

La función de flujo solo disparará un filtro si se alcanzan una determinada cantidad de ediciones patrón en un tiempo determinado. Los parámetros configurables son los siguientes:

  • Cantidad de acciones permitidas antes de que se dispare un filtro
  • Período de tiempo en el que se ha de dar la cantidad de acciones prefijada
  • Reglas para el flujo que describen, en qué medida las ediciones han de asemejarse para que se contabilicen.
    • page: Todas las ediciones se realizan en la misma página.
    • user: Todas las ediciones se realizan con la misma cuenta.
    • ip: Todas las ediciones se realizan desde la misma IP, pudiendo efectuarse desde diferentes cuentas o desde la misma IP sin registrarse.
    • range: Todas las ediciones han de realizarse en el mismo rango /16 de IP.
    • creationdate: Todas las ediciones se realizan con cuentas de usuarios creadas el mismo día.

Estas cinco opciones se pueden separar entre comas para combinarlas en una única regla. Por ejemplo, se pueden agrupar todas las cuentas creadas el mismo día, desde un rango determinado de IPs para realizar tomar una medida determinada. Es posible incluir varias reglas, que se separan con una nueva línea.

Cualquier acción que se aplica a un filtro únicamente ocurrirá si el limitador de flujo es disparado. Esto reduce la cantidad de falsos positivos aplicando los filtros solo si el mismo usuario está disparando el mismo filtro, en lugar de un único falso positivo.

Operadores

Para comparar variables con cadenas de símbolos y con valores, se dispone de los siguientes operadores:

Operador Ejemplo Significado
==
!=
article_namespace == 0 Igualdad o desigualdad de un valor o una cadena de símbolos por comparar.
:= frasespam:="somos una empresa que ofrece" Sustitución
<   <=
>   >=
article_namespace >= 0 Comparaciones aritméticas
in 'autoconfirmed' in user_groups
"Zona de pruebas" in article_text
Comprueba si un elemento pertenece a un conjunto (en los ejemplos grupos de usuarios y título del artículo).
contains user_name contains "Vándalo" Comprueba si la cadena de símbolos que se declara está incluida en la variable.
like user_name like "ab?d*" Comparación de una variable con un modelo, ? sustituye a un (único) símbolo cualquiera, * sustituye a una cantidad indeterminada.
rlike user_name rlike "^ab.d.*$" Idéntico a like, pero en lugar de un modelo sencillo, se incluye una expresión regular. Es importante tener en cuenta que las máscaras se deben duplicar, por ejemplo, \\d en lugar de \d.

Funciones adicionales

Existen algunas funciones adicionales con las que se pueden cambiar las variables para su comparación de forma más simple. Se ejecutan con el formato NombreFunción(arg1,arg2,arg3), y pueden utilizarse en lugar de cualquier literal o variable. Sus argumentos pueden ser literales, variables o incluso otras funciones.

Función Ejemplo Significado
length length("test") → 4 Longitud de la lista de símbolos que se declara
lcase lcase("VÁNdalo") → "vándalo" Transforma todas las letras de una cadena de símbolos en minúsculas
count count("t", "test") → 2 Cuenta cuantas veces se repite la primera cadena de símbolos en el seg, en la segunda, en el ejemplo, cuantas "t" hay en "test".
norm norm("!!ω..ɨ..ƙ..ɩ..ᑭᑭ..Ɛ.Ɖ@@l%%α!!") → "W1K1PED1A" Transforma símbolos ópticamente similares en una representación común (en el ejemplo „ɨ“, „ɩ“ y „l“ por „1“), los símbolos especiales y los duplicados son ignorados.
ccnorm Normaliza caracteres similares o confusos en el argumento y devuelve la forma canónica.
rmdoubles rmdoubles("hoola") → hola Elimina los caracteres repetidos en un argumento y devuelve el resultado.
rmwhitespace rmwhitespace("hola amigo") → holaamigo Elimina los espacios vacíos (barra espaciadora, tabular, línea nueva).
specialratio specialratio(.No.) → 0.5 Devuelve el número de caracteres no alfanuméricos dividido por el número total de caracteres del primer argumento.
rmspecials rmspecials("hola&%$amigo") → holaamigo Elimina los caracteres especiales en el primer argumento, y devuelve el resultado.

Acciones que pueden realizarse como respuesta al disparo de los filtros

Si un usuario provoca el disparo de un filtro, el filtro de ediciones puede realizar una de las siguientes actividades o sanciones:

  • Todas las acciones que causen el disparo de un filtro son registradas en una página especial.
  • La acción del usuario se puede etiquetar para su posterior análisis.
  • El usuario puede ser advertido de que su edición no es constructiva.
  • La edición del usuario puede impedirse.
  • La obtención de la condición de autoconfirmado del usuario puede retrasarse por 5 días.
  • La cuenta del usuario puede ser bloqueada de forma automática, al igual que todas las IPs que utilizó en los últimos 7 días.

Las siguientes acciones son posibles, pero no se han implementado en esta versión en español de Wikipedia :

  • El usuario puede perder de forma automática todos los permisos de los que dispone (ej. verificado, autoverificado o reversor).
  • El rango de IP /16 que esté utilizando el usuario puede ser bloqueado de forma automática.

Nota: Que no se efectúen estos tipos de sanciones de forma automática no implica que no se hagan de forma manual. Igualmente, una sanción automática puede revertirse de forma manual.

Monitoreo

Todas las ediciones que disparan un filtro son registradas en Especial:RegistroAbusos. En la página especial se introduce una breve entrada. Los usuarios con ciertos privilegios pueden revisar ese registro y los bibliotecarios pueden revisar los detalles de cada entrada, incluyendo toda la información disponible sobre el filtro en el momento de su disparo, lo que puede ser de ayuda para determinar problemas con el filtro. Los bibliotecarios también pueden ver y editar los datos ocultos que causaron el disparo del filtro, al igual que la dirección de la IP. Véase la documentación detallada (en inglés) para más información sobre la estructura de los permisos.

Ejemplo de entradas en el registro

  1. 10:39 16 may 2010: Sssghfhhgh (discusión) disparó un filtro de edición realizando la acción "edit" en Danza del vientre. Acciones tomadas: Advertir; Descripción del filtro: Usuario nuevo blanqueando artículos
  2. 10:32 16 may 2010: 93.156.176.18 (discusión | bloquear) disparó un filtro de edición realizando la acción "edit" en Frédéric Chopin. Acciones tomadas: No permitir; Descripción del filtro: Vandalismo: obscenidades
  3. 10:23 16 may 2010: 77.4.39.81 (discusión) disparó un filtro de edición realizando la acción "edit" en Anexo:Puentes más altos del mundo. Acciones tomadas: No permitir; Descripción del filtro: Cuenta reciente retirando o colocando plantillas de mantenimiento críticas

Ejemplo de entradas detalladas en el registro

 
Ejemplo de un registro del filtro de detallado.
  1. 10:39 16 may 2010: Sssghfhhgh (discusión | bloquear) disparó filtro 13 realizando la acción "edit" en Danza del vientre. Acciones tomadas: Advertir; Descripción del filtro: Usuario nuevo blanqueando artículos (detalles | examinar)
  2. 10:32 16 may 2010: 93.156.176.18 (discusión | bloquear) disparó filtro 1 realizando la acción "edit" en Frédéric Chopin. Acciones tomadas: No permitir; Descripción del filtro: Vandalismo: obscenidades (detalles | examinar)
  3. 10:23 16 may 2010: 77.4.39.81 (discusión) disparó filtro 17 realizando la acción "edit" en Anexo:Puentes más altos del mundo. Acciones tomadas: No permitir; Descripción del filtro: Cuenta reciente retirando o colocando plantillas de mantenimiento críticas (detalles | examinar)

Salvaguardas

Para proteger a Wikipedia de filtros que no se hayan configurado de forma correcta, hay un límite técnico sobre el porcentaje máximo de acciones que dispararán un filtro concreto.

Notificación

Todas las notificaciones se basan en la plantilla {{Aviso del filtro de ediciones}}.

Notificaciones estándar que se muestran a un usuario que dispara un filtro con "acción":

Nombre del mensaje Texto del mensaje
abusefilter-disallowed
abusefilter-degrouped Esta edición se identificó automáticamente como incorrecta.

Es posible que tu cuenta haya sido comprometida y hemos revocado todos tus permisos. Si crees que esto es un error, ponte en contacto con un burócrata y explícale la situación; así, se podrían restaurar tus permisos. Una breve descripción de la regla antiabusos que coincide con la acción es: $1

abusefilter-autopromote-blocked Esta edición ha sido identificada automáticamente como incorrecta y ha sido cancelada.

Además, como medida de seguridad,te han sido revocados temporalmente algunos permisos de usuario que se otorgan automáticamente a cuentas de usuario que contribuyen regularmente en el proyecto. Una breve explicación acerca de la regla del filtro antiabusos que se ha disparado con tu acción es: $1

Mensaje de Aviso genérico, se recomienda el uso de avisos configurados.

Nombre del mensaje Texto del mensaje
abusefilter-warning

Algunos filtros existentes y sus avisos correspondientes:

Filtro y mensaje Texto del mensaje
8: Pruebas de edición

Pruebas de edición

13: Blanqueos

Blanqueos

17: Cuenta reciente retirando plantillas de mantenimiento críticas

Plantillas de mantenimiento

Si un filtro se configura para avisar y deshabilitar, entonces el usuario que haga clic en "Grabar la página" verá de forma alternativa el aviso y el mensaje estándar de deshabilitación.

Sugerencias o problemas

Para hacer sugerencias sobre cómo mejorar los filtros actuales o sobre la inclusión de filtros nuevos, o bien reportar problemas con algún filtro (ej. falsos positivos) puedes servirte de esta página.

Detalles técnicos

Los detalles técnicos sobre la implementación se encuentran aquí.

Véase también