L2TokenReceiver
contract doesn't have a mechanism to utilize its balance from withdrawn positions.
L2TokenReceiver
contract is meant to receive the bridged overPlus staked stETH
on L1, and utilizing them to farm yield by providing them to a wstETH
Uniswap pool.
This contract has three functions to interact with Uniswap:
increaseLiquidityCurrentRange
function that calls Uniswap NonfungiblePositionManager
contract to increase liquidity of the created positions.
swap
function that interacts with Uniswap SwapRouter
to swap contract tokens.
collectFees
function that interacts with Uniswap NonfungiblePositionManager
to close created positions.
But it was noticed that L2TokenReceiver
contract doesn't have any mechanism to utilize its tokens balance that's accumulated from the closed liquidity positions (by moving them from the contract to the entitled receipients).
This will render the contract inefficient as it will not be able to utilize the received yield from the created postions
Manual Review.
Add a function that enables the contract owner from making external calls, so that he can transfer its balanced to other parties to be utilizied instead of being stuck in the contract.
The contest is live. Earn rewards by submitting a finding.
This is your time to appeal against judgements on your submissions.
Appeals are being carefully reviewed by our judges.