diff --git a/core/scripts/go.mod b/core/scripts/go.mod index 9b54c449b43..bc534586dce 100644 --- a/core/scripts/go.mod +++ b/core/scripts/go.mod @@ -402,7 +402,7 @@ require ( github.com/smartcontractkit/chainlink-aptos v0.0.0-20250626122206-319db248496a // indirect github.com/smartcontractkit/chainlink-ccip/chains/solana v0.0.0-20250609091505-5c8cd74b92ed // indirect github.com/smartcontractkit/chainlink-feeds v0.1.2-0.20250227211209-7cd000095135 // indirect - github.com/smartcontractkit/chainlink-framework/capabilities v0.0.0-20250618164021-9b34289a9502 // indirect + github.com/smartcontractkit/chainlink-framework/capabilities v0.0.0-20250702183345-3f9ae622e391 // indirect github.com/smartcontractkit/chainlink-framework/chains v0.0.0-20250627121608-e7b52913fae2 // indirect github.com/smartcontractkit/chainlink-framework/metrics v0.0.0-20250618135814-7e3f79ab707e // indirect github.com/smartcontractkit/chainlink-framework/multinode v0.0.0-20250522110034-65c54665034a // indirect diff --git a/core/scripts/go.sum b/core/scripts/go.sum index 4a329cd56ae..b12028c05eb 100644 --- a/core/scripts/go.sum +++ b/core/scripts/go.sum @@ -1308,8 +1308,8 @@ github.com/smartcontractkit/chainlink-evm v0.0.0-20250630192401-d6330473ec6e h1: github.com/smartcontractkit/chainlink-evm v0.0.0-20250630192401-d6330473ec6e/go.mod h1:ZBbbFAkAxn4VQwW5YiQkBP5ng3uk8Dib7zI4a5rjqcs= github.com/smartcontractkit/chainlink-feeds v0.1.2-0.20250227211209-7cd000095135 h1:8u9xUrC+yHrTDexOKDd+jrA6LCzFFHeX1G82oj2fsSI= github.com/smartcontractkit/chainlink-feeds v0.1.2-0.20250227211209-7cd000095135/go.mod h1:NkvE4iQgiT7dMCP6U3xPELHhWhN5Xr6rHC0axRebyMU= -github.com/smartcontractkit/chainlink-framework/capabilities v0.0.0-20250618164021-9b34289a9502 h1:WLgEB8/lIfA1vI+7O4RE/PYitO57TRkKUqVllDIgJD4= -github.com/smartcontractkit/chainlink-framework/capabilities v0.0.0-20250618164021-9b34289a9502/go.mod h1:Kb8f+wt2YmBdD0PfbsC9bDhdUG/Y8sqUkzAvC2Dn8/M= +github.com/smartcontractkit/chainlink-framework/capabilities v0.0.0-20250702183345-3f9ae622e391 h1:4dUBtClcoG6QHY2JYqkpZ3GLL6DUX6pVP52wb7qVY48= +github.com/smartcontractkit/chainlink-framework/capabilities v0.0.0-20250702183345-3f9ae622e391/go.mod h1:GSz65mYV8hzb8LCRhbhoVn4i3el87nrXTBQE8KF1Qao= github.com/smartcontractkit/chainlink-framework/chains v0.0.0-20250627121608-e7b52913fae2 h1:WRwVcv2IW59subaJDNl6B+N4OkZiAO7U2e9001XSw7c= github.com/smartcontractkit/chainlink-framework/chains v0.0.0-20250627121608-e7b52913fae2/go.mod h1:+pRGfDej1r7cHMs1dYmuyPuOZzYB9Q+PKu0FvZOYlmw= github.com/smartcontractkit/chainlink-framework/metrics v0.0.0-20250618135814-7e3f79ab707e h1:LRT+PltY99+hxZAJn+4nyTfqGVNEM1S6FJ675B9BtJo= diff --git a/core/services/relay/evm/target_strategy.go b/core/services/relay/evm/target_strategy.go index 9d5e3fa1cd6..7a39cfc20da 100644 --- a/core/services/relay/evm/target_strategy.go +++ b/core/services/relay/evm/target_strategy.go @@ -11,12 +11,14 @@ import ( "github.com/ethereum/go-ethereum/common" "github.com/google/uuid" + "github.com/shopspring/decimal" "github.com/smartcontractkit/chainlink-common/pkg/capabilities" "github.com/smartcontractkit/chainlink-common/pkg/logger" commontypes "github.com/smartcontractkit/chainlink-common/pkg/types" "github.com/smartcontractkit/chainlink-common/pkg/types/query/primitives" + evmtxmgr "github.com/smartcontractkit/chainlink-evm/pkg/txmgr" "github.com/smartcontractkit/chainlink-framework/capabilities/writetarget" ) @@ -26,9 +28,9 @@ var ( ) type evmTargetStrategy struct { - cr commontypes.ContractReader - cw commontypes.ContractWriter - + cr commontypes.ContractReader + cw commontypes.ContractWriter + txm evmtxmgr.TxManager lggr logger.Logger forwarder string @@ -65,11 +67,15 @@ type Config struct { GasLimit *uint64 } -func NewEVMTargetStrategy(cr commontypes.ContractReader, cw commontypes.ContractWriter, forwarder string, gasLimitDefault uint64, lggr logger.Logger) *evmTargetStrategy { +func NewEVMTargetStrategy(cr commontypes.ContractReader, cw commontypes.ContractWriter, txm evmtxmgr.TxManager, forwarder string, gasLimitDefault uint64, lggr logger.Logger) (*evmTargetStrategy, error) { + if gasLimitDefault < ForwarderContractLogicGasCost { + return nil, fmt.Errorf("default gas limit '%d' is lower than forwarder estimate '%d'", gasLimitDefault, ForwarderContractLogicGasCost) + } bound := atomic.Bool{} return &evmTargetStrategy{ cr: cr, cw: cw, + txm: txm, lggr: lggr, forwarder: forwarder, receiverGasMinimum: gasLimitDefault - ForwarderContractLogicGasCost, @@ -78,7 +84,7 @@ func NewEVMTargetStrategy(cr commontypes.ContractReader, cw commontypes.Contract Name: "forwarder", }, bound: &bound, - } + }, nil } func (t *evmTargetStrategy) QueryTransmissionState(ctx context.Context, reportID uint16, request capabilities.CapabilityRequest) (*writetarget.TransmissionState, error) { @@ -171,6 +177,38 @@ func (t *evmTargetStrategy) QueryTransmissionState(ctx context.Context, reportID }, fmt.Errorf("unexpected transmission state: %v", transmissionInfo.State) } +func (t *evmTargetStrategy) GetEstimateFee(ctx context.Context, report []byte, reportContext []byte, signatures [][]byte, + request capabilities.CapabilityRequest) (commontypes.EstimateFee, error) { + r, err := getEVMRequest(request) + if err != nil { + return commontypes.EstimateFee{}, err + } + + req := getRawReport(r) + t.lggr.Debugw("Transaction raw report", "report", hex.EncodeToString(req.RawReport)) + + meta := commontypes.TxMeta{WorkflowExecutionID: &request.Metadata.WorkflowExecutionID} + if r.Config.GasLimit != nil { + meta.GasLimit = new(big.Int).SetUint64(*r.Config.GasLimit) + } + + value := big.NewInt(0) + return t.cw.GetEstimateFee(ctx, contractName, method, req, t.forwarder, &meta, value) +} + +func (t *evmTargetStrategy) GetTransactionFee(ctx context.Context, transactionID string) (decimal.Decimal, error) { + fee, err := t.txm.GetTransactionFee(ctx, transactionID) + if err != nil { + return decimal.Decimal{}, err + } + return decimal.New(fee.TransactionFee.Int64(), -18), nil +} + +var ( + contractName = "forwarder" + method = "report" +) + // TransmitReport constructs the tx to transmit the report, and defines // any specific handling for sending the report via ChainWriter. func (t *evmTargetStrategy) TransmitReport(ctx context.Context, _ []byte, _ []byte, _ [][]byte, request capabilities.CapabilityRequest) (string, error) { @@ -183,16 +221,39 @@ func (t *evmTargetStrategy) TransmitReport(ctx context.Context, _ []byte, _ []by if err != nil { return txID.String(), fmt.Errorf("failed to getEVMRequest: %w", err) } + req := getRawReport(r) + t.lggr.Debugw("Transaction raw report", "report", hex.EncodeToString(req.RawReport)) + + meta := commontypes.TxMeta{WorkflowExecutionID: &request.Metadata.WorkflowExecutionID} + if r.Config.GasLimit != nil { + meta.GasLimit = new(big.Int).SetUint64(*r.Config.GasLimit) + } + value := big.NewInt(0) + if err := t.cw.SubmitTransaction(ctx, contractName, method, req, txID.String(), t.forwarder, &meta, value); err != nil { + if !commontypes.ErrSettingTransactionGasLimitNotSupported.Is(err) { + return txID.String(), fmt.Errorf("failed to submit transaction: %w", err) + } + meta.GasLimit = nil + if err := t.cw.SubmitTransaction(ctx, contractName, method, req, txID.String(), t.forwarder, &meta, value); err != nil { + return txID.String(), fmt.Errorf("failed to submit transaction: %w", err) + } + } + return txID.String(), nil +} + +type rawReport struct { + Receiver string + RawReport []byte + ReportContext []byte + Signatures [][]byte +} + +func getRawReport(r TargetRequest) rawReport { // Note: The codec that ChainWriter uses to encode the parameters for the contract ABI cannot handle // `nil` values, including for slices. Until the bug is fixed we need to ensure that there are no // `nil` values passed in the request. - req := struct { - Receiver string - RawReport []byte - ReportContext []byte - Signatures [][]byte - }{r.Config.Address, r.Inputs.SignedReport.Report, r.Inputs.SignedReport.Context, r.Inputs.SignedReport.Signatures} + req := rawReport{r.Config.Address, r.Inputs.SignedReport.Report, r.Inputs.SignedReport.Context, r.Inputs.SignedReport.Signatures} if req.RawReport == nil { req.RawReport = make([]byte, 0) @@ -205,24 +266,8 @@ func (t *evmTargetStrategy) TransmitReport(ctx context.Context, _ []byte, _ []by if req.Signatures == nil { req.Signatures = make([][]byte, 0) } - t.lggr.Debugw("Transaction raw report", "report", hex.EncodeToString(req.RawReport)) - meta := commontypes.TxMeta{WorkflowExecutionID: &request.Metadata.WorkflowExecutionID} - if r.Config.GasLimit != nil { - meta.GasLimit = new(big.Int).SetUint64(*r.Config.GasLimit) - } - - value := big.NewInt(0) - if err := t.cw.SubmitTransaction(ctx, "forwarder", "report", req, txID.String(), t.forwarder, &meta, value); err != nil { - if !commontypes.ErrSettingTransactionGasLimitNotSupported.Is(err) { - return txID.String(), fmt.Errorf("failed to submit transaction: %w", err) - } - meta.GasLimit = nil - if err := t.cw.SubmitTransaction(ctx, "forwarder", "report", req, txID.String(), t.forwarder, &meta, value); err != nil { - return txID.String(), fmt.Errorf("failed to submit transaction: %w", err) - } - } - return txID.String(), nil + return req } func (t *evmTargetStrategy) GetTransactionStatus(ctx context.Context, transactionID string) (commontypes.TransactionStatus, error) { diff --git a/core/services/relay/evm/write_target.go b/core/services/relay/evm/write_target.go index 2d6d0c1b038..c6760747317 100644 --- a/core/services/relay/evm/write_target.go +++ b/core/services/relay/evm/write_target.go @@ -120,7 +120,10 @@ func NewWriteTarget(ctx context.Context, relayer *Relayer, chain legacyevm.Chain if err != nil { return nil, fmt.Errorf("failed to create Aptos WT monitor client: %+w", err) } - + ts, err := NewEVMTargetStrategy(cr, cw, relayer.chain.TxManager(), config.ForwarderAddress().String(), gasLimitDefault, lggr) + if err != nil { + return nil, fmt.Errorf("failed to create target strategy: %w", err) + } opts := writetarget.WriteTargetOpts{ ID: id, Logger: lggr, @@ -139,7 +142,7 @@ func NewWriteTarget(ctx context.Context, relayer *Relayer, chain legacyevm.Chain ConfigValidateFn: evaluate, NodeAddress: config.FromAddress().String(), ForwarderAddress: config.ForwarderAddress().String(), - TargetStrategy: NewEVMTargetStrategy(cr, cw, config.ForwarderAddress().String(), gasLimitDefault, lggr), + TargetStrategy: ts, WriteAcceptanceState: *config.TxAcceptanceState(), } diff --git a/core/services/relay/evm/write_target_test.go b/core/services/relay/evm/write_target_test.go index e29e47e4314..b9205e92ed0 100644 --- a/core/services/relay/evm/write_target_test.go +++ b/core/services/relay/evm/write_target_test.go @@ -22,6 +22,7 @@ import ( "github.com/smartcontractkit/chainlink-common/pkg/capabilities" "github.com/smartcontractkit/chainlink-common/pkg/services/servicetest" commontypes "github.com/smartcontractkit/chainlink-common/pkg/types" + commonevm "github.com/smartcontractkit/chainlink-common/pkg/types/chains/evm" "github.com/smartcontractkit/chainlink-common/pkg/utils/tests" "github.com/smartcontractkit/chainlink-common/pkg/values" @@ -256,6 +257,7 @@ func TestEvmWrite(t *testing.T) { require.Equal(t, generateReportEncoded(reportType), payload["rawReport"]) require.Equal(t, signatures, payload["signatures"]) }).Once() + txManager.On("GetTransactionFee", mock.Anything, mock.Anything).Return(&commonevm.TransactionFee{TransactionFee: big.NewInt(10)}, nil) } generateValidInputs := func(reportType string) *values.Map { diff --git a/deployment/go.mod b/deployment/go.mod index 80b5d5e5f15..960565ce8fd 100644 --- a/deployment/go.mod +++ b/deployment/go.mod @@ -383,7 +383,7 @@ require ( github.com/smartcontractkit/chainlink-automation v0.8.1 // indirect github.com/smartcontractkit/chainlink-data-streams v0.1.1-0.20250604171706-a98fa6515eae // indirect github.com/smartcontractkit/chainlink-feeds v0.1.2-0.20250227211209-7cd000095135 // indirect - github.com/smartcontractkit/chainlink-framework/capabilities v0.0.0-20250618164021-9b34289a9502 // indirect + github.com/smartcontractkit/chainlink-framework/capabilities v0.0.0-20250702183345-3f9ae622e391 // indirect github.com/smartcontractkit/chainlink-framework/chains v0.0.0-20250627121608-e7b52913fae2 // indirect github.com/smartcontractkit/chainlink-framework/metrics v0.0.0-20250618135814-7e3f79ab707e // indirect github.com/smartcontractkit/chainlink-protos/billing/go v0.0.0-20250701181457-37bd0d618b58 // indirect diff --git a/deployment/go.sum b/deployment/go.sum index d6d1cc1ec5f..bf3296dfd6e 100644 --- a/deployment/go.sum +++ b/deployment/go.sum @@ -1279,8 +1279,8 @@ github.com/smartcontractkit/chainlink-evm v0.0.0-20250630192401-d6330473ec6e h1: github.com/smartcontractkit/chainlink-evm v0.0.0-20250630192401-d6330473ec6e/go.mod h1:ZBbbFAkAxn4VQwW5YiQkBP5ng3uk8Dib7zI4a5rjqcs= github.com/smartcontractkit/chainlink-feeds v0.1.2-0.20250227211209-7cd000095135 h1:8u9xUrC+yHrTDexOKDd+jrA6LCzFFHeX1G82oj2fsSI= github.com/smartcontractkit/chainlink-feeds v0.1.2-0.20250227211209-7cd000095135/go.mod h1:NkvE4iQgiT7dMCP6U3xPELHhWhN5Xr6rHC0axRebyMU= -github.com/smartcontractkit/chainlink-framework/capabilities v0.0.0-20250618164021-9b34289a9502 h1:WLgEB8/lIfA1vI+7O4RE/PYitO57TRkKUqVllDIgJD4= -github.com/smartcontractkit/chainlink-framework/capabilities v0.0.0-20250618164021-9b34289a9502/go.mod h1:Kb8f+wt2YmBdD0PfbsC9bDhdUG/Y8sqUkzAvC2Dn8/M= +github.com/smartcontractkit/chainlink-framework/capabilities v0.0.0-20250702183345-3f9ae622e391 h1:4dUBtClcoG6QHY2JYqkpZ3GLL6DUX6pVP52wb7qVY48= +github.com/smartcontractkit/chainlink-framework/capabilities v0.0.0-20250702183345-3f9ae622e391/go.mod h1:GSz65mYV8hzb8LCRhbhoVn4i3el87nrXTBQE8KF1Qao= github.com/smartcontractkit/chainlink-framework/chains v0.0.0-20250627121608-e7b52913fae2 h1:WRwVcv2IW59subaJDNl6B+N4OkZiAO7U2e9001XSw7c= github.com/smartcontractkit/chainlink-framework/chains v0.0.0-20250627121608-e7b52913fae2/go.mod h1:+pRGfDej1r7cHMs1dYmuyPuOZzYB9Q+PKu0FvZOYlmw= github.com/smartcontractkit/chainlink-framework/metrics v0.0.0-20250618135814-7e3f79ab707e h1:LRT+PltY99+hxZAJn+4nyTfqGVNEM1S6FJ675B9BtJo= diff --git a/go.mod b/go.mod index f34164c6687..f70143cadef 100644 --- a/go.mod +++ b/go.mod @@ -85,7 +85,7 @@ require ( github.com/smartcontractkit/chainlink-data-streams v0.1.1-0.20250604171706-a98fa6515eae github.com/smartcontractkit/chainlink-evm v0.0.0-20250630192401-d6330473ec6e github.com/smartcontractkit/chainlink-feeds v0.1.2-0.20250227211209-7cd000095135 - github.com/smartcontractkit/chainlink-framework/capabilities v0.0.0-20250618164021-9b34289a9502 + github.com/smartcontractkit/chainlink-framework/capabilities v0.0.0-20250702183345-3f9ae622e391 github.com/smartcontractkit/chainlink-framework/chains v0.0.0-20250627121608-e7b52913fae2 github.com/smartcontractkit/chainlink-framework/multinode v0.0.0-20250522110034-65c54665034a github.com/smartcontractkit/chainlink-protos/billing/go v0.0.0-20250701181457-37bd0d618b58 diff --git a/go.sum b/go.sum index 8e4bbe53852..b572bdb4c2f 100644 --- a/go.sum +++ b/go.sum @@ -1100,8 +1100,8 @@ github.com/smartcontractkit/chainlink-evm v0.0.0-20250630192401-d6330473ec6e h1: github.com/smartcontractkit/chainlink-evm v0.0.0-20250630192401-d6330473ec6e/go.mod h1:ZBbbFAkAxn4VQwW5YiQkBP5ng3uk8Dib7zI4a5rjqcs= github.com/smartcontractkit/chainlink-feeds v0.1.2-0.20250227211209-7cd000095135 h1:8u9xUrC+yHrTDexOKDd+jrA6LCzFFHeX1G82oj2fsSI= github.com/smartcontractkit/chainlink-feeds v0.1.2-0.20250227211209-7cd000095135/go.mod h1:NkvE4iQgiT7dMCP6U3xPELHhWhN5Xr6rHC0axRebyMU= -github.com/smartcontractkit/chainlink-framework/capabilities v0.0.0-20250618164021-9b34289a9502 h1:WLgEB8/lIfA1vI+7O4RE/PYitO57TRkKUqVllDIgJD4= -github.com/smartcontractkit/chainlink-framework/capabilities v0.0.0-20250618164021-9b34289a9502/go.mod h1:Kb8f+wt2YmBdD0PfbsC9bDhdUG/Y8sqUkzAvC2Dn8/M= +github.com/smartcontractkit/chainlink-framework/capabilities v0.0.0-20250702183345-3f9ae622e391 h1:4dUBtClcoG6QHY2JYqkpZ3GLL6DUX6pVP52wb7qVY48= +github.com/smartcontractkit/chainlink-framework/capabilities v0.0.0-20250702183345-3f9ae622e391/go.mod h1:GSz65mYV8hzb8LCRhbhoVn4i3el87nrXTBQE8KF1Qao= github.com/smartcontractkit/chainlink-framework/chains v0.0.0-20250627121608-e7b52913fae2 h1:WRwVcv2IW59subaJDNl6B+N4OkZiAO7U2e9001XSw7c= github.com/smartcontractkit/chainlink-framework/chains v0.0.0-20250627121608-e7b52913fae2/go.mod h1:+pRGfDej1r7cHMs1dYmuyPuOZzYB9Q+PKu0FvZOYlmw= github.com/smartcontractkit/chainlink-framework/metrics v0.0.0-20250618135814-7e3f79ab707e h1:LRT+PltY99+hxZAJn+4nyTfqGVNEM1S6FJ675B9BtJo= diff --git a/integration-tests/go.mod b/integration-tests/go.mod index 715342be374..60478574f38 100644 --- a/integration-tests/go.mod +++ b/integration-tests/go.mod @@ -465,7 +465,7 @@ require ( github.com/smartcontractkit/chainlink-common/pkg/values v0.0.0-20250626141212-e50b2e7ffe2d // indirect github.com/smartcontractkit/chainlink-data-streams v0.1.1-0.20250604171706-a98fa6515eae // indirect github.com/smartcontractkit/chainlink-feeds v0.1.2-0.20250227211209-7cd000095135 // indirect - github.com/smartcontractkit/chainlink-framework/capabilities v0.0.0-20250618164021-9b34289a9502 // indirect + github.com/smartcontractkit/chainlink-framework/capabilities v0.0.0-20250702183345-3f9ae622e391 // indirect github.com/smartcontractkit/chainlink-framework/chains v0.0.0-20250627121608-e7b52913fae2 // indirect github.com/smartcontractkit/chainlink-framework/metrics v0.0.0-20250618135814-7e3f79ab707e // indirect github.com/smartcontractkit/chainlink-framework/multinode v0.0.0-20250522110034-65c54665034a // indirect diff --git a/integration-tests/go.sum b/integration-tests/go.sum index 94f224f4e47..8656e6417ca 100644 --- a/integration-tests/go.sum +++ b/integration-tests/go.sum @@ -1502,8 +1502,8 @@ github.com/smartcontractkit/chainlink-evm v0.0.0-20250630192401-d6330473ec6e h1: github.com/smartcontractkit/chainlink-evm v0.0.0-20250630192401-d6330473ec6e/go.mod h1:ZBbbFAkAxn4VQwW5YiQkBP5ng3uk8Dib7zI4a5rjqcs= github.com/smartcontractkit/chainlink-feeds v0.1.2-0.20250227211209-7cd000095135 h1:8u9xUrC+yHrTDexOKDd+jrA6LCzFFHeX1G82oj2fsSI= github.com/smartcontractkit/chainlink-feeds v0.1.2-0.20250227211209-7cd000095135/go.mod h1:NkvE4iQgiT7dMCP6U3xPELHhWhN5Xr6rHC0axRebyMU= -github.com/smartcontractkit/chainlink-framework/capabilities v0.0.0-20250618164021-9b34289a9502 h1:WLgEB8/lIfA1vI+7O4RE/PYitO57TRkKUqVllDIgJD4= -github.com/smartcontractkit/chainlink-framework/capabilities v0.0.0-20250618164021-9b34289a9502/go.mod h1:Kb8f+wt2YmBdD0PfbsC9bDhdUG/Y8sqUkzAvC2Dn8/M= +github.com/smartcontractkit/chainlink-framework/capabilities v0.0.0-20250702183345-3f9ae622e391 h1:4dUBtClcoG6QHY2JYqkpZ3GLL6DUX6pVP52wb7qVY48= +github.com/smartcontractkit/chainlink-framework/capabilities v0.0.0-20250702183345-3f9ae622e391/go.mod h1:GSz65mYV8hzb8LCRhbhoVn4i3el87nrXTBQE8KF1Qao= github.com/smartcontractkit/chainlink-framework/chains v0.0.0-20250627121608-e7b52913fae2 h1:WRwVcv2IW59subaJDNl6B+N4OkZiAO7U2e9001XSw7c= github.com/smartcontractkit/chainlink-framework/chains v0.0.0-20250627121608-e7b52913fae2/go.mod h1:+pRGfDej1r7cHMs1dYmuyPuOZzYB9Q+PKu0FvZOYlmw= github.com/smartcontractkit/chainlink-framework/metrics v0.0.0-20250618135814-7e3f79ab707e h1:LRT+PltY99+hxZAJn+4nyTfqGVNEM1S6FJ675B9BtJo= diff --git a/integration-tests/load/go.mod b/integration-tests/load/go.mod index fe5ca65c46a..2cc59ee9c59 100644 --- a/integration-tests/load/go.mod +++ b/integration-tests/load/go.mod @@ -453,7 +453,7 @@ require ( github.com/smartcontractkit/chainlink-common/pkg/values v0.0.0-20250626141212-e50b2e7ffe2d // indirect github.com/smartcontractkit/chainlink-data-streams v0.1.1-0.20250604171706-a98fa6515eae // indirect github.com/smartcontractkit/chainlink-feeds v0.1.2-0.20250227211209-7cd000095135 // indirect - github.com/smartcontractkit/chainlink-framework/capabilities v0.0.0-20250618164021-9b34289a9502 // indirect + github.com/smartcontractkit/chainlink-framework/capabilities v0.0.0-20250702183345-3f9ae622e391 // indirect github.com/smartcontractkit/chainlink-framework/chains v0.0.0-20250627121608-e7b52913fae2 // indirect github.com/smartcontractkit/chainlink-framework/metrics v0.0.0-20250618135814-7e3f79ab707e // indirect github.com/smartcontractkit/chainlink-framework/multinode v0.0.0-20250522110034-65c54665034a // indirect diff --git a/integration-tests/load/go.sum b/integration-tests/load/go.sum index 67b1768b56a..b0b347955ed 100644 --- a/integration-tests/load/go.sum +++ b/integration-tests/load/go.sum @@ -1484,8 +1484,8 @@ github.com/smartcontractkit/chainlink-evm v0.0.0-20250630192401-d6330473ec6e h1: github.com/smartcontractkit/chainlink-evm v0.0.0-20250630192401-d6330473ec6e/go.mod h1:ZBbbFAkAxn4VQwW5YiQkBP5ng3uk8Dib7zI4a5rjqcs= github.com/smartcontractkit/chainlink-feeds v0.1.2-0.20250227211209-7cd000095135 h1:8u9xUrC+yHrTDexOKDd+jrA6LCzFFHeX1G82oj2fsSI= github.com/smartcontractkit/chainlink-feeds v0.1.2-0.20250227211209-7cd000095135/go.mod h1:NkvE4iQgiT7dMCP6U3xPELHhWhN5Xr6rHC0axRebyMU= -github.com/smartcontractkit/chainlink-framework/capabilities v0.0.0-20250618164021-9b34289a9502 h1:WLgEB8/lIfA1vI+7O4RE/PYitO57TRkKUqVllDIgJD4= -github.com/smartcontractkit/chainlink-framework/capabilities v0.0.0-20250618164021-9b34289a9502/go.mod h1:Kb8f+wt2YmBdD0PfbsC9bDhdUG/Y8sqUkzAvC2Dn8/M= +github.com/smartcontractkit/chainlink-framework/capabilities v0.0.0-20250702183345-3f9ae622e391 h1:4dUBtClcoG6QHY2JYqkpZ3GLL6DUX6pVP52wb7qVY48= +github.com/smartcontractkit/chainlink-framework/capabilities v0.0.0-20250702183345-3f9ae622e391/go.mod h1:GSz65mYV8hzb8LCRhbhoVn4i3el87nrXTBQE8KF1Qao= github.com/smartcontractkit/chainlink-framework/chains v0.0.0-20250627121608-e7b52913fae2 h1:WRwVcv2IW59subaJDNl6B+N4OkZiAO7U2e9001XSw7c= github.com/smartcontractkit/chainlink-framework/chains v0.0.0-20250627121608-e7b52913fae2/go.mod h1:+pRGfDej1r7cHMs1dYmuyPuOZzYB9Q+PKu0FvZOYlmw= github.com/smartcontractkit/chainlink-framework/metrics v0.0.0-20250618135814-7e3f79ab707e h1:LRT+PltY99+hxZAJn+4nyTfqGVNEM1S6FJ675B9BtJo= diff --git a/system-tests/lib/go.mod b/system-tests/lib/go.mod index b54564984e7..bbc541b2b1c 100644 --- a/system-tests/lib/go.mod +++ b/system-tests/lib/go.mod @@ -369,7 +369,7 @@ require ( github.com/smartcontractkit/chainlink-ccip/chains/solana v0.0.0-20250609091505-5c8cd74b92ed // indirect github.com/smartcontractkit/chainlink-data-streams v0.1.1-0.20250604171706-a98fa6515eae // indirect github.com/smartcontractkit/chainlink-feeds v0.1.2-0.20250227211209-7cd000095135 // indirect - github.com/smartcontractkit/chainlink-framework/capabilities v0.0.0-20250618164021-9b34289a9502 // indirect + github.com/smartcontractkit/chainlink-framework/capabilities v0.0.0-20250702183345-3f9ae622e391 // indirect github.com/smartcontractkit/chainlink-framework/chains v0.0.0-20250627121608-e7b52913fae2 // indirect github.com/smartcontractkit/chainlink-framework/metrics v0.0.0-20250618135814-7e3f79ab707e // indirect github.com/smartcontractkit/chainlink-framework/multinode v0.0.0-20250522110034-65c54665034a // indirect diff --git a/system-tests/lib/go.sum b/system-tests/lib/go.sum index d46b6f86c62..5f2f3922a3e 100644 --- a/system-tests/lib/go.sum +++ b/system-tests/lib/go.sum @@ -1271,8 +1271,8 @@ github.com/smartcontractkit/chainlink-evm v0.0.0-20250630192401-d6330473ec6e h1: github.com/smartcontractkit/chainlink-evm v0.0.0-20250630192401-d6330473ec6e/go.mod h1:ZBbbFAkAxn4VQwW5YiQkBP5ng3uk8Dib7zI4a5rjqcs= github.com/smartcontractkit/chainlink-feeds v0.1.2-0.20250227211209-7cd000095135 h1:8u9xUrC+yHrTDexOKDd+jrA6LCzFFHeX1G82oj2fsSI= github.com/smartcontractkit/chainlink-feeds v0.1.2-0.20250227211209-7cd000095135/go.mod h1:NkvE4iQgiT7dMCP6U3xPELHhWhN5Xr6rHC0axRebyMU= -github.com/smartcontractkit/chainlink-framework/capabilities v0.0.0-20250618164021-9b34289a9502 h1:WLgEB8/lIfA1vI+7O4RE/PYitO57TRkKUqVllDIgJD4= -github.com/smartcontractkit/chainlink-framework/capabilities v0.0.0-20250618164021-9b34289a9502/go.mod h1:Kb8f+wt2YmBdD0PfbsC9bDhdUG/Y8sqUkzAvC2Dn8/M= +github.com/smartcontractkit/chainlink-framework/capabilities v0.0.0-20250702183345-3f9ae622e391 h1:4dUBtClcoG6QHY2JYqkpZ3GLL6DUX6pVP52wb7qVY48= +github.com/smartcontractkit/chainlink-framework/capabilities v0.0.0-20250702183345-3f9ae622e391/go.mod h1:GSz65mYV8hzb8LCRhbhoVn4i3el87nrXTBQE8KF1Qao= github.com/smartcontractkit/chainlink-framework/chains v0.0.0-20250627121608-e7b52913fae2 h1:WRwVcv2IW59subaJDNl6B+N4OkZiAO7U2e9001XSw7c= github.com/smartcontractkit/chainlink-framework/chains v0.0.0-20250627121608-e7b52913fae2/go.mod h1:+pRGfDej1r7cHMs1dYmuyPuOZzYB9Q+PKu0FvZOYlmw= github.com/smartcontractkit/chainlink-framework/metrics v0.0.0-20250618135814-7e3f79ab707e h1:LRT+PltY99+hxZAJn+4nyTfqGVNEM1S6FJ675B9BtJo= diff --git a/system-tests/tests/go.mod b/system-tests/tests/go.mod index 5db5f8efc7d..e3322c312f8 100644 --- a/system-tests/tests/go.mod +++ b/system-tests/tests/go.mod @@ -444,7 +444,7 @@ require ( github.com/smartcontractkit/chainlink-ccip v0.0.0-20250627133416-1d85eec09097 // indirect github.com/smartcontractkit/chainlink-ccip/chains/solana v0.0.0-20250609091505-5c8cd74b92ed // indirect github.com/smartcontractkit/chainlink-feeds v0.1.2-0.20250227211209-7cd000095135 // indirect - github.com/smartcontractkit/chainlink-framework/capabilities v0.0.0-20250618164021-9b34289a9502 // indirect + github.com/smartcontractkit/chainlink-framework/capabilities v0.0.0-20250702183345-3f9ae622e391 // indirect github.com/smartcontractkit/chainlink-framework/chains v0.0.0-20250627121608-e7b52913fae2 // indirect github.com/smartcontractkit/chainlink-framework/metrics v0.0.0-20250618135814-7e3f79ab707e // indirect github.com/smartcontractkit/chainlink-framework/multinode v0.0.0-20250522110034-65c54665034a // indirect diff --git a/system-tests/tests/go.sum b/system-tests/tests/go.sum index 000645284c1..c7b37c6a1eb 100644 --- a/system-tests/tests/go.sum +++ b/system-tests/tests/go.sum @@ -1467,8 +1467,8 @@ github.com/smartcontractkit/chainlink-evm v0.0.0-20250630192401-d6330473ec6e h1: github.com/smartcontractkit/chainlink-evm v0.0.0-20250630192401-d6330473ec6e/go.mod h1:ZBbbFAkAxn4VQwW5YiQkBP5ng3uk8Dib7zI4a5rjqcs= github.com/smartcontractkit/chainlink-feeds v0.1.2-0.20250227211209-7cd000095135 h1:8u9xUrC+yHrTDexOKDd+jrA6LCzFFHeX1G82oj2fsSI= github.com/smartcontractkit/chainlink-feeds v0.1.2-0.20250227211209-7cd000095135/go.mod h1:NkvE4iQgiT7dMCP6U3xPELHhWhN5Xr6rHC0axRebyMU= -github.com/smartcontractkit/chainlink-framework/capabilities v0.0.0-20250618164021-9b34289a9502 h1:WLgEB8/lIfA1vI+7O4RE/PYitO57TRkKUqVllDIgJD4= -github.com/smartcontractkit/chainlink-framework/capabilities v0.0.0-20250618164021-9b34289a9502/go.mod h1:Kb8f+wt2YmBdD0PfbsC9bDhdUG/Y8sqUkzAvC2Dn8/M= +github.com/smartcontractkit/chainlink-framework/capabilities v0.0.0-20250702183345-3f9ae622e391 h1:4dUBtClcoG6QHY2JYqkpZ3GLL6DUX6pVP52wb7qVY48= +github.com/smartcontractkit/chainlink-framework/capabilities v0.0.0-20250702183345-3f9ae622e391/go.mod h1:GSz65mYV8hzb8LCRhbhoVn4i3el87nrXTBQE8KF1Qao= github.com/smartcontractkit/chainlink-framework/chains v0.0.0-20250627121608-e7b52913fae2 h1:WRwVcv2IW59subaJDNl6B+N4OkZiAO7U2e9001XSw7c= github.com/smartcontractkit/chainlink-framework/chains v0.0.0-20250627121608-e7b52913fae2/go.mod h1:+pRGfDej1r7cHMs1dYmuyPuOZzYB9Q+PKu0FvZOYlmw= github.com/smartcontractkit/chainlink-framework/metrics v0.0.0-20250618135814-7e3f79ab707e h1:LRT+PltY99+hxZAJn+4nyTfqGVNEM1S6FJ675B9BtJo=