Skip to content

[DX-2592] migrate automation log poller tests to devenv#21022

Merged
Tofel merged 97 commits intodevelopfrom
dx-2592-migrate-log-poller-tests-geth
Feb 10, 2026
Merged

[DX-2592] migrate automation log poller tests to devenv#21022
Tofel merged 97 commits intodevelopfrom
dx-2592-migrate-log-poller-tests-geth

Conversation

@Tofel
Copy link
Contributor

@Tofel Tofel commented Feb 4, 2026

Automation - basic smoke test + load test
LogPoller - all tests

Automation tests will run nightly. LP in every PR and MQ that modifies core code.

@skudasov skudasov force-pushed the dx-2592-migrate-log-poller-tests-geth branch from a7562c0 to 82167b3 Compare February 9, 2026 10:37
@Tofel Tofel marked this pull request as ready for review February 9, 2026 12:16
@Tofel Tofel requested review from a team as code owners February 9, 2026 12:16
Copilot AI review requested due to automatic review settings February 9, 2026 12:16
@Tofel Tofel requested a review from a team as a code owner February 9, 2026 12:16
Copy link
Contributor

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

Migrates automation/logpoller integration testing into devenv (incl. new smoke/load workflows) and refactors shared EVM/product plumbing to support running soak/smoke against Geth-style environments.

Changes:

  • Adds new devenv automation smoke tests and logpoller test utilities/configs, plus CI workflows to run them.
  • Refactors devenv product interface to generate node config + secrets and updates OCR2/Automation configurators accordingly.
  • Centralizes EVM helpers (funding/client/tx send) under devenv/products and adds log scanning + funds return retry logic.

Reviewed changes

Copilot reviewed 54 out of 55 changed files in this pull request and generated 18 comments.

Show a summary per file
File Description
integration-tests/smoke/automation_test.go Marks legacy smoke entrypoints as deprecated in favor of devenv tests.
integration-tests/contracts/ethereum_contracts_automation.go Adjusts registry v2.1 loader wiring to a different wrapper/ABI source.
go.md Updates internal dependency graph documentation.
devenv/tests/ocr2/load_test.go Renames OCR2 load test and switches to shared products.ETHClient.
devenv/tests/logpoller/gun.go Adds a WASP “gun” to emit logs for logpoller smoke testing.
devenv/tests/logpoller/fixed_depth.toml Adds logpoller env config for fixed finality depth.
devenv/tests/logpoller/finality_tag.toml Adds logpoller env config for RPC finality tag.
devenv/tests/automation/test_helpers.go Adds automation test helper types and registry log reporting utilities.
devenv/tests/automation/smoke_test.go Adds devenv automation registry smoke tests (v2.0–v2.3).
devenv/tests/automation/load_test_helpers.go Adds automation load helpers (multicall log trigger gun + stats).
devenv/products/refund.go Adds logic to return funds from node keys with retry strategies.
devenv/products/ocr2/evm.go Removes OCR2-local EVM helpers (moved into devenv/products).
devenv/products/ocr2/configuration.go Updates OCR2 configurator to new product interface and shared helpers.
devenv/products/ocr2/basic.toml Adds products header for OCR2 product config.
devenv/products/nodes.go Adds helper to restart node containers during tests/upgrades.
devenv/products/logs.go Adds Chainlink node log scanning utility for “concerning logs”.
devenv/products/evm.go Adds shared EVM utilities (client, funding, sending funds, Seth init).
devenv/products/config.go Introduces shared GasSettings type.
devenv/products/common.go Removes old shared helper (moved into products/evm.go).
devenv/products/automation/soak.toml Adds automation soak config for nightly load runs.
devenv/products/automation/keeper_helpers.go Adds automation keeper deployment/registration helpers + concurrency guard.
devenv/products/automation/configuration.go Adds automation product configurator and node config/secrets generators.
devenv/products/automation/concurrency/slice_test.go Adds tests for slice partitioning helper.
devenv/products/automation/concurrency/slice.go Adds generic slice partitioning helper.
devenv/products/automation/concurrency/executor_test.go Adds tests for concurrent executor utility.
devenv/products/automation/concurrency/executor.go Adds concurrent executor utility used by automation helpers.
devenv/products/automation/concurrency/example_test.go Adds usage examples for concurrent executor utility.
devenv/products/automation/basic.toml Adds multi-instance automation product config (smoke matrix).
devenv/products/automation/automation_ocr_helpers.go Adds multicall LINK funding + consumer deployment helpers.
devenv/interface.go Updates product interface to support config + secrets generation and multiple blockchains/nodesets.
devenv/fakes/ocr2/ocr2.go Moves OCR2 fake routes into a dedicated package.
devenv/fakes/main.go Registers OCR2 + automation fake routes in a single fake service.
devenv/fakes/automation/automation.go Adds automation fake routes for streams/report responses.
devenv/fakes/Justfile Renames fakes docker image to chainlink-fakes.
devenv/environment.go Adds automation product support and wires config+secrets overrides to nodes.
devenv/env.toml Updates base dev env: chain params, fake image name, node count, CL image versions.
devenv/contracts/test_contracts.go Adds LogEmitter test contract wrapper used by logpoller tests.
devenv/contracts/multicall.go Adds multicall helpers for batching log trigger load calls.
devenv/contracts/keeper.go Introduces keeper/automation contract interfaces + settings models for devenv.
devenv/contracts/contract_models.go Adds common interfaces for contracts used by devenv tests.
devenv/contracts/contract_caller.go Adds wrapped contract backend with backward-compatible call args + retry support.
devenv/cmd/cl/completion.go Updates CLI completion to OCR2-specific test command.
devenv/cmd/cl/chainlink.go Changes CLI test command to ocr2:test with explicit -run filter.
.github/workflows/devenv-ocr2.yml Updates workflow test filter to new OCR2 test name.
.github/workflows/devenv-logpoller.yml Adds CI workflow for logpoller smoke tests across two env configs.
.github/workflows/devenv-automation-smoke.yml Adds nightly automation smoke workflow (registries v2.0–v2.3).
.github/workflows/devenv-automation-load.yml Adds nightly automation soak/load workflow.

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

@Tofel Tofel force-pushed the dx-2592-migrate-log-poller-tests-geth branch from 20120d7 to 4be4475 Compare February 9, 2026 17:02
@cl-sonarqube-production
Copy link

Quality Gate failed Quality Gate failed

Failed conditions
29.3% Duplication on New Code (required ≤ 10%)

See analysis details on SonarQube

@Tofel Tofel requested a review from anirudhwarrier February 10, 2026 11:00
@Tofel Tofel changed the title [DX-2592] migrate log poller tests -- soak with Geth [DX-2592] migrate automation log poller tests to devenv Feb 10, 2026
@Tofel Tofel added this pull request to the merge queue Feb 10, 2026
Merged via the queue into develop with commit 7c6b7e1 Feb 10, 2026
283 of 288 checks passed
@Tofel Tofel deleted the dx-2592-migrate-log-poller-tests-geth branch February 10, 2026 15:06
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.

4 participants