From a44af4bec1502ca04e68a0fc5bdcaf2361414114 Mon Sep 17 00:00:00 2001 From: John Hilliard Date: Thu, 16 Jan 2025 09:19:20 -0500 Subject: [PATCH 1/5] feat: latest agglayer --- agglayer.star | 3 ++- input_parser.star | 6 ++++-- 2 files changed, 6 insertions(+), 3 deletions(-) diff --git a/agglayer.star b/agglayer.star index 02882647..e5e28fa7 100644 --- a/agglayer.star +++ b/agglayer.star @@ -11,7 +11,8 @@ def run(plan, args, contract_setup_addresses): prover_env_vars["RUST_BACKTRACE"] = "1" if "agglayer_prover_sp1_key" in args and args["agglayer_prover_sp1_key"] != None: - prover_env_vars["SP1_PRIVATE_KEY"] = args["agglayer_prover_sp1_key"] + prover_env_vars["NETWORK_PRIVATE_KEY"] = args["agglayer_prover_sp1_key"] + prover_env_vars["NETWORK_RPC_URL"] = args["agglayer_prover_network_url"] agglayer_prover = plan.add_service( name="agglayer-prover", diff --git a/input_parser.star b/input_parser.star index bc5fe6ff..23292bc0 100644 --- a/input_parser.star +++ b/input_parser.star @@ -33,7 +33,7 @@ DEFAULT_DEPLOYMENT_STAGES = { } DEFAULT_IMAGES = { - "agglayer_image": "ghcr.io/agglayer/agglayer:0.2.0-rc.23", # https://github.com/agglayer/agglayer/tags + "agglayer_image": "ghcr.io/agglayer/agglayer:0.2.1-rc.1", # https://github.com/agglayer/agglayer/tags "cdk_erigon_node_image": "hermeznetwork/cdk-erigon:v2.60.2", # https://hub.docker.com/r/hermeznetwork/cdk-erigon/tags "cdk_node_image": "ghcr.io/0xpolygon/cdk:0.5.0-beta10", # https://github.com/0xpolygon/cdk/pkgs/container/cdk "cdk_validium_node_image": "0xpolygon/cdk-validium-node:0.7.0-cdk", # https://hub.docker.com/r/0xpolygon/cdk-validium-node/tags @@ -241,7 +241,7 @@ DEFAULT_ROLLUP_ARGS = { # If we're using pessimistic consensus and a real verifier, we'll # need to know which vkey to use. This value is tightly coupled to # the agglayer version that's being used - "verifier_program_vkey": "0x002d324867c82b5b5e0c66a822b004694cb73166d74c0713add59a282b8ce3e0", + "verifier_program_vkey": "0x0062c685702e0582d900f3a19521270c92a58e2588230c4a5cf3b45103f4a512", # This flag will enable a stateless executor to verify the execution of the batches. # Set to true to run erigon as the sequencer. "erigon_strict_mode": True, @@ -266,6 +266,8 @@ DEFAULT_ROLLUP_ARGS = { "enable_normalcy": False, # If the agglayer is going to be configured to use SP1 services, we'll need to provide an API Key "agglayer_prover_sp1_key": None, + # If we're setting an sp1 key, we might want to specify a specific RPC url as well + "agglayer_prover_network_url": "https://rpc.production2.succinct.tools/", # The URL where the agglayer can be reached "agglayer_url": "http://agglayer:" + str(DEFAULT_PORTS.get("agglayer_port")), # This is a path where the cdk-node will write data From 7166d7cc6c6fd685690685b636ec5724d2d6e585 Mon Sep 17 00:00:00 2001 From: John Hilliard Date: Thu, 16 Jan 2025 09:36:46 -0500 Subject: [PATCH 2/5] fix: adding back sp1 key --- agglayer.star | 2 ++ input_parser.star | 2 +- 2 files changed, 3 insertions(+), 1 deletion(-) diff --git a/agglayer.star b/agglayer.star index e5e28fa7..cf6b8ab8 100644 --- a/agglayer.star +++ b/agglayer.star @@ -12,6 +12,8 @@ def run(plan, args, contract_setup_addresses): prover_env_vars["RUST_BACKTRACE"] = "1" if "agglayer_prover_sp1_key" in args and args["agglayer_prover_sp1_key"] != None: prover_env_vars["NETWORK_PRIVATE_KEY"] = args["agglayer_prover_sp1_key"] + # Keeping this for backward compatibility for now + prover_env_vars["SP1_PRIVATE_KEY"] = args["agglayer_prover_sp1_key"] prover_env_vars["NETWORK_RPC_URL"] = args["agglayer_prover_network_url"] agglayer_prover = plan.add_service( diff --git a/input_parser.star b/input_parser.star index 23292bc0..a9f82ec3 100644 --- a/input_parser.star +++ b/input_parser.star @@ -267,7 +267,7 @@ DEFAULT_ROLLUP_ARGS = { # If the agglayer is going to be configured to use SP1 services, we'll need to provide an API Key "agglayer_prover_sp1_key": None, # If we're setting an sp1 key, we might want to specify a specific RPC url as well - "agglayer_prover_network_url": "https://rpc.production2.succinct.tools/", + "agglayer_prover_network_url": "https://rpc.succinct.xyz/", # The URL where the agglayer can be reached "agglayer_url": "http://agglayer:" + str(DEFAULT_PORTS.get("agglayer_port")), # This is a path where the cdk-node will write data From 3bbed633f3d468156505b0b0b1774eba98ffe698 Mon Sep 17 00:00:00 2001 From: John Hilliard Date: Thu, 16 Jan 2025 09:56:08 -0500 Subject: [PATCH 3/5] fix: contracts version --- .github/tests/agglayer-sp1-key.yml | 2 +- .github/tests/attach-second-cdk-pessimistic.yml | 2 +- .github/tests/attach-second-cdk.yml | 2 +- .github/tests/attach-third-cdk.yml | 2 +- .github/tests/fork12-pessimistic.yml | 2 +- docs/multi-pp-testing/net1.yml | 4 ++-- docs/multi-pp-testing/net2.yml | 2 +- docs/multi-pp-testing/net3.yml | 2 +- 8 files changed, 9 insertions(+), 9 deletions(-) diff --git a/.github/tests/agglayer-sp1-key.yml b/.github/tests/agglayer-sp1-key.yml index 3ea5d700..e82506ff 100644 --- a/.github/tests/agglayer-sp1-key.yml +++ b/.github/tests/agglayer-sp1-key.yml @@ -1,7 +1,7 @@ args: agglayer_image: ghcr.io/agglayer/agglayer:0.2.0-rc.23 agglayer_prover_sp1_key: "" - zkevm_contracts_image: leovct/zkevm-contracts:v9.0.0-rc.3-pp-fork.12-patch.1 + zkevm_contracts_image: leovct/zkevm-contracts:v9.0.0-rc.4-pp-fork.12 consensus_contract_type: pessimistic erigon_strict_mode: false gas_token_enabled: false diff --git a/.github/tests/attach-second-cdk-pessimistic.yml b/.github/tests/attach-second-cdk-pessimistic.yml index 143c2d02..c1bf022b 100644 --- a/.github/tests/attach-second-cdk-pessimistic.yml +++ b/.github/tests/attach-second-cdk-pessimistic.yml @@ -28,7 +28,7 @@ args: cdk_node_image: ghcr.io/0xpolygon/cdk:0.5.0-beta10 cdk_erigon_node_image: hermeznetwork/cdk-erigon:v2.60.2 - zkevm_contracts_image: leovct/zkevm-contracts:v9.0.0-rc.3-pp-fork.12-patch.1 + zkevm_contracts_image: leovct/zkevm-contracts:v9.0.0-rc.4-pp-fork.12 additional_services: [] consensus_contract_type: pessimistic sequencer_type: erigon diff --git a/.github/tests/attach-second-cdk.yml b/.github/tests/attach-second-cdk.yml index ed289dbc..50702bf7 100644 --- a/.github/tests/attach-second-cdk.yml +++ b/.github/tests/attach-second-cdk.yml @@ -26,4 +26,4 @@ args: zkevm_l2_proofsigner_address: "0xf1a661D7b601Ec46a040f57193cC99aB8c4132FA" zkevm_l2_proofsigner_private_key: "0xc7fe3a006d75ba9326d9792523385abb49057c66aee0b8b4248821a89713f975" - zkevm_contracts_image: leovct/zkevm-contracts:v9.0.0-rc.3-pp-fork.12-patch.1 \ No newline at end of file + zkevm_contracts_image: leovct/zkevm-contracts:v9.0.0-rc.4-pp-fork.12 \ No newline at end of file diff --git a/.github/tests/attach-third-cdk.yml b/.github/tests/attach-third-cdk.yml index 6ac90bf0..a73e3948 100644 --- a/.github/tests/attach-third-cdk.yml +++ b/.github/tests/attach-third-cdk.yml @@ -54,7 +54,7 @@ args: zkevm_l2_claimsponsor_private_key: "0xb97112e36cfcde131faa110430eed6593b75406e5d6991d8db3ed0f492a73b6f" cdk_node_image: ghcr.io/0xpolygon/cdk:0.5.0-beta10 - zkevm_contracts_image: leovct/zkevm-contracts:v9.0.0-rc.3-pp-fork.12-patch.1 + zkevm_contracts_image: leovct/zkevm-contracts:v9.0.0-rc.4-pp-fork.12 consensus_contract_type: pessimistic erigon_strict_mode: false gas_token_enabled: false diff --git a/.github/tests/fork12-pessimistic.yml b/.github/tests/fork12-pessimistic.yml index fbee378f..ac039f89 100644 --- a/.github/tests/fork12-pessimistic.yml +++ b/.github/tests/fork12-pessimistic.yml @@ -1,6 +1,6 @@ args: cdk_erigon_node_image: hermeznetwork/cdk-erigon:v2.60.2 - zkevm_contracts_image: leovct/zkevm-contracts:v9.0.0-rc.3-pp-fork.12-patch.1 + zkevm_contracts_image: leovct/zkevm-contracts:v9.0.0-rc.4-pp-fork.12 additional_services: [] consensus_contract_type: pessimistic sequencer_type: erigon diff --git a/docs/multi-pp-testing/net1.yml b/docs/multi-pp-testing/net1.yml index a60f1d28..efa33e2d 100644 --- a/docs/multi-pp-testing/net1.yml +++ b/docs/multi-pp-testing/net1.yml @@ -1,5 +1,5 @@ args: - zkevm_contracts_image: leovct/zkevm-contracts:v9.0.0-rc.3-pp-fork.12-patch.1 + zkevm_contracts_image: leovct/zkevm-contracts:v9.0.0-rc.4-pp-fork.12 additional_services: [] consensus_contract_type: pessimistic sequencer_type: erigon @@ -7,5 +7,5 @@ args: gas_token_enabled: false zkevm_use_real_verifier: true enable_normalcy: true - agglayer_prover_sp1_key: 0xSOME_SP1_KEY + agglayer_prover_sp1_key: 0xsome_sp1_key diff --git a/docs/multi-pp-testing/net2.yml b/docs/multi-pp-testing/net2.yml index a7a0acce..dea40a05 100644 --- a/docs/multi-pp-testing/net2.yml +++ b/docs/multi-pp-testing/net2.yml @@ -25,7 +25,7 @@ args: zkevm_l2_proofsigner_address: "0xf1a661D7b601Ec46a040f57193cC99aB8c4132FA" zkevm_l2_proofsigner_private_key: "0xc7fe3a006d75ba9326d9792523385abb49057c66aee0b8b4248821a89713f975" - zkevm_contracts_image: leovct/zkevm-contracts:v9.0.0-rc.3-pp-fork.12-patch.1 + zkevm_contracts_image: leovct/zkevm-contracts:v9.0.0-rc.4-pp-fork.12 additional_services: [] consensus_contract_type: pessimistic sequencer_type: erigon diff --git a/docs/multi-pp-testing/net3.yml b/docs/multi-pp-testing/net3.yml index 4676051a..6e4de0a2 100644 --- a/docs/multi-pp-testing/net3.yml +++ b/docs/multi-pp-testing/net3.yml @@ -25,7 +25,7 @@ args: zkevm_l2_proofsigner_address: "0xDcd1d53324a9Ae5a50a55F62556A771376Fe434D" zkevm_l2_proofsigner_private_key: "0xcb1f295abf6538023fcf96eaa8e81969a65ba70ab61590187b77e2c01aaba748" - zkevm_contracts_image: leovct/zkevm-contracts:v9.0.0-rc.3-pp-fork.12-patch.1 + zkevm_contracts_image: leovct/zkevm-contracts:v9.0.0-rc.4-pp-fork.12 additional_services: [] sequencer_type: erigon From c7bad02fb1f49fbe3720f8acbc3cca8bc0f70c8a Mon Sep 17 00:00:00 2001 From: John Hilliard Date: Thu, 16 Jan 2025 13:17:57 -0500 Subject: [PATCH 4/5] fix: hard coded bridge address --- .github/workflows/deploy.yml | 10 ++++++---- 1 file changed, 6 insertions(+), 4 deletions(-) diff --git a/.github/workflows/deploy.yml b/.github/workflows/deploy.yml index 5cac695c..331c9c84 100644 --- a/.github/workflows/deploy.yml +++ b/.github/workflows/deploy.yml @@ -490,12 +490,13 @@ jobs: working-directory: .github/scripts run: | echo "Sending a bridge transaction from L1 to the PP network Erigon RPC..." + bridge_address=$(kurtosis service exec ${{ env.ENCLAVE_NAME }} contracts-001 'jq -r .polygonZkEVMBridgeAddress /opt/zkevm/combined.json' 2>&1 | grep -P '0x\h*') originNetworkURL=$(kurtosis port print ${{ env.ENCLAVE_NAME }} el-1-geth-lighthouse rpc) polycli ulxly bridge asset \ --private-key 12d7de8621a77640c9241b2595ba78ce443d05e94090365ab3bb5e19df82c625 \ --value 1000000000000000000 \ --rpc-url http://$originNetworkURL \ - --bridge-address 0xd8886e9D827218a02B8C04323b5550f2F36BC8d5 \ + --bridge-address $bridge_address \ --destination-network 3 \ --force-update-root=true \ --destination-address 0xE34aaF64b29273B7D567FCFc40544c014EEe9970 @@ -512,7 +513,7 @@ jobs: destNetworkURL=$(kurtosis port print ${{ env.ENCLAVE_NAME }} cdk-erigon-rpc-003 rpc) bridgeURL=$(kurtosis port print ${{ env.ENCLAVE_NAME }} zkevm-bridge-service-003 rpc) polycli ulxly claim asset \ - --bridge-address 0xd8886e9D827218a02B8C04323b5550f2F36BC8d5 \ + --bridge-address $bridge_address \ --private-key 12d7de8621a77640c9241b2595ba78ce443d05e94090365ab3bb5e19df82c625 \ --deposit-count 3 \ --destination-address 0xE34aaF64b29273B7D567FCFc40544c014EEe9970 \ @@ -535,12 +536,13 @@ jobs: working-directory: .github/scripts run: | echo "Sending a bridge transaction from third PP network to the first rollup Erigon RPC..." + bridge_address=$(kurtosis service exec ${{ env.ENCLAVE_NAME }} contracts-001 'jq -r .polygonZkEVMBridgeAddress /opt/zkevm/combined.json' 2>&1 | grep -P '0x\h*') originNetworkURL=$(kurtosis port print ${{ env.ENCLAVE_NAME }} cdk-erigon-rpc-003 rpc) polycli ulxly bridge asset \ --private-key 12d7de8621a77640c9241b2595ba78ce443d05e94090365ab3bb5e19df82c625 \ --value 1000000000000 \ --rpc-url $originNetworkURL \ - --bridge-address 0xd8886e9D827218a02B8C04323b5550f2F36BC8d5 \ + --bridge-address $bridge_address \ --destination-network 1 \ --force-update-root=true \ --destination-address 0xE34aaF64b29273B7D567FCFc40544c014EEe9970 \ @@ -558,7 +560,7 @@ jobs: destNetworkURL=$(kurtosis port print ${{ env.ENCLAVE_NAME }} cdk-erigon-rpc-001 rpc) bridgeURL=$(kurtosis port print ${{ env.ENCLAVE_NAME }} zkevm-bridge-service-003 rpc) polycli ulxly claim asset \ - --bridge-address 0xd8886e9D827218a02B8C04323b5550f2F36BC8d5 \ + --bridge-address $bridge_address \ --private-key 12d7de8621a77640c9241b2595ba78ce443d05e94090365ab3bb5e19df82c625 \ --deposit-count 0 \ --destination-address 0xE34aaF64b29273B7D567FCFc40544c014EEe9970 \ From 99d936ab83cc7a51e43ecfc1db7db99f2d71bdfe Mon Sep 17 00:00:00 2001 From: John Hilliard Date: Thu, 16 Jan 2025 15:08:11 -0500 Subject: [PATCH 5/5] feat: adding additional test scenarios --- docs/multi-pp-testing/lxly.pict | 2 +- docs/multi-pp-testing/run.sh | 25 +- docs/multi-pp-testing/test-scenarios.json | 296 +++++++++++++--------- 3 files changed, 205 insertions(+), 118 deletions(-) diff --git a/docs/multi-pp-testing/lxly.pict b/docs/multi-pp-testing/lxly.pict index 0ec3a44f..9ac7b45f 100644 --- a/docs/multi-pp-testing/lxly.pict +++ b/docs/multi-pp-testing/lxly.pict @@ -4,7 +4,7 @@ DestinationChain : L1, PP1, PP2, FEP DestinationAddress : EOA, Contract, Precompile BridgeType : Asset, Message, Weth Token : NativeEther, LocalERC20, Buggy, WETH, GasToken -MetaData : 0x, Random +MetaData : 0x, Random, Huge, Max ForceUpdate : True (4), False Amount : 0, 1, Random, Max diff --git a/docs/multi-pp-testing/run.sh b/docs/multi-pp-testing/run.sh index 9045f881..a8d1f1d7 100755 --- a/docs/multi-pp-testing/run.sh +++ b/docs/multi-pp-testing/run.sh @@ -7,7 +7,7 @@ fi tester_contract_address=0xc54E34B55EF562FE82Ca858F70D1B73244e86388 test_erc20_buggy_addr=0x22939b3A4dFD9Fc6211F99Cdc6bd9f6708ae2956 -test_lxly_proxy_addr=0x1786B94e55cA57b897aF0f59a1e5b31EA0469547 +test_lxly_proxy_addr=0x5d1847D52a39a05E6EDb45F2890d52D83155CF7F tester_contract_address=0xc54E34B55EF562FE82Ca858F70D1B73244e86388 l1_rpc_url=http://$(kurtosis port print pp el-1-geth-lighthouse rpc) @@ -134,6 +134,14 @@ while read scenario ; do testCommand="$testCommand --call-data $(date +%s | xxd -p)" elif [[ $testMetaData == "0x" ]]; then testCommand="$testCommand --call-data 0x" + elif [[ $testMetaData == "Huge" ]]; then + temp_file=$(mktemp) + xxd -p /dev/random | tr -d "\n" | head -c 97000 > $temp_file + testCommand="$testCommand --call-data-file $temp_file" + elif [[ $testMetaData == "Max" ]]; then + temp_file=$(mktemp) + xxd -p /dev/random | tr -d "\n" | head -c 261569 > $temp_file + testCommand="$testCommand --call-data-file $temp_file" else printf "Unrecognized Metadata: $testMetaData\n" exit 1; @@ -205,7 +213,7 @@ polycli ulxly claim-everything \ --destination-address $eth_address \ --private-key $private_key \ --rpc-url $l2_fep_url \ - --bridge-limit 1000 + --bridge-limit 1000 --bridge-offset 0 polycli ulxly claim-everything \ --bridge-address $bridge_address \ --bridge-service-map $network_id_fep=$l2_fepb_url \ @@ -214,7 +222,7 @@ polycli ulxly claim-everything \ --destination-address $eth_address \ --private-key $private_key \ --rpc-url $l2_pp1_url \ - --bridge-limit 1000 + --bridge-limit 1000 --bridge-offset 0 polycli ulxly claim-everything \ --bridge-address $bridge_address \ --bridge-service-map $network_id_fep=$l2_fepb_url \ @@ -223,4 +231,13 @@ polycli ulxly claim-everything \ --destination-address $eth_address \ --private-key $private_key \ --rpc-url $l2_pp2_url \ - --bridge-limit 1000 + --bridge-limit 1000 --bridge-offset 0 +polycli ulxly claim-everything \ + --bridge-address $bridge_address \ + --bridge-service-map $network_id_fep=$l2_fepb_url \ + --bridge-service-map $network_id_pp1=$l2_pp1b_url \ + --bridge-service-map $network_id_pp2=$l2_pp2b_url \ + --destination-address $eth_address \ + --private-key $private_key \ + --rpc-url $l1_rpc_url \ + --bridge-limit 1000 --bridge-offset 0 diff --git a/docs/multi-pp-testing/test-scenarios.json b/docs/multi-pp-testing/test-scenarios.json index 1ddb113a..a67e53d5 100644 --- a/docs/multi-pp-testing/test-scenarios.json +++ b/docs/multi-pp-testing/test-scenarios.json @@ -1,82 +1,52 @@ [ { - "DepositChain": "L1", - "DestinationChain": "FEP", - "DestinationAddress": "Precompile", - "BridgeType": "Message", - "Token": "NativeEther", - "MetaData": "0x", - "ForceUpdate": "True", - "Amount": "0" - }, - { - "DepositChain": "FEP", - "DestinationChain": "L1", - "DestinationAddress": "Contract", + "DepositChain": "PP1", + "DestinationChain": "PP2", + "DestinationAddress": "EOA", "BridgeType": "Asset", "Token": "Buggy", "MetaData": "0x", "ForceUpdate": "False", - "Amount": "1" + "Amount": "0" }, { "DepositChain": "FEP", - "DestinationChain": "PP1", - "DestinationAddress": "EOA", - "BridgeType": "Message", - "Token": "NativeEther", - "MetaData": "Random", - "ForceUpdate": "False", - "Amount": "Random" - }, - { - "DepositChain": "PP2", - "DestinationChain": "PP1", - "DestinationAddress": "EOA", - "BridgeType": "Asset", - "Token": "Buggy", - "MetaData": "0x", - "ForceUpdate": "True", - "Amount": "Max" - }, - { - "DepositChain": "PP1", "DestinationChain": "PP2", "DestinationAddress": "Precompile", "BridgeType": "Asset", - "Token": "GasToken", + "Token": "LocalERC20", "MetaData": "0x", - "ForceUpdate": "False", - "Amount": "0" + "ForceUpdate": "True", + "Amount": "Random" }, { "DepositChain": "L1", - "DestinationChain": "PP1", + "DestinationChain": "PP2", "DestinationAddress": "Contract", - "BridgeType": "Asset", - "Token": "GasToken", - "MetaData": "0x", + "BridgeType": "Message", + "Token": "NativeEther", + "MetaData": "Huge", "ForceUpdate": "True", "Amount": "1" }, { "DepositChain": "PP2", - "DestinationChain": "FEP", + "DestinationChain": "L1", "DestinationAddress": "Contract", - "BridgeType": "Weth", - "Token": "WETH", + "BridgeType": "Asset", + "Token": "LocalERC20", "MetaData": "0x", - "ForceUpdate": "True", - "Amount": "Random" + "ForceUpdate": "False", + "Amount": "0" }, { - "DepositChain": "PP1", - "DestinationChain": "L1", + "DepositChain": "L1", + "DestinationChain": "PP1", "DestinationAddress": "EOA", "BridgeType": "Asset", "Token": "GasToken", "MetaData": "0x", - "ForceUpdate": "True", + "ForceUpdate": "False", "Amount": "Random" }, { @@ -87,21 +57,41 @@ "Token": "NativeEther", "MetaData": "Random", "ForceUpdate": "False", + "Amount": "Random" + }, + { + "DepositChain": "FEP", + "DestinationChain": "PP2", + "DestinationAddress": "EOA", + "BridgeType": "Asset", + "Token": "GasToken", + "MetaData": "0x", + "ForceUpdate": "True", "Amount": "1" }, { - "DepositChain": "L1", + "DepositChain": "PP2", "DestinationChain": "FEP", "DestinationAddress": "EOA", - "BridgeType": "Asset", - "Token": "LocalERC20", + "BridgeType": "Message", + "Token": "NativeEther", + "MetaData": "Max", + "ForceUpdate": "True", + "Amount": "0" + }, + { + "DepositChain": "PP2", + "DestinationChain": "PP1", + "DestinationAddress": "Precompile", + "BridgeType": "Weth", + "Token": "WETH", "MetaData": "0x", "ForceUpdate": "False", "Amount": "1" }, { "DepositChain": "FEP", - "DestinationChain": "L1", + "DestinationChain": "PP1", "DestinationAddress": "Contract", "BridgeType": "Asset", "Token": "LocalERC20", @@ -111,16 +101,6 @@ }, { "DepositChain": "L1", - "DestinationChain": "PP2", - "DestinationAddress": "Precompile", - "BridgeType": "Asset", - "Token": "LocalERC20", - "MetaData": "0x", - "ForceUpdate": "True", - "Amount": "Random" - }, - { - "DepositChain": "PP1", "DestinationChain": "FEP", "DestinationAddress": "Precompile", "BridgeType": "Asset", @@ -130,58 +110,88 @@ "Amount": "Max" }, { - "DepositChain": "L1", - "DestinationChain": "PP2", - "DestinationAddress": "EOA", + "DepositChain": "PP1", + "DestinationChain": "FEP", + "DestinationAddress": "Contract", "BridgeType": "Asset", - "Token": "Buggy", - "MetaData": "0x", - "ForceUpdate": "False", - "Amount": "0" + "Token": "NativeEther", + "MetaData": "Random", + "ForceUpdate": "True", + "Amount": "1" }, { "DepositChain": "FEP", "DestinationChain": "PP1", + "DestinationAddress": "Contract", + "BridgeType": "Message", + "Token": "NativeEther", + "MetaData": "Max", + "ForceUpdate": "False", + "Amount": "Random" + }, + { + "DepositChain": "L1", + "DestinationChain": "PP2", "DestinationAddress": "Precompile", "BridgeType": "Asset", - "Token": "GasToken", - "MetaData": "0x", + "Token": "NativeEther", + "MetaData": "Max", "ForceUpdate": "True", "Amount": "0" }, { "DepositChain": "PP2", - "DestinationChain": "PP1", - "DestinationAddress": "Precompile", + "DestinationChain": "L1", + "DestinationAddress": "EOA", "BridgeType": "Weth", "Token": "WETH", "MetaData": "0x", + "ForceUpdate": "True", + "Amount": "Random" + }, + { + "DepositChain": "PP1", + "DestinationChain": "FEP", + "DestinationAddress": "Precompile", + "BridgeType": "Asset", + "Token": "NativeEther", + "MetaData": "Huge", "ForceUpdate": "False", "Amount": "0" }, { - "DepositChain": "PP2", - "DestinationChain": "L1", + "DepositChain": "L1", + "DestinationChain": "FEP", "DestinationAddress": "EOA", - "BridgeType": "Weth", - "Token": "WETH", + "BridgeType": "Asset", + "Token": "LocalERC20", "MetaData": "0x", "ForceUpdate": "True", "Amount": "1" }, { "DepositChain": "PP2", - "DestinationChain": "FEP", - "DestinationAddress": "Contract", - "BridgeType": "Asset", + "DestinationChain": "PP1", + "DestinationAddress": "EOA", + "BridgeType": "Message", "Token": "NativeEther", "MetaData": "Random", "ForceUpdate": "True", "Amount": "0" }, + { + "DepositChain": "PP1", + "DestinationChain": "FEP", + "DestinationAddress": "EOA", + "BridgeType": "Message", + "Token": "NativeEther", + "MetaData": "Huge", + "ForceUpdate": "True", + "Amount": "Random" + }, { "DepositChain": "FEP", - "DestinationChain": "PP2", + "DestinationChain": "L1", "DestinationAddress": "Contract", "BridgeType": "Asset", "Token": "Buggy", @@ -189,44 +199,54 @@ "ForceUpdate": "True", "Amount": "Max" }, + { + "DepositChain": "FEP", + "DestinationChain": "PP2", + "DestinationAddress": "EOA", + "BridgeType": "Asset", + "Token": "NativeEther", + "MetaData": "Random", + "ForceUpdate": "True", + "Amount": "0" + }, { "DepositChain": "PP2", "DestinationChain": "FEP", "DestinationAddress": "Contract", - "BridgeType": "Asset", - "Token": "GasToken", + "BridgeType": "Weth", + "Token": "WETH", "MetaData": "0x", "ForceUpdate": "True", - "Amount": "1" + "Amount": "0" }, { - "DepositChain": "PP1", + "DepositChain": "FEP", "DestinationChain": "L1", - "DestinationAddress": "Contract", - "BridgeType": "Asset", - "Token": "Buggy", - "MetaData": "0x", + "DestinationAddress": "EOA", + "BridgeType": "Message", + "Token": "NativeEther", + "MetaData": "Huge", "ForceUpdate": "True", - "Amount": "Max" + "Amount": "1" }, { "DepositChain": "PP2", - "DestinationChain": "PP1", - "DestinationAddress": "EOA", + "DestinationChain": "L1", + "DestinationAddress": "Precompile", "BridgeType": "Asset", - "Token": "LocalERC20", + "Token": "GasToken", "MetaData": "0x", "ForceUpdate": "True", - "Amount": "1" + "Amount": "0" }, { - "DepositChain": "L1", - "DestinationChain": "PP2", - "DestinationAddress": "Contract", + "DepositChain": "PP1", + "DestinationChain": "L1", + "DestinationAddress": "EOA", "BridgeType": "Message", "Token": "NativeEther", - "MetaData": "Random", - "ForceUpdate": "True", + "MetaData": "Max", + "ForceUpdate": "False", "Amount": "1" }, { @@ -237,11 +257,11 @@ "Token": "LocalERC20", "MetaData": "0x", "ForceUpdate": "True", - "Amount": "1" + "Amount": "0" }, { - "DepositChain": "L1", - "DestinationChain": "FEP", + "DepositChain": "PP2", + "DestinationChain": "PP1", "DestinationAddress": "EOA", "BridgeType": "Asset", "Token": "Buggy", @@ -251,32 +271,82 @@ }, { "DepositChain": "PP2", - "DestinationChain": "FEP", - "DestinationAddress": "Contract", - "BridgeType": "Message", + "DestinationChain": "L1", + "DestinationAddress": "EOA", + "BridgeType": "Asset", + "Token": "Buggy", + "MetaData": "0x", + "ForceUpdate": "True", + "Amount": "1" + }, + { + "DepositChain": "PP2", + "DestinationChain": "PP1", + "DestinationAddress": "EOA", + "BridgeType": "Asset", "Token": "NativeEther", - "MetaData": "Random", + "MetaData": "Huge", "ForceUpdate": "True", - "Amount": "0" + "Amount": "Random" }, { - "DepositChain": "PP1", - "DestinationChain": "L1", + "DepositChain": "PP2", + "DestinationChain": "PP1", "DestinationAddress": "Contract", "BridgeType": "Asset", - "Token": "Buggy", + "Token": "WETH", "MetaData": "0x", "ForceUpdate": "True", "Amount": "Random" }, { - "DepositChain": "PP2", + "DepositChain": "PP1", "DestinationChain": "FEP", "DestinationAddress": "EOA", + "BridgeType": "Message", + "Token": "NativeEther", + "MetaData": "0x", + "ForceUpdate": "True", + "Amount": "Random" + }, + { + "DepositChain": "L1", + "DestinationChain": "PP1", + "DestinationAddress": "Precompile", "BridgeType": "Asset", - "Token": "WETH", + "Token": "NativeEther", + "MetaData": "Random", + "ForceUpdate": "True", + "Amount": "Random" + }, + { + "DepositChain": "PP1", + "DestinationChain": "FEP", + "DestinationAddress": "Contract", + "BridgeType": "Asset", + "Token": "GasToken", "MetaData": "0x", "ForceUpdate": "False", "Amount": "1" + }, + { + "DepositChain": "PP1", + "DestinationChain": "PP2", + "DestinationAddress": "Precompile", + "BridgeType": "Asset", + "Token": "Buggy", + "MetaData": "0x", + "ForceUpdate": "True", + "Amount": "Max" + }, + { + "DepositChain": "PP1", + "DestinationChain": "L1", + "DestinationAddress": "Contract", + "BridgeType": "Asset", + "Token": "Buggy", + "MetaData": "0x", + "ForceUpdate": "True", + "Amount": "Random" } ]