Partecipare alle proposte on-chain della pDAO
Qualsiasi nodo con un potere di voto non nullo può sollevare o partecipare a una proposta pDAO in qualsiasi momento. Le proposte possono essere di uno dei seguenti tipi:
- Modifica delle impostazioni pDAO
- Spese del tesoro una tantum
- Spese ricorrenti del tesoro (comitati di gestione)
- Appartenenza al Security Council
Per maggiori dettagli e motivazioni, fare riferimento ai tipi di proposta. È importante comprendere che una proposta pDAO è un'entità on-chain che esiste per eseguire modifiche a livello di protocollo.
Processo di governance
Una proposta dovrebbe essere preannunciata dal processo di governance prima che finisca on-chain.
Le modifiche al protocollo Rocket Pool vengono proposte, votate ed eseguite utilizzando un processo di governance rigoroso ma trasparente. Il processo inizia con una discussione informale di un'idea all'interno della comunità Discord. Questa idea progredisce poi in discussioni formali nel canale #governance su Discord e nel DAO Forum, dove subisce ricerche approfondite, modellazione e analisi in preparazione per una Rocket Pool Improvement Proposal (RPIP). Successivamente, viene preparata una bozza di RPIP e rivista da revisori RPIP designati per garantirne la qualità e la prontezza per la presentazione alla DAO. La bozza di proposta viene quindi presentata alla DAO sul forum per ulteriori revisioni, feedback e incorporazione di eventuali modifiche necessarie. Una volta che la proposta è stata perfezionata in base al feedback della comunità, viene aperto un sondaggio sul forum DAO per valutare la prontezza per finalizzare il testo RPIP. Se il sondaggio viene approvato, indicando l'approvazione della comunità, l'RPIP viene contrassegnato come finale e pronto per un voto della Protocol DAO, che viene condotto tramite Snapshot per determinare se la proposta debba essere implementata.
Da qui, l'Oracle DAO solleverà una proposta on-chain. C'è una finestra in cui la Protocol DAO, l'Oracle DAO e la comunità possono rivedere la proposta. Se si raggiunge il consenso, la proposta viene eseguita e le modifiche vengono applicate al protocollo.
Una comoda rappresentazione visiva di questo processo può essere trovata sul sito web di Rocket Pool.
Prerequisito
Si prega di leggere il ciclo di vita di una proposta prima di procedere. Spiegherà le differenze tra tutti i periodi di voto e le azioni che possono essere intraprese durante ciascun periodo.
Il resto di questa pagina ti guiderà attraverso i passaggi necessari per partecipare alle proposte on-chain della pDAO.
Inizializzare il voto
Se sei un operatore di nodo che si è registrato prima dell'aggiornamento Houston, devi inizializzare il voto per sbloccare il potere di voto. Tieni presente che avere almeno un minipool è un requisito per avere potere di voto.
Questo comando solleverà il prompt qui sotto. Si prega di leggerlo attentamente:
- Se rispondi con
direct, il potere di voto verrà inizializzato sul tuo nodo e sarai in grado di votare direttamente sulle proposte della Protocol DAO. - Se rispondi con
delegate, avrai l'opportunità di risparmiare un po' di gas inizializzando il voto e impostando un delegato all'interno della stessa transazione.
Devi farlo solo una volta. Configura le informazioni di snapshot iniziali per un nodo. Dopo aver inizializzato il voto, ogni azione intrapresa aggiornerà le informazioni di snapshot del tuo nodo. Una volta che il tuo potere di voto è inizializzato, puoi controllare quanto ne hai usando il seguente comando smartnode:
Ogni volta che viene creata una nuova proposta, viene creato un albero di voto che rappresenta uno snapshot del potere di voto della rete e delle informazioni sui delegati in concomitanza con la nuova proposta. Ciò significa che il potere di voto del tuo nodo non sarà incluso in una proposta se è stata sollevata prima che inizializzassi il voto. rocketpool pdao status mostrerà il potere di voto del tuo nodo all'ultimo blocco, che potrebbe essere o meno rappresentativo del tuo potere di voto su una particolare proposta.
Inizializzazione automatica del potere di voto
La versione Smartnode 1.13.8 introduce una nuova funzionalità Auto Initialize Vote Power, progettata per inizializzare automaticamente il potere di voto sui nodi che non l'hanno ancora fatto. Il potere di voto inizializzato automaticamente è auto-delegato.
Questa funzionalità può essere configurata nelle impostazioni dello Smartnode eseguendo rocketpool service config e navigando nella sezione Smartnode and TX Fees.
Il Auto-Init Vote Power Gas Threshold è un limite (in gwei) su questa transazione automatica. Puoi rinunciare a questa attività impostando la soglia su 0. Sentiti libero di rinunciare se il tuo nodo è stato registrato dopo l'aggiornamento Houston o se il potere di voto è già abilitato.
Impostare l'indirizzo di segnalazione Snapshot
L'impostazione del tuo indirizzo di segnalazione Snapshot ti consentirà di partecipare ai voti Snapshot su un browser o dispositivo mobile senza dover esporre le chiavi del nodo a un wallet caldo.
Ci sono alcune cose da preparare:
- L'indirizzo del tuo nodo
- Un indirizzo che vuoi usare per il voto su Snapshot (indirizzo di segnalazione)
Firmerai un messaggio dicendo che l'indirizzo del tuo nodo può delegare al nuovo indirizzo. Questo messaggio indica la tua intenzione di usare il tuo indirizzo wallet come indirizzo di segnalazione Snapshot.
Seleziona quale rete stai utilizzando da una delle schede qui sotto.
Non caricare la chiave privata del tuo nodo su un wallet caldo. Si prega di scegliere un altro account come indirizzo di segnalazione. Dopo aver impostato l'indirizzo di segnalazione, puoi usarlo per votare su Snapshot con il potere di voto del tuo nodo.
Inizia collegando l'indirizzo che vuoi usare come indirizzo di segnalazione al sito web usando MetaMask, WalletConnect o uno qualsiasi degli altri metodi supportati dal sito web. Ti verrà quindi presentata questa finestra di dialogo per cercare il tuo indirizzo nodo.
Successivamente, inserirai l'indirizzo del tuo nodo e poi cliccherai il pulsante arancione "Find". Questo verificherà se l'indirizzo è un nodo registrato e poi ti porterà al passaggio successivo.
Assicurati di avere l'indirizzo del nodo corretto prima di farlo! se hai bisogno di confermare l'indirizzo del tuo nodo, puoi recuperarlo rapidamente tramite la CLI usando il comando rocketpool node status.
Una volta che ti sei registrato e hai confermato l'indirizzo del tuo nodo, vedrai il tuo indirizzo di segnalazione Snapshot. Dovrebbe essere lo stesso dell'account con cui ti sei registrato sul sito. Controlla due volte che questo sia corretto prima di procedere. Una volta che sei sicuro di essere registrato nell'account desiderato, fai clic sul pulsante arancione "Sign Message". Vedrai un prompt nella tua app wallet per firmare il seguente messaggio:
Firmare non ti costerà alcun gas ma impostare sì. Dopo aver firmato, il frontend ti darà un comando da incollare nello smartnode. Vai avanti e incollalo nella CLI del tuo smartnode e segui i passaggi richiesti. Il comando dovrebbe apparire così:
Se vedi questo messaggio nella tua CLI, sei a posto!
Non preoccuparti se chiudi accidentalmente il sito o perdi traccia del comando. Puoi semplicemente ripetere i passaggi e firmare di nuovo usando lo stesso indirizzo nodo e indirizzo di segnalazione. Il frontend usa signer.Signmessage() dalla libreria ethers, il che significa che la tua firma è deterministica dato lo stesso input.
Clicca qui per saperne di più.
Cancellare il tuo indirizzo di segnalazione è piuttosto facile, usa semplicemente questo comando nella CLI:
Consentire il blocco RPL
Puoi ignorare questo passaggio se sei interessato solo a votare su una proposta. Consentire il blocco RPL è richiesto solo per coloro che desiderano proporre o sfidare una proposta.
Il blocco RPL è richiesto per proporre e sfidare. Per impostazione predefinita, il blocco di RPL per qualsiasi scopo sarà disabilitato. Gli operatori del nodo dovranno scegliere di eseguire attività di governance abilitando il blocco di RPL dal loro nodo o dall'indirizzo di prelievo primario. Puoi farlo usando questo comando nello Smartnode:
Questo ti chiederà di consentire il blocco di RPL quando crei o sfidi proposte di governance. Al contrario, puoi usare il seguente comando per rinunciare al blocco RPL:
Il RPL bloccato funziona allo stesso modo del RPL in staking regolare ai fini di ricompense, voto e requisiti di collaterale. Il RPL bloccato non viene conteggiato per le soglie di prelievo RPL.
Delegare il potere di voto
Un operatore di nodo può scegliere di delegare il proprio potere di voto a un altro operatore di nodo. L'unico requisito è che il tuo delegato sia un nodo registrato.
Per delegare il potere di voto on-chain a un altro nodo, usa il seguente comando:
Se hai delegato il tuo potere di voto a un altro operatore di nodo, puoi reimpostarlo impostando l'indirizzo del delegato sul tuo indirizzo del nodo.
- Durante la fase 1 di una proposta: Votanti e Delegati possono esprimere il loro voto su una proposta.
- Durante la fase 2 di una proposta: Gli operatori di nodo che hanno delegato il loro voto hanno l'opportunità di ribaltare il voto del loro delegato, se non sono d'accordo.
Se sei un operatore di nodo con potere di voto delegato, devi votare durante la fase di voto 1 affinché il potere di voto delegato conti per la proposta. Il tuo voto nella fase 1 varrà il tuo potere di voto locale + potere di voto delegato. Il tuo voto nella fase 2 vale solo il tuo potere di voto locale.
Creare una proposta
Per essere idoneo a proporre, un nodo deve soddisfare alcuni requisiti:
- Incluso nello snapshotting (sia inizializzando il voto o registrandosi dopo Houston)
- Deve avere almeno un minipool
- Ha un potere di voto non nullo
- Ha consentito il blocco RPL
- Ha uno stake RPL (meno qualsiasi RPL già bloccato) maggiore della garanzia della proposta
Le proposte esistono per modificare i parametri ed eseguire codice a livello di protocollo! Dovrebbe esserci discussione e consenso attraverso il processo di governance prima che una proposta venga creata on-chain.
Usa il comando rocketpool pdao propose per visualizzare un menu di opzioni
Ciascuno di questi comandi ti chiederà un elenco di input per creare la proposta desiderata. In questa guida, inviteremo un nodo al Security Council come esempio. Per sollevare una proposta per invitare un nodo al Security Council, useresti il comando:
Tieni presente che questo passaggio avrà qualche leggera variazione a seconda del tipo di proposta. Questo comando particolare:
rocketpool pdao propose security-council invite ti chiederà di inserire un ID seguito da un indirizzo del membro.
Dopo che questo è incluso in un blocco, verrà creata una proposta pDAO! La proposta entrerà nel periodo di ritardo del voto al momento della creazione.
Visualizzare lo stato di una proposta
Ad ogni proposta viene assegnato un proposalID. In questo caso, la nostra proposta per invitare 0xBdbc... al Security Council è rappresentata con ID 71. Ci sono alcuni modi per visualizzare lo stato della proposta. Un metodo visualizzerà un elenco di ogni proposta pDAO insieme al loro stato (in sospeso, riuscito, eseguito, ecc.). Il secondo metodo visualizza dettagli approfonditi su una proposta specifica.
Per elencare tutte le proposte, usa il seguente comando:
Questo visualizzerà un elenco di tutte le proposte e del loro stato
Qui possiamo vedere che la nostra proposta invita test-member ha un ID di 71 ed è nello stato in sospeso. In questo stato,
gli sfidanti possono contestare la validità del
pollard di Merkle (usato per calcolare il potere di voto) fornito dal proponente. Quando proposal.vote.delay.time termina,
la proposta passerà alle fasi di voto attive. Sentiti libero di rivedere il ciclo di vita di una
proposta per un ripasso.
Votare su una proposta
Durante un periodo di voto, Gli operatori di nodo e Delegati possono esprimere un voto con una delle quattro opzioni:
Il loro potere di voto verrà applicato all'opzione di loro scelta. Il potere di voto è una funzione dello "stake RPL effettivo." Una lettura più dettagliata può essere trovata nel repository rocketpool-research.
Se sei un operatore di nodo con potere di voto delegato, devi votare durante la fase di voto 1 affinché il potere di voto delegato conti per la proposta. Il tuo voto nella fase 1 varrà il tuo potere di voto locale + potere di voto delegato. Il tuo voto nella fase 2 vale solo il tuo potere di voto locale. Si prega di tenere presente che un nodo può votare una sola volta su una proposta, quindi scegli con attenzione.
Usa questo comando per esprimere un voto:
Ti verrà richiesto di selezionare una proposta su cui votare se c'è almeno una proposta in una fase di voto attiva. Il menu dovrebbe visualizzare tutte le proposte su cui il tuo nodo è idoneo a votare:
Dopo aver selezionato un'opzione, ti verrà chiesto come vuoi esprimere il tuo voto.
Selezionando un'opzione verrà quindi visualizzato il tuo potere di voto e poi ti verrà richiesto di inviare la transazione:
Hai votato con successo sulla proposta una volta che la transazione è inclusa nel blocco! A questo punto, puoi usare rocketpool pdao proposal details <proposal-id> per visualizzare lo stato della proposta. Una proposta deve raggiungere il potere di voto richiesto di proposal.quorum e la maggioranza del potere di voto a favore affinché abbia successo.
Affinché l'esempio sopra passi, il potere di voto deve superare un quorum di 140970562215 potere di voto. C'è 197980809837 potere di voto a favore e nessun voto contro o astenuto. La proposta è pronta per il successo e pronta per l'esecuzione entro la fine di proposal.vote.phase2.time.
Eseguire una proposta riuscita
Congratulazioni! La tua proposta è passata! Ora tutto ciò che resta da fare è eseguire la proposta. Tieni presente che chiunque può essere l'esecutore di una proposta. Per eseguire una proposta riuscita, digita il comando:
Selezionando un'opzione ti verrà richiesto di inviare una transazione. Una volta che questa transazione è inclusa in un blocco, la modifica verrà applicata al protocollo Rocket Pool!
Richiedere garanzie e ricompense
I proponenti o gli sfidanti possono richiedere le loro garanzie al termine di una proposta. A seconda dell'esito di una proposta, un proponente o sfidante può o meno essere in grado di richiedere la loro proposal.bond e proposal.challenge.bond.
Ecco alcune regole che dettano le condizioni in cui le garanzie possono essere richieste:
- Se una proposta viene sconfitta, il proponente perde la sua garanzia che viene divisa proporzionalmente tra gli sfidanti che hanno contribuito alla sconfitta della proposta. Tutti gli altri sfidanti ricevono solo la loro garanzia indietro.
- Contribuire alla sconfitta di una proposta significa che uno sfidante ha presentato un indice che è stato successivamente dimostrato essere errato dall'incapacità del proponente di rispondere a una sfida. È possibile che ci siano più indici errati, ma solo quelli che hanno portato alla sconfitta della proposta condividono la ricompensa. Tutti gli altri sfidanti ricevono solo la loro garanzia indietro.
- Se uno sfidante sfida un nodo, il proponente risponde e la proposta non viene sconfitta. Il proponente può richiedere le garanzie di sfida dalle sfide non valide.
- Se una proposta viene sconfitta, il proponente perde la sua garanzia che viene divisa proporzionalmente tra gli sfidanti che hanno contribuito alla sconfitta della proposta.
Usa questo comando per richiedere garanzie:
Questo visualizzerà ogni proposta da cui sei idoneo a richiedere garanzie. Puoi richiedere garanzie da una proposta specifica, oppure puoi richiedere garanzie e ricompense da tutte le proposte idonee.
Una volta selezionata un'opzione, ti verranno forniti i consigli sui costi del gas attuali della rete; conferma la tua selezione del prezzo del gas e segui il resto dei prompt.
Nota che se selezioni la prima opzione per richiedere tutte le proposte disponibili, verranno eseguite singolarmente e non come un'unica transazione.
Creare una spesa ricorrente del tesoro
Dovrai preparare alcuni input per creare una spesa ricorrente del tesoro:
- Un nome del contratto
- L'indirizzo del destinatario
- Quantità di RPL da inviare per periodo
- L'ora di inizio per il pagamento ricorrente (come timestamp UNIX)
- La durata di ogni periodo di pagamento in ore / minuti / secondi (es. 168h0m0s)
- Numero di periodi di pagamento
Il destinatario dovrà prendere nota del nome del contratto per richiedere i pagamenti. Non preoccuparti però, poiché queste informazioni sono memorizzate e possono essere recuperate usando il comando rocketpool pdao proposals details <proposal-id>
Per sollevare una proposta per impostare una spesa ricorrente del tesoro, usa il seguente comando smartnode e segui i prompt:
Ecco come appare tutto insieme:
Una volta inseriti tutti gli input richiesti, verrà sollevata una proposta per creare un pagamento ricorrente. Quando la pDAO approva ed esegue questa proposta, al destinatario vengono allocati 1 RPL a partire da 2024-06-09 12:13:53 +0000 UTC ogni 720 ore per un totale di 24 pagamenti.
Richiedere una spesa ricorrente del tesoro
Richiedere pagamenti ricorrenti dovrebbe essere abbastanza semplice! Naviga nel nostro strumento frontend qui per farlo. Se stai provando questo su Hoodi testnet, usa questo link invece.
Una volta sul sito, fai clic sul pulsante connect wallet. Si prega di leggere e accettare i Termini di servizio e Informativa sulla privacy, questo abiliterà diversi modi per connettersi, quindi fai clic su connect metamask.
MetaMask ti chiederà di selezionare un account da connettere al sito web. Dopo aver effettuato l'accesso, dovrai inserire il nome del contratto. Facendo ciò verranno visualizzati tutti i dettagli rilevanti. Assicurati di controllare due volte l'indirizzo del destinatario. Chiunque può chiamare la funzione di richiesta, ma ogni contratto di pagamento avrà un destinatario designato per disperdere RPL.
Puoi richiedere i tuoi pagamenti in qualsiasi momento, otterrai solo il totale RPL non richiesto fino al periodo più recente. In alternativa, puoi aspettare fino a quando tutti i periodi sono passati per raccogliere tutto in una volta e risparmiare sul gas.
Premi semplicemente il grande pulsante arancione richiedi quando sei pronto e rivedi la transazione in metamask (o il tuo wallet preferito). Una volta fatto, sei a posto!