This app runs inside the BotSurf browser. Don't have it yet? Get the app or extension now!

Upgrade Timelock Scheduler

Security · All
0 installs · Verified BotGentz app
Launch App
Opens in BotSurf — nothing to install.
CategorySecurity
PlatformAll
Pricing Free
Installs0
Download BotSurf to use — free
No account needed for free apps. Once BotSurf is open, find this app in Apps from the + menu.

About this app

WHAT IT DOES

This tool schedules protocol upgrades in a timelock controller, introducing a delay before upgrades can be executed. It reads and displays upgrade proposal details (new implementation address, calldata, and proposer), timelock delay (waiting period), scheduled execution time, upgrade status (pending, eligible, scheduled, executed, or cancelled), scheduler balance, chain ID, upgrade history (number of past upgrades), and upgrade threshold (minimum number of schedulers required). Beyond read-only access, the tool lets you execute the five key actions: schedule an upgrade in the timelock, approve an upgrade scheduling (if required), batch schedule multiple upgrades in one transaction, claim scheduling confirmation, and cancel a pending scheduled upgrade.

HOW TO USE

Connect your wallet and select the network. Enter the timelock scheduler contract address, upgrade ID, new implementation address, optional calldata, delay (in seconds), and type "SCHEDULE" in the confirmation field. Click "Load State" to fetch the current implementation, proposer, upgrade status, timelock delay, scheduled time, eligibility, threshold, and upgrade history. Review the upgrade details and status. If you are eligible and have sufficient balance, click "Schedule Upgrade" to add the upgrade to the timelock. If the contract requires explicit approval, click "Approve" first. To schedule multiple upgrades at once, click "Batch Schedule." Click "Claim" to confirm a completed scheduling, or "Cancel" to cancel a pending scheduling. Each transaction shows confirmation and gas cost reporting.

TECHNICAL MECHANISM

The tool interacts with a timelock scheduler contract that manages upgrade proposals. The scheduleUpgrade() function adds an upgrade to the timelock with the specified delay, making it executable only after the delay has passed. The contract validates that the caller is eligible and that the upgrade is pending. The upgradeStatus() function returns the current state (0 = pending, 1 = eligible, 2 = scheduled, 3 = executed, 4 = cancelled). The schedulerThreshold() function returns the minimum number of schedulers required. Batch scheduling uses scheduleBatch() with arrays of upgrade IDs, implementations, calldata, and delays. The tool fetches upgrade history via upgradeHistory().

WHAT IT CANNOT SEE

Cannot verify that the upgrade implementation is secure or that the upgrade is necessary. Relies entirely on the timelock contract's verification and the destination chain's final state. Cannot detect if the implementation contains malicious code, if the upgrade will break the protocol, or if the scheduling is being performed by an unauthorized party.

PLEASE NOTE — EVM CHAINS ONLY

Supports Ethereum, Polygon, Optimism, Arbitrum, Base and similar EVM chains. The scheduler must implement newImplementation(), proposer(), upgradeStatus(), timelockDelay(), scheduledTime(), schedulerEligible(), schedulerThreshold(), scheduleUpgrade(), approveScheduling(), scheduleBatch(), claimScheduling(), cancelScheduling(), and upgradeHistory(). The tool is read-write: it signs transactions for scheduling, approval, batch scheduling, claiming, and cancellation. Always verify the contract address and implementation address before submitting. Scheduling requires explicit confirmation.

Similar Apps

Log in to BotGentz

Suggest an App

Tell us what you'd find useful — if we build it, we'll email you the moment it's ready.