Tiny repayments may round to zero, failing to reduce debt effectively in the RAAC protocol.
In the lending logic, scaledAmount = amount.rayDiv(reserve.usageIndex)
could round to zero for very small repayment amounts, preventing the debt from being reduced.
This issue can result in users being unable to repay small amounts of debt, potentially leading to unnecessary liquidations or increased debt burdens.
Manual review
Introduce minimum repayment amounts or debt forgiveness thresholds to handle dust effectively.
The likelihood of super small debts is veeery low. The impact is also very low. I combined these two with the ability to borrow a small amount (but sufficient to not have this problem) then repaying in the next transaction to clear everything, and got to Informational.
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.