REP-26: Chip Mechanism Upgrade

Motivation

Chips are obtained via staking $RSS3 to Nodes on the RSS3 Network. Each staking mints a number of Chips, calculated by the formula:

\frac{\text{staking amount}}{\text{current chip price}}

For staking a large amount of $RSS3, one can end up with hundreds or even thousands of Chips.

This design is not optimal and sometimes confusing, it has also created some technical hurdles when building towards the Production Mainnet. For example:

  1. Minting a large number of Chips in one transaction may exceed the block gas limit and cause the staking to fail.
  2. The Global Indexer (GI) may also be slow in indexing many minting events simultaneously.
  3. Since the Explorer relies on the GI for correctly displaying Chips, this will result in an unsatisfactory user experience (Where are my Chips???).

Proposed Upgrade

After extensive discussions with multiple contributors, I propose the following mechanism upgrade:

  1. Each staking mints only one Chip, regardless of how many $RSS3 are staked.
  2. Each Chip represents the value of the corresponding stake, and redemption is guaranteed (as always).

This means each Chip starts with the value of the original stake, rather than having a uniform price for all Chips of the same node. The Chip value fluctuates per epoch based on the underlying staking/public goods pool.

Example

Let’s look at some examples. Note that the scenarios are for illustration purposes only and their calculations may not reflect the actual pricing mechanism.

At Epoch 1

  • Node A has a Chip price of 500 $RSS3
  • Delegator X staked 10,000 $RSS3 and received 1 Chip, which can be redeemed at any time for 10,000 $RSS3. This is based on the ratio of the original stake to the Chip price (10,000:500, which is 20:1).

At Epoch 2

  • Node A’s Chip price increased to 600 $RSS3 due to various reasons (Network Rewards distributed to its Staking Pool, new stakings etc.)
  • Delegator X decided to redeem their Chip and received 600 * 20 = 12,000 $RSS3.
  • Meanwhile, Delegator Y joined, staked 6,000 $RSS3 and received 1 Chip, which carries a ratio of 10:1 (6,000:600).

At Epoch 3

  • Node A’s Chip price decreased to 500 $RSS3 due to various reasons (Chip redemption, slashing etc.)
  • Delegator Y decided to redeem their Chip and received 500 * 10 = 5,000 $RSS3.

Conclusion

It is important to know that post this upgrade:

  1. The calculations for all aspects are fundamentally unchanged. The upgrade aims to simplify how the stakes are represented by Chips and eliminate confusion caused by the large number of Chips.
  2. All Chips minted and owned by everyone will:
    1. Remain valid and redeemable when the Production Mainnet is live
    2. Continue to follow the current pricing mechanism
    3. Become mergeable (multiple Chips of the same node can be merged into one)

As a cherry on the cake, should this proposal gets accepted, one of the contributors has agreed to redesign the Chip NFT to reflect the new mechanism.

5 Likes

Yes please!

1 Like

Good! Why not have a try :+1:

1 Like

great improvement!

1 Like

I’m all for it!!!

1 Like

I think the proposal must also emphasize that it will not change the way existing Chips work.

1 Like

Absolutely, that’s an important point to clarify.

1 Like

This is more reasonable.

The REP draft has been prepared!

1 Like

Let’s do this!!! Makes perfect sense and so much easier for the stakers.

1 Like

The whitepaper needs to be updated to reflect the change.
Questions:

  1. Are we still taking a non-negative integer for the staking amount?
  2. Is the redemption period still set to 30 epochs?
1 Like

@Henry I assume the amount could be updated into a non-negative real number; meanwhile redemption period lgtm

2 Likes