Skip to content Search Apps Documentation Source Content File Folder Download Copy Actions State String Boolean Number Struct Map Slice Pointer Function Closure Reference Nil Package Type Interface Unknown

Community realm. Read the code first. Community realm, deployed by its author. Read the code before you interact or send coins.

README.md

3.04 Kb · 53 lines

Timelock

⚠️ Experimental — generated with no human supervision by the daily MCP pipeline (Solidity→Gno port). Not audited. See r/moul/x/daily.


A simplified gno.land port of OpenZeppelin's TimelockController. Actions are scheduled with a block delay and can only be executed once the chain reaches the operation's ready height; before that they can be cancelled. It ports the core delay-enforcement idea idiomatically — block height (runtime.ChainHeight()) replaces block.number, panic replaces require, chain.Emit replaces events, and an avl.Tree replaces the Solidity mapping (role-based access control is omitted for simplicity).

Operations are terminal once executed or cancelled, and Render lists every operation with its live state (Pending / Ready / Executed / Cancelled) and the number of blocks remaining until it becomes ready.

Example calls

# Schedule an action to run 20 blocks from now; returns the operation id.
gnokey maketx call -pkgpath gno.land/r/nym-moultest123/x/daily/timelock/v0 \
  -func Schedule -args "upgrade contract" -args 20 ...

# Once ChainHeight() >= readyHeight, execute it.
gnokey maketx call -pkgpath gno.land/r/nym-moultest123/x/daily/timelock/v0 \
  -func Execute -args 1 ...

# Or cancel it beforehand.
gnokey maketx call -pkgpath gno.land/r/nym-moultest123/x/daily/timelock/v0 \
  -func Cancel -args 1 ...

View the queue by rendering the realm (gno.land/r/nym-moultest123/x/daily/timelock/v0).


Part of moul/gno-contracts — moul's versioned gno.land contracts. See the repository for the full catalog, build/test tooling, and usage.

On mainnet: deployment status transactions unique callers deployed revision

Dependency graph:

gno.land/r/nym-moultest123/x/daily/timelock/v0 dependency graph

🧪 Highly experimental — potentially vibe-coded. Not audited; may break, change, or be removed at any time. Do not use with anything of value. Full disclaimer: DISCLAIMER.