-
Notifications
You must be signed in to change notification settings - Fork 1.7k
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
Solana plugin #15820
base: develop
Are you sure you want to change the base?
Solana plugin #15820
Conversation
I see you updated files related to
|
Thanks for making this, looks good to me. Do you want to merge this or create it as a base branch ? |
break | ||
} | ||
_, exists := keyBundles[family] | ||
if !exists { |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
The previous code had comment "// TODO: Validate that that all EVM chains are using the same keybundle."
Based on that, does it make sense to validate that if a bundle exists for a family, ensure it is same
keyBundleId, exists := keyBundles[family]
if exists {
if keyBundleId != config.KeyBundleID
return deployment.ChangesetOutput{}, new Error("A family is not using the same keyBundle")
}
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I resolved the TODO since that's the implicit behaviour we've used for keystone too. A single key is automatically generated for each family (as long as there's a relayer for that family type), so using different ones is unexpected
I'll add that check in 👍🏻
bf15d0b
to
ec9d62b
Compare
Quality Gate passedIssues Measures |
// TODO: duplicated from chainlink-ccip since it's still internal | ||
type EstimateProvider interface { | ||
CalculateMerkleTreeGas(numRequests int) uint64 | ||
CalculateMessageMaxGas(msg ccipocr3.Message) uint64 | ||
} |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Moved this for you: smartcontractkit/chainlink-ccip#417
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I can address this once #15860 is merged
if networkType != relay.NetworkEVM { | ||
return nil, fmt.Errorf("unsupported chain type: %s", networkType) | ||
} |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This check can still be performed by the oracle creator using something like _, supported := oraclecreator.plugins[networkType]
@@ -251,7 +292,7 @@ func (i *pluginOracleCreator) createFactoryAndTransmitter( | |||
publicConfig.DeltaRound, | |||
) | |||
|
|||
rmnCrypto := ccipevm.NewEVMRMNCrypto(i.lggr.Named("EVMRMNCrypto")) | |||
rmnCrypto := plugin.RMNCrypto(i.lggr.Named(chainFamily + ".RMNCrypto")) |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I'm partial to using structured logging fields for this sort of thing. i.e. lggr.Named("RMNCrypto").With("chainFamily", chainFamily)
.
what do you think @mateusz-sekara @makramkd
No description provided.