The function to upgrade the system graduateAndUpgrade
does not check if the session (sessionEnd
) is terminated.
As a result, the principal can perform an upgrade even if the session is not finished
As a result, the following specification is not respected
System upgrade cannot take place unless school's sessionEnd
has reached
Foundry / static analysis
Revert in the function `graduateAndUpgrade
if block.timestamp is < sessionEnd
`graduateAndUpgrade()` can be called successfully even when the school session has not ended
`graduateAndUpgrade()` can be called successfully even when the school session has not ended
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.