Skip to content

Conversation

@fernandezlautaro
Copy link
Contributor

@fernandezlautaro fernandezlautaro force-pushed the PRODCRE-557_evm_cap branch 5 times, most recently from d6710e3 to edf7f0a Compare July 29, 2025 16:37
return nil, errors.Wrap(nodeIDErr, "failed to get node id from labels")
}

if logEventTriggerBinaryPath == "" {
Copy link
Contributor Author

Choose a reason for hiding this comment

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

removed bc the invocation will always send the container path at minimum, so this condition will never trigger:
filepath.Join(containerPath, logEventTriggerBinaryName),

return nil, errors.Wrap(nodeIDErr, "failed to get node id from labels")
}

if readContractBinaryPath == "" {
Copy link
Contributor Author

Choose a reason for hiding this comment

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

removed bc the invocation will always send the container path at minimum, so this condition will never trigger:
filepath.Join(containerPath, readContractBinaryName),

Capability: kcr.CapabilitiesRegistryCapability{
LabelledName: labelledName,
Version: "1.0.0",
CapabilityType: 3, // TARGET
Copy link
Contributor Author

Choose a reason for hiding this comment

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

I need to add this capability 1 more time, but with CapabilityType: 0, // TRIGGER (like cron), but having the same ID will probably collide

Copy link
Contributor

Choose a reason for hiding this comment

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

did you solve that issue somehow?

Copy link
Contributor Author

@fernandezlautaro fernandezlautaro Aug 4, 2025

Choose a reason for hiding this comment

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

seems that the log trigger lookup* worked, but I'm still figuring out (right now I'm more keen in having the actions work and then keep evolving the solution)

@fernandezlautaro fernandezlautaro force-pushed the PRODCRE-557_evm_cap branch 2 times, most recently from 4323270 to 3d024c2 Compare August 2, 2025 04:49
@fernandezlautaro fernandezlautaro marked this pull request as ready for review August 4, 2025 17:01
@fernandezlautaro fernandezlautaro requested review from a team as code owners August 4, 2025 17:01
# if not present, the job for the EVM capability will fail to start
#[capabilities_configs.evm."1337"]
# logTriggerPollInterval = "1s"
# receiverGasMinimum = "1"
Copy link
Contributor

Choose a reason for hiding this comment

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

would it make sense to have defaults so that lack of this section wouldn't result in start failures?

fmt.Println("To exclude a flood of heartbeat messages it is recommended that you register a JS filter with following code: `return value.msg !== 'heartbeat';`")
fmt.Println()
fmt.Print("To terminate Beholder stack execute: `go run . env stop-beholder`\n\n")
fmt.Print("To terminate Beholder stack execute: `go run . env beholder stop`\n\n")
Copy link
Contributor

Choose a reason for hiding this comment

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

👍

}

// EVM cap OCR3 Contract
evmOCR3DeployReport, err := operations.ExecuteOperation(b, DeployOCR3Op, DeployOCR3OpDeps(deps), DeployOCR3OpInput{ChainSelector: input.RegistryChainSelector, Qualifier: "capability_evm"})
Copy link
Contributor

Choose a reason for hiding this comment

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

maybe we should pass to DeployKeystoneContractsSequenceInput information whether these 2 extra OCR3 contracts (evm and vault) should be deployed? So that we deploy them only when needed?

return nil, errors.Wrap(err, "failed to get CRE Forwarder address")
}

logger.Debug().Msgf("Deployed CRE Forwarder contract on chain %d at %s", chainID, creForwarderAddress.Address)
Copy link
Contributor

Choose a reason for hiding this comment

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

deployed? or rather found?

vaultOCR3Addr := mustGetAddress(memoryDatastore, homeChainOutput.ChainSelector, keystone_changeset.OCR3Capability.String(), "1.0.0", "capability_vault")
testLogger.Info().Msgf("Deployed Vault OCR3 contract on chain %d at %s", homeChainOutput.ChainSelector, vaultOCR3Addr)

evmOCR3Addr := mustGetAddress(memoryDatastore, homeChainOutput.ChainSelector, keystone_changeset.OCR3Capability.String(), "1.0.0", "capability_evm")
Copy link
Contributor

Choose a reason for hiding this comment

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

This check should be under a flag (it fails if the evm cap is not deployed).

capabilityFactoryFns = append(capabilityFactoryFns, evm.EVMCapabilityFactory(libc.MustSafeUint64(int64(chainIDInt)), "evm"))

config := in.CapabilitiesConfig.EVM[blockchain.ChainID]
jobSpecFactoryFunctions = append(jobSpecFactoryFunctions, evmJob.EVMJobSpecFactoryFn(
Copy link
Contributor

Choose a reason for hiding this comment

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

Should be under a flag too?

Copy link
Contributor Author

Choose a reason for hiding this comment

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

no need, the job itself have the flag in it if !flags.HasFlag(donWithMetadata.Flags, cre.EVMCapability) { continue } (just mimic other jobs)

@cl-sonarqube-production
Copy link

@bolekk bolekk added this pull request to the merge queue Aug 5, 2025
Merged via the queue into develop with commit 658f74e Aug 5, 2025
160 checks passed
@bolekk bolekk deleted the PRODCRE-557_evm_cap branch August 5, 2025 15:09
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.

3 participants