Skip to content

refactor evm registration#997

Merged
tt-cll merged 2 commits intomainfrom
tt/factory
Apr 6, 2026
Merged

refactor evm registration#997
tt-cll merged 2 commits intomainfrom
tt/factory

Conversation

@tt-cll
Copy link
Copy Markdown
Contributor

@tt-cll tt-cll commented Apr 2, 2026

No description provided.

@tt-cll tt-cll marked this pull request as ready for review April 3, 2026 13:49
@tt-cll tt-cll requested review from a team and skudasov as code owners April 3, 2026 13:49
Copilot AI review requested due to automatic review settings April 3, 2026 13:49
@tt-cll tt-cll enabled auto-merge April 3, 2026 13:49
Copy link
Copy Markdown
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

Refactors EVM chain registration to be registry/factory-driven rather than having EVM-specific branches embedded in environment/lib setup.

Changes:

  • Removed the inline EVM implementation construction in Lib.Chains() and consistently instantiate chain implementations via ImplFactory.
  • Added an EVM ImplFactory plus a CLDF provider factory registration hook (init()) to centralize EVM wiring.
  • Moved EVM CLDF provider creation out of NewCLDFOperationsEnvironmentWithOffchain() to the CLDF provider registry and adjusted config helpers accordingly.

Reviewed changes

Copilot reviewed 4 out of 4 changed files in this pull request and generated 3 comments.

File Description
build/devenv/lib.go Removes the EVM special-case in chain impl creation; uses GetImplFactory uniformly.
build/devenv/evm_factory.go Introduces EVM ImplFactory + registers an EVM CLDF provider factory.
build/devenv/environment.go Resolves product config creation via family factory; adjusts EVM key checks and clarifies comments.
build/devenv/cldf.go Removes inline EVM CLDF provider setup and uses the CLDF provider registry for non-Canton families.

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

@github-actions
Copy link
Copy Markdown

github-actions bot commented Apr 3, 2026

Code coverage report:

Package main tt/factory diff
github.com/smartcontractkit/chainlink-ccv/aggregator 48.46% 48.46% +0.00%
github.com/smartcontractkit/chainlink-ccv/bootstrap 42.35% 42.35% +0.00%
github.com/smartcontractkit/chainlink-ccv/cli 65.13% 65.13% +0.00%
github.com/smartcontractkit/chainlink-ccv/cmd 0.00% 0.00% +0.00%
github.com/smartcontractkit/chainlink-ccv/common 50.74% 50.74% +0.00%
github.com/smartcontractkit/chainlink-ccv/executor 45.74% 45.74% +0.00%
github.com/smartcontractkit/chainlink-ccv/indexer 37.46% 37.46% +0.00%
github.com/smartcontractkit/chainlink-ccv/integration 46.85% 46.96% +0.11%
github.com/smartcontractkit/chainlink-ccv/pkg 100.00% 100.00% +0.00%
github.com/smartcontractkit/chainlink-ccv/pricer 0.00% 0.00% +0.00%
github.com/smartcontractkit/chainlink-ccv/protocol 69.07% 69.07% +0.00%
github.com/smartcontractkit/chainlink-ccv/verifier 32.62% 32.62% +0.00%

Comment on lines +1078 to +1079
// A future improvement: add a GetTokenTransferConfigs() method to CCIP17Configuration so each
// chain impl provides its own token configs, rather than using a centralized BuildTokenTransferConfigs.
Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

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

👍

@tt-cll tt-cll added this pull request to the merge queue Apr 6, 2026
Merged via the queue into main with commit c1965b8 Apr 6, 2026
29 of 30 checks passed
@tt-cll tt-cll deleted the tt/factory branch April 6, 2026 14:19
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