The veRAACToken
contract implements a minter role setting functionality that is never utilized within the contract, leading to unnecessary gas costs .
The contract defines a minter address state variable and provides a setter function setMinter
with owner access and then emits events for minter changes, but never checks or uses the minter role for any operations
All minting operations are handled directly within core functions :
Example from lock()
_mint(msg.sender, newPower);
Unnecessary storage slot for minter address
Gas costs for setting and updating minter
Manual review
Remove the unused functionality.
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.