From dc84a9ad7ab346e9863fbfdebf09485025ffe05d Mon Sep 17 00:00:00 2001 From: Rodrigo Oliveri Date: Mon, 25 Nov 2024 12:53:38 -0300 Subject: [PATCH 01/33] Initial test of the new split version of the assertoor check --- .github/workflows/asertoor.yaml | 35 ++++++++++++++++--- .../{ => assertoor}/el-stability-check.yml | 7 ++++ test_data/assertoor/network_params_blob.yaml | 23 ++++++++++++ test_data/assertoor/network_params_tx.yaml | 21 +++++++++++ test_data/network_params.yaml | 8 ----- 5 files changed, 82 insertions(+), 12 deletions(-) rename test_data/{ => assertoor}/el-stability-check.yml (87%) create mode 100644 test_data/assertoor/network_params_blob.yaml create mode 100644 test_data/assertoor/network_params_tx.yaml diff --git a/.github/workflows/asertoor.yaml b/.github/workflows/asertoor.yaml index f08a1609f..2158e2145 100644 --- a/.github/workflows/asertoor.yaml +++ b/.github/workflows/asertoor.yaml @@ -20,7 +20,7 @@ jobs: build: uses: ./.github/workflows/docker_build.yaml - run-assertoor: + run-assertoor-tx-check: name: Stability Check runs-on: ubuntu-latest needs: [build] @@ -37,10 +37,37 @@ jobs: run: | docker load --input /tmp/ethrex_image.tar - - name: Setup kurtosis testnet and run assertoor tests + - name: Run assertoor tx tests uses: ethpandaops/kurtosis-assertoor-github-action@v1 with: - kurtosis_version: '1.3.1' + kurtosis_version: '1.4.2' ethereum_package_url: 'github.com/lambdaclass/ethereum-package' ethereum_package_branch: 'ethrex-integration' - ethereum_package_args: './test_data/network_params.yaml' + ethereum_package_args: './test_data/assertoor/network_params_tx.yaml' + + run-assertoor-blob-check: + name: Stability Check + runs-on: ubuntu-latest + needs: [build] + steps: + - uses: actions/checkout@v4 + + - name: Download artifacts + uses: actions/download-artifact@v4 + with: + name: ethrex_image + path: /tmp + + - name: Load image + run: | + docker load --input /tmp/ethrex_image.tar + + - name: Run assertoor tx tests + uses: ethpandaops/kurtosis-assertoor-github-action@v1 + with: + kurtosis_version: '1.4.2' + ethereum_package_url: 'github.com/lambdaclass/ethereum-package' + ethereum_package_branch: 'ethrex-integration' + ethereum_package_args: './test_data/assertoor/network_params_blob.yaml' + + diff --git a/test_data/el-stability-check.yml b/test_data/assertoor/el-stability-check.yml similarity index 87% rename from test_data/el-stability-check.yml rename to test_data/assertoor/el-stability-check.yml index 044b718ea..e163aaffa 100644 --- a/test_data/el-stability-check.yml +++ b/test_data/assertoor/el-stability-check.yml @@ -45,3 +45,10 @@ tasks: title: "Check consensus reorgs" - name: check_consensus_forks title: "Check consensus forks" + +- name: check_consensus_block_proposals + title: "Check the tx spammer is working as expected for block proposal with >= 50 transactions" + config: + minTransactionCount: 50 + configVars: + clientPattern: "ethrex-.*" \ No newline at end of file diff --git a/test_data/assertoor/network_params_blob.yaml b/test_data/assertoor/network_params_blob.yaml new file mode 100644 index 000000000..a42c8724d --- /dev/null +++ b/test_data/assertoor/network_params_blob.yaml @@ -0,0 +1,23 @@ +participants: + - el_type: ethrex + cl_type: lighthouse + validator_count: 32 + - el_type: geth + cl_type: lighthouse + validator_count: 32 + - el_type: geth + cl_type: prysm + validator_count: 32 + +additional_services: + - assertoor + - dora + - el_forkmon + - tx_spammer + +assertoor_params: + run_stability_check: false + run_block_proposal_check: false + run_blob_transaction_test: true + tests: + - 'https://raw.githubusercontent.com/lambdaclass/ethrex/refs/heads/assertoor-allaround-tx-check/test_data/el-stability-check.yml' diff --git a/test_data/assertoor/network_params_tx.yaml b/test_data/assertoor/network_params_tx.yaml new file mode 100644 index 000000000..0e5f2c945 --- /dev/null +++ b/test_data/assertoor/network_params_tx.yaml @@ -0,0 +1,21 @@ +participants: + - el_type: ethrex + cl_type: lighthouse + validator_count: 32 + - el_type: geth + cl_type: lighthouse + validator_count: 32 + - el_type: geth + cl_type: prysm + validator_count: 32 + +additional_services: + - assertoor + - tx_spammer + +assertoor_params: + run_stability_check: false + run_block_proposal_check: false + run_transaction_test: true + tests: + - 'https://raw.githubusercontent.com/lambdaclass/ethrex/refs/heads/assertoor-allaround-tx-check/test_data/assertoor/el-stability-check.yml' diff --git a/test_data/network_params.yaml b/test_data/network_params.yaml index 6e251057b..258fba704 100644 --- a/test_data/network_params.yaml +++ b/test_data/network_params.yaml @@ -10,14 +10,6 @@ participants: validator_count: 32 additional_services: - - assertoor - dora - el_forkmon - tx_spammer - -assertoor_params: - run_stability_check: false - run_block_proposal_check: false - run_blob_transaction_test: true - tests: - - 'https://raw.githubusercontent.com/lambdaclass/lambda_ethrex/refs/heads/main/test_data/el-stability-check.yml' From 22135da7403f15a94159581e7e41a3167fa160d4 Mon Sep 17 00:00:00 2001 From: Rodrigo Oliveri Date: Mon, 25 Nov 2024 12:58:46 -0300 Subject: [PATCH 02/33] Making the blob match the other params and fixed a line end issue --- test_data/assertoor/el-stability-check.yml | 2 +- test_data/assertoor/network_params_blob.yaml | 4 +--- 2 files changed, 2 insertions(+), 4 deletions(-) diff --git a/test_data/assertoor/el-stability-check.yml b/test_data/assertoor/el-stability-check.yml index e163aaffa..f6439fbcd 100644 --- a/test_data/assertoor/el-stability-check.yml +++ b/test_data/assertoor/el-stability-check.yml @@ -51,4 +51,4 @@ tasks: config: minTransactionCount: 50 configVars: - clientPattern: "ethrex-.*" \ No newline at end of file + clientPattern: "ethrex-.*" diff --git a/test_data/assertoor/network_params_blob.yaml b/test_data/assertoor/network_params_blob.yaml index a42c8724d..c06faeeb2 100644 --- a/test_data/assertoor/network_params_blob.yaml +++ b/test_data/assertoor/network_params_blob.yaml @@ -11,8 +11,6 @@ participants: additional_services: - assertoor - - dora - - el_forkmon - tx_spammer assertoor_params: @@ -20,4 +18,4 @@ assertoor_params: run_block_proposal_check: false run_blob_transaction_test: true tests: - - 'https://raw.githubusercontent.com/lambdaclass/ethrex/refs/heads/assertoor-allaround-tx-check/test_data/el-stability-check.yml' + - 'https://raw.githubusercontent.com/lambdaclass/ethrex/refs/heads/assertoor-allaround-tx-check/test_data/assertoor/el-stability-check.yml' From 089a7ce8e9e7b0c54df08a63417d7721d8c94f91 Mon Sep 17 00:00:00 2001 From: Rodrigo Oliveri Date: Mon, 25 Nov 2024 13:00:08 -0300 Subject: [PATCH 03/33] Fix jobs naming in the assertor.yaml --- .github/workflows/asertoor.yaml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/.github/workflows/asertoor.yaml b/.github/workflows/asertoor.yaml index 2158e2145..4519b55c7 100644 --- a/.github/workflows/asertoor.yaml +++ b/.github/workflows/asertoor.yaml @@ -21,7 +21,7 @@ jobs: uses: ./.github/workflows/docker_build.yaml run-assertoor-tx-check: - name: Stability Check + name: Transaction & Stability Check runs-on: ubuntu-latest needs: [build] steps: @@ -46,7 +46,7 @@ jobs: ethereum_package_args: './test_data/assertoor/network_params_tx.yaml' run-assertoor-blob-check: - name: Stability Check + name: Blobs & Stability Check runs-on: ubuntu-latest needs: [build] steps: From f9b87d8bd27a2569574b3895ed23bc154cc43317 Mon Sep 17 00:00:00 2001 From: Rodrigo Oliveri Date: Mon, 25 Nov 2024 14:21:12 -0300 Subject: [PATCH 04/33] Fix the clientPattern for checking tx additions --- test_data/assertoor/el-stability-check.yml | 2 +- test_data/network_params.yaml | 8 ++++++++ 2 files changed, 9 insertions(+), 1 deletion(-) diff --git a/test_data/assertoor/el-stability-check.yml b/test_data/assertoor/el-stability-check.yml index f6439fbcd..d0c3e63be 100644 --- a/test_data/assertoor/el-stability-check.yml +++ b/test_data/assertoor/el-stability-check.yml @@ -51,4 +51,4 @@ tasks: config: minTransactionCount: 50 configVars: - clientPattern: "ethrex-.*" + clientPattern: "1-ethrex-lighthouse" diff --git a/test_data/network_params.yaml b/test_data/network_params.yaml index 258fba704..69eaf8277 100644 --- a/test_data/network_params.yaml +++ b/test_data/network_params.yaml @@ -13,3 +13,11 @@ additional_services: - dora - el_forkmon - tx_spammer + - assertoor + +assertoor_params: + run_stability_check: false + run_block_proposal_check: false + run_transaction_test: true + tests: + - 'https://raw.githubusercontent.com/lambdaclass/ethrex/refs/heads/assertoor-allaround-tx-check/test_data/assertoor/el-stability-check.yml' From 17102cd5512d24fc0295a928bd34f70789606efc Mon Sep 17 00:00:00 2001 From: Rodrigo Oliveri Date: Mon, 25 Nov 2024 17:23:47 -0300 Subject: [PATCH 05/33] Removed the testing from the network_params file and fixed a small issue --- test_data/assertoor/el-stability-check.yml | 1 + test_data/network_params.yaml | 8 -------- 2 files changed, 1 insertion(+), 8 deletions(-) diff --git a/test_data/assertoor/el-stability-check.yml b/test_data/assertoor/el-stability-check.yml index d0c3e63be..d72e50fe2 100644 --- a/test_data/assertoor/el-stability-check.yml +++ b/test_data/assertoor/el-stability-check.yml @@ -48,6 +48,7 @@ tasks: - name: check_consensus_block_proposals title: "Check the tx spammer is working as expected for block proposal with >= 50 transactions" + timeout: 3m config: minTransactionCount: 50 configVars: diff --git a/test_data/network_params.yaml b/test_data/network_params.yaml index 69eaf8277..258fba704 100644 --- a/test_data/network_params.yaml +++ b/test_data/network_params.yaml @@ -13,11 +13,3 @@ additional_services: - dora - el_forkmon - tx_spammer - - assertoor - -assertoor_params: - run_stability_check: false - run_block_proposal_check: false - run_transaction_test: true - tests: - - 'https://raw.githubusercontent.com/lambdaclass/ethrex/refs/heads/assertoor-allaround-tx-check/test_data/assertoor/el-stability-check.yml' From c2ae9759ddc2dafc9232c7114793a8f8e7363a84 Mon Sep 17 00:00:00 2001 From: Rodrigo Oliveri Date: Mon, 25 Nov 2024 17:25:06 -0300 Subject: [PATCH 06/33] Small format change --- .github/workflows/asertoor.yaml | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/.github/workflows/asertoor.yaml b/.github/workflows/asertoor.yaml index 4519b55c7..51a6774a4 100644 --- a/.github/workflows/asertoor.yaml +++ b/.github/workflows/asertoor.yaml @@ -21,7 +21,7 @@ jobs: uses: ./.github/workflows/docker_build.yaml run-assertoor-tx-check: - name: Transaction & Stability Check + name: Transaction Stability Check runs-on: ubuntu-latest needs: [build] steps: @@ -37,7 +37,7 @@ jobs: run: | docker load --input /tmp/ethrex_image.tar - - name: Run assertoor tx tests + - name: Run assertoor uses: ethpandaops/kurtosis-assertoor-github-action@v1 with: kurtosis_version: '1.4.2' @@ -46,7 +46,7 @@ jobs: ethereum_package_args: './test_data/assertoor/network_params_tx.yaml' run-assertoor-blob-check: - name: Blobs & Stability Check + name: Blobs Stability Check runs-on: ubuntu-latest needs: [build] steps: @@ -62,7 +62,7 @@ jobs: run: | docker load --input /tmp/ethrex_image.tar - - name: Run assertoor tx tests + - name: Run assertoor uses: ethpandaops/kurtosis-assertoor-github-action@v1 with: kurtosis_version: '1.4.2' From e28ad04bd58cafc5a6b7b1afff4a9eff93badaba Mon Sep 17 00:00:00 2001 From: Rodrigo Oliveri Date: Mon, 25 Nov 2024 17:53:36 -0300 Subject: [PATCH 07/33] Fix an issue with naming of steps and reduce the tx spammer check timeout --- .github/workflows/asertoor.yaml | 12 ++++++------ test_data/assertoor/el-stability-check.yml | 2 +- 2 files changed, 7 insertions(+), 7 deletions(-) diff --git a/.github/workflows/asertoor.yaml b/.github/workflows/asertoor.yaml index 51a6774a4..ba98833fa 100644 --- a/.github/workflows/asertoor.yaml +++ b/.github/workflows/asertoor.yaml @@ -27,17 +27,17 @@ jobs: steps: - uses: actions/checkout@v4 - - name: Download artifacts + - name: Download artifacts (tx) uses: actions/download-artifact@v4 with: name: ethrex_image path: /tmp - - name: Load image + - name: Load image (tx) run: | docker load --input /tmp/ethrex_image.tar - - name: Run assertoor + - name: Run assertoor (tx) uses: ethpandaops/kurtosis-assertoor-github-action@v1 with: kurtosis_version: '1.4.2' @@ -52,17 +52,17 @@ jobs: steps: - uses: actions/checkout@v4 - - name: Download artifacts + - name: Download artifacts (blob) uses: actions/download-artifact@v4 with: name: ethrex_image path: /tmp - - name: Load image + - name: Load image (blob) run: | docker load --input /tmp/ethrex_image.tar - - name: Run assertoor + - name: Run assertoor (blob) uses: ethpandaops/kurtosis-assertoor-github-action@v1 with: kurtosis_version: '1.4.2' diff --git a/test_data/assertoor/el-stability-check.yml b/test_data/assertoor/el-stability-check.yml index d72e50fe2..cff0a3f64 100644 --- a/test_data/assertoor/el-stability-check.yml +++ b/test_data/assertoor/el-stability-check.yml @@ -48,7 +48,7 @@ tasks: - name: check_consensus_block_proposals title: "Check the tx spammer is working as expected for block proposal with >= 50 transactions" - timeout: 3m + timeout: 1m config: minTransactionCount: 50 configVars: From da44c8762886165e50eb2ce32933f2bd66e8c3ab Mon Sep 17 00:00:00 2001 From: Rodrigo Oliveri Date: Tue, 26 Nov 2024 00:00:21 -0300 Subject: [PATCH 08/33] Moved tx spammer check up in the stability check order --- test_data/assertoor/el-stability-check.yml | 18 +++++++++--------- 1 file changed, 9 insertions(+), 9 deletions(-) diff --git a/test_data/assertoor/el-stability-check.yml b/test_data/assertoor/el-stability-check.yml index cff0a3f64..85f3874cc 100644 --- a/test_data/assertoor/el-stability-check.yml +++ b/test_data/assertoor/el-stability-check.yml @@ -6,14 +6,14 @@ id: el-stability-check name: "Check Execution Stability" -timeout: 2h +timeout: 18m tasks: - name: check_clients_are_healthy title: "Check if all clients are ready" timeout: 1m - name: run_tasks_concurrent - title: "Check if all EL & CL clients are synced" + title: "Check if all EL & CL clients are synced and the tx spammer is working" timeout: 5m config: tasks: @@ -21,6 +21,12 @@ tasks: title: "Check if CL clients are synced" - name: check_execution_sync_status title: "Check if EL clients are synced" + - name: check_consensus_block_proposals + title: "Check the tx spammer is working as expected for block proposal with >= 50 transactions" + config: + minTransactionCount: 50 + configVars: + clientPattern: "1-ethrex-lighthouse" - name: run_task_matrix title: "Check block proposals from all client pairs" @@ -46,10 +52,4 @@ tasks: - name: check_consensus_forks title: "Check consensus forks" -- name: check_consensus_block_proposals - title: "Check the tx spammer is working as expected for block proposal with >= 50 transactions" - timeout: 1m - config: - minTransactionCount: 50 - configVars: - clientPattern: "1-ethrex-lighthouse" + From 8c405bdcc46a2484f7d25c3c092168c39bac1894 Mon Sep 17 00:00:00 2001 From: Rodrigo Oliveri Date: Tue, 26 Nov 2024 09:16:01 -0300 Subject: [PATCH 09/33] Change order of execution for the test, doing the stability one first --- .github/workflows/asertoor.yaml | 22 +++++++++++--------- test_data/assertoor/el-stability-check.yml | 2 +- test_data/assertoor/network_params_blob.yaml | 4 ++-- test_data/assertoor/network_params_tx.yaml | 4 ++-- 4 files changed, 17 insertions(+), 15 deletions(-) diff --git a/.github/workflows/asertoor.yaml b/.github/workflows/asertoor.yaml index ba98833fa..8be0a3f02 100644 --- a/.github/workflows/asertoor.yaml +++ b/.github/workflows/asertoor.yaml @@ -4,8 +4,8 @@ on: pull_request: branches: ["**"] paths-ignore: - - 'README.md' - - 'LICENSE' + - "README.md" + - "LICENSE" - "**/README.md" - "**/docs/**" @@ -40,10 +40,11 @@ jobs: - name: Run assertoor (tx) uses: ethpandaops/kurtosis-assertoor-github-action@v1 with: - kurtosis_version: '1.4.2' - ethereum_package_url: 'github.com/lambdaclass/ethereum-package' - ethereum_package_branch: 'ethrex-integration' - ethereum_package_args: './test_data/assertoor/network_params_tx.yaml' + enclave_name: "ethrex_assertoor_tx" + kurtosis_version: "1.4.2" + ethereum_package_url: "github.com/lambdaclass/ethereum-package" + ethereum_package_branch: "ethrex-integration" + ethereum_package_args: "./test_data/assertoor/network_params_tx.yaml" run-assertoor-blob-check: name: Blobs Stability Check @@ -65,9 +66,10 @@ jobs: - name: Run assertoor (blob) uses: ethpandaops/kurtosis-assertoor-github-action@v1 with: - kurtosis_version: '1.4.2' - ethereum_package_url: 'github.com/lambdaclass/ethereum-package' - ethereum_package_branch: 'ethrex-integration' - ethereum_package_args: './test_data/assertoor/network_params_blob.yaml' + enclave_name: "ethrex_assertoor_blob" + kurtosis_version: "1.4.2" + ethereum_package_url: "github.com/lambdaclass/ethereum-package" + ethereum_package_branch: "ethrex-integration" + ethereum_package_args: "./test_data/assertoor/network_params_blob.yaml" diff --git a/test_data/assertoor/el-stability-check.yml b/test_data/assertoor/el-stability-check.yml index 85f3874cc..e10ed4460 100644 --- a/test_data/assertoor/el-stability-check.yml +++ b/test_data/assertoor/el-stability-check.yml @@ -44,7 +44,7 @@ tasks: - name: run_tasks_concurrent title: "Check chain stability (reorgs and forks)" - timeout: 7m + timeout: 8m config: tasks: - name: check_consensus_reorgs diff --git a/test_data/assertoor/network_params_blob.yaml b/test_data/assertoor/network_params_blob.yaml index c06faeeb2..334fe0032 100644 --- a/test_data/assertoor/network_params_blob.yaml +++ b/test_data/assertoor/network_params_blob.yaml @@ -16,6 +16,6 @@ additional_services: assertoor_params: run_stability_check: false run_block_proposal_check: false - run_blob_transaction_test: true tests: - - 'https://raw.githubusercontent.com/lambdaclass/ethrex/refs/heads/assertoor-allaround-tx-check/test_data/assertoor/el-stability-check.yml' + - https://raw.githubusercontent.com/lambdaclass/ethrex/refs/heads/assertoor-allaround-tx-check/test_data/assertoor/el-stability-check.yml + - https://github.com/ethpandaops/assertoor-test/blob/master/assertoor-tests/blob-transactions-test.yaml diff --git a/test_data/assertoor/network_params_tx.yaml b/test_data/assertoor/network_params_tx.yaml index 0e5f2c945..69c57c586 100644 --- a/test_data/assertoor/network_params_tx.yaml +++ b/test_data/assertoor/network_params_tx.yaml @@ -16,6 +16,6 @@ additional_services: assertoor_params: run_stability_check: false run_block_proposal_check: false - run_transaction_test: true tests: - - 'https://raw.githubusercontent.com/lambdaclass/ethrex/refs/heads/assertoor-allaround-tx-check/test_data/assertoor/el-stability-check.yml' + - https://raw.githubusercontent.com/lambdaclass/ethrex/refs/heads/assertoor-allaround-tx-check/test_data/assertoor/el-stability-check.yml + - https://raw.githubusercontent.com/ethpandaops/assertoor-test/refs/heads/master/assertoor-tests/eoa-transactions-test.yaml From 89d3fe3e631dd0bc96fccf0b342a621ad72fc1a5 Mon Sep 17 00:00:00 2001 From: Rodrigo Oliveri Date: Tue, 26 Nov 2024 09:46:14 -0300 Subject: [PATCH 10/33] Change enclave name and point external tests to the assertoor repo --- .github/workflows/asertoor.yaml | 4 ++-- test_data/assertoor/network_params_blob.yaml | 2 +- test_data/assertoor/network_params_tx.yaml | 2 +- 3 files changed, 4 insertions(+), 4 deletions(-) diff --git a/.github/workflows/asertoor.yaml b/.github/workflows/asertoor.yaml index 8be0a3f02..b54b1aabf 100644 --- a/.github/workflows/asertoor.yaml +++ b/.github/workflows/asertoor.yaml @@ -40,7 +40,7 @@ jobs: - name: Run assertoor (tx) uses: ethpandaops/kurtosis-assertoor-github-action@v1 with: - enclave_name: "ethrex_assertoor_tx" + enclave_name: "ethrex-assertoor-tx" kurtosis_version: "1.4.2" ethereum_package_url: "github.com/lambdaclass/ethereum-package" ethereum_package_branch: "ethrex-integration" @@ -66,7 +66,7 @@ jobs: - name: Run assertoor (blob) uses: ethpandaops/kurtosis-assertoor-github-action@v1 with: - enclave_name: "ethrex_assertoor_blob" + enclave_name: "ethrex-assertoor-blob" kurtosis_version: "1.4.2" ethereum_package_url: "github.com/lambdaclass/ethereum-package" ethereum_package_branch: "ethrex-integration" diff --git a/test_data/assertoor/network_params_blob.yaml b/test_data/assertoor/network_params_blob.yaml index 334fe0032..8052bc4e2 100644 --- a/test_data/assertoor/network_params_blob.yaml +++ b/test_data/assertoor/network_params_blob.yaml @@ -18,4 +18,4 @@ assertoor_params: run_block_proposal_check: false tests: - https://raw.githubusercontent.com/lambdaclass/ethrex/refs/heads/assertoor-allaround-tx-check/test_data/assertoor/el-stability-check.yml - - https://github.com/ethpandaops/assertoor-test/blob/master/assertoor-tests/blob-transactions-test.yaml + - https://raw.githubusercontent.com/ethpandaops/assertoor/refs/heads/master/playbooks/stable/blob-transactions-test.yaml diff --git a/test_data/assertoor/network_params_tx.yaml b/test_data/assertoor/network_params_tx.yaml index 69c57c586..54941f698 100644 --- a/test_data/assertoor/network_params_tx.yaml +++ b/test_data/assertoor/network_params_tx.yaml @@ -18,4 +18,4 @@ assertoor_params: run_block_proposal_check: false tests: - https://raw.githubusercontent.com/lambdaclass/ethrex/refs/heads/assertoor-allaround-tx-check/test_data/assertoor/el-stability-check.yml - - https://raw.githubusercontent.com/ethpandaops/assertoor-test/refs/heads/master/assertoor-tests/eoa-transactions-test.yaml + - https://raw.githubusercontent.com/ethpandaops/assertoor/refs/heads/master/playbooks/stable/eoa-transactions-test.yaml From 8849c4538995f346fedd3ecb25d5125f935c4004 Mon Sep 17 00:00:00 2001 From: Rodrigo Oliveri Date: Tue, 26 Nov 2024 10:50:08 -0300 Subject: [PATCH 11/33] Added big call data tx check to the tx step and removed the stability one --- test_data/assertoor/network_params_blob.yaml | 2 +- test_data/assertoor/network_params_tx.yaml | 3 +-- 2 files changed, 2 insertions(+), 3 deletions(-) diff --git a/test_data/assertoor/network_params_blob.yaml b/test_data/assertoor/network_params_blob.yaml index 8052bc4e2..e034e3c18 100644 --- a/test_data/assertoor/network_params_blob.yaml +++ b/test_data/assertoor/network_params_blob.yaml @@ -17,5 +17,5 @@ assertoor_params: run_stability_check: false run_block_proposal_check: false tests: - - https://raw.githubusercontent.com/lambdaclass/ethrex/refs/heads/assertoor-allaround-tx-check/test_data/assertoor/el-stability-check.yml - https://raw.githubusercontent.com/ethpandaops/assertoor/refs/heads/master/playbooks/stable/blob-transactions-test.yaml + - https://raw.githubusercontent.com/lambdaclass/ethrex/refs/heads/assertoor-allaround-tx-check/test_data/assertoor/el-stability-check.yml diff --git a/test_data/assertoor/network_params_tx.yaml b/test_data/assertoor/network_params_tx.yaml index 54941f698..ce57c926e 100644 --- a/test_data/assertoor/network_params_tx.yaml +++ b/test_data/assertoor/network_params_tx.yaml @@ -11,11 +11,10 @@ participants: additional_services: - assertoor - - tx_spammer assertoor_params: run_stability_check: false run_block_proposal_check: false tests: - - https://raw.githubusercontent.com/lambdaclass/ethrex/refs/heads/assertoor-allaround-tx-check/test_data/assertoor/el-stability-check.yml - https://raw.githubusercontent.com/ethpandaops/assertoor/refs/heads/master/playbooks/stable/eoa-transactions-test.yaml + - https://raw.githubusercontent.com/ethpandaops/assertoor/refs/heads/master/playbooks/stable/big-calldata-tx-test.yaml From d64cc7d308a42b3c5a575d03a5febec2dc72228f Mon Sep 17 00:00:00 2001 From: Rodrigo Oliveri Date: Tue, 26 Nov 2024 10:51:27 -0300 Subject: [PATCH 12/33] Fixed some naming in the assertoor yaml --- .github/workflows/asertoor.yaml | 16 ++++++++-------- 1 file changed, 8 insertions(+), 8 deletions(-) diff --git a/.github/workflows/asertoor.yaml b/.github/workflows/asertoor.yaml index b54b1aabf..becb3703a 100644 --- a/.github/workflows/asertoor.yaml +++ b/.github/workflows/asertoor.yaml @@ -21,23 +21,23 @@ jobs: uses: ./.github/workflows/docker_build.yaml run-assertoor-tx-check: - name: Transaction Stability Check + name: Transaction Check runs-on: ubuntu-latest needs: [build] steps: - uses: actions/checkout@v4 - - name: Download artifacts (tx) + - name: Download artifacts uses: actions/download-artifact@v4 with: name: ethrex_image path: /tmp - - name: Load image (tx) + - name: Load image run: | docker load --input /tmp/ethrex_image.tar - - name: Run assertoor (tx) + - name: Run assertoor uses: ethpandaops/kurtosis-assertoor-github-action@v1 with: enclave_name: "ethrex-assertoor-tx" @@ -47,23 +47,23 @@ jobs: ethereum_package_args: "./test_data/assertoor/network_params_tx.yaml" run-assertoor-blob-check: - name: Blobs Stability Check + name: Blobs & Stability Check runs-on: ubuntu-latest needs: [build] steps: - uses: actions/checkout@v4 - - name: Download artifacts (blob) + - name: Download artifacts uses: actions/download-artifact@v4 with: name: ethrex_image path: /tmp - - name: Load image (blob) + - name: Load image run: | docker load --input /tmp/ethrex_image.tar - - name: Run assertoor (blob) + - name: Run assertoor uses: ethpandaops/kurtosis-assertoor-github-action@v1 with: enclave_name: "ethrex-assertoor-blob" From 35a09ba92273a0f1534aedea7dfda34597c59bd5 Mon Sep 17 00:00:00 2001 From: Rodrigo Oliveri Date: Tue, 26 Nov 2024 12:36:24 -0300 Subject: [PATCH 13/33] Limit the number of Transactions to check in big-calldata test --- test_data/assertoor/network_params_tx.yaml | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/test_data/assertoor/network_params_tx.yaml b/test_data/assertoor/network_params_tx.yaml index ce57c926e..dc53a000d 100644 --- a/test_data/assertoor/network_params_tx.yaml +++ b/test_data/assertoor/network_params_tx.yaml @@ -17,4 +17,6 @@ assertoor_params: run_block_proposal_check: false tests: - https://raw.githubusercontent.com/ethpandaops/assertoor/refs/heads/master/playbooks/stable/eoa-transactions-test.yaml - - https://raw.githubusercontent.com/ethpandaops/assertoor/refs/heads/master/playbooks/stable/big-calldata-tx-test.yaml + - file: https://raw.githubusercontent.com/ethpandaops/assertoor/refs/heads/master/playbooks/stable/big-calldata-tx-test.yaml + config: + transactionCount: 60 From 132660f42a8e96983160d6a0bb31f756f943b405 Mon Sep 17 00:00:00 2001 From: Rodrigo Oliveri Date: Tue, 26 Nov 2024 12:47:34 -0300 Subject: [PATCH 14/33] Added all the config necesary to a complete run of the big-calldata check --- test_data/assertoor/network_params_tx.yaml | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/test_data/assertoor/network_params_tx.yaml b/test_data/assertoor/network_params_tx.yaml index dc53a000d..115f380b0 100644 --- a/test_data/assertoor/network_params_tx.yaml +++ b/test_data/assertoor/network_params_tx.yaml @@ -19,4 +19,8 @@ assertoor_params: - https://raw.githubusercontent.com/ethpandaops/assertoor/refs/heads/master/playbooks/stable/eoa-transactions-test.yaml - file: https://raw.githubusercontent.com/ethpandaops/assertoor/refs/heads/master/playbooks/stable/big-calldata-tx-test.yaml config: - transactionCount: 60 + walletPrivkey: "" + transactionCount: 100 + transactionsPerBlock: 10 + calldataSize: 1000 + transactionGasLimit: 5000000 From bb07c81db3e13b436127558d5dfa6abb4b884ec5 Mon Sep 17 00:00:00 2001 From: Rodrigo Oliveri Date: Tue, 26 Nov 2024 12:49:31 -0300 Subject: [PATCH 15/33] Moved the file reference to param checks when possible --- test_data/assertoor/network_params_blob.yaml | 2 +- test_data/assertoor/network_params_tx.yaml | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/test_data/assertoor/network_params_blob.yaml b/test_data/assertoor/network_params_blob.yaml index e034e3c18..b6e4d4cd5 100644 --- a/test_data/assertoor/network_params_blob.yaml +++ b/test_data/assertoor/network_params_blob.yaml @@ -16,6 +16,6 @@ additional_services: assertoor_params: run_stability_check: false run_block_proposal_check: false + run_blob_transaction_check: true tests: - - https://raw.githubusercontent.com/ethpandaops/assertoor/refs/heads/master/playbooks/stable/blob-transactions-test.yaml - https://raw.githubusercontent.com/lambdaclass/ethrex/refs/heads/assertoor-allaround-tx-check/test_data/assertoor/el-stability-check.yml diff --git a/test_data/assertoor/network_params_tx.yaml b/test_data/assertoor/network_params_tx.yaml index 115f380b0..dc8208a9a 100644 --- a/test_data/assertoor/network_params_tx.yaml +++ b/test_data/assertoor/network_params_tx.yaml @@ -15,8 +15,8 @@ additional_services: assertoor_params: run_stability_check: false run_block_proposal_check: false + run_transaction_check: true tests: - - https://raw.githubusercontent.com/ethpandaops/assertoor/refs/heads/master/playbooks/stable/eoa-transactions-test.yaml - file: https://raw.githubusercontent.com/ethpandaops/assertoor/refs/heads/master/playbooks/stable/big-calldata-tx-test.yaml config: walletPrivkey: "" From 596a60d5e7aa226125ad1143736a5b728b84fc69 Mon Sep 17 00:00:00 2001 From: Rodrigo Oliveri Date: Tue, 26 Nov 2024 15:16:36 -0300 Subject: [PATCH 16/33] Re,moved the walletPrivkey to take one by default --- test_data/assertoor/network_params_tx.yaml | 1 - 1 file changed, 1 deletion(-) diff --git a/test_data/assertoor/network_params_tx.yaml b/test_data/assertoor/network_params_tx.yaml index dc8208a9a..37ac3939c 100644 --- a/test_data/assertoor/network_params_tx.yaml +++ b/test_data/assertoor/network_params_tx.yaml @@ -19,7 +19,6 @@ assertoor_params: tests: - file: https://raw.githubusercontent.com/ethpandaops/assertoor/refs/heads/master/playbooks/stable/big-calldata-tx-test.yaml config: - walletPrivkey: "" transactionCount: 100 transactionsPerBlock: 10 calldataSize: 1000 From 1ea0bbac243f1f900b04c24640cdcfd7b432c879 Mon Sep 17 00:00:00 2001 From: Rodrigo Oliveri Date: Tue, 26 Nov 2024 16:11:04 -0300 Subject: [PATCH 17/33] Reduce the number of transactionCount in the big_calldata check --- test_data/assertoor/network_params_tx.yaml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/test_data/assertoor/network_params_tx.yaml b/test_data/assertoor/network_params_tx.yaml index 37ac3939c..e396479f4 100644 --- a/test_data/assertoor/network_params_tx.yaml +++ b/test_data/assertoor/network_params_tx.yaml @@ -19,7 +19,7 @@ assertoor_params: tests: - file: https://raw.githubusercontent.com/ethpandaops/assertoor/refs/heads/master/playbooks/stable/big-calldata-tx-test.yaml config: - transactionCount: 100 - transactionsPerBlock: 10 + transactionCount: 25 + transactionsPerBlock: 5 calldataSize: 1000 transactionGasLimit: 5000000 From 2c0c51c10ad623f33f56c0000d02e4c4102434a3 Mon Sep 17 00:00:00 2001 From: Rodrigo Oliveri Date: Tue, 26 Nov 2024 16:44:33 -0300 Subject: [PATCH 18/33] Check having an individual version of the big call-data test --- test_data/assertoor/el-big-calldata-check.yml | 82 +++++++++++++++++++ test_data/assertoor/el-stability-check.yml | 5 ++ test_data/assertoor/network_params_tx.yaml | 2 +- 3 files changed, 88 insertions(+), 1 deletion(-) create mode 100644 test_data/assertoor/el-big-calldata-check.yml diff --git a/test_data/assertoor/el-big-calldata-check.yml b/test_data/assertoor/el-big-calldata-check.yml new file mode 100644 index 000000000..0d982c25d --- /dev/null +++ b/test_data/assertoor/el-big-calldata-check.yml @@ -0,0 +1,82 @@ +# This file is a modified version of the `big-calldata-tx-test` playbooks: +# - https://github.com/ethpandaops/assertoor-test/blob/master/assertoor-tests/big-calldata-tx-test.yaml +# +# For reference on each individual check see: https://github.com/ethpandaops/assertoor/wiki#supported-tasks-in-assertoor + +id: big-calldata-tx-test +name: "Big Calldata TX Test" +timeout: 30m +config: + walletPrivkey: "" + transactionCount: 18 + transactionsPerBlock: 5 + calldataSize: 1000 + transactionGasLimit: 5000000 +tasks: +- name: check_clients_are_healthy + title: "Check if at least one client is ready" + timeout: 5m + config: + minClientCount: 1 + +# generate calldata +- name: run_shell + title: "Run shell command" + config: + shell: "bash" + envVars: + calldataSize: "calldataSize" + command: | + echo "Generate calldata with $calldataSize zero bytes" + calldata="0x$(eval "printf '00%.0s' {1..$calldataSize}")" + echo "::set-var calldata $calldata" + echo "yea" + +- name: check_consensus_sync_status + title: "Wait for chain activity (slot >= 5)" + timeout: 2m + config: + minSlotHeight: 5 + +# send big calldata transactions +- name: generate_eoa_transactions + title: "Send ${transactionCount} big calldata transactions" + config: + refillMinBalance: 1000000000000000000000 # 1000 ETH + randomTarget: true + amount: 0 + awaitReceipt: true + configVars: + # max 100 pending tx per wallet to avoid nonce gap limits + childWallets: "| [1, (.transactionCount / 100) | round] | max" + limitTotal: "transactionCount" + limitPerBlock: "transactionsPerBlock" + limitPending: "transactionsPerBlock" + privateKey: "walletPrivkey" + gasLimit: "transactionGasLimit" + callData: "calldata" + +- name: "sleep" + title: "Wait 30sec to clear up pending transactions" + config: + duration: 30s + +- name: run_tasks_concurrent + title: "Check chain stability" + timeout: 15m + config: + tasks: + - name: check_consensus_finality + title: "Check consensus chain finality" + config: + minFinalizedEpochs: 1 + maxUnfinalizedEpochs: 2 + - name: check_consensus_attestation_stats + title: "Check consensus attestation stats" + config: + minTargetPercent: 98 + minHeadPercent: 80 + - name: check_consensus_reorgs + title: "Check consensus reorgs" + - name: check_consensus_forks + title: "Check consensus forks" diff --git a/test_data/assertoor/el-stability-check.yml b/test_data/assertoor/el-stability-check.yml index e10ed4460..179d2a06b 100644 --- a/test_data/assertoor/el-stability-check.yml +++ b/test_data/assertoor/el-stability-check.yml @@ -47,6 +47,11 @@ tasks: timeout: 8m config: tasks: + - name: check_consensus_attestation_stats + title: "Check consensus attestation stats" + config: + minTargetPercent: 98 + minHeadPercent: 80 - name: check_consensus_reorgs title: "Check consensus reorgs" - name: check_consensus_forks diff --git a/test_data/assertoor/network_params_tx.yaml b/test_data/assertoor/network_params_tx.yaml index e396479f4..16edc3cbb 100644 --- a/test_data/assertoor/network_params_tx.yaml +++ b/test_data/assertoor/network_params_tx.yaml @@ -19,7 +19,7 @@ assertoor_params: tests: - file: https://raw.githubusercontent.com/ethpandaops/assertoor/refs/heads/master/playbooks/stable/big-calldata-tx-test.yaml config: - transactionCount: 25 + transactionCount: 18 transactionsPerBlock: 5 calldataSize: 1000 transactionGasLimit: 5000000 From 3381d2bddf94fb1e4b1aa6c0baa5e1acc92366a0 Mon Sep 17 00:00:00 2001 From: Rodrigo Oliveri Date: Tue, 26 Nov 2024 16:55:38 -0300 Subject: [PATCH 19/33] Fixed the reference to the new custom big-calldata check --- test_data/assertoor/network_params_tx.yaml | 7 +------ 1 file changed, 1 insertion(+), 6 deletions(-) diff --git a/test_data/assertoor/network_params_tx.yaml b/test_data/assertoor/network_params_tx.yaml index 16edc3cbb..73e0080f0 100644 --- a/test_data/assertoor/network_params_tx.yaml +++ b/test_data/assertoor/network_params_tx.yaml @@ -17,9 +17,4 @@ assertoor_params: run_block_proposal_check: false run_transaction_check: true tests: - - file: https://raw.githubusercontent.com/ethpandaops/assertoor/refs/heads/master/playbooks/stable/big-calldata-tx-test.yaml - config: - transactionCount: 18 - transactionsPerBlock: 5 - calldataSize: 1000 - transactionGasLimit: 5000000 + - https://raw.githubusercontent.com/lambdaclass/ethrex/refs/heads/assertoor-allaround-tx-check/test_data/assertoor/el-big-calldata-check.yml From f76c491700f1feda7741c7bd6b85d1e34493f49f Mon Sep 17 00:00:00 2001 From: Rodrigo Oliveri Date: Tue, 26 Nov 2024 17:20:13 -0300 Subject: [PATCH 20/33] Re,oved finality checks due to timing --- test_data/assertoor/el-big-calldata-check.yml | 10 ---------- test_data/assertoor/el-stability-check.yml | 7 +------ 2 files changed, 1 insertion(+), 16 deletions(-) diff --git a/test_data/assertoor/el-big-calldata-check.yml b/test_data/assertoor/el-big-calldata-check.yml index 0d982c25d..f195a0ae5 100644 --- a/test_data/assertoor/el-big-calldata-check.yml +++ b/test_data/assertoor/el-big-calldata-check.yml @@ -66,16 +66,6 @@ tasks: timeout: 15m config: tasks: - - name: check_consensus_finality - title: "Check consensus chain finality" - config: - minFinalizedEpochs: 1 - maxUnfinalizedEpochs: 2 - - name: check_consensus_attestation_stats - title: "Check consensus attestation stats" - config: - minTargetPercent: 98 - minHeadPercent: 80 - name: check_consensus_reorgs title: "Check consensus reorgs" - name: check_consensus_forks diff --git a/test_data/assertoor/el-stability-check.yml b/test_data/assertoor/el-stability-check.yml index 179d2a06b..85f3874cc 100644 --- a/test_data/assertoor/el-stability-check.yml +++ b/test_data/assertoor/el-stability-check.yml @@ -44,14 +44,9 @@ tasks: - name: run_tasks_concurrent title: "Check chain stability (reorgs and forks)" - timeout: 8m + timeout: 7m config: tasks: - - name: check_consensus_attestation_stats - title: "Check consensus attestation stats" - config: - minTargetPercent: 98 - minHeadPercent: 80 - name: check_consensus_reorgs title: "Check consensus reorgs" - name: check_consensus_forks From 7b071bc4ac09c7cd7d1a7bf3d2e175ab546decb0 Mon Sep 17 00:00:00 2001 From: Rodrigo Oliveri Date: Tue, 26 Nov 2024 19:38:52 -0300 Subject: [PATCH 21/33] Fixed transaction test names and reduced big calldata tx count --- test_data/assertoor/el-big-calldata-check.yml | 4 ++-- test_data/assertoor/network_params_blob.yaml | 2 +- test_data/assertoor/network_params_tx.yaml | 2 +- 3 files changed, 4 insertions(+), 4 deletions(-) diff --git a/test_data/assertoor/el-big-calldata-check.yml b/test_data/assertoor/el-big-calldata-check.yml index f195a0ae5..454e642e6 100644 --- a/test_data/assertoor/el-big-calldata-check.yml +++ b/test_data/assertoor/el-big-calldata-check.yml @@ -8,8 +8,8 @@ name: "Big Calldata TX Test" timeout: 30m config: walletPrivkey: "" - transactionCount: 18 - transactionsPerBlock: 5 + transactionCount: 10 + transactionsPerBlock: 2 calldataSize: 1000 transactionGasLimit: 5000000 tasks: diff --git a/test_data/assertoor/network_params_blob.yaml b/test_data/assertoor/network_params_blob.yaml index b6e4d4cd5..36cd1fe7e 100644 --- a/test_data/assertoor/network_params_blob.yaml +++ b/test_data/assertoor/network_params_blob.yaml @@ -16,6 +16,6 @@ additional_services: assertoor_params: run_stability_check: false run_block_proposal_check: false - run_blob_transaction_check: true + run_blob_transaction_test: true tests: - https://raw.githubusercontent.com/lambdaclass/ethrex/refs/heads/assertoor-allaround-tx-check/test_data/assertoor/el-stability-check.yml diff --git a/test_data/assertoor/network_params_tx.yaml b/test_data/assertoor/network_params_tx.yaml index 73e0080f0..f6a863c7d 100644 --- a/test_data/assertoor/network_params_tx.yaml +++ b/test_data/assertoor/network_params_tx.yaml @@ -15,6 +15,6 @@ additional_services: assertoor_params: run_stability_check: false run_block_proposal_check: false - run_transaction_check: true + run_transaction_test: true tests: - https://raw.githubusercontent.com/lambdaclass/ethrex/refs/heads/assertoor-allaround-tx-check/test_data/assertoor/el-big-calldata-check.yml From 6cc4fd42b9211898e9ffef7a8faaca9eb55a8db9 Mon Sep 17 00:00:00 2001 From: Rodrigo Oliveri Date: Tue, 26 Nov 2024 20:24:31 -0300 Subject: [PATCH 22/33] Removed big calldata check due to timing --- test_data/assertoor/el-big-calldata-check.yml | 72 ------------------- test_data/assertoor/network_params_tx.yaml | 2 - 2 files changed, 74 deletions(-) delete mode 100644 test_data/assertoor/el-big-calldata-check.yml diff --git a/test_data/assertoor/el-big-calldata-check.yml b/test_data/assertoor/el-big-calldata-check.yml deleted file mode 100644 index 454e642e6..000000000 --- a/test_data/assertoor/el-big-calldata-check.yml +++ /dev/null @@ -1,72 +0,0 @@ -# This file is a modified version of the `big-calldata-tx-test` playbooks: -# - https://github.com/ethpandaops/assertoor-test/blob/master/assertoor-tests/big-calldata-tx-test.yaml -# -# For reference on each individual check see: https://github.com/ethpandaops/assertoor/wiki#supported-tasks-in-assertoor - -id: big-calldata-tx-test -name: "Big Calldata TX Test" -timeout: 30m -config: - walletPrivkey: "" - transactionCount: 10 - transactionsPerBlock: 2 - calldataSize: 1000 - transactionGasLimit: 5000000 -tasks: -- name: check_clients_are_healthy - title: "Check if at least one client is ready" - timeout: 5m - config: - minClientCount: 1 - -# generate calldata -- name: run_shell - title: "Run shell command" - config: - shell: "bash" - envVars: - calldataSize: "calldataSize" - command: | - echo "Generate calldata with $calldataSize zero bytes" - calldata="0x$(eval "printf '00%.0s' {1..$calldataSize}")" - echo "::set-var calldata $calldata" - echo "yea" - -- name: check_consensus_sync_status - title: "Wait for chain activity (slot >= 5)" - timeout: 2m - config: - minSlotHeight: 5 - -# send big calldata transactions -- name: generate_eoa_transactions - title: "Send ${transactionCount} big calldata transactions" - config: - refillMinBalance: 1000000000000000000000 # 1000 ETH - randomTarget: true - amount: 0 - awaitReceipt: true - configVars: - # max 100 pending tx per wallet to avoid nonce gap limits - childWallets: "| [1, (.transactionCount / 100) | round] | max" - limitTotal: "transactionCount" - limitPerBlock: "transactionsPerBlock" - limitPending: "transactionsPerBlock" - privateKey: "walletPrivkey" - gasLimit: "transactionGasLimit" - callData: "calldata" - -- name: "sleep" - title: "Wait 30sec to clear up pending transactions" - config: - duration: 30s - -- name: run_tasks_concurrent - title: "Check chain stability" - timeout: 15m - config: - tasks: - - name: check_consensus_reorgs - title: "Check consensus reorgs" - - name: check_consensus_forks - title: "Check consensus forks" diff --git a/test_data/assertoor/network_params_tx.yaml b/test_data/assertoor/network_params_tx.yaml index f6a863c7d..8092bdfef 100644 --- a/test_data/assertoor/network_params_tx.yaml +++ b/test_data/assertoor/network_params_tx.yaml @@ -16,5 +16,3 @@ assertoor_params: run_stability_check: false run_block_proposal_check: false run_transaction_test: true - tests: - - https://raw.githubusercontent.com/lambdaclass/ethrex/refs/heads/assertoor-allaround-tx-check/test_data/assertoor/el-big-calldata-check.yml From fc02054cd9972b06bbb232af6db50ca26b75fd85 Mon Sep 17 00:00:00 2001 From: Rodrigo Oliveri Date: Wed, 27 Nov 2024 17:43:10 -0300 Subject: [PATCH 23/33] Removed the now duplicated assertoor.yaml --- .github/workflows/asertoor.yaml | 76 --------------------------------- 1 file changed, 76 deletions(-) delete mode 100644 .github/workflows/asertoor.yaml diff --git a/.github/workflows/asertoor.yaml b/.github/workflows/asertoor.yaml deleted file mode 100644 index 2b603fec1..000000000 --- a/.github/workflows/asertoor.yaml +++ /dev/null @@ -1,76 +0,0 @@ -name: Assertoor -on: - pull_request: - branches: ["**"] - paths-ignore: - - "README.md" - - "LICENSE" - - "**/README.md" - - "**/docs/**" - - "crates/vm/levm/**" - - "crates/l2/**" - -concurrency: - group: ${{ github.workflow }}-${{ github.head_ref || github.run_id }} - cancel-in-progress: true - -env: - RUST_VERSION: 1.80.1 - -jobs: - build: - uses: ./.github/workflows/docker_build.yaml - - run-assertoor-tx-check: - name: Transaction Check - runs-on: ubuntu-latest - needs: [build] - steps: - - uses: actions/checkout@v4 - - - name: Download artifacts - uses: actions/download-artifact@v4 - with: - name: ethrex_image - path: /tmp - - - name: Load image - run: | - docker load --input /tmp/ethrex_image.tar - - - name: Run assertoor - uses: ethpandaops/kurtosis-assertoor-github-action@v1 - with: - enclave_name: "ethrex-assertoor-tx" - kurtosis_version: "1.4.2" - ethereum_package_url: "github.com/lambdaclass/ethereum-package" - ethereum_package_branch: "ethrex-integration" - ethereum_package_args: "./test_data/assertoor/network_params_tx.yaml" - - run-assertoor-blob-check: - name: Blobs & Stability Check - runs-on: ubuntu-latest - needs: [build] - steps: - - uses: actions/checkout@v4 - - - name: Download artifacts - uses: actions/download-artifact@v4 - with: - name: ethrex_image - path: /tmp - - - name: Load image - run: | - docker load --input /tmp/ethrex_image.tar - - - name: Run assertoor - uses: ethpandaops/kurtosis-assertoor-github-action@v1 - with: - enclave_name: "ethrex-assertoor-blob" - kurtosis_version: "1.4.2" - ethereum_package_url: "github.com/lambdaclass/ethereum-package" - ethereum_package_branch: "ethrex-integration" - ethereum_package_args: "./test_data/assertoor/network_params_blob.yaml" - - From d56efe67438a3c8d140c2f1c95e4ac3f25202dcb Mon Sep 17 00:00:00 2001 From: Rodrigo Oliveri Date: Wed, 27 Nov 2024 17:46:27 -0300 Subject: [PATCH 24/33] Fix an issue in the integration yaml --- .github/workflows/integration.yaml | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/.github/workflows/integration.yaml b/.github/workflows/integration.yaml index 6cc5e1158..706aa2b5c 100644 --- a/.github/workflows/integration.yaml +++ b/.github/workflows/integration.yaml @@ -38,8 +38,7 @@ jobs: name: ethrex_image path: /tmp/ethrex_image.tar - run-assertoor: -run-assertoor-tx-check: + run-assertoor-tx-check: name: Assertoor - Transaction Check runs-on: ubuntu-latest needs: [docker_build] From 556c2d7567b4892802285176e87b35fcc96348a9 Mon Sep 17 00:00:00 2001 From: Rodrigo Oliveri Date: Wed, 27 Nov 2024 20:13:50 -0300 Subject: [PATCH 25/33] Fixed the issue present today regarding prism and kurtosis --- test_data/assertoor/network_params_blob.yaml | 2 +- test_data/assertoor/network_params_tx.yaml | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/test_data/assertoor/network_params_blob.yaml b/test_data/assertoor/network_params_blob.yaml index 36cd1fe7e..532b8082b 100644 --- a/test_data/assertoor/network_params_blob.yaml +++ b/test_data/assertoor/network_params_blob.yaml @@ -6,7 +6,7 @@ participants: cl_type: lighthouse validator_count: 32 - el_type: geth - cl_type: prysm + cl_type: lighthouse validator_count: 32 additional_services: diff --git a/test_data/assertoor/network_params_tx.yaml b/test_data/assertoor/network_params_tx.yaml index 8092bdfef..de5c1b654 100644 --- a/test_data/assertoor/network_params_tx.yaml +++ b/test_data/assertoor/network_params_tx.yaml @@ -6,7 +6,7 @@ participants: cl_type: lighthouse validator_count: 32 - el_type: geth - cl_type: prysm + cl_type: lighthouse validator_count: 32 additional_services: From d7559bb33b033acc63d20211927218db63d99a90 Mon Sep 17 00:00:00 2001 From: Rodrigo Oliveri Date: Thu, 28 Nov 2024 12:52:31 -0300 Subject: [PATCH 26/33] Moved GHA assertoor related yamls inside the .github folder --- .../config}/assertoor/el-stability-check.yml | 0 .../config}/assertoor/network_params_blob.yaml | 2 +- .../config}/assertoor/network_params_tx.yaml | 0 .github/workflows/integration.yaml | 4 ++-- 4 files changed, 3 insertions(+), 3 deletions(-) rename {test_data => .github/config}/assertoor/el-stability-check.yml (100%) rename {test_data => .github/config}/assertoor/network_params_blob.yaml (84%) rename {test_data => .github/config}/assertoor/network_params_tx.yaml (100%) diff --git a/test_data/assertoor/el-stability-check.yml b/.github/config/assertoor/el-stability-check.yml similarity index 100% rename from test_data/assertoor/el-stability-check.yml rename to .github/config/assertoor/el-stability-check.yml diff --git a/test_data/assertoor/network_params_blob.yaml b/.github/config/assertoor/network_params_blob.yaml similarity index 84% rename from test_data/assertoor/network_params_blob.yaml rename to .github/config/assertoor/network_params_blob.yaml index 532b8082b..237bf5b32 100644 --- a/test_data/assertoor/network_params_blob.yaml +++ b/.github/config/assertoor/network_params_blob.yaml @@ -18,4 +18,4 @@ assertoor_params: run_block_proposal_check: false run_blob_transaction_test: true tests: - - https://raw.githubusercontent.com/lambdaclass/ethrex/refs/heads/assertoor-allaround-tx-check/test_data/assertoor/el-stability-check.yml + - https://raw.githubusercontent.com/lambdaclass/ethrex/refs/heads/assertoor-allaround-tx-check/.github/config/assertoor/el-stability-check.yml diff --git a/test_data/assertoor/network_params_tx.yaml b/.github/config/assertoor/network_params_tx.yaml similarity index 100% rename from test_data/assertoor/network_params_tx.yaml rename to .github/config/assertoor/network_params_tx.yaml diff --git a/.github/workflows/integration.yaml b/.github/workflows/integration.yaml index 706aa2b5c..84ce40e20 100644 --- a/.github/workflows/integration.yaml +++ b/.github/workflows/integration.yaml @@ -62,7 +62,7 @@ jobs: kurtosis_version: "1.4.2" ethereum_package_url: "github.com/lambdaclass/ethereum-package" ethereum_package_branch: "ethrex-integration" - ethereum_package_args: "./test_data/assertoor/network_params_tx.yaml" + ethereum_package_args: "./.github/config/assertoor/network_params_tx.yaml" run-assertoor-blob-check: name: Assertoor - Blobs & Stability Check @@ -88,7 +88,7 @@ jobs: kurtosis_version: "1.4.2" ethereum_package_url: "github.com/lambdaclass/ethereum-package" ethereum_package_branch: "ethrex-integration" - ethereum_package_args: "./test_data/assertoor/network_params_blob.yaml" + ethereum_package_args: "./.github/config/assertoor/network_params_blob.yaml" run-hive: name: Hive - ${{ matrix.name }} From e0ba0bac862d70eddaaaf0f6850ad0079c691c78 Mon Sep 17 00:00:00 2001 From: Rodrigo Oliveri Date: Thu, 28 Nov 2024 14:33:53 -0300 Subject: [PATCH 27/33] Reduce the ammount of nodes in the tx execution test --- .github/config/assertoor/network_params_tx.yaml | 3 --- 1 file changed, 3 deletions(-) diff --git a/.github/config/assertoor/network_params_tx.yaml b/.github/config/assertoor/network_params_tx.yaml index de5c1b654..ed09bcefd 100644 --- a/.github/config/assertoor/network_params_tx.yaml +++ b/.github/config/assertoor/network_params_tx.yaml @@ -5,9 +5,6 @@ participants: - el_type: geth cl_type: lighthouse validator_count: 32 - - el_type: geth - cl_type: lighthouse - validator_count: 32 additional_services: - assertoor From dcbed778216e34f1d2d1dc81129c66e835240490 Mon Sep 17 00:00:00 2001 From: Rodrigo Oliveri Date: Thu, 28 Nov 2024 15:02:33 -0300 Subject: [PATCH 28/33] Check if the stable version works better than the assertoor one through params --- .github/config/assertoor/network_params_blob.yaml | 2 +- .github/config/assertoor/network_params_tx.yaml | 3 ++- 2 files changed, 3 insertions(+), 2 deletions(-) diff --git a/.github/config/assertoor/network_params_blob.yaml b/.github/config/assertoor/network_params_blob.yaml index 237bf5b32..8515ce7e5 100644 --- a/.github/config/assertoor/network_params_blob.yaml +++ b/.github/config/assertoor/network_params_blob.yaml @@ -16,6 +16,6 @@ additional_services: assertoor_params: run_stability_check: false run_block_proposal_check: false - run_blob_transaction_test: true tests: + - https://raw.githubusercontent.com/ethpandaops/assertoor/refs/heads/master/playbooks/stable/blob-transactions-test.yaml - https://raw.githubusercontent.com/lambdaclass/ethrex/refs/heads/assertoor-allaround-tx-check/.github/config/assertoor/el-stability-check.yml diff --git a/.github/config/assertoor/network_params_tx.yaml b/.github/config/assertoor/network_params_tx.yaml index ed09bcefd..a909c5681 100644 --- a/.github/config/assertoor/network_params_tx.yaml +++ b/.github/config/assertoor/network_params_tx.yaml @@ -12,4 +12,5 @@ additional_services: assertoor_params: run_stability_check: false run_block_proposal_check: false - run_transaction_test: true + tests: + - https://raw.githubusercontent.com/ethpandaops/assertoor/refs/heads/master/playbooks/stable/eoa-transactions-test.yaml From 53d781f124136bccad838c07c054531dfaa7edf9 Mon Sep 17 00:00:00 2001 From: Rodrigo Oliveri Date: Thu, 28 Nov 2024 16:31:45 -0300 Subject: [PATCH 29/33] Check if we can add the big-calldata again now that the transaction test last just 7m --- .../assertoor/el-big-calldata-check.yml | 72 +++++++++++++++++++ .../config/assertoor/network_params_tx.yaml | 1 + 2 files changed, 73 insertions(+) create mode 100644 .github/config/assertoor/el-big-calldata-check.yml diff --git a/.github/config/assertoor/el-big-calldata-check.yml b/.github/config/assertoor/el-big-calldata-check.yml new file mode 100644 index 000000000..698ae65ff --- /dev/null +++ b/.github/config/assertoor/el-big-calldata-check.yml @@ -0,0 +1,72 @@ +# This file based upon the `big-calldata` playbook: +# - https://github.com/ethpandaops/assertoor/blob/master/playbooks/stable/big-calldata-tx-test.yaml +# +# For reference on each individual check see: https://github.com/ethpandaops/assertoor/wiki#supported-tasks-in-assertoor + +id: big-calldata-tx-test +name: "Big Calldata TX Test" +timeout: 30m +config: + walletPrivkey: "" + transactionCount: 20 + transactionsPerBlock: 5 + calldataSize: 1000 + transactionGasLimit: 5000000 +tasks: +- name: check_clients_are_healthy + title: "Check if at least one client is ready" + timeout: 5m + config: + minClientCount: 1 + +# generate calldata +- name: run_shell + title: "Run shell command" + config: + shell: "bash" + envVars: + calldataSize: "calldataSize" + command: | + echo "Generate calldata with $calldataSize zero bytes" + calldata="0x$(eval "printf '00%.0s' {1..$calldataSize}")" + echo "::set-var calldata $calldata" + echo "yea" + +- name: check_consensus_sync_status + title: "Wait for chain activity (slot >= 5)" + timeout: 1h + config: + minSlotHeight: 5 + +# send big calldata transactions +- name: generate_eoa_transactions + title: "Send ${transactionCount} big calldata transactions" + config: + refillMinBalance: 1000000000000000000000 # 1000 ETH + randomTarget: true + amount: 0 + awaitReceipt: true + configVars: + # max 100 pending tx per wallet to avoid nonce gap limits + childWallets: "| [1, (.transactionCount / 100) | round] | max" + limitTotal: "transactionCount" + limitPerBlock: "transactionsPerBlock" + limitPending: "transactionsPerBlock" + privateKey: "walletPrivkey" + gasLimit: "transactionGasLimit" + callData: "calldata" + +- name: "sleep" + title: "Wait 30sec to clear up pending transactions" + config: + duration: 30s + +- name: run_tasks_concurrent + title: "Check chain stability" + timeout: 7h + config: + tasks: + - name: check_consensus_reorgs + title: "Check consensus reorgs" + - name: check_consensus_forks + title: "Check consensus forks" \ No newline at end of file diff --git a/.github/config/assertoor/network_params_tx.yaml b/.github/config/assertoor/network_params_tx.yaml index a909c5681..89fa98de7 100644 --- a/.github/config/assertoor/network_params_tx.yaml +++ b/.github/config/assertoor/network_params_tx.yaml @@ -14,3 +14,4 @@ assertoor_params: run_block_proposal_check: false tests: - https://raw.githubusercontent.com/ethpandaops/assertoor/refs/heads/master/playbooks/stable/eoa-transactions-test.yaml + - https://raw.githubusercontent.com/lambdaclass/ethrex/refs/heads/assertoor-allaround-tx-check/.github/config/assertoor/el-big-calldata-check.yml From 0716b405cc06d98fd5e1ca86851af4accef67b70 Mon Sep 17 00:00:00 2001 From: Rodrigo Oliveri Date: Thu, 28 Nov 2024 16:59:50 -0300 Subject: [PATCH 30/33] Removed big-calldata check again due to timing --- .../assertoor/el-big-calldata-check.yml | 72 ------------------- .github/workflows/ci_l1.yaml | 11 ++- 2 files changed, 8 insertions(+), 75 deletions(-) delete mode 100644 .github/config/assertoor/el-big-calldata-check.yml diff --git a/.github/config/assertoor/el-big-calldata-check.yml b/.github/config/assertoor/el-big-calldata-check.yml deleted file mode 100644 index 698ae65ff..000000000 --- a/.github/config/assertoor/el-big-calldata-check.yml +++ /dev/null @@ -1,72 +0,0 @@ -# This file based upon the `big-calldata` playbook: -# - https://github.com/ethpandaops/assertoor/blob/master/playbooks/stable/big-calldata-tx-test.yaml -# -# For reference on each individual check see: https://github.com/ethpandaops/assertoor/wiki#supported-tasks-in-assertoor - -id: big-calldata-tx-test -name: "Big Calldata TX Test" -timeout: 30m -config: - walletPrivkey: "" - transactionCount: 20 - transactionsPerBlock: 5 - calldataSize: 1000 - transactionGasLimit: 5000000 -tasks: -- name: check_clients_are_healthy - title: "Check if at least one client is ready" - timeout: 5m - config: - minClientCount: 1 - -# generate calldata -- name: run_shell - title: "Run shell command" - config: - shell: "bash" - envVars: - calldataSize: "calldataSize" - command: | - echo "Generate calldata with $calldataSize zero bytes" - calldata="0x$(eval "printf '00%.0s' {1..$calldataSize}")" - echo "::set-var calldata $calldata" - echo "yea" - -- name: check_consensus_sync_status - title: "Wait for chain activity (slot >= 5)" - timeout: 1h - config: - minSlotHeight: 5 - -# send big calldata transactions -- name: generate_eoa_transactions - title: "Send ${transactionCount} big calldata transactions" - config: - refillMinBalance: 1000000000000000000000 # 1000 ETH - randomTarget: true - amount: 0 - awaitReceipt: true - configVars: - # max 100 pending tx per wallet to avoid nonce gap limits - childWallets: "| [1, (.transactionCount / 100) | round] | max" - limitTotal: "transactionCount" - limitPerBlock: "transactionsPerBlock" - limitPending: "transactionsPerBlock" - privateKey: "walletPrivkey" - gasLimit: "transactionGasLimit" - callData: "calldata" - -- name: "sleep" - title: "Wait 30sec to clear up pending transactions" - config: - duration: 30s - -- name: run_tasks_concurrent - title: "Check chain stability" - timeout: 7h - config: - tasks: - - name: check_consensus_reorgs - title: "Check consensus reorgs" - - name: check_consensus_forks - title: "Check consensus forks" \ No newline at end of file diff --git a/.github/workflows/ci_l1.yaml b/.github/workflows/ci_l1.yaml index 7e3f2a674..5a34351fd 100644 --- a/.github/workflows/ci_l1.yaml +++ b/.github/workflows/ci_l1.yaml @@ -212,14 +212,19 @@ jobs: # "Integration Test" is a required check, don't change the name name: Integration Test runs-on: ubuntu-latest - needs: [run-assertoor, run-hive] + needs: [run-assertoor-tx-check, run-assertoor-blob-check, run-hive] # Make sure this job runs even if the previous jobs failed or were skipped if: ${{ always() && needs.run-assertoor.result != 'skipped' && needs.run-hive.result != 'skipped' }} steps: - name: Check if any job failed run: | - if [ "${{ needs.run-assertoor.result }}" != "success" ]; then - echo "Job Assertoor failed" + if [ "${{ needs.run-assertoor-tx-check.result }}" != "success" ]; then + echo "Job Assertoor Tx Check failed" + exit 1 + fi + + if [ "${{ needs.run-assertoor-blob-check.result }}" != "success" ]; then + echo "Job Assertoor Blob Check failed" exit 1 fi From 574135b3ed7fadfd32f68c48533e40e129504586 Mon Sep 17 00:00:00 2001 From: Rodrigo Oliveri Date: Thu, 28 Nov 2024 17:10:31 -0300 Subject: [PATCH 31/33] Renamed stability check from .yml to .yaml --- .../{el-stability-check.yml => el-stability-check.yaml} | 0 .github/config/assertoor/network_params_blob.yaml | 2 +- .github/config/assertoor/network_params_tx.yaml | 2 +- 3 files changed, 2 insertions(+), 2 deletions(-) rename .github/config/assertoor/{el-stability-check.yml => el-stability-check.yaml} (100%) diff --git a/.github/config/assertoor/el-stability-check.yml b/.github/config/assertoor/el-stability-check.yaml similarity index 100% rename from .github/config/assertoor/el-stability-check.yml rename to .github/config/assertoor/el-stability-check.yaml diff --git a/.github/config/assertoor/network_params_blob.yaml b/.github/config/assertoor/network_params_blob.yaml index 8515ce7e5..2757ad08c 100644 --- a/.github/config/assertoor/network_params_blob.yaml +++ b/.github/config/assertoor/network_params_blob.yaml @@ -18,4 +18,4 @@ assertoor_params: run_block_proposal_check: false tests: - https://raw.githubusercontent.com/ethpandaops/assertoor/refs/heads/master/playbooks/stable/blob-transactions-test.yaml - - https://raw.githubusercontent.com/lambdaclass/ethrex/refs/heads/assertoor-allaround-tx-check/.github/config/assertoor/el-stability-check.yml + - https://raw.githubusercontent.com/lambdaclass/ethrex/refs/heads/assertoor-allaround-tx-check/.github/config/assertoor/el-stability-check.yaml diff --git a/.github/config/assertoor/network_params_tx.yaml b/.github/config/assertoor/network_params_tx.yaml index 89fa98de7..b53e72470 100644 --- a/.github/config/assertoor/network_params_tx.yaml +++ b/.github/config/assertoor/network_params_tx.yaml @@ -14,4 +14,4 @@ assertoor_params: run_block_proposal_check: false tests: - https://raw.githubusercontent.com/ethpandaops/assertoor/refs/heads/master/playbooks/stable/eoa-transactions-test.yaml - - https://raw.githubusercontent.com/lambdaclass/ethrex/refs/heads/assertoor-allaround-tx-check/.github/config/assertoor/el-big-calldata-check.yml + - https://raw.githubusercontent.com/lambdaclass/ethrex/refs/heads/assertoor-allaround-tx-check/.github/config/assertoor/el-big-calldata-check.yaml From a66fc99677d3c8472e9e0dc879d97054af54aea0 Mon Sep 17 00:00:00 2001 From: Rodrigo Oliveri Date: Thu, 28 Nov 2024 17:39:57 -0300 Subject: [PATCH 32/33] Removed stability check on the tx test and reverted the ci skipped paths --- .github/config/assertoor/network_params_tx.yaml | 1 - .github/workflows/ci_skipped.yaml | 14 +++++--------- 2 files changed, 5 insertions(+), 10 deletions(-) diff --git a/.github/config/assertoor/network_params_tx.yaml b/.github/config/assertoor/network_params_tx.yaml index b53e72470..a909c5681 100644 --- a/.github/config/assertoor/network_params_tx.yaml +++ b/.github/config/assertoor/network_params_tx.yaml @@ -14,4 +14,3 @@ assertoor_params: run_block_proposal_check: false tests: - https://raw.githubusercontent.com/ethpandaops/assertoor/refs/heads/master/playbooks/stable/eoa-transactions-test.yaml - - https://raw.githubusercontent.com/lambdaclass/ethrex/refs/heads/assertoor-allaround-tx-check/.github/config/assertoor/el-big-calldata-check.yaml diff --git a/.github/workflows/ci_skipped.yaml b/.github/workflows/ci_skipped.yaml index 876951ed0..c650d209b 100644 --- a/.github/workflows/ci_skipped.yaml +++ b/.github/workflows/ci_skipped.yaml @@ -2,15 +2,11 @@ name: CI Skipped on: pull_request: branches: ["**"] - paths-ignore: - - '**/*.rs' - - '**/*.toml' - - '**/*.yaml' - - '**/*.sh' - - '**/*.json' - - '**/*.rlp' - - 'Dockefile*' - + paths: + - 'README.md' + - 'LICENSE' + - "**/README.md" + - "**/docs/**" jobs: lint: # "Lint" is a required check, don't change the name From 2aff3bcb1da30ac21958cfff8ee9aa1f4dcd04f1 Mon Sep 17 00:00:00 2001 From: Rodrigo Oliveri Date: Thu, 28 Nov 2024 18:15:57 -0300 Subject: [PATCH 33/33] Point the el-staability-check link to main --- .github/config/assertoor/network_params_blob.yaml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/config/assertoor/network_params_blob.yaml b/.github/config/assertoor/network_params_blob.yaml index 2757ad08c..c76281f37 100644 --- a/.github/config/assertoor/network_params_blob.yaml +++ b/.github/config/assertoor/network_params_blob.yaml @@ -18,4 +18,4 @@ assertoor_params: run_block_proposal_check: false tests: - https://raw.githubusercontent.com/ethpandaops/assertoor/refs/heads/master/playbooks/stable/blob-transactions-test.yaml - - https://raw.githubusercontent.com/lambdaclass/ethrex/refs/heads/assertoor-allaround-tx-check/.github/config/assertoor/el-stability-check.yaml + - https://raw.githubusercontent.com/lambdaclass/ethrex/refs/heads/main/.github/config/assertoor/el-stability-check.yaml