-
Notifications
You must be signed in to change notification settings - Fork 51
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
[WIP] Batch1: Adding TOML configs for B^2, BoB, Berachain, Unichain, Worldchain and needed error mappings #1518
Closed
Conversation
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
…ich have no TypeAndVersion(#1368) (#1369) ## Motivation - 1.0.0 contracts have no TypeAndVersion however tooling validation expects a TypeAndVersion be set ## Solution - Return `Unknown 1.0.0` for contracts with an empty type and version string, implying that they are 1.0.0 deployed contracts ## Motivation ## Solution Co-authored-by: Peter Olds <[email protected]>
Bumping chain-selectors to smartcontractkit/chain-selectors#53
Cherry-pick of smartcontractkit/chainlink#14236 --------- Co-authored-by: Dmytro Haidashenko <[email protected]>
* Added gas limit estimation feature to EVM gas estimators * Added changeset * Fixed linting * Added new failure tests * Fixed test * Fixed mock configs in ccip capabilities * Fixed configs * Fixed test * Refactored GetFee method * Added EstimatedGasBuffer and addressed feedback * Fixed linting * Fixed config doc and tests * Addressed feedback * Fixed typo * Repurposed LimitMultiplier to be used as a buffer for estimated gas * Updated mocks * Removed LimitMultiplier if gas estimation fails and updated config docs * Fixed Broadcaster test * Enabled uncapped gas limit estimation if provided fee limit is 0 * Updated estimate gas buffer to be a fixed value instead of using LimitMultiplier * Updated log message * Updated logs --------- Co-authored-by: Prashant Yadav <[email protected]>
* Set from address for gas limit estimation * Updated tests * Added changeset
* Updated EstimateGasLimit config name to EstimateLimit * Updated mocks * Fixed linting * Updated changeset
* Add Mantle errors * Add tests for Mantle errors * changeset * Update seven-kiwis-run.md
* edited op stack oracle to include tokenRatio for Mantle * typo fix * fixed syntax errors * fixed compilation errors in test * added unit tests for Mantle oracle changes * typo fix * added changeset file * added hashtag to changeset * changed unit test to include new chaintype * changed test to include new chaintype * typo fix * addressed alphabetical order and error issues * used batch call instead of separate calls for L1 Base Fee * added test cases for RPC errors to Mantle
* make Mantle use vanilla OP gas price oracle * changeset * bring back l1 oracle * update mock * [BCI-4072] changeset update --------- Co-authored-by: valerii.kabisov <[email protected]> Co-authored-by: Valerii Kabisov <[email protected]>
* Introduce universal estimator * Fixes * Use WeiMin to cap bump price * Update connectivity logic * Fix error * Fixes * Cover an edge case when enforcing limits * Add changeset * Update mempool check logic * Update config names * Convert Universal Estimator to service * Client changes to support UE * Introduce configs * Update mocks * Fix lint * Fix test cases * Fix mockery * Fix test cases * Update comment * Fix Start/Close sync issue * Address feedback * Fix lint * Fix lint * More changes * Add more comments * Fix merge conflicts * Update CONFIG * Rename to FeeHistory estimator * Rename * Exclude zero priced priority fees * Remove HasMempool * Remove testing commit * Fixes * Add DefaultJitter * Add optimizations * Fix testscripts * Fix name * Update error messages
* Add node level OOC error * Add changeset
* Change Polygon zkEVM to use SuggestedPriceEstimator (SHIP-2885) * Set PriceMin to 1mwei for Polygon zkEVM * Remove Polygon zkEVM Goerli * Enable FeeHistory estimator for Polygon zkEVM * Update PriceMin * apply suggestions * Set CacheTimeout to 2 seconds * Revert back to 5s cachetimeout * Change timeout to 4 seconds --------- Co-authored-by: joaoluisam <[email protected]>
* Add Zircuit Configs * Add Changeset * Update changeset
## Motivation Set ChainType='astar' to use custom finality on mainnet ## Solution --------- Co-authored-by: simsonraj <[email protected]>
Specifically, allow for empty message with zero gas. ## Motivation EVM2EVMOffRamp checks the message for content and gaslimit and skips calling ccip receive if they're not present. Consequently the mock errors (ReceiverError) when sending only tokens to a smart contract. This update will help chainlink-local correctly process fork-based tests too. ## Solution The MockRouter implementation of _routeMessage was last updated in #669 and is out of sync with the logic in EVM2EVMOffRamp.
…1161) ## Motivation We use DAGasPriceEstimator to roughly estimate execution cost of a message in the Exec plugin. During this execution cost estimation, we need to account for the data availability component: ``` type DAGasPriceEstimator struct { daOverheadGas int64 gasPerDAByte int64 daMultiplier int64 } ``` however, these fields are not used atm, they remain 0 during cost estimation. The challenge is they live in OnRamp.sol DynamicConfig, ``` struct DynamicConfig { uint32 destDataAvailabilityOverheadGas; // Extra data availability gas charged on top of the message, e.g. for OCR uint16 destGasPerDataAvailabilityByte; // Amount of gas to charge per byte of message data that needs availability uint16 destDataAvailabilityMultiplierBps; // Multiplier for data availability gas, multiples of bps, or 0.0001 } ``` We need to read them via the OnRamp reader and pass that into the DAGasPriceEstimator one way or another. ## Solution New service implemented to transfer onRamp config to offRamp/commit plugins. It provides weak dependency between plugins and provides actual data on demand.
#1446) [https://smartcontract-it.atlassian.net/browse/CCIP-3376](https://smartcontract-it.atlassian.net/browse/CCIP-3376) The CCIP gas limit is set by customers. This cannot be changed because this limit is directly used within the contracts (which expect limits in terms of ETH). Also, the L2 gas price returned from our current estimators for Mantle is in MNT. Therefore, the final formula needed for CCIP to calculate L2 transaction fees is the following: gasLimit_EVM * (gasPrice_Mantle * TokenRatio) Therefore, we need to multiply the gas price returned from our gas estimators by tokenRatio for CCIP. This should happen in the CCIP price estimator. Currently, we have no component here for chain-specific logic, so we will need to add this functionality. --------- Co-authored-by: Matt Yang <[email protected]>
This reverts commit da80ec5.
## Motivation ## Solution
## Motivation ## Solution
## Motivation For the exec provider, in some cases, the onRamp reader is not initialized. For immediate reaction, we need to allow execution without blocking in cases if onRamp is not initialized. It fails due the issue when onRampReader is not initialized for execProvider. This fix should fix this issue. In case the onRamp reader is not initialized, the module will return 0 values and DAGasEstimator will behave as it worked before this feature been implemented.
## Motivation ## Solution
Bumps chain-selectors version to latest. cherry picked from #1492 ## Motivation ## Solution --------- Co-authored-by: Mohamed Mehany <[email protected]>
An NPE bug was identified in the Stuck Tx Detector component. The fix was addressed in this smartcontractkit/chainlink#14685 in core but needs to be applied to CCIP as well. Changes could not be cherry-picked because of other changes made to the component in between so changes were back ported manually.
https://github.com/smartcontractkit/chainlink/pull/14859/files#diff-e9a4f21557894a9a2c77ca090bea14ed69bdfea02500c0cfd04628a1941f6e6c * handle mantle "nonce too low" error * add changeset ## Motivation ## Solution Co-authored-by: Matthew Romage <[email protected]>
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Motivation
Adding TOML configs for B^2, BoB, Berachain, Unichain, Worldchain and needed error mappings
Solution