Fast Khaki Raccoon
High
Early debond fee is set to be debond fee
+ 10% of amount
// Penalty = debond fee + 10%
uint256 _penaltyBps = _debondFee + _debondFee / 10;
uint256[] memory _penalizedAmounts = new uint256[](_lock.tokens.length);
However as we can see from the code snippet it's actually _debondFee
+ 10% of _debondFee
, or _debondFee * 11 / 10
.
debond fee is significantly less than prescribed in the comments, leading to a lower gain or the system and a lower punishment for the user
// Penalty = debond fee + 10%
uint256 _penaltyBps = _debondFee + _debondFee / 10;
uint256[] memory _penalizedAmounts = new uint256[](_lock.tokens.length);
No response
No response
- User withdraws early 100k
- debond fee is 10 DAI
- User pays 11 DAI, instead of 10 DAI + 10% of 100k and has his assets way earlier than normal
Users pay a significantly lower fee for early withdraw.
No response
Make sure the 10% is taken form the amounts, not the debond value.