Skip to content

CCIP - add ExtraDataCodecRegistry to sync SourceChainExtraDataCodecs across LOOPed relayers#19550

Merged
ogtownsend merged 17 commits intodevelopfrom
ogt/ccip-add-extradatacodec-registry-oracle-creator-v3
Sep 30, 2025
Merged

CCIP - add ExtraDataCodecRegistry to sync SourceChainExtraDataCodecs across LOOPed relayers#19550
ogtownsend merged 17 commits intodevelopfrom
ogt/ccip-add-extradatacodec-registry-oracle-creator-v3

Conversation

@ogtownsend
Copy link
Collaborator

The CCIP codec implementation faces a "chicken and egg" problem:

  • The Codec() within CCIPProvider requires the extraDataCodec map (map[chainFamily]SourceChainExtraDataCodec).
  • However, creating the extraDataCodec map requires the prior creation of all other codecs.
  • This PR creates an ExtraDataCodecRegistry singleton where chain families can be registered with no-op SourceChainExtraDataCodec implementations until their actual source chain codecs are provided by CCIPProvider
  • The singleton maintains the underlying ExtraDataCodecMap and can serve the ExtraDataCodecBundle interface over gRPC

Related PRs:

  1. Bump cl-common import and update GetFeeQuoterTokenUpdates chainlink-ton#190
  2. CCIP - add ExtraDataCodecBundle protobuf and client/server support chainlink-common#1548
  3. Update DefaultAccessor GetFeeQuoterTokenUpdates and add SolanaUSDCReaderAccessor impl chainlink-ccip#1206

@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.

@ogtownsend ogtownsend force-pushed the ogt/ccip-add-extradatacodec-registry-oracle-creator-v3 branch 5 times, most recently from c568d25 to 01c0403 Compare September 25, 2025 06:17
@amit-momin amit-momin force-pushed the ogt/ccip-add-extradatacodec-registry-oracle-creator-v3 branch from f19bc31 to 1774b63 Compare September 26, 2025 18:54
@ogtownsend ogtownsend force-pushed the ogt/ccip-add-extradatacodec-registry-oracle-creator-v3 branch 2 times, most recently from a1ce865 to 68bb613 Compare September 29, 2025 02:12
@amit-momin amit-momin force-pushed the ogt/ccip-add-extradatacodec-registry-oracle-creator-v3 branch 2 times, most recently from 5cf49d0 to 709b7ec Compare September 29, 2025 15:23
@amit-momin amit-momin force-pushed the ogt/ccip-add-extradatacodec-registry-oracle-creator-v3 branch from 709b7ec to 60a0bd2 Compare September 29, 2025 15:26
@ogtownsend ogtownsend force-pushed the ogt/ccip-add-extradatacodec-registry-oracle-creator-v3 branch from 778a9d4 to 535b4ad Compare September 30, 2025 15:07
@cl-sonarqube-production
Copy link

@ogtownsend ogtownsend added this pull request to the merge queue Sep 30, 2025
Merged via the queue into develop with commit 3c0d9f0 Sep 30, 2025
191 of 192 checks passed
@ogtownsend ogtownsend deleted the ogt/ccip-add-extradatacodec-registry-oracle-creator-v3 branch September 30, 2025 23:53
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.

5 participants