Diario de desarrollo de contratos inteligentes Rust (10-3): Análisis del mecanismo de propuestas de Sputnik DAO
Sputnik-DAO como infraestructura de NEAR Protocol, está impulsando la evolución del ecosistema NEAR hacia una dirección descentralizada. Actualmente, esta plataforma ha facilitado varias comunidades autónomas descentralizadas de proyectos NEAR y ofrece soluciones completas y flexibles para la gobernanza de decisiones comunitarias.
Sputnikdaov2 es un contrato inteligente utilizado para la votación de gobernanza de la comunidad Sputnik-DAO. Este artículo presentará los conceptos clave de dicho contrato: propuesta (Proposal), y artículos posteriores se centrarán en introducir los modos de gobernanza de la comunidad DAO relacionados con la propuesta (Policy).
1. Inicio de propuesta
Los miembros de la comunidad Sputnik-DAO pueden expresar opiniones o presentar propuestas sobre la gobernanza o gestión del proyecto. Cada miembro de la comunidad con acciones puede revisar y votar sobre las propuestas, influyendo así en la dirección futura del proyecto.
En el nivel del contrato, los miembros del DAO pueden llamar al método add_proposal() del contrato sputnikdaov2 para iniciar una nueva propuesta. Al llamar, se deben proporcionar los detalles de la propuesta(ProposalInput), que incluyen:
Descripción del texto de la propuesta (Description )
Tipo de propuesta (kind)
El método add_proposal() realizará una verificación y procesamiento, generando una propuesta completa (Proposal), y se vinculará con un único proposal_id, añadiéndola al conjunto de propuestas mantenido por el contrato.
La información completa de las propiedades de la propuesta incluye: proponente, estado, fecha de inicio, estado de votación, etc. El estado de la nueva propuesta se establece por defecto como InProgress.
Sputnik-DAO exige a los proponentes que pongan en garantía una cierta cantidad de tokens NEAR como depósito. Este depósito será devuelto al proponente al finalizar la propuesta de manera normal.
2. Estado de la propuesta
Las propuestas en Sputnik-DAO pueden pasar por varios estados: InProgress, Approved, Rejected, Removed, etc.
El cambio de estado de la propuesta es impulsado por el método act_proposal(). Los miembros del DAO pueden llamar a este método para votar sobre la propuesta y realizar otras operaciones:
VoteApprove:aprobar
VoteReject:oponerse
VoteRemove: considera que la propuesta es irrelevante y debe ser eliminada
Se llamará internamente a policy.proposal_status() para realizar la votación. Para las propuestas que cumplan con el umbral de votación, el estado cambiará respectivamente:
Aprobado: llamar a internal_execute_proposal() para ejecutar la propuesta
Rechazado/Eliminado: llamar a internal_reject_proposal() ejecutar operaciones finales
Las propuestas en estado Removed se eliminarán directamente del pool de propuestas y no se reembolsará el depósito. Las propuestas en estado Rejected se mantendrán en el pool de propuestas y se reembolsará el depósito.
3. Ejecución de la propuesta
Si el estado de la propuesta es Aprobado, se llamará internamente a internal_execute_proposal() para ejecutar el contenido de la propuesta.
Sputnik-DAO apoya varios tipos de propuestas, la mayoría de las cuales implican actualizaciones de configuración del modo de gobernanza de la DAO. A continuación se describen los procesos de manejo de dos tipos típicos de propuestas:
3.1 propuesta de ejecución de función de contrato
Para las propuestas de tipo FunctionCall, internamente se ejecutarán las llamadas a los métodos del contrato especificadas en la propuesta en forma de acciones de lote de promesas.
3.2 Propuesta de transferencia de fondos del contrato
Para las propuestas de tipo Transfer, se llamará internamente a la función internal_payout() para realizar la operación de transferencia de diferentes tipos de tokens a la cuenta designada.
Este artículo presenta los conceptos clave del contrato de Sputnik DAO: la propuesta (Proposal), que incluye la creación, votación y proceso de ejecución de la propuesta. En las siguientes secciones se presentará la implementación y configuración del modelo de gobernanza en Sputnik-DAO (Policy).
Esta página puede contener contenido de terceros, que se proporciona únicamente con fines informativos (sin garantías ni declaraciones) y no debe considerarse como un respaldo por parte de Gate a las opiniones expresadas ni como asesoramiento financiero o profesional. Consulte el Descargo de responsabilidad para obtener más detalles.
11 me gusta
Recompensa
11
4
Republicar
Compartir
Comentar
0/400
RetiredMiner
· 08-13 09:59
La gobernanza por votación, el sabor familiar ha vuelto.
Ver originalesResponder0
GameFiCritic
· 08-12 02:31
El plan de gobernanza aún no es lo suficientemente descentralizado, la distribución del peso de los votos necesita ser más equilibrada.
Análisis de los contratos inteligentes del Sputnik DAO: diseño e implementación del mecanismo de propuestas
Diario de desarrollo de contratos inteligentes Rust (10-3): Análisis del mecanismo de propuestas de Sputnik DAO
Sputnik-DAO como infraestructura de NEAR Protocol, está impulsando la evolución del ecosistema NEAR hacia una dirección descentralizada. Actualmente, esta plataforma ha facilitado varias comunidades autónomas descentralizadas de proyectos NEAR y ofrece soluciones completas y flexibles para la gobernanza de decisiones comunitarias.
Sputnikdaov2 es un contrato inteligente utilizado para la votación de gobernanza de la comunidad Sputnik-DAO. Este artículo presentará los conceptos clave de dicho contrato: propuesta (Proposal), y artículos posteriores se centrarán en introducir los modos de gobernanza de la comunidad DAO relacionados con la propuesta (Policy).
1. Inicio de propuesta
Los miembros de la comunidad Sputnik-DAO pueden expresar opiniones o presentar propuestas sobre la gobernanza o gestión del proyecto. Cada miembro de la comunidad con acciones puede revisar y votar sobre las propuestas, influyendo así en la dirección futura del proyecto.
En el nivel del contrato, los miembros del DAO pueden llamar al método add_proposal() del contrato sputnikdaov2 para iniciar una nueva propuesta. Al llamar, se deben proporcionar los detalles de la propuesta(ProposalInput), que incluyen:
El método add_proposal() realizará una verificación y procesamiento, generando una propuesta completa (Proposal), y se vinculará con un único proposal_id, añadiéndola al conjunto de propuestas mantenido por el contrato.
La información completa de las propiedades de la propuesta incluye: proponente, estado, fecha de inicio, estado de votación, etc. El estado de la nueva propuesta se establece por defecto como InProgress.
Sputnik-DAO exige a los proponentes que pongan en garantía una cierta cantidad de tokens NEAR como depósito. Este depósito será devuelto al proponente al finalizar la propuesta de manera normal.
2. Estado de la propuesta
Las propuestas en Sputnik-DAO pueden pasar por varios estados: InProgress, Approved, Rejected, Removed, etc.
El cambio de estado de la propuesta es impulsado por el método act_proposal(). Los miembros del DAO pueden llamar a este método para votar sobre la propuesta y realizar otras operaciones:
Se llamará internamente a policy.proposal_status() para realizar la votación. Para las propuestas que cumplan con el umbral de votación, el estado cambiará respectivamente:
Las propuestas en estado Removed se eliminarán directamente del pool de propuestas y no se reembolsará el depósito. Las propuestas en estado Rejected se mantendrán en el pool de propuestas y se reembolsará el depósito.
3. Ejecución de la propuesta
Si el estado de la propuesta es Aprobado, se llamará internamente a internal_execute_proposal() para ejecutar el contenido de la propuesta.
Sputnik-DAO apoya varios tipos de propuestas, la mayoría de las cuales implican actualizaciones de configuración del modo de gobernanza de la DAO. A continuación se describen los procesos de manejo de dos tipos típicos de propuestas:
3.1 propuesta de ejecución de función de contrato
Para las propuestas de tipo FunctionCall, internamente se ejecutarán las llamadas a los métodos del contrato especificadas en la propuesta en forma de acciones de lote de promesas.
3.2 Propuesta de transferencia de fondos del contrato
Para las propuestas de tipo Transfer, se llamará internamente a la función internal_payout() para realizar la operación de transferencia de diferentes tipos de tokens a la cuenta designada.
Este artículo presenta los conceptos clave del contrato de Sputnik DAO: la propuesta (Proposal), que incluye la creación, votación y proceso de ejecución de la propuesta. En las siguientes secciones se presentará la implementación y configuración del modelo de gobernanza en Sputnik-DAO (Policy).