Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

CCIP-4687 Support Solana in the FeeQuoter #15811

Open
wants to merge 10 commits into
base: develop
Choose a base branch
from

Conversation

jhweintraub
Copy link
Collaborator

Add Solana Support to the FeeQuoter by adding

  1. New Family Chain Selector CHAIN_FAMILY_SELECTOR_SOL
  2. New SOL_EXTRA_EXTRA_ARGS_V1_TAG
  3. Adding parsing support and control flow logic for both of the above.

@jhweintraub jhweintraub requested a review from a team as a code owner December 27, 2024 18:47
Copy link
Contributor

github-actions bot commented Dec 27, 2024

Solidity Review Jira issue

Hey! We have taken the liberty to link this PR to a Jira issue for Solidity Review.

This is a new feature, that's currently in the pilot phase, so please make sure that the linkage is correct. In a contrary case, please update it manually in JIRA and replace Solidity Review issue key in the changeset file with the correct one.
Please reach out to the Test Tooling team and notify them about any issues you encounter.

Any changes to the Solidity Review Jira issue should be reflected in the changeset file. If you need to update the issue key, please do so manually in the following changeset file: contracts/.changeset/clean-horses-cheat.md

This PR has been linked to Solidity Review Jira issue: CCIP-3966

Copy link
Contributor

github-actions bot commented Dec 27, 2024

Static analysis results are available

Hey @jhweintraub, you can view Slither reports in the job summary here or download them as artifact here.
Please check them before merging and make sure you have addressed all issues.

Copy link
Contributor

github-actions bot commented Dec 27, 2024

AER Report: CI Core

aer_workflow , commit , Clean Go Tidy & Generate , Scheduled Run Frequency , Detect Changes , Flakeguard Root Project / Get Tests To Run , Flakeguard Deployment Project , test-scripts , GolangCI Lint (.) , Core Tests (go_core_tests) , Core Tests (go_core_tests_integration) , Core Tests (go_core_ccip_deployment_tests) , Core Tests (go_core_fuzz) , Core Tests (go_core_race_tests) , Flakeguard Root Project / Run Tests , lint , Flakeguard Root Project / Report , SonarQube Scan , Flakey Test Detection

1. Max code size exceeded:[go_core_ccip_deployment_tests]

Source of Error:
Run tests	2024-12-28T00:23:37.1217279Z logger.go:146: 00:23:35.054478426	ERROR	Failed to deploy contract	{"chain": " (5548718428018410741)", "err": "max code size exceeded"}
Run tests	2024-12-28T00:23:37.1217826Z logger.go:146: 00:23:35.054499896	ERROR	Failed to deploy fee quoter	{"chain": " (5548718428018410741)", "err": "max code size exceeded"}
Run tests	2024-12-28T00:23:37.1218388Z logger.go:146: 00:23:35.054507640	ERROR	Failed to deploy chain contracts	{"chain": 5548718428018410741, "err": "max code size exceeded"}
Run tests	2024-12-28T00:23:37.1218927Z logger.go:146: 00:23:35.054850890	ERROR	Failed to deploy contract	{"chain": " (909606746561742123)", "err": "max code size exceeded"}
Run tests	2024-12-28T00:23:37.1219466Z logger.go:146: 00:23:35.054871278	ERROR	Failed to deploy fee quoter	{"chain": " (909606746561742123)", "err": "max code size exceeded"}
Run tests	2024-12-28T00:23:37.1220015Z logger.go:146: 00:23:35.054878071	ERROR	Failed to deploy chain contracts	{"chain": 909606746561742123, "err": "max code size exceeded"}
Run tests	2024-12-28T00:23:37.1220786Z logger.go:146: 00:23:35.054887829	ERROR	Failed to deploy chain contracts	{"err": "failed to deploy chain contracts for chain 5548718428018410741: max code size exceeded"}
Run tests	2024-12-28T00:23:37.1221580Z logger.go:146: 00:23:35.054903538	ERROR	Failed to deploy CCIP contracts	{"err": "failed to deploy chain contracts for chain 5548718428018410741: max code size exceeded", "newAddresses": {}}
Run tests	2024-12-28T00:23:37.1221767Z cs_update_rmn_config_test.go:294: 
Run tests	2024-12-28T00:23:37.1222439Z 	Error Trace:	/home/runner/work/chainlink/chainlink/deployment/ccip/changeset/cs_update_rmn_config_test.go:294
Run tests	2024-12-28T00:23:37.1222675Z 	Error: 	Received unexpected error:
Run tests	2024-12-28T00:23:37.1223285Z 	 	failed to apply changeset at index 1: max code size exceeded: <nil>
Run tests	2024-12-28T00:23:37.1223581Z 	Test: 	TestSetRMNRemoteOnRMNProxy

Why: The error "max code size exceeded" indicates that the size of the contract being deployed exceeds the maximum allowed size for a smart contract on the blockchain. This is a common issue when the contract code is too large to be deployed in a single transaction.

Suggested fix: To resolve this issue, consider breaking down the contract into smaller, modular contracts that can be deployed separately. Alternatively, optimize the contract code to reduce its size by removing unnecessary functions or using libraries that minimize code size.

2. Max code size exceeded:[go_core_tests]

Source of Error:
Run tests	2024-12-28T00:27:43.6928742Z --- FAIL: TestDeployAllV1_6 (0.07s)
Run tests	2024-12-28T00:27:43.6929163Z deployment_test.go:87: 
Run tests	2024-12-28T00:27:43.6931640Z 	Error Trace:	/home/runner/work/chainlink/chainlink/core/gethwrappers/ccip/deployment_test/deployment_test.go:87
Run tests	2024-12-28T00:27:43.6932646Z 	Error: 	Received unexpected error:
Run tests	2024-12-28T00:27:43.6933328Z 	 	max code size exceeded
Run tests	2024-12-28T00:27:43.6933948Z 	Test: 	TestDeployAllV1_6

Why: Similar to the previous error, this indicates that the contract being tested for deployment exceeds the maximum allowed size for a smart contract on the blockchain.

Suggested fix: Apply the same strategies as mentioned above: break down the contract into smaller parts or optimize the code to reduce its size. Additionally, ensure that the test environment is configured to handle the deployment of smaller, modular contracts.

@cl-sonarqube-production
Copy link

Quality Gate passed Quality Gate passed

Issues
0 New issues
0 Fixed issues
0 Accepted issues

Measures
0 Security Hotspots
No data about Coverage
No data about Duplication

See analysis details on SonarQube

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