Série de contratos inteligentes Rust: Análise dos conceitos centrais do Sputnik DAO
Sputnik-DAO, como infraestrutura do NEAR Protocol, está promovendo o desenvolvimento da ecologia NEAR na direção da descentralização. Atualmente, a plataforma já facilitou a formação de várias comunidades autônomas de projetos NEAR e oferece uma solução de governança de decisão comunitária completa e flexível.
Sputnikdaov2 é um contrato inteligente utilizado para a votação de governança da comunidade Sputnik-DAO. Este artigo apresentará os conceitos centrais desse contrato: proposta (Proposal), artigos subsequentes detalharão os modos de governança da comunidade DAO relacionados à proposta (Policy).
1. Início da proposta
Cada membro do Sputnik-DAO pode submeter propostas sobre a governança ou gestão do projeto. Em seguida, os membros da comunidade com ações podem discutir e votar nas propostas. Os membros podem influenciar a direção futura do projeto através de votos ou iniciando propostas.
No nível do contrato, os membros do DAO podem chamar o método add_proposal() do contrato sputnikdaov2 para iniciar uma nova proposta. O proponente deve fornecer informações detalhadas sobre a proposta(ProposalInput), incluindo:
Descrição do texto da proposta (Description)
Tipo de proposta (kind)
Essas informações serão passadas como parâmetros para o método add_proposal(), e após verificação e processamento gerarão a proposta completa (Proposal), que será vinculada ao único proposal_id e adicionada ao mapeamento de proposals mantido globalmente pelo contrato.
As informações completas de atributos incluídas na proposta são:
description: descrição
tipo: Tipo
proposer: proponente
status: status
submission_time: hora de submissão
vote_counts: contagem de votos
votes: Detalhes da votação
Sputnik-DAO exige que os proponentes depositem uma certa quantia de tokens NEAR como garantia ao chamar add_proposal(). Este depósito será devolvido ao proponente quando a proposta terminar normalmente.
2. Estado da proposta
As propostas no Sputnik-DAO podem passar por vários estados, sendo o estado inicial InProgress. A mudança de estado é impulsionada pelo método act_proposal().
Os membros da DAO podem chamar act_proposal() para executar operações sobre a proposta:
VoteApprove: Aprovado
VoteReject: Rejeitar
VoteRemove: Remover
Após a votação, será chamada a policy.proposal_status() para a contagem dos votos. O estado da proposta que atende ao limiar de votação será alterado:
Aprovado: chamando internal_execute_proposal() para executar
Rejeitado/Removido: Chamada internal_reject_proposal() processar
Propostas com status Removido serão retiradas da piscina de propostas e o depósito não será reembolsado, enquanto propostas com status Rejeitado permanecerão na piscina de propostas e o depósito será reembolsado.
3. Execução da Proposta
Propostas com status Aprovado chamarão internal_execute_proposal() para executar o conteúdo da decisão. O Sputnik-DAO suporta vários tipos de propostas, este artigo apresenta dois tipos típicos:
3.1 proposta de execução de função de contrato
A proposta do tipo FunctionCall é passada através do parâmetro ProposalInput para a execução da operação da função (actions). Cada ActionCall pode especificar o nome do método do contrato e os parâmetros. O Sputnik-DAO utiliza a forma Promise Batch Actions para completar a execução da função do contrato.
3.2 Proposta de transferência de fundos de contrato
Propostas do tipo Transfer são usadas para transferir os tokens acumulados na conta do contrato para o receiver_id especificado. A chamada subjacente à função internal_payout() realiza operações de transferência para diferentes tipos de tokens e receiver_id.
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.
13 Curtidas
Recompensa
13
6
Repostar
Compartilhar
Comentário
0/400
RamenDeFiSurvivor
· 2h atrás
near trabalha rápido
Ver originalResponder0
DefiPlaybook
· 2h atrás
Baseado na análise de dados na cadeia, o TVL subiu 25,6%
Ver originalResponder0
SerLiquidated
· 2h atrás
O que fazer se eu votar bêbado? Quem entende, diga.
Ver originalResponder0
fork_in_the_road
· 2h atrás
o desperdício de tempo na governança do dao...
Ver originalResponder0
BoredApeResistance
· 3h atrás
Quando é que NEAR pode ter um DAO mais confiável...
Ver originalResponder0
BoredRiceBall
· 3h atrás
Esta proposta, ao ver o código diretamente, não é atraente?
Núcleo dos contratos inteligentes Sputnik DAO: Explicação do mecanismo de propostas
Série de contratos inteligentes Rust: Análise dos conceitos centrais do Sputnik DAO
Sputnik-DAO, como infraestrutura do NEAR Protocol, está promovendo o desenvolvimento da ecologia NEAR na direção da descentralização. Atualmente, a plataforma já facilitou a formação de várias comunidades autônomas de projetos NEAR e oferece uma solução de governança de decisão comunitária completa e flexível.
Sputnikdaov2 é um contrato inteligente utilizado para a votação de governança da comunidade Sputnik-DAO. Este artigo apresentará os conceitos centrais desse contrato: proposta (Proposal), artigos subsequentes detalharão os modos de governança da comunidade DAO relacionados à proposta (Policy).
1. Início da proposta
Cada membro do Sputnik-DAO pode submeter propostas sobre a governança ou gestão do projeto. Em seguida, os membros da comunidade com ações podem discutir e votar nas propostas. Os membros podem influenciar a direção futura do projeto através de votos ou iniciando propostas.
No nível do contrato, os membros do DAO podem chamar o método add_proposal() do contrato sputnikdaov2 para iniciar uma nova proposta. O proponente deve fornecer informações detalhadas sobre a proposta(ProposalInput), incluindo:
Essas informações serão passadas como parâmetros para o método add_proposal(), e após verificação e processamento gerarão a proposta completa (Proposal), que será vinculada ao único proposal_id e adicionada ao mapeamento de proposals mantido globalmente pelo contrato.
As informações completas de atributos incluídas na proposta são:
Sputnik-DAO exige que os proponentes depositem uma certa quantia de tokens NEAR como garantia ao chamar add_proposal(). Este depósito será devolvido ao proponente quando a proposta terminar normalmente.
2. Estado da proposta
As propostas no Sputnik-DAO podem passar por vários estados, sendo o estado inicial InProgress. A mudança de estado é impulsionada pelo método act_proposal().
Os membros da DAO podem chamar act_proposal() para executar operações sobre a proposta:
Após a votação, será chamada a policy.proposal_status() para a contagem dos votos. O estado da proposta que atende ao limiar de votação será alterado:
Propostas com status Removido serão retiradas da piscina de propostas e o depósito não será reembolsado, enquanto propostas com status Rejeitado permanecerão na piscina de propostas e o depósito será reembolsado.
3. Execução da Proposta
Propostas com status Aprovado chamarão internal_execute_proposal() para executar o conteúdo da decisão. O Sputnik-DAO suporta vários tipos de propostas, este artigo apresenta dois tipos típicos:
3.1 proposta de execução de função de contrato
A proposta do tipo FunctionCall é passada através do parâmetro ProposalInput para a execução da operação da função (actions). Cada ActionCall pode especificar o nome do método do contrato e os parâmetros. O Sputnik-DAO utiliza a forma Promise Batch Actions para completar a execução da função do contrato.
3.2 Proposta de transferência de fundos de contrato
Propostas do tipo Transfer são usadas para transferir os tokens acumulados na conta do contrato para o receiver_id especificado. A chamada subjacente à função internal_payout() realiza operações de transferência para diferentes tipos de tokens e receiver_id.