There is no check for all students have been reviewed 4 times before upgrading to LevelTwo
implementation in the LevelOne::graduateAndUpgrade
function.
With no check in graduateAndUpgrade
function leads to the possibility to upgrade to new implementaion before all students gets 4 reviews. This break a protocol invariant leading to not intended behavior of the contract.
Manual code review
Add a check in the graduateAndUpgrade
function:
All students are graduated when the graduation function is called as the cut-off criteria is not applied.
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.