Ciclo de Vida de Recompensas con Sputnik DAO CLI
A continuación, se verá la descripción, el funcionamiento y los comandos necesarios para utilizar el ciclo de vida de las recompensas (bounties).
Si no cuentas con el comando sputnikdao puedes instalarlo utilizando npm i sputnikdao en la carpeta de tu proyecto.
Descripción
Cualquiera puede agregar una propuesta de recompensa (bounty) en la DAO, con una descripción de la actividad por realizar y cuánto se pagará por la recompensa y el número de veces que puede ser reclamada la recompensa. El consejo debe votar para aprobar, rechazar o eliminar la propuesta de la recompensa y en caso de ser aprobada, ahora la recompensa formará parte de una lista de recompensas, separada de las propuestas. Cualquier persona puede indicar que quiere participar y que estará trabajando en la recompensa, es decir, hace un reclamo a la recompensa y deberá poner la fecha límite de entrega para completar la actividad.
Cuando alguien completa la actividad requerida, se realiza una propuesta para aprobar que ya concluyó la actividad y el consejo vota si se resuelve la recompensa. Una vez siendo aprobado por voto del consejo la cantidad de la recompensa se paga. En caso de no cumplir con la actividad después de reclamar la recompensa, puede darse por vencido y si entra en el tiempo de perdón puede recuperar el token requerido para hacer el reclamo, en caso de que el tiempo haya pasado, el token quedará en la DAO.
El ciclo de vida de las recompensas (bounties) es el siguiente:
- Cualquiera con permisos puede añadir una propuesta con el comando: “sputnikdao proposal addBounty <amount> — times <times> — daoAcc <daoAcc> — accountId <accountId>”, que contiene información de la recompensa, incluido el token para pagar la recompensa y el monto para pagarla.
- Esta propuesta es votada por la política de votación actual “sputnikdao vote approve <proposal-index> — daoAcc <daoAcc> — accountId <accountId>”. Una vez aprobada la propuesta, se agrega la recompensa.
- Ahora tiene una identificación en la lista de recompensas, que pueden ser consultas a través de “sputnikdao list bounties — daoAcc <daoAcc> — accountId <accountId>”.
- Cualquiera puede reclamar una recompensa llamando a “bounty_claim <idbounty> — deadline <deadline> — daoAcc <daoAcc> — accountId <accountId>”, hasta repetir las veces que se especificó en la recompensa. Esto permite tener recompensas repetidas o múltiples trabajos en colaboración. La fecha límite especifica cuánto tiempo le tomará al remitente completar la recompensa.
- Si el reclamante decide darse por vencido, puede llamar a “bounty_giveup <idBounty> — daoAcc <daoAcc> — accountId <accountId>” y dentro del tiempo del periodo de perdón, se le devolverá el vínculo de reclamación. Después de este período, el monto se mantiene en la DAO.
- Cuando la recompensa esté completa se llama el comando de “sputnikdao proposal bountyDone <id> — daoAcc <daoAcc> — accountId <accountId>”, que añadirá una propuesta BountyDone que, cuando sea votada, pagará la cantidad de tokens acordados a quien haya realizado la recompensa.