Notas de la versión - v0.45.0
v0.45.0
Sección titulada «v0.45.0»Título: Notificaciones sin interfaz, actualizaciones de bandeja y mejoras operativas
Versión: v0.45.0
Comparar: v0.44.0…v0.45.0
Esta versión incorpora una integración de notificaciones sin interfaz, comprobaciones automáticas de actualizaciones de la bandeja, un comportamiento más claro para la configuración y los filtros, nombres de eventos estandarizados, documentación ampliada sobre arquitectura y gobernanza, una observabilidad más segura y una entrega de versiones más fiable.
✨ Aspectos destacados
Sección titulada «✨ Aspectos destacados»-
Añadió salida y validación de notificaciones sin interfaz: Adder ahora emite registros de estado y notificaciones NDJSON versionados mediante
notify-json. El comandoadder notifications validatecomprueba la configuración estricta y versionada de las notificaciones, la coherencia de chainsync y la configuración, mientras que el envío de notificaciones independiente de la interfaz proporciona detalles más específicos sobre los votos de gobernanza. -
Mejoró la gestión de actualizaciones de la bandeja: Adder ahora comprueba semanalmente las versiones de GitHub, recuerda las versiones omitidas y las preferencias de actualización, verifica las sumas de comprobación de los instaladores para macOS y Windows, y enlaza con la página de la versión en las plataformas no compatibles. La bandeja también muestra iconos y detalles de About corregidos, limpia las respuestas de WebSocket y mejora la activación del servicio de macOS.
-
Aclaró la precedencia de configuración y los guardados duraderos: Los valores de CLI prevalecen sobre los valores YAML, los valores YAML prevalecen sobre las variables de entorno y los valores predeterminados se aplican al final. Las opciones explícitas de CLI mantienen la autoridad, mientras que los guardados atómicos protegen la configuración durante las escrituras simultáneas.
-
Amplió la gestión del ciclo de vida de filtros y eventos: Adder ahora conecta un filtrado completo de tipos de eventos mediante la CLI, administra los ciclos de vida de los filtros de forma más segura y utiliza pruebas orientadas a condiciones de carrera con una configuración más segura de las goroutines.
-
Refinó la coincidencia de eventos de Cardano: Una lógica de coincidencia específica gestiona de forma segura la ausencia de credenciales de participación y encuentra los pools mediante procedimientos de votación SPO.
-
Habilitó notificaciones independientes de reversión de la cadena: La preferencia
Chain rollbacksy la casilla del asistente controlan las notificaciones de reversión por separado de las notificaciones deBlocks minted. -
Documentó la arquitectura de la aplicación: La nueva guía de arquitectura explica el flujo de procesamiento y el modelo de plugins, la precedencia de configuración, la concurrencia, el apagado y la integración con adder-tray.
-
Introdujo la monitorización de bandeja con múltiples objetivos: Adder ahora monitoriza objetivos Wallet, DRep, Pool, Asset y Policy con limitación de velocidad, agrupación de solicitudes, alertas de conexión, distribución independiente de la interfaz y una configuración actualizada del asistente. Los valores
filter.cardanodeengine.yamly los valores heredadosTemplateyParamya no controlan la coincidencia de notificaciones; las reglas de coincidencia deben migrarse a la configuración de objetivos de la bandeja. -
Añadió la instalación de paquetes macOS firmados: Adder ahora genera instaladores
.pkgfirmados y notarizados para la CLI y la bandeja, con paquetes nativosarm64yamd64, scripts de instalación, verificación de Gatekeeper y objetivos de Makefile. La firma ad hoc opcional sigue disponible para compilaciones locales. -
Amplió la cobertura de webhooks y entrega: Las pruebas ahora cubren la entrega de webhooks, la serialización, los fallos, el ciclo de vida, el formato de Discord, la fábrica de la CLI y el comportamiento de los sinks.
-
Reforzó la fiabilidad de los webhooks: La salida de webhook ahora informa de errores cuando detecta tipos malformados de carga útil y contexto, en lugar de provocar un panic. Adder coordina de forma segura el inicio, el apagado y el ciclo de vida de los canales, e interrumpe las esperas de reintento durante el apagado.
-
Incorporó controles de acceso e inicio de la bandeja: El diálogo About de la bandeja ahora muestra metadatos de versión y commit, el paso 4 expone controles y estado de autoinicio, y los Login Items de macOS permanecen sincronizados. Los metadatos del paquete incluyen
VERSIONyCOMMIT_HASH, y un script de desinstalación permite purgar datos de forma opcional. -
Delimitó la guía de resolución de problemas: La nueva guía se centra en comprobaciones operativas compatibles para la configuración del entorno, la entrega mediante FCM y el comportamiento de los webhooks.
-
Extendió la publicación multi arquitectura: Los flujos de versión ahora publican manifiestos Docker con
docker buildx imagetools, limitan la persistencia de credenciales, gestionan de forma más segura el entorno de ejecución, desactivan la caché desetup-go, fijan MSYS2 y mejoran la finalización de las versiones.
⚠️ Compatibilidad de eventos
Sección titulada «⚠️ Compatibilidad de eventos»-
Estandarizó los nombres de eventos públicos: Los eventos de registro, actualización y retiro de DRep ahora usan
input.drep-registration,input.drep-updateyinput.drep-retirement. Los consumidores que coincidan con los nombres anterioreschainsync.drep.*deben actualizar sus filtros. -
Extendió la compatibilidad con Telegram Bot API 10.2: La integración de Telegram ahora incluye modelos de Bot API 10.2 y correcciones de serialización.
-
Actualizó la gestión de reintentos de Telegram: La integración de Telegram ahora respeta
retry_afterpara las respuestas HTTP 429 e incluye modelos de Bot API 10.3. -
Mejoró las cargas de mensajes enriquecidos de Telegram: El cliente de bot ahora gestiona adjuntos de mensajes enriquecidos y cargas de miniaturas, rechaza valores nil tipados y nombres
attach://duplicados de forma anticipada, y escapa correctamente el JSON. -
Optimizó la resistencia de Telegram en HTTP/2: Las solicitudes multipart ahora se almacenan en búfer para reintentos tras
GOAWAYde HTTP/2, se suprimen los cuerpos multipart vacíos y se gestionan las variantes de actualización desconocidas. El almacenamiento en búfer multipart puede aumentar el uso de memoria durante las cargas. -
Reforzó la compatibilidad con gouroboros v0.204.1: La decodificación y la profundidad de los metadatos, el comportamiento de apagado y la validación del protocolo funcionan ahora de forma más fiable. Cambió el comportamiento de los depósitos DRep y las interfaces
localstatequeryahora usan tipos estrictos; las integraciones que utilizan estas áreas deben actualizarse. -
Refinó la validación de gouroboros v0.202.8: La validación del ledger y de los pools de participación de Shelley gestiona ahora los datos de protocolo compatibles con mayor precisión.
-
Endureció el procesamiento de gouroboros v0.202.2: Las comprobaciones del ledger y de las cabeceras, la gestión de los trust anchors y el manejo del envío de transacciones malformadas ofrecen ahora protecciones más sólidas.
-
Amplió la validación de gouroboros v0.192.2: La decodificación y validación más estrictas, la gestión de KES y la validación de DMQ, gobernanza, recompensas,
MultiAssety mint mejoran la compatibilidad con el protocolo. -
Añadió compatibilidad de consultas en gouroboros v0.189.4: Las consultas de estado local de direcciones de participación funcionan con la compatibilidad actualizada para Leios, Conway y
GetCBOR. -
Corrigió la decodificación del ledger en gouroboros v0.186.3: Las entradas duplicadas del ledger ya no interrumpen la decodificación.
-
Solucionó el procesamiento del protocolo en gouroboros v0.186.1: El procesamiento de OpCert, redeemers de Dijkstra y modelos de costes utiliza ahora el comportamiento corregido.
💪 Mejoras
Sección titulada «💪 Mejoras»-
Reforzó la observabilidad operativa: Los campos estructurados y los registros específicos de cada componente facilitan la interpretación de los mensajes de inicio, chainsync, push, Telegram y webhook. Adder redacta los tokens FCM confidenciales y sanea las URL y las cargas de webhook.
-
Actualizó las bibliotecas de compatibilidad del sistema: Adder ahora utiliza
golang.org/x/sysv0.46.0. -
Renovó la automatización de lint: La acción
golangci-lintahora utiliza v9.3.0. -
Estabilizó la entrega de versiones etiquetadas: Los runners de macOS fijados, las compilaciones de matriz sin fail-fast, el empaquetado y la firma separados de macOS, y la finalización posterior a fallos parciales de compilación hacen más fiables las versiones etiquetadas.
-
Protegió la publicación de contenedores: La acción de inicio de sesión de Docker ahora utiliza v4.5.1 para publicar en Docker Hub y GitHub Container Registry.
-
Estableció directrices de documentación para colaboradores:
AGENTS.mdahora explica cómo escribir comentarios en línea significativos y comentarios de documentación precisos para identificadores exportados. -
Alineó la interoperabilidad con Cardano: Adder ahora utiliza
github.com/blinklabs-io/gouroborosv0.187.3, con correcciones de decodificación e interoperabilidad. -
Blindó las atestaciones de artefactos de versión: La acción de atestación ahora utiliza v4.2.1 para los artefactos de versión y las atestaciones de contenedores.
-
Actualizó la compatibilidad con la serialización de protocolos: Adder ahora utiliza
google.golang.org/protobufv1.36.12. -
Integró mejoras del protocolo Cardano: Adder ahora utiliza
gouroborosv0.193.0 yplutigov0.3.0, con verificación de firmas de delegación Byron, conservación de intervalos de validez, compatibilidad conGetAccountStatey la ruta de integración de Leios a Dijkstra. -
Añadió protecciones de validación de Plutus:
plutigov0.6.1 incorporaNormalize, árboles de análisis JSON acotados, validación BLS MSM, conservación de errores del evaluador y aislamiento del modelo de costes. -
Corrigió el manejo numérico de Plutus:
plutigov0.5.1 corrige la división en fragmentos de la magnitud de bignum. -
Reforzó el manejo de entradas malformadas:
plutigov0.1.16 yx/cryptov0.53.0 mejoran el manejo de entradas malformadas y el rendimiento de la evaluación. -
Endureció la validación de imágenes:
golang.org/x/imagev0.43.0 aplica una validación más estricta a datos TIFF, WebP, BMP y SFNT. -
Amplió la compatibilidad con el estado de cuentas de Cardano:
gouroborosv0.183.0 mejora la corrección de la validación y elimina la integración antigua de la era Leios,EnableLeiosEra, en favor de Dijkstra. -
Renovó las utilidades de prueba de Cardano: Adder ahora utiliza
ouroboros-mockv0.19.0. -
Aclaró el comportamiento del logger personalizado: El contexto del logger ahora se propaga de forma coherente y los writers inyectables permiten controlar mejor la salida. Las pruebas cubren la salida JSON y el filtrado por nivel de registro.
-
Incorporó compatibilidad con la biblioteca Plutus: Adder ahora utiliza
plutigov0.5.0. -
Actualizó las bibliotecas de imagen y sistema relacionadas: Adder ahora utiliza
golang.org/x/imagev0.45.0 junto con actualizaciones relacionadas degolang.org/x/*. -
Modernizó la compatibilidad con las bibliotecas del sistema: Adder ahora utiliza
golang.org/x/sysv0.47.0. -
Refrescó las dependencias de imagen y sistema: Adder ahora utiliza
golang.org/x/imagev0.46.0,golang.org/x/sysv0.48.0 y actualizaciones relacionadas degolang.org/x/*. -
Ajustó los artefactos de FreeBSD: Los artefactos de publicación de FreeBSD ya no incluyen
adder-tray.
🧪 Pruebas, CI, documentación y herramientas de versión
Sección titulada «🧪 Pruebas, CI, documentación y herramientas de versión»-
Modernizó la configuración del flujo de trabajo de Java: Las acciones de los flujos de trabajo de Java ahora utilizan
actions/setup-javav5.3.0. -
Renovó las bibliotecas de pruebas y YAML: Adder ahora utiliza testify v1.12.1 y yaml.v3 indirecto v3.0.5.
-
Simplificó el análisis de opciones de plugins: Las opciones de plugins separadas por comas ahora ignoran los espacios circundantes; los analizadores de Cardano, eventos y chainsync gestionan de forma más coherente las listas con formato YAML y los puntos de intersección; y la directiva de Go ahora apunta a la versión
1.26.0. -
Amplió la documentación de gobernanza:
docs/governance.mdahora describe los eventos de gobernanza, mientras que los esquemas y ejemplos del README coinciden con las estructuras emitidas en tiempo de ejecución. -
Mejoró la configuración del flujo de trabajo de Go: Los flujos de trabajo de Go ahora utilizan
actions/setup-gov7.0.0. -
Depuró la limpieza de dependencias de pruebas: Adder ahora utiliza testify v1.12.0 y elimina dependencias de pruebas obsoletas.
-
Fortaleció los flujos de trabajo de atestación de artefactos: Los flujos de trabajo de versión ahora utilizan
actions/attestv4.2.2. -
Actualizó los flujos de trabajo de checkout del repositorio: Los flujos de trabajo de CI y de versión ahora utilizan
actions/checkoutv7.0.0. -
Modernizó la firma de etiquetas de Windows: El flujo de firma ahora aprovisiona Temurin Java 21 en lugar de Java 17.
-
Renovó la configuración de Java para firma y MSI de Windows: Los flujos de firma y MSI de Windows ahora utilizan
actions/setup-javav5.6.0. -
Conservó Java 21 en el flujo de prueba MSI: El flujo de prueba MSI ahora utiliza
actions/setup-javav6.0.0 y continúa utilizando Java 21. -
Mejoró los metadatos de imágenes Docker: Los flujos de CI y publicación de Docker ahora utilizan
docker/metadata-actionv6.2.0. -
Amplió la compilación de Docker: Los flujos de Docker ahora utilizan
docker/setup-buildx-actionv4.2.0. -
Reforzó la publicación de artefactos MSI: Los flujos ahora utilizan
actions/upload-artifactv7.0.1. Las instalaciones de Actions Runner autoalojadas deben utilizar la versión 2.327.1 o posterior para el flujo MSI. -
Añadió recursos de validación de vista previa de Dingo: Los recursos de vista previa de Dingo v0.70.9 ahora incluyen recursos de validación N2C mediante UNIX-socket, configuraciones, compatibilidad con Docker Compose, scripts de macOS Apple y contenedores, y documentación.
-
Extendió la cobertura de pruebas de enrutamiento de API: Las pruebas ahora cubren el comportamiento de las rutas de API y del hijacker.
-
Optimizó la configuración del flujo de trabajo de Go: Los flujos de Go ahora utilizan
actions/setup-gov6.5.0 en la automatización correspondiente. -
Actualizó la autenticación de registros Docker: Los flujos de Docker ahora utilizan
docker/login-actionv4.4.0. -
Revisó la automatización de checkout del repositorio: Los flujos de CI y de versión ahora utilizan
actions/checkoutv7.0.1. -
Protegió las atestaciones de artefactos: Los flujos de atestación de artefactos de versión y contenedores ahora utilizan
actions/attestv4.2.0. -
Renovó los flujos de firma y MSI de Windows: Estos flujos ahora utilizan
actions/setup-javav5.7.0. -
Modificó la configuración de firma de Windows: El flujo de firma de Windows ahora utiliza
actions/setup-javav5.4.0. -
Reforzó la seguridad del checkout del MSI de prueba: El flujo
test-msiya no conserva las credenciales del checkout. -
Elevó las herramientas de compilación Docker: Los flujos de Docker ahora utilizan
docker/setup-buildx-actionv4.3.0. -
Conservó Java 21 en las compilaciones MSI de prueba: El flujo
test-msiahora utilizaactions/setup-javav6.0.1 y mantiene Java 21.
🔄 Actualizaciones del lote final
Sección titulada «🔄 Actualizaciones del lote final»-
Ofreció la instalación MSI de Windows firmada: Los paquetes MSI x64 y arm64 ahora incluyen la CLI y la bandeja, se integran con el menú Inicio y Agregar o quitar programas, y no registran una Scheduled Task. Los flujos de prueba admiten firma opcional, mientras que el registro de la bandeja, el comportamiento de instancia única, la gestión de
/events?replay=y las notificaciones y enlaces al explorador son más fiables. -
Configuró las reglas de notificación de la bandeja: El editor integrado ahora admite objetivos editables de Wallet, DRep, Pool, Asset y Policy, preferencias por categoría, hot reload inmediato, configuración persistente, validación de duplicados y reintentos ante errores no críticos.
-
Reforzó la validación de gouroboros v0.190.0: Las comprobaciones de body-proof de Byron ofrecen una validación más sólida y las entradas desconocidas de chainsync o consensus devuelven errores en lugar de aceptarse silenciosamente.
-
Amplió la orientación sobre filtros y gobernanza: El README ahora incluye ejemplos de filtros y gobernanza, relaciona las opciones de filtro con los valores de entorno y configuración, y explica el filtrado de gobernanza.
-
Añadió ejemplos integrados de la biblioteca: Los ejemplos de publisher, filtro de pools y filtro de direcciones muestran cómo utilizar
CARDANO_NODE_SOCKET_PATHyCARDANO_NODE_MAGIC. -
Fortaleció la entrega de notificaciones FCM: Los workers de push gestionan su ciclo de vida con mayor fiabilidad, propagan los errores de FCM, requieren una ruta de cuenta de servicio y
project_id, aplican tiempos de espera de FCM de 10 segundos y gestionan de forma segura los eventos malformados. -
Mejoró la cobertura de pruebas de filtros de Cardano: Las pruebas utilizan ahora constructores de fixtures más realistas de
ouroboros-mocky cubren la normalización CIP-0129 dedrepydrep_script, incluidas las variantes bech32 y la eliminación de cabeceras. Las dependencias del sistema de CI y los flujos de lint y NilAway correspondientes ahora habilitanCGO_ENABLED=1. -
Refinó la integración de pipelines y filtros: Las pruebas de integración ahora cubren los ciclos de vida de las opciones de plugins y la propagación de errores, lo que facilita detectar fallos de configuración del pipeline.
-
Actualizó las bibliotecas de prueba y protocolo de Cardano: Adder ahora utiliza
ouroboros-mockv0.18.0 junto con actualizaciones relacionadas degouroborosyplutigo. -
Renovó la compatibilidad con la bandeja de escritorio: Adder ahora utiliza
fyne.io/fyne/v2v2.8.1 y componentes systray actualizados. -
Modernizó la compatibilidad con el bot de Telegram: Adder ahora utiliza
go-telegram/botv1.22.0. -
Eliminó las actualizaciones automáticas de cierre de proyectos: Cerrar un elemento ya no completa automáticamente el campo Closed Date de GitHub Projects.
-
Revisó las bibliotecas de procesamiento de imágenes: Adder ahora utiliza
golang.org/x/imagev0.44.0 y actualizaciones relacionadas dex/*. -
Protegió las atestaciones de versión: El flujo de publicación ahora utiliza
actions/attestv4.1.1. -
Actualizó el soporte del arnés de pruebas de ChainSync: Adder ahora utiliza
ouroboros-mockv0.16.0, que expone la conexión del servidor bajo prueba del arnés para pruebas y utilidades. -
Preparó los flujos de firma de Windows: Los flujos de firma y MSI de Windows ahora utilizan
actions/setup-javav5.5.0 y mantienen Java 21. -
Actualizó la autenticación del registro de contenedores: Los flujos de Docker ahora utilizan
docker/login-actionv4.6.0. -
Renovó la imagen de compilación Docker: Las compilaciones de contenedores ahora utilizan la imagen
blinklabs-io/go1.26.7-1. -
Mejoró la publicación de imágenes Docker: Los flujos de Docker ahora utilizan
docker/build-push-actionv7.3.0.
Docs authored by Doc Holiday