Protocol Contracts
Protocol contracts are evergreen contracts at the protocol level that govern and apply across all Term Repos. The following contracts belong to this class and handle protocol level authentication, security controls, event logging and manage centralized price feeds.
Contract | Description and Key Functions |
---|---|
Initializes a Term Repo | |
| |
setupAuction: Validates Term Auction contracts against the Term Controller contract, emits initialization events during deployment and pairs Term Auction contracts with Protocol Contracts and Term Repo contracts | |
pauseDeploying: Triggers revert when trying to call setupTerm or setupAuction | |
unpauseDeploying: Resumes Term Initializer for regular deployment | |
Designates the Protocol treasury and reserve wallet address as well as maintain a ledger of validly deployed Protocol contracts | |
getTreasuryAddress: External view function that returns the Treasury wallet address | |
getProtocolReserveAddress: External view function that returns the Protocol Reserve allet address | |
isTermDeployed: External view function that returns a boolean indicating whether a given contract address was validly deployed by the Protocol | |
| |
| |
updateControllerAdminWallet: Updates or changes Controller Admin wallet | |
| |
unmarkTermDeployed: Removes a previously validated smart contract address from the Term Controller contract | |
A centralized price oracle contract that feeds pricing data to Term Repo contracts | |
| |
| |
| |
A centralized event emitter that records various important Protocol events to the blockchain | |
|
Last updated