Skip to content

Configure L1BeHYPEOAppStaker for Optimism route#27

Open
jtfirek wants to merge 4 commits into
masterfrom
jacob/behype-staking-op-l1-config
Open

Configure L1BeHYPEOAppStaker for Optimism route#27
jtfirek wants to merge 4 commits into
masterfrom
jacob/behype-staking-op-l1-config

Conversation

@jtfirek
Copy link
Copy Markdown
Contributor

@jtfirek jtfirek commented May 7, 2026

Summary

  • Adds script/oapp/ConfigureL1OAppStakerForOP.s.sol: a Gnosis Safe transaction bundle script for the HyperEVM controller to configure the already-deployed L1BeHYPEOAppStaker for the Optimism route

What the bundle does

Executed by the HyperEVM controller Safe (0xf27128a5b064e8d97EDaa60D24bFa2FD1eeC26eB, the current owner of L1BeHYPEOAppStaker):

  1. L1BeHYPEOAppStaker.setPeer(OP_EID=30111, L2BeHYPEOAppStaker) — peers the L1 staker with the OP-side staker (same CREATE3 address as Scroll: 0x3f1Bdae959cEd680E434Fe201861E97976eA4A8F)
  2. endpoint.setConfig(send302) — configures [Nethermind, LayerZero] DVNs on the HyperEVM send lib for the OP route (30 confirmations)
  3. endpoint.setConfig(receive302) — same for the receive lib

Simulates on fork and asserts the peer is set correctly before writing the output JSON.


Note

Medium Risk
Medium risk because it adds/updates deployment & governance scripts that set cross-chain peers, LayerZero DVN configs, and transfer L2BeHYPEOAppStaker control to a controller address; mistakes here can break messaging routes or lock admin access.

Overview
Adds ConfigureL1OAppStakerForOP.s.sol, a Forge script that builds and fork-simulates a Gnosis Safe Transaction Builder bundle to configure the existing L1BeHYPEOAppStaker for the Optimism route (sets the OP peer and applies ULN DVN config on HyperEVM send302/receive302). The generated bundle is checked in as output/hyperevm-l1-staker-op-config-bundle.json.

Updates DeployAndConfigureOApps.s.sol so Optimism deployments also setDelegate and transferOwnership of L2BeHYPEOAppStaker to roles.optimismController, and adds OAppStakerOptimismVerification.s.sol to verify on-chain OP proxy bytecode matches local, and that owner/delegate/peer are correctly set.

Reviewed by Cursor Bugbot for commit e9964cc. Bugbot is set up for automated code reviews on this repo. Configure here.

jtfirek and others added 2 commits May 7, 2026 10:03
Generates a Gnosis Safe transaction bundle for the HyperEVM controller to
peer L1BeHYPEOAppStaker with the Optimism-side L2BeHYPEOAppStaker and
configure send/receive DVNs on the HyperEVM endpoint for the OP route.

Co-authored-by: Cursor <cursoragent@cursor.com>
Reads optimismController from production config and calls setDelegate +
transferOwnership at the end of the OP deploy branch, matching the
Scroll staker which is owned by scrollController.

Co-authored-by: Cursor <cursoragent@cursor.com>
@jtfirek jtfirek marked this pull request as ready for review May 7, 2026 17:02
jtfirek and others added 2 commits May 7, 2026 13:02
Follows the pattern of OFTOptimismVerification — verifies implementation
bytecode, owner, LZ delegate, and HyperEVM peer configuration.

Co-authored-by: Cursor <cursoragent@cursor.com>
Co-authored-by: Cursor <cursoragent@cursor.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant