Skip to main content

Singleton Architecture

Contract Architecture

The Tenor MarketManager contract follows a singleton design pattern, allowing all Tenor markets to be listed under a single contract instance. Despite being instantiated under the same contract, each market operates independently, ensuring that markets are isolated from each other.

Roles

The Market Manager contract implements a role-based access control system.

Market Manager Initializer

  • Initialize new markets
  • Initialize new pools of different maturities
  • Can be set to permissionless market creation (address(0))

Pauser

Emergency control role with ability to:

  • Pause the minting of new Fixed Tokens (withdrawFixed)

Owner

The owner sets the following roles:

  • Set Pauser
  • Set Rewards Recipient
  • Set Initializer