Challenge:
Curve metapools have a number of ways to interact with them, standardized through curve contract and interface architectures. Aside from removing liquidity at the respective metapool's ratio of underlying assets, one can withdraw specific balances of underlying assets when withdrawing their LP tokens (which are burnt ultimately).
PHOTWAPOracle.sol refreshes uint256 latestUSDPHOPrice everytime getPrice() is called assuming logical conditions are met. The price is based off of the PHO:FraxBP metapool. The metapool balances ratio are changed though when undergoing imbalanced LP token redemption through using curve functions like: remove_liquidity_imbalance() and remove_liquidity_one_coin().
Tasks for this issue include, but are not limited to:
Useful links to other contingency plans include:
Challenge:
Curve metapools have a number of ways to interact with them, standardized through curve contract and interface architectures. Aside from removing liquidity at the respective metapool's ratio of underlying assets, one can withdraw specific balances of underlying assets when withdrawing their LP tokens (which are burnt ultimately).
PHOTWAPOracle.solrefreshesuint256 latestUSDPHOPriceeverytimegetPrice()is called assuming logical conditions are met. The price is based off of thePHO:FraxBPmetapool. The metapool balances ratio are changed though when undergoingimbalancedLP token redemption through using curve functions like:remove_liquidity_imbalance()andremove_liquidity_one_coin().Tasks for this issue include, but are not limited to:
Useful links to other contingency plans include: