Teilnahme an on-chain pDAO-Vorschlägen
Jede Node mit einer von Null verschiedenen Abstimmungskraft kann jederzeit einen pDAO-Vorschlag einbringen oder an diesem teilnehmen. Vorschläge können einen der folgenden Typen haben:
- Änderung von pDAO-Einstellungen
- Einmalige Treasury-Ausgaben
- Wiederkehrende Treasury-Ausgaben (Verwaltungskomitees)
- Security Council Mitgliedschaft
Für weitere Details und Begründungen siehe Vorschlagstypen. Es ist wichtig zu verstehen, dass ein pDAO-Vorschlag eine on-chain Entität ist, die existiert, um Änderungen auf Protokollebene durchzuführen.
Governance-Prozess
Ein Vorschlag sollte durch den Governance-Prozess angekündigt werden, bevor er on-chain erscheint.
Änderungen am Rocket Pool Protokoll werden durch einen strengen, aber transparenten Governance-Prozess vorgeschlagen, abgestimmt und durchgeführt. Der Prozess beginnt mit einer informellen Diskussion einer Idee innerhalb der Discord-Community. Diese Idee geht dann zu formellen Diskussionen im #governance-Kanal auf Discord und dem DAO Forum über, wo sie gründlicher Recherche, Modellierung und Prüfung in Vorbereitung auf einen Rocket Pool Improvement Proposal (RPIP) unterzogen wird. Anschließend wird ein Entwurf-RPIP vorbereitet und von designierten RPIP-Reviewern überprüft, um dessen Qualität und Bereitschaft für die Präsentation vor der DAO sicherzustellen. Der Entwurfsvorschlag wird dann der DAO im Forum zur weiteren Überprüfung, Feedback und Einarbeitung notwendiger Änderungen präsentiert. Sobald der Vorschlag auf Basis des Community-Feedbacks verfeinert wurde, wird eine Umfrage im DAO-Forum erstellt, um die Bereitschaft zur Finalisierung des RPIP-Textes zu ermitteln. Wenn die Umfrage erfolgreich ist und die Zustimmung der Community anzeigt, wird das RPIP als final markiert und ist bereit für eine Protocol DAO Abstimmung, die über Snapshot durchgeführt wird, um zu bestimmen, ob der Vorschlag implementiert werden soll.
Von hier aus wird die Oracle DAO einen on-chain Vorschlag einbringen. Es gibt ein Zeitfenster, in dem die Protocol DAO, Oracle DAO und die Community den Vorschlag überprüfen können. Wenn ein Konsens erreicht wird, wird der Vorschlag ausgeführt und Änderungen werden auf das Protokoll angewendet.
Eine praktische visuelle Darstellung dieses Prozesses finden Sie auf der Rocket Pool Website.
Voraussetzung
Bitte lesen Sie den Lebenszyklus eines Vorschlags, bevor Sie fortfahren. Er erklärt die Unterschiede zwischen allen Abstimmungsperioden und den Aktionen, die während jeder Periode durchgeführt werden können.
Der Rest dieser Seite führt Sie durch die erforderlichen Schritte zur Teilnahme an on-chain pDAO-Vorschlägen.
Abstimmung initialisieren
Wenn Sie ein Node-Betreiber sind, der vor dem Houston-Upgrade registriert wurde, müssen Sie die Abstimmung initialisieren, um Abstimmungskraft freizuschalten. Beachten Sie, dass mindestens ein Minipool eine Voraussetzung für Abstimmungskraft ist.
Dieser Befehl zeigt die folgende Eingabeaufforderung an. Bitte lesen Sie sie sorgfältig:
- Wenn Sie mit
directantworten, wird die Abstimmungskraft auf Ihre Node initialisiert und Sie können direkt über Protocol DAO-Vorschläge abstimmen. - Wenn Sie mit
delegateantworten, haben Sie die Möglichkeit, etwas Gas zu sparen, indem Sie die Abstimmung initialisieren und einen Delegierten festlegen innerhalb derselben Transaktion.
Sie müssen dies nur einmal tun. Es konfiguriert die anfänglichen Snapshot-Informationen für eine Node. Nachdem Sie die Abstimmung initialisiert haben, aktualisiert jede durchgeführte Aktion die Snapshot-Informationen Ihrer Node. Sobald Ihre Abstimmungskraft initialisiert ist, können Sie überprüfen, wie viel Sie haben, indem Sie den folgenden Smartnode-Befehl verwenden:
Immer wenn ein neuer Vorschlag erstellt wird, wird ein Abstimmungsbaum erstellt, der einen Snapshot der Abstimmungskraft und Delegierteninformationen des Netzwerks darstellt, zusammen mit dem neuen Vorschlag. Das bedeutet, dass die Abstimmungskraft Ihrer Node nicht in einem Vorschlag enthalten ist, wenn dieser vor der Initialisierung Ihrer Abstimmung eingebracht wurde. rocketpool pdao status zeigt die Abstimmungskraft Ihrer Node beim neuesten Block an, die möglicherweise Ihre Abstimmungskraft bei einem bestimmten Vorschlag repräsentiert oder auch nicht.
Auto Initialize Vote Power
Smartnode Version 1.13.8 führt eine neue Funktion Auto Initialize Vote Power ein, die entwickelt wurde, um die Abstimmungskraft auf Nodes, die dies noch nicht getan haben, automatisch zu initialisieren. Automatisch initialisierte Abstimmungskraft ist selbst-delegiert. Diese Funktion kann in den Smartnode-Einstellungen konfiguriert werden, indem Sie rocketpool service config ausführen und zum Abschnitt Smartnode and TX Fees navigieren.
Der Auto-Init Vote Power Gas Threshold ist ein Limit (in Gwei) für diese automatische Transaktion. Sie können sich von dieser Aufgabe abmelden, indem Sie den Schwellenwert auf 0 setzen. Sie können sich gerne abmelden, wenn Ihre Node nach dem Houston-Upgrade registriert wurde oder wenn die Abstimmungskraft bereits aktiviert ist.
Ihre Snapshot-Signalisierungsadresse festlegen
Das Festlegen Ihrer Snapshot-Signalisierungsadresse ermöglicht es Ihnen, an Snapshot-Abstimmungen auf einem Browser oder mobilen Gerät teilzunehmen, ohne Node-Schlüssel einem Hot Wallet aussetzen zu müssen.
Es gibt einige Dinge vorzubereiten:
- Die Adresse Ihrer Node
- Eine Adresse, die Sie für Snapshot-Abstimmungen verwenden möchten (Signalisierungsadresse)
Sie werden eine Nachricht signieren, die besagt, dass Ihre Node-Adresse an die neue Adresse delegieren kann. Diese Nachricht drückt Ihre Absicht aus, Ihre Wallet-Adresse als Snapshot-Signalisierungsadresse zu verwenden.
Wählen Sie aus einem der Tabs unten aus, welches Netzwerk Sie verwenden.
Laden Sie den privaten Schlüssel Ihrer Node nicht auf ein Hot Wallet. Bitte wählen Sie ein anderes Konto als Ihre Signalisierungsadresse. Nach dem Festlegen der Signalisierungsadresse können Sie diese verwenden, um auf Snapshot mit der Abstimmungskraft Ihrer Node abzustimmen.
Beginnen Sie damit, die Adresse zu verbinden, die Sie als Signalisierungsadresse verwenden möchten mit der Website über MetaMask, WalletConnect oder eine der anderen Methoden, die die Website unterstützt. Ihnen wird dann dieser Dialog angezeigt, um Ihre Node-Adresse nachzuschlagen.
Als Nächstes geben Sie Ihre Node-Adresse ein und klicken dann auf den orangefarbenen "Find"-Button. Dies überprüft, ob die Adresse eine registrierte Node ist und bringt Sie dann zum nächsten Schritt.
Stellen Sie sicher, dass Sie die richtige Node-Adresse haben, bevor Sie dies tun! Wenn Sie die Adresse Ihrer Node bestätigen müssen, können Sie sie schnell über die CLI mit dem Befehl rocketpool node status abrufen.
Sobald Sie sich angemeldet und Ihre Node-Adresse bestätigt haben, sehen Sie Ihre Snapshot-Signalisierungsadresse. Sie sollte dieselbe sein wie das Konto, mit dem Sie sich auf der Website angemeldet haben. Überprüfen Sie dies doppelt, bevor Sie fortfahren. Sobald Sie sicher sind, dass Sie mit dem gewünschten Konto angemeldet sind, klicken Sie auf den orangefarbenen "Sign Message"-Button. Sie sehen eine Aufforderung in Ihrer Wallet-Erweiterungs-App, die folgende Nachricht zu signieren:
Das Signieren kostet Sie kein Gas, aber das Festlegen schon. Nachdem Sie signiert haben, gibt Ihnen das Frontend einen Befehl zum Einfügen in den Smartnode. Fügen Sie ihn in die CLI Ihres Smartnodes ein und folgen Sie den angezeigten Schritten. Der Befehl sollte etwa so aussehen:
Wenn Sie diese Nachricht in Ihrer CLI sehen, sind Sie fertig!
Machen Sie sich keine Sorgen, wenn Sie die Website versehentlich schließen oder den Befehl verlieren. Sie können einfach die Schritte wiederholen und erneut mit derselben Node-Adresse und Signalisierungsadresse signieren. Das Frontend verwendet signer.Signmessage() aus der ethers-Bibliothek, was bedeutet, dass Ihre Signatur bei gleicher Eingabe deterministisch ist. Klicken Sie hier, um mehr zu erfahren.
Das Löschen Ihrer Signalisierungsadresse ist ziemlich einfach, verwenden Sie einfach diesen Befehl in der CLI:
RPL-Sperrung erlauben
Sie können diesen Schritt ignorieren, wenn Sie nur daran interessiert sind, über einen Vorschlag abzustimmen. RPL-Sperrung erlauben ist nur für diejenigen erforderlich, die einen Vorschlag einbringen oder anfechten möchten.
RPL-Sperrung ist für das Einbringen und Anfechten erforderlich. Standardmäßig ist das Sperren von RPL für jeden Zweck deaktiviert. Node-Betreiber werden sich für die Durchführung von Governance-Aktivitäten entscheiden, indem sie die Sperrung von RPL von ihrer Node oder primären Auszahlungsadresse aktivieren. Sie können dies mit diesem Befehl im Smartnode tun:
Dies fordert Sie auf, die Sperrung von RPL beim Erstellen oder Anfechten von Governance-Vorschlägen zu erlauben. Umgekehrt können Sie den folgenden Befehl verwenden, um sich von der RPL-Sperrung abzumelden:
Gesperrtes RPL verhält sich genauso wie regulär gestaktes RPL für die Zwecke von Belohnungen, Abstimmung und Sicherheitenanforderungen. Gesperrtes RPL wird nicht auf Schwellenwerte für das Abheben von RPL angerechnet.
Abstimmungskraft delegieren
Ein Node-Betreiber kann seine Abstimmungskraft an einen anderen Node-Betreiber delegieren. Die einzige Anforderung ist, dass Ihr Delegierter eine registrierte Node ist.
Um on-chain Abstimmungskraft an eine andere Node zu delegieren, verwenden Sie den folgenden Befehl:
Wenn Sie Ihre Abstimmungskraft an einen anderen Node-Betreiber delegiert haben, können Sie dies zurücksetzen, indem Sie die Delegiertenadresse auf die Adresse Ihrer eigenen Node setzen.
- Während Phase 1 eines Vorschlags: Wähler und Delegierte können ihre Stimme zu einem Vorschlag abgeben.
- Während Phase 2 eines Vorschlags: Node-Betreiber, die ihre Stimme delegiert haben, erhalten die Möglichkeit, die Stimme ihres Delegierten aufzuheben, wenn sie nicht einverstanden sind.
Wenn Sie ein Node-Betreiber mit delegierter Abstimmungskraft sind, müssen Sie während der Abstimmungsphase 1 abstimmen, damit die delegierte Abstimmungskraft auf den Vorschlag angerechnet wird. Ihre Stimme in Phase 1 ist lokale Abstimmungskraft + delegierte Abstimmungskraft wert. Ihre Stimme in Phase 2 ist nur lokale Abstimmungskraft wert.
Einen Vorschlag erstellen
Um berechtigt zu sein, einen Vorschlag einzubringen, muss eine Node einige Anforderungen erfüllen:
- Im Snapshotting enthalten (entweder durch Abstimmung initialisieren oder durch Registrierung nach Houston)
- Muss mindestens einen Minipool haben
- Hat eine von Null verschiedene Abstimmungskraft
- Hat RPL-Sperrung erlaubt
- Hat einen RPL-Stake (abzüglich bereits gesperrtem RPL), der größer ist als die Vorschlagsbindung
Vorschläge existieren, um Parameter zu ändern und Code auf Protokollebene auszuführen! Es sollte Diskussion und Konsens durch den Governance-Prozess geben, bevor ein Vorschlag on-chain erstellt wird.
Verwenden Sie den Befehl rocketpool pdao propose, um ein Menü mit Optionen aufzurufen
Jeder dieser Befehle fordert Sie mit einer Liste von Eingaben auf, um Ihren gewünschten Vorschlag zu erstellen. In diesem Leitfaden werden wir eine Node zum Security Council einladen, um als Beispiel zu dienen. Um einen Vorschlag einzubringen, eine Node zum Security Council einzuladen, würden Sie den Befehl verwenden:
Beachten Sie, dass dieser Schritt je nach Art des Vorschlags leichte Variationen aufweisen wird. Dieser spezielle Befehl: rocketpool pdao propose security-council invite fordert Sie auf, eine ID gefolgt von einer Mitgliederadresse einzugeben.
Nachdem dies in einem Block enthalten ist, wird ein pDAO-Vorschlag erstellt! Der Vorschlag tritt bei Erstellung in die Vote Delay Period ein.
Den Zustand eines Vorschlags anzeigen
Jedem Vorschlag wird eine proposalID zugewiesen. In diesem Fall wird unser Vorschlag, 0xBdbc... zum Security Council einzuladen, mit ID 71 dargestellt. Es gibt einige Möglichkeiten, den Zustand des Vorschlags anzuzeigen. Eine Methode zeigt eine Liste aller pDAO-Vorschläge zusammen mit ihrem Zustand an (ausstehend, erfolgreich, ausgeführt usw.). Die zweite Methode zeigt detaillierte Informationen zu einem bestimmten Vorschlag an.
Um alle Vorschläge aufzulisten, verwenden Sie den folgenden Befehl:
Dies zeigt eine Liste aller Vorschläge und ihren Zustand an
Hier können wir sehen, dass unser Vorschlag invite test-member eine ID von 71 hat und sich im ausstehenden Zustand befindet. In diesem Zustand können Anfechtende die Gültigkeit des vom Einbringer bereitgestellten Merkle Pollard (zur Berechnung der Abstimmungskraft) bestreiten. Wenn proposal.vote.delay.time endet, geht der Vorschlag in aktive Abstimmungsphasen über. Sie können gerne Lebenszyklus eines Vorschlags zur Auffrischung lesen.
Über einen Vorschlag abstimmen
Während einer Abstimmungsperiode können Node-Betreiber und Delegierte eine Stimme mit einer von vier Optionen abgeben:
Ihre Abstimmungskraft wird auf die Option ihrer Wahl angewendet. Abstimmungskraft ist eine Funktion des "effektiven RPL-Stakes". Eine detailliertere Lektüre finden Sie im rocketpool-research Repo.
Wenn Sie ein Node-Betreiber mit delegierter Abstimmungskraft sind, müssen Sie während der Abstimmungsphase 1 abstimmen, damit die delegierte Abstimmungskraft auf den Vorschlag angerechnet wird. Ihre Stimme in Phase 1 ist lokale Abstimmungskraft + delegierte Abstimmungskraft wert. Ihre Stimme in Phase 2 ist nur lokale Abstimmungskraft wert. Bitte beachten Sie, dass eine Node nur einmal über einen Vorschlag abstimmen kann, also wählen Sie sorgfältig.
Verwenden Sie diesen Befehl, um eine Stimme abzugeben:
Sie werden aufgefordert, einen Vorschlag zur Abstimmung auszuwählen, wenn mindestens ein Vorschlag in einer aktiven Abstimmungsphase ist. Das Menü sollte alle Vorschläge anzeigen, für die Ihre Node berechtigt ist, abzustimmen:
Nachdem Sie eine Option ausgewählt haben, werden Sie gefragt, wie Sie Ihre Stimme abgeben möchten.
Durch Auswahl einer Option wird Ihre Abstimmungskraft angezeigt und Sie werden dann aufgefordert, die Transaktion zu senden:
Sie haben erfolgreich über den Vorschlag abgestimmt, sobald die Transaktion im Block enthalten ist! An diesem Punkt können Sie rocketpool pdao proposal details <proposal-id> verwenden, um den Zustand des Vorschlags anzuzeigen. Ein Vorschlag muss proposal.quorum erforderliche Abstimmungskraft und eine Mehrheit Abstimmungskraft dafür erreichen, um erfolgreich zu sein.
Damit das obige Beispiel erfolgreich ist, muss die Abstimmungskraft ein Quorum von 140970562215 Abstimmungskraft überschreiten. Es gibt 197980809837 Abstimmungskraft dafür und keine Stimmen dagegen oder Enthaltungen. Der Vorschlag ist auf Erfolgskurs und bereit zur Ausführung bis zum Ende von proposal.vote.phase2.time.
Einen erfolgreichen Vorschlag ausführen
Glückwunsch! Ihr Vorschlag wurde angenommen! Jetzt muss nur noch der Vorschlag ausgeführt werden. Beachten Sie, dass jeder der Ausführende eines Vorschlags sein kann. Um einen erfolgreichen Vorschlag auszuführen, geben Sie den Befehl ein:
Durch Auswahl einer Option werden Sie aufgefordert, eine Transaktion zu senden. Sobald diese Transaktion in einem Block enthalten ist, wird die Änderung auf das Rocket Pool Protokoll angewendet!
Bindungen und Belohnungen beanspruchen
Einbringer oder Anfechtende können ihre Bindungen nach Abschluss eines Vorschlags beanspruchen. Abhängig vom Ergebnis eines Vorschlags kann ein Einbringer oder Anfechtender seine proposal.bond und proposal.challenge.bond möglicherweise beanspruchen oder auch nicht.
Hier sind einige Regeln, die die Bedingungen bestimmen, unter denen Bindungen beansprucht werden können:
- Wenn ein Vorschlag abgelehnt wird, verwirkt der Einbringer seine Bindung, die proportional unter den Anfechtenden aufgeteilt wird, die zur Ablehnung des Vorschlags beigetragen haben. Alle anderen Anfechtenden erhalten nur ihre Bindung zurück.
- Zur Ablehnung eines Vorschlags beizutragen bedeutet, dass ein Anfechtender einen Index eingereicht hat, der später durch die Unfähigkeit des Einbringers, auf eine Anfechtung zu antworten, als inkorrekt nachgewiesen wurde. Es ist möglich, dass es mehrere inkorrekte Indizes gibt, aber nur diejenigen, die zur Ablehnung des Vorschlags geführt haben, teilen die Belohnung. Alle anderen Anfechtenden erhalten nur ihre Bindung zurück.
- Wenn ein Anfechtender eine Node anficht, der Einbringer antwortet und der Vorschlag nicht abgelehnt wird, kann der Einbringer die Anfechtungsbindungen aus den ungültigen Anfechtungen beanspruchen.
- Wenn ein Vorschlag abgelehnt wird, verwirkt der Einbringer seine Bindung, die proportional unter den Anfechtenden aufgeteilt wird, die zur Ablehnung des Vorschlags beigetragen haben.
Verwenden Sie diesen Befehl, um Bindungen zu beanspruchen:
Dies zeigt jeden Vorschlag an, von dem Sie berechtigt sind, Bindungen zu beanspruchen. Sie können entweder Bindungen von einem bestimmten Vorschlag beanspruchen oder Sie können Bindungen und Belohnungen von allen berechtigten Vorschlägen beanspruchen.
Sobald Sie eine Option ausgewählt haben, werden Sie mit den aktuellen Gaskostenempfehlungen des Netzwerks aufgefordert; bestätigen Sie Ihre Gaspreisauswahl und folgen Sie den restlichen Aufforderungen.
Beachten Sie, dass wenn Sie die erste Option wählen, um alle verfügbaren Vorschläge zu beanspruchen, diese jeweils einzeln und nicht als eine Transaktion ausgeführt werden.
Eine wiederkehrende Treasury-Ausgabe erstellen
Sie müssen einige Eingaben vorbereiten, um eine wiederkehrende Treasury-Ausgabe zu erstellen:
- Ein Vertragsname
- Die Adresse des Empfängers
- Menge an RPL, die pro Periode gesendet werden soll
- Die Startzeit für die wiederkehrende Zahlung (als UNIX-Zeitstempel)
- Die Länge jeder Zahlungsperiode in Stunden / Minuten / Sekunden (z.B. 168h0m0s)
- Anzahl der Zahlungsperioden
Der Empfänger muss sich den Vertragsnamen merken, um Zahlungen zu beanspruchen. Machen Sie sich keine Sorgen, da diese Informationen gespeichert werden und mit dem Befehl rocketpool pdao proposals details <proposal-id> abgerufen werden können
Um einen Vorschlag zur Einrichtung einer wiederkehrenden Treasury-Ausgabe einzubringen, verwenden Sie den folgenden Smartnode-Befehl und folgen Sie den Aufforderungen:
So sieht das Ganze zusammen aus:
Sobald Sie alle erforderlichen Eingaben eingegeben haben, wird ein Vorschlag zur Erstellung einer wiederkehrenden Zahlung eingebracht. Wenn die pDAO diesen Vorschlag annimmt und ausführt, werden dem Empfänger 1 RPL ab 2024-06-09 12:13:53 +0000 UTC alle 720 Stunden für insgesamt 24 Zahlungen zugewiesen.
Eine wiederkehrende Treasury-Ausgabe beanspruchen
Das Beanspruchen wiederkehrender Zahlungen sollte ziemlich einfach sein! Navigieren Sie zu unserem Frontend-Tool hier, um dies zu tun. Wenn Sie dies auf dem Hoodi-Testnet ausprobieren, verwenden Sie stattdessen diesen Link.
Sobald Sie auf der Website sind, klicken Sie auf den connect wallet-Button. Bitte lesen Sie die Nutzungsbedingungen & Datenschutzrichtlinie durch und akzeptieren Sie diese. Dies ermöglicht verschiedene Verbindungsmöglichkeiten. Klicken Sie dann auf metamask verbinden.
MetaMask fordert Sie auf, ein Konto auszuwählen, um sich mit der Website zu verbinden. Nachdem Sie sich angemeldet haben, müssen Sie den Vertragsnamen eingeben. Dadurch werden alle relevanten Details angezeigt. Stellen Sie sicher, dass Sie die Adresse des Empfängers doppelt überprüfen. Jeder kann die Anspruchsfunktion aufrufen, aber jeder Zahlungsvertrag hat einen designierten Empfänger, an den RPL ausgezahlt wird.
Sie können Ihre Zahlungen jederzeit beanspruchen, Sie erhalten einfach das gesamte nicht beanspruchte RPL bis zur letzten Periode. Alternativ können Sie warten, bis alle Perioden abgelaufen sind, um alles auf einmal zu sammeln und Gas zu sparen.
Drücken Sie einfach den großen orangefarbenen Anspruchsbutton, wenn Sie bereit sind, und überprüfen Sie die Transaktion in MetaMask (oder Ihrem bevorzugten Wallet). Sobald das erledigt ist, sind Sie fertig!