Lack of two-step procedure for critical operations leaves them error-prone. Consider adding two step procedure (transfer and accept) on the critical functions.
The Ownable contract doesn't employ a two step transfer pattern which can be considerable valid issue when the admin or owner wrongly input a wrong address. When this happen, the contract would instantly effecting the protocol, as the owner is now renounced.
When wrong input is entered, the admin / owner will be renounced, any future changes such as changing configuration will not be available anymore.
Manual analysis
Recommend considering implementing a two step process where the owner or admin nominates an account and the nominated account needs to call an acceptOwnership() function for the transfer of ownership to fully succeed. This ensures the nominated EOA account is a valid and active account.
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.