Robinhood MainnetChain ID: 4663
Contract detail

SbrTimelock

SbrTimelock is a verified Robinhood Chain smart contract at 0xbfffbd17…cb1a4b60 with 2 indexed transactions.

Address type
Smart contract
Transactions
2
First indexed block
#28467612
Latest indexed block
#28468792
Emitted events
11
Verification
Verified
Compiler
v0.8.26+commit.8a97fa7a
Verification match
full
Creation transaction
0x1e18ad3d…ee59b915
Created at block
#28464913
Language
solidity
EVM version
paris
License
mit
Compiler optimization
Enabled · 200 runs
Related activity

Transactions

Verified contract

Contract source code

// SPDX-License-Identifier: MIT
pragma solidity 0.8.26;

import {TimelockController} from "@openzeppelin/contracts/governance/TimelockController.sol";

/**
 * @title SbrTimelock
 * @notice The account that governs every SBR contract.
 *
 * This is OpenZeppelin's audited `TimelockController` with no behaviour added.
 * A timelock is exactly the kind of security-critical primitive that should
 * not be hand-rolled, and the same goes for the multisig that drives it:
 * Gnosis Safe is already deployed on Robinhood Chain (singletons 1.3.0 and
 * 1.4.1, both proxy factories), so the intended wiring is a Safe as proposer
 * and this contract as the sole `governor` of the protocol contracts.
 *
 * What that buys, concretely: no single key can retune the fee split, install
 * a reserve route or publish a rewards root. Every such change is announced
 * on-chain and only becomes executable once `minDelay` has elapsed, which is
 * the window in which holders can read the proposed call and leave if they
 * dislike it.
 *
 * Deployment notes:
 *  - `proposers`: the Safe. `executors`: pass the zero address to let anyone
 *    execute once the delay has run, so a stalled Safe cannot freeze a change
 *    that already cleared its waiting period.
 *  - `admin`: pass the zero address. The contract self-administers, and any
 *    other value is a backdoor around the delay.
 */
contract SbrTimelock is TimelockController {
    constructor(uint256 minDelay, address[] memory proposers, address[] memory executors, address admin)
        TimelockController(minDelay, proposers, executors, admin)
    {}
}