zetachain

Prop 69: Disable the EVM staking, distribution, bank, governance and slashing precompiles

Remove the five EVM precompiles that expose Cosmos SDK modules to EVM contracts: staking (0x...0800), distribution (0x...0801), bank (0x...0804), governance (0x...0805) and slashing (0x...0806). Keep p256 (0x...0100) and bech32 (0x...0400).

Why

Proposal 68 approved migrating ZETA to Solana and winding down the ZetaChain L1. These precompiles let EVM contracts move and lock staked ZETA from inside contract code, which makes them the most complex path into staking and bank state. Turning them off for the rest of the chain's life reduces the attack surface during the wind-down and keeps staking state stable ahead of the migration snapshot.

What changes

This message replaces the x/vm parameters with the values on mainnet at height 19,788,279, changing only active_static_precompiles. From execution, any EVM call to the five addresses above reverts. EVM contracts and wallets can no longer delegate, undelegate, redelegate, withdraw rewards, vote, deposit, unjail or query bank balances through them.

What does not change

  • Native Cosmos transactions. Staking, rewards and governance keep working, including through hub.zetachain.com, which signs them as Cosmos transactions.
  • Existing delegations, unbondings and rewards, including any held by contracts. They stay in staking and distribution state, which the migration snapshot reads directly, so every holder is credited for them.
  • Standard EVM execution, the standard precompiles 0x01 to 0x0a, ZRC20 tokens, cross-chain transactions, and consensus.

This is reversible by a later parameter update. There is no plan to re-enable them before shutdown.

Voting

This is submitted as an expedited proposal: a 24-hour voting period, 40% quorum, more than 55% Yes to pass, and a 1,500 ZETA deposit. If it does not reach the expedited threshold, it converts to a standard proposal with a 72-hour voting period.

  • Yes: disable the five precompiles.
  • No: leave them enabled.
  • No with veto: the proposal is harmful or spam. If more than one third of votes, the deposit is burned.
  • Abstain: counts toward quorum without taking a side.