πŸ¦‰
Minerva
  • πŸ¦‰Introduction
  • πŸ“šGeneral Resources
    • 🦊How to?
    • πŸ•ŠοΈMigration
    • πŸ“—Contracts
      • πŸ”Access Control
        • ⏰TimeLock
        • πŸ› οΈUpgradeability
        • πŸ›‘οΈFlash Loan Attack Mitigations
      • πŸ—οΈVaults
      • πŸ“¨Router
      • 🏷️Price Feeds
    • πŸ“™Audit
    • ⚠️Risks
    • πŸ›£οΈRoadmap
  • πŸ”΄Tokenomics
    • πŸ—ΊοΈOverview
    • βšͺMINE
    • 🟠allMINE
    • 🟣MLP
      • Buying / Selling MLP
      • MLP Price
      • Transferring Staked MLP
  • πŸ…Core Features
    • πŸ”„Trading
      • Swap
      • Query Available Amounts
      • Opening / Increasing a Position
      • Closing / Decreasing a Position
      • Position List
    • πŸ“ˆFees
    • πŸ’°Rewards
    • πŸ†Weekly Competition
    • πŸ«‚Referall
    • πŸ›οΈGovernance
  • πŸ“„Terms and Services
    • πŸ–‹οΈTerms of Use
Powered by GitBook
On this page
  1. General Resources
  2. Contracts
  3. Access Control

TimeLock

The Timelock works by requiring a 24 hour gap between when the full details of an action is signalled on-chain to when the action is executed.

PreviousAccess ControlNextUpgradeability

Last updated 2 years ago

An example flow would be:

  • Timelock.signalSetPriceFeed is called, this specifies the Vault address and the address of the new price feed

  • At least 24 hours must pass

  • Timelock.setPriceFeed can be called, this will update the Vault.priceFeed value

24 hours was selected as it helps to be able to respond quickly to any issues that may occur.

The Timelock contract is monitored by the team and can be monitored by anyone without coding by subscribing to the Timelock.SignalPendingAction event. This is doable using . The Timelock contracts can be found by checking the gov values of contracts. In the event of a malicious transaction being sent, it is possible for all funds in the pool to be compromised. To mitigate this, all actions which can impact user funds must pass through the signal, time gap, execute process mentioned above. If a malicious transactions is detected through the monitoring process or Bug Bounty, a multi-sig consisting of advisors and community members can be used to override the Timelock.admin value, this would prevent the action from being executed. This also applies for actions such as pausing trading when there was no need to, in this case, the admin can be replaced by the multi-sig and trading can be re-activated.

Note that the multi-sig can only override the admin value, it cannot bypass the time gap required for Timelock actions.

πŸ“š
πŸ“—
πŸ”
⏰
OpenZeppelin Sentinel