Crea una cuenta o inicia sesión

¡Continúa aprendiendo sin ningún costo! Únete y comienza a potenciar tu carrera

Curso de OpenZeppelin

Curso de OpenZeppelin

Sebastián Leonardo Perez

Sebastián Leonardo Perez

Gestión de demoras con TimelockController

4/19
Recursos

Aportes 3

Preguntas 0

Ordenar por:

¿Quieres ver más aportes, preguntas y respuestas de la comunidad? Crea una cuenta o inicia sesión.

Estuve probando como implementar las capacidades que tiene el TimelockController. Logré entenderlo usando Remix y luego intenté implementarlo incluyendo pruebas en hardhat. Esto último aún sigo tratando de correr el execute. Pero igual les dejo el contrato de ejemplo y las pruebas unitarias:

Algunos puntos importantes que entendí:

  • al deployar el contrato se debe pasar arrays vacios para los proposers y los executers
  • importante asignar al menos un proposer y un executor
  • algunos de los parametros son de tipo 32bytes, por lo que implica una conversion
  • el argumento data es un calldata (callback), que se refiere al metodo a invocar lo que implica aplicarle un abiEncoding
  • el delay es obligatorio y debe ser mayor o igual al minDelay
  • el operationId se puede sacar invocando el hashOperation, aunque tambien se puede obtener de la respuesta
  • la operation no se ejecuta sola al cumplirse el tiempo, sino que pasa a un estado Ready y entonces es que está disponible para que el Executor lo ejecute.
  • Cuando lean la documentacion del TimelockController, lleguen hasta final donde explican los principales atributos y el ciclo de vida

Les dejo la documentación del TimelockController

Documentación de TimelockController