Upgradeable contract state variables are not set using the initialize function.
As per OZ’s docs upgradeable contract initialize
function work in place of constructor to assign values to state variable which is not followed in the contract of SmartVaultManagerV5
.
This initialize()
method is call in same txn of contract deployed or immediately called afterwards to set state variables as a security measure for upgradeable contracts.
State variables will remain un-initialise and all functions mainly the mint
function will remain useless till all values are assigned separately.
Oz’s Docs
The recommendation is made to initialise all state variables declare inside the SmartVaultManagerV5
contract inside the initialize
function.
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.