Diario de desarrollo de contratos inteligentes Rust (11) Análisis del mecanismo de propuestas de Sputnik DAO
Sputnik-DAO es la infraestructura proporcionada por NEAR Protocol, que impulsa la evolución descentralizada del ecosistema NEAR. Actualmente, esta plataforma ha facilitado la creación de varias comunidades autónomas descentralizadas de proyectos NEAR, ofreciendo soluciones de gobernanza comunitaria completas y flexibles.
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 los artículos posteriores se centrarán en la introducción de los modos de gobernanza de la comunidad DAO (Policy).
1. Iniciación de propuestas
Los miembros de la comunidad Sputnik-DAO pueden expresar opiniones o presentar propuestas, y otros miembros accionistas pueden revisar y votar sobre las propuestas. Los miembros pueden influir en la dirección futura del proyecto mediante votaciones o iniciando nuevas propuestas.
En el nivel del contrato, los miembros pueden llamar al método add_proposal() del contrato sputnikdaov2 para iniciar una nueva propuesta:
oxidación
u64
El proponente debe proporcionar detalles de la propuesta (ProposalInput):
Descripción del texto de la propuesta (Description)
Tipo de propuesta (kind)
La información de la propuesta se pasa como parámetro al método add_proposal(), después de la verificación y el procesamiento se genera la propuesta completa (Proposal), y se vincula con el único proposal_id, añadiéndola al pool de propuestas mantenido globalmente por el contrato.
La información completa de las propiedades de la propuesta incluye:
description: descripción
kind:tipo
proposer:proponente
status: estado ( por defecto es InProgress )
submission_time: tiempo de envío
vote_counts: conteo de votos ( inicialmente vacío )
votes: detalles de la votación ( inicialmente vacío )
En Sputnik-DAO existe el concepto de depósito de propuesta (proposal_bond), donde el proponente debe depositar una cierta cantidad de tokens NEAR como garantía al llamar a add_proposal(). Este depósito se reembolsará al proponente al finalizar la propuesta de manera normal.
2. Estado de la propuesta
Las propuestas en Sputnik-DAO pueden pasar por varios estados, siendo el estado inicial InProgress. Los cambios de estado son impulsados por el método act_proposal().
Los miembros pueden llamar a act_proposal() para llevar a cabo las siguientes acciones en la propuesta:
VoteApprove:aprobación
VoteReject:oponerse
VoteRemove: eliminar
Después de la votación, el programa llamará a policy.proposal_status() para llevar a cabo el conteo de votos. El estado de la propuesta que cumpla con el umbral de votación se cambiará en consecuencia:
Aprobado: ejecutar internal_execute_proposal()
Rechazado/Eliminado: procesado a través de internal_reject_proposal()
Las propuestas con estado Eliminado se eliminarán del grupo de propuestas y no se reembolsará el depósito, mientras que las propuestas con estado Rechazado se conservarán y se reembolsará el depósito.
3. Ejecución de propuestas
Las propuestas en estado Aprobado llamarán a internal_execute_proposal() para ejecutar el contenido de la decisión. Sputnik-DAO admite varios tipos de propuestas, este artículo presenta dos tipos típicos:
( 3.1 Propuesta de ejecución de función de contrato )FunctionCall###
La propuesta de tipo FunctionCall se creó con la operación de función a ejecutar (actions). internal_execute_proposal() ejecuta estas operaciones en forma de acciones de Promise Batch.
( 3.2 Propuesta de transferencia de fondos de contrato)Transfer###
La propuesta de tipo Transfer se utiliza para transferir los tokens acumulados en la cuenta del contrato a la cuenta designada. internal_execute_proposal() llamará a la función internal_payout() para realizar operaciones de transferencia de diferentes tipos de tokens.
4. Resumen
Este artículo presenta los conceptos fundamentales del contrato de Sputnik DAO - propuesta (Proposal), que incluye la creación de la propuesta, cambios de estado y el proceso de ejecución. Posteriormente, se presentará el modelo de gobernanza de Sputnik-DAO basado en la propuesta (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.
13 me gusta
Recompensa
13
3
Compartir
Comentar
0/400
ZenChainWalker
· hace7h
La simplicidad es la máxima expresión, cerca sigue siendo alcista.
Ver originalesResponder0
Hash_Bandit
· 08-01 17:45
minería cerca del protocolo en 2020... buenos tiempos, no voy a mentir
Núcleo de contratos inteligentes Sputnik DAO: Análisis profundo del mecanismo de propuestas
Diario de desarrollo de contratos inteligentes Rust (11) Análisis del mecanismo de propuestas de Sputnik DAO
Sputnik-DAO es la infraestructura proporcionada por NEAR Protocol, que impulsa la evolución descentralizada del ecosistema NEAR. Actualmente, esta plataforma ha facilitado la creación de varias comunidades autónomas descentralizadas de proyectos NEAR, ofreciendo soluciones de gobernanza comunitaria completas y flexibles.
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 los artículos posteriores se centrarán en la introducción de los modos de gobernanza de la comunidad DAO (Policy).
1. Iniciación de propuestas
Los miembros de la comunidad Sputnik-DAO pueden expresar opiniones o presentar propuestas, y otros miembros accionistas pueden revisar y votar sobre las propuestas. Los miembros pueden influir en la dirección futura del proyecto mediante votaciones o iniciando nuevas propuestas.
En el nivel del contrato, los miembros pueden llamar al método add_proposal() del contrato sputnikdaov2 para iniciar una nueva propuesta:
oxidación u64
El proponente debe proporcionar detalles de la propuesta (ProposalInput):
La información de la propuesta se pasa como parámetro al método add_proposal(), después de la verificación y el procesamiento se genera la propuesta completa (Proposal), y se vincula con el único proposal_id, añadiéndola al pool de propuestas mantenido globalmente por el contrato.
La información completa de las propiedades de la propuesta incluye:
En Sputnik-DAO existe el concepto de depósito de propuesta (proposal_bond), donde el proponente debe depositar una cierta cantidad de tokens NEAR como garantía al llamar a add_proposal(). Este depósito se reembolsará al proponente al finalizar la propuesta de manera normal.
2. Estado de la propuesta
Las propuestas en Sputnik-DAO pueden pasar por varios estados, siendo el estado inicial InProgress. Los cambios de estado son impulsados por el método act_proposal().
Los miembros pueden llamar a act_proposal() para llevar a cabo las siguientes acciones en la propuesta:
Después de la votación, el programa llamará a policy.proposal_status() para llevar a cabo el conteo de votos. El estado de la propuesta que cumpla con el umbral de votación se cambiará en consecuencia:
Las propuestas con estado Eliminado se eliminarán del grupo de propuestas y no se reembolsará el depósito, mientras que las propuestas con estado Rechazado se conservarán y se reembolsará el depósito.
3. Ejecución de propuestas
Las propuestas en estado Aprobado llamarán a internal_execute_proposal() para ejecutar el contenido de la decisión. Sputnik-DAO admite varios tipos de propuestas, este artículo presenta dos tipos típicos:
( 3.1 Propuesta de ejecución de función de contrato )FunctionCall###
La propuesta de tipo FunctionCall se creó con la operación de función a ejecutar (actions). internal_execute_proposal() ejecuta estas operaciones en forma de acciones de Promise Batch.
( 3.2 Propuesta de transferencia de fondos de contrato)Transfer###
La propuesta de tipo Transfer se utiliza para transferir los tokens acumulados en la cuenta del contrato a la cuenta designada. internal_execute_proposal() llamará a la función internal_payout() para realizar operaciones de transferencia de diferentes tipos de tokens.
4. Resumen
Este artículo presenta los conceptos fundamentales del contrato de Sputnik DAO - propuesta (Proposal), que incluye la creación de la propuesta, cambios de estado y el proceso de ejecución. Posteriormente, se presentará el modelo de gobernanza de Sputnik-DAO basado en la propuesta (Policy).