Journal de développement des smart contracts Rust (11) : Analyse du mécanisme de proposition du DAO Sputnik
Sputnik-DAO en tant qu'infrastructure du NEAR Protocol, promeut le développement de l'écosystème NEAR vers une direction décentralisée. Actuellement, cette plateforme a permis à plusieurs projets NEAR de créer des communautés autonomes décentralisées et propose un plan de gouvernance de décision communautaire complet et flexible.
Sputnikdaov2 est un smart contracts utilisé pour le vote de gouvernance de la communauté Sputnik-DAO. Cet article présentera le concept clé de ce contrat : la proposition (Proposal), et dans les articles suivants, nous introduirons les modes de gouvernance de la communauté DAO liés à la proposition (Policy).
1. Lancement de la proposition
Chaque membre de Sputnik-DAO peut exprimer son opinion ou soumettre une proposition concernant la gouvernance ou la gestion du projet. Ensuite, chaque membre de la communauté détenteur de parts peut examiner et voter sur cette proposition. Les membres peuvent influencer le développement futur du projet en votant sur des propositions ou en initiant de nouvelles propositions.
Du point de vue du contrat, les membres du DAO peuvent appeler la méthode add_proposal() du contrat sputnikdaov2 pour soumettre une nouvelle proposition. Le proposant doit fournir des détails sur la proposition(ProposalInput) :
Description textuelle de la proposition (Description)
Type de proposition ( kind )
La méthode add_proposal() vérifiera et traitera les informations de la proposition, générant une proposition complète (Proposal), et l'associera à un identifiant unique proposal_id, l'ajoutant à la piscine des propositions maintenue globalement par le contrat.
Les informations complètes sur les attributs inclus dans la proposition sont :
description: description
kind: type
proposer: proposer
status: état
submission_time: heure de soumission
vote_counts: statistiques de vote
votes: Détails du vote
Sputnik-DAO exige que les proposeurs mettent en jeu un certain montant de jetons NEAR comme garantie lors de la soumission d'une proposition. Ce dépôt sera remboursé au proposeur à la fin normale de la proposition.
2. État de la proposition
Les propositions standard dans le Sputnik-DAO peuvent subir les états suivants :
InProgress: en cours
Approved: Approuvé
Rejected: Rejeté
Retiré : 已移除
Expired: Expiré
Moved: Déplacé
Le changement d'état de la proposition est piloté par la méthode act_proposal(). Les membres du DAO peuvent effectuer les opérations suivantes sur la proposition :
VoteApprove: Approuver
VoteReject: opposer
VoteRemove: Retirer
Après le vote, le contrat appellera policy.proposal_status() pour le comptage des votes. L'état de la proposition qui satisfait le seuil de vote sera modifié en conséquence :
Approved: exécution de internal_execute_proposal()
Rejeté/Retiré : exécutez les opérations suivantes via internal_reject_proposal()
Les propositions avec le statut Retiré seront retirées du pool de propositions sans remboursement du dépôt. Les propositions avec le statut Rejeté resteront dans le pool et le dépôt sera remboursé.
3. Exécution de la proposition
Pour les propositions en statut Approved, act_proposal() appellera internal_execute_proposal() pour exécuter le contenu de la proposition.
Sputnik-DAO prend en charge plusieurs types de propositions, tels que ChangeConfig, ChangePolicy, FunctionCall, Transfer, etc.
Voici une introduction aux processus d'exécution de deux types de propositions typiques :
3.1 proposition d'exécution de fonction de contrat ( FunctionCall )
Les propositions de type FunctionCall passent des opérations de fonction spécifiques à exécuter lors de leur création (actions). Chaque action peut spécifier le nom de la méthode du contrat et les paramètres.
Sputnik-DAO utilise la forme d'actions par lots de promesses pour exécuter des propositions de type fonction de contrat.
3.2 proposition de transfert de fonds de contrat ( Transfert )
Les propositions de type Transfer peuvent transférer les jetons accumulés sur le compte de contrat (NEAR ou les jetons conformes à la norme NEP-141 ) vers un compte spécifié.
internal_execute_proposal() appellera la fonction internal_payout(), réalisant des opérations de transfert pour différents types de jetons et comptes récepteurs.
4. Résumé
Cet article présente les concepts clés du contrat Sputnik DAO - Proposition (, explique comment créer de nouvelles propositions et voter pour leur exécution, ainsi que les règles de changement d'état des propositions. Par la suite, nous aborderons le modèle de gouvernance de Sputnik-DAO basé sur les propositions )Politique( et sa mise en œuvre et configuration.
Cette page peut inclure du contenu de tiers fourni à des fins d'information uniquement. Gate ne garantit ni l'exactitude ni la validité de ces contenus, n’endosse pas les opinions exprimées, et ne fournit aucun conseil financier ou professionnel à travers ces informations. Voir la section Avertissement pour plus de détails.
8 J'aime
Récompense
8
6
Reposter
Partager
Commentaire
0/400
quietly_staking
· 08-08 17:11
C'est juste un vote d'âme.
Voir l'originalRépondre0
ProposalDetective
· 08-06 17:22
Il est évident que vous vous êtes trompé de personne.
Voir l'originalRépondre0
GasGasGasBro
· 08-06 06:18
Les contrats ne me concernent pas, je ne reconnais que l'argent.
Voir l'originalRépondre0
FarmHopper
· 08-06 06:15
Alors, vous utilisez toujours le vote ?
Voir l'originalRépondre0
PriceOracleFairy
· 08-06 06:12
franchement, le jeu dao de bruh near devient plutôt intéressant, pour être honnête
Analyse complète du mécanisme de proposition de Sputnik DAO : du création à l'exécution du cycle de vie
Journal de développement des smart contracts Rust (11) : Analyse du mécanisme de proposition du DAO Sputnik
Sputnik-DAO en tant qu'infrastructure du NEAR Protocol, promeut le développement de l'écosystème NEAR vers une direction décentralisée. Actuellement, cette plateforme a permis à plusieurs projets NEAR de créer des communautés autonomes décentralisées et propose un plan de gouvernance de décision communautaire complet et flexible.
Sputnikdaov2 est un smart contracts utilisé pour le vote de gouvernance de la communauté Sputnik-DAO. Cet article présentera le concept clé de ce contrat : la proposition (Proposal), et dans les articles suivants, nous introduirons les modes de gouvernance de la communauté DAO liés à la proposition (Policy).
1. Lancement de la proposition
Chaque membre de Sputnik-DAO peut exprimer son opinion ou soumettre une proposition concernant la gouvernance ou la gestion du projet. Ensuite, chaque membre de la communauté détenteur de parts peut examiner et voter sur cette proposition. Les membres peuvent influencer le développement futur du projet en votant sur des propositions ou en initiant de nouvelles propositions.
Du point de vue du contrat, les membres du DAO peuvent appeler la méthode add_proposal() du contrat sputnikdaov2 pour soumettre une nouvelle proposition. Le proposant doit fournir des détails sur la proposition(ProposalInput) :
La méthode add_proposal() vérifiera et traitera les informations de la proposition, générant une proposition complète (Proposal), et l'associera à un identifiant unique proposal_id, l'ajoutant à la piscine des propositions maintenue globalement par le contrat.
Les informations complètes sur les attributs inclus dans la proposition sont :
Sputnik-DAO exige que les proposeurs mettent en jeu un certain montant de jetons NEAR comme garantie lors de la soumission d'une proposition. Ce dépôt sera remboursé au proposeur à la fin normale de la proposition.
2. État de la proposition
Les propositions standard dans le Sputnik-DAO peuvent subir les états suivants :
Le changement d'état de la proposition est piloté par la méthode act_proposal(). Les membres du DAO peuvent effectuer les opérations suivantes sur la proposition :
Après le vote, le contrat appellera policy.proposal_status() pour le comptage des votes. L'état de la proposition qui satisfait le seuil de vote sera modifié en conséquence :
Les propositions avec le statut Retiré seront retirées du pool de propositions sans remboursement du dépôt. Les propositions avec le statut Rejeté resteront dans le pool et le dépôt sera remboursé.
3. Exécution de la proposition
Pour les propositions en statut Approved, act_proposal() appellera internal_execute_proposal() pour exécuter le contenu de la proposition.
Sputnik-DAO prend en charge plusieurs types de propositions, tels que ChangeConfig, ChangePolicy, FunctionCall, Transfer, etc.
Voici une introduction aux processus d'exécution de deux types de propositions typiques :
3.1 proposition d'exécution de fonction de contrat ( FunctionCall )
Les propositions de type FunctionCall passent des opérations de fonction spécifiques à exécuter lors de leur création (actions). Chaque action peut spécifier le nom de la méthode du contrat et les paramètres.
Sputnik-DAO utilise la forme d'actions par lots de promesses pour exécuter des propositions de type fonction de contrat.
3.2 proposition de transfert de fonds de contrat ( Transfert )
Les propositions de type Transfer peuvent transférer les jetons accumulés sur le compte de contrat (NEAR ou les jetons conformes à la norme NEP-141 ) vers un compte spécifié.
internal_execute_proposal() appellera la fonction internal_payout(), réalisant des opérations de transfert pour différents types de jetons et comptes récepteurs.
4. Résumé
Cet article présente les concepts clés du contrat Sputnik DAO - Proposition (, explique comment créer de nouvelles propositions et voter pour leur exécution, ainsi que les règles de changement d'état des propositions. Par la suite, nous aborderons le modèle de gouvernance de Sputnik-DAO basé sur les propositions )Politique( et sa mise en œuvre et configuration.
![])https://img-cdn.gateio.im/webp-social/moments-4aed25bcefecb3d554dbe01447d4a0e8.webp(