Diário de Desenvolvimento de Contratos Inteligentes Rust (11): Análise do Mecanismo de Propostas do DAO Sputnik
Sputnik-DAO como infraestrutura do NEAR Protocol está impulsionando o ecossistema NEAR na direção da descentralização. Atualmente, a plataforma já facilitou a criação de várias comunidades autônomas descentralizadas para projetos NEAR e oferece uma solução de governança comunitária completa e flexível.
sputnikdaov2 é o contrato inteligente para a votação de governança da comunidade Sputnik-DAO. Este artigo apresentará os conceitos principais do contrato: proposta (Proposal), artigos subsequentes abordarão os modos de governança da comunidade DAO relacionados à proposta (Policy).
1. Início da proposta
Cada membro do Sputnik-DAO pode expressar suas opiniões ou submeter propostas sobre a gestão do projeto. Cada membro da comunidade que possui ações pode rever e votar sobre as propostas, influenciando assim a direção futura do projeto.
No nível do contrato, os membros do DAO podem chamar o método add_proposal() do contrato sputnikdaov2 para iniciar uma nova proposta:
ferrugem
u64
Os proponentes devem fornecer detalhes da proposta (ProposalInput):
Descrição do texto da proposta (Description)
Tipo de proposta ( kind )
Estas informações serão passadas como parâmetros para o método add_proposal(), que realizará o processamento de verificação, gerando uma proposta completa (Proposal), que será vinculada a um único proposal_id e adicionada ao pool de propostas mantido globalmente pelo contrato.
As informações completas sobre as propriedades da proposta incluem:
description: descrição
tipo: tipo
proposer: proponente
status: estado
submission_time: hora de submissão
vote_counts: contagem de votos
votes: registos de votação
É importante notar que existe o conceito de depósito de proposta (proposal_bond) no Sputnik-DAO, onde os proponentes precisam garantir um certo montante de tokens NEAR como garantia ao chamar add_proposal(). Este depósito será devolvido quando a proposta terminar normalmente.
2. Estado da proposta
As propostas no Sputnik-DAO podem passar por vários estados:
InProgress: Em progresso
Approved: Aprovado
Rejected: Rejeitado
Removido: Removido
A mudança de estado da proposta é impulsionada pelo método act_proposal(). Os membros do DAO podem chamar esse método para realizar as seguintes ações na proposta:
VoteApprove: Aprovado
VoteReject: rejeitar
VoteRemove: Remover
Após a votação, será chamado o policy.proposal_status() para a contagem dos votos. O estado da proposta que atende às condições será alterado para Approved, Rejected ou Removed.
Propostas com status Aprovado serão executadas, enquanto status Rejeitado e Removido realizarão operações de finalização. Propostas com status Removido serão retiradas do pool de propostas e o depósito não será reembolsado.
3. Execução da proposta
Para propostas com o estado Approved, act_proposal() chamará internal_execute_proposal() para executar o conteúdo da proposta.
Sputnik-DAO suporta vários tipos de propostas, principalmente relacionadas à atualização da configuração do modo de governação do DAO. Este artigo foca no processo de tratamento de dois tipos típicos de propostas:
( 3.1 proposta de execução de função de contrato)FunctionCall###
O tipo de proposta FunctionCall recebe, ao ser criada, a operação de função a ser executada (actions). internal_execute_proposal() executará essas chamadas de função na forma de Ações de Lote de Promessa.
( 3.2 Proposta de transferência de fundos de contratos inteligentes ) Transferir ###
A proposta do tipo Transfer é usada para transferir os tokens acumulados na conta do contrato para a conta especificada. internal_execute_proposal() chamará a função internal_payout() para realizar a operação de transferência para diferentes tipos de tokens e contas receptoras.
4. Resumo
Este artigo apresenta os conceitos centrais do contrato Sputnik DAO — proposta (Proposal), incluindo a criação da proposta, mudanças de estado e o processo de execução. Artigos subsequentes descreverão de forma mais detalhada a implementação e configuração do modo de governança do Sputnik-DAO com base no mecanismo de propostas (Policy).
Esta página pode conter conteúdo de terceiros, que é fornecido apenas para fins informativos (não para representações/garantias) e não deve ser considerada como um endosso de suas opiniões pela Gate nem como aconselhamento financeiro ou profissional. Consulte a Isenção de responsabilidade para obter detalhes.
Análise do contrato inteligente Sputnik DAO: Explicação do mecanismo de propostas e fluxo de execução
Diário de Desenvolvimento de Contratos Inteligentes Rust (11): Análise do Mecanismo de Propostas do DAO Sputnik
Sputnik-DAO como infraestrutura do NEAR Protocol está impulsionando o ecossistema NEAR na direção da descentralização. Atualmente, a plataforma já facilitou a criação de várias comunidades autônomas descentralizadas para projetos NEAR e oferece uma solução de governança comunitária completa e flexível.
sputnikdaov2 é o contrato inteligente para a votação de governança da comunidade Sputnik-DAO. Este artigo apresentará os conceitos principais do contrato: proposta (Proposal), artigos subsequentes abordarão os modos de governança da comunidade DAO relacionados à proposta (Policy).
1. Início da proposta
Cada membro do Sputnik-DAO pode expressar suas opiniões ou submeter propostas sobre a gestão do projeto. Cada membro da comunidade que possui ações pode rever e votar sobre as propostas, influenciando assim a direção futura do projeto.
No nível do contrato, os membros do DAO podem chamar o método add_proposal() do contrato sputnikdaov2 para iniciar uma nova proposta:
ferrugem u64
Os proponentes devem fornecer detalhes da proposta (ProposalInput):
Estas informações serão passadas como parâmetros para o método add_proposal(), que realizará o processamento de verificação, gerando uma proposta completa (Proposal), que será vinculada a um único proposal_id e adicionada ao pool de propostas mantido globalmente pelo contrato.
As informações completas sobre as propriedades da proposta incluem:
É importante notar que existe o conceito de depósito de proposta (proposal_bond) no Sputnik-DAO, onde os proponentes precisam garantir um certo montante de tokens NEAR como garantia ao chamar add_proposal(). Este depósito será devolvido quando a proposta terminar normalmente.
2. Estado da proposta
As propostas no Sputnik-DAO podem passar por vários estados:
A mudança de estado da proposta é impulsionada pelo método act_proposal(). Os membros do DAO podem chamar esse método para realizar as seguintes ações na proposta:
Após a votação, será chamado o policy.proposal_status() para a contagem dos votos. O estado da proposta que atende às condições será alterado para Approved, Rejected ou Removed.
Propostas com status Aprovado serão executadas, enquanto status Rejeitado e Removido realizarão operações de finalização. Propostas com status Removido serão retiradas do pool de propostas e o depósito não será reembolsado.
3. Execução da proposta
Para propostas com o estado Approved, act_proposal() chamará internal_execute_proposal() para executar o conteúdo da proposta.
Sputnik-DAO suporta vários tipos de propostas, principalmente relacionadas à atualização da configuração do modo de governação do DAO. Este artigo foca no processo de tratamento de dois tipos típicos de propostas:
( 3.1 proposta de execução de função de contrato)FunctionCall###
O tipo de proposta FunctionCall recebe, ao ser criada, a operação de função a ser executada (actions). internal_execute_proposal() executará essas chamadas de função na forma de Ações de Lote de Promessa.
( 3.2 Proposta de transferência de fundos de contratos inteligentes ) Transferir ###
A proposta do tipo Transfer é usada para transferir os tokens acumulados na conta do contrato para a conta especificada. internal_execute_proposal() chamará a função internal_payout() para realizar a operação de transferência para diferentes tipos de tokens e contas receptoras.
4. Resumo
Este artigo apresenta os conceitos centrais do contrato Sputnik DAO — proposta (Proposal), incluindo a criação da proposta, mudanças de estado e o processo de execução. Artigos subsequentes descreverão de forma mais detalhada a implementação e configuração do modo de governança do Sputnik-DAO com base no mecanismo de propostas (Policy).