This page reproduces proposal text and published results preserved from Snapshot. It reflects the archive capture below.
Archive capture completed:
Published voting information
State at capture
closed
Voting type
single-choice
Created
2023-10-10 07:08:07 UTC
Voting opened
2023-10-10 07:08:06 UTC
Voting closed
2023-10-24 07:08:06 UTC
Snapshot block
18318454
Participation score
10067.557665187991
Published quorum
5254.273900419519
Quorum type
default
Recorded ballots
213
Published choice scores
Choice
Score
All nodes eligible vote
7152.710091088818
≥10% borrowed ETH eligible
2818.9078897957934
Abstain
95.93968430337692
Preserved proposal text
Original text, including Markdown notation. Linked content is not reproduced here.
This vote will determine eligible voters for future pDAO governance votes.
There are two concurrent votes to determine voting criteria:
- `Determine Voting Criteria (RPIP-4) [eligible voters: all nodes]`
- `Determine Voting Criteria (RPIP-4) [eligible voters: nodes w/RPL ≥10% borrowed ETH]`
These votes are identical except that different strategies were used to determine voter eligibility. Vote power was calculated the same way, etc.
# Context around the situation
RPIP-4 defines who gets to vote: `To be eligible for vote participation, the RPL must be effectively staked in the Rocket Pool protocol as reported by getNodeEffectiveRPLStake().`
This is currently interpreted by people multiple ways, including at least:
- It was meant to be effective stake (10-150%); the function was not there as a definition, but as an implementation that was bugged. Fixing the bugged function (and vote weight) was proper.
- Effective stake is defined in the RPIP using the function at the time. Fixing the bugged function (and vote weight) was inappropriate without pDAO input.
- It's ambiguous.
Before Atlas, `getNodeEffectiveRPLStake()` counted all RPL below 150%. After Atlas, this function returned 0 if the node had less RPL staked than the value of 10% of borrowed ETH. The voting body *was* changed with Atlas release - whether that was ok depends on where you land above. Since this is about voting, we can't do a single vote to figure out what we want -- the set of people that should vote on that is in question (ie, this is a bootstrap problem). This is why the approach is to vote using both possible voting bodies to determine eligibility moving forward.
# Outcomes
- If both concurrent votes `(Determine Voting Criteria (RPIP-4) [eligible voters: all nodes]` and `Determine Voting Criteria (RPIP-4) [eligible voters: nodes w/RPL ≥10% borrowed ETH])` have matching results, the RPIP Editors are instructed to clarify RPIP-4 and RPIP-8 per those results
- Implementation for [eligible voters: all nodes (commit a967777)](https://github.com/rocket-pool/RPIPs/pull/85)
- Implementation for [eligible voters: nodes w/RPL ≥10% borrowed ETH (commit f0be7ac)](https://github.com/rocket-pool/RPIPs/pull/86)
- If the votes do not match, or quorum fails on either vote, no action is taken
- Other votes will remain blocked until a future successful attempt to determine the voting body
# Further context
- [Ongoing forum conversation](https://dao.rocketpool.net/t/rpip-4-discussion-who-should-vote/2249)
- Val suggests a clarification and [polls for overwhelming consensus](https://dao.rocketpool.net/t/rpip-4-effective-rpl-10/2068/7) -- it's clear that there's no overwhelming consensus
- Patches suggests the concurrent vote path, which enjoyed strong support in the poll
- Deep dive:
- [Full forum thread](https://dao.rocketpool.net/t/rpip-4-effective-rpl-10/2068) that included both of the highlighted posts. Note that the initial topic is slightly different and that incidentally raised this point of ambiguity.
- Selected discord discussions: [1](https://discord.com/channels/405159462932971535/405163713063288832/1148270849401565315), [2](https://discord.com/channels/405159462932971535/774497904559783947/1150386963153698898)