Commit-Boost ya soporta Stader: configura tus relays MEV sin listas manuales

Los operadores de nodos de Stader que utilizan Commit-Boost ya pueden cargar automáticamente las claves públicas de sus validadores desde los registros on-chain del protocolo.
En Stakely hemos contribuido esta funcionalidad al cliente open source Commit-Boost para que dé soporte nativo a los registros de validadores de Stader. Está disponible desde la pre-release v0.10.0-rc4 y evita tener que copiar y mantener manualmente una lista de pubkeys en el fichero de configuración.
El objetivo es sencillo: que los validadores de Stader utilicen la configuración de relays MEV que les corresponde, incluso cuando se añaden nuevos validadores al operador.
Qué es Commit-Boost
Cuando un validador de Ethereum propone un bloque, puede recurrir a relays MEV para recibir bloques construidos por builders especializados. Este flujo se conoce como Proposer-Builder Separation o PBS. La pieza de software que conecta tu validador con esos relays es el sidecar MEV: históricamente, MEV-Boost.
Commit-Boost es un sidecar open source para validadores de Ethereum, compatible con la Builder API utilizada por MEV-Boost. Permite conectar el validador con relays MEV y, además, incorporar otros módulos relacionados con commitments del proposer, como preconfirmaciones.
Para un operador, puede utilizarse en el flujo que tradicionalmente cubre MEV-Boost. El beacon node se comunica con Commit-Boost mediante la misma interfaz estándar, mientras el cliente gestiona las solicitudes de cabeceras y payloads con los relays configurados.
Una de sus funciones más útiles es el multiplexer o mux. Permite aplicar configuraciones de relays distintas a grupos concretos de validadores dentro de la misma instancia.
Esto resulta útil cuando un operador combina validadores propios con validadores de un protocolo como Stader, ya que cada grupo puede requerir una política de relays diferente. La selección de relays debe responder siempre a los requisitos del protocolo y a las políticas operativas del propio operador.
El problema de mantener listas de claves a mano
Para aplicar una configuración de relays a un grupo de validadores, el mux necesita identificar las claves públicas que forman parte de ese grupo.
Hasta ahora, un operador de Stader tenía dos alternativas:
- añadir manualmente las pubkeys en
config.toml, mediantevalidator_pubkeys, o en un fichero JSON; - mantener un endpoint HTTP propio que sirviera esa lista de claves.
Ambas opciones dependen de que la lista se mantenga actualizada. Si se añade un validador de Stader y no se incorpora a la configuración de Commit-Boost, ese validador seguirá usando la configuración de relays por defecto en lugar de la que corresponde a su grupo.
Commit-Boost ya permitía cargar validadores desde registros on-chain de otros protocolos. Con la contribución de Stakely, ahora también puede hacerlo para Stader.
La solución: carga automática desde el registro de Stader
Stader mantiene registros de validadores por operador para sus pools permissionless y permissioned.
El nuevo loader stader permite que Commit-Boost consulte el registro adecuado durante el arranque. Para ello, utiliza el node_operator_id del operador y el pool de Stader correspondiente.
El flujo es el siguiente:
- Identifica el contrato de registro del pool indicado.
- Consulta cuántas claves tiene registradas el operador.
- Obtiene las pubkeys en lotes mediante RPC.
- Asigna esas claves al mux y a los relays definidos para ese grupo.
Si se activa enable_refreshing, Commit-Boost vuelve a consultar el registro periódicamente. Así, los validadores añadidos posteriormente pueden incorporarse a la configuración sin tener que mantener listas de claves a mano.
Cómo configurar el loader de Stader
Necesitarás Commit-Boost v0.10.0-rc4 o una versión posterior que incluya esta funcionalidad, además de acceso a un endpoint RPC de Ethereum mainnet.
El loader de Stader está disponible actualmente para mainnet. Si todavía no tienes Commit-Boost instalado, consulta primero su guía oficial de instalación.
1. Define la configuración base de PBS
En config.toml, configura rpc_url dentro de la sección [pbs]. Commit-Boost utilizará este endpoint para consultar el registro on-chain de Stader.
chain = "Mainnet"
[pbs]
port = 18550
rpc_url = "http://TU_EXECUTION_CLIENT:8545"
# Default relays for validators NOT included in any mux
[[relays]]
url = "https://[email protected]"
El endpoint puede ser tu propio execution client o un proveedor RPC compatible.
2. Añade un mux con el loader de Stader
A continuación, define el mux e indica tu ID de operador y el pool en el que operas (permissionless o permissioned):
[[mux]]
id = "stader-validators"
loader = { registry = "stader", node_operator_id = 42, stader_pool = "permissionless", enable_refreshing = true }
[[mux.relays]]
id = "relay-1"
url = "https://[email protected]"
[[mux.relays]]
id = "relay-2"
url = "https://[email protected]"
Los campos del loader son:
| Campo | Obligatorio | Descripción |
|---|---|---|
registry |
Sí | Utiliza "stader" para cargar el registro de Stader. |
node_operator_id |
Sí | El ID numérico del operador en el registro de Stader. |
stader_pool |
Sí | "permissionless" o "permissioned", según el pool en el que opere el nodo. |
enable_refreshing |
No | Si se establece en true, actualiza periódicamente la lista de claves. |
¿No sabes cuál es tu
node_operator_id? Puedes consultarlo en el panel de operador de Stader o en el contrato de registro correspondiente.
3. Reinicia y comprueba los logs
Tras aplicar la configuración, reinicia Commit-Boost y revisa los logs del módulo PBS. Deberías ver la carga de claves desde el registro de Stader.
Dos errores habituales ayudan a identificar una configuración incompleta:
Stader registry requires RPC URL to be set in the PBS config: faltarpc_urlen[pbs].Stader registry requires stader_pool to be set in the mux config: faltastader_poolen la configuración del loader.
Comprueba que el número de claves cargadas en el mux coincide con los validadores registrados para tu operador. A partir de ese momento, las propuestas de bloque de ese grupo utilizarán los relays definidos en el mux.
Notas y recursos
- Solo mainnet (por ahora): los contratos de registro configurados corresponden a Ethereum mainnet. No hay soporte para testnets en esta versión.
- Pre-release: la funcionalidad está incluida en
v0.10.0-rc4y formará parte de la próxima release establev0.10.0. Si prefieres esperar a la estable, la configuración será exactamente la misma. - Relays por defecto: los validadores que no pertenezcan a ningún mux seguirán usando los relays de la sección
[[relays]]global, así que puedes combinar validadores de Stader con otros grupos en la misma instancia.
Recursos
- Documentación de Commit-Boost
- Documentación para operadores de Stader
- Release v0.10.0-rc4 de Commit-Boost
Una contribución nacida de la operación diaria
En Stakely, además de operar validadores en decenas de redes, operamos validadores de Ethereum, incluida nuestra participación como operador en Stader, y utilizamos Commit-Boost en producción.
Esta contribución nació de una necesidad operativa propia: evitar que una lista manual de claves se convierta en un punto de mantenimiento y error. Al aportar el loader upstream, cualquier operador de Stader puede adoptar el mismo flujo.
Puedes revisar la contribución y seguir la evolución del proyecto en el repositorio de Commit-Boost. Si operas nodos de Stader y tienes dudas con la configuración, escríbenos, ¡estaremos encantados de ayudarte!





