From ccb32cfc0894c5850a9c199e8789450f5d5664b7 Mon Sep 17 00:00:00 2001 From: amkCha <29160563+amkCha@users.noreply.github.com> Date: Wed, 1 Oct 2025 15:51:10 +0200 Subject: [PATCH 1/4] feat: reusable workflow and nighlty for all forks no replay --- .github/workflows/gradle-nightly-tests.yml | 88 +++++++++----------- .github/workflows/reusable-nightly-tests.yml | 78 +++++++++++++++++ gradle/tests.gradle | 15 ++++ 3 files changed, 132 insertions(+), 49 deletions(-) create mode 100644 .github/workflows/reusable-nightly-tests.yml diff --git a/.github/workflows/gradle-nightly-tests.yml b/.github/workflows/gradle-nightly-tests.yml index baa085d126..cb21b83fe5 100644 --- a/.github/workflows/gradle-nightly-tests.yml +++ b/.github/workflows/gradle-nightly-tests.yml @@ -10,52 +10,42 @@ concurrency: cancel-in-progress: true jobs: - nightly-tests: - runs-on: gha-runner-scale-set-ubuntu-22.04-amd64-xxl - steps: - - name: Checkout repository - uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5.0.0 - with: - submodules: recursive - - - name: Setup Test Environment - uses: ./.github/actions/setup-environment - - - name: Run Nightly tests - run: GOMAXPROCS=10 GOMEMLIMIT=20GiB ./gradlew nightlyTests - env: - JAVA_OPTS: -Dorg.gradle.daemon=false - GOCORSET_FLAGS: -v --ansi-escapes=false --report --mir - NIGHTLY_TESTS_PARALLELISM: 2 - ZKEVM_FORK: LONDON - - - name: Upload test report - if: ${{ always() }} - uses: actions/upload-artifact@ea165f8d65b6e75b540449e92b4886f43607fa02 # v4.6.2 - with: - name: nightly-tests-report-LONDON - path: arithmetization/build/reports/tests/**/* - - - name: Upload jacoco nightly tests coverage report - if: always() - uses: actions/upload-artifact@ea165f8d65b6e75b540449e92b4886f43607fa02 # v4.6.2 - with: - name: jacoco-nightly-tests-coverage-report-LONDON - path: arithmetization/build/reports/jacoco/jacocoNightlyTestsReport/**/* - - - name: Upload jacoco nightly tests exec file - if: always() - uses: actions/upload-artifact@ea165f8d65b6e75b540449e92b4886f43607fa02 # v4.6.2 - with: - name: jacoco-nightly-tests-exec-file-LONDON - path: arithmetization/build/jacoco/nightlyTests.exec - - - name: Failure Notification - if: github.ref == 'refs/heads/arith-dev' && (failure() || cancelled()) - uses: slackapi/slack-github-action@91efab103c0de0a537f72a35f6b8cda0ee76bf0a # v2.1.1 - with: - webhook: ${{ secrets.SLACK_WEBHOOK_URL }} - webhook-type: webhook-trigger - payload: | - name: "Nightly" - status: "${{ job.status }}" + nightly-tests-london: + uses: ./.github/workflows/reusable-nightly-tests.yml + secrets: inherit + with: + zkevm_fork: LONDON + tests-with-ssh: ${{ inputs.tests-with-ssh || false }} + with-replays: true + + nightly-tests-paris: + uses: ./.github/workflows/reusable-nightly-tests.yml + secrets: inherit + with: + zkevm_fork: PARIS + tests-with-ssh: ${{ inputs.tests-with-ssh || false }} + with-replays: false + + nightly-tests-shanghai: + uses: ./.github/workflows/reusable-nightly-tests.yml + secrets: inherit + with: + zkevm_fork: SHANGHAI + tests-with-ssh: ${{ inputs.tests-with-ssh || false }} + with-replays: false + + nightly-tests-cancun: + uses: ./.github/workflows/reusable-nightly-tests.yml + secrets: inherit + with: + zkevm_fork: CANCUN + tests-with-ssh: ${{ inputs.tests-with-ssh || false }} + with-replays: false + + nightly-tests-prague: + uses: ./.github/workflows/reusable-nightly-tests.yml + secrets: inherit + with: + zkevm_fork: PRAGUE + tests-with-ssh: ${{ inputs.tests-with-ssh || false }} + with-replays: false diff --git a/.github/workflows/reusable-nightly-tests.yml b/.github/workflows/reusable-nightly-tests.yml new file mode 100644 index 0000000000..ecbb8de862 --- /dev/null +++ b/.github/workflows/reusable-nightly-tests.yml @@ -0,0 +1,78 @@ +name: "Reusable nightly tests workflow" + +on: + workflow_call: + inputs: + zkevm_fork: + required: true + type: string + with-replays: + required: true + type: boolean + tests-with-ssh: + required: true + type: boolean + +jobs: + # ================================================================== + # Nightly Tests + # ================================================================== + nightly-tests: + runs-on: gha-runner-scale-set-ubuntu-22.04-amd64-xxl + steps: + - name: Checkout repository + uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5.0.0 + with: + submodules: recursive + + - name: Setup Test Environment + uses: ./.github/actions/setup-environment + + - name: Run Nightly tests + run: GOMAXPROCS=10 GOMEMLIMIT=20GiB ./gradlew nightlyTests + if : ${{ inputs.with-replays == true }} + env: + JAVA_OPTS: -Dorg.gradle.daemon=false + GOCORSET_FLAGS: -v --ansi-escapes=false --report --mir + NIGHTLY_TESTS_PARALLELISM: 2 + ZKEVM_FORK: ${{ inputs.zkevm_fork }} + + - name: Run Nightly No Replay tests + run: GOMAXPROCS=10 GOMEMLIMIT=20GiB ./gradlew nightlyNoReplayTests + if : ${{ inputs.with-replays == false }} + env: + JAVA_OPTS: -Dorg.gradle.daemon=false + GOCORSET_FLAGS: -v --ansi-escapes=false --report --mir + NIGHTLY_TESTS_PARALLELISM: 2 + ZKEVM_FORK: ${{ inputs.zkevm_fork }} + + - name: Upload test report + if: ${{ always() }} + uses: actions/upload-artifact@ea165f8d65b6e75b540449e92b4886f43607fa02 # v4.6.2 + with: + name: nightly-tests-report-${{ inputs.zkevm_fork }} + path: arithmetization/build/reports/tests/**/* + + - name: Upload jacoco nightly tests coverage report + if: always() + uses: actions/upload-artifact@ea165f8d65b6e75b540449e92b4886f43607fa02 # v4.6.2 + with: + name: jacoco-nightly-tests-coverage-report-${{ inputs.zkevm_fork }} + path: arithmetization/build/reports/jacoco/jacocoNightlyTestsReport/**/* + + - name: Upload jacoco nightly tests exec file + if: always() + uses: actions/upload-artifact@ea165f8d65b6e75b540449e92b4886f43607fa02 # v4.6.2 + with: + name: jacoco-nightly-tests-exec-file-${{ inputs.zkevm_fork }} + path: arithmetization/build/jacoco/nightlyTests.exec + + - name: Failure Notification + if: github.ref == 'refs/heads/arith-dev' && (failure() || cancelled()) + uses: slackapi/slack-github-action@91efab103c0de0a537f72a35f6b8cda0ee76bf0a # v2.1.1 + with: + webhook: ${{ secrets.SLACK_WEBHOOK_URL }} + webhook-type: webhook-trigger + payload: | + name: "Nightly" + status: "${{ job.status }}" diff --git a/gradle/tests.gradle b/gradle/tests.gradle index d0dc2ea1cc..c38926b78e 100644 --- a/gradle/tests.gradle +++ b/gradle/tests.gradle @@ -293,6 +293,21 @@ tasks.register("nightlyReplayTests", Test) { } } +tasks.register("nightlyNoReplayTests", Test) { + systemProperty("junit.jupiter.execution.parallel.enabled", true) + systemProperty("junit.jupiter.execution.parallel.mode.default", "concurrent") + systemProperty("junit.jupiter.execution.parallel.mode.classes.default", "concurrent") + systemProperty("junit.jupiter.execution.parallel.config.strategy", "fixed") + systemProperty("junit.jupiter.execution.parallel.config.fixed.parallelism", + System.getenv().getOrDefault("NIGHTLY_TESTS_PARALLELISM", "1").toInteger()) + + useJUnitPlatform { + includeTags("nightly") + excludeTags("replay") + } + finalizedBy(jacocoNightlyTestsReport) +} + tasks.register("nightlyTests", Test) { systemProperty("junit.jupiter.execution.parallel.enabled", true) systemProperty("junit.jupiter.execution.parallel.mode.default", "concurrent") From 359c8f508bcd4ee54724e8c228b00b5e256fa712 Mon Sep 17 00:00:00 2001 From: amkCha <29160563+amkCha@users.noreply.github.com> Date: Wed, 1 Oct 2025 17:20:19 +0200 Subject: [PATCH 2/4] permissions --- .github/workflows/gradle-nightly-tests.yml | 2 ++ 1 file changed, 2 insertions(+) diff --git a/.github/workflows/gradle-nightly-tests.yml b/.github/workflows/gradle-nightly-tests.yml index cb21b83fe5..d6e13a4e8f 100644 --- a/.github/workflows/gradle-nightly-tests.yml +++ b/.github/workflows/gradle-nightly-tests.yml @@ -1,4 +1,6 @@ name: Nightly Tests +permissions: + contents: read on: schedule: From 50d903cd126fa1cf63f466c6184d6cdec4995583 Mon Sep 17 00:00:00 2001 From: amkCha <29160563+amkCha@users.noreply.github.com> Date: Thu, 2 Oct 2025 13:33:18 +0200 Subject: [PATCH 3/4] feat: split nightly replays and nightly --- .github/workflows/gradle-nightly-tests.yml | 5 -- .github/workflows/gradle-replay-tests.yml | 51 +++++++++++++++++++ .github/workflows/reusable-nightly-tests.yml | 13 ----- .../replaytests/HubShomeiReplayTests.java | 2 +- .../linea/replaytests/Issue1123Tests.java | 1 - .../linea/replaytests/Issue1136Tests.java | 1 - .../linea/replaytests/Issue1216Tests.java | 1 - .../linea/replaytests/Issue1264Tests.java | 1 - .../linea/replaytests/ReplayTests.java | 2 - gradle/tests.gradle | 32 +++++------- 10 files changed, 66 insertions(+), 43 deletions(-) create mode 100644 .github/workflows/gradle-replay-tests.yml diff --git a/.github/workflows/gradle-nightly-tests.yml b/.github/workflows/gradle-nightly-tests.yml index d6e13a4e8f..68ab0608e4 100644 --- a/.github/workflows/gradle-nightly-tests.yml +++ b/.github/workflows/gradle-nightly-tests.yml @@ -18,7 +18,6 @@ jobs: with: zkevm_fork: LONDON tests-with-ssh: ${{ inputs.tests-with-ssh || false }} - with-replays: true nightly-tests-paris: uses: ./.github/workflows/reusable-nightly-tests.yml @@ -26,7 +25,6 @@ jobs: with: zkevm_fork: PARIS tests-with-ssh: ${{ inputs.tests-with-ssh || false }} - with-replays: false nightly-tests-shanghai: uses: ./.github/workflows/reusable-nightly-tests.yml @@ -34,7 +32,6 @@ jobs: with: zkevm_fork: SHANGHAI tests-with-ssh: ${{ inputs.tests-with-ssh || false }} - with-replays: false nightly-tests-cancun: uses: ./.github/workflows/reusable-nightly-tests.yml @@ -42,7 +39,6 @@ jobs: with: zkevm_fork: CANCUN tests-with-ssh: ${{ inputs.tests-with-ssh || false }} - with-replays: false nightly-tests-prague: uses: ./.github/workflows/reusable-nightly-tests.yml @@ -50,4 +46,3 @@ jobs: with: zkevm_fork: PRAGUE tests-with-ssh: ${{ inputs.tests-with-ssh || false }} - with-replays: false diff --git a/.github/workflows/gradle-replay-tests.yml b/.github/workflows/gradle-replay-tests.yml new file mode 100644 index 0000000000..3ac2ce426f --- /dev/null +++ b/.github/workflows/gradle-replay-tests.yml @@ -0,0 +1,51 @@ +name: Nightly Replay Tests +permissions: + contents: read + +on: + schedule: + - cron: "0 22 * * 1-5" + workflow_dispatch: + +concurrency: + group: ${{ github.workflow }}-${{ github.ref }} + cancel-in-progress: true + +jobs: + # ================================================================== + # Replay Tests + # ================================================================== + nightly-replay-tests: + runs-on: gha-runner-scale-set-ubuntu-22.04-amd64-xxl + steps: + - name: Checkout repository + uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5.0.0 + with: + submodules: recursive + + - name: Setup Test Environment + uses: ./.github/actions/setup-environment + + - name: Run Nightly Replay tests + run: GOMAXPROCS=10 GOMEMLIMIT=20GiB ./gradlew nightlyReplayTests + env: + JAVA_OPTS: -Dorg.gradle.daemon=false + GOCORSET_FLAGS: -v --ansi-escapes=false --report --mir + NIGHTLY_REPLAY_TESTS_PARALLELISM: 2 + + - name: Upload test report + if: ${{ always() }} + uses: actions/upload-artifact@ea165f8d65b6e75b540449e92b4886f43607fa02 # v4.6.2 + with: + name: nightly-replay-tests-report-${{ inputs.zkevm_fork }} + path: arithmetization/build/reports/tests/**/* + + - name: Failure Notification + if: github.ref == 'refs/heads/arith-dev' && (failure() || cancelled()) + uses: slackapi/slack-github-action@91efab103c0de0a537f72a35f6b8cda0ee76bf0a # v2.1.1 + with: + webhook: ${{ secrets.SLACK_WEBHOOK_URL }} + webhook-type: webhook-trigger + payload: | + name: "NightlyReplay" + status: "${{ job.status }}" diff --git a/.github/workflows/reusable-nightly-tests.yml b/.github/workflows/reusable-nightly-tests.yml index ecbb8de862..d57bf4b548 100644 --- a/.github/workflows/reusable-nightly-tests.yml +++ b/.github/workflows/reusable-nightly-tests.yml @@ -6,9 +6,6 @@ on: zkevm_fork: required: true type: string - with-replays: - required: true - type: boolean tests-with-ssh: required: true type: boolean @@ -30,16 +27,6 @@ jobs: - name: Run Nightly tests run: GOMAXPROCS=10 GOMEMLIMIT=20GiB ./gradlew nightlyTests - if : ${{ inputs.with-replays == true }} - env: - JAVA_OPTS: -Dorg.gradle.daemon=false - GOCORSET_FLAGS: -v --ansi-escapes=false --report --mir - NIGHTLY_TESTS_PARALLELISM: 2 - ZKEVM_FORK: ${{ inputs.zkevm_fork }} - - - name: Run Nightly No Replay tests - run: GOMAXPROCS=10 GOMEMLIMIT=20GiB ./gradlew nightlyNoReplayTests - if : ${{ inputs.with-replays == false }} env: JAVA_OPTS: -Dorg.gradle.daemon=false GOCORSET_FLAGS: -v --ansi-escapes=false --report --mir diff --git a/arithmetization/src/test/java/net/consensys/linea/replaytests/HubShomeiReplayTests.java b/arithmetization/src/test/java/net/consensys/linea/replaytests/HubShomeiReplayTests.java index a2759d2190..b56e7f416c 100644 --- a/arithmetization/src/test/java/net/consensys/linea/replaytests/HubShomeiReplayTests.java +++ b/arithmetization/src/test/java/net/consensys/linea/replaytests/HubShomeiReplayTests.java @@ -25,7 +25,7 @@ import org.junit.jupiter.api.TestInfo; import org.junit.jupiter.api.extension.ExtendWith; -@Tag("nightly") +@Tag("replay") @ExtendWith(UnitTestWatcher.class) public class HubShomeiReplayTests extends TracerTestBase { diff --git a/arithmetization/src/test/java/net/consensys/linea/replaytests/Issue1123Tests.java b/arithmetization/src/test/java/net/consensys/linea/replaytests/Issue1123Tests.java index 4382011850..0c89411997 100644 --- a/arithmetization/src/test/java/net/consensys/linea/replaytests/Issue1123Tests.java +++ b/arithmetization/src/test/java/net/consensys/linea/replaytests/Issue1123Tests.java @@ -29,7 +29,6 @@ @ExtendWith(UnitTestWatcher.class) public class Issue1123Tests extends TracerTestBase { - @Tag("nightly") @Test void issue_1123_mainnet_block_8043758(TestInfo testInfo) { replay(OLD_MAINNET_TESTCONFIG, "8043758.mainnet.json.gz", testInfo); diff --git a/arithmetization/src/test/java/net/consensys/linea/replaytests/Issue1136Tests.java b/arithmetization/src/test/java/net/consensys/linea/replaytests/Issue1136Tests.java index c44731e47f..8eeab24a41 100644 --- a/arithmetization/src/test/java/net/consensys/linea/replaytests/Issue1136Tests.java +++ b/arithmetization/src/test/java/net/consensys/linea/replaytests/Issue1136Tests.java @@ -42,7 +42,6 @@ *

Related GitHub issue */ @Tag("replay") -@Tag("nightly") @ExtendWith(UnitTestWatcher.class) public class Issue1136Tests extends TracerTestBase { diff --git a/arithmetization/src/test/java/net/consensys/linea/replaytests/Issue1216Tests.java b/arithmetization/src/test/java/net/consensys/linea/replaytests/Issue1216Tests.java index d34cc55b54..07955e2d9f 100644 --- a/arithmetization/src/test/java/net/consensys/linea/replaytests/Issue1216Tests.java +++ b/arithmetization/src/test/java/net/consensys/linea/replaytests/Issue1216Tests.java @@ -46,7 +46,6 @@ public class Issue1216Tests extends TracerTestBase { * blowing up with a NPE since the "after" version of the self destructor didn't exist yet in the * code. This was solved in issue #1216. */ - @Tag("nightly") @Tag("replay") @Test void issue_1216_sepolia_block_2392659(TestInfo testInfo) { diff --git a/arithmetization/src/test/java/net/consensys/linea/replaytests/Issue1264Tests.java b/arithmetization/src/test/java/net/consensys/linea/replaytests/Issue1264Tests.java index 8ea9ff0152..3912d93257 100644 --- a/arithmetization/src/test/java/net/consensys/linea/replaytests/Issue1264Tests.java +++ b/arithmetization/src/test/java/net/consensys/linea/replaytests/Issue1264Tests.java @@ -24,7 +24,6 @@ import org.junit.jupiter.api.TestInfo; import org.junit.jupiter.api.extension.ExtendWith; -@Tag("nightly") @Tag("replay") @ExtendWith(UnitTestWatcher.class) public class Issue1264Tests extends TracerTestBase { diff --git a/arithmetization/src/test/java/net/consensys/linea/replaytests/ReplayTests.java b/arithmetization/src/test/java/net/consensys/linea/replaytests/ReplayTests.java index e498bb8d39..61f09808a6 100644 --- a/arithmetization/src/test/java/net/consensys/linea/replaytests/ReplayTests.java +++ b/arithmetization/src/test/java/net/consensys/linea/replaytests/ReplayTests.java @@ -76,7 +76,6 @@ void multipleFailingCallToEcrecover(TestInfo testInfo) { } @Test - @Tag("nightly") void incident777zkGethMainnet(TestInfo testInfo) { replay(OLD_MAINNET_TESTCONFIG, "7461019-7461030.mainnet.json.gz", testInfo); } @@ -163,7 +162,6 @@ void returnOogxForCodeDepositCost(TestInfo testInfo) { } @Test - @Tag("nightly") void modexpTriggeringNonAlignedFirstLimbSingleSourceMmuModexp(TestInfo testInfo) { replay(OLD_MAINNET_TESTCONFIG, "3108622-3108633.mainnet.json.gz", testInfo); } diff --git a/gradle/tests.gradle b/gradle/tests.gradle index c38926b78e..c0598d7770 100644 --- a/gradle/tests.gradle +++ b/gradle/tests.gradle @@ -215,6 +215,10 @@ tasks.register("downloadShoemiBesuPlugin", Download) { overwrite false } +/* + * Nightly replay tests (only nightly replay) and Nightly tests (no replay) + */ + tasks.register("fastReplayTests", Test) { if (System.getenv().containsKey("REPLAY_TESTS_PARALLELISM")) { systemProperty("junit.jupiter.execution.parallel.enabled", true) @@ -278,43 +282,30 @@ tasks.register("jacocoFastReplayTestsReport", JacocoReport) { } tasks.register("nightlyReplayTests", Test) { - if (System.getenv().containsKey("REPLAY_TESTS_PARALLELISM")) { + if (System.getenv().containsKey("NIGHTLY_REPLAY_TESTS_PARALLELISM")) { systemProperty("junit.jupiter.execution.parallel.enabled", true) systemProperty("junit.jupiter.execution.parallel.mode.default", "concurrent") systemProperty("junit.jupiter.execution.parallel.mode.classes.default", "concurrent") systemProperty("junit.jupiter.execution.parallel.config.strategy", "fixed") systemProperty("junit.jupiter.execution.parallel.config.fixed.parallelism", - System.getenv().getOrDefault("REPLAY_TESTS_PARALLELISM", "1").toInteger()) + System.getenv().getOrDefault("NIGHTLY_REPLAY_TESTS_PARALLELISM", "1").toInteger()) } useJUnitPlatform { includeTags("replay") - includeTags("nightly") - } -} - -tasks.register("nightlyNoReplayTests", Test) { - systemProperty("junit.jupiter.execution.parallel.enabled", true) - systemProperty("junit.jupiter.execution.parallel.mode.default", "concurrent") - systemProperty("junit.jupiter.execution.parallel.mode.classes.default", "concurrent") - systemProperty("junit.jupiter.execution.parallel.config.strategy", "fixed") - systemProperty("junit.jupiter.execution.parallel.config.fixed.parallelism", - System.getenv().getOrDefault("NIGHTLY_TESTS_PARALLELISM", "1").toInteger()) - - useJUnitPlatform { - includeTags("nightly") - excludeTags("replay") + excludeTags("weekly") } - finalizedBy(jacocoNightlyTestsReport) } tasks.register("nightlyTests", Test) { + if (System.getenv().containsKey("NIGHTLY_REPLAY_TESTS_PARALLELISM")) { systemProperty("junit.jupiter.execution.parallel.enabled", true) systemProperty("junit.jupiter.execution.parallel.mode.default", "concurrent") systemProperty("junit.jupiter.execution.parallel.mode.classes.default", "concurrent") systemProperty("junit.jupiter.execution.parallel.config.strategy", "fixed") systemProperty("junit.jupiter.execution.parallel.config.fixed.parallelism", System.getenv().getOrDefault("NIGHTLY_TESTS_PARALLELISM", "1").toInteger()) + } useJUnitPlatform { includeTags("nightly") @@ -331,6 +322,11 @@ tasks.register("jacocoNightlyTestsReport", JacocoReport) { executionData(nightlyTests) } +/* + * Weekly tests (include weekly replays and weekly tests) + * Prc Calls tests (only prc calls tests) + */ + tasks.register("weeklyTests", Test) { systemProperty("junit.jupiter.execution.parallel.enabled", true) systemProperty("junit.jupiter.execution.parallel.mode.default", "concurrent") From b67ab67ff89f2ebd06085b8432e8189c8d18d24c Mon Sep 17 00:00:00 2001 From: amkCha <29160563+amkCha@users.noreply.github.com> Date: Thu, 2 Oct 2025 21:18:40 +0200 Subject: [PATCH 4/4] feat: pu nightly replays back --- ...ts.yml => gradle-nightly-replay-tests.yml} | 2 +- ...Results - ExampleBesuTest_testPerFork.html | 618 ---------- ...gBesuTest_testForkSwitchParisToCancun.html | 1059 ----------------- .../replaytests/HubShomeiReplayTests.java | 1 + .../linea/replaytests/Issue1123Tests.java | 1 + .../linea/replaytests/Issue1136Tests.java | 1 + .../linea/replaytests/Issue1216Tests.java | 1 + .../linea/replaytests/Issue1264Tests.java | 1 + .../linea/replaytests/ReplayTests.java | 2 + gradle/tests.gradle | 7 +- 10 files changed, 13 insertions(+), 1680 deletions(-) rename .github/workflows/{gradle-replay-tests.yml => gradle-nightly-replay-tests.yml} (95%) delete mode 100644 Test Results - ExampleBesuTest_testPerFork.html delete mode 100644 Test Results - ForkTracingAndSwitchingBesuTest_testForkSwitchParisToCancun.html diff --git a/.github/workflows/gradle-replay-tests.yml b/.github/workflows/gradle-nightly-replay-tests.yml similarity index 95% rename from .github/workflows/gradle-replay-tests.yml rename to .github/workflows/gradle-nightly-replay-tests.yml index 3ac2ce426f..bf2143c347 100644 --- a/.github/workflows/gradle-replay-tests.yml +++ b/.github/workflows/gradle-nightly-replay-tests.yml @@ -37,7 +37,7 @@ jobs: if: ${{ always() }} uses: actions/upload-artifact@ea165f8d65b6e75b540449e92b4886f43607fa02 # v4.6.2 with: - name: nightly-replay-tests-report-${{ inputs.zkevm_fork }} + name: nightly-replay-tests-report path: arithmetization/build/reports/tests/**/* - name: Failure Notification diff --git a/Test Results - ExampleBesuTest_testPerFork.html b/Test Results - ExampleBesuTest_testPerFork.html deleted file mode 100644 index b9e4527942..0000000000 --- a/Test Results - ExampleBesuTest_testPerFork.html +++ /dev/null @@ -1,618 +0,0 @@ - - - - - Test Results — ExampleBesuTest.testPerFork - - - - - - - - - -

- -
- -
-
- - - diff --git a/Test Results - ForkTracingAndSwitchingBesuTest_testForkSwitchParisToCancun.html b/Test Results - ForkTracingAndSwitchingBesuTest_testForkSwitchParisToCancun.html deleted file mode 100644 index 21216f347e..0000000000 --- a/Test Results - ForkTracingAndSwitchingBesuTest_testForkSwitchParisToCancun.html +++ /dev/null @@ -1,1059 +0,0 @@ - - - - - Test Results — ForkTracingAndSwitchingBesuTest.testForkSwitchParisToCancun - - - - - - - - - -
- -
- -
-
- - - diff --git a/arithmetization/src/test/java/net/consensys/linea/replaytests/HubShomeiReplayTests.java b/arithmetization/src/test/java/net/consensys/linea/replaytests/HubShomeiReplayTests.java index b56e7f416c..d1aeb2903e 100644 --- a/arithmetization/src/test/java/net/consensys/linea/replaytests/HubShomeiReplayTests.java +++ b/arithmetization/src/test/java/net/consensys/linea/replaytests/HubShomeiReplayTests.java @@ -26,6 +26,7 @@ import org.junit.jupiter.api.extension.ExtendWith; @Tag("replay") +@Tag("nightly") @ExtendWith(UnitTestWatcher.class) public class HubShomeiReplayTests extends TracerTestBase { diff --git a/arithmetization/src/test/java/net/consensys/linea/replaytests/Issue1123Tests.java b/arithmetization/src/test/java/net/consensys/linea/replaytests/Issue1123Tests.java index 0c89411997..4382011850 100644 --- a/arithmetization/src/test/java/net/consensys/linea/replaytests/Issue1123Tests.java +++ b/arithmetization/src/test/java/net/consensys/linea/replaytests/Issue1123Tests.java @@ -29,6 +29,7 @@ @ExtendWith(UnitTestWatcher.class) public class Issue1123Tests extends TracerTestBase { + @Tag("nightly") @Test void issue_1123_mainnet_block_8043758(TestInfo testInfo) { replay(OLD_MAINNET_TESTCONFIG, "8043758.mainnet.json.gz", testInfo); diff --git a/arithmetization/src/test/java/net/consensys/linea/replaytests/Issue1136Tests.java b/arithmetization/src/test/java/net/consensys/linea/replaytests/Issue1136Tests.java index 8eeab24a41..c44731e47f 100644 --- a/arithmetization/src/test/java/net/consensys/linea/replaytests/Issue1136Tests.java +++ b/arithmetization/src/test/java/net/consensys/linea/replaytests/Issue1136Tests.java @@ -42,6 +42,7 @@ *

Related GitHub issue */ @Tag("replay") +@Tag("nightly") @ExtendWith(UnitTestWatcher.class) public class Issue1136Tests extends TracerTestBase { diff --git a/arithmetization/src/test/java/net/consensys/linea/replaytests/Issue1216Tests.java b/arithmetization/src/test/java/net/consensys/linea/replaytests/Issue1216Tests.java index 07955e2d9f..d34cc55b54 100644 --- a/arithmetization/src/test/java/net/consensys/linea/replaytests/Issue1216Tests.java +++ b/arithmetization/src/test/java/net/consensys/linea/replaytests/Issue1216Tests.java @@ -46,6 +46,7 @@ public class Issue1216Tests extends TracerTestBase { * blowing up with a NPE since the "after" version of the self destructor didn't exist yet in the * code. This was solved in issue #1216. */ + @Tag("nightly") @Tag("replay") @Test void issue_1216_sepolia_block_2392659(TestInfo testInfo) { diff --git a/arithmetization/src/test/java/net/consensys/linea/replaytests/Issue1264Tests.java b/arithmetization/src/test/java/net/consensys/linea/replaytests/Issue1264Tests.java index 3912d93257..8ea9ff0152 100644 --- a/arithmetization/src/test/java/net/consensys/linea/replaytests/Issue1264Tests.java +++ b/arithmetization/src/test/java/net/consensys/linea/replaytests/Issue1264Tests.java @@ -24,6 +24,7 @@ import org.junit.jupiter.api.TestInfo; import org.junit.jupiter.api.extension.ExtendWith; +@Tag("nightly") @Tag("replay") @ExtendWith(UnitTestWatcher.class) public class Issue1264Tests extends TracerTestBase { diff --git a/arithmetization/src/test/java/net/consensys/linea/replaytests/ReplayTests.java b/arithmetization/src/test/java/net/consensys/linea/replaytests/ReplayTests.java index 61f09808a6..e498bb8d39 100644 --- a/arithmetization/src/test/java/net/consensys/linea/replaytests/ReplayTests.java +++ b/arithmetization/src/test/java/net/consensys/linea/replaytests/ReplayTests.java @@ -76,6 +76,7 @@ void multipleFailingCallToEcrecover(TestInfo testInfo) { } @Test + @Tag("nightly") void incident777zkGethMainnet(TestInfo testInfo) { replay(OLD_MAINNET_TESTCONFIG, "7461019-7461030.mainnet.json.gz", testInfo); } @@ -162,6 +163,7 @@ void returnOogxForCodeDepositCost(TestInfo testInfo) { } @Test + @Tag("nightly") void modexpTriggeringNonAlignedFirstLimbSingleSourceMmuModexp(TestInfo testInfo) { replay(OLD_MAINNET_TESTCONFIG, "3108622-3108633.mainnet.json.gz", testInfo); } diff --git a/gradle/tests.gradle b/gradle/tests.gradle index c0598d7770..3b63bcd4eb 100644 --- a/gradle/tests.gradle +++ b/gradle/tests.gradle @@ -216,7 +216,9 @@ tasks.register("downloadShoemiBesuPlugin", Download) { } /* - * Nightly replay tests (only nightly replay) and Nightly tests (no replay) + * Fast replay tests (only tagged with replay) + * Nightly replay tests (tagged with replay and nightly+replay) + * Nightly tests (no replay) */ tasks.register("fastReplayTests", Test) { @@ -298,7 +300,7 @@ tasks.register("nightlyReplayTests", Test) { } tasks.register("nightlyTests", Test) { - if (System.getenv().containsKey("NIGHTLY_REPLAY_TESTS_PARALLELISM")) { + if (System.getenv().containsKey("NIGHTLY_TESTS_PARALLELISM")) { systemProperty("junit.jupiter.execution.parallel.enabled", true) systemProperty("junit.jupiter.execution.parallel.mode.default", "concurrent") systemProperty("junit.jupiter.execution.parallel.mode.classes.default", "concurrent") @@ -309,6 +311,7 @@ tasks.register("nightlyTests", Test) { useJUnitPlatform { includeTags("nightly") + excludeTags("replay") } finalizedBy(jacocoNightlyTestsReport) }