When a swap request expires, the refundSwap function refunds the USD amount net of the base fee. Thus, users incur the cost of gas for both initiating and refunding the swap, in addition to losing the base fee even though no swap service was rendered.
A simplified outline of the refund process:
Double Gas Expense: Users pay gas twice—once to initiate the swap and again to obtain a refund.
Loss of Funds: The base fee is forfeited despite no service being provided, reducing overall user funds and satisfaction.
Manual code review
Transaction cost analysis
Simulation tests
Refund Design Revision: Consider refunding the base fee if a swap is not fulfilled.
User Incentives: Explore compensatory mechanisms to cover gas costs incurred on refunds.
Clear Communication: Ensure UI and documentation clearly explain the fee structure to users.
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.