The FIO Protocol is subject to the network effect, meaning the more participants adopt it, the more useful it is to all. To accelerate the adoption, on-chain incentives for integrators in the form of TPID rewards and New User Bounties, as well as for block producers in the form of rewards and reserves are built into the FIO Chain. Currently, there are no incentives for token holders. Yet early token holders add value to the network by securing it and helping it grow and therefore should be incentivized.
This initiative proposes an on-chain staking functionality, which awards user Staking Rewards for taking an active role in the FIO Protocol governance.
Who is the Customer?
FIO Token holder.
What problem of the customer are we trying to solve?
No path for users to use their tokens to secure the network and earn more FIO.
Why is it important this problem is solved?
It will accelerate adoption of FIO Protocol and make FIO Protocol more secure.
What KPIs will you track to determine if you are solving this problem?
A wallet could build a simple UX without the complexity of voting, by simply saying “click here to stake” and behind the scenes the tokens would be proxied.
Rewards can be computed real-time based on current SRT balance and Rate of Exchange.
Staking for FIO Address
There has been a desire to find a path where a user can stake FIO Tokens to keep a FIO Address instead of paying annual fee.
One approach could be, using the above staking method, to add an option to specify a FIO Address when staking and if the staked amount is greater than 25 time the cost of FIO Address registration, the expiration date for the FIO Address is ignored until tokens are un-staked. The user would still have to buy transaction bundles or renew the FIO Address if they were actively using it the address.
Staking was previously considered in FIP-21, but that approach was abandoned for the following reasons:
Staking was tacked on to transfer locked tokens, which has been designed for a different use case and potentially created some usability issues, where users would not be able to stake multiple times at the same time from same account.
There were regulatory concerns as staking was not tied to voting.
Automatic rewards has a similar challenge to the one we ran into with Co-op:
We can give you a reward when you vote
We can give the proxy a reward when they vote
It's very hard to give a reward to all accounts which are proxying their tokens to a single proxy when that proxy votes. Imagine if 1M wallet users have their tokens autoproxied to a single account and now that account votes. The processing required to pay 1M users is huge and underlying data may be changing.
Stake via Send (send to proxy FIO Address)
Continue to think this is a bad approach. Intercepting a token transfer transaction is just scary and can lead to problems for users. A token send should send tokens and nothing else.
It may create unforeseen complexities, similar to when we wanted to treat FIP-6 lock accounts differently. For example using the "special" FIO Address as a as TPID and then claim reward send is initiated to this special address.
2021-07-30 Staking Committee Call
Activation time will be added to FIP. This will allow for better marketing of the staking program and allow more platforms to develop integration before Staking is activated on chain.
1M activation limit will be kept.
Staking was codes in a way that lets the Staking Rewards accrue before activation. It was decided this is beneficial to the program.
@Eric Butz will put together a security plan and present to Committee.