Options forum thread

Please see the discord options thread for many of the ideas that have already been discussed https://discord.com/channels/405159462932971535/1176030152203972628

Name of Bounty

Rapid Research Incubator

What is the nature of the proposed bounty?

The Rocket Pool protocol has grown substantially since launch, but is not keeping pace with Lido validator market share. Lido has plans to launch a more ‘decentralized’ option within a year, anticipated to allow home stakers to stake with 4E bond and 7.5% commission on the other 28E. This will likely threaten the value proposition and growth of Rocket Pool, but more generally the idea of credible neutrality and the decentralization of the Ethereum network. The RP protocol will need to adapt in multiple ways to meet this competition.

This bounty is meant to rapidly generate actionable ideas for ways forward to drive more value to NOs specifically and the protocol in general. The payment structure is intended to provide some financial reimbursement for diverse community members actively brainstorming solutions, as well as more heavily reward selected ideas that have a high likelihood of being translated into protocol improvements.

This is a chance to get paid for ideas which you think are great for the protocol, but that you might have previously felt were too radical. We are at a point where we need to think outside the box, and quickly.

The goal after initial brainstorming is to pick several promising ideas and fund further research to get them over the finish line, voted upon, and eventually enacted.

Must the results of this project be entirely open source:

Yes. The contents of submissions will be used by the Rocket Pool community and the team.

Work and Verification

What steps would be entailed in completing the bounty? Do successful examples of such work exist elsewhere?

This bounty requests community members submit a brief/abstract with specific/actionable recommendations regarding any of:

  1. Mechanisms that help balance supply/demand across the parties in the protocol: rETH, RPL, and NOs (for example, balancing commission --rETH vs NOs-- or balancing minimum RPL bond --RPL vs NOs).
  2. Mechanisms of alternative value capture for RPL (besides pure use as staked bond)
  3. Mechanisms and feasibility requirements for lowering ETH bond requirement for minipools
  4. Updates on the penalty system/MEV safety, including evaluating options for node level collateral

Suggested length of 0.5-3 pages on any topic above, including specifically which topic or topics it is intended to answer. The brief should include both perceived benefits and suspected drawbacks/downsides, further research/data/decisions needed, specific actionable recommendations, and general implementation ideas. The brief does NOT have to be polished, complete data analysis, or specific code; it will NOT be judged on English proficiency, grammar, etc.

The brief should be a single work you can link to, rather than referring to a series of posts/threads. A single individual can submit multiple works. It can be posted as a single discord post, a forum post, a GitHub submission, an uploaded document, and any other form that can be easily viewed.

How long is the proposed bounty available for? Is it awarded to the first team to successfully claim it, or is it in some way divided among all such successful claims in the proposed availability period?

The submission period will be 21 days (end 23:59 UTC on December 26th).

Who will test any products submitted for claiming the bounty?

There will be a committee to read through and review the briefs, with binding power over assigning awards. A mechanism for non-binding community voting is also likely. The details of the committee are still pending.

What is the acceptance criteria for awarding of the bounty?

Every serious submission will be considered. Between 13 and 17 submissions will be rewarded with $250-2500

Highly prized qualities will be: specific actionable recommendations, high impact, innovation/uniqueness of ideas, persuasive discussion, evaluation of drawbacks/steel-man arguments, and feasibility from both technical and political (pDAO) standpoints.

Benefits - enter N/A where appropriate

Group Benefits
Potential rETH holders currently there is more demand for rETH than supply; this research will help improve rETH supply so that more rETH can be owned (non-full deposit pool) for cheaper (less premium) and better APR (less drag)
rETH holders the full DP is a drag on rETH APR; this seeks to minimize that drag by increasing NO supply, and potentially reducing commission
Potential NOs we seek to increase value for NOs in ETH terms which make becoming a NO more attractive; additionally, by developing ways to drive value to RPL, we may open up options for RPL-averse NOs
NOs See potential NOs and RPL holders
Community This is intended to distribute bounties widely to get multiple viewpoints, particularly from those who may otherwise not be as active
RPL holders RPL valuation is based in large part on capture of market share; this bounty aims to improve the ability of the market to correctly value RPL, as well as the ability for the protocol to grow.

What other non-RPL protocols, DAOs, projects, or individuals, would stand to benefit from the bounty being successfully completed?

None, really- except those protocols that are directly emulating Rocket Pool

Will the results of the completed bounty be open source?

Yes

Payment

How much USD $ is the applicant requesting for successful completion of the bounty?

Specific submissions/mechanisms that are felt to be the most useful/innovative/promising for eventual adoption will receive Gold/Silver/Bronze x3 prizes ($2500, $1500, $1000 (x 3) reward levels).
Additionally, 250$ will be paid to up to 12 individuals who did not receive the above awards, but provided the highest total contribution to this call for ideas.
A maximum 10k USD will be dispersed based on these criteria.

Conflict of Interest

Does the person or persons proposing the bounty have any conflicts of interest to disclose? (Please disclose here if you are a member of the GMC or if any member of the GMC would benefit directly financially from the successful completion of the bounty).

I am a member of the GMC.

Will the applicant, or any protocol or project in which the applicant has a vested interest (other than Rocket Pool), benefit financially if the bounty is successfully completed?

No, Rocket Pool will be the only protocol to benefit. No one making award decisions will be the recipient of an award. I will not be a recipient of an award.

Epineph’s Note:

The team and other community members who attended DevConnect have signaled that researching options in these areas are of high importance and should take high priority. The next funding round of GMC will not announce results until late December, so the GMC is not able to fund this prospectively even if it wished to. On the other hand, I think it is highly likely that this bounty or something similar (perhaps larger) will be paid out retroactively, either by the GMC, the team, or another mechanism. The GMC can use this as a template, or can suggest another way to reward foundational research.

I will personally vouch for the amount listed above up to 10k USD distributed to at least 13 people meeting the criteria above in the unlikely event no other group comes forth with equivalent funding. I DO NOT think this is a significant financial risk to me, but hope this provides reassurance that the work we are asking for will be rewarded. We need your ideas now, and we value the time you spend in this critical phase of Rocket Pool’s future.

4 Likes

The version of this idea submitted to the GMC is at Round 7 - GMC Call for Bounty Applications - Deadline is December 10 - #2 by epineph


I’d like to submit two ideas:

Myso loans

The core of this idea is to use loans for folks that don’t want RPL exposure. The loans are long term, and not subject to liquidation. To soft-force staking the borrowed RPL, we use a “bad” fee with the promise of reimbursement to a good fee level if used in the desired way. The core benefit of this idea is that it needs ZERO smart contract changes in the protocol.

Rent-or-stake

The core of this idea is that folks can run minipools either by staking RPL or by paying a one-time fee (to RPL stakers) to run for two years. Because the fee goes to stakers, more renting makes staking more attractive so we get some auto-balancing.


Note that neither of the ideas above change the “equivalent protocol fee” we currently have. In order to compete effectively with the above, we’d also have to modify that by reducing the minimum bond as a percentage of borrowed ETH.

1 Like

Here’s a living list of submissions so far. Just a placeholder and incomplete at this point, have not gone through discord thread and will continue to add. Please tag me for submissions!

  1. NeverAnIsland: Built in RPL pool. https://dao.rocketpool.net/t/built-in-rpl-pool/
  2. Valdorff: Myso loans https://dao.rocketpool.net/t/options-forum-thread/2515/3
    Rent or stake: https://dao.rocketpool.net/t/options-forum-thread/2515/3
  3. Samus: ETH only minipools divert a portion of rewards to RPL staked minipools
    https://dao.rocketpool.net/t/rapid-research-incubator-submission-eth-only-minipools-divert-a-portion-of-commissions-to-rpl-staked-minipools/2584

I made a high level comparison table of proposals, here. Along with some calcs for a few of them. Can’t vouch for correctness, so please, check it and suggest additions/changes. Reach me on discord to avoid a clutter here.

Comparing Val’s rent or stake fee as a % of the commission over 2 years, vs Samus’s commission cut % example:

Link to excel sheet comparison

Link to some conclusions from this comparison

Here are my ideas. Because of obvious conflicts of interest, this is NOT a submission for bounty; it is for funsies. Many of these ideas are raw, but I would still like them critiqued, and if there’s any gold hidden in the dirt hopefully improved upon.

Essentially what I tried to do is start with a shrimp NO with an LEB1 and reverse engineer how to make that safe.

The concepts are all separate and could be adopted/rejected piecemeal. However, most are synergistic and work best together. Many of them are not directly beneficial to NOs; however, they provide guardrails protecting rETH thus safely allow for lower LEBs and higher commissions. There’s a lot of math and much of it is interrelated, so small mistakes could cause an outsized difference (butterfly effect); however, to the best of my knowledge it is roughly accurate. Also, I don’t have a programming background, so it’s likely that some specific implementations are not possible- but I think “stuff like all of this” is possible.

1. Unsmoothing Fee/lottery fee

Concept: Minipools pay in advance for the portion of MEV that the node operator could otherwise profitably steal; they are then allowed to keep the amount of any block they produce over that amount. This effectively creates an unsmoothed portion of execution rewards that is less for larger nodes and for minipools that take a higher split from rETH. The mean execution rewards remain the same, but the median is lower.

Problem: Theft of lottery blocks can be profitable if rewards > node collateral. We have set an arbitrary cutoff of 8E (10.4E total collateral) as the safe level, where <8 was felt to be higher risk of theft and >8 felt to be relatively protected from theft. However, keeping ETH bond minimum at 8E makes it difficult to match non-bonded permissioned actors (Lido) or lower bonded protocols (through DVT, Lido’s decentralization efforts, etc). The easiest way to envision allowing lower bonded minipools in our current system is to use node-level collateral; and within this the easiest way to envision is either a minimum collateral for lower bonded minipools, or a bonding curve where the per minipool bond requirements decrease as total node collateral rises.

The bonding curve idea raises a few concerns for me:

  1. the node collateral would have to be astronomically high to protect from all lottery theft

  2. More concerning, anyone who is at the bottom of the bonding curve will lose money in terms of capital efficiency. It’s hard to imagine a bonding curve schema that will make it more profitable for someone with 8E to stake on their own rather than lend their money to a whale who makes eight 1E minipools, takes a substantial cut, and still returns more profit to the small fish. That is, a potent centralization vector.

Implementation:

A second smoothing pool is created and set as the execution layer fee distributor for participating nodes. This operates in the same way as the existing smoothing pool with a few differences:

  1. Any node with LEB 1, 2, or 4 must be enrolled in a collateral linked smoothing pool or risk penalty

  2. Each time RPL or ETH bond is staked/removed then the node collateral and average commission is updated.

  3. Any deposit to the smoothing pool that is greater than the “maximum penalizable amount” will trigger the “lottery council” to act, escrowing the portion of rewards greater than the maximum penalizable amount to return to the NO who proposed.

  4. At end of month, each NO will get their portion of the smoothing pool minus the unsmoothing fee; if the result is negative then a balance will remain on the NO for the next reward cycle.

  5. Additionally, at end of month a new fee curve is generated based on the last 12 months of blocks to use in the upcoming reward cycle.

“Maximum penalizable reward”: (ETH bond + RPL bond) / (1-expected NO% of rewards). This is higher than the collateral of the node to account for the portion of the execution reward to Node would normally get. For example, an LEB8 would not benefit from stealing at 10.4E lottery block, instead the block needs to be >16E to be profitably stolen.

“Lottery council”, possible structure: 9 members. Any member can place any amount of smoothing pool ETH in escrow at any time; this has a destination (lottery block winner withdrawal address); within 4 weeks of escrow, 5/8 remaining security members need to approve the transfer of that amount to the withdrawal address. I’d have to to a retrospective, but I suspect we are looking at less than 3 blocks a month that would hit lottery status.

Fee curve: The graph below is based on several about 700k blocks over ~10 months, and gives a pretty good impression of the theft risks to the rETH at various levels of maximum penalizable reward. I think this could be manually updated each month with only a small amount of work.

Graph of yearly fee:

image

Benefits:

  1. Lossless system on average to both NOs and rETH

  2. Eliminates centralization risk of bonding curves

  3. Allows very low ethereum bonded minipools to be safe from lottery block theft, definitely a single 2E remains profitable although a single 1E minipools may not be.

  4. The fees listed somewhat overestimate the actual damage, as it effectively goes into the smoothing pool and is distributed back to NOs based on their split with rETH (ie, the fee is pretty accurate for LEB1 but definitely overestimates on LEB8).

Risks:

  1. The median NO will receive less execution rewards under this system (although this is really only going to be significant for very low collateral nodes <10E, which aren’t allowed under current settings anyhow and are unlikely to be allowed under any bonding curve system).

  2. The lottery council is a source of risk. The potential damage would be a month of rewards. This may be mitigated by putting safeguards in place (eg, awards >10ETH need additional supermajority, or rewards can only go to pDAO/IMC/GMC for distribution)

  3. If there is substantial RPL price movement during the month, then the bonding curve may be inaccurate particularly for very low bonded minipools. I think overall this should even out as rETH will be a bit underpaid in some and overpaid in others, and this would still not be the highest source of volatility in rETH execution returns (random block distribution would be).

  4. Having a second smoothing pool will worsen median rewards for both pools; however, the smoothing effect is not linear, so the difference between 24k and 48k minipools is marginal.

2. Universal Variable Commission

Concern:

Rocket Pool protocol growth is tied to a balance between minipools and rETH; both have supply/demand curve; overabundance of one results in capital inefficiency/APR drag on the protocol. Minipool overabundance has now been largely mitigated by recycling 7/8 or 15/16 of bonded ETH in the minipool queue.

Deposit pool overabundance has no mitigation and sits as a pure drag on the protocol. With a full DP, this is ~1.5 million USD/year in positive cash flow lost from the protocol/customers; a significant proportion of this flows to Lido and centralized competitors based on the Ethereum validator emissions curve.

Issues identified:

  1. An imbalance between NO and rETH stifles protocol/market share growth, and thus arrests our mission to keep Ethereum decentralized.

  2. Drag on APR (currently ~3% of rETH APR) makes our product less competitive (specifically to Lido) with no compensatory benefit; this drag (or historic drag or fear of future drag) negatively impacts induced demand in a way that is hard to predict, but certainly affects more than just the 18k ETH that we can see in the DP.

  3. The sole method to induce NO demand is building up a premium on rETH to allow NO arb opportunities; this both becomes a tax on new rETH buyers and loses another large proportion to gas fees; ironically, waiting for a better arb may also induce NOs delay minipool creation despite otherwise having a financial incentive to do so.

  4. It is human nature to think that A) our current supply/demand situation will remain stable forever or B) the next upgrade to fix supply/demand will permanently shift the curve to either NOs or rETH. Thus far, both these predictions have always been incorrect.

  5. We have been fortunate to have first mover advantage for decentralized staking, but we can’t expect that advantage to last forever and have to be prepared to compete for NOs and stakers with other protocols.

Proposal: Universal variable commission (UVC):

Opt-in delegate that where all minipools have the same commission, but that commission can change over time based on the relative supply/demand of stakeholders; overabundance of minipools would drop commission; overabundance of ETH in the deposit pool would raise commission… This would likely be integrated into megapools which are expected to require minipool migration.

Example: Given continued growth despite the current drag from the DP pool of 3% of rETH APR, this suggests the rETH market could sustain at least a 3% higher commission in current market conditions.

Variables to be defined:

  1. Triggers for commission variability (eg, based on how full full deposit pool is or how full minipool queue is, or something else)

  2. How persistent supply mismatch has to be (eg, deposit pool full for one day vs deposit pool full at reward checkpoint vs deposit pool full for consecutive months)

  3. Maximum speed of commision changes (eg, 0.1% per month, 0.5% per month, 1% per month)

  4. Maximum variability (ie, 0%-30%, 5-20%, 10-18%, etc)

  5. How frequently/granularly commission changes are (ie each reward period, each day, continuous)

  6. Whether fixed commission minipools can still be spun up, or just existing ones grandfathered in.

  7. Whether variability is up/down/stay the same, or has gradations based on how much

Urgency:

As TVL rises and ethereum bond per validator falls, it becomes exponentially more difficult to ever lower commission. If we roll out megapools/very-low ethereum bonded minipools without dealing with the inevitable demand mismatches, we are unlikely to have another chance in the future. Specifically, under the current system if rETH stops growing at any point, it doesn’t matter how low we set the commission for new minipools as we have effectively lost ALL ability to give rETH a more competitive commission without drastic measures such as:

  1. lower RPL/pETH minimum requirement- may cause some shock, causing some NOs to exit and thus new NOs willing to accept lower commission for lower RPL requirements

  2. exit high commission NOs- either benignly (presigned messages, etc) or by oDAO authoritarianism (penalize high commission minipools that don’t exit)

  3. change to involuntary delegate upgrades, which obviously has security implications for NOs.

Counter Arguments:

  1. NOs are more sensitive to a variable commission than rETH holders, and this will drive down NO interest: I’m not sure there is evidence for this, although I previously have seen this argued. I would say that NO APR is already extremely variable (down only consensus rewards and high volatility in execution rewards). Specifically, we can’t predict if UVC will be beneficial or detrimental for NO commission- likely both will be true at times; however, we can be reasonably assured that by increasing efficiency and decreasing drag on rETH, we will be able to lock in more TVL which in turn requires RPL and is thus generally good for all NOs.

  2. We tried this and it failed at Rocket Pool launch: There is a big difference between “variable FIXED commission” (i’ll call it VFC) and “UNIVERSAL variable commission”. The former (a minipool could lock in a lifetime commission of 5%-20%) was imminently gamable- there was a strong inducement to wait to spin up minipools if the commission was low, but no ability to reduce commission once rETH demand decreased. In the latter (UVC), there is no commission benefit to waiting to spin up a minipool, and when rETH demand drops the commission can be readjusted.

  3. This will encourage significant inefficent inflow/outflow of investment, perhaps more than the current system, as stakeholders who entered for a given APR leave when that APR decreases: This is a valid argument; however, i think the friction is significant enough that rotating around some gravitational center APR will not cause significant exiting (ie, if an rETH holder bought expecting 3.8% APR, they wouldn’t exit at 3.7% APR (the equivalent increase of >2% commission); so as long as commission is not wildly erratic it shouldn’t increase churn much.

My recommendations:

  1. Triggers for commission variability (eg, based on how full full deposit pool is or how full minipool queue is, or something else): If NO queue >200, commission decreases; if NO queue <200, commission increases. NO queue ETH get recycled so are strictly better for the protocol than DP ETH; also allows larger deposits

  2. How persistent supply mismatch has to be (eg, deposit pool full for one day vs deposit pool full at reward checkpoint vs deposit pool full for consecutive months): Instantaneous

  3. Maximum speed of commision changes (eg, 0.1% per month, 0.5% per month, 1% per month): 1% per month

  4. Maximum variability (ie, 0%-30%, 5-20%, 10-18%, etc): 5-25%

  5. How frequently/granularly commission changes are (ie each reward period, each day, continuous): once weekly

  6. Whether fixed commission minipools can still be spun up, or just existing ones grandfathered in. all new minipools have variable commission

  7. Whether variability is up/down/stay the same, or has gradations based on how much: single up/down toggle

3. Jaws of life- dynamically valuing RPL

Concept: Universal variable commission balances rETH and NO demand. If demand for one goes up, it subsequently sacrifices some value to increase demand on the other. However, it is unable to provide anything except a relatively soft landing if demand for both decrease. In a world where supply of both rETH and NOs are falling (from, for example, competition), RPL value will approach zero quite quickly.

The Jaws of Life dynamically decreases minimum RPL bond in response to bad market conditions to make the product more attractive to NOs and thus allows room to improve rETH demand.

Essentially this is a way to sacrifice RPL “potential future value” in order to preserve market share and current value in response to bad market conditions. Obviously, if market share has hit its maximum market share then “potential future value” is an imaginary number anyway.

Implementation:

  1. High water mark for rETH supply is recorded.

  2. Every full 10% rETH supply falls from high water mark is accompanied by a 10% decrease in the minimum RPL to spin up a minipool (setting change by pDAO)

  3. As rETH supply returns, the minimum bond needed again rises in the same way until 100% at >90% of high water mark.

  4. The RPL reward structure remains unchanged (ie minipools can be spun up but won’t get RPL rewards until 10%)

Benefits:

  1. Derisking NOs when they are desparately needed

  2. Increases NO returns in pure ETH, which should draw RPL skeptics

  3. Allows those with RPL to create more minipools without additional investment

  4. Decreases the potential risk to NOs of exiting to arb/preserve PEG

  5. Combined, prevents one significant source of a Rocket Pool death spiral

Risks:

  1. Sacrifices some future value from RPL

  2. Add some gamability over timing: you could wait to spin up a minipool if you think rETH supply will fall further and you can get a cheaper (by RPL) minipool. However, if you think rETH supply will fall, then you also think NO supply will fall, which means you almost certainly think RPL price will fall, which means you will probably wait anyway.

4. Penalties revamp

Problem: Persistent MEV theft can occur. Currently, a node is penalized after their third infraction, which probably doesn’t make sense for either lottery block or persistent theft. On the other hand, penalizing a persistently thieving NO down to 0 ETH also doesn’t help as they have already assumed their bond is lost, but their minipool can continue collecting normal consensus rewards until they exit (and also execution thefts).

Implementation:

1). Any penalty reduces commission of the minipool to 1%

2). Maximum penalty leaves 10% of stake (RPL/ETH) intact, which over the course of 1 year trickles down to 0.

  1. Voting power of penalized node goes to zero

  2. RPL rewards of penalized node go to zero.

  3. A penalty can take unlimited ETH (none of this ‘can extract a one-ETH penalty 78 times sequentially’).

  4. The total number of penalties per week will be capped (since penalties have never been used a single time since launch, I would cap at 10 or 100 times per week; there is absolutely no reason to allow oDAO the power to penalize 24k minipools).

Benefits:

  1. gives MEV thieves a reason to exit that they wouldn’t have if bond was zero.

  2. cuts off a major source of benefit for persistent MEV theft.

  3. recognizes that we shouldn’t wait until the third penalty, because someone stealing lottery blocks will likely only steal once.

  4. provides straightforward guardrails to substantially limit the risk of malicious oDAO.

Downsides:

  1. there are ways to hide MEV theft that are not immediately obvious (ie make it look like a vanilla block); this doesn’t address those although I think these happen never or almost never. I would not penalize vanilla blocks because the costs outweigh benefits.

  2. providing a oDAO guardrail for number of penalties would require a smart contract change, as would ability to penalize commission.

Attribution: skuzzle made me think more critically about this.

5. RPL bond sliding scale

Trigger warning: this contains more opinions than usual and may bring flashbacks for some viewers.

Background: Currently, we have priced RPL to include a minimum bond per borrowed ETH for rewards and starting minipools. This was first part of the initial pETH vs nETH debate. The decision was made to keep the “RPL value staked per rETH created” constant at 10% bond. This was largely to preserve RPL value and as a reaction against the other option which would have decreased “RPL value staked per rETH created” by 87.5% by the time you got to the 4ETH level. I’m not sure there was a lot of thought going towards a middle road, but it was a long time ago. This decision had two major ramifications:

  1. It overexposes RPL sceptics

  2. It overpays RPL believers

This is not terribly evident at first blush with LEB8, but extrapolating to LEB1 with current levels:

A 16E minipool at minimum collateral is 9.1% RPL bond and about 10% RPL rewards; ETH rewards/collateral is ~3.6% more than solo staking; including RPL rewards ~13% more than solo.

A 1E LEB at minimum collateral is 75.6% RPL, and 40% RPL rewards; ETH rewards/collateral are about 30% more than solo staking; including RPL rewards ~106% more than solo staking.

In other words, if you value RPL, then paying 30% more than pure ETH is too much in addition to the valuable RPL rewards (which make up almost 50% of rewards).

If you are a RPL skeptic, then putting 75% of your stake in a volatile asset would be extremely foolhardy for 30% extra.

While the argument may be made that LEB 1s are not for RPL skeptics, this pattern is true across the spectrum, including LEB8, and I think partially explains why our expansion post-atlas has been largely driven by bond reduction rather than new entrants. The problem will be even starker with upcoming tokenomic changes as more value is drawn to RPL believers to bond reduce.

Concept:

Look at RPL bond/ETH bond as an important metric for node operators demand, and try to mitigate as ETH bond decreases.

Implementation:

I like round numbers, so decrease RPL minimum bond to 10/9/8/7/6% of borrowed ETH as bond reduces from 16/8/4/2/1. At every bond reduction you will need more RPL per bonded ETH, just not as much per rETH.

In response, you can decrease commission 14/13/12/11/10%.

This will dovetail with a universal variable commission.

So 1E LEB at minimum collateral is 65% RPL, and 31% RPL rewards; ETH rewards/collateral are about 43% more than solostaking; including RPL rewards ~73% more than solo staking.

A similar but less extreme change would occur at every ETH bond level. This widens the RPL agnostic who would be interested in low bonded minipools. It also provides an avenue to lower commission independent of variable commission, and in a way that makes more sense because very low bonded minipools ARE riskier so rETH holders should be charged less for them.

6. Preferential queue for higher ETH bonded minipools

Problem: Regardless of how we increase our protections, 16 ETH minipools are strictly better for rETH holders on a per-rETH basis than LEB 8; this is true at every level of LEB for correlated slashing, persistent and lottery MEV theft, abandoned validator, etc. Even if forced exits and higher mininum stake were enacted, correlated slashing still makes lower LEB more risky to rETH holder. Thus, if there is enough rETH supply from LEB16s, there is no benefit to the protocol in allowing LEB8s; if there is enough supply from LEB8s, there is no point to allowing LEB4s; etc.

Implementation: Regardless of which LEB implementation is ultimately chosen for RP, enact a system of separate queues for each LEB level, where LEB16s are preferentially picked, then LEB8, LEB4, LEB2, LEB1 in that order. This means that even with a flood of minipools, we will only see a glut of LEB1s if there is no appetite for LEB 2, 4, 8, 16.

Benefits:

  1. Reduce rETH risk when very low ETH bonded minipools are not needed - incentivizing higher bonded LEB.2) If 5 is enacted, effectively increases RPL/rETH created

Risks:

  1. increased confusion for NOs when their very low bonded minipools appear queued for too long

Variation: Pseudo-permissioning of minipools: initially only LEB 8/16 permitted; if some trigger met (for example, DP is not empty) for one month, then LEB 4 are permitted. The minimum LEB level can increment up or down each reward period depending on triggering metrics. For example, if LEB 8s are allowed currently, a sudden mint of 20k rETH won’t allow a bunch of LEB1 to be created; instead- several weeks of LEB 4, several weeks of LEB 2, and if there is still demand then LEB1 will be allowed.

Other background: When RP launched, 32 ETH minipools were available to get rewards on at least half of the stake while waiting in the queue. However, this had the side effect of (in times of prolonged queue) leaving the other half locked-up long after you could have had 2 LEB 16s. Based on this experience, I would prefer some way to ‘upgrade’ or ‘top up’ a queued minipool to a larger ETH bonded minipool if the NO miscalculated the supply/demand situation- not strictly necessary, but good quality of life.

7. Medipools

Problem: 1E minipools present substantial risk from both lottery block theft and continuous theft standpoints.

Concept: LEB 2 and LEB 1 that are linked such that minimum ETH bond remains 4, but a larger number of validators can be spun up. This is envisioned as an easy step on the way to megapools.

Implementation: No LEB 2 or LEB 1 can be created from scratch. An LEB 4 must be created; subsequently this can be bond reduced. The bond-reduced validator has the same beaconchain withdrawal address (minipool address) as the initial validator, but otherwise both function as LEB 2. Each can be further bond reduced to LEB1 in a similar fashion.

A new minipool contract does not need to be created; because there are a finite number of permutations, the minipool can merely have a count that increments up each time (ie, 0 = 4E; 1 = 2/2; 2= 2/1/1; 3 = 1/1/1/1), and unidirectionally. There is no need to increment down. This should be fairly gas non-intensive. When exiting, all associated validators in the medipool would need to exit before the lot could be withdrawn. The math for penalties is fairly simple- ETH stake would be penalized if withdrawn amount was less than 32, 64, 96, 128; this prevents potential exploit of exiting down to as single 1E minipool on multiple nodes (which will otherwise have to be dealt with in other node level collateral schemes)

Benefits:

  1. Giving the benefits of very low bonded minipools without the tendency toward centralization that node level ETH bond curves would give.
  2. Mitigates the nearly terminal gas inefficiencies for very low bonded minipools (both in contract creation and distribution of rewards)
  3. Does not require a total revamp of the system like megapools would, and may actually be more gas efficient for very small stakers than megapools.

Risks: Smart contract risk; use of resources that could be devoted elsewhere

Variation 1: The same process could be performed starting at LEB 8 level; there would be many more permutations and it would make LEBs themselves slightly more expensive gas wise.

Variation 2: there can be a time lock for bond reduction- for example, only one reduction in a medipool per month. This again prevents some small attack surfaces while rewarding longevity.

8. Pre-signed exit messages/reusable minipool contract

Problem: no forced exits to prevent persistent MEV theft or abandoned validator losses

Concept: allow LEB 4/2/1 with a presigned exit message. Honestly, I hate this idea because it’s extremely inelegant; but sometimes you have to go with the least worst idea.

Implementation: very low LEB presigned exit messages have to be sent securely to >1 oDAO member. During scrub process, those oDAO members must confirm the accuracy of the exit message.

The minipool contract itself can be reused ONCE as beaconchain withdrawal address (ie, to re-enter as a minipool without a presigned exit message once protocol level forced exits are permitted).

Benefits:

  1. can discount persistent MEV theft as a major risk to rETH for very low bonded minipools

  2. would not affect larger pools

Risk:

1). Presigned message can be intercepted allowing malicious actors to force exit validators. This could would cause gas costs and some capital efficiency loss, but the funds would be safe.

  1. These messages would have to be stored and the oDAO setup could be infiltrated; however forced exiting is probably the least of our worries if the oDAO gets hacked.
9. No-commission minipools

Concept: When you have a way to balance rETH/NO demand, driving down commission in some minipools can be used to increase commission in others.

Implementation: Enable no-commission 8E minipools without RPL collateral.

Benefits:

  1. NO returns would be equivalent to solo staking + 8E minimum + smoothing pool + smartnode + rescue node + community support.

  2. Higher commission possible for RPL bonded minipools (eg, for every 8E no-commission minipool, 3 minipools could have commission ~18.5%, which drives value to RPL)

  3. Simpler to implement compared to non-RPL bonded megapools

Risks:

  1. Strictly speaking, mathematically worse for the NO than Lido’s CSM or even existing 16E minipools, so uptake may not be extremely high. However, I think there is definitely a market for people who a) don’t want Lido to succeed, b) want the convenience of rocket pool, and c) don’t want to have RPL. These are the people who are solo staking now and may continue solo staking after CSM.
putting it all together with 1, 4, 5, 7

Lowest ETH bond is one medipool at 6% RPL, 4 ETH and 7.44 ETH of RPL = 11.44 ETH collateral

This will earn ~ (1+10% * 31) x 4 * 6% = 0.98 ETH worth of ETH rewards

While paying ~.04 x 4 = .16 ETH per year in unsmoothing fees

Net this will be about 0.82 ETH/year + lottery blocks which the NO can keep

A solo with this much ETH would average 0.684 IF SMOOTHED

So 20% more than solo in pure ETH, + 23% mean (~18% median in a year) lottery blocks + smoothing of execution rewards.

And another 81% of solo in terms of RPL rewards if maintaining topping up to 10% collateral.

With average blocks reward of 0.07 and ~3 proposals per year, there will be a runway of about 9.5 years for persistent theft.

So 143% of solo validators if RPL goes to zero and timeframe is forever, and markedly more if RPL gains in value.

Remove RPL collateral requirements for node operators.

Instead add a platform fee, which is a percent of the validator rewards that are redirected to a RPL treasury. The fee percent can be changed at any time by vote of RPL holders in order to capture value, incentivize node operators, and remain competitive with alternatives.

An optional addition to this plan is that the fee could be negative, giving rewards from the treasury to node operators, to incentivize more to join. Or, emission of RPL can be used to incentivize node operators to join.

Presumably the treasury will eventually be used to repurchase RPL to return the value to token holders, but this does not need to be decided at this time.

I consolidated my proposal to a github repository, which now includes a script to plot out different scenarios and some conclusions that can be drawn from them.

commission_cut_proposal_github_repo

1 Like

One more submission from me:

Direct Capture 2

The core of this idea is to give commission to RPL stakers directly and remove the current RPL staking requirement to create a minipool. The amount of commission received follows a curve in the spirit of RPIP-30 that’s designed to incentivize (a) running minipools to create rETH and (b) staking RPL to a point. This enables ETH-only participation, lets us have one “opinion” embodied by both ETH commission to staked RPL and RPL rewards to staked RPL, and makes it easier to explain the system compared to the status quo.

Original "Direct capture" idea; retracted 1/7 in favor of the above refinement

Direct capture

The core of this idea is to give commission to RPL stakers directly and remove the current RPL staking requirement to create a minipool. This enables ETH-only participation, RPL-only participation, etc. While this is a larger shakeup than some of the other suggestions, it has several benefits including: fewer total parties (and thus less complexity in choosing settings), and being easier to explain.


And a little bonus: Knob thoughts - Google Docs. This document discusses most of the proposals, what parties they include and a minimal set of knobs to steer value between the parties. I’ve set it to allow anyone to comment or you can DM me if you have feedback or a better formulation for a proposal.

2 Likes

Last submission before the deadline from me I promise:

Bond Curves

This writeup explores what bonds we need across a node and per minipool in order to stay safe in a number of scenarios. Based on that it proposes a few bond curves we could support to be far more capital efficient than the current LEB8s.


And once again a small bonus: this time some quick thoughts about the overall package I’d love to see for a comprehensive “Let’s get serious about competing” rework.

1 Like

I have written up several potential changes to the staking mechanics which would increase the take-home income of node operators. Each of them works by attempting to change the income type from ordinary income (which is taxed at a high rate) to capital gains income, which is taxed at a much lower rate when held long-term.

When Node Operators are able to pay less in taxes, their income is much higher. This makes rocketpool signficantly more competitive for NOs, and would allow RP to reroute some of the income to other places in case other areas are not holding up to competition. These proposals help rocketpool competitiveness to LIDO, which matches the spirit of the grant if not any specific topic.

A short descriptive summary of some options are as follows.

Value-Accruing Options
  1. Node Operators receive a value-accruing oETH token upon the creation of the minipool, and all node-related ETH is sent to or held in a sETH pool (which backs the oETH token). Upon exiting the minipools, the node redeems the oETH token for ETH. The oETH token appreciated in value, which would classify this as capital gains

  2. In the RPL-as-rent scheme, the RP-commission on nodes would be held in an eETH pool. This eETH pool would then to used to purchase and burn staked-RPL tokens, allowing for an appreciation of sRPL value and capital gains income

  3. In the RPL-as-rent scheme, the RP-commission on nodes would be held in an eETH pool. This eETH pool would then to used to send additional ETH to nodes when they unstake their RPL. I am not confident this would classify as capital-gains, but it may be worth investigating.

A more complete writeup with diagrams and potential issues can be read here rp-thoughts/value-accruing/value-accruing-token.md at main · sckuzzle/rp-thoughts · GitHub

1 Like

I think I only saw one submission around that hasn’t gotten to this thread? If anyone else knows of one, please link

rETH protection

The core idea is covering shortfalls to rETH caused by outlier bad performers in some way. While the variant described concentrates on RPL rerouting due to current flows, if we combine with some of the ideas above it’s possible to, eg, reroute ETH commissions instead to further improve the concept.

1 Like

Announcement: The official deadline for this bounty has passed. Submissions up until this point will be compiled and the quality of each submission will be graded.

You can read more about the funding and reward details for this bounty here [link].

The GMC is still very much interested in work of this nature, and while I cannot guarantee funding, I would say there is a likelihood for the GMC to reward any high quality submissions in the near future.

Proposal: Priority deposit pool for bundled rETH + RPL purchases

The protocol design has focused RPL around node operators. Whilst speculatoors and rETH holders are free to buy RPL if they wish, they have no special incentive to do so, except for expectation of rising token prices - which is currently not a majority position.

The aim of this proposal is to broaden the target audience for usefuleness of buying RPL to rETH buyers, many of whom are probably as sympathetic/loyal to Rocketpool as a protocol as the node operators. They should also be incentivized to buy and hold RPL.

The proposed mechanism would be a stand-alone smart contract solution for a parallel deposit pool, in which rETH can be bought at a discount to market price by bundling the rETH minting transaction with an RPL buy. It should also provide priority over the regular “pure rETH” deposit pool, i.e. have higher capacity and being used for the creation of new minipools first (in front of the regular DP). ETH in the priority DP could optionally reduce the capacity of the regular DP, if we wanted to limit the impact on total idle ETH. The RPL bought in this way would have to be locked up for a defined period in order to prevent immediate selling.

Without proposing a definitive formula to calculate the discount, it should have the following parameters as inputs:

  • Fullness % of regular deposit pool (if empty, discount should be zero)
  • Ratio of RPL to rETH committed to buy in the transaction
  • Duration of committed lockup

I can do some basic modeling to propose a formula if the proposal is seen as generally useful.

The maximum discount may or may not exceed the market premium:

Option 1: Max. discount limited to premium. In the optimal case (i.e. with highest RPL + lockup commitment), an rETH buyer can buy at the fair rETH value instead of the higher market price, but not below.
Option 2: Discount can exceed market premium. By committing more RPL, a buyer can lower their rETH entry price below fair value. TBD where the subsidy should come from.

Benefits:
RPL becomes useful for rETH holders by buying them priority for minting. Widening the audience for useful RPL holdings increases the expectation of rising RPL prices. Rising RPL prices increase the ability of NOs to launch more minipools.

Can mostly be bolted onto the current protocol mechanisms without having to make changes to more fundamental parameters of tokenomics.

Can be combined with other ideas.

Drawbacks:
Priority deposit pool would further deprioritize the regular deposit pool, making it even less available. Eventually, it could also be scrapped in favor of one deposit pool that always bundles rETH + RPL, but with the option of requiring zero RPL purchase when there is enough space. This would probably incur higher gas costs for minting than the current deposit pool.

Forcing rETH buyers to buy RPL as well may be seen as coercive, but it is no worse than not being able to mint rETH at all due to lack of node operators.

Requires smart contract development, audits etc.

Further research

  • Feasibility of functionality in a smart contract.
  • Required reliable market price oracles for rETH and RPL.
  • Find reliable source (market) for required RPL buys.
  • Possibility to put the locked-up RPL to better use, e.g. in a vault from which node operators who do not want to buy RPL themselves can borrow for a fee; challenges: slashing risk? what happens when vault runs dry? complex → find third party who can provide most of the functionality to integrate with

Implementation ideas

Creation of a second interface similar to stake.rocketpool.net, but with more options to select the parameters of the bundle and directly see the resulting conditions.

1 Like