Rari-Capital / fuse-v1

Smart contracts for Fuse V1 by Rari Capital.
Other
3 stars 3 forks source link

Evaluate which contracts / files are to be deprecated #46

Open zerosnacks opened 2 years ago

zerosnacks commented 2 years ago

We should evaluate how we ought to go about deprecating deployed contracts. We need to make sure the contract in question has no roles, isn't an admin of any contract, and will definitely not be accidentally used / referenced in the future.

I suggest we create a deprecated directory to hold any contracts that are deprecated. If files merely serve as an example I suggest we put them in an examples directory with some documentation. If the file is part of the codebase but never deployed to mainnet we could evaluate whether to remove it from the codebase.

Once we have this sorted we should update the documentation to reflect the changes.

sriyantra commented 2 years ago
  • Contracts that were never deployed
  • Contracts that are unused and should be deprecated
  • Contracts that are deprecated
  • Contracts that serve as examples

We should evaluate how we ought to go about deprecating deployed contracts. We need to make sure the contract in question has no roles, isn't an admin of any contract, and will definitely not be accidentally used / referenced in the future.

I suggest we create a deprecated directory to hold any contracts that are deprecated. If files merely serve as an example I suggest we put them in an examples directory with some documentation. If the file is part of the codebase but never deployed to mainnet we could evaluate whether to remove it from the codebase.

Once we have this sorted we should update the documentation to reflect the changes.

Fuse safe liquidator can be primarily seen as backup liquidator that we use for niche assets that may have patterns such as unstaking before liquidating, in the event that our typical liquidators don't have ready made patterns. I think this would be good in an examples directory given the above options. As far as I can tell the live contract was only used a couple times in the past ~350 days

zerosnacks commented 2 years ago

Fuse safe liquidator can be primarily seen as backup liquidator that we use for niche assets that may have patterns such as unstaking before liquidating, in the event that our typical liquidators don't have ready made patterns. I think this would be good in an examples directory given the above options. As far as I can tell the live contract was only used a couple times in the past ~350 days

Clear, are there any other files you can think of that would be in a similar situation? Are we still supporting all the oracles in oracles and other liquidators?

Edit:

I did find https://github.com/Rari-Capital/RariSDK/blob/master/src/Fuse/addresses/mainnet.ts so I'll check there

zerosnacks commented 2 years ago

I went through all the files in external and did not find any unused files

zerosnacks commented 2 years ago

I did find https://github.com/Rari-Capital/RariSDK/blob/master/src/Fuse/addresses/mainnet.ts so I'll check there

@sriyantra

In oracles

Marked as unused / not deployed

Unknown (not listed in addresses)

sriyantra commented 2 years ago

I did find https://github.com/Rari-Capital/RariSDK/blob/master/src/Fuse/addresses/mainnet.ts so I'll check there

@sriyantra

In oracles

Marked as unused / not deployed

  • RecursivePriceOracle
  • AlphaHomoraV1PriceOracle
  • AlphaHomoraV2PriceOracle
  • SyntetixPriceOracle
  • BalancerLpTokenPriceOracle
  • Keep3rPriceOracle
  • Keep3rV2PriceOracle

Unknown (not listed in addresses)

  • WXBtrflyPriceOracle
  • WSSquidPriceOracle
  • TemplePriceOracle
  • StakedFodlPriceOracle
  • RgtTempPriceOracle
  • REthPriceOracle
  • GFloorPriceOracle

I still think all of these should remain where they are, all of the "unknown" are in use

zerosnacks commented 2 years ago
  • WXBtrflyPriceOracle
  • WSSquidPriceOracle
  • TemplePriceOracle
  • StakedFodlPriceOracle
  • RgtTempPriceOracle
  • REthPriceOracle
  • GFloorPriceOracle

I still think all of these should remain where they are, all of the "unknown" are in use

Clear, would it be a good idea that we would add these missing oracles to the list on https://github.com/Rari-Capital/RariSDK/blob/master/src/Fuse/addresses/mainnet.ts just to make sure we don't lose track of them?

I think other than that we can close this ticket as there are no actionable items that I can see.