Skip to content
This repository has been archived by the owner on Sep 8, 2024. It is now read-only.

v6.0.0

Latest
Compare
Choose a tag to compare
@danirod danirod released this 08 Sep 17:21

Esta es la última actualización de este bot. El bot estaba siendo reescrito desde cero, pero había demasiado código que migrar, lo que provocaba que la migración se estuviese yendo de scope. Esta actualización elimina mucho código y funciones que ya no se usan para reducir la cantidad de historias de usuario que hay que adaptar. El servidor de Discord está obsoleto, pero sin embargo la reescritura continuará, ya que quitarse de encima el runtime de NodeJS supone una mejora ecológica.

Esta actualización introduce los siguientes cambios de QoL:

  • Cambios en el sistema de moderación:
    • El sistema de modlog ahora es pasivo. Eso significa que el bot ya no puede aplicar acciones de moderación. En su lugar, hay que usar las funciones de Expulsar, Banear y Limitar que ofrece Discord. El bot seguirá reaccionando a estos eventos para mostrar información sobre un baneo, expulsión o limitación en los modlogs.
    • Se ha eliminado el comando /mod. En su lugar hay que usar los comandos nativos de Discord /ban, /timeout y /kick.
    • Moderación ya no puede usar el menú "Aplicar o pedir moderación" para moderar un mensaje. En su lugar hay que usar los menús nativos de Discord para banear, expulsar o limitar. La interacción "Aplicar o pedir moderación" ahora se llama "Avisar a moderación" para reflejar que este menú ya solamente sirve para reportar de forma interna un mensaje.
    • La interacción "Avisar a moderación" ahora utiliza un modal de texto libre, de modo que en vez de elegir el problema del mensaje de una lista, ahora se puede escribir qué problema tiene de forma precisa y enviar el reporte.
  • Cambios en el sistema de interacciones:
    • Se ha eliminado la capacidad del bot de responder a comandos o interacciones enviados por DM, debido a que Discord ya no permite estas interacciones por defecto.
    • Se ha eliminado el comando /roles, puesto que Discord ya tiene un gestor de roles nativo.
    • Se han eliminado otros comandos obsoletos, como /enunciado o /buenaspreguntas.
    • Se ha eliminado el código de botones que ya habían sido quitados del servidor, como el botón Loot, Roles o Karma.
    • Se ha arreglado el comando /makigas cuando se buscaban mensajes en el foro, debido a que la URL del foro había cambiado.
  • Cambios en el sistema de servicios inyectables (hooks):
    • Se ha eliminado el hook "quote", lo que significa que mandar un mensaje con una URL a otro mensaje de Discord no tratará de resolverlo y de agregar una cita.
    • El hook "delete" ahora tiene en cuenta si un mensaje tenía adjuntos o no antes de decidir que un mensaje era parcial.
    • Se ha eliminado la capacidad del bot de premoderar mensajes. Ningún servicio seguía usando esta función debido a que Discord ya integra un automod.
    • Se ha eliminado la capacidad de un servicio de reiniciarse. Ningún servicio continuaba usando esta función.
  • Cambios en el sistema karma:
    • La actualización de niveles tras enviar un mensaje ahora lleva un debouncer para no comprobarlo tan seguido si la cuenta manda múltiples mensajes en un breve periodo de tiempo.
    • Ya no se tienen en cuenta los mensajes con antigüedad mayor a 1 año a la hora de medir el nivel de una cuenta, para evitar que cuentas abandonadas que corran el riesgo de ser capturadas por spambots puedan seguir teniendo un nivel de seguridad privilegiado.
  • Cambios en la stdlib del bot:
    • Las opciones del bot ya no están basadas en el esquema de datos del SettingProvider original de Commando, sino que usa un sistema de clave-valor normal más eficiente.
    • Las etiquetas de un TagBag ya no pueden tener TTL (no se estaba usando esa función en ninguna parte del código).
  • Cambios en el tooling:
    • Se ha actualizado a TypeScript 5.5, NodeJS 20 y DiscordJS 13.17.
    • El bot ahora se compila con el modo estricto de TypeScript activado.