Serie de contratos inteligentes Rust: Análisis de los conceptos clave del Sputnik DAO
Sputnik-DAO, como infraestructura del NEAR Protocol, está impulsando el desarrollo del ecosistema NEAR hacia una dirección descentralizada. Actualmente, esta plataforma ha facilitado la formación de comunidades autónomas para varios proyectos de NEAR y ha proporcionado un completo y flexible esquema de gobernanza para la toma 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 los artículos posteriores se centrarán en detallar el modelo de gobernanza de la comunidad DAO (Policy).
1. Inicio de la propuesta
Cada miembro en Sputnik-DAO puede presentar propuestas sobre la gobernanza o gestión del proyecto. Luego, los miembros de la comunidad que poseen acciones pueden revisar y votar sobre las propuestas. Los miembros pueden influir en la dirección futura del proyecto mediante la votación o la presentación de propuestas.
En el nivel del contrato, los miembros del DAO pueden llamar al método add_proposal() del contrato sputnikdaov2 para iniciar una nueva propuesta. El proponente debe proporcionar información detallada de la propuesta (ProposalInput), incluyendo:
Descripción del texto de la propuesta (Description )
Tipo de propuesta ( kind )
Esta información se pasará como parámetros al método add_proposal(), y después de la verificación y el procesamiento, se generará la propuesta completa (Proposal), que estará vinculada con un único proposal_id y se añadirá al mapeo de proposals mantenido globalmente por el contrato.
La información completa de las propiedades incluidas en la propuesta es:
description: descripción
kind: tipo
proposer: proponente
status: estado
submission_time: tiempo de presentación
vote_counts: conteo de votos
votes: detalles de la votación
Sputnik-DAO requiere que los proponentes pongan en garantía una cierta cantidad de tokens NEAR al llamar a add_proposal(). Este depósito se devolverá al proponente al finalizar normalmente la propuesta.
2. Estado de la propuesta
Las propuestas en Sputnik-DAO pueden experimentar varios estados, siendo el estado inicial InProgress. Los cambios de estado son impulsados por el método act_proposal().
Los miembros del DAO pueden llamar a act_proposal() para ejecutar operaciones sobre la propuesta:
VoteApprove: aprobación
VoteReject: Rechazar
VoteRemove: eliminar
Después de la votación, se llamará a policy.proposal_status() para contar los votos. El estado de la propuesta que cumpla con el umbral de votación cambiará:
Aprobado: Llamar a internal_execute_proposal() para ejecutar
Rechazado/Eliminado: Llamando a internal_reject_proposal() para procesar
Las propuestas en estado Removed se eliminarán del fondo de propuestas y no se devolverá el depósito, mientras que las propuestas en estado Rejected permanecerán en el fondo de propuestas y se devolverá el depósito.
3. Ejecución de la propuesta
Las propuestas en estado de 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 funciones del contrato
Las propuestas del tipo FunctionCall pasan la función a ejecutar a través del parámetro ProposalInput (actions). Cada ActionCall puede especificar el nombre del método del contrato y los parámetros. Sputnik-DAO utiliza la forma de Promesas por Lotes de Acciones para completar la ejecución de funciones del contrato.
3.2 propuesta de transferencia de fondos del contrato
La propuesta de tipo Transfer se utiliza para transferir los tokens acumulados en la cuenta del contrato al receiver_id especificado. Llama a la función internal_payout() para realizar la operación de transferencia de diferentes tipos de tokens y receiver_id.
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.
14 me gusta
Recompensa
14
6
Republicar
Compartir
Comentar
0/400
RamenDeFiSurvivor
· 08-09 18:37
cerca de trabajar bastante rápido
Ver originalesResponder0
DefiPlaybook
· 08-09 18:36
Basado en el análisis de datos on-chain, el TVL subió un 25.6%
Ver originalesResponder0
SerLiquidated
· 08-09 18:34
¿Qué hacer si estás borracho al votar? Los que entienden, digan.
Ver originalesResponder0
fork_in_the_road
· 08-09 18:32
la gobernanza de dao desperdicia tiempo...
Ver originalesResponder0
BoredApeResistance
· 08-09 18:24
¿Cuándo podrá NEAR tener un DAO más confiable...
Ver originalesResponder0
BoredRiceBall
· 08-09 18:18
¿No es atractivo ver el código directamente en esta propuesta?
Sputnik DAO contratos inteligentes núcleo: explicación del mecanismo de propuestas
Serie de contratos inteligentes Rust: Análisis de los conceptos clave del Sputnik DAO
Sputnik-DAO, como infraestructura del NEAR Protocol, está impulsando el desarrollo del ecosistema NEAR hacia una dirección descentralizada. Actualmente, esta plataforma ha facilitado la formación de comunidades autónomas para varios proyectos de NEAR y ha proporcionado un completo y flexible esquema de gobernanza para la toma 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 los artículos posteriores se centrarán en detallar el modelo de gobernanza de la comunidad DAO (Policy).
1. Inicio de la propuesta
Cada miembro en Sputnik-DAO puede presentar propuestas sobre la gobernanza o gestión del proyecto. Luego, los miembros de la comunidad que poseen acciones pueden revisar y votar sobre las propuestas. Los miembros pueden influir en la dirección futura del proyecto mediante la votación o la presentación de propuestas.
En el nivel del contrato, los miembros del DAO pueden llamar al método add_proposal() del contrato sputnikdaov2 para iniciar una nueva propuesta. El proponente debe proporcionar información detallada de la propuesta (ProposalInput), incluyendo:
Esta información se pasará como parámetros al método add_proposal(), y después de la verificación y el procesamiento, se generará la propuesta completa (Proposal), que estará vinculada con un único proposal_id y se añadirá al mapeo de proposals mantenido globalmente por el contrato.
La información completa de las propiedades incluidas en la propuesta es:
Sputnik-DAO requiere que los proponentes pongan en garantía una cierta cantidad de tokens NEAR al llamar a add_proposal(). Este depósito se devolverá al proponente al finalizar normalmente la propuesta.
2. Estado de la propuesta
Las propuestas en Sputnik-DAO pueden experimentar varios estados, siendo el estado inicial InProgress. Los cambios de estado son impulsados por el método act_proposal().
Los miembros del DAO pueden llamar a act_proposal() para ejecutar operaciones sobre la propuesta:
Después de la votación, se llamará a policy.proposal_status() para contar los votos. El estado de la propuesta que cumpla con el umbral de votación cambiará:
Las propuestas en estado Removed se eliminarán del fondo de propuestas y no se devolverá el depósito, mientras que las propuestas en estado Rejected permanecerán en el fondo de propuestas y se devolverá el depósito.
3. Ejecución de la propuesta
Las propuestas en estado de 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 funciones del contrato
Las propuestas del tipo FunctionCall pasan la función a ejecutar a través del parámetro ProposalInput (actions). Cada ActionCall puede especificar el nombre del método del contrato y los parámetros. Sputnik-DAO utiliza la forma de Promesas por Lotes de Acciones para completar la ejecución de funciones del contrato.
3.2 propuesta de transferencia de fondos del contrato
La propuesta de tipo Transfer se utiliza para transferir los tokens acumulados en la cuenta del contrato al receiver_id especificado. Llama a la función internal_payout() para realizar la operación de transferencia de diferentes tipos de tokens y receiver_id.