Ir al contenido principal

Gobernanza

Resumen de la gobernanza de Celo y cómo se gestiona la red mediante el proceso de propuesta de las partes interesadas.


¿Qué es la Gobernanza de Celo?

Celo utiliza un mecanismo formal de gobernanza en cadena para administrar y actualizar el protocolo, como para actualizar contratos inteligentes, añadir nuevas monedas estables, o modificar la asignación de activos de reserva. Todos los cambios deben ser acordados por los titulares del CELO. Un modelo de umbral de quórum se utiliza para determinar el número de votos necesarios para que una propuesta se apruebe.

Proceso de Propuesta de las partes interesadas

Los cambios se gestionan a través del contrato inteligente Governance de Celo. Este contrato actúa como "propietario" para hacer modificaciones a otros contratos inteligentes de protocolo. Tales contratos inteligentes se llaman governable. El contrato de Governance es gobernable, y es propiedad de sí mismo.

El procedimiento de cambio ocurre en las siguientes fases:

  1. Propuesta
  2. Aprobación
  3. Referendum
  4. Ejecución

Resumen de las fases

Cada propuesta comienza en la Proposal Queue donde puede recibir votos positivos para avanzar en la cola en relación a otras propuestas en cola. Los autores de propuestas deberían trabajar para encontrar a los miembros de la comunidad para votar a favor de su propuesta (los proponentes también pueden votar a favor de sus propuestas). Hasta tres propuestas de la parte superior de la cola son decoladas y promovidas automáticamente a la fase de aprobación por día. Cualquier propuesta que permanezca en la cola durante 4 semanas caducará.

  • Approval dura 1 día (24 horas), durante la cual la propuesta debe ser aprobada por el(los) Aprobador(s). Las propuestas aprobadas se promueven a la fase de referencia.
  • Referendum dura cinco días, durante los cuales los propietarios de Celo bloqueado votan sí o no a la propuesta. Las propuestas que satisfacen el quórum necesario son promovidas a la fase de ejecución.
  • Execution dura hasta tres días, durante los cuales cualquiera puede activar la ejecución de la propuesta.

Propuesta

Cualquier usuario puede enviar una propuesta al contrato inteligente de Governance, junto con un pequeño depósito de CELO. Este depósito es necesario para evitar las propuestas de spam, y es reembolsado al proponente si la propuesta llega a la fase de aprobación. Una propuesta consiste en una lista de transacciones y una URL de descripción donde los votantes pueden obtener más información sobre la propuesta. Se alienta que esta URL de descripción apunte a un documento CGP en el repositorio celo-org/celo-proposals. Los datos de la transacción en la propuesta incluyen la dirección de destino, datos y valor. Si la propuesta pasa, las transacciones incluidas serán ejecutadas por el contrato Governance.

Las propuestas presentadas se añaden a la cola de propuestas. Mientras que una propuesta está en esta cola, los votantes pueden usar su Locked Celo para votar a favor la propuesta. Una vez al día las tres propuestas principales, por el peso de la votación del Celo Bloqueado, se retiran y se trasladan a la fase de aprobación. Ten en cuenta que si hay menos de tres propuestas en la cola, todas pueden ser descoladas incluso si no tienen votos. Si una propuesta ha estado en cola durante más de 4 semanas, caduca y el depósito se pierde.

Aprobación

Todos los días las tres propuestas más destacadas a la cabeza de la cola se sacan y pasan a la fase de aprobación. En este momento, los proponentes originales tienen derecho a reclamar su depósito de Celo Bloqueado. En esta fase, la propuesta debe ser aprobada por el Aprobador. El Aprobador es inicialmente una dirección de 3 de 9 firmas múltiple sostenida por individuos seleccionados por la Fundación Celo, y pasará a un DAO en el futuro. La fase de aprobación dura 1 día y si la propuesta no se aprueba en esta ventana, se considera caducado y no pasa a la fase “Referendum”.

Referendum

Una vez terminada la fase de aprobación, las propuestas aprobadas se gradúan a la fase del referéndum. Cualquier usuario puede votar sí, no, o abstenerse en estas propuestas. El peso de su voto está determinado por el peso de su Celo Bloqueado. Después de que la fase de Referendum haya terminado, que dura cinco días, cada propuesta es marcada como pasada o fallida como una función de los votos y los parámetros de la función pasada.

Para que una propuesta sea aprobada, debe cumplir un umbral mínimo de participacióny aceptación:

  • La participación es la porción mínima del Celo Bloqueado, que debe votar a favor de una propuesta que debe aprobar. Existe para evitar que las propuestas pasen con una participación muy baja. El requisito de participación se calcula como una porción gobernable de la línea de base de participación, que es un movimiento exponencial promedio de participación final en propuestas de gobernancia pasadas.
  • El acuerdo es la porción de votos emitidos que debe ser "sí" a la propuesta que se apruebe. Cada contrato y función pueden definir un nivel de acuerdo requerido, y el acuerdo necesario para una propuesta es el requisito máximo entre sus transacciones constituyentes.

Ejecución

Las propuestas que se gradúen de la fase de Referendum a la fase de ejecución pueden ser ejecutadas por cualquiera, activando un código de operación de llamada `con los argumentos definidos en la propuesta, originario del contrato inteligentede Governance`. Las propuestas caducan de esta fase después de tres días.

Actualización inteligente de contratos

Los contratos inteligentes implementados en un blockchain EVM como Celo son inmutable. Para permitir mejoras, nuevas características y correcciones de errores, el código base de Celo utiliza el Patrón de actualización de proxy. Todos los contratos principales propiedad de Governance están representados por proxy. Por lo tanto, una implementación de contrato inteligente puede mejorarse utilizando el proceso estándar de gobernanza en cadena. ​

Riesgos de actualización

Los contratos principales definen el comportamiento crítico de la red de Celo, como CELO y Celo Dólar o las elecciones y recompensas de validadores. Errores de contrato maliciosos o involuntarios podrían comprometer los balances de los usuarios o potencialmente causar daño, irreverible sin un fork duro del blockchain.

Hay que tener mucho cuidado para garantizar que cualquier propuesta de gobernanza que modifique el código de contratos inteligentes no rompa el sistema existente. Para este fin, los contratos tienen un proceso de liberación bien definido, que incluye solicitar auditorías de seguridad a auditores externos acreditados.

Como Celo es una red descentralizada, todos los participantes en la red de Celo están invitados a participar en las discusiones sobre propuestas de gobernanza en el foro.

Proceso de revisión de validador

La cadencia y transparencia del protocolo estándar de gobernanza en cadena lo hacen poco adecuado para propuestas que solucionan problemas que pueden comprometer la seguridad de la red, especialmente cuando el parche revelaría un error explotable en uno de los contratos principales. En cambio, este tipo de cambios son más adecuados para el protocolo hotfix más receptivo y menos transparente.

Cualquiera puede hacer una propuesta en el protocolo hotfix enviando el hash de su propuesta al contrato inteligente Governance. Si ese hash es aprobado por el approver y un quórum de validadores, el proponedor puede ejecutar el contenido de esa propuesta inmediatamente.

Tenga en cuenta que esto significa que los validadores pueden no conocer siempre el contenido de la propuesta que están votando. Revelar el contenido de la propuesta a todos los validadores puede comprometer la integridad del protocolo hotfix, como sólo un validador tendría que ser malicioso para explotar la vulnerabilidad o compartirla públicamente. En cambio, para convencer a los validadores de que el hash representa una propuesta que debe ejecutarse a través del protocolo hotfix, el proponente debería considerar ponerse en contacto con terceras partes, empresas de seguridad para garantizar públicamente el contenido de la propuesta.

Actualizaciones de Software del Blockchain Celo

Algunos cambios no pueden hacerse a través del proceso de gobernanza en cadena (mediante propuesta o hotfix) por sí solos. Ejemplos incluyen cambios en el protocolo de consenso subyacente y cambios que resultarían en un fork duro. Cuando se requieren actualizaciones de software de Celo Blockchain para continuar funcionando correctamente en la red, se establece un parámetro "Versión mínima del cliente" para indicar la versión mínima que requiere.