Inside the MondrianWallet2::initialize function has the called of __UUPSUpgradeable_init function but it's not necessary more.
The MondrianWallet2::initialize will be calling unecessary functions, for example:
But in the lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/UUPSUpgradeable.sol we can see that the __UUPSUpgradeable_init function is empty:
The MondrianWallet2::initialize will be have unecessary code.
Solidity and Foundry
Add the following code to the test/ModrianWallet2Test.t.sol:
Run: forge test --zksync --system-mode=true --match-test testZkDontNeedCallUUPSUpgradeableInitFunction -vvv
Remove the __UUPSUpgradeable_init();:
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.