Wikipedia:Filtro de ediciones
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 espacio;
- Títulos;
- Texto completo;
- Estado de restricciones y protecciones.
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
|
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
|
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
|
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
|
Contenido (wikitexto) antes y después de la edición. |
added_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
|
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
- 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
- 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
- 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
- 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)
- 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)
- 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
|
Atención: Se ha activado un filtro que detectó esta edición como incorrecta y por lo tanto, no se ha grabado. Una breve explicación acerca de por qué se ha deshabilitado la acción es: $1 Gracias por tu comprensión y colaboración. Si recibiste este mensaje de forma errónea, pulsa aquí y sigue las instrucciones para notificarlo. |
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
|
Atención: Se ha activado un filtro que detectó esta edición como incorrecta. Las ediciones no constructivas son rápidamente revertidas y repetir dichas acciones podría tener como consecuencia que tu cuenta o acceso a Wikipedia sean bloqueados. También es posible que el sistema haya detectado de forma errónea una edición positiva. Si es así, pulsa de nuevo el botón de Publicar cambios para confirmar el cambio. Una breve explicación acerca de por qué se ha deshabilitado la acción es: $1 Gracias por tu comprensión y colaboración. Si recibiste este mensaje de forma errónea, pulsa aquí y sigue las instrucciones para notificarlo. |
Algunos filtros existentes y sus avisos correspondientes:
Filtro y mensaje | Texto del mensaje |
---|---|
8: Pruebas de edición |
Atención: Se ha activado un filtro que detecta posibles ediciones vandálicas. Debes saber que, si esta lo fuese, podría suponer el bloqueo de tu cuenta o acceso a Internet, que impediría que pudieras continuar editando. Si estás seguro que esta edición es correcta, ve a la parte inferior de la página, y haz clic en Publicar cambios una vez más. Gracias por tu comprensión y colaboración. Para más detalles acerca de este filtro, consulta «Especial:FiltroAntiAbusos/8». Si recibiste este mensaje de forma errónea, pulsa aquí y sigue las instrucciones para notificarlo. |
13: Blanqueos |
Atención: Se ha activado un filtro que detecta posibles ediciones vandálicas. Debes saber que, si eliminas contenido enciclopédico arbitrariamente, otros editores deben perder tiempo en revertir las ediciones, y perjudicas a los lectores que desean consultar los artículos. Si esta fuese una edición vandálica, podría suponer el bloqueo de tu cuenta o acceso a Internet, que impediría que pudieras continuar editando. Gracias por tu comprensión y colaboración. Para más detalles acerca de este filtro, consulta «Especial:FiltroAntiAbusos/13». Si recibiste este mensaje de forma errónea, pulsa aquí y sigue las instrucciones para notificarlo. |
17: Cuenta reciente retirando plantillas de mantenimiento críticas |
Atención: Se ha activado un filtro que impide que los usuarios no registrados o con cuentas creadas muy recientemente retiren o modifiquen plantillas de mantenimiento. Para poder colaborar en tareas de mantenimiento debes ser un usuario confirmado. Gracias por tu comprensión y colaboración. Para más detalles acerca de este filtro, consulta «Especial:FiltroAntiAbusos/17». Si recibiste este mensaje de forma errónea, pulsa aquí y sigue las instrucciones para notificarlo. |
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í.