The protocol's liquidation mechanism actively discourages users from making partial repayments during defaults, worsening protocol liquidity risks & increasing bad debt.
When a user repays part of their debt during liquidation, the protocol retains both the partial repayment amount and all NFT collateral, leaving users with no benefit from their repayment efforts.
When users partially repay debt via `_repay()` but fail to fully clear it before liquidation finalization,the liquidation process unjustly confiscates both partial repayments and full collateral.
The root cause is:
No tracking of partial repayments (`user.scaledDebtBalance` reduction ≠ credit tracking)
finalizeLiquidation seizes collateral without refunding partial repayments.
Users suffer double financial loss:
Irrecoverable partial repayments
Full collateral seizure
Severity: High
Financial Harm: Direct asset loss to users
Systemic Effect: Discourages partial repayments → Increased bad debt
Protocol Reputation Risk: Erodes user trust in fair treatment
Users lose their partial repayment amounts with no compensation for the payment they made. All NFT collateral is forfeited regardless of owed amount.
Manual review
Implement a repayment credit system:
1. Track partial repayments in a `partialRepaymentCredits` mapping
2. Refund credits during liquidation finalization:
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.