KRONOSDocs
Security

Security architecture

The invariants Kronos is built around, each covered by a test.

InvariantEnforced inTest
Reserves ≥ $1 per KRONOSTreasury.deposit, mintRewardstest_mintRewardsBoundedByExcess
Bonds never lower backing per tokenTreasury.deposittest_depositCannotLowerBacking
Floor sales raise liquid backingTreasury.sellToFloortest_sellToFloorRaisesNav
Staking holds enough KRONOS for every sKRONOSKronosStakingtestFuzz_stakingSolvency
Hub supply + Σ bridgedOut = total wsKRONOS claimWsKronostest_homeToRemoteAndBack
Inbound credit ≤ bridgedOut for that routeWsKronos._credittest_forgedInboundCannotExceedBridgedSupply
Nothing leaves a Credit Account while it has debtWithdrawals, adapters, multicall value checktest_borrowedFundsCannotLeaveAccount
Value × weight ≥ debt and leverage ≤ 3× after every actionCreditManager._requireSolventtest_spendingBorrowedFundsIsBoundByWeight
Pool share price never drops on borrow or repayLendingPooltestFuzz_poolSharePriceNeverDropsOnBorrowRepay
Edit this page on GitHub