The veRAACToken contract contains a dormant emergency unlock system that includes state variables, scheduling functions, and execution logic, but lacks any actual unlocking functionality. While the contract implements a complete two-step process for enabling emergency unlocks (scheduling scheduleEmergencyUnlock
and execution executeEmergencyUnlock
with time delay), the emergencyUnlockEnabled
state variable is never referenced or utilized in any other contract functions.
The contract implements emergency unlock functions that have no effect on the system:
Impact:
Admin cannot implement unlock functionality in critical situations
wastes gas and storage slot in the contract
Manual review
if the unlock mechanism is not needed remove unused code:
Remove these elements
bool public emergencyUnlockEnabled;
bytes32 private constant EMERGENCY_UNLOCK_ACTION
function scheduleEmergencyUnlock()
function executeEmergencyUnlock()
If emergency unlock is needed, implement complete 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.