-
Notifications
You must be signed in to change notification settings - Fork 1.9k
[LocalCRE] Use OCR config from CapRegistry for evm capability #21113
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
base: develop
Are you sure you want to change the base?
Conversation
e8357ff to
c926626
Compare
1632a03 to
37a37fd
Compare
|
I see you updated files related to
|
9342e07 to
4a579c0
Compare
CORA - Analysis SkippedReason: The number of code owners (2) is less than the minimum required (5) and/or the number of CODEOWNERS entries with changed files (1) is less than the minimum required (2). |
fb60c21 to
4d9a227
Compare
4d9a227 to
5a18f78
Compare
| UseCapRegOCRConfig bool | ||
|
|
||
| // Used only by LocalCRE | ||
| OverrideOCR3Config *ocr3.OracleConfig |
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.
If we don't want to change this struct to handle local CRE's special case we could follow this route:
- add one more field to:
type PreEnvStartupOutput struct {
DONCapabilityWithConfig []keystone_changeset.DONCapabilityWithConfig
CapabilityToOCR3Config map[cre.CapabilityFlag]OCR3Config`
}
- and return the config we want to use for each capability that requires it
- then add
CapabilityToOCR3Config map[cre.CapabilityFlag]OCR3Configto:
type ConfigureCapabilityRegistryInput struct {
ChainSelector uint64
Topology *Topology
CldEnv *cldf.Environment
NodeSets []*NodeSet
CapabilityRegistryConfigFns []CapabilityRegistryConfigFn
Blockchains []blockchains.Blockchain
CapabilitiesRegistryAddress *common.Address
WithV2Registries bool
DONCapabilityWithConfigs map[uint64][]keystone_changeset.DONCapabilityWithConfig
CapabilityToOCR3Config map[cre.CapabilityFlag]OCR3Config
}
- and pass that to
func ConfigureCapabilityRegistry(input cre.ConfigureCapabilityRegistryInput), which inside callsmustToV2ConfigureInput() - finally modify `mustToV2ConfigureInput():
func (d *dons) mustToV2ConfigureInput(chainSelector uint64, contractAddress string, capabilityToOCR3Config map[cre.CapabilityFlag]OCR3Config) cap_reg_v2_seq.ConfigureCapabilitiesRegistryInput {
- and grab if from the map when executing
embedOCR3Config()
175d6ad to
630e3fa
Compare
630e3fa to
70154eb
Compare
|
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.
🔴 Test Results: Unrelated Failure
Affected failures:
- Workflow Run: Integration Tests
What Broke
The TestToV2ConfigureInput in keystone_test.go is incorrectly passing a nil OCR3 configuration map when a capability is configured to use it, leading to a panic. Specifically, the test's donConfig includes a capability with UseCapRegOCRConfig: true, which causes dons.mustToV2ConfigureInput to attempt to look up an OCR3 config in the nil map, resulting in a panic.
Autofix Options
You can use our MCP server to get AI assistance with debugging and fixing these failures.
- Use MCP in your IDE to debug the issue. Try
Help me fix CI failures from FbwI86Qmto get started.
Tip
Get Better Results: This CI job is not uploading test reports. Adding structured test reports enables more precise, test-level analysis with better root cause identification and more targeted fix recommendations.
👉🏻 Learn how to upload test results.




No description provided.