Dispatch whitelisted call to set the EvmHost admin on all EVM chains and configure the Polkadot Hub slot duration

Summary

This referendum executes a single Utility.batch_all of 10 calls that:

  1. Sets the admin host parameter to 0xd15007f5ff5c8c5ccc77339a03a3ea60d1ece854 on the EvmHost of nine EVM chains.
  2. Records the Aura slot duration of Polkadot Hub (para id 1000) as 24 000 ms in the ISMP parachain consensus client.

Motivation

EvmHost admin. HostManager no longer carries a separate relayer key. Its admin is the only account allowed to deliver governance actions to the EvmHost, and the admin is rotated through a dedicated SetAdmin action. This proposal points every live EvmHost at the governance relayer so that subsequent Hyperbridge governance dispatches to those chains are accepted.

Polkadot Hub slot duration. Polkadot Hub does not run pallet-ismp, so it never deposits the timestamp digest that the parachain consensus client normally reads. For that chain the client derives block time from the Aura slot number in the header, multiplied by a stored slot duration. Without the value set, every Polkadot Hub state commitment fails with "Slot duration not configured".

The value must be the Aura slot duration, not the block time. Polkadot Hub produces 2-second blocks under elastic scaling, with three blocks per 6-second relay slot, but its Aura slot is 24 seconds. Its collator sets each block's timestamp to the start of the current Aura slot, and the runtime asserts the timestamp divided by 24 000 equals the slot. Storing 24 000 therefore reproduces Polkadot Hub's on-chain timestamp exactly. Storing 2000 would yield timestamps roughly twelve times too small.

Affected chains

Ethereum (1), Arbitrum One (42161), OP Mainnet (10), Base (8453), BNB Chain (56), Gnosis (100), Soneium (1868), Polygon (137), Polkadot Hub (420420419).

Calls

Calls 1 to 9: set admin, per chain

For each of the nine chains above:

  • HostExecutive.update_host_params(Evm(chain), { admin: 0xd15007f5ff5c8c5ccc77339a03a3ea60d1ece854 }). All other host parameters are left unchanged. The update is dispatched as an ISMP post request to the HostManager currently stored in host params, which applies it to the EvmHost on delivery.

Call 10: set Polkadot Hub slot duration

  • IsmpParachain.set_slot_duration(para_id: 1000, slot_duration: 24_000). Stores the value in the pallet's SlotDurations map. The consensus client reads it only for the Asset Hub para id.

Addresses

Role Address Chains
EvmHost admin 0xd15007f5ff5c8c5ccc77339a03a3ea60d1ece854 all nine

Explorer links: Ethereum, Arbitrum, Optimism, Base, BNB Chain, Gnosis, Soneium, Polygon, Polkadot Hub.

Execution and atomicity

The batch is batch_all, so if any call fails on Nexus the whole referendum reverts. The slot duration takes effect immediately on Nexus. The nine admin updates are delivered as ISMP post requests and take effect on each EvmHost once relayed. Each is routed through the HostManager currently registered for that chain, so the HostManager rotation referendum must have executed and been delivered before this one, or these updates will be sent to the outgoing manager.

Verification

Decode the preimage against the Nexus runtime: pallet 4 is Utility, 53 is HostExecutive, and 50 is IsmpParachain. Each of calls 1 to 9 carries Some(admin) and None for the other nine host parameter fields. Call 10 encodes para id 1000 as a little-endian u32 followed by 24 000 as a little-endian u64.

The 24 000 ms slot duration can be checked against SLOT_DURATION in the fellowship's asset-hub-polkadot/src/lib.rs, and the elastic scaling constants in system-parachains/constants/src/polkadot.rs.

Call data:

0x04022835010001000000000001d15007f5ff5c8c5ccc77339a03a3ea60d1ece8540000000000000000350100b1a40000000001d15007f5ff5c8c5ccc77339a03a3ea60d1ece85400000000000000003501000a000000000001d15007f5ff5c8c5ccc77339a03a3ea60d1ece854000000000000000035010005210000000001d15007f5ff5c8c5ccc77339a03a3ea60d1ece854000000000000000035010038000000000001d15007f5ff5c8c5ccc77339a03a3ea60d1ece854000000000000000035010064000000000001d15007f5ff5c8c5ccc77339a03a3ea60d1ece85400000000000000003501004c070000000001d15007f5ff5c8c5ccc77339a03a3ea60d1ece854000000000000000035010089000000000001d15007f5ff5c8c5ccc77339a03a3ea60d1ece8540000000000000000350100431b0f19000001d15007f5ff5c8c5ccc77339a03a3ea60d1ece85400000000000000003203e8030000c05d000000000000

One note for you, not the proposal. The motivation section describes the admin as the governance relayer based on the local commit f221e7fe. If the deployed HostManager on chain predates that change, the admin field still means the EvmHost admin in the older sense, and you may want to reword the first motivation paragraph accordingly.

Edited
Reply
Up
Share
Status
Decision1d
Confirmation
1hr
Attempts
1
Tally
100%Aye
50.0%Threshold
0%Nay
Aye
≈349.48MBRIDGE
Nay
0BRIDGE
  • 5.00%
  • 0.0%

    Threshold

  • 0.0%
Support
57.4%
≈349.48MBRIDGE
Issuance
≈609.08MBRIDGE
Votes
Nested
Flattened
Actions
Check how referenda works here.
Call
Metadata
Timeline6
Votes Bubble
Curves
Statistics
Comments

Status
Decision1d
Confirmation
1hr
Attempts
1
Tally
100%Aye
50.0%Threshold
0%Nay
Aye
≈349.48MBRIDGE
Nay
0BRIDGE
  • 5.00%
  • 0.0%

    Threshold

  • 0.0%
Support
57.4%
≈349.48MBRIDGE
Issuance
≈609.08MBRIDGE
Votes
Nested
Flattened
Actions
Check how referenda works here.