Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Layer leap #1764

Open
wants to merge 6 commits into
base: master
Choose a base branch
from
Open
Show file tree
Hide file tree
Changes from 2 commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Original file line number Diff line number Diff line change
@@ -0,0 +1,84 @@
---
title: 'Layer leap contracts'
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

is it Layer Leap or layer leap?

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Layer Leap

description: 'Learn to use Layer leap contracts.'
author: leerderek
sme: amarrazza
target_audience: 'Developers who want to implement Layer leap contracts on their Orbit chain'
sidebar_position: 1
---

import PublicPreviewBannerPartial from '../../partials/_public-preview-banner-partial.mdx';

<PublicPreviewBannerPartial />

## Single click bridging from L1 to L3 is now possible with layer leap
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I think we need a few sentences here to explain what layer leap is, why we built it, and how it is implemented.


- [ Main repository ](https://github.com/OffchainLabs/l1-l3-teleport-contracts)
- [ SDK support ](https://www.npmjs.com/package/@arbitrum/sdk/v/3.5.1-teleporter.0) (pre-release!)
- [ Request Feature ](https://github.com/OffchainLabs/arbitrum-token-bridge/issues/new?assignees=&labels=feat,triage&projects=&template=add-layerleap-request.yml&title=[feat])

Contract Addresses

| Contract | Address |
| --------------------- | ----------------------------------------------------------------------- |
| Arb One L1Teleporter | https://etherscan.io/address/0xCBd9c6e310D6AaDeF9F025f716284162F0158992 |
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Confirming that the addresses for Nova and Arb1 are indeed identical? If they are the same, then maybe we should add a italicized note/sentence that these are the same. Initial reaction from seeing this is that this is a typo

Also any reason why we have 2 rows instead of 1 if the addresses are the same?

| Arb Nova L1Teleporter | https://etherscan.io/address/0xCBd9c6e310D6AaDeF9F025f716284162F0158992 |

## Launch details

_Key timelines & announcements_
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

i think these sort of info should be much earlier in the page and more obvious. Perhaps a banner at the very top?


**Orbit Onboarding:** We are looking for interested Orbit L3s with ETH gas for immediate rollout **AND** Orbit L3s with custom gas tokens for future adoption in our next release.
anegg0 marked this conversation as resolved.
Show resolved Hide resolved

_Upcoming launches & future releases_

A future release of Layer Leap is not yet scheduled, but upcoming features including providing support for Orbit L3s with custom gas tokens.

## Value & user impact

**End-users:** Can now bridge `ETH` and `ERC-20`s from Ethereum to your Orbit L3 in a single click.
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Might be a good idea to explicitly state that only L3s that eventually settle back to Ethereum are supported. I presume that L3s on top of other L1 chains are not supported based on this sentence


- Bridging `ETH` requires one call on L1
- Bridging an `ERC-20` requires one approval and one call on L1

**Orbit L3s:** Can more seamlessly onboard `ETH` and `ERC-20`s from Ethereum mainnet.
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

how is this different from the end user value/impact?


_Which Orbit configurations can adopt this feature?_

**Any L3 Orbit Chains on top of an Arbitrum chain** **_with ETH gas fees_** can use Layer Leap.
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

might be worth stating that L3s with ETH gas can use it today and L3s with custom gas tokens is on our roadmap.


- Layer Leap contracts are currently only deployed for Arb One and Arb Nova, but contracts can be deployed for additional Arbitrum Layer-2s by Offchain Labs or your RaaS provider.
- The Layer 2 must be an Arbitrum chain due to the use of retryables.
- _Future support: Layer Leap will support Orbit chains with custom gas tokens in a future release_

## Implementation
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

In this section, i expected to read how layer leap works in a few sentences (max).


_How can Orbit chains adopt this feature?_

**UI Adoption:** Layer leap contracts can be integrated into your own bridge or added to your chain’s UI for the Arbitrum bridge (bridge.arbitrum.io)

### Arbitrum bridge UI: if you are already on the arbitrum bridge UI then you can sign up for layer leap adoption by using this [github template](https://github.com/offchainlabs/arbitrum-token-bridge/issues/new?assignees=&labels=feat%2ctriage&projects=&template=add-layerleap-request.yml&title=%5bfeat%5d%3a+enable+layer+leap+for+%3corbit+chain%3e).

- If you are not on the Arbitrum Bridge UI yet you can sign up by filling out this [GitHub Template](https://github.com/OffchainLabs/arbitrum-token-bridge/issues/new?assignees=&labels=feat%2Ctriage&projects=&template=add-orbit-chain-request.yml&title=%5Bfeat%5D%3A+), and then also fill out the template above.
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I think the order of operations here is confusing or the way it is presented is confusing. If there are steps/dependencies, it should be made a bit more obvious rather than having 1 instruction in the header and one in a bullet point below it.

- You can demo Layer Leap on the Arbitrum Bridge by bridging to [Rari](https://bridge.arbitrum.io/?destinationChain=rari-mainnet&sourceChain=ethereum) and [Proof of Play](https://bridge.arbitrum.io/?destinationChain=pop-apex&sourceChain=ethereum).
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Perhaps a demo of Layer Leap should be one of the 1st things a user sees/reads in this page.


### Custom bridge UI: if you want to integrate layer leap functionality into your custom bridge UI, read the [info page on the layer leap github](https://github.com/offchainlabs/l1-l3-teleport-contracts/blob/main/docs/info.md) to learn more.

_What chains are currently supported?_

Layer Leap requires an L1 teleporter contract for each L2 chain. `L1Teleporter` contracts are deployed on Ethereum L1 for Arb One and Arb Nova.

| Contract | Address |
| --------------------- | ----------------------------------------------------------------------- |
| Arb One L1Teleporter | https://etherscan.io/address/0xCBd9c6e310D6AaDeF9F025f716284162F0158992 |
| Arb Nova L1Teleporter | https://etherscan.io/address/0xCBd9c6e310D6AaDeF9F025f716284162F0158992 |

For non Arbitrum One L3s:

- To enable Layer Leap for your Layer 3 you can follow the Deployment Procedure defined [here](https://github.com/OffchainLabs/l1-l3-teleport-contracts/blob/main/docs/info.md). Before self deploying, let Offchain Labs know about your request!
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

What about for L3s on Nova? It's not clear to me without reading a bit more that a new contract deployment is what is required for L3s on Arb1 and Nova.

Also how does someone contact offchain labs here? We should add a contact link/form.


_Implementation requirements for RaaSes?_
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This probably be its own section since the entire page so far has been aimed at orbit chain owners


Sending tokens from L2 to L3 relies on creation of a retryable. If you are supporting Layer Leap for your Orbit chains it’s highly recommended to be running the Retryables Monitoring tool: https://github.com/OffchainLabs/arb-retryables-monitoring. This will allow you to track and redeem any failed retryables
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Would probably prefer to see this hyperlinked. Also when we talk about retryables, we should refer to https://docs.arbitrum.io/how-arbitrum-works/arbos/l1-l2-messaging#retryable-tickets


_What configuration options or parameter changes should I consider?_
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This feels incomplete and I'd argue that, even if it were complete, this info should be available before we give the user a way to adopt it

5 changes: 5 additions & 0 deletions website/sidebars.js
Original file line number Diff line number Diff line change
Expand Up @@ -150,6 +150,11 @@ const sidebars = {
label: 'ETH bridging',
id: 'build-decentralized-apps/token-bridging/token-bridge-ether',
},
{
type: 'doc',
label: 'Layer leap',
id: 'build-decentralized-apps/token-bridging/layer-leap',
},
{
type: 'doc',
label: 'ERC-20 token bridging',
Expand Down