Jellyverse Docs
WebsiteApp
English
English
  • Overview
    • How to Connect to SEI
    • How to get SEI Devnet Funds
    • How to make your first Swap
  • Protocol Library
    • JellySwap
      • Liquidity Management
        • Swaps
      • Pools
        • Weighted Pools
        • Stable Pools
          • Composable Stable Pools
        • Setting up a Pool Configuration
      • Impermanent Loss
        • 50/50 Pools
        • 80/20 Pools
        • Multitoken Pools
      • Preminted JPT
      • Relayers
      • Smart Order Router (SOR)
    • JellyStake
      • Staking Chests
      • Voting power
    • jAssets by BLKSWN
      • Liquidation and the Stability Pool
      • Liquidation Logic
      • Recovery Mode
      • jUSD Redemption
      • Expected User Behaviors
      • Core Smart Contracts
      • PriceFeed and Oracle
      • Contract Ownership and Function Permissions
      • Keeping a sorted list of Vaults ordered by LACR
      • Supplying Hints to Vault operations
      • Gas compensation
      • The Stability Pool
      • Swap Pools
      • Protocol System Fees
      • Governance
      • Audits
  • Jellyverse Architecture
    • Governance
    • Rewards
    • Reward Distributor
    • Tokenomics
    • Whitepaper
    • Contract Addresses
  • Audit
  • Community
    • Socials
  • COMMUNITY PROTOCOLS
    • Introduction
Powered by GitBook
On this page
  1. Protocol Library
  2. jAssets by BLKSWN

Contract Ownership and Function Permissions

All core smart contracts in the jAssets protocol inherit from the OpenZeppelin Ownable.sol contract template. As a result, each contract has a single owning address, which is the deploying address. Contract ownership is renounced either upon deployment or immediately after its address setter has been called, connecting it to the rest of the core jAsset system. In some cases, ownership is transferred to the Jellyverse Governance contract for future adjustments. For more details, refer to the Governance section.

Several public and external functions include modifiers such as requireCallerIsTroveManager, requireCallerIsStoragePool, etc., ensuring that they can only be called by the respective permitted contract.

Last updated 9 months ago