The contract inherits Ownable from OpenZeppelin, which includes the renounceOwnership() function. This function allows the owner to set the owner to address(0).
Since proposeTransaction is restricted to onlyOwner (as per Finding M-1), calling renounceOwnership() results in a state where no new transactions can ever be proposed. The protocol can continue to confirm/execute existing proposals, but is effectively dead for any new activity.
This is particularly dangerous as renounceOwnership is often used in decentralization roadmaps, but here it leads to a denial of service.
Likelihood: medium (Owner must call it).
Impact: High (Permanent DoS of new proposals).
Owner calls renounceOwnership().
Owner tries proposeTransaction(...) -> Reverts.
Signers try proposeTransaction(...) -> Reverts.
Protocol is bricked.
Override renounceOwnership to revert or disable it.
OR (Preferred) Allow Signers to propose transactions (Fix M-1).
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.