Due to the absence of the whenNotPaused modifier on any functions within the PreMarktes and DeliveryPlace contracts, the Admin is unable to pause the markets, contradicting the intended functionality.
The Admin role has the priviledge to pause markets according to the project description:
Admin (Trust)
Pause all the markets
The PreMarktes and DeliveryPlace contracts inherit Rescuable, which provides the OZ pausable feature. Functions with the whenNotPaused modifier will be pausable.
However, the whenNotPaused modifier dose not apply to any function of the PreMarktes or DeliveryPlace contract, resulting in Admin cannot pause all the markets.
The inability of the Admin to pause all the markets, which is inconsistent with the project design, and cannot pause markets during emergencies or other situations requiring intervention.
vscode
Apply the whenNotPaused modifier to all functions within the PreMarktes and DeliveryPlace contracts that should be restricted during a paused state.
I believe this is informational and non-acceptable severity because: - A single pause on withdraw to be sufficient to pause the markets during times of emergencies, given that is the only function where collateral/point tokens/native ETH can be pulled from market transactions. - Every tadle market place can be switched offline by the admin via [`updateMarketPlaceStatus`](https://github.com/Cyfrin/2024-08-tadle/blob/04fd8634701697184a3f3a5558b41c109866e5f8/src/core/SystemConfig.sol#L160-L171) and is checked in market actions via [`checkMarketPlaceStatus`](https://github.com/Cyfrin/2024-08-tadle/blob/04fd8634701697184a3f3a5558b41c109866e5f8/src/libraries/MarketPlaceLibraries.sol#L54-L67) to be online. This prevents many major market actions including the creation, listing and settlement of offers.
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.