LevelTwo.sol
is incorrectly implemented not UUPS-aware, this means that when upgradeToAndCall(newImplementation)
is called, it fails to actually upgrade the contract.
LevelTwo.sol
is not aware that it is UUPSUpgradeable and therefore when upgradeToAndCall()
is called the function will revert with ERC1967InvalidImplementation
.
This breaks the whole point of having an upgradeable contract and will cause the contract to be stuck in its `LevelOne.sol` forever.
Manual review
The system doesn't implement UUPS properly.
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.