RPL Staking Rework Proposal

First I’ll address the variant you said. If it was literally a single period in the entire life of RP that one person would be behind in rebalancing, I would consider this totally negligible. A partial difference in earnings for one month for some people should not be what we use as a basis to make decisions

That said, please read the [transition section] (https://github.com/Valdorff/RPIPs/blob/rpl_staking_rework_finalizing/RPIPs/RPIP-30.md#transitioning-towards-final-states) of the rpip. The rewards changes are being ramped in over a period of 6+ months. The withdrawal changes are likely to be even slower - they will step to 60% bonded (which is 20% of borrowed for LEB8s and 60% of borrowed for EB16s); during this period they do not have an unstaking time (other than 28 days since last stake). With the next smart contract upgrade, the limit changes to be 15% of borrowed and the unstaking process involves a 28-day waiting period. In general, there will be a tradeoff between earning on more RPL or being more liquid for the two individuals you describe.

Yes, that’s how it would currently work. Yokem had a concern about possibly dropping between when the request is put in and when withdrawal executes. I don’t see this as an issue (and it requires a massive >33% drop in 28 days, which is essentially impossible to predict).

I don’t believe it’s rational to have 5x as much RPL as you prefer in your portfolio. In other words - if an NO enters with 2.4 ETH worth of RPL per 8 ETH (limiting how much they speculate), I don’t expect them to hold when they have 5xed to 12 ETH. If their thesis was that the upside on RPL was modest at a price x ETH per RPL, they should absolutely take profit before 5x ETH per RPL. Do we want them to do this by withdrawing, or by closing and reopening pools (with ETH idle for the protocol in the queues). See more thoughts on this in https://github.com/Valdorff/rp-thoughts/blob/main/rpl_staking/research.md#which-nos-are-sensitive-to-rpl-yield

Thank you for that information. I would still like to understand the motivation for a withdrawal queue. Is it trying to carry over the idea of the cool down period to the new paradigm?

(bringing over from discord discussion)

The focus of this is to reduce volatility, both in general (where there’s no temptation to trade a quick spike), and especially in the case of a bank run (where people try to exit to sell before others exit to sell). The thought was very much inspired by Cosmos unbonding times.

1 Like

For anyone following along or wanting to help review, rpl_staking_rework_finalizing by Valdorff · Pull Request #70 · rocket-pool/RPIPs · GitHub is now feeling very close to being ready for finalizing.

One thing that would be super useful is for fresh eyes to check that the spec matches the changes in https://github.com/Valdorff/rp-thoughts/tree/main/rpl_staking#proposed-changes (though ofc with much more explicitness).

1 Like

This change supports the protocol’s growth mid- to long-term, while presenting a “immediate” downside to NOs with high collateralization levels. Leaving out the technical details of rebalancing methodology for more clever people, I believe that in that context delegates should ask themselves:

  • If we would start the protocol from scratch knowing what we know today, would the new staking methodology align better with the goal of maximizing protocol growth and decentralization? (Y / N)

  • Can we proactively reach out and share awareness of the logic, mid- / long-term goals attached to it, and have proactive discussions with highly collateralized and “big enough” NOs who will be affected immediately? (Y / N, and if Y, what would be the strategy around it? e.g. could we do a quick sentiment check with these ~40 NOs with, for example, more than 100 minipools)

→ “Big enough” could be defined as NOs who can have an impact of >100 Minipools if they were to break away from the protocol due to this decision.

To put in context a potential “loss of NOs” due to a community backlash, we can consider, as reference, that if the current 16k ETH in the deposit pool were to be “eaten up” by a rebalancing of NOs and bond reductions (50%/50% eb16s and leb8s), we would gain 1500 more minipools.

“When forced to choose between optimizing the appearance of our GAAP accounting and maximizing the present value of future cash flows, we’ll take the cash flows.” - Jeff Bezos, 1997 Letter to Shareholders

Hello Again.

In my last analysis we found that rewards for some individuals were as high as 180% of their rewards without this proposal. We also talked about how the most heavily impacted “losers” were losing out because they have a collateral ratio and many eb16s, and that they could mitigate their downside by migrating to leb8s.

Logically, that downside mitigation comes out of the other nodes’ rewards… but, what would that look like?

Today I modified treegen again to calculate the hypothetical rewards as if everyone who still has eb16s migrated them to leb8s to the extent that their current RPL bonds would permit.

Click here for hypothetical rewards tree
Click here for Updated CSV
Click here to see the patch to treegen (based on the previous patch to implement the new formula)

The last two columns in the CSV (hypothetical, hypothetical_factor) are the hypothetical/predicted reward amount and its factor calculated from its actual interval 15 rewards, respectively.

Once again, here’s me:

node interval15rewards proposed factor hypothetical hypothetical_factor delta hypothetical_delta
0x18845fd4aa047d6d43c934cc37aca94f85def683 25.0122713590862 21.3127893045889 0.852093318460127 16.9834290293998 0.679003869164016 -3.69948205449725 -8.02884232968635

So my actual decrease, assuming people rationally migrate to leb8s, is a third of my current rewards.


Once again, the biggest losers by total swing:

node interval15rewards proposed factor hypothetical hypothetical_factor delta hypothetical_delta
0x17fa597cec16ab63a7ca00fb351eb4b29ffa6f46 6023.22623367632 3373.75553590557 0.560124326236104 3665.56845955405 0.608572269635096 -2649.47069777075 -2357.65777412227
0x22ffba127f6741a619fa145516ef4d94b90f093a 1417.00027016498 406.753997115619 0.287052871957646 863.559131717549 0.609427640840891 -1010.24627304936 -553.441138447432
0xd5c4d2d852a75b54daf2138492b2e1f25a36fabe 1217.34187352257 941.262160613585 0.773211027309771 750.059453710191 0.616145283444311 -276.079712908982 -467.282419812376
0xca317a4eccbe0dd5832de2a7407e3c03f88b2cdd 2142.75795001593 974.570809890287 0.454820764931962 1679.20688401326 0.783666155106685 -1168.18714012564 -463.551066002663
0xb81e87018ec50d17116310c87b36622807581fa6 1435.60128768732 1546.32486240519 1.07712696809867 1232.21311775463 0.858325447547947 110.723574717871 -203.388169932693
0x663cbbd93b5ee095ac8386c2a301eb1c47d73aa9 1808.81809820746 778.456936814446 0.43036772884233 1615.23845191381 0.892980036806638 -1030.36116139301 -193.579646293649
0xacb7cfb56d6835d9e2fa3e3f273a0450468082d9 1808.81809820746 778.456936814446 0.43036772884233 1615.23845191381 0.892980036806638 -1030.36116139301 -193.579646293649
0x895f6558f0b02f95f48ef0d580ec885056dcccc6 1808.81809820746 778.456936814446 0.43036772884233 1615.23845191381 0.892980036806638 -1030.36116139301 -193.579646293649
0x7c5d0950584f961f5c1054c88a71b01207bf9cb7 1808.81809820746 778.456936814446 0.43036772884233 1615.23845191381 0.892980036806638 -1030.36116139301 -193.579646293649

Many of these nodes are familiar, and Thomas still “wins” (unsurprising given his status as an outlier in raw terms). However, their hypothetical_factor tends to be higher (better), with a few exceptions like 0xd5c4d2d852a75b54daf2138492b2e1f25a36fabe.


The biggest “winners”:

node interval15rewards proposed factor hypothetical hypothetical_factor delta hypothetical_delta
0xfd0166b400ead071590f949c6760d1ccc1afc967 371.75691749514 677.058729081032 1.82124043216999 539.524822854018 1.45128388326781 305.301811585892 167.767905358878
0x2fc184459069dc780b478f7e3c9ffd79e40842a3 449.767509478073 770.649998412312 1.71344079368161 614.104487568153 1.3653820576786 320.882488934239 164.33697809008
0xd91eecc267ff626399798040d88de62c9e70acf0 359.930169559552 655.519377559656 1.82124043216999 522.360854183628 1.45128388326781 295.589208000104 162.430684624076
0x84ba027280cc6cc1e592a01270c5f21a494f46cb 291.487883004815 530.869518016004 1.82124043216999 423.031666772741 1.45128388326781 239.381635011189 131.543783767926
0xacfad9f0d80f74ad7e280a55ea025f4f09844b0f 271.330533561145 494.158138203814 1.82124043216999 393.777630395746 1.45128388326781 222.827604642669 122.447096834601
0x9a8dc6dcd9fdc7efadbed3803bf3cd208c91d7c1 258.591509364616 470.957312270704 1.82124043216999 375.289689890765 1.45128388326781 212.365802906088 116.698180526149
0x327260c50634136551bfe4e4eb082281555aafae 389.321046889459 253.773380940105 0.651835761173631 497.378560365655 1.27755374218666 -135.547665949353 108.057513476196

These don’t fare as well as the would have if nobody migrated, of course, because their relative rewards share decreases as migrations happen. Indeed, the highest ‘gain’ in this scenario is down to 45% from 80% extra rewards.

The biggest ‘loss’ in this scenario is down to 40% from around 70% of rewards.


In conclusion, the proposal creates a very strong incentive to migrate to leb8s, which is great for protocol growth. However, there are still people who stand to lose up to 40% of their rewards, because they do not have the option to reduce their bonds further. The maximal upside is an extra 45% of rewards, going to low-collateral, only-leb8-nodes. The maximum downside is -40% and is from high collateral nodes that cannot do bond reductions further.

If we are to summarize this, the likely outcome is that:

  1. Anyone who can will do bond reductions until they approach 10% of borrowed.
  2. Low-collateral nodes with leb8s will get extra rewards at the expense of high-collateral nodes and people who refuse (for whatever reason) to migrate their eb16s to leb8s despite having plenty of RPL staked to do so.

How I’m voting:
I will vote in favor of this proposal. Nobody has taken me up on my standing offer for individualized analysis and I haven’t heard from anyone heavily impacted who wishes to express concerns. I will assume this means the worst-impacted nodes understand that bond reduction will ameliorate their downside.

My rationale, regardless of the pragmatic who-stands-to-gain-and-lose aspects, for voting in favor, is that if we had this method of rewards calculation at the time leb8s were launched, we would have grown much faster. We currently have a minipool shortage (19.4k Eth in the deposit pool and plenty of high collateral nodes with eb16s that haven’t done bond reductions despite a short beacon queue), and bond reductions will help fix it. I make no speculative assumptions on whether the impact of that growth would translate to a more favorable price for RPL.

7 Likes

So a few minor points:

  • Yes! We want people to bond reduce. They supply more rETH and it makes sense to reward that.
  • It is already the case that rewards are strictly better for LEB8s if folks have enough RPL to get rewards. They haven’t all swapped. This will strengthen the case, but I dunno about being a wholesale swap.
  • You say “I make no speculative assumptions", but I disagree. When you say, eg, people will lose 40%, that is only true assuming no impact on token price (despite the creation of a very significant amount of rETH growth)

This is a misrepresentation (misunderstanding?) of what I mean. I’m not predicting people will lose 40%. The numbers simply show that if everyone who could had bond reduced, and we had implemented this proposal without a phase-in before interval 15, with all other things held the same, they would have gotten 40% less. I just don’t want to write that sentence every time I describe the delta.

I do make no speculative assumptions about the price impact when it comes to my rationale for voting in favor.

As for:

  • It is already the case that rewards are strictly better for LEB8s if folks have enough RPL to get rewards. They haven’t all swapped. This will strengthen the case, but I dunno about being a wholesale swap.

I do not follow. If rpip-30 is not adopted, the only difference post-migration is eth commission. Is that what you mean?

If rpip-30 is adopted, rewards are strictly better for leb8s than for eb16s, but not strictly better than the case where it had not been adopted.

I disagree with this and all the similar statements. They would have gotten 40% fewer tokens. Which I don’t think is a metric people should care about much at all. If you want token count, SHIB is a dramatically better choice.

Yes, that is what I mean.

Then what you disagree with is that I chose to hold the price constant when I calculated the alternative trees for interval 15, since obviously the outcome is just math. Which I accept. I would just like to clarify that the decision to do so was not a factor in my rationale for voting in favor, which I think you should agree with, considering the specific nit we’re talking about here.

As to the other point, yes, I didn’t mean to imply that there wasn’t already an incentive to switch to leb8s… it’s still there, and still a good one. This does substantially strengthen it.

1 Like