-
Notifications
You must be signed in to change notification settings - Fork 6
Open
Description
GoodDollar is a non-profit project, delivering digital basic income to tens of thousands of daily users in the form of the G$ token.
Currently the FuseStaking contract donates all earned rewards from staked Fuse. It uses the rewards to buyback G$s on Fuseswap and splits those G$s between the UBI Pool and a Community Pool
This bounty is about upgrading the FuseStaking contract with a feature that allows users to stake with G$ and also earn rewards pro-rata
There's another bounty here to Add this functionality to the wallet
Join https://t.me/GoodDollarBounties to learn more
Motivation
- We want to give G$ more utility
- Educate our citizens about savings, investment and DEFI
Details
- The current FustStaking (here:``) distributes the earnings to the UBI pool and a Community pool according to pre-defined ratio.
- add another ratio that will set how much out of the earnings will be allocated to reward the stakers
- use BaseShare.sol to add Staking token capabilities and pro-rata rewards
- add a method to set the different ratios. require that they add up to 100%
- Implement the Stakers pool functionality
- every day when collecting rewards update the amount that is kept for stakers
- when user stakes he should be able to specify if he wants to donate his rewards or not (0 or 100) (user forfeits his G$ rewards and they will go to the UBI/community pool according to their respective ratios
- Update stake method
- no msg.value try to collect G$s using transferFrom
- swap G$s to Fuse on fuseswap
- update user stakes/productivity in Fuse tokens. (Also keep a total of the original G$ amounts he staked)
- staking distributes pending rewards
- Update withdraw method
- allow user to specify how much to withdraw
- withdrawing distributes pending rewards
- update user stakes/productivity
- Protect against manipulation. Currently we dont convert Fuse to G$ if price impact is more than X%. this might not be enough if price is manipulated just before. (ie deposting lots of G$ but little Fuse).
- use price impact over uniswap TWAP or suggest a different protection method
Reactions are currently unavailable
Metadata
Metadata
Assignees
Labels
No labels