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

[DON'T MERGE] CCIP Repository Merge - ocr2 #13975

Closed
wants to merge 358 commits into from
Closed
Show file tree
Hide file tree
Changes from 250 commits
Commits
Show all changes
358 commits
Select commit Hold shift + click to select a range
bfeb63c
CCIP-1320 Upper bound limit for the GetSendRequestsGteSeqNum (#299)
mateusz-sekara Nov 21, 2023
1dc2ffb
Test 1.2 unmarshalling 1.0 observations (#303)
connorwstein Nov 21, 2023
6b168c3
Distinguish parent ctx timeout vs child timeout in USDC call (#293)
matYang Nov 22, 2023
e1fef49
Passing qopts to readers instances to allow registering filters withi…
mateusz-sekara Nov 24, 2023
0468d31
fix flaky integration test (#322)
dimkouv Nov 27, 2023
fbbe7ee
use a set instead of map[T]struct{} (#309)
dimkouv Nov 30, 2023
79e847e
Fix wrong wiring of gas estimator in exec plugin (#339)
matYang Nov 30, 2023
4f1c072
Missing configs for Sepolia networks (#343)
mateusz-sekara Dec 1, 2023
2977fb5
revert manual exec on inner revert (#333)
RensR Dec 4, 2023
5e4190b
Don't require finality when fetching CCIPSendRequested in the executi…
mateusz-sekara Dec 4, 2023
b96416a
offchain - move caching logic behind reader interfaces (#297)
dimkouv Dec 5, 2023
737f856
Kroma & Base chain name fixed (#350)
mateusz-sekara Dec 5, 2023
2b21427
allow withdrawal of non-fee link (#351)
RensR Dec 5, 2023
a5d37ce
offchain - decouple exec plugin from evm specific details (#353)
dimkouv Dec 5, 2023
f83bf92
Source client unused (#338)
connorwstein Dec 6, 2023
333e63d
offchain - chain agnostic plugin ocr2 factories (#368)
dimkouv Dec 11, 2023
17dcbfb
Port NPM and license changes for 1.2 contracts release (#365)
matYang Dec 11, 2023
12bf2a4
Version namespacing (#355)
jarnaud Dec 12, 2023
622b236
offchain - remove unused lp reader + minor fixes (#371)
dimkouv Dec 12, 2023
cc17497
CCIP-1368 CLO/CCIP Approval Spec integration test flow (#363)
mateusz-sekara Dec 12, 2023
1642f42
Using chain selectors lib for chain names resolution (#375)
mateusz-sekara Dec 13, 2023
00a880c
Fix type and version error paths (#376)
connorwstein Dec 13, 2023
26a8fb8
Fixing flakiness - Checking if port is available before passing to bo…
mateusz-sekara Dec 14, 2023
c5a5fea
ocr2: add CCIP spec validation (#372)
winder Dec 14, 2023
dcf1110
USDC filter fix (#383)
connorwstein Dec 15, 2023
bf7d4ab
merge core develop -> ccip-develop
AnieeG Dec 14, 2023
cdbc591
Merge branch 'ccip-develop' into ccip-1449-merge
makramkd Dec 18, 2023
9c91bcc
Move helper function in its test (#381)
jarnaud Dec 18, 2023
bebea07
fix issues
makramkd Dec 18, 2023
305e769
offchain - separate packages for plugins (#387)
dimkouv Dec 19, 2023
689f763
Merge branch 'ccip-develop' into ccip-1449-merge
makramkd Dec 19, 2023
3804953
fix imports
makramkd Dec 19, 2023
784aa2b
goimports
makramkd Dec 19, 2023
327bf91
Merge with core (#384)
makramkd Dec 19, 2023
c04c019
Merge remote-tracking branch 'upstream/develop' into merge-core-2023-…
makramkd Dec 20, 2023
f03efdc
Single cache for source/dest/pool (#382)
jarnaud Dec 20, 2023
4835003
Merge branch 'ccip-develop' into merge-core-2023-12-20
makramkd Dec 20, 2023
5edfa72
Merge core 2023 12 20 (#394)
makramkd Dec 20, 2023
67bdb9b
Exec loop minor performance improvement (#385)
mateusz-sekara Dec 21, 2023
29f90da
Minor style cleanup (#402)
jarnaud Jan 2, 2024
f083524
offchain - token data reader multi threaded bg worker (#280)
dimkouv Jan 4, 2024
ca3bd94
chore(ccipdata): split ExecOffchainConfig definitions (#405)
roman-kashitsyn Jan 5, 2024
a587e13
EVM utils package
connorwstein Jan 5, 2024
89aa79d
chore(ccipdata): make v1.0 offramp reader fields public (#412)
roman-kashitsyn Jan 9, 2024
5cf97ca
Weekly merge (#409)
connorwstein Jan 9, 2024
157b003
chore(ccipdata): don't use generated types in OffRampReader (#416)
roman-kashitsyn Jan 10, 2024
0b27f12
token pools to support lock/unlock (#421)
RensR Jan 10, 2024
7d2926f
ccip: Return an error from ParseLogs. (#408)
winder Jan 10, 2024
c991ea8
handle error scenarios in attestation api (#418)
AnieeG Jan 11, 2024
7fe070e
resolve issues
dimkouv Jan 12, 2024
35bce8d
fix linter warns
dimkouv Jan 15, 2024
2c38054
offchain - remove postgres params from reader interfaces ( refactor f…
dimkouv Jan 16, 2024
f0530b1
merge ccip-develop
dimkouv Jan 16, 2024
766b819
Weekly merge 2 (#433)
RensR Jan 18, 2024
0d67bf0
Onchain Rebalancer (#438)
RensR Jan 18, 2024
c976d2a
Prom metrics cleanup and improvements (#420)
mateusz-sekara Jan 18, 2024
ecd70e0
chore(ccipdata): cleanup offchain config fields (#436)
roman-kashitsyn Jan 18, 2024
c5dc4a4
Log observations in report (#454)
connorwstein Jan 22, 2024
c21e26a
USDC smoke e2e tests on simulated chains (#449)
AnieeG Jan 24, 2024
319daee
merge with core
AnieeG Jan 25, 2024
86511c1
make gnerate
AnieeG Jan 25, 2024
06d2815
bump version to 1.4.0 (#468)
matYang Jan 26, 2024
9af7750
Merge branch 'ccip-develop' into weekly-merge
makramkd Jan 26, 2024
c014d50
Adding more details to the observations parsing (#461)
mateusz-sekara Jan 26, 2024
33cceba
Merge branch 'ccip-develop' into weekly-merge
makramkd Jan 26, 2024
72433de
Weekly merge with core (#464)
AnieeG Jan 26, 2024
eb363bf
Logging MessageIds in Commit observations (#487)
mateusz-sekara Feb 8, 2024
fd9e0bc
Price getter and pipeline (#470)
jarnaud Feb 8, 2024
0c0b0c8
Make deviation PPB calc based on smaller value (#482)
matYang Feb 8, 2024
afa986c
Token pool refactor (#453)
RensR Feb 12, 2024
0b88464
offchain - prevent panic and remove unused param (#457)
dimkouv Feb 13, 2024
8ea31a5
Add logging to batch caller + improve batch limits
RensR Feb 14, 2024
194d94d
improve logging in batch caller
RensR Feb 14, 2024
a154bbe
ccip loopp - migrate to relayer types (#489)
dimkouv Feb 15, 2024
2091f44
remove extra logging and handle error better
RensR Feb 15, 2024
47295ae
Use "latest" tag instead of making lp query (#512)
dimkouv Feb 15, 2024
d55624a
cleanup logpoller removal for batch calls
RensR Feb 16, 2024
c22abdf
cleanup logpoller removal for batch calls (#517)
RensR Feb 16, 2024
335c72c
Final release 1.4.0 (#519)
RensR Feb 16, 2024
df03f33
Merge branch 'ccip-develop' into release/v2.8.0-ccip1.4.0
RensR Feb 19, 2024
d063f94
Merge 1.4 into ccip-develop (#526)
RensR Feb 19, 2024
e9c4617
Fix license and adjust mockRouter logic (#529)
RensR Feb 19, 2024
5c2ac60
offchain - update batch caller method doc
dimkouv Feb 20, 2024
3496aac
offchain - include job id in usdc LP filter (#525)
dimkouv Feb 20, 2024
6857d21
offchain - test usdc filters with real lp (#538)
dimkouv Feb 21, 2024
29dd069
offchain - batch caller verbose errors and token pools fix (#533)
dimkouv Feb 21, 2024
d03ec95
Mock for price registry provider (#547)
jarnaud Feb 22, 2024
0d920cf
offchain - json marshal fix for generic addresses (#546)
dimkouv Feb 22, 2024
30e7cc7
Executed execution state changes finality fix (#566)
mateusz-sekara Feb 27, 2024
c4e4f2b
fix(ccip): initialize services in background (#486)
roman-kashitsyn Feb 27, 2024
d92e405
Log params before plugin init completes (#522)
matYang Feb 28, 2024
96d9730
Revert "fix(ccip): initialize services in background" (#574)
roman-kashitsyn Feb 29, 2024
76aaa7b
CCIP-1722: fix pipeline address comparison (#575)
andrevmatos Feb 29, 2024
3cfcddb
CCIP-1703 Offramp Execution State Changes - Testing finality (#573)
mateusz-sekara Mar 1, 2024
4b8ef12
CCIP-1704 OnRamp reader minor refactoring (#581)
mateusz-sekara Mar 5, 2024
cb58f0e
Detect onramp dynamic config changes (#544)
jarnaud Mar 6, 2024
63b3f3f
CCIP-1704 Checking for curse on Source Chain (#580)
mateusz-sekara Mar 6, 2024
bfa0144
Move price registry sync to start of Observation (#586)
jarnaud Mar 7, 2024
b7ab1d1
offchain - json address encoding fix (cherry picking from release) (#…
dimkouv Mar 7, 2024
f683950
CCIP-1704 More robust checks of RMN/Chain every phase (#583)
mateusz-sekara Mar 7, 2024
d39a37d
CCIP-1704 Healthcheck metrics (#592)
mateusz-sekara Mar 7, 2024
342281e
Allow max bytes being set to 0 (#569)
matYang Mar 7, 2024
34f74d3
Removing checks from Query because of the latency requirements for th…
mateusz-sekara Mar 8, 2024
57d3de5
Return error instead of overriding that with "unhealthy" in readers …
mateusz-sekara Mar 8, 2024
ecda347
MaxGasPrice reads from TOML config; allow disabling price reporting o…
matYang Mar 10, 2024
8e91d1c
offchain - address backwards compatibility without json overrides (#603)
dimkouv Mar 12, 2024
07825d4
CCIP-1781 Refreshing RMN state in the background (#596)
mateusz-sekara Mar 13, 2024
95d6092
sync with ccip
AnieeG Mar 14, 2024
5a6b40f
Fixing build
mateusz-sekara Mar 14, 2024
643add4
CCIP-1876 Simplify background worker and implement ServiceCtx (#610)
mateusz-sekara Mar 15, 2024
73b92d7
Merge remote-tracking branch 'origin/ccip-develop' into ccip-1795-merge
mateusz-sekara Mar 15, 2024
a88c392
CCIP-1716 Adding retention to filters used by LogPoller (#530)
mateusz-sekara Mar 20, 2024
05a0c86
offchain - import chainlink-common (#624)
dimkouv Mar 20, 2024
cf201bd
Missing metrics in Onramp (#630)
mateusz-sekara Mar 22, 2024
23a3cb8
Batch token price updates (#623)
matYang Mar 28, 2024
67d11c1
offchain chore - use msg logger for displaying msg id in case of erro…
dimkouv Mar 28, 2024
6dab7a5
offchain - resurrect multi usdc transfers per msg (#633)
dimkouv Mar 28, 2024
82948d7
add non-Geth revert msg check (#657)
matYang Mar 28, 2024
bd476b3
CCIP-1930 Fetching nonces in batch manner from chain (#646)
mateusz-sekara Mar 29, 2024
7491f5e
CCIP-1941 Tracking sequence number in exec plugin (#660)
mateusz-sekara Mar 29, 2024
a60342d
offchain - remove commit plugin's inflight cache (#662)
dimkouv Apr 1, 2024
92d58ac
offchain - parallel batched rpc calls (#663)
dimkouv Apr 2, 2024
65d8702
chore: Add comment about USDC attestations endpoint. (#647)
winder Apr 2, 2024
936600b
Do not read res if http errors (#676)
matYang Apr 2, 2024
8db474f
Log offramp in commit plugin init (#668)
matYang Apr 2, 2024
c18cb40
Post merge fixes
mateusz-sekara Apr 5, 2024
8aab84f
usdc: Add self rate limiting to the usdc attestation API.
winder Apr 1, 2024
a0dc043
Fix error
winder Apr 1, 2024
3e4bc00
Fix error
winder Apr 1, 2024
0ab8b5a
configurable attestation API request interval.
winder Apr 4, 2024
ab9076f
make usdc.go:ReadTokenData blocking
winder Apr 4, 2024
df29f75
Fix lint warnings.
winder Apr 4, 2024
5093156
Enable USDC rate limiting by default.
winder Apr 5, 2024
f377f13
Add constant
winder Apr 5, 2024
0dd85a3
linter does not want a switch here
winder Apr 5, 2024
2aa84ec
usdc: Add self rate limiting to the usdc attestation API. (#666)
winder Apr 5, 2024
02ecbf6
Merge branch 'ccip-develop' into merge-upstream
matYang Apr 5, 2024
264b952
rm offchain check for token pool rate limits (#690)
RensR Apr 8, 2024
53940f2
Remove error on missing value in destTokenPricesUSD (#692)
RensR Apr 8, 2024
3396054
Merge upstream (#689)
RensR Apr 9, 2024
91cb0d0
(refactor): Filter out destination chain bridgeable tokens that are n…
justinkaseman Apr 5, 2024
ecff8c4
Changes from review; restore GetSortedChainTokens & make pipeline IsT…
justinkaseman Apr 6, 2024
11e4073
lint
justinkaseman Apr 9, 2024
71a5f20
(test): Amend TestCommitReportingPlugin_Report with pricegetter
justinkaseman Apr 9, 2024
58b1eae
IsConfiguredToken -> FilterConfiguredTokens
justinkaseman Apr 10, 2024
a976f61
Merge branch 'ccip-develop' into CCIP-1945-offchain-2
justinkaseman Apr 10, 2024
e48517b
(refactor): Filter out destination chain bridgeable tokens that are n…
justinkaseman Apr 10, 2024
33b4251
Permissionless token pools (#652)
RensR Apr 12, 2024
71084a3
CCIP-1941 Detailed batch tracking (#699)
mateusz-sekara Apr 12, 2024
7ab14c7
Add default pricing to onramp (#719)
RensR Apr 17, 2024
7fa042e
Make Agg rate limiter optional on on/offRamp (#714)
RensR Apr 18, 2024
c65c483
Test to ensure reader methods are observed (#732)
jarnaud Apr 18, 2024
041da2d
make merklemulti and hashlib public (#730)
winder Apr 19, 2024
554a924
Improved fetching Commit Reports from database (#726)
mateusz-sekara Apr 23, 2024
cfa5a8d
Add Self-serve method & registry module (#746)
RensR Apr 25, 2024
56c4ce5
Less restrictive approach to the replay, booting Oracle even if the r…
mateusz-sekara Apr 25, 2024
f71b96b
Implement PriceRegistry price data feed fallback (#718)
elatoskinas May 6, 2024
4d8e68e
fix relay import issue & go mod tidy
roman-kashitsyn May 8, 2024
2013c18
fix pq opts
roman-kashitsyn May 8, 2024
e0076ec
Revert multiple offramps and chain token logic in (#623) (#822)
matYang May 8, 2024
f4d5250
'make chainlink' builds something
roman-kashitsyn May 8, 2024
03707cf
(fix): Log line in CCIP commit plugin observePriceUpdates needs key/v…
justinkaseman May 9, 2024
6bb153a
Merge branch 'ccip-develop' into roman-merge-2.12.0-beta0
roman-kashitsyn May 10, 2024
dba0849
Fix selectReportsToFillBatch (#829)
jarnaud May 10, 2024
3716da9
On/Off Ramps use per lane cursing (#801)
justinkaseman May 10, 2024
42344bd
fix unit test compilation
roman-kashitsyn May 10, 2024
728563d
Merge remote-tracking branch 'origin/ccip-develop' into roman-merge-2…
roman-kashitsyn May 10, 2024
8f54c36
fix a few failing tests
roman-kashitsyn May 10, 2024
4ef9f3a
feat: ooo exec (#729)
makramkd May 13, 2024
8a2fcc5
Merge remote-tracking branch 'origin/ccip-develop' into roman-merge-2…
roman-kashitsyn May 14, 2024
b9aebdd
CCIP-2271 Using IsCursed(chainSelector) for OnRamp 1.5 when checking …
mateusz-sekara May 14, 2024
b45f31e
Merge branch 'ccip-develop' into roman-merge-2.12.0-beta0
RensR May 16, 2024
730360c
One slot default pool return data (#872)
RensR May 22, 2024
4636f1b
Use decimals to normalize aggregator prices (#853)
jarnaud May 23, 2024
be2db09
Public HashLeaf Function (#739)
winder May 23, 2024
8b188a2
remove DestinationPool from OffRampTokens (#914)
RensR May 24, 2024
4175802
use real events in tests (#925)
RensR May 27, 2024
d813895
Temporarily remove PriceReportingDisabled flag in plugin (#929)
matYang May 29, 2024
a523ea3
ocr3 - come to consensus on plugin config (#889)
dimkouv May 30, 2024
80cad67
Cache RMN Contract in OnRamp (#945)
asoliman92 Jun 3, 2024
fb93c6b
Do not reject entire observations based on gas or token price (#930)
matYang Jun 3, 2024
ad6136f
Avoid marshal/unmarshall of CommitObservation (#940)
jarnaud Jun 3, 2024
7fdc0be
Add ABI caching functionality to `abihelpers` [CCIP-2388] (#966)
asoliman92 Jun 5, 2024
700667e
ocr3 - Use types from chainlink-common repo (#963)
dimkouv Jun 5, 2024
7d1c044
Fix goimport lint (#973)
amirylm Jun 5, 2024
b6311b4
Exec NewReportingPlugin must not error (#894)
rstout Jun 5, 2024
f082ee1
Update token reporting threshold (#970)
matYang Jun 5, 2024
661810e
Log the reported commitStore sequence number (#975)
dimkouv Jun 6, 2024
2d1113a
MultiAggregateRateLimiter - non-evm and multi-lane remote token suppo…
elatoskinas Jun 7, 2024
6d0a520
Add GetAllGasPriceUpdatesCreatedAfter to PriceRegistry (#977)
matYang Jun 8, 2024
aac2f2b
Let tokens hop through the offRamp (#962)
RensR Jun 10, 2024
b15b9b4
Merge remote-tracking branch 'upstream-release-2.13.0/release/2.13.0'…
makramkd Jun 10, 2024
15535cb
Merge branch 'ccip-develop' into merge-core-release-2.13.0
makramkd Jun 11, 2024
f53718c
Remove costly logs (#986)
jarnaud Jun 11, 2024
1d28958
merge fixes
makramkd Jun 11, 2024
8af4ab2
more fixes
makramkd Jun 12, 2024
4174fbb
Merge branch 'ccip-develop' into merge-core-release-2.13.0
makramkd Jun 12, 2024
9211133
Merge core release 2.13.0 (#988)
RensR Jun 12, 2024
2cda4b9
rmn 16 bytes subject (#1005)
RensR Jun 12, 2024
e1aadcc
Add admin reg to offramp (#990)
RensR Jun 13, 2024
6bf71f0
⛳ Golf & comments, move tokenAdminRegistry to static config (#1009)
RensR Jun 14, 2024
dd3e5f8
Leader lane orm (#1032)
matYang Jun 19, 2024
33a5e13
Use chainlink-commons for hash and merkle pkg in ocr2 (#1049)
agusaldasoro Jun 19, 2024
adac5f3
make gas estimations accurate for 1.5 (#1046)
RensR Jun 20, 2024
4945b49
2-step admin reg registration (#1033)
RensR Jun 20, 2024
ac31f3b
Fix error handling from USDC rate limiting call. (#1036)
winder Jun 20, 2024
372011f
Separate manual execution threshold from oracle message visibility th…
dimkouv Jun 20, 2024
7bdcfc4
Adding setters to CommitStore for GasEstimator and SourceMaxGasPrice …
patrickhuie19 Jun 21, 2024
1ae1e75
[ccip-2496] The explicit check of onchain sequential number validity …
valerii-kabisov-cll Jun 25, 2024
0a0c247
fix linting issues
makramkd Jun 25, 2024
c3e13f1
PriceRegistry - remove token price staleness validations (#993)
elatoskinas Jun 25, 2024
cb10881
Merge branch 'ccip-develop' into merge-core-develop-2024-06-25
makramkd Jun 25, 2024
c3363d5
Merge core develop 2024 06 25 (#1084)
RensR Jun 25, 2024
b1a7efb
Leader lane multi-chain gas price reports (#1071)
matYang Jun 27, 2024
e0b9aa7
Using a provider in NewCommitServices and NewExecServices (#957)
patrickhuie19 Jun 27, 2024
612f816
Adding back observed wrapper for Offramp Reader in Commit (#1128)
patrickhuie19 Jul 2, 2024
1605b2e
Fix slice bounds out of range error in performBatchCall (#1145)
0xnogo Jul 5, 2024
8dfc2a3
Merge remote-tracking branch 'upstream-release-2.14.0/release/2.14.0'…
makramkd Jul 8, 2024
57152a1
Returning messageVisibilityInterval always from commit roots cache (…
mateusz-sekara Jul 8, 2024
c8fdda1
Using a provider proxied commit store implementation in commit (#1080)
patrickhuie19 Jul 8, 2024
0ca023d
Merge branch 'ccip-develop' into mk/merge-core-2024-07-08
makramkd Jul 8, 2024
3e02cfd
Merge release/2.14.0 (#1154)
makramkd Jul 9, 2024
5da59de
Commit NewReportingPlugin retries on error (#1160)
rstout Jul 9, 2024
daa6627
using provider based commitStoreReader for exec (#1150)
patrickhuie19 Jul 9, 2024
cd32b78
Cleanup http test servers (#1163)
jarnaud Jul 15, 2024
b21599d
ocr2/plugins/ccip/internal/pricegetter: format correct error (#1195)
makramkd Jul 16, 2024
aee27fe
usdc - less LP queries and logging improvements (#1177)
dimkouv Jul 16, 2024
444cb20
fixing conflicts
0xnogo Jul 17, 2024
96bc30b
Merge remote-tracking branch 'origin/ccip-develop' into ng/merge-chai…
0xnogo Jul 19, 2024
b9c7ce1
[CCIP-2498] Handling Unregister*PluginLpFilters for Exec + Commit in …
patrickhuie19 Jul 20, 2024
c6a731b
Merge remote-tracking branch 'origin/ccip-develop' into ng/merge-chai…
0xnogo Jul 22, 2024
50e0eb7
Bumping the chainlink-common dep and resolving conflicts (#1217)
mateusz-sekara Jul 24, 2024
ad531c1
moving backfilled oracle blocking start work to background thread (#1…
patrickhuie19 Jul 24, 2024
84bc5c6
Don't propagate parent's context for the background replay (#1219)
mateusz-sekara Jul 24, 2024
e7981c1
Merge branch 'ccip-develop' into ng/merge-chainlink-new
0xnogo Jul 24, 2024
e2548dd
Merge chainlink into ccip-develop (#1215)
makramkd Jul 25, 2024
c20836f
core/services/ocr2/plugins/ccip: fix CLO test (#1230)
makramkd Jul 30, 2024
e999b1e
Zk Overflow in Execution Plugin (#947)
0xnogo Jul 30, 2024
b851bb3
CCIP-2791 Long term solution for snoozing and caching CommitRoots (#1…
mateusz-sekara Jul 31, 2024
f29c672
Add 'core/services/ocr2/plugins/ccip/' from commit 'b851bb3e874bc760b…
asoliman92 Jul 31, 2024
0926651
Test git history with merge
asoliman92 Jul 31, 2024
dfe49a3
Add status checker
asoliman92 Jul 31, 2024
ec42d8c
Add CCIP to types.go
asoliman92 Jul 31, 2024
a462ce5
Add UnsafeSetConnectionsManager to feeds service for testing
asoliman92 Jul 31, 2024
eebf5f4
Add CCIP feature to core.toml
asoliman92 Jul 31, 2024
5966dac
Rebuilding config
mateusz-sekara Aug 2, 2024
9520696
Wiring up relayer and ocr2 delegates - this commit touches shared code !
mateusz-sekara Aug 2, 2024
01a5830
Adding mockery configuration for ccip specific code
mateusz-sekara Aug 2, 2024
e9bcab8
Setting CCIP feature flag to true - it's no longer used anywhere
mateusz-sekara Aug 2, 2024
918b977
Merge branch 'ccip/ocr2-copy-b851bb3' into ccip/merge-ocr2
asoliman92 Aug 4, 2024
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
93 changes: 92 additions & 1 deletion .mockery.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -457,4 +457,95 @@ packages:
filename: optimism_dispute_game_factory_interface.go
outpkg: mock_optimism_dispute_game_factory
interfaces:
OptimismDisputeGameFactoryInterface:
OptimismDisputeGameFactoryInterface:
github.com/smartcontractkit/chainlink/v2/core/services/ocr2/plugins/ccip/internal/cache:
config:
filename: chain_health_mock.go
interfaces:
ChainHealthcheck:
github.com/smartcontractkit/chainlink/v2/core/services/ocr2/plugins/ccip/internal/ccipdata:
interfaces:
CommitStoreReader:
config:
filename: commit_store_reader_mock.go
OffRampReader:
config:
filename: offramp_reader_mock.go
OnRampReader:
config:
filename: onramp_reader_mock.go
PriceRegistryReader:
config:
filename: price_registry_reader_mock.go
TokenPoolReader:
config:
filename: token_pool_reader_mock.go
USDCReader:
config:
filename: usdc_reader_mock.go
github.com/smartcontractkit/chainlink/v2/core/services/ocr2/plugins/ccip/internal/ccipdata/batchreader:
config:
filename: token_pool_batched_reader_mock.go
interfaces:
TokenPoolBatchedReader:
github.com/smartcontractkit/chainlink/v2/core/services/ocr2/plugins/ccip/internal/ccipdata/ccipdataprovider:
config:
filename: price_registry_mock.go
interfaces:
PriceRegistry:
github.com/smartcontractkit/chainlink/v2/core/services/ocr2/plugins/ccip/internal/ccipdb:
config:
filename: price_service_mock.go
interfaces:
PriceService:
github.com/smartcontractkit/chainlink/v2/core/services/ocr2/plugins/ccip/internal/pricegetter:
config:
filename: mock.go
dir: "{{ .InterfaceDir }}/"
outpkg: pricegetter
interfaces:
PriceGetter:
config:
mockname: "Mock{{ .InterfaceName }}"
github.com/smartcontractkit/chainlink/v2/core/services/relay/evm/statuschecker:
interfaces:
CCIPTransactionStatusChecker:
github.com/smartcontractkit/chainlink/v2/core/services/ocr2/plugins/ccip/internal/rpclib:
config:
outpkg: rpclibmocks
interfaces:
BatchCaller:
config:
filename: batch_caller.go
dir: core/services/relay/evm/rpclibmocks
EvmBatchCaller:
config:
filename: evm_mock.go
dir: "{{ .InterfaceDir }}/rpclibmocks"

github.com/smartcontractkit/chainlink/v2/core/services/ocr2/plugins/ccip/prices:
config:
dir: "{{ .InterfaceDir }}/"
outpkg: prices
interfaces:
GasPriceEstimatorCommit:
config:
mockname: "Mock{{ .InterfaceName }}"
filename: gas_price_estimator_commit_mock.go
GasPriceEstimatorExec:
config:
mockname: "Mock{{ .InterfaceName }}"
filename: gas_price_estimator_exec_mock.go
GasPriceEstimator:
config:
mockname: "Mock{{ .InterfaceName }}"
filename: gas_price_estimator_mock.go
github.com/smartcontractkit/chainlink/v2/core/services/ocr2/plugins/ccip/tokendata:
config:
filename: reader_mock.go
dir: "{{ .InterfaceDir }}/"
outpkg: tokendata
interfaces:
Reader:
config:
mockname: "Mock{{ .InterfaceName }}"
2 changes: 2 additions & 0 deletions core/config/docs/core.toml
Original file line number Diff line number Diff line change
Expand Up @@ -13,6 +13,8 @@ FeedsManager = true # Default
LogPoller = false # Default
# UICSAKeys enables CSA Keys in the UI.
UICSAKeys = false # Default
# CCIP enables the CCIP service.
CCIP = false # Default

[Database]
# DefaultIdleInTxSessionTimeout is the maximum time allowed for a transaction to be open and idle before timing out. See Postgres `idle_in_transaction_session_timeout` for more details.
Expand Down
4 changes: 4 additions & 0 deletions core/config/toml/types.go
Original file line number Diff line number Diff line change
Expand Up @@ -303,6 +303,7 @@ type Feature struct {
FeedsManager *bool
LogPoller *bool
UICSAKeys *bool
CCIP *bool
}

func (f *Feature) setFrom(f2 *Feature) {
Expand All @@ -315,6 +316,9 @@ func (f *Feature) setFrom(f2 *Feature) {
if v := f2.UICSAKeys; v != nil {
f.UICSAKeys = v
}
if v := f2.CCIP; v != nil {
f.CCIP = v
}
}

type Database struct {
Expand Down
2 changes: 1 addition & 1 deletion core/scripts/go.mod
Original file line number Diff line number Diff line change
Expand Up @@ -60,7 +60,7 @@ require (
github.com/VictoriaMetrics/fastcache v1.12.1 // indirect
github.com/XSAM/otelsql v0.27.0 // indirect
github.com/armon/go-metrics v0.4.1 // indirect
github.com/avast/retry-go/v4 v4.5.1 // indirect
github.com/avast/retry-go/v4 v4.6.0 // indirect
github.com/bahlo/generic-list-go v0.2.0 // indirect
github.com/benbjohnson/clock v1.3.5 // indirect
github.com/beorn7/perks v1.0.1 // indirect
Expand Down
4 changes: 2 additions & 2 deletions core/scripts/go.sum
Original file line number Diff line number Diff line change
Expand Up @@ -147,8 +147,8 @@ github.com/armon/go-metrics v0.0.0-20180917152333-f0300d1749da/go.mod h1:Q73ZrmV
github.com/armon/go-metrics v0.4.1 h1:hR91U9KYmb6bLBYLQjyM+3j+rcd/UhE+G78SFnF8gJA=
github.com/armon/go-metrics v0.4.1/go.mod h1:E6amYzXo6aW1tqzoZGT755KkbgrJsSdpwZ+3JqfkOG4=
github.com/armon/go-radix v0.0.0-20180808171621-7fddfc383310/go.mod h1:ufUuZ+zHj4x4TnLV4JWEpy2hxWSpsRywHrMgIH9cCH8=
github.com/avast/retry-go/v4 v4.5.1 h1:AxIx0HGi4VZ3I02jr78j5lZ3M6x1E0Ivxa6b0pUUh7o=
github.com/avast/retry-go/v4 v4.5.1/go.mod h1:/sipNsvNB3RRuT5iNcb6h73nw3IBmXJ/H3XrCQYSOpc=
github.com/avast/retry-go/v4 v4.6.0 h1:K9xNA+KeB8HHc2aWFuLb25Offp+0iVRXEvFx8IinRJA=
github.com/avast/retry-go/v4 v4.6.0/go.mod h1:gvWlPhBVsvBbLkVGDg/KwvBv0bEkCOLRRSHKIr2PyOE=
github.com/aws/aws-sdk-go v1.22.1/go.mod h1:KmX6BPdI08NWTb3/sm4ZGu5ShLoqVDhKgpiN924inxo=
github.com/aws/aws-sdk-go v1.23.20/go.mod h1:KmX6BPdI08NWTb3/sm4ZGu5ShLoqVDhKgpiN924inxo=
github.com/aws/aws-sdk-go v1.45.25 h1:c4fLlh5sLdK2DCRTY1z0hyuJZU4ygxX8m1FswL6/nF4=
Expand Down
2 changes: 2 additions & 0 deletions core/services/chainlink/config_test.go
Original file line number Diff line number Diff line change
Expand Up @@ -261,6 +261,7 @@ func TestConfig_Marshal(t *testing.T) {
FeedsManager: ptr(true),
LogPoller: ptr(true),
UICSAKeys: ptr(true),
CCIP: ptr(false),
}
full.Database = toml.Database{
DefaultIdleInTxSessionTimeout: commoncfg.MustNewDuration(time.Minute),
Expand Down Expand Up @@ -771,6 +772,7 @@ Headers = ['Authorization: token', 'X-SomeOther-Header: value with spaces | and
FeedsManager = true
LogPoller = true
UICSAKeys = true
CCIP = false
`},
{"Database", Config{Core: toml.Core{Database: full.Database}}, `[Database]
DefaultIdleInTxSessionTimeout = '1m0s'
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -6,6 +6,7 @@ ShutdownGracePeriod = '5s'
FeedsManager = true
LogPoller = false
UICSAKeys = false
CCIP = false

[Database]
DefaultIdleInTxSessionTimeout = '1h0m0s'
Expand Down
1 change: 1 addition & 0 deletions core/services/chainlink/testdata/config-full.toml
Original file line number Diff line number Diff line change
Expand Up @@ -6,6 +6,7 @@ ShutdownGracePeriod = '10s'
FeedsManager = true
LogPoller = true
UICSAKeys = true
CCIP = false

[Database]
DefaultIdleInTxSessionTimeout = '1m0s'
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -6,6 +6,7 @@ ShutdownGracePeriod = '5s'
FeedsManager = true
LogPoller = false
UICSAKeys = false
CCIP = false

[Database]
DefaultIdleInTxSessionTimeout = '1h0m0s'
Expand Down
33 changes: 33 additions & 0 deletions core/services/feeds/mocks/service.go

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

14 changes: 14 additions & 0 deletions core/services/feeds/service.go
Original file line number Diff line number Diff line change
Expand Up @@ -107,6 +107,9 @@ type Service interface {
ListSpecsByJobProposalIDs(ctx context.Context, ids []int64) ([]JobProposalSpec, error)
RejectSpec(ctx context.Context, id int64) error
UpdateSpecDefinition(ctx context.Context, id int64, spec string) error

// UnsafeSetConnectionsManager Only for testing
UnsafeSetConnectionsManager(ConnectionsManager)
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@asoliman92 Have you checked if it's still needed? Locally integration_tests.go and integration_legacy_test.go works for me when removed

Checking here smartcontractkit/ccip#1253

Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Ignore that, it's needed for CLO tests I created long time ago :P (Test_CLOSpecApprovalFlow)

}

type service struct {
Expand Down Expand Up @@ -1105,6 +1108,16 @@ func (s *service) observeJobProposalCounts(ctx context.Context) error {
return nil
}

// Unsafe_SetConnectionsManager sets the ConnectionsManager on the service.
//
// We need to be able to inject a mock for the client to facilitate integration
// tests.
//
// ONLY TO BE USED FOR TESTING.
func (s *service) UnsafeSetConnectionsManager(connMgr ConnectionsManager) {
s.connMgr = connMgr
}

// findExistingJobForOCR2 looks for existing job for OCR2
func findExistingJobForOCR2(ctx context.Context, j *job.Job, tx job.ORM) (int32, error) {
var contractID string
Expand Down Expand Up @@ -1501,5 +1514,6 @@ func (ns NullService) IsJobManaged(ctx context.Context, jobID int64) (bool, erro
func (ns NullService) UpdateSpecDefinition(ctx context.Context, id int64, spec string) error {
return ErrFeedsManagerDisabled
}
func (ns NullService) UnsafeSetConnectionsManager(_ ConnectionsManager) {}

//revive:enable
Loading
Loading