**Root + Impact **
function _setFinallizedVaultBalance() internal returns (uint256) {
if (block.timestamp <= eventStartDate) {
revert eventNotStarted();
}
finalizedVaultAsset = IERC20(asset()).balanceOf(address(this));
}
Normal Behaviour: Vault finalization should only occur after the events ends.
Issue: The function only checks block.timestamp > eventStartDateand not eventEndDate
If called too early (eg. Through SetWinner()and finalisation captures incomplete funds or incorrect balances.
Likelihood:
Low - function is internal but callable indirectly by setWinner()
Can finalise vault prematurely if logic order is mishandled.
Impact:
High - Vault finalises before event truly ends.
Winners may receive incomplete prize pool
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.