Skip to content

Conversation

@Tofel
Copy link
Contributor

@Tofel Tofel commented Feb 12, 2026

TL;DR:
Integration test are faster by up to 10 minutes.

Before
image

After
image

This pull request introduces a new bucketing system for both the EVM read tests and the legacy V2 suite scenarios in the CRE system tests, enabling better runtime balancing and parallelization. It refactors the test suite structure to use these buckets, updates test runner logic accordingly, and ensures that each test case or scenario is assigned to exactly one bucket with validation. Additionally, some minor workflow and test cleanup changes are included.

Test suite bucketing and refactoring:

  • Added bucketing.go files in evm/evmread/config and v2suite/config to define and manage buckets for EVM read test cases and legacy V2 suite scenarios, including validation logic to ensure all cases are assigned exactly once.
  • Refactored cre_suite_test.go to replace monolithic test functions with new bucket-based test runners: Test_CRE_V2_Suite_Bucket_A, Test_CRE_V2_Suite_Bucket_B, Test_CRE_V2_Suite_Bucket_C for legacy V2 suite scenarios, and Test_CRE_V2_EVM_Read_HeavyCalls, Test_CRE_V2_EVM_Read_StateQueries, Test_CRE_V2_EVM_Read_TxArtifacts for EVM read tests.
  • Updated EVM read test execution logic to support running tests by bucket and to validate bucket assignments, with a new ExecuteEVMReadTestForCases function.

Workflow and test configuration updates:

  • Updated .github/workflows/cre-system-tests.yaml to align with new bucket naming conventions and removed a deprecated topology.
  • Removed unnecessary workflow cleanup delay in HTTPActionFailureTest to streamline test execution.

Imports and dependency management:

  • Added new import statements for the bucketing configuration packages in cre_suite_test.go to support the new structure.

  • Single DON topology no longer used in the CI.

@trunk-io
Copy link

trunk-io bot commented Feb 12, 2026

Static BadgeStatic BadgeStatic BadgeStatic Badge

View Full Report ↗︎Docs

@github-actions
Copy link
Contributor

I see you updated files related to core. Please run pnpm changeset in the root directory to add a changeset as well as in the text include at least one of the following tags:

  • #added For any new functionality added.
  • #breaking_change For any functionality that requires manual action for the node to boot.
  • #bugfix For bug fixes.
  • #changed For any change to the existing functionality.
  • #db_update For any feature that introduces updates to database schema.
  • #deprecation_notice For any upcoming deprecation functionality.
  • #internal For changesets that need to be excluded from the final changelog.
  • #nops For any feature that is NOP facing and needs to be in the official Release Notes for the release.
  • #removed For any functionality/config that is removed.
  • #updated For any functionality that is updated.
  • #wip For any change that is not ready yet and external communication about it should be held off till it is feature complete.

@Tofel Tofel force-pushed the dx-2788-break-down-cre-suites branch from 0ce012e to 394d5ee Compare February 12, 2026 16:58
@cl-sonarqube-production
Copy link

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant