User's deposited USD token for swap can be stuck.
When a user initiates multiple (or one) USD token swap requests by calling initiateSwap(), user transfers in some amount of USD tokens.
StabilityBranch::initiateSwap():
If the swap request has not been processed and has expired, user can call refundSwap() to get a refund, the refunded amount is deducted by a base fee which is a fixed amount.
StabilityBranch::refundSwap():
However, it's possible that base fee is incresed by owner and becomes larger than the user's deposited amount, as a result, the refund transaction will revert with underflow error, and the funds are stucked.
MarketMakingEngineConfigurationBranch::configureUsdTokenSwapConfig():
User's deposited USD token for swap is stuck, the protocol will not receive a fee.
Manual Review
If user's deposited amount is less than the base fee, distribute the deposited funds as a fee without refunding.
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.