Admin Operations

Kasu Admin operations: granting and revoking system roles, pausing the system, managing the KYC allowlist, and configuring fees, loyalty and interest rates.

All functions on this page require the Kasu Admin role (DEFAULT_ADMIN_ROLE).

Access Control#

FunctionContractDescription
grantRole(role, account)KasuControllerGrant a system-wide role to an address
revokeRole(role, account)KasuControllerRevoke a system-wide role from an address

System Pause#

FunctionContractDescription
pause()KasuControllerPause all Kasu system activity
unpause()KasuControllerResume all Kasu system activity

KYC / Allowlist Management#

FunctionContractDescription
allowUser(address)KasuAllowListManually allowlist an address (bypasses KYC)
disallowUser(address)KasuAllowListRemove an address from the allowlist
blockUser(address)KasuAllowListBlock an address (overrides allowlist and KYC)
unblockUser(address)KasuAllowListRemove an address from the blocklist

Fee Configuration#

FunctionContractDescription
setPerformanceFee(fee)SystemVariablesSet performance fee percentage. Uses FULL_PERCENT (100_00). Current: 10_00 (10%)
setFeeRates(ecosystemRate, protocolRate)SystemVariablesSet the ecosystem/protocol fee split. Must sum to FULL_PERCENT

Loyalty Configuration#

FunctionContractDescription
setLoyaltyThresholds(thresholds)SystemVariablesSet rKSU ratio thresholds for loyalty levels. Array of ascending values in FULL_PERCENT. Current: [1_00, 5_00] (1%, 5%)

Interest Rate Configuration#

FunctionContractDescription
setMaxTrancheInterestRate(rate)SystemVariablesSet maximum allowed tranche interest rate
setDefaultTrancheInterestChangeEpochDelay(delay)SystemVariablesSet the default epoch delay before interest rate changes take effect. Current: 4 epochs
updateTrancheInterestRateChangeEpochDelay(pool, delay)LendingPoolManagerOverride epoch delay for a specific lending pool

Junior Tranche Restriction#

FunctionContractDescription
setUserCanOnlyDepositToJuniorTrancheWhenHeHasRKSU(enabled)SystemVariablesWhen enabled, only users with rKSU can deposit into Junior tranches

KSU Locking Administration#

FunctionContractDescription
addLockPeriod(duration, lockMultiplier, bonusMultiplier)KSULockingAdd a new lock period with its rKSU and bonus multipliers
setKSULockBonus(bonusAddress)KSULockingSet the wallet supplying bonus KSU tokens
emergencyWithdraw()KSULockingForcibly unlock all users' KSU positions (safety mechanism)