Conversation
|
👋 0xsuryansh, thanks for creating this pull request! To help reviewers, please consider creating future PRs as drafts first. This allows you to self-review and make any final changes before notifying the team. Once you're ready, you can mark it as "Ready for review" to request feedback. Thanks! |
There was a problem hiding this comment.
Pull request overview
Adds a read-only changeset and basic tests to validate the post-migration on-chain state for the USDC CLD rollout across EVM chains (token admin registry active pool, USDCTokenPoolProxy routing/config, remote lane config, and Ethereum home-chain liquidity migration invariants).
Changes:
- Introduces
ValidateUSDCCLDRolloutchangeset with config schema, precondition validation, and on-chain reads/assertions. - Adds home-chain liquidity migration checks (hybrid lock-release mode, lockbox auth, locked/balance derived expectations).
- Adds unit tests covering key
VerifyPreconditionsfailures and anApplymissing-chain failure.
Reviewed changes
Copilot reviewed 2 out of 2 changed files in this pull request and generated 6 comments.
| File | Description |
|---|---|
| ccv/chains/evm/deployment/v1_7_0/changesets/validate_usdc_cld_rollout.go | New post-validation changeset implementing config validation + on-chain assertions for USDC CLD rollout. |
| ccv/chains/evm/deployment/v1_7_0/changesets/validate_usdc_cld_rollout_test.go | New tests for precondition validation and basic apply error behavior. |
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
…into cctp_migration_post_validation
4e6ab47 to
fbac028
Compare
|
What It Does
The validator runs two independent checks:
chainschecks (any EVM chain):homeChainLiquiditychecks (Ethereum mainnet or Sepolia only):The validator aggregates findings: it attempts to run all independent validations and reports all
misconfigurations it can observe in a single error, only skipping checks that are blocked by a
failed upstream read/bind.
Typical Rollout Usage Patterns
Pre-cutover (in-flight messages must use legacy pool):
USDCTokenPool 1.6.2HybridLockReleaseUSDCTokenPool 1.6.2Post-cutover (proxy becomes active pool):
USDCTokenPoolProxy 2.0.0Remote pool list evolution (legacy only -> legacy + new):
expectedremotepoolkinds: [{legacy kind...}, {new kind...}]Minimal YAML Sketch
This matches the repo’s existing YAML style where keys are lowercase field names: