Skip to content

[Chore] refactor devenv (transmitter) key funding#1096

Draft
faisal-chainlink wants to merge 4 commits into
mainfrom
chore/refactor-devenv-key-funding
Draft

[Chore] refactor devenv (transmitter) key funding#1096
faisal-chainlink wants to merge 4 commits into
mainfrom
chore/refactor-devenv-key-funding

Conversation

@faisal-chainlink
Copy link
Copy Markdown
Contributor

@faisal-chainlink faisal-chainlink commented May 11, 2026

Description

This issue this PR solves is that devenv previously ignored non-EVM keys when bringing up a bootstrapped service. The #FetchBootstrapKeys method tries to handle conversion of public keys to addresses which works well for EVM but would require hardcoding some keys names in chainlink-ccv if we want to apply the same approach for altVMs (specifically ones that use a different address format than than of EVM).

The changes are primarily concerned without allowing each impl factory to return the name of the default key (name) used for transmission as well as exposing a method for deducing the address from a keystore key response.

Finally, the EVM factory and other EVM impls are updated to handle the change described above.

Testing

  1. E2E tests passing
  2. Corresponding PR in chainlink-stellar uses the changes defined in this PR

Checklist

...TODO

  • Breaking changes documented in changelog (see changelog directory)
  • Cross link related PRs (in this or other repositories)
  • just lint fix - no new lint errors
  • just generate - mocks and protobufs are up to date

@github-actions
Copy link
Copy Markdown

Code coverage report:

Package main chore/refactor-devenv-key-funding Diff
github.com/smartcontractkit/chainlink-ccv/aggregator 49.35% 49.31% -0.04%
github.com/smartcontractkit/chainlink-ccv/bootstrap 47.23% 47.23% +0.00%
github.com/smartcontractkit/chainlink-ccv/cli 65.13% 65.13% +0.00%
github.com/smartcontractkit/chainlink-ccv/cmd 15.54% 15.54% +0.00%
github.com/smartcontractkit/chainlink-ccv/common 56.54% 56.54% +0.00%
github.com/smartcontractkit/chainlink-ccv/executor 45.97% 45.97% +0.00%
github.com/smartcontractkit/chainlink-ccv/indexer 37.68% 37.68% +0.00%
github.com/smartcontractkit/chainlink-ccv/integration 46.18% 46.18% +0.00%
github.com/smartcontractkit/chainlink-ccv/pkg 84.62% 84.62% +0.00%
github.com/smartcontractkit/chainlink-ccv/pricer 0.00% 0.00% +0.00%
github.com/smartcontractkit/chainlink-ccv/protocol 63.75% 63.75% +0.00%
github.com/smartcontractkit/chainlink-ccv/verifier 34.47% 34.47% +0.00%
Total 46.30% 46.30% +0.00%

// for this chain family. It should look up its DefaultTransmitterKeyName
// in keys.Keys and convert the public key to the appropriate address format.
// Returns nil if the key is not found.
DeriveAddressesFromKeys(keys services.BootstrapKeys) []protocol.UnknownAddress
Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

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

perhaps it's better to place this within the ChainFamilyAdapter rather than here?

@faisal-chainlink faisal-chainlink requested a review from winder May 12, 2026 14:12
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