ethereum-optimism / design-docs

MIT License
26 stars 20 forks source link

interop: interoperable ether transfers design doc #146

Open tremarkley opened 3 weeks ago

tremarkley commented 3 weeks ago

Description

This PR introduces a design for simplifying ETH transfers between two interoperable L2 chains by reducing the process from four transactions to two. The new approach leverages the SuperchainWETH contract, which now includes two new functions: sendETH and relayETH.

This update streamlines L2-to-L2 ETH transfers, bypassing the need for separate wrapping and unwrapping steps. Notably, custom gas token chains are excluded from this simplification to maintain compatibility and reduce risk.

Additional context

Any feedback on optimizing sendETH and relayETH for further efficiency or insights into handling custom gas token chains in the future is welcome.

tremarkley commented 3 weeks ago

This stack of pull requests is managed by Graphite. Learn more about stacking.

tynes commented 1 week ago

Generally much more in favor of putting the logic in the SuperchainTokenBridge given that its the cross chain bridging contract. Generally seems intuitive to put it there and mirrors our current design where the StandardBridge has ERC20 + ETH functionality

See https://github.com/ethereum-optimism/design-docs/pull/146#issuecomment-2485139913

tynes commented 6 days ago

We agreed out of band that this functionality should live in the SuperchainWETH contract rather than the bridge or liquidity contracts

tynes commented 6 days ago

One consideration that should be thought through is sending ether to a remote chain that is custom gas token, the flow should not unwrap the weth on the other side

tremarkley commented 4 days ago

@tynes updated the design to handle sending ether to a remote chain that is custom gas token