Giter Club home page Giter Club logo

contracts's People

Contributors

0knxwledge avatar chimera-defi avatar sharedstake-dev avatar sharedstake-main avatar steao avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar

contracts's Issues

Gcoinz

We can do it together team work makes it happen???

[Bounty] Create a sett style auto-compounding LP token vault

We want to move from geysers to Sett style vaults for our rewards, based on yearn vaults.

We want this sett vault to be useable for LP providers for SGT ETH.
It should have an accompanying strategy that allows it to auto-compound earnings in SGT by providing them as liquidity to uniswap, and selling any required to create the ETH side.

Should have documentation for functionality and deployment.
Should be tested on a testnet. We can send you SGT to test with on goerli.

Bonus high value requirement:

  • Allow users to choose a lockup period for their principal.
  • Allow reward rate modification based on the lockup period.
  • Allow locked user funds to be used for voting either via a voter proxy contract or functionality in the contract. Or in the worst case a vote-escrow derivative ERC20 as used by CRV.
    This time-locked vote-escrow mechanism is up for debate in terms of implementation details and how it should ideally function. We are open to ideas. .

blacklisting wallet address of hacker

There are known instances of hackers stealing veth2 funds from user wallet. One of which transferred the stolen funds to this wallet address. It does not seem like the hacker will be able to sell the veth2 due to liquidity problems and might even be safe until withdrawals open.

Could we implement a withdrawal blacklist for hackers/scammers such as this, then perhaps recover the funds to the original owner if the hacker does not sell the veth2?

https://etherscan.io/address/0xb41e08356ceb25cb83bfbba56b6fabd6950f2cd7#tokentxns

v2 minter contract updates

  • Add more events for every function such as depositing, withdrawing, admin operations and validator creations.
  • Implement a variable for the built-in exit pool that keeps track of what 10% means: increases on deposit, decreases on withdrawal. Will not change on Validator Deploys. Be careful about the admin-fee here.
  • Implement a function for Multiple Validator deployments, simply, with an array.
  • Validator deploys should be done by using the funds except built-in pool, revert when the inputted array's lenght is more than allowed.
  • Send the admin fee when a validator deployed. Send as a whole when multiple validators are deployed, not one-by-one. Keep the withdrawAdminFee function just in-case, not planned to be used outside of the contract.

[Minter] Add solo staking

Users should be able to use our contract for solo staking.
To start we would require users to have the following:

  • 32 ETH
  • 1000 SGT bonded and timelocked in a way that admins can unlock it when the users exit their validators or slash it if the user acts in a nefarious way.

For this we will need to upgrade the send2eth2 function in the minter to use AccessControl over having a single owner.

For a simplified implementation, the SGT bonded user should be able to call the function directly, resulting in a deposit function call which returns 32 vETH2 to them in exchange for 32.1 ETH.

The solo staker can then use their vETH2 to earn profits at a higher APY in our ecosystem while waiting for ETH2 rewards to be unlocked via a chain merge or other mechanism the EF comes up with.

This way the solo staker holds onto both their private keys for withdrawals and the validator.

The solo staker will be responsible for running their own validator to start with and entering the correct public keys for the call registering the validator.

Multisend a ERC20 advertising us to whales

inspired by this: https://etherscan.io/tx/0xb19d20b422df26b50775358f64234e8d45d6d96befddfa8cd77ceefa568eb9fb

Mushrooms finance did a multisend to a targeted group of power-defi users with a one-off erc20 titled "try mushrooms finance".

This is great directed marketing.

We should give this a shot.

You can most likely get the user data from the linked tx.

Additionally it might be viable to fork, deploy and reuse the multisend contract ethglobal uses to return user funds:
https://etherscan.io/address/0x941f40c2955ee09ba638409f67ef27c531fc055c#code

[Voting] Create a voter proxy to allow people to vote with locked SGT

Requirements:
Create a voter proxy to allow people to vote with locked SGT

  • Should fallback gracefully if pools/contracts do not exist
  • Should inherit Ownable or some transferrable ownership ability from openzeppelin
  • Should allow the owner to add new pools/contract addresses i.e. if a sushiswap pool is created later, or sett vaults or staking geyser addresses change, the admin should be able to change or add them
  • Should support sushi swap pools
  • Should support uniswap pools
  • Should support 1inch pools
  • Should support sett style vaults
  • Should support current staking geysers (balanceOf(account) call)
  • Should use SafeMath from openzeppelin for add/sub/mult

References:

[AAVE] Finish aave long/short ETH contract and integrate with shared stake deposit contract

There is a WIP AAVE long/short ETH deposit strategy contract here.

This needs some more thought to figure out the best credit delegation strategy. I.e. from contract to user or vice versa? Or both?

Also needs to be fixed up, and tested on kovan where AAVE exists but sharedstake doesn't.
Needs to be able to open a position on AAVE using ETH or stablecoins, on behalf of itself and the user. Needs to be able to credit delegate remaining funds back to the user, or to the contract if the CDP is opened on behalf of the user.

Needs to be able to withdraw ETH or stables from the CDP.
Exchange to ETH using uniswap if borrowing stables.
And finally deposit the ETH to the sharedStake deposit contract and return accumulated vETH2 back to the user.

[Bounty] This is eligible for a bounty payout

Staking for rewards with timelock

Would be nice to have flexible reward rates based on a timelock duration, e.g. like the code from the cream timelock rewards contracts here:
#14

This would ease sell pressure off SGT while allowing users to gain larger rewards for longer timelocked LP tokens.

Reviewing Projects

Its a LP that's created to support the project before it commences activity or/and trading.

Certain rules are to be applied here.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.