Stock owners/authority cannot settle points leading to many protocol disfunctionalities.
DeliveryPalace.settleAskTaker()
was implemented to allow StockType.Ask
owners/authority to settle points but with the current implementations they cannot call it because of https://github.com/Cyfrin/2024-08-tadle/blob/04fd8634701697184a3f3a5558b41c109866e5f8/src/core/DeliveryPlace.sol#L360-L371
so StockType.Ask
owners are blocked from calling the function hence they can never settle their points and they always lose their collateral, and bid makers never get pointToken because StockType.Ask
owners cannot call the function so pointToken is never transferred.
DeliveryPalace.settleAskTaker()
is blocked from actual set of users that are supposed to use it.
Honest StockType.Ask
owners will always lose collateral
Bid makers will never get PointToken
Basically filling bid orders/offers is useless
Manual Review
Reimplement the function to allow StockType.Ask
owners to have a chance to settle points before seizing their collateral.
Valid high severity, when taker offers are created pointing to a `offer`, the relevant `stockInfoMap` offers are created with the owner of the offer aka `authority`, set as the creater of the offer, as seen [here](https://github.com/Cyfrin/2024-08-tadle/blob/04fd8634701697184a3f3a5558b41c109866e5f8/src/core/PreMarkets.sol#L245). Because of the wrong check within settleAskTaker, it will permanently DoS the final settlement functionality for taker offers for the maker that listed the original offer, essentially bricking the whole functionality of the market i.e. maker will always get refunded the original collateral, and takers will never be able to transact the original points put up by the maker. This occurs regardless of market mode.
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.