diff --git a/contracts/docs/plantuml/oethContracts.png b/contracts/docs/plantuml/oethContracts.png index db3e35d8bf..a3745866b2 100644 Binary files a/contracts/docs/plantuml/oethContracts.png and b/contracts/docs/plantuml/oethContracts.png differ diff --git a/contracts/docs/plantuml/oethContracts.puml b/contracts/docs/plantuml/oethContracts.puml index 18f74495f9..29428c3f3e 100644 --- a/contracts/docs/plantuml/oethContracts.puml +++ b/contracts/docs/plantuml/oethContracts.puml @@ -1,79 +1,72 @@ @startuml +!$originColor = DeepSkyBlue +' !$originColor = WhiteSmoke +!$newColor = LightGreen +!$changedColor = Orange +!$thirdPartyColor = WhiteSmoke + +legend +blue - existing +' green - new +' orange - changed +white - 3rd Party +end legend + title "Origin Ether Contract Dependencies" -object "OETHZapper" as zap <> #DeepSkyBlue { - assets: ETH, sfrxETH +object "OETHZapper" as zap <> #$originColor { + assets: ETH } -object "OETHDripper" as drip <><> #DeepSkyBlue { +object "OETHDripper" as drip <><> #$originColor { asset: WETH } -object "OETHVaultValueChecker" as checker <> #DeepSkyBlue { +object "OETHVaultValueChecker" as checker <> #$originColor { } -object "WOETH" as woeth <><> #DeepSkyBlue { +object "WOETH" as woeth <><> #$originColor { asset: OETH symbol: WOETH name: Wrapped OETH } -object "OETH" as oeth <><> #DeepSkyBlue { +object "OETH" as oeth <><> #$originColor { symbol: OETH name: Origin Ether } -object "OETH Vault" as oethv <><> #DeepSkyBlue { -assets: - WETH - frxETH - stETH - rETH -} - -object "Swapper1InchV5" as swap <> #DeepSkyBlue { - asset: any +object "OETH Vault" as oethv <><> #$originColor { +asset: WETH } -object "OETHHarvester" as harv <><> #DeepSkyBlue { - rewards: CRV, CVX, BAL, AURA +object "OETHHarvester" as harv <><> #$originColor { + rewards: CRV, CVX } ' Strategies -object "FraxETHStrategy" as frxethstrat <><> #DeepSkyBlue { - asset: frxETH, WETH - vault: sfrxETH -} -object "ConvexEthMetaStrategy" as cvxStrat <><> #DeepSkyBlue { +object "ConvexEthMetaStrategy" as cvxStrat <><> #$originColor { asset: WETH Curve metapool: OETHCRV-f Convex pool: cvxOETHCRV-f Rewards: CRV, CVX } -object "MorphoAaveStrategy" as morphAaveStrat <><> #DeepSkyBlue { - asset: WETH - Aave token: aWETH -} -object "BalancerMetaPoolStrategy" as balancerStrat <><> #DeepSkyBlue { - asset: rETH, WETH - Balancer Pool Token: B-rETH-STABLE - Rewards: BAL, AURA +object "NativeStakingStrategy" as nativeStrat <><> #$originColor { + assets: WETH, ETH + Rewards: ETH, SSV } -' Oracle -object "OETHOracleRouter" as oracle <> #DeepSkyBlue { -pairs: - frxETH/ETH - stETH/ETH - rETH/ETH - CRV/ETH - CVX/ETH +object "FeeAccumulator" as feeAcc <><> #$originColor { + assets: ETH } -' object "EACAggregatorProxy" as chain <> { -' prices: CVX/ETH, CRV/ETH,\nrETH/ETH, stETH/ETH, frxETH/ETH,\nWETH/ETH +' ' Oracle +' object "OETHOracleRouter" as oracle <> #$originColor { +' pairs: +' CRV/ETH +' CVX/ETH ' } ' ' SushiSwap @@ -81,70 +74,43 @@ pairs: ' pairs: CRV/ETH, CVX/ETH ' } -' ' Curve -' object "Gauge" as gauge <> { -' asset: OETHCRV-f -' symbol: OETHCRV-f-gauge -' name: Curve.fi OETHCRV-f Gauge Deposit -' } -' object "StableSwap" as crvPool <> { -' assets: [ETH, OETH] -' symbol: OETHCRV-f -' name: Curve.fi Factory Pool: OETH -' } -' ' Convex -' ' object "Booster" as cvxBoost <> { -' ' } -' object "BaseRewardPool" as cvxPool <> { -' } +' Curve +object "Gauge" as gauge <> { + asset: OETHCRV-f + symbol: OETHCRV-f-gauge + name: Curve.fi OETHCRV-f Gauge Deposit +} +object "StableSwap" as crvPool <> { + assets: [ETH, OETH] + symbol: OETHCRV-f + name: Curve.fi Factory Pool: OETH +} +' Convex +object "Booster" as cvxBoost <> { +} +object "BaseRewardPool" as cvxPool <> { +} ' object "DepositToken" as cvxPoolLp <> { ' symbol: cvxOUSD3CRV-f ' name: Origin Dollar Convex Deposit ' } -' ' Aave Morpho -' object "Morpho\nAave V2" as morphoV2 <> { -' } -' object "Morpho\nLens" as morphoLens <> { -' } - -' object "aWETH" as aweth <> { -' symbol: aWETH -' name: Aave interest bearing WETH -' } -' object "variableDebtWETH" as vdweth <> { -' symbol: variableDebtWETH -' name: Aave variable debt bearing WETH -' } - -' ' Assets +' SSV +object "SSV Network" as ssvNet <> #$thirdPartyColor { +assets: ETH, SSV +} -' object "sfrxETH" as sfrxeth <> { -' asset: frxETH -' symbol: sfrxETH -' name: Staked Frax Ether -' } +object "Deposit" as bDep <> #$thirdPartyColor { +assets: ETH +} -' object "frxETH" as frxeth <> { -' symbol: frxETH -' name: Frax Ether -' } +' ' Assets ' object "WETH9" as weth <> { ' symbol: WETH ' name: Wrapped Ether ' } -' object "RocketTokenRETH" as reth <> { -' symbol: rETH -' name: Rocket Pool ETH -' } - -' object "Lido" as steth <><> { -' symbol: stETH -' name: Liquid staked Ether 2.0 -' } - ' ' Rewards ' object "ConvexToken" as cvx <> { ' symbol: CVX @@ -158,8 +124,6 @@ pairs: zap ..> oeth zap ..> oethv -' zap ....> sfrxeth -' zap .....> frxeth ' zap .....> weth ' drip .....> weth @@ -176,51 +140,35 @@ drip <.. harv woeth ..> oeth oeth <.> oethv -oethv ..> oracle -oethv .> swap +' oethv ..> oracle ' oracle ...> chain -' Staked FRAX ETH Strategy -oethv ...> frxethstrat -' frxethstrat ..> sfrxeth - ' Convex ETH Metapool Strategy harv <..> cvxStrat oethv <...> cvxStrat oeth <... cvxStrat -' cvxStrat ..> crvPool +harv <..> nativeStrat +oethv <...> nativeStrat +nativeStrat <.> feeAcc +nativeStrat ..> ssvNet +nativeStrat ..> bDep + +cvxStrat ..> crvPool ' cvxStrat ..> cvxPool ' cvxStrat ...> weth ' cvxStrat ...> cvx ' cvxStrat ...> crv ' cvxPool ..> cvxPoolLp ' cvxPool ..> crv -' cvxPool .> gauge -' gauge .> crvPool -' oeth <... crvPool - -' Morpho Aave Strategy -oethv <...> morphAaveStrat -oeth <... morphAaveStrat -' morphAaveStrat ..> morphoV2 -' morphAaveStrat ..> morphoLens -' morphoLens .> morphoV2 -' morphoV2 ..> aweth -' morphoV2 ..> vdweth - -' Balancer Strategy -oethv <...> balancerStrat -oeth <... balancerStrat -harv <..> balancerStrat +gauge <. cvxPool +crvPool <.. gauge +oeth <... crvPool +cvxStrat ..> cvxBoost +cvxBoost ..> cvxPool ' ' Vault to Assets -' oethv .....> frxeth -' oethv .....> weth -' oethv .....> reth -' oethv .....> steth - -' sfrxeth ..> frxeth +' oethv ....> weth @enduml \ No newline at end of file