dApp Staking - Astar Foundation Proposal & Next steps

A few thoughts from my side, as someone who worked on Astar, dApp staking v3 & Tokenomics 2.0 for quite some time.

I made a lengthy post to explain the design choices with dApp staking v3 & Tokenomics 2.0. I don’t want to repeat the same information here, even though majority of it is valid.

Some of the choices have proven to be wrong, but have or will be addressed.

I’m sharing this as my opinion, and not that of Astar team/foundation.

dApp Staking v2

Before diving into v3, just a reminder how it used to work like - there was a fixed amount reward pool for each era, irrespective of current ASTR price, locked/staked amount, number of dApps, etc.

That meant that dApps which got in early would earn huge rewards. The less dApps there were, the better it was for the existing ones. A textbook example of the zero sum game.

Imagine a scenario where only a single dApp is registered, and only 1 ASTR out of 7 billion is staked. That dApp earns the entire reward pool each era. Today that would amount to ~230K ASTR per day, but back then it was even more.

Such mechanism allowed dApps with relatively meager staked amount to earn disproportional rewards. Low TVL (or staked amount), with huge emission for dApps - doesn’t sound like a good recipe.

Some individuals refer to this period as the age of greatness, when everything was better, more decentralized, more successful, etc. I couldn’t disagree more - the only thing that was better was that huge rewards were received for relatively small stake amount.


dApp Staking v3

Let’s quickly go over hits & misses of v3, from my perspective.

‘Hits’

  • much more sustainable inflation
  • dApp rewards & tier entry thresholds are adjustable to the price (7-day moving average)
  • zero sum game practically eliminated
  • stake-and-forget eliminated
  • foundation for dApp accountability with subperiods
    • however, only fully possible with the introduction of governance & the community council

‘Misses’

  • no intra-tier reward increase (remedied after you425’s proposal)
  • tier configuration which caused many people to be unhappy
    • tier4 meant to be symbolic as the entry point is basically worthless
    • tier1 unachievable with the current TVL
      • truth be told, we wouldn’t be having this problem if TVL was ~40-50%
    • the price drop from 0.19$ was hard on the threshold, pushing dApps into lower tiers and cutting rewards drastically
      • in hindsight, the impact should still have been felt, but it should have been much much less
  • the approach with loyalty staking & bonus reward hasn’t worked as intended
    • if we had governance and commitment from dApps to do something over a period, then it would have made more sense
    • although the incentive to stake during the Voting subperiod is good to have, staker should (and now will) be able to move their stake a few times at least, without forfeiting the bonus

Future Improvements

There are no concrete improvements in the pipeline at the moment, except for the ones already described:

  • move_stake extrinsic to preserve bonus when moving stake from one dApp to antoher
  • changing tier parameters via a referendum

In hindsight, perhaps the entire approach with dApp rewards should have been different. Just an idea but:

  • stakers lock their tokens and earn rewards
    • they can use this tokens to nominate a dApp, but they also don’t have to
    • dApp rewards scale with TVL
  • remove concept of periods/subperiods
  • dApps apply for a ‘dynamic grant’, and it’s either approved or denied using governance
    • community council & regular token holder can both vote/decide
    • the governance system would be more complex then it is now
    • grant amounts would be dynamic with respect to changing market conditions

I believe this would have helped with many issues we’re having.
And would have made the whole code base less complex :joy:.


Changing Tier Parameters

From the technical side, with the next Astar upgrade, we’ll be able to change tier params via a referendum, as Maarten already described. However, the aim should not be to just reduce thresholds, beef up rewards, etc. This will bring more selling pressure, and regular token holder isn’t likely to benefit.

With that being said, some things to keep in mind when changing params:

  • max number of tiers is 4, this cannot be increased without runtime upgrade
  • tiers can be eliminated by setting threshold to 100% TVL and percentage of assigned slots to 0%
    • convenient if we decide to reduce number of tiers
  • there are 10 ranks within the tier, this cannot be changed without runtime upgrade (check official docs for explanation what a rank is)
  • it is possible to “almost eliminate” tiers completely if tier thresholds & rewards are set in such a way that next tier has twice the threshold & reward as the previous one (with how things have been going, this will probably be my suggestion)

Anyways, just some thoughts (not stance or opinion of the Astar Foundation).

6 Likes