Participar en propuestas on-chain del pDAO
Cualquier nodo con un poder de voto no nulo puede presentar o participar en una propuesta del pDAO en cualquier momento. Las propuestas pueden ser de uno de los siguientes tipos:
- Cambiar configuraciones del pDAO
- Gastos únicos de tesorería
- Gastos repetidos de tesorería (comités de gestión)
- Membresía del consejo de seguridad
Para mayor detalle y justificación, consulta tipos de propuestas. Es importante entender que una propuesta del pDAO es una entidad on-chain que existe para ejecutar cambios a nivel de protocolo.
Proceso de Gobernanza
Una propuesta debe ser prevista por el proceso de gobernanza antes de que termine on-chain.
Los cambios al protocolo Rocket Pool se proponen, votan y ejecutan utilizando un proceso de gobernanza estricto pero transparente. El proceso comienza con una discusión informal de una idea dentro de la comunidad de Discord. Esta idea luego progresa a discusiones formales en el canal #governance en Discord y el Foro DAO, donde se somete a investigación exhaustiva, modelado y escrutinio en preparación para una Propuesta de Mejora de Rocket Pool (RPIP). Después de esto, se prepara un borrador de RPIP y es revisado por revisores de RPIP designados para garantizar su calidad y disposición para presentación al DAO. El borrador de la propuesta se presenta luego al DAO en el foro para más revisión, retroalimentación e incorporación de cualquier cambio necesario. Una vez que la propuesta ha sido refinada basándose en la retroalimentación de la comunidad, se genera una encuesta en el foro DAO para medir la disposición para finalizar el texto RPIP. Si la encuesta pasa, indicando aprobación de la comunidad, el RPIP se marca como final y listo para un voto del DAO de Protocolo, que se realiza a través de Snapshot para determinar si la propuesta debe ser implementada.
Desde aquí, el DAO Oráculo generará una propuesta on-chain. Hay una ventana en la que el DAO de Protocolo, el DAO Oráculo y la comunidad pueden revisar la propuesta. Si se alcanza consenso, la propuesta se ejecuta y los cambios se aplican al protocolo.
Una útil representación visual de este proceso se puede encontrar en el sitio web de Rocket Pool.
Requisito previo
Por favor lee el ciclo de vida de una propuesta antes de continuar. Explicará las diferencias entre todos los períodos de votación y las acciones que se pueden tomar durante cada período.
El resto de esta página te guiará a través de los pasos requeridos para participar en propuestas on-chain del pDAO.
Inicializar la Votación
Si eres un operador de nodo que se registró antes de la actualización de Houston, necesitas inicializar la votación para desbloquear el poder de voto. Ten en cuenta que tener al menos un minipool es un requisito para tener poder de voto.
Este comando generará el mensaje a continuación. Por favor léelo cuidadosamente:
- Si respondes con
direct, el poder de voto se inicializará para tu nodo y podrás votar directamente en propuestas del DAO de Protocolo. - Si respondes con
delegate, tendrás la oportunidad de ahorrar un poco de gas inicializando la votación y estableciendo un delegado dentro de la misma transacción.
Solo necesitas hacer esto una vez. Configura la información de snapshot inicial para un nodo. Después de inicializar la votación, cada acción tomada actualizará la información de snapshot de tu nodo. Una vez que tu poder de voto esté inicializado, puedes verificar cuánto tienes usando el siguiente comando del smartnode:
Cada vez que se crea una nueva propuesta, se crea un árbol de votación que representa un snapshot del poder de voto de la red y la información de delegados
en conjunto con la nueva propuesta. Esto significa que el poder de voto de tu nodo no se incluirá en una propuesta si
fue generada antes de que inicializaras la votación. rocketpool pdao status mostrará el poder de voto de tu nodo en el
último bloque, que puede o no ser representativo de tu poder de voto en una propuesta particular.
Auto Inicializar Poder de Voto
La versión 1.13.8 del Smartnode introduce una nueva característica Auto Inicializar Poder de Voto, que está diseñada para inicializar automáticamente
el poder de voto en nodos que aún no lo han hecho. El poder de voto inicializado automáticamente es auto-delegado.
Esta característica se puede configurar en la configuración del Smartnode ejecutando rocketpool service config y navegando a la sección *
*Smartnode y TX Fees**.
El Umbral de Gas de Auto-Inicialización de Poder de Voto es un límite (en gwei) en esta transacción automática. Puedes optar por no participar en esta tarea estableciendo el umbral en 0. Siéntete libre de optar por no participar si tu nodo fue registrado después de la actualización de Houston o si el poder de voto ya está habilitado.
Establecer tu Dirección de Señalización de Snapshot
Establecer tu dirección de señalización de Snapshot te permitirá participar en votaciones de Snapshot en un navegador o dispositivo móvil sin tener que exponer las claves del nodo a una wallet caliente.
Hay algunas cosas que preparar:
- La dirección de tu nodo
- Una dirección que quieras usar para votar en snapshot (dirección de señalización)
Firmarás un mensaje diciendo que la dirección de tu nodo puede delegar a la nueva dirección. Este mensaje declara tu intención de usar tu dirección de wallet como dirección de señalización de Snapshot.
Selecciona qué red estás usando de una de las pestañas a continuación.
No cargues la clave privada de tu nodo en una wallet caliente. Por favor elige otra cuenta para ser tu dirección de señalización. Después de establecer la dirección de señalización, puedes usarla para votar en Snapshot con el poder de voto de tu nodo.
Comienza conectando la dirección que quieres usar como dirección de señalización al sitio web usando MetaMask, WalletConnect, o cualquiera de los otros métodos que el sitio web admite. Luego se te presentará este diálogo para buscar tu dirección de nodo.
A continuación, ingresarás tu dirección de nodo y luego harás clic en el botón naranja "Find". Esto verificará si la dirección es un nodo registrado y luego te llevará al siguiente paso.
¡Asegúrate de tener la dirección de nodo correcta antes de hacer esto! si necesitas confirmar la dirección de tu nodo, puedes
recuperarla rápidamente a través del CLI usando el comando rocketpool node status.
Una vez que hayas iniciado sesión y confirmado tu dirección de nodo, verás tu dirección de señalización de Snapshot. Debe ser la misma que la cuenta con la que has iniciado sesión en el sitio. Verifica que esto sea correcto antes de continuar. Una vez que estés seguro de que has iniciado sesión en la cuenta deseada, haz clic en el botón naranja "Sign Message". Verás un aviso en tu aplicación de extensión de wallet para firmar el siguiente mensaje:
Firmar no te costará gas pero establecerlo sí. Después de firmar, el frontend te dará un comando para pegar en el smartnode. Adelante y pégalo en el CLI de tu smartnode y sigue los pasos indicados. El comando debería verse algo así:
Si ves este mensaje en tu CLI, ¡estás listo!
No te preocupes si accidentalmente cierras el sitio o pierdes el rastro del comando. Simplemente puedes repetir los pasos y firmar
de nuevo usando la misma dirección de nodo y dirección de señalización. El frontend usa signer.Signmessage() de la biblioteca ethers
, lo que significa que tu firma es determinística dado el mismo input.
Haz clic aquí para aprender más.
Limpiar tu dirección de señalización es bastante fácil, solo usa este comando en el CLI:
Permitir el Bloqueo de RPL
Puedes ignorar este paso si solo estás interesado en votar sobre una propuesta. Permitir el bloqueo de RPL solo es requerido para aquellos que desean proponer o desafiar una propuesta.
El bloqueo de RPL es requerido para proponer y desafiar. Por defecto, el bloqueo de RPL para cualquier propósito estará deshabilitado. Los operadores de nodo optarán por realizar actividades de gobernanza habilitando el bloqueo de RPL desde su nodo o dirección primaria de retiro. Puedes hacerlo usando este comando en el Smartnode:
Esto te pedirá que permitas el bloqueo de RPL al crear o desafiar propuestas de gobernanza. Por el contrario, puedes usar el siguiente comando para optar por no participar en el bloqueo de RPL:
El RPL bloqueado actúa de la misma manera que el RPL stakeado regular para fines de recompensas, votación y requisitos de colateral. El RPL bloqueado no se cuenta hacia los umbrales para retirar RPL.
Delegar Poder de Voto
Un operador de nodo puede elegir delegar su poder de voto a otro operador de nodo. El único requisito es que tu delegado sea un nodo registrado.
Para delegar el poder de voto on-chain a otro nodo, usa el siguiente comando:
Si has delegado tu poder de voto a otro operador de nodo, puedes restablecer esto estableciendo la dirección del delegado a la dirección de tu propio nodo.
- Durante la fase 1 de una propuesta: Votantes y Delegados pueden emitir su voto sobre una propuesta.
- Durante la fase 2 de una propuesta: Operadores de Nodo que han delegado su voto tienen la oportunidad de anular el voto de su Delegado, si no están de acuerdo.
Si eres un operador de nodo con poder de voto delegado, debes votar durante la fase 1 de votación para que el poder de voto delegado cuente hacia la propuesta. Tu voto en la fase 1 valdrá tu poder de voto local + poder de voto delegado. Tu voto en la fase 2 vale tu poder de voto local solamente.
Crear una Propuesta
Para ser elegible para proponer, un nodo debe cumplir algunos requisitos:
- Incluido en el snapshot (ya sea inicializando la votación o por registrarse post Houston)
- Debe tener al menos un minipool
- Tiene poder de voto no nulo
- Ha permitido el bloqueo de RPL
- Tiene un stake de RPL (menos cualquier RPL ya bloqueado) mayor que el bono de propuesta
¡Las propuestas existen para cambiar parámetros y ejecutar código a nivel de protocolo! Debe haber discusión y consenso a través del proceso de gobernanza antes de que una propuesta sea creada on-chain.
Usa el comando rocketpool pdao propose para abrir un menú de opciones
Cada uno de estos comandos te pedirá una lista de entradas para crear tu propuesta deseada. En esta guía, invitaremos a un nodo al consejo de seguridad para servir como ejemplo. Para generar una propuesta para invitar a un nodo al consejo de seguridad, usarías el comando:
Ten en cuenta que este paso tendrá una ligera variación dependiendo del tipo de propuesta. Este comando particular:
rocketpool pdao propose security-council invite te pedirá ingresar un ID seguido de una dirección de miembro.
¡Después de que esto se incluya en un bloque, se creará una propuesta del pDAO! La propuesta entrará en el período de retraso de voto tras su creación.
Ver el Estado de una Propuesta
A cada propuesta se le asigna un proposalID. En este caso, nuestra propuesta para invitar a 0xBdbc... al consejo de seguridad se
representa con el ID 71. Hay algunas formas de ver el estado de la propuesta. Un método mostrará una lista de
cada propuesta del pdao junto con su estado (pendiente, exitosa, ejecutada, etc.). El segundo método muestra detalles en profundidad
sobre una propuesta específica.
Para listar todas las propuestas, usa el siguiente comando:
Esto mostrará una lista de todas las propuestas y su estado
Aquí podemos ver que nuestra propuesta invitar a test-member tiene un ID de 71 y está en estado pendiente. En este estado,
los desafiantes pueden disputar la validez del
pollard de merkle (usado para calcular el poder de voto) proporcionado por el proponente. Cuando termine proposal.vote.delay.time,
la propuesta pasará a fases de votación activas. Siéntete libre de revisar ciclo de vida de una
propuesta para un repaso.
Votar sobre una Propuesta
Durante un período de votación, Operadores de Nodo y Delegados pueden emitir un voto con una de cuatro opciones:
Su poder de voto se aplicará a la opción de su elección. El poder de voto es una función del "stake efectivo de RPL". Una lectura más detallada se puede encontrar en el repositorio rocketpool-research.
Si eres un operador de nodo con poder de voto delegado, debes votar durante la fase 1 de votación para que el poder de voto delegado cuente hacia la propuesta. Tu voto en la fase 1 valdrá tu poder de voto local + poder de voto delegado. Tu voto en la fase 2 vale tu poder de voto local solamente. Ten en cuenta que un nodo puede votar una vez y solo una vez en una propuesta, así que elige cuidadosamente.
Usa este comando para emitir un voto:
Se te pedirá seleccionar una propuesta para votar si hay al menos una propuesta en una fase de votación activa. El menú debe mostrar todas las propuestas en las que tu nodo es elegible para votar:
Después de seleccionar una opción, se te preguntará cómo deseas emitir tu voto.
Seleccionar una opción mostrará tu poder de voto y luego te pedirá enviar la transacción:
¡Has votado exitosamente en la propuesta una vez que la transacción se incluya en el bloque! En este punto, puedes usar
rocketpool pdao proposal details <proposal-id> para ver el estado de la propuesta. Una propuesta necesita alcanzar
un quórum de poder de voto requerido y una mayoría de poder de voto a favor para que tenga éxito.
Para que el ejemplo anterior pase, el poder de voto necesita exceder un quórum de 140970562215 poder de voto. Hay
197980809837 poder de voto a favor y ningún voto en contra o abstenido. La propuesta está lista para el éxito y preparada
para
ejecución al final de proposal.vote.phase2.time.
Ejecutar una Propuesta Exitosa
¡Felicidades! ¡Tu propuesta ha pasado! Ahora solo queda ejecutar la propuesta. Ten en cuenta que cualquiera puede ser el ejecutor de una propuesta. Para ejecutar una propuesta exitosa, escribe el comando:
Seleccionar una opción te pedirá enviar una transacción. Una vez que esta transacción se incluya en un bloque, el cambio se aplicará al protocolo Rocket Pool!
Reclamar Bonos y Recompensas
Los proponentes o desafiantes pueden reclamar sus bonos al concluir una propuesta. Dependiendo del resultado de una propuesta,
un
Proponente o Desafiante puede o no ser capaz de reclamar su proposal.bond y proposal.challenge.bond.
Aquí hay algunas reglas que dictan las condiciones en las que se pueden reclamar bonos:
- Si una propuesta es derrotada, el proponente pierde su bono que se divide proporcionalmente entre los desafiantes que contribuyeron a la derrota de la propuesta. Todos los demás desafiantes reciben su bono de vuelta solamente.
- Contribuir a la derrota de una propuesta significa que un desafiante envió un índice que luego se demostró que era incorrecto por la incapacidad del proponente de responder a un desafío. Es posible que haya múltiples índices incorrectos pero solo aquellos que resultaron en la derrota de la propuesta comparten la recompensa. Todos los demás desafiantes reciben su bono de vuelta solamente.
- Si un desafiante desafía un nodo, el proponente responde, y la propuesta no es derrotada. El proponente puede reclamar los bonos de desafío de los desafíos inválidos.
- Si una propuesta es derrotada, el proponente pierde su bono que se divide proporcionalmente entre los desafiantes que contribuyeron a la derrota de la propuesta.
Usa este comando para reclamar bonos:
Esto mostrará cada propuesta de la que eres elegible para reclamar bonos. Puedes reclamar bonos de una propuesta especificada, o puedes reclamar bonos y recompensas de todas las propuestas elegibles.
Una vez que hayas seleccionado una opción, se te pedirá con las recomendaciones actuales de costos de gas de la red; confirma tu selección de precio de gas y sigue el resto de los avisos.
Ten en cuenta que si seleccionas la primera opción para reclamar todas las propuestas disponibles, cada una se ejecutará individualmente y no como una transacción.
Crear un Gasto Recurrente de Tesorería
Necesitarás preparar algunas entradas para crear un gasto recurrente de tesorería:
- Un nombre de contrato
- La dirección del destinatario
- Cantidad de RPL a enviar por período
- La hora de inicio para el pago recurrente (como timestamp UNIX)
- La duración de cada período de pago en horas / minutos / segundos (por ejemplo, 168h0m0s)
- Número de períodos de pago
El destinatario necesitará anotar el nombre del contrato para reclamar pagos. No te preocupes, ya que esta
información se almacena y se puede recuperar usando el comando rocketpool pdao proposals details <proposal-id>
Para generar una propuesta para establecer un gasto recurrente de tesorería, usa el siguiente comando del smartnode y sigue los avisos:
Así es como se ve todo junto:
Una vez que hayas ingresado todas las entradas requeridas, se generará una propuesta para crear un pago recurrente. Cuando el pDAO
pase y ejecute esta propuesta, al destinatario se le asigna 1 RPL comenzando en 2024-06-09 12:13:53 +0000 UTC
cada
720 horas por un total de 24 pagos.
Reclamar un Gasto Recurrente de Tesorería
¡Reclamar pagos recurrentes debería ser bastante simple! Navega a nuestra herramienta frontend aquí para hacerlo. Si estás probando esto en Hoodi testnet, usa este enlace en su lugar.
Una vez que estés en el sitio, haz clic en el botón conectar wallet. Por favor lee y acepta los Términos de Servicio y Política de Privacidad, esto habilitará diferentes formas de conectar, luego haz clic en conectar metamask.
MetaMask te pedirá seleccionar una cuenta para conectarte al sitio web. Después de que hayas iniciado sesión, necesitarás ingresar el nombre del contrato. Al hacerlo se mostrarán todos los detalles relevantes. Asegúrate de verificar la dirección del destinatario. Cualquiera puede llamar la función de reclamación, pero cada contrato de pago tendrá un destinatario designado para dispersar RPL hacia él.
Puedes reclamar tus pagos en cualquier momento, solo obtendrás el RPL total no reclamado hasta el período más reciente. Alternativamente puedes esperar hasta que todos los períodos hayan pasado para cobrar todo de una vez y ahorrar en gas.
Solo presiona el gran botón naranja de reclamar cuando estés listo y revisa la transacción en metamask (o tu wallet preferida). Una vez que eso esté hecho, ¡estás listo!