The onAfterSwap
function in the UpliftOnlyExample
contract collects swap fees into the contract's address but does not include any mechanism to transfer or utilize these fees. As a result, the accumulated fees become permanently stuck in the contract, rendering them inaccessible.
The function calculates hookFee
and sends part of it (adminFee
) to the QuantAMM admin address. The remaining portion (ownerFee
) is sent to the UpliftOnlyExample
contract itself. But currently there is no implementation within the contract to transfer or utilize the accumulated ownerFee
.
}
Swap fees meant for the contract owner or other beneficiaries are irrecoverable
Manual
Add a function that allows the contract owner or an authorized address to withdraw the accumulated fees. function
Likelihood: High, every swap. Impact: High, funds are stuck.
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.