Noyau des smart contracts Sputnik DAO : explication du mécanisme de proposition

robot
Création du résumé en cours

Série de contrats intelligents Rust : Analyse des concepts clés du Sputnik DAO

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

Le 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 : la proposition (Proposal), des articles suivants détailleront les modes de gouvernance de la communauté DAO liés à la proposition (Policy).

1. Lancement de la proposition

Chaque membre de Sputnik-DAO peut soumettre des propositions concernant la gouvernance ou la gestion des projets. Les membres de la communauté détenteurs de parts peuvent ensuite examiner et voter sur les propositions. Les membres peuvent influencer l'avenir du projet en votant ou en initiant des propositions.

Au niveau des contrats, les membres du DAO peuvent appeler la méthode add_proposal() du contrat sputnikdaov2 pour soumettre une nouvelle proposition. Le proposanteur doit fournir des informations détaillées sur la proposition (ProposalInput), y compris :

  • Description du projet (Description)
  • Type de proposition ( kind )

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

Les informations complètes sur les attributs inclus dans la proposition sont :

  • description: description
  • kind: type
  • proposer: proposante
  • status: statut
  • submission_time: temps de soumission
  • vote_counts: comptage des votes
  • votes: Détails du vote

Le Sputnik-DAO exige que les proposeurs mettent en gage un certain montant de jetons NEAR en tant que garantie lors de l'appel de add_proposal(). 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 traverser plusieurs états, l'état initial étant InProgress. Les changements d'état sont pilotés par la méthode act_proposal().

Les membres du DAO peuvent appeler act_proposal() pour exécuter des opérations sur la proposition :

  • VoteApprove: approuvé
  • VoteReject: contre
  • VoteRemove: retirer

Après le vote, policy.proposal_status() sera appelé pour le dépouillement des votes. L'état de la proposition atteignant le seuil de vote sera modifié:

  • Approuvé : appel de internal_execute_proposal() pour exécuter
  • Rejeté/Retiré : appel à internal_reject_proposal() pour traitement

Les propositions dans l'état Retiré seront supprimées de la piscine des propositions et le dépôt ne sera pas restitué, tandis que les propositions dans l'état Rejeté resteront dans la piscine des propositions et le dépôt sera remboursé.

3. Exécution des propositions

Les propositions ayant le statut "Approved" appelleront internal_execute_proposal() pour exécuter le contenu de la décision. Sputnik-DAO prend en charge plusieurs types de propositions, cet article présente deux types typiques :

3.1 Proposition d'exécution de fonction de contrat

Les propositions de type FunctionCall sont transmises via le paramètre ProposalInput pour exécuter l'opération de fonction (actions). Chaque ActionCall peut spécifier le nom de la méthode du contrat et les paramètres. Sputnik-DAO utilise la forme Promise Batch Actions pour exécuter les fonctions du contrat.

3.2 Proposition de transfert de fonds de contrat

Les propositions de type Transfer sont utilisées pour transférer les tokens accumulés sur le compte de contrat vers le receiver_id spécifié. L'appel sous-jacent de la fonction internal_payout() permet d'effectuer des opérations de transfert pour différents types de tokens et receiver_id.

ACT1.14%
BATCH0.6%
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
  • 6
  • Reposter
  • Partager
Commentaire
0/400
RamenDeFiSurvivorvip
· Il y a 23h
près du travail assez vite
Voir l'originalRépondre0
DefiPlaybookvip
· Il y a 23h
Analyse des données off-chain, la TVL a enregistré une hausse de 25,6 %
Voir l'originalRépondre0
SerLiquidatedvip
· Il y a 23h
Que faire si on vote en étant ivre ? Ceux qui comprennent, dites-le.
Voir l'originalRépondre0
fork_in_the_roadvip
· Il y a 23h
la gouvernance DAO fait perdre du temps...
Voir l'originalRépondre0
BoredApeResistancevip
· Il y a 23h
Quand NEAR aura un DAO plus fiable...
Voir l'originalRépondre0
BoredRiceBallvip
· Il y a 23h
Cette proposition, en regardant directement le code, n'est-elle pas séduisante ?
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)