chainlink icon indicating copy to clipboard operation
chainlink copied to clipboard

[NONEVM-1612] add bare-bones EVM to TON structure in E2E env

Open briansztamfater opened this issue 8 months ago • 4 comments

NONEVM-1612 NONEVM-1718

Initial set up of an EVM > TON messaging test to identify missing components. We need to iterate on this as we tackle all the dependencies / blockers until the test eventually passes.

Primary Changes

  • Added TON chain generation, management, and client setup using tonutils-go library
  • Created ccipton package with noop implementations for TON CCIP components
  • Added ccipnoop package with placeholder implementations for all CCIP contract interfaces
  • Created NoopTransmitter contract transmitter factory for chains without deployed CCIP contracts
  • Added WithTonChains() configuration option and TON-specific test helpers
  • Added TON keystore integration and transmitter key handling
  • Intended failure assertion in AddLane is implemented

Dependencies

  • [x] https://github.com/smartcontractkit/chainlink/pull/17666
  • [x] https://github.com/smartcontractkit/chainlink/pull/17893
  • [x] https://github.com/smartcontractkit/chainlink/pull/17946
  • [x] https://github.com/smartcontractkit/chainlink/pull/17962
  • [x] https://github.com/smartcontractkit/chainlink/pull/17930
  • [x] https://github.com/smartcontractkit/chainlink/pull/17706
  • [x] https://github.com/smartcontractkit/chainlink/pull/16363

briansztamfater avatar Apr 30 '25 13:04 briansztamfater

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.

:medal_military: No JIRA issue number found in: PR title, commit message, or branch name. Please include the issue ID in one of these.

github-actions[bot] avatar Apr 30 '25 14:04 github-actions[bot]

Another thing, I noticed every time after running the test, it generate node data for the local TON client. We probably want to clean it up after each run. cc @jadepark-dev

huangzhen1997 avatar May 08 '25 21:05 huangzhen1997

Flakeguard Summary

Ran new or updated tests between develop and 8d967d7974e1f655e465fbabd81d790fe9bd4839 (ccip-ton-e2e).

View Flaky Detector Details | Compare Changes

Found Flaky Tests :x:

1 Results
Name Pass Ratio Panicked? Timed Out? Race? Runs Successes Failures Skips Package Package Panicked? Avg Duration Code Owners
TestUpdateTokenPriceFeedsFeeQuoterChangeset/MCMS_enabled 0% true true false 1 0 1 0 github.com/smartcontractkit/chainlink/deployment/ccip/changeset/v1_6 true 0s @smartcontractkit/ccip-tooling, @smartcontractkit/ccip-offchain, @smartcontractkit/core, @smartcontractkit/deployment-automation, @smartcontractkit/cld-team

Artifacts

For detailed logs of the failed tests, please refer to the artifact failed-test-results-with-logs.json.

github-actions[bot] avatar Jun 04 '25 18:06 github-actions[bot]

@patrickhuie19 Any idea why the CODEOWNERS check is failing here? There's lots of errors, most of them not caused by this PR

archseer avatar Jun 20 '25 02:06 archseer

@patrickhuie19 Any idea why the CODEOWNERS check is failing here? There's lots of errors, most of them not caused by this PR

@archseer handling offline to unblock, but that check should only become required once it passes on a clean PR

patrickhuie19 avatar Jun 23 '25 15:06 patrickhuie19