Storage gaps are used by a convention for reserving storage slots in a base contract. This allows future versions of that contract to use up those slots without affecting the storage layout of child contracts. The __gap variable is missing from the MondrianWallet2 contract.
According to the covention it is useful to declare unused variables or the so-called storage gaps in base contracts that you may want to extend in the future, as a means of "reserving" those slots.
This can be done by adding the __gap unused variable to the beginning of teh contract, e.g. at Line 36 of MondrianWallet2.sol. The variable name __gap or a name starting with __gap_ must be used for the array so that OpenZeppelin Upgrades will recognize the gap variables.
The missing __gap will affect the storage layout of future child contracts. This is due to an unfollowed convention for implementation of upgradeable contracts.
Manual Review
Add the __gap variable at the beginning of the MondrianWallet2 contract. Look at the following code.
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.