Pool Configuration
All pool configuration functions can only be called outside of clearing periods unless otherwise noted.
Tranche Ratios
Role: ROLE_POOL_MANAGER Function: LendingPoolManager.updateTrancheDesiredRatios()
Updates the ratio between tranches. All ratios must sum to FULL_PERCENT (100_00 = 100%).
Values use 2 decimal places: 10.12% = 1012
Example: A pool with 20% Junior, 10% Mezzanine, 70% Senior: [2000, 1000, 7000]
Interest Rates
Role: ROLE_POOL_MANAGER Function: LendingPoolManager.updateTrancheInterestRate()
Updates a tranche's per-epoch interest rate. Changes take effect after a configurable epoch delay (default: 4 epochs). The Kasu Admin can override this delay.
Interest rates use 18-decimal precision (1e18 = 100%):
100000000000000000
10% per epoch
10000000000000000
1% per epoch
1000000000000000
0.1% per epoch
Draw Amount
Role: ROLE_POOL_MANAGER Function: LendingPoolManager.updateDesiredDrawAmount()
Sets the total desired loan amount. This represents the total owed amount including previously drawn capital and accrued interest.
If insufficient deposits are available, clearing will revert. The Pool Clearing Manager must override the draw amount within the available range.
Draw Recipient
Role: ROLE_POOL_ADMIN Function: LendingPoolManager.updateDrawRecipient()
Sets the address that receives drawn USDC during clearing Step 5.
Excess Liquidity
Role: ROLE_POOL_MANAGER
updateTargetExcessLiquidityPercentage()
Target excess funds kept in the pool (must be >= minimum)
updateMinimumExcessLiquidityPercentage()
Minimum excess funds that must remain (must be <= target)
Both are percentages of the owed amount using FULL_PERCENT (100_00):
10
0.1%
100
1%
1000
10%
The minimum excess liquidity percentage prevents LPs from withdrawing below a safety threshold. It does not affect the draw amount.
Deposit Limits
Role: ROLE_POOL_MANAGER
updateMinimumDepositAmount()
Minimum USDC per deposit request per tranche
updateMaximumDepositAmount()
Maximum USDC per deposit request per tranche
Force Withdrawals
Role: ROLE_POOL_MANAGER
batchForceWithdrawals()
Highest LP priority
Creates withdrawal requests that are processed first during the next clearing
forceImmediateWithdrawal()
Immediate
Withdraws LP funds immediately from excess funds, bypassing clearing
Before a force withdrawal, ensure the LP does not have conflicting pending requests. Use forceCancelWithdrawalRequest() or forceCancelDepositRequest() to clear them.
Last updated