0.25.7-beta
Por favor, reporte errores usando el rastreador de problemas en GitHub:
https://github.com/flokiorg/go-flokicoin/issues
Esta es una versión beta menor de Flokicoin Core con un nuevo algoritmo de reajuste de dificultad por bloque (estilo Digishield), soporte de cabecera y consenso para AuxPoW, actualizaciones de características de testnet, correcciones de RPC y mejoras de compilación/prueba. Esta versión programa la ACTIVACIÓN EN LA RED PRINCIPAL (MAINNET) tanto para Digishield como para AuxPoW a través de los parámetros de la cadena. Todos los nodos de la red principal deben actualizarse antes de las alturas de activación indicadas a continuación para evitar divisiones de la cadena (chain splits).
Cambios notables
-
Consenso: Reajuste de dificultad Digishield
- Introduce un reajuste de media móvil exponencial por bloque hacia el espaciado objetivo con un divisor de amplitud de 8.
- Aplica una amortiguación limitada en cada paso (mín. 0.75x, máx. 1.5x de la influencia del espaciado objetivo) para reducir la volatilidad.
- Soporta dificultad mínima en bloques tardíos cuando lo habilitan los parámetros de la cadena.
- Se integra en la validación y minería (next-required-bits, objetivo de plantilla de bloque) y amplía las pruebas de unidad y de bloque completo.
-
P2P/Wire: Soporte de cabecera AuxPoW
- Añade estructuras AuxPoW (coinbase, ramas Merkle, cabecera principal) y asistentes de serialización.
- Extiende
BlockHeadercon el indicador AuxPoW y utilidades de ChainID, además de la codificación/decodificación opcional de la carga útil AuxPoW. - Actualiza la decodificación de
MsgBlockpara analizar las cargas útiles de AuxPoW cuando estén presentes; añade cobertura para las rutas de lectura/escritura. - Consenso: AuxPoW se activa en la red principal en la altura que se indica a continuación.
-
Actualizaciones de Testnet/regtest
- Habilita las características SegWit y Taproot en testnet donde estén configuradas.
- Ajusta
MinHighPrioritye incrementa el límite deMaxLokiutilizado en la validación de montos por RPC.
-
Correcciones y mejoras de RPC
- Alinea la versión del protocolo P2P informada con
wire.ProtocolVersiony completa los campos degetinfo(subversion, localservices, connections_in/out, localaddresses) a partir del estado del servidor en vivo.
- Alinea la versión del protocolo P2P informada con
-
Herramientas y pruebas
- Añade el objetivo
make testexporty un exportador de datos de prueba determinista. - Unifica el cargador de conjuntos de datos de bloques con validación obligatoria de magia de red (network-magic); refracteriza los sitios de llamada.
- Añade una validación de dificultad de extremo a extremo sobre conjuntos de datos seleccionados y emite métricas de ajuste en estado estacionario.
- Añade el objetivo
-
Compilación y configuración
- Elimina la anulación local
replaceparaflokicoin-neutrinopara evitar rutas exclusivas para desarrolladores. - Imprime un único banner de inicio con la versión semántica durante la carga de la configuración; refracteriza las constantes de arte ASCII.
- Elimina la anulación local
Compatibilidad
- La red principal activará Digishield y AuxPoW en alturas fijas (ver abajo). Estos son cambios de consenso y constituyen un hard fork en el momento de la activación. Todos los mineros, validadores y servicios deben actualizarse antes de esas alturas.
- El soporte de red de AuxPoW sigue siendo compatible con versiones anteriores para las cabeceras que no son AuxPoW hasta la altura de activación.
- No se introducen cambios en el formato de la base de datos.
Calendario de activación (red principal)
- Reajuste de dificultad Digishield: se activa en la altura 115,000 (
DigishieldActivationHeightenchaincfg/params.go). - Consenso AuxPoW: se activa en la altura 115,840 (
AuxpowHeightEffectiveenchaincfg/params.go).
Estas activaciones están parametrizadas en repos/flokiorg/go-flokicoin/chaincfg/params.go bajo MainNetParams.
Notas de actualización
- Operadores de nodos de la red principal: actualicen a 0.25.7-beta antes de las alturas 115,000 (Digishield) y 115,840 (AuxPoW) para permanecer en la cadena canónica.
- Los operadores de Testnet/regtest deben actualizarse para participar en las nuevas políticas de dificultad y características.
- Los desarrolladores de aplicaciones deben volver a importar (re-vendor)/actualizar para incorporar las correcciones del esquema RPC y las adiciones de red relacionadas con AuxPoW.
Cambios en RPC
getinfoahora informa con precisiónsubversion,localservices,localservicesnames,connections_in,connections_outylocaladdresses.- La versión máxima del protocolo informada se alinea con
wire.ProtocolVersion(70016).
Sistema de compilación y herramientas
- Nuevo objetivo
make testexportpara exportar conjuntos de datos de bloques para pruebas deterministas. - Se eliminó el
replacelocal paraflokicoin-neutrinopara producir gráficos de módulos limpios en las compilaciones.
Pruebas y QA
- El cargador de bloques unificado impone la magia de red y utiliza lecturas con búfer de longitud completa.
- Se añadió la validación de dificultad E2E con salida de métricas para el análisis de estado estacionario.
- Los conjuntos de datos de prueba seleccionados, más pequeños, mejoran el determinismo y el tiempo de CI.
Registro de cambios desde v0.25.6-beta
- b4f439e consenso: añadir reajuste de dificultad Digishield
- dec0948 wire: integrar soporte de cabecera AuxPoW
- 31eff16 chore: actualizaciones del repositorio para rpc/db, pruebas, fixtures
- e2ac6e7 pruebas: validar el conjunto de datos de dificultad y exponer métricas de ajuste
- 735410f pruebas: unificar el cargador de bloques para imponer la magia de red; refracterizar sitios de llamada
- 0e5dcd3 make: añadir el objetivo testexport para exportar conjuntos de datos de bloques
- 651a453 rpc: informar el protocolo p2p correcto y completar los campos de getinfo
- bea6a7a build: eliminar replace local para flokicoin-neutrino
- 2e92497 config: imprimir banner de inicio con versión; refracterizar constantes de arte
- b24e870 wire: eliminar comentario TODO obsoleto en protocol.go
- 60460f8 habilitar segiwit/taproot para testnet
- f9bf3ae incrementar const maxloki
- 712355d actualizar const MinHighPriority
- fa96bbd salto de versión 0.25.7-dev
- 4523b79 versión: salto a 0.25.7-beta
Créditos
Gracias a todos los que contribuyeron directamente a esta versión:
- naliyi
- izimmerma
- mechion
- repins
- nanovex
- liarpo11
- arowqo
- thiniboy