Core Contracts

Regnum Aurum Acquisition Corp
HardhatReal World AssetsNFT
77,280 USDC
View results
Submission Details
Severity: low
Valid

Incorrect state returned for proposal

Summary

In Governance.sol#L187 we can see that votes can be casted when block.timestamp <= proposal.endTime meaning the proposal is still active during endTime, but when checking the state function Governance.sol#L295 it returns the proposal state as active only when block.timestamp < proposal.endTime.

This means that there is an inconsistency between what the state and castVote functions consider a proposals state to be when block.timestamp == proposal.endTime.

Impact

Inconsistent proposal state across 2 functions.

Tools Used

Manual review.

Recommendations

The fix would go on the condition of state or castVote depending on what the developers consider to be correct.

Updates

Lead Judging Commences

inallhonesty Lead Judge 6 months ago
Submission Judgement Published
Validated
Assigned finding tags:

Governance::state and Governance::castVote use inconsistent time boundary checks, allowing votes at exactly proposal.endTime when state shows inactive

Support

FAQs

Can't find an answer? Chat with us on Discord, Twitter or Linkedin.