Skip to content

Commit

Permalink
Merge branch 'master' into dl/fs-773
Browse files Browse the repository at this point in the history
  • Loading branch information
douglance authored Oct 22, 2024
2 parents 3cefb00 + 5730043 commit c3bc687
Show file tree
Hide file tree
Showing 60 changed files with 1,398 additions and 502 deletions.
2 changes: 1 addition & 1 deletion .github/ISSUE_TEMPLATE/add-layerleap-request.yml
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
name: Add Layer Leap Request
description: File a request to have your Orbit chain support Layer Leap transfers
title: "[feat]: enable Layer Leap for <Orbit Chain>"
labels: ["feat", "triage"]
labels: ["Type: Add LayerLeap"]
body:
- type: markdown
attributes:
Expand Down
46 changes: 5 additions & 41 deletions .github/ISSUE_TEMPLATE/add-orbit-chain-request.yml
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
name: Add Orbit Chain Request
description: File a request to have your Orbit chain added to the bridge
title: "[feat]: Add Orbit chain "
labels: ["feat", "triage"]
labels: ["Type: Add Orbit Chain"]
body:
- type: markdown
attributes:
Expand Down Expand Up @@ -71,6 +71,8 @@ body:
- "421614"
- "11155111"
- "17000"
- "8453"
- "84532"
validations:
required: true

Expand Down Expand Up @@ -119,61 +121,27 @@ body:
attributes:
value: |
Please fill out this section with your chain configuration details and contract addresses. As a reminder, you can get all contract addresses by running [getAllContracts](https://github.com/OffchainLabs/arbitrum-orbit-sdk/blob/feat-add-verification-scripts/examples/verify-rollup/README.md#get-all-contracts).
- type: input
id: confirmPeriodBlocks
attributes:
label: confirmPeriodBlocks
placeholder: ex. 45818
validations:
required: true
- type: markdown
attributes:
value: |
## Rollup contract addresses
## Rollup contract address
- type: markdown
attributes:
value: |
You can find this information under the `"coreContracts" : {...}` key.
- type: input
id: bridge
attributes:
label: bridge
validations:
required: true
- type: input
id: inbox
attributes:
label: inbox
validations:
required: true
- type: input
id: outbox
attributes:
label: outbox
validations:
required: true
- type: input
id: rollup
attributes:
label: rollup
validations:
required: true
- type: input
id: sequencerInbox
attributes:
label: sequencerInbox
description: Please provide the address of the rollup contract. Other core contract addresses will be fetched automatically.
validations:
required: true

- type: markdown
attributes:
value: |
## Parent chain token bridge contract addresses
- type: markdown
attributes:
value: |
You can find this information under the `"l2Contracts" : {...}` key.
- type: input
id: parent-custom-gateway
attributes:
Expand Down Expand Up @@ -222,10 +190,6 @@ body:
attributes:
value: |
## Orbit chain token bridge contract addresses
- type: markdown
attributes:
value: |
You can find this information under the `"l3Contracts" : {...}` key.
- type: input
id: child-custom-gateway
attributes:
Expand Down
2 changes: 1 addition & 1 deletion .github/workflows/build-test.yml
Original file line number Diff line number Diff line change
Expand Up @@ -153,7 +153,7 @@ jobs:

- name: Install node_modules
uses: OffchainLabs/actions/node-modules/install@main

- name: Build
run: yarn workspace scripts build

Expand Down
19 changes: 13 additions & 6 deletions .github/workflows/e2e-tests.yml
Original file line number Diff line number Diff line change
Expand Up @@ -28,7 +28,7 @@ jobs:
run: echo "e2eFiles=$(node .github/workflows/formatSpecfiles.js ${{ inputs.test_type }} | jq . --compact-output)" >> $GITHUB_OUTPUT

test-e2e:
name: "Test E2E - ${{ matrix.test.name }}${{ matrix.test.type == 'orbit' && ' with L3' || ''}}"
name: "${{ matrix.test.name }}${{ matrix.test.type == 'orbit-eth' && ' with L3' || matrix.test.type == 'orbit-custom' && ' with custom fee token' || ''}}"
needs: [load-e2e-files]
runs-on: ubuntu-latest
strategy:
Expand Down Expand Up @@ -91,15 +91,22 @@ jobs:
if: inputs.test_type != 'cctp'
uses: OffchainLabs/actions/run-nitro-test-node@a20a76172ce524832ac897bef2fa10a62ed81c29
with:
nitro-testnode-ref: aab133aceadec2e622f15fa438f6327e3165392d
l3-node: ${{ matrix.test.type == 'orbit' }}
no-l3-token-bridge: ${{ matrix.test.type != 'orbit' }}
nitro-testnode-ref: badbcbea9b43d46e115da4d7c9f2f57c31af8431
l3-node: ${{ matrix.test.type != 'regular' }}
no-l3-token-bridge: ${{ matrix.test.type == 'regular' }}
args: ${{ matrix.test.type == 'orbit-custom' && '--l3-fee-token' || '' }}

- name: Run e2e tests via cypress-io/github-action
uses: cypress-io/github-action@0da3c06ed8217b912deea9d8ee69630baed1737e # [email protected]
with:
start: yarn start
command: "yarn test:e2e${{ (matrix.test.type == 'cctp' && ':cctp') || (matrix.test.type == 'orbit' && ':orbit') || '' }} --browser chrome"
command: >-
${{
(matrix.test.type == 'orbit-eth') && 'yarn test:e2e:orbit --browser chrome' ||
(matrix.test.type == 'orbit-custom' && 'yarn test:e2e:orbit:custom-gas-token --browser chrome') ||
(matrix.test.type == 'cctp' && 'yarn test:e2e:cctp --browser chrome') ||
'yarn test:e2e --browser chrome'
}}
wait-on: http://127.0.0.1:3000
wait-on-timeout: 120
spec: ./packages/arb-token-bridge-ui/tests/e2e/specs/*
Expand All @@ -121,7 +128,7 @@ jobs:
uses: actions/upload-artifact@v4
if: always()
with:
name: e2e-artifacts-${{ github.sha }}-${{ matrix.test.name }}-${{ (matrix.test.type == 'cctp' && 'cctp') || (matrix.test.type == 'orbit' && 'l3') || 'regular'}}
name: e2e-artifacts-${{ github.sha }}-${{ matrix.test.name }}-${{ (matrix.test.type == 'cctp' && 'cctp') || (matrix.test.type == 'orbit-eth' && 'l3') || (matrix.test.type == 'orbit-custom' && 'custom-fee-token') || 'regular'}}
path: |
./packages/arb-token-bridge-ui/cypress/videos
./packages/arb-token-bridge-ui/cypress/screenshots
Expand Down
6 changes: 5 additions & 1 deletion .github/workflows/formatSpecfiles.js
Original file line number Diff line number Diff line change
Expand Up @@ -14,7 +14,11 @@ switch (testType) {
});
tests.push({
...spec,
type: "orbit",
type: "orbit-eth",
});
tests.push({
...spec,
type: "orbit-custom",
});
});
break;
Expand Down
6 changes: 6 additions & 0 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -128,6 +128,12 @@ It is important for any code change to pass both unit and end-to-end tests. This
./test-node.bash --init --no-simple --tokenbridge --l3node --l3-token-bridge
```

To run with a custom fee token also include the following flags:

```bash
--l3-fee-token --l3-fee-token-decimals 18
```

2. When the Nitro test-node is up and running you should see logs like `sequencer_1` and `staker-unsafe_1` in the terminal. This can take up to 10 minutes.

2. At the root of the token bridge UI:
Expand Down
10 changes: 9 additions & 1 deletion audit-ci.jsonc
Original file line number Diff line number Diff line change
@@ -1,5 +1,13 @@
{
"$schema": "https://github.com/IBM/audit-ci/raw/main/docs/schema.json",
"low": true,
"allowlist": []
"allowlist": [
// https://github.com/advisories/GHSA-fc9h-whq2-v747
// Valid ECDSA signatures erroneously rejected in Elliptic
// Legitimate transactions or communications may be incorrectly flagged as invalid.
// No patched version available yet
// from: arb-token-bridge-ui>@unstoppabledomains/resolution>elliptic
// from: arb-token-bridge-ui>ethers>@ethersproject/signing-key>elliptic
"GHSA-fc9h-whq2-v747"
]
}
3 changes: 2 additions & 1 deletion package.json
Original file line number Diff line number Diff line change
Expand Up @@ -17,7 +17,8 @@
"lint:fix": "yarn workspace arb-token-bridge-ui lint:fix",
"test:e2e": "yarn workspace arb-token-bridge-ui env-cmd --silent --file .e2e.env yarn synpress run --configFile synpress.config.ts",
"test:e2e:cctp": "yarn test:e2e --configFile synpress.cctp.config.ts",
"test:e2e:orbit": "E2E_ORBIT=true yarn test:e2e"
"test:e2e:orbit": "E2E_ORBIT=true yarn test:e2e",
"test:e2e:orbit:custom-gas-token": "E2E_ORBIT_CUSTOM_GAS_TOKEN=true yarn test:e2e"
},
"resolutions": {
"**/@walletconnect/ethereum-provider": "2.13.1",
Expand Down
3 changes: 3 additions & 0 deletions packages/arb-token-bridge-ui/.env.local.sample
Original file line number Diff line number Diff line change
Expand Up @@ -8,8 +8,10 @@ NEXT_PUBLIC_INFURA_KEY_SEPOLIA=

# L2
NEXT_PUBLIC_INFURA_KEY_ARBITRUM_ONE=
NEXT_PUBLIC_INFURA_KEY_BASE=
# L2 Testnet
NEXT_PUBLIC_INFURA_KEY_ARBITRUM_SEPOLIA=
NEXT_PUBLIC_INFURA_KEY_BASE_SEPOLIA=

NEXT_PUBLIC_SENTRY_DSN=

Expand All @@ -26,5 +28,6 @@ SELF_HOSTED_SUBGRAPH_API_KEY=

SCREENING_API_ENDPOINT=
SCREENING_API_KEY=
NEXT_PUBLIC_SCREENING_API_ENDPOINT=

NEXT_PUBLIC_POSTHOG_KEY=
11 changes: 11 additions & 0 deletions packages/arb-token-bridge-ui/public/images/ApeChainLogo.svg
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading

0 comments on commit c3bc687

Please sign in to comment.