Analyse des smart contracts du Sputnik DAO : conception et mise en œuvre du mécanisme de proposition

robot
Création du résumé en cours

Journal de développement des smart contracts Rust (11) - Explication du mécanisme de proposition du DAO Sputnik

Sputnik-DAO, en tant qu'infrastructure clé du protocole NEAR, pousse l'écosystème NEAR vers une direction décentralisée. Actuellement, cette plateforme a permis à plusieurs projets NEAR d'établir des communautés autonomes décentralisées et a fourni une solution complète et flexible pour la gouvernance des décisions communautaires.

Sputnikdaov2 est un smart contracts utilisé pour le vote de gouvernance de la communauté Sputnik-DAO. Cet article présentera les concepts clés de ce contrat : proposition (Proposal), des articles ultérieurs aborderont les modèles de gouvernance de la communauté DAO (Policy).

1. Lancement de la proposition

Les membres de la communauté Sputnik-DAO peuvent exprimer des opinions ou soumettre des propositions concernant la gouvernance ou la gestion du projet. Chaque membre détenteur de parts peut examiner et voter sur les propositions, influençant ainsi l'orientation future du projet.

Au niveau des contrats, les membres peuvent appeler la méthode add_proposal() du contrat sputnikdaov2 pour soumettre une nouvelle proposition :

rouille u64

Le proposeur doit fournir les informations détaillées suivantes :

  • Texte de la proposition (Description)
  • Type de proposition (kind)

Ces informations seront passées en tant que paramètres à la méthode add_proposal(), et après traitement, elles généreront une proposition complète (Proposal), qui sera liée à un identifiant de proposition unique et ajoutée au pool de propositions maintenu globalement par le contrat.

Les attributs complets de la proposition comprennent : le proposeur, l'état, la date de lancement, l'état du vote, etc.

Il est à noter que le Sputnik-DAO exige que les proposeurs mettent en gage un certain montant de jetons NEAR en tant que dépôt de garantie. Ce dépôt sera remboursé au proposeur à la fin normale de la proposition.

2. État de la proposition

Les propositions dans Sputnik-DAO peuvent passer par différents états, l'état initial étant InProgress. Les changements d'état sont pilotés par la méthode act_proposal().

Les membres peuvent appeler act_proposal() pour effectuer les opérations suivantes sur la proposition :

  • VoteApprove : indique l'approbation
  • VoteReject : indique un refus
  • VoteRemove: considère que cette proposition est sans intérêt et doit être supprimée

Après le vote, le contrat appellera policy.proposal_status() pour effectuer le comptage des voix, et l'état de la proposition qui remplit les conditions sera modifié en conséquence.

  • Les propositions avec le statut approuvé seront exécutées
  • Les propositions en statut Rejected ou Removed effectueront des opérations de clôture.

Les propositions avec le statut Retiré seront directement supprimées de la réserve de propositions, sans remboursement de la caution. Les propositions avec le statut Rejeté resteront dans la réserve et la caution sera remboursée.

3. Exécution des propositions

Les propositions avec un état approuvé appelleront la fonction internal_execute_proposal() pour exécuter le contenu de la décision.

Sputnik-DAO prend en charge plusieurs types de propositions, cet article se concentre sur deux types typiques :

( 3.1 Proposition d'exécution de fonction de contrat

Les propositions de type FunctionCall peuvent exécuter des méthodes de contrat spécifiées. Le proposeur passe l'opération de fonction à exécuter via ProposalInput lors de la création )actions###.

Chaque action peut spécifier le nom de la méthode de contrat et les paramètres. Sputnik-DAO utilise des Actions de Lot de Promesse pour exécuter la fonction.

( 3.2 proposition de transfert de fonds de contrat

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() va appeler la fonction internal_payout(), permettant d'effectuer 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, y compris la création de propositions, le vote, les changements d'état et le processus d'exécution. Les articles suivants détailleront le mode de gouvernance de Sputnik-DAO basé sur la proposition.

ACT-4.06%
BATCH1.82%
Voir l'original
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.
  • Récompense
  • 3
  • Reposter
  • Partager
Commentaire
0/400
airdrop_whisperervip
· Il y a 20h
la communauté near devient de plus en plus attrayante
Voir l'originalRépondre0
OnchainUndercovervip
· 08-09 06:55
near est un nouveau pigeon, ne pas déranger le BTC
Voir l'originalRépondre0
OnChainArchaeologistvip
· 08-09 06:32
near est toujours en compétition.
Voir l'originalRépondre0
Trader les cryptos partout et à tout moment
qrCode
Scan pour télécharger Gate app
Communauté
Français (Afrique)
  • 简体中文
  • English
  • Tiếng Việt
  • 繁體中文
  • Español
  • Русский
  • Français (Afrique)
  • Português (Portugal)
  • Bahasa Indonesia
  • 日本語
  • بالعربية
  • Українська
  • Português (Brasil)