From 3045553b1113fadfa2fd4b503549f7680beb8b77 Mon Sep 17 00:00:00 2001 From: Tejaswi Nadahalli Date: Mon, 18 May 2026 14:41:50 +0200 Subject: [PATCH 1/7] Verify enclave config against onchain DON in confidentialrelay handler (PRIV-458) The handler now compares the attested EnclaveConfig in every incoming SecretsRequestParams and CapabilityRequestParams against the local node's WorkflowDON membership and fault tolerance, after Nitro attestation validation succeeds. Closes Sigma Prime CL112-01 on the relay-DON path. The relay DON runs on the same nodes as the workflow DON, so localNode.WorkflowDON.Members is the right comparison target. LocalNode is an O(1) in-memory map lookup populated by the registry syncer on a ~12s tick, so the check stays off the RPC hot path. Up to ~12s staleness applies during DON membership rotations and is acceptable given how rare those events are. Tests cover match-accepts, F mismatch, signers-count mismatch, signer value mismatch, order-independent comparison, and the secrets-get path. Existing tests updated to fill EnclaveConfig in fixtures with a matching WorkflowDON.Members in the mock registry. Bumps chainlink-common to v0.11.2-0.20260518112011-40a8e4cedaa8 to pick up the EnclaveConfig field on confidentialrelay request params (smartcontractkit/chainlink-common#2063). Companion PRs: - smartcontractkit/confidential-compute#329 (pool.go-side check). - smartcontractkit/chainlink-common#2063 (field on params). - smartcontractkit/confidential-compute#330 (enclave fills field). --- .../capabilities/confidentialrelay/handler.go | 56 +++++ .../confidentialrelay/handler_test.go | 215 ++++++++++++++++++ go.mod | 2 +- go.sum | 4 +- 4 files changed, 274 insertions(+), 3 deletions(-) diff --git a/core/capabilities/confidentialrelay/handler.go b/core/capabilities/confidentialrelay/handler.go index 4956436eec7..b38b1b93c69 100644 --- a/core/capabilities/confidentialrelay/handler.go +++ b/core/capabilities/confidentialrelay/handler.go @@ -1,12 +1,14 @@ package confidentialrelay import ( + "bytes" "context" "encoding/base64" "encoding/hex" "encoding/json" "errors" "fmt" + "sort" "time" "github.com/ethereum/go-ethereum/common" @@ -228,6 +230,14 @@ func (h *Handler) handleSecretsGet(ctx context.Context, gatewayID string, req *j if err := h.verifyAttestationHash(ctx, att, params, confidentialrelaytypes.DomainSecretsGet); err != nil { return h.errorResponse(ctx, gatewayID, req, jsonrpc.ErrInternal, err) } + // Verify the enclave's reported config matches the onchain DON state + // before treating the attested request as trusted. Sigma Prime CL112-01: + // the Nitro attestation binds the request hash, but a malicious host + // can produce a genuinely-attested request over a forged enclave config + // unless we compare the config value against an onchain reference. + if err := h.verifyEnclaveConfigMatchesDON(ctx, params.EnclaveConfig); err != nil { + return h.errorResponse(ctx, gatewayID, req, jsonrpc.ErrInternal, err) + } vaultCap, err := h.capRegistry.GetExecutable(ctx, vault.CapabilityID) if err != nil { @@ -401,6 +411,9 @@ func (h *Handler) handleCapabilityExecute(ctx context.Context, gatewayID string, if err := h.verifyAttestationHash(ctx, att, params, confidentialrelaytypes.DomainCapabilityExec); err != nil { return h.errorResponse(ctx, gatewayID, req, jsonrpc.ErrInternal, err) } + if err := h.verifyEnclaveConfigMatchesDON(ctx, params.EnclaveConfig); err != nil { + return h.errorResponse(ctx, gatewayID, req, jsonrpc.ErrInternal, err) + } capability, err := h.capRegistry.GetExecutable(ctx, params.CapabilityID) if err != nil { @@ -472,6 +485,49 @@ func (h *Handler) handleCapabilityExecute(ctx context.Context, gatewayID string, return h.jsonResponse(req, signedResult) } +// verifyEnclaveConfigMatchesDON compares the enclave's reported EnclaveConfig +// against the local node's WorkflowDON membership and fault tolerance. The +// relay DON runs on the same nodes as the workflow DON, so +// localNode.WorkflowDON.Members is the right comparison target. +// +// Sigma Prime CL112-01 / PRIV-458: pool.go validates the Nitro attestation +// cryptographically but a malicious host can still produce a +// genuinely-attested request over a forged config. The fix is to compare +// the attested config value against onchain DON state. +// +// LocalNode is an O(1) in-memory map lookup populated by the registry +// syncer (background goroutine, default 12s tick); not an RPC on the hot +// path. Up to a ~12s staleness window applies during DON membership +// rotations and is acceptable: rotations are rare planned events. +func (h *Handler) verifyEnclaveConfigMatchesDON(ctx context.Context, cfg confidentialrelaytypes.EnclaveConfig) error { + localNode, err := h.capRegistry.LocalNode(ctx) + if err != nil { + return fmt.Errorf("fetch LocalNode for enclave config check: %w", err) + } + expectedF := uint32(localNode.WorkflowDON.F) + if cfg.F != expectedF { + return fmt.Errorf("enclave config F mismatch: enclave reports %d, expected %d", cfg.F, expectedF) + } + if len(cfg.Signers) != len(localNode.WorkflowDON.Members) { + return fmt.Errorf("enclave config signers count mismatch: enclave reports %d, expected %d", + len(cfg.Signers), len(localNode.WorkflowDON.Members)) + } + expected := make([][]byte, len(localNode.WorkflowDON.Members)) + for i := range localNode.WorkflowDON.Members { + expected[i] = localNode.WorkflowDON.Members[i][:] + } + actual := append([][]byte(nil), cfg.Signers...) + sort.Slice(actual, func(i, j int) bool { return bytes.Compare(actual[i], actual[j]) < 0 }) + sort.Slice(expected, func(i, j int) bool { return bytes.Compare(expected[i], expected[j]) < 0 }) + for i := range actual { + if !bytes.Equal(actual[i], expected[i]) { + return fmt.Errorf("enclave config signer mismatch at sorted index %d: enclave reports %x, expected %x", + i, actual[i], expected[i]) + } + } + return nil +} + // getEnclaveAttestationConfig reads the enclave pool configuration from the // capabilities registry and returns trusted measurement sets and CA roots // for attestation validation. Called per-request so the config stays fresh diff --git a/core/capabilities/confidentialrelay/handler_test.go b/core/capabilities/confidentialrelay/handler_test.go index 4d9e3fae737..576dd536988 100644 --- a/core/capabilities/confidentialrelay/handler_test.go +++ b/core/capabilities/confidentialrelay/handler_test.go @@ -28,6 +28,7 @@ import ( valuespb "github.com/smartcontractkit/chainlink-protos/cre/go/values/pb" vaulttypes "github.com/smartcontractkit/chainlink/v2/core/capabilities/vault/vaulttypes" + p2ptypes "github.com/smartcontractkit/chainlink/v2/core/services/p2p/types" ) func makeCapabilityPayload(t *testing.T, inputs map[string]any) string { @@ -153,6 +154,11 @@ func withEnclaveConfig(reg *mockCapRegistry) *mockCapRegistry { reg.dons[confidentialWorkflowsCapID] = []capabilities.DONWithNodes{ {DON: capabilities.DON{ID: 1}}, } + // Wire WorkflowDON membership to match testEnclaveConfig so the relay-side + // verifyEnclaveConfigMatchesDON check passes for fixtures that build + // request params with testEnclaveConfig. + reg.localNode.WorkflowDON.Members = testWorkflowDONMembers() + reg.localNode.WorkflowDON.F = uint8(testEnclaveConfig().F) return reg } @@ -168,6 +174,48 @@ func makeRequest(t *testing.T, method string, params any) *jsonrpc.Request[json. } } +// make32Byte builds a 32-byte slice filled with the given byte. Used so +// EnclaveConfig.Signers byte-for-byte equals the PeerIDs in +// WorkflowDON.Members produced by testWorkflowDONMembers. +func make32Byte(b byte) []byte { + s := make([]byte, 32) + for i := range s { + s[i] = b + } + return s +} + +// testEnclaveConfig is the canonical EnclaveConfig that handler tests put on +// outgoing request params. withEnclaveConfig wires the matching WorkflowDON +// membership into the mock CapabilitiesRegistry so +// verifyEnclaveConfigMatchesDON accepts requests built with this config. +func testEnclaveConfig() confidentialrelaytypes.EnclaveConfig { + return confidentialrelaytypes.EnclaveConfig{ + Signers: [][]byte{ + make32Byte(0xa1), + make32Byte(0xb1), + make32Byte(0xc1), + make32Byte(0xd1), + }, + MasterPublicKey: []byte("test-master-public-key"), + T: 3, + F: 1, + } +} + +// testWorkflowDONMembers returns []p2ptypes.PeerID whose [:] slices match +// testEnclaveConfig().Signers byte-for-byte. +func testWorkflowDONMembers() []p2ptypes.PeerID { + cfg := testEnclaveConfig() + members := make([]p2ptypes.PeerID, len(cfg.Signers)) + for i, s := range cfg.Signers { + var pid p2ptypes.PeerID + copy(pid[:], s) + members[i] = pid + } + return members +} + // secretsGetTestRegistry builds a mock registry with a vault executable that // returns a valid GetSecretsResponse for the "API_KEY" secret. func secretsGetTestRegistry(t *testing.T) *mockCapRegistry { @@ -238,6 +286,7 @@ func secretsGetTestParams() confidentialrelaytypes.SecretsRequestParams { ExecutionID: "0000000000000000000000000000000000000000000000000000000000000001", OrgID: "org-123", EnclavePublicKey: "aabbcc", + EnclaveConfig: testEnclaveConfig(), Secrets: []confidentialrelaytypes.SecretIdentifier{ {Key: "API_KEY", Namespace: "main"}, }, @@ -275,6 +324,7 @@ func TestHandler_HandleGatewayMessage(t *testing.T) { ReferenceID: "17", CapabilityID: "my-cap@1.0.0", Payload: makeCapabilityPayload(t, map[string]any{"key": "val"}), + EnclaveConfig: testEnclaveConfig(), Attestation: testAttestationB64, }) }, @@ -287,6 +337,7 @@ func TestHandler_HandleGatewayMessage(t *testing.T) { ReferenceID: "17", CapabilityID: "my-cap@1.0.0", Payload: makeCapabilityPayload(t, map[string]any{"key": "val"}), + EnclaveConfig: testEnclaveConfig(), } var result confidentialrelaytypes.SignedCapabilityResponseResult require.NoError(t, json.Unmarshal(*resp.Result, &result)) @@ -329,6 +380,7 @@ func TestHandler_HandleGatewayMessage(t *testing.T) { ReferenceID: "17", CapabilityID: "my-cap@1.0.0", Payload: makeCapabilityPayload(t, map[string]any{"echo": "hello"}), + EnclaveConfig: testEnclaveConfig(), Attestation: testAttestationB64, }) }, @@ -376,6 +428,7 @@ func TestHandler_HandleGatewayMessage(t *testing.T) { WorkflowID: "wf-1", CapabilityID: "missing-cap@1.0.0", Payload: base64.StdEncoding.EncodeToString([]byte("payload")), + EnclaveConfig: testEnclaveConfig(), Attestation: testAttestationB64, }) }, @@ -405,6 +458,7 @@ func TestHandler_HandleGatewayMessage(t *testing.T) { ReferenceID: "17", CapabilityID: "fail-cap@1.0.0", Payload: base64.StdEncoding.EncodeToString(b), + EnclaveConfig: testEnclaveConfig(), Attestation: testAttestationB64, }) }, @@ -417,6 +471,7 @@ func TestHandler_HandleGatewayMessage(t *testing.T) { ReferenceID: "17", CapabilityID: "fail-cap@1.0.0", Payload: base64.StdEncoding.EncodeToString(mustMarshalProto(t, &sdkpb.CapabilityRequest{Id: "fail-cap@1.0.0", Method: "Execute"})), + EnclaveConfig: testEnclaveConfig(), } var result confidentialrelaytypes.SignedCapabilityResponseResult require.NoError(t, json.Unmarshal(*resp.Result, &result)) @@ -594,3 +649,163 @@ func TestHandler_Lifecycle(t *testing.T) { assert.Equal(t, HandlerName, id) }) } + +// TestHandler_VerifyEnclaveConfig covers the PRIV-458 / CL112-01 relay-side +// hardening: after the Nitro attestation cryptographically verifies the +// request hash, the handler must also compare the attested EnclaveConfig +// value against the local node's WorkflowDON state. Without this check, a +// malicious host can produce a genuinely-attested request over a forged +// EnclaveConfig and have it accepted. +func TestHandler_VerifyEnclaveConfig(t *testing.T) { + t.Run("matching config accepted on capability execute", func(t *testing.T) { + reg := withEnclaveConfig(&mockCapRegistry{ + executables: map[string]*mockExecutable{ + "my-cap@1.0.0": {execResult: capabilities.CapabilityResponse{Payload: &anypb.Any{}}}, + }, + }) + gwConn := &mockGatewayConnector{} + h := newTestHandler(t, reg, gwConn) + req := makeRequest(t, confidentialrelaytypes.MethodCapabilityExec, confidentialrelaytypes.CapabilityRequestParams{ + WorkflowID: "wf-1", + Owner: testOwner, + ExecutionID: "32c631d295ef5e32deb99a10ee6804bc4af13855687559d7ff6552ac6dbb2ce1", + ReferenceID: "1", + CapabilityID: "my-cap@1.0.0", + Payload: makeCapabilityPayload(t, map[string]any{"key": "val"}), + EnclaveConfig: testEnclaveConfig(), + Attestation: testAttestationB64, + }) + err := h.HandleGatewayMessage(context.Background(), "gw-1", req) + require.NoError(t, err) + resp := gwConn.lastResp + require.Nil(t, resp.Error) + }) + + t.Run("F mismatch rejected on capability execute", func(t *testing.T) { + reg := withEnclaveConfig(&mockCapRegistry{ + executables: map[string]*mockExecutable{ + "my-cap@1.0.0": {execResult: capabilities.CapabilityResponse{Payload: &anypb.Any{}}}, + }, + }) + gwConn := &mockGatewayConnector{} + h := newTestHandler(t, reg, gwConn) + badCfg := testEnclaveConfig() + badCfg.F = badCfg.F + 5 // any non-matching value + req := makeRequest(t, confidentialrelaytypes.MethodCapabilityExec, confidentialrelaytypes.CapabilityRequestParams{ + WorkflowID: "wf-1", + Owner: testOwner, + ExecutionID: "32c631d295ef5e32deb99a10ee6804bc4af13855687559d7ff6552ac6dbb2ce1", + ReferenceID: "1", + CapabilityID: "my-cap@1.0.0", + Payload: makeCapabilityPayload(t, map[string]any{"key": "val"}), + EnclaveConfig: badCfg, + Attestation: testAttestationB64, + }) + err := h.HandleGatewayMessage(context.Background(), "gw-1", req) + require.NoError(t, err) + resp := gwConn.lastResp + require.NotNil(t, resp.Error) + }) + + t.Run("signers count mismatch rejected on capability execute", func(t *testing.T) { + reg := withEnclaveConfig(&mockCapRegistry{ + executables: map[string]*mockExecutable{ + "my-cap@1.0.0": {execResult: capabilities.CapabilityResponse{Payload: &anypb.Any{}}}, + }, + }) + gwConn := &mockGatewayConnector{} + h := newTestHandler(t, reg, gwConn) + badCfg := testEnclaveConfig() + badCfg.Signers = badCfg.Signers[:2] + req := makeRequest(t, confidentialrelaytypes.MethodCapabilityExec, confidentialrelaytypes.CapabilityRequestParams{ + WorkflowID: "wf-1", + Owner: testOwner, + ExecutionID: "32c631d295ef5e32deb99a10ee6804bc4af13855687559d7ff6552ac6dbb2ce1", + ReferenceID: "1", + CapabilityID: "my-cap@1.0.0", + Payload: makeCapabilityPayload(t, map[string]any{"key": "val"}), + EnclaveConfig: badCfg, + Attestation: testAttestationB64, + }) + err := h.HandleGatewayMessage(context.Background(), "gw-1", req) + require.NoError(t, err) + resp := gwConn.lastResp + require.NotNil(t, resp.Error) + }) + + t.Run("signer value mismatch rejected on capability execute", func(t *testing.T) { + reg := withEnclaveConfig(&mockCapRegistry{ + executables: map[string]*mockExecutable{ + "my-cap@1.0.0": {execResult: capabilities.CapabilityResponse{Payload: &anypb.Any{}}}, + }, + }) + gwConn := &mockGatewayConnector{} + h := newTestHandler(t, reg, gwConn) + badCfg := testEnclaveConfig() + badCfg.Signers = [][]byte{ + make32Byte(0xa1), + make32Byte(0xb1), + make32Byte(0xc1), + make32Byte(0xff), // last signer differs + } + req := makeRequest(t, confidentialrelaytypes.MethodCapabilityExec, confidentialrelaytypes.CapabilityRequestParams{ + WorkflowID: "wf-1", + Owner: testOwner, + ExecutionID: "32c631d295ef5e32deb99a10ee6804bc4af13855687559d7ff6552ac6dbb2ce1", + ReferenceID: "1", + CapabilityID: "my-cap@1.0.0", + Payload: makeCapabilityPayload(t, map[string]any{"key": "val"}), + EnclaveConfig: badCfg, + Attestation: testAttestationB64, + }) + err := h.HandleGatewayMessage(context.Background(), "gw-1", req) + require.NoError(t, err) + resp := gwConn.lastResp + require.NotNil(t, resp.Error) + }) + + t.Run("matching is order-independent on capability execute", func(t *testing.T) { + reg := withEnclaveConfig(&mockCapRegistry{ + executables: map[string]*mockExecutable{ + "my-cap@1.0.0": {execResult: capabilities.CapabilityResponse{Payload: &anypb.Any{}}}, + }, + }) + gwConn := &mockGatewayConnector{} + h := newTestHandler(t, reg, gwConn) + shuffled := testEnclaveConfig() + // Reverse Signers; the comparison must still pass. + n := len(shuffled.Signers) + rev := make([][]byte, n) + for i, s := range shuffled.Signers { + rev[n-1-i] = s + } + shuffled.Signers = rev + req := makeRequest(t, confidentialrelaytypes.MethodCapabilityExec, confidentialrelaytypes.CapabilityRequestParams{ + WorkflowID: "wf-1", + Owner: testOwner, + ExecutionID: "32c631d295ef5e32deb99a10ee6804bc4af13855687559d7ff6552ac6dbb2ce1", + ReferenceID: "1", + CapabilityID: "my-cap@1.0.0", + Payload: makeCapabilityPayload(t, map[string]any{"key": "val"}), + EnclaveConfig: shuffled, + Attestation: testAttestationB64, + }) + err := h.HandleGatewayMessage(context.Background(), "gw-1", req) + require.NoError(t, err) + resp := gwConn.lastResp + require.Nil(t, resp.Error) + }) + + t.Run("F mismatch rejected on secrets get", func(t *testing.T) { + reg := secretsGetTestRegistry(t) + gwConn := &mockGatewayConnector{} + h := newTestHandler(t, reg, gwConn) + params := secretsGetTestParams() + params.EnclaveConfig.F = params.EnclaveConfig.F + 5 + req := makeRequest(t, confidentialrelaytypes.MethodSecretsGet, params) + err := h.HandleGatewayMessage(context.Background(), "gw-1", req) + require.NoError(t, err) + resp := gwConn.lastResp + require.NotNil(t, resp.Error) + }) +} diff --git a/go.mod b/go.mod index 936cc496f96..a8074e25299 100644 --- a/go.mod +++ b/go.mod @@ -85,7 +85,7 @@ require ( github.com/smartcontractkit/chainlink-ccip/chains/solana v0.0.0-20260415165642-49f23e4d76cc github.com/smartcontractkit/chainlink-ccip/chains/solana/gobindings v0.0.0-20260415165642-49f23e4d76cc github.com/smartcontractkit/chainlink-ccv v0.0.2-0.20260428133800-3b1484e8b1fd - github.com/smartcontractkit/chainlink-common v0.11.2-0.20260518100439-9564f35fd264 + github.com/smartcontractkit/chainlink-common v0.11.2-0.20260518112011-40a8e4cedaa8 github.com/smartcontractkit/chainlink-common/keystore v1.1.0 github.com/smartcontractkit/chainlink-common/pkg/chipingress v0.0.10 github.com/smartcontractkit/chainlink-data-streams v0.1.14-0.20260512145107-b41c0e2855ec diff --git a/go.sum b/go.sum index 0214e01dd3b..655e053216c 100644 --- a/go.sum +++ b/go.sum @@ -1184,8 +1184,8 @@ github.com/smartcontractkit/chainlink-ccip/chains/solana/gobindings v0.0.0-20260 github.com/smartcontractkit/chainlink-ccip/chains/solana/gobindings v0.0.0-20260415165642-49f23e4d76cc/go.mod h1:67YbnoglYD61Pz/jTVCgav9wFq7S35OU8UyQSvPllRw= github.com/smartcontractkit/chainlink-ccv v0.0.2-0.20260428133800-3b1484e8b1fd h1:IMopuENFVS63AerRELdfWo6o60UNUidcldJOxJLmk24= github.com/smartcontractkit/chainlink-ccv v0.0.2-0.20260428133800-3b1484e8b1fd/go.mod h1:SBN8Urnh5sQvrQRbSo1Nr8coWatHg8LZoPw3R/42sho= -github.com/smartcontractkit/chainlink-common v0.11.2-0.20260518100439-9564f35fd264 h1:r4sH0uvOoSXegOQPVaMEsu27q1dfWplIwO4WvdcEtKM= -github.com/smartcontractkit/chainlink-common v0.11.2-0.20260518100439-9564f35fd264/go.mod h1:B+eYJSQmOc28kzs7OwJjwo0DEV2f01HnUk89r9R1d/Y= +github.com/smartcontractkit/chainlink-common v0.11.2-0.20260518112011-40a8e4cedaa8 h1:DrriTre0jvJo1QQ4CINxe6Idbp/kzTe1hvT4Id2Ld+o= +github.com/smartcontractkit/chainlink-common v0.11.2-0.20260518112011-40a8e4cedaa8/go.mod h1:B+eYJSQmOc28kzs7OwJjwo0DEV2f01HnUk89r9R1d/Y= github.com/smartcontractkit/chainlink-common/keystore v1.1.0 h1:2wzySccgk2fpWusPKO0bpeAZzfSU9eq6CS5U+JwYaVo= github.com/smartcontractkit/chainlink-common/keystore v1.1.0/go.mod h1:6JexOOhPhknQ0QMuppFIlOpm6wCp54yZMxai+tWugwY= github.com/smartcontractkit/chainlink-common/pkg/chipingress v0.0.10 h1:FJAFgXS9oqASnkS03RE1HQwYQQxrO4l46O5JSzxqLgg= From 965dafb0889fb1d246792bc827151e68abea324e Mon Sep 17 00:00:00 2001 From: Tejaswi Nadahalli Date: Fri, 29 May 2026 11:32:41 +0200 Subject: [PATCH 2/7] Fix lint findings in confidentialrelay handler test GolangCI flagged three issues introduced by this PR's test fixtures: - gosec G115: uint32->uint8 narrowing in WorkflowDON.F assignment. Replaced with an untyped testEnclaveF const used by both EnclaveConfig.F (uint32) and WorkflowDON.F (uint8), so no conversion. - gocritic assignOp x2: badCfg.F = badCfg.F + 5 and params.EnclaveConfig.F = ... + 5 rewritten with +=. --- core/capabilities/confidentialrelay/handler_test.go | 13 +++++++++---- 1 file changed, 9 insertions(+), 4 deletions(-) diff --git a/core/capabilities/confidentialrelay/handler_test.go b/core/capabilities/confidentialrelay/handler_test.go index 741318d68bb..e4896705736 100644 --- a/core/capabilities/confidentialrelay/handler_test.go +++ b/core/capabilities/confidentialrelay/handler_test.go @@ -159,7 +159,7 @@ func withEnclaveConfig(reg *mockCapRegistry) *mockCapRegistry { // verifyEnclaveConfigMatchesDON check passes for fixtures that build // request params with testEnclaveConfig. reg.localNode.WorkflowDON.Members = testWorkflowDONMembers() - reg.localNode.WorkflowDON.F = uint8(testEnclaveConfig().F) + reg.localNode.WorkflowDON.F = testEnclaveF return reg } @@ -190,6 +190,11 @@ func make32Byte(b byte) []byte { // outgoing request params. withEnclaveConfig wires the matching WorkflowDON // membership into the mock CapabilitiesRegistry so // verifyEnclaveConfigMatchesDON accepts requests built with this config. +// testEnclaveF is the DON fault tolerance used across these tests. Untyped so +// it assigns cleanly to both EnclaveConfig.F (uint32) and WorkflowDON.F +// (uint8) without a narrowing conversion that would trip gosec G115. +const testEnclaveF = 1 + func testEnclaveConfig() confidentialrelaytypes.EnclaveConfig { return confidentialrelaytypes.EnclaveConfig{ Signers: [][]byte{ @@ -200,7 +205,7 @@ func testEnclaveConfig() confidentialrelaytypes.EnclaveConfig { }, MasterPublicKey: []byte("test-master-public-key"), T: 3, - F: 1, + F: testEnclaveF, } } @@ -738,7 +743,7 @@ func TestHandler_VerifyEnclaveConfig(t *testing.T) { gwConn := &mockGatewayConnector{} h := newTestHandler(t, reg, gwConn) badCfg := testEnclaveConfig() - badCfg.F = badCfg.F + 5 // any non-matching value + badCfg.F += 5 // any non-matching value req := makeRequest(t, confidentialrelaytypes.MethodCapabilityExec, confidentialrelaytypes.CapabilityRequestParams{ WorkflowID: "wf-1", Owner: testOwner, @@ -849,7 +854,7 @@ func TestHandler_VerifyEnclaveConfig(t *testing.T) { gwConn := &mockGatewayConnector{} h := newTestHandler(t, reg, gwConn) params := secretsGetTestParams() - params.EnclaveConfig.F = params.EnclaveConfig.F + 5 + params.EnclaveConfig.F += 5 req := makeRequest(t, confidentialrelaytypes.MethodSecretsGet, params) err := h.HandleGatewayMessage(context.Background(), "gw-1", req) require.NoError(t, err) From 02211fcd4d42ff8fec0bb2e50348ee77a60153e3 Mon Sep 17 00:00:00 2001 From: Tejaswi Nadahalli Date: Mon, 1 Jun 2026 11:59:52 +0200 Subject: [PATCH 3/7] Align chainlink-common pin across dependent submodules Root go.mod was bumped to chainlink-common b1205469 (post-#2063, adds EnclaveConfig). The deployment, integration-tests, integration-tests/load, system-tests/lib, system-tests/tests, and core/scripts modules replace chainlink => ../ and so build against the root's confidentialrelay code, but still pinned the pre-#2063 common (883689d). That skew broke "make generate" (deployment error: exit status 1) because EnclaveConfig was undefined when building root packages from those modules. Bump all six to b1205469 and tidy. --- core/scripts/go.mod | 8 ++++---- core/scripts/go.sum | 16 ++++++++-------- deployment/go.mod | 8 ++++---- deployment/go.sum | 16 ++++++++-------- integration-tests/go.mod | 8 ++++---- integration-tests/go.sum | 16 ++++++++-------- integration-tests/load/go.mod | 8 ++++---- integration-tests/load/go.sum | 16 ++++++++-------- system-tests/lib/go.mod | 8 ++++---- system-tests/lib/go.sum | 16 ++++++++-------- system-tests/tests/go.mod | 8 ++++---- system-tests/tests/go.sum | 16 ++++++++-------- 12 files changed, 72 insertions(+), 72 deletions(-) diff --git a/core/scripts/go.mod b/core/scripts/go.mod index 177eb23fbc5..9ea460f3ece 100644 --- a/core/scripts/go.mod +++ b/core/scripts/go.mod @@ -43,7 +43,7 @@ require ( github.com/smartcontractkit/chain-selectors v1.0.101 github.com/smartcontractkit/chainlink-automation v0.8.1 github.com/smartcontractkit/chainlink-ccip/chains/evm v0.0.0-20260506144252-c100eabfda74 - github.com/smartcontractkit/chainlink-common v0.11.2-0.20260527110243-883689d933be + github.com/smartcontractkit/chainlink-common v0.11.2-0.20260528150532-b12054695b25 github.com/smartcontractkit/chainlink-common/keystore v1.1.0 github.com/smartcontractkit/chainlink-data-streams v0.1.15-0.20260522094612-5f9f748bd87a github.com/smartcontractkit/chainlink-deployments-framework v0.105.0 @@ -598,12 +598,12 @@ require ( go.yaml.in/yaml/v3 v3.0.4 // indirect go.yaml.in/yaml/v4 v4.0.0-rc.4 // indirect golang.org/x/arch v0.11.0 // indirect - golang.org/x/crypto v0.51.0 // indirect + golang.org/x/crypto v0.52.0 // indirect golang.org/x/exp v0.0.0-20260508232706-74f9aab9d74a // indirect golang.org/x/mod v0.36.0 // indirect - golang.org/x/net v0.54.0 // indirect + golang.org/x/net v0.55.0 // indirect golang.org/x/oauth2 v0.36.0 // indirect - golang.org/x/sys v0.44.0 // indirect + golang.org/x/sys v0.45.0 // indirect golang.org/x/term v0.43.0 // indirect golang.org/x/time v0.15.0 // indirect golang.org/x/tools v0.45.0 // indirect diff --git a/core/scripts/go.sum b/core/scripts/go.sum index f09f69db22b..ea60f26c0de 100644 --- a/core/scripts/go.sum +++ b/core/scripts/go.sum @@ -1571,8 +1571,8 @@ github.com/smartcontractkit/chainlink-ccip/chains/solana/gobindings v0.0.0-20260 github.com/smartcontractkit/chainlink-ccip/chains/solana/gobindings v0.0.0-20260511195239-0f6e1b177fc7/go.mod h1:67YbnoglYD61Pz/jTVCgav9wFq7S35OU8UyQSvPllRw= github.com/smartcontractkit/chainlink-ccv v0.0.2-0.20260428133800-3b1484e8b1fd h1:IMopuENFVS63AerRELdfWo6o60UNUidcldJOxJLmk24= github.com/smartcontractkit/chainlink-ccv v0.0.2-0.20260428133800-3b1484e8b1fd/go.mod h1:SBN8Urnh5sQvrQRbSo1Nr8coWatHg8LZoPw3R/42sho= -github.com/smartcontractkit/chainlink-common v0.11.2-0.20260527110243-883689d933be h1:h6NXQz2hZEcdKF/UOXCtQANFGZFDnz6YUIee4OplWLo= -github.com/smartcontractkit/chainlink-common v0.11.2-0.20260527110243-883689d933be/go.mod h1:lFJ2fkxep1wBzl+sIyxJNfwo5tb31mBNrGlHpjVO008= +github.com/smartcontractkit/chainlink-common v0.11.2-0.20260528150532-b12054695b25 h1:hhPlsgzyfvcohAVSqh4vNyr88icCUVvJ/CNSD7gBZIc= +github.com/smartcontractkit/chainlink-common v0.11.2-0.20260528150532-b12054695b25/go.mod h1:jueIfDkkRexwGgLbVB7vGCZlNtd383zuwi4uHHwcbqc= github.com/smartcontractkit/chainlink-common/keystore v1.1.0 h1:2wzySccgk2fpWusPKO0bpeAZzfSU9eq6CS5U+JwYaVo= github.com/smartcontractkit/chainlink-common/keystore v1.1.0/go.mod h1:6JexOOhPhknQ0QMuppFIlOpm6wCp54yZMxai+tWugwY= github.com/smartcontractkit/chainlink-common/pkg/chipingress v0.0.11-0.20260520194751-11a4f360f4e2 h1:22H/CQy2L1unVJ2KEViEqvM8evJLSIqJxEdfDeXB4o8= @@ -2009,8 +2009,8 @@ golang.org/x/crypto v0.13.0/go.mod h1:y6Z2r+Rw4iayiXXAIxJIDAJ1zMW4yaTpebo8fPOliY golang.org/x/crypto v0.18.0/go.mod h1:R0j02AL6hcrfOiy9T4ZYp/rcWeMxM3L6QYxlOuEG1mg= golang.org/x/crypto v0.19.0/go.mod h1:Iy9bg/ha4yyC70EfRS8jz+B6ybOBKMaSxLj6P6oBDfU= golang.org/x/crypto v0.20.0/go.mod h1:Xwo95rrVNIoSMx9wa1JroENMToLWn3RNVrTBpLHgZPQ= -golang.org/x/crypto v0.51.0 h1:IBPXwPfKxY7cWQZ38ZCIRPI50YLeevDLlLnyC5wRGTI= -golang.org/x/crypto v0.51.0/go.mod h1:8AdwkbraGNABw2kOX6YFPs3WM22XqI4EXEd8g+x7Oc8= +golang.org/x/crypto v0.52.0 h1:RMs7fP2rXdep0CftQlK8Uf+kibLm7qkCcradZWYz988= +golang.org/x/crypto v0.52.0/go.mod h1:1QgfPxDqh0T2M/elOJtp9RvuR95kVjir0e6/BvEmGbc= golang.org/x/exp v0.0.0-20180321215751-8460e604b9de/go.mod h1:CJ0aWSM057203Lf6IL+f9T1iT9GByDxfZKAQTCR3kQA= golang.org/x/exp v0.0.0-20190121172915-509febef88a4/go.mod h1:CJ0aWSM057203Lf6IL+f9T1iT9GByDxfZKAQTCR3kQA= golang.org/x/exp v0.0.0-20190306152737-a1d7652674e8/go.mod h1:CJ0aWSM057203Lf6IL+f9T1iT9GByDxfZKAQTCR3kQA= @@ -2111,8 +2111,8 @@ golang.org/x/net v0.10.0/go.mod h1:0qNGK6F8kojg2nk9dLZ2mShWaEBan6FAoqfSigmmuDg= golang.org/x/net v0.14.0/go.mod h1:PpSgVXXLK0OxS0F31C1/tv6XNguvCrnXIDrFMspZIUI= golang.org/x/net v0.20.0/go.mod h1:z8BVo6PvndSri0LbOE3hAn0apkU+1YvI6E70E9jsnvY= golang.org/x/net v0.21.0/go.mod h1:bIjVDfnllIU7BJ2DNgfnXvpSvtn8VRwhlsaeUTyUS44= -golang.org/x/net v0.54.0 h1:2zJIZAxAHV/OHCDTCOHAYehQzLfSXuf/5SoL/Dv6w/w= -golang.org/x/net v0.54.0/go.mod h1:Sj4oj8jK6XmHpBZU/zWHw3BV3abl4Kvi+Ut7cQcY+cQ= +golang.org/x/net v0.55.0 h1:bcvxaJn3e1U6InsFWt1JUq1aSjnRxLzT2rtD2KfkDF8= +golang.org/x/net v0.55.0/go.mod h1:L5U2KuzuOe1lY7Z+aWVIKK6qEeJXnXV9yzGA+WCHJww= golang.org/x/oauth2 v0.0.0-20180821212333-d2e6202438be/go.mod h1:N/0e6XlmueqKjAGxoOufVs8QHGRruUQn6yWY3a++T0U= golang.org/x/oauth2 v0.0.0-20190226205417-e64efc72b421/go.mod h1:gOpvHmFTYa4IltrdGE7lF6nIHvwfUNPOp7c8zoXwtLw= golang.org/x/oauth2 v0.0.0-20190604053449-0f29369cfe45/go.mod h1:gOpvHmFTYa4IltrdGE7lF6nIHvwfUNPOp7c8zoXwtLw= @@ -2234,8 +2234,8 @@ golang.org/x/sys v0.14.0/go.mod h1:/VUhepiaJMQUp4+oa/7Zr1D23ma6VTLIYjOOTFZPUcA= golang.org/x/sys v0.16.0/go.mod h1:/VUhepiaJMQUp4+oa/7Zr1D23ma6VTLIYjOOTFZPUcA= golang.org/x/sys v0.17.0/go.mod h1:/VUhepiaJMQUp4+oa/7Zr1D23ma6VTLIYjOOTFZPUcA= golang.org/x/sys v0.18.0/go.mod h1:/VUhepiaJMQUp4+oa/7Zr1D23ma6VTLIYjOOTFZPUcA= -golang.org/x/sys v0.44.0 h1:ildZl3J4uzeKP07r2F++Op7E9B29JRUy+a27EibtBTQ= -golang.org/x/sys v0.44.0/go.mod h1:4GL1E5IUh+htKOUEOaiffhrAeqysfVGipDYzABqnCmw= +golang.org/x/sys v0.45.0 h1:dO4czNzziLiiXplLQgBCEpCvXQ3dnkn0SdaZSYdQ+FY= +golang.org/x/sys v0.45.0/go.mod h1:4GL1E5IUh+htKOUEOaiffhrAeqysfVGipDYzABqnCmw= golang.org/x/term v0.0.0-20201117132131-f5c789dd3221/go.mod h1:Nr5EML6q2oocZ2LXRh80K7BxOlk5/8JxuGnuhpl+muw= golang.org/x/term v0.0.0-20201126162022-7de9c90e9dd1/go.mod h1:bj7SfCRtBDWHUb9snDiAeCFNEtKQo2Wmx5Cou7ajbmo= golang.org/x/term v0.0.0-20210927222741-03fcf44c2211/go.mod h1:jbD1KX2456YbFQfuXm/mYQcufACuNUgVhRMnK/tPxf8= diff --git a/deployment/go.mod b/deployment/go.mod index 14631daf6d7..2658497f829 100644 --- a/deployment/go.mod +++ b/deployment/go.mod @@ -42,7 +42,7 @@ require ( github.com/smartcontractkit/chainlink-ccip/chains/solana v0.0.0-20260415165642-49f23e4d76cc github.com/smartcontractkit/chainlink-ccip/chains/solana/gobindings v0.0.0-20260511195239-0f6e1b177fc7 github.com/smartcontractkit/chainlink-ccip/deployment v0.0.0-20260504204047-af9826978b72 - github.com/smartcontractkit/chainlink-common v0.11.2-0.20260527110243-883689d933be + github.com/smartcontractkit/chainlink-common v0.11.2-0.20260528150532-b12054695b25 github.com/smartcontractkit/chainlink-common/keystore v1.1.0 github.com/smartcontractkit/chainlink-data-streams v0.1.15-0.20260522094612-5f9f748bd87a github.com/smartcontractkit/chainlink-deployments-framework v0.105.0 @@ -75,7 +75,7 @@ require ( github.com/xssnick/tonutils-go v1.14.1 github.com/zksync-sdk/zksync2-go v1.1.1-0.20250620124214-2c742ee399c6 go.uber.org/zap v1.28.0 - golang.org/x/crypto v0.51.0 + golang.org/x/crypto v0.52.0 golang.org/x/exp v0.0.0-20260508232706-74f9aab9d74a golang.org/x/mod v0.36.0 golang.org/x/oauth2 v0.36.0 @@ -515,8 +515,8 @@ require ( go.yaml.in/yaml/v3 v3.0.4 // indirect go.yaml.in/yaml/v4 v4.0.0-rc.4 // indirect golang.org/x/arch v0.11.0 // indirect - golang.org/x/net v0.54.0 // indirect - golang.org/x/sys v0.44.0 // indirect + golang.org/x/net v0.55.0 // indirect + golang.org/x/sys v0.45.0 // indirect golang.org/x/term v0.43.0 // indirect golang.org/x/text v0.37.0 // indirect golang.org/x/time v0.15.0 // indirect diff --git a/deployment/go.sum b/deployment/go.sum index 86a7fb779ff..78275c59c54 100644 --- a/deployment/go.sum +++ b/deployment/go.sum @@ -1378,8 +1378,8 @@ github.com/smartcontractkit/chainlink-ccv v0.0.2-0.20260428133800-3b1484e8b1fd h github.com/smartcontractkit/chainlink-ccv v0.0.2-0.20260428133800-3b1484e8b1fd/go.mod h1:SBN8Urnh5sQvrQRbSo1Nr8coWatHg8LZoPw3R/42sho= github.com/smartcontractkit/chainlink-ccv/deployment v0.0.2-0.20260428205321-9ce8f4c44d23 h1:1Rt4HLpwbRN1YtBFcbsxSJYIiUP2wJ11qizevOEeCrs= github.com/smartcontractkit/chainlink-ccv/deployment v0.0.2-0.20260428205321-9ce8f4c44d23/go.mod h1:V+wrhuNve+JiFwoBr25d6y0lL1rYSCSJhTFyloL3ueo= -github.com/smartcontractkit/chainlink-common v0.11.2-0.20260527110243-883689d933be h1:h6NXQz2hZEcdKF/UOXCtQANFGZFDnz6YUIee4OplWLo= -github.com/smartcontractkit/chainlink-common v0.11.2-0.20260527110243-883689d933be/go.mod h1:lFJ2fkxep1wBzl+sIyxJNfwo5tb31mBNrGlHpjVO008= +github.com/smartcontractkit/chainlink-common v0.11.2-0.20260528150532-b12054695b25 h1:hhPlsgzyfvcohAVSqh4vNyr88icCUVvJ/CNSD7gBZIc= +github.com/smartcontractkit/chainlink-common v0.11.2-0.20260528150532-b12054695b25/go.mod h1:jueIfDkkRexwGgLbVB7vGCZlNtd383zuwi4uHHwcbqc= github.com/smartcontractkit/chainlink-common/keystore v1.1.0 h1:2wzySccgk2fpWusPKO0bpeAZzfSU9eq6CS5U+JwYaVo= github.com/smartcontractkit/chainlink-common/keystore v1.1.0/go.mod h1:6JexOOhPhknQ0QMuppFIlOpm6wCp54yZMxai+tWugwY= github.com/smartcontractkit/chainlink-common/pkg/chipingress v0.0.11-0.20260520194751-11a4f360f4e2 h1:22H/CQy2L1unVJ2KEViEqvM8evJLSIqJxEdfDeXB4o8= @@ -1797,8 +1797,8 @@ golang.org/x/crypto v0.13.0/go.mod h1:y6Z2r+Rw4iayiXXAIxJIDAJ1zMW4yaTpebo8fPOliY golang.org/x/crypto v0.18.0/go.mod h1:R0j02AL6hcrfOiy9T4ZYp/rcWeMxM3L6QYxlOuEG1mg= golang.org/x/crypto v0.19.0/go.mod h1:Iy9bg/ha4yyC70EfRS8jz+B6ybOBKMaSxLj6P6oBDfU= golang.org/x/crypto v0.20.0/go.mod h1:Xwo95rrVNIoSMx9wa1JroENMToLWn3RNVrTBpLHgZPQ= -golang.org/x/crypto v0.51.0 h1:IBPXwPfKxY7cWQZ38ZCIRPI50YLeevDLlLnyC5wRGTI= -golang.org/x/crypto v0.51.0/go.mod h1:8AdwkbraGNABw2kOX6YFPs3WM22XqI4EXEd8g+x7Oc8= +golang.org/x/crypto v0.52.0 h1:RMs7fP2rXdep0CftQlK8Uf+kibLm7qkCcradZWYz988= +golang.org/x/crypto v0.52.0/go.mod h1:1QgfPxDqh0T2M/elOJtp9RvuR95kVjir0e6/BvEmGbc= golang.org/x/exp v0.0.0-20180321215751-8460e604b9de/go.mod h1:CJ0aWSM057203Lf6IL+f9T1iT9GByDxfZKAQTCR3kQA= golang.org/x/exp v0.0.0-20190121172915-509febef88a4/go.mod h1:CJ0aWSM057203Lf6IL+f9T1iT9GByDxfZKAQTCR3kQA= golang.org/x/exp v0.0.0-20190306152737-a1d7652674e8/go.mod h1:CJ0aWSM057203Lf6IL+f9T1iT9GByDxfZKAQTCR3kQA= @@ -1901,8 +1901,8 @@ golang.org/x/net v0.10.0/go.mod h1:0qNGK6F8kojg2nk9dLZ2mShWaEBan6FAoqfSigmmuDg= golang.org/x/net v0.14.0/go.mod h1:PpSgVXXLK0OxS0F31C1/tv6XNguvCrnXIDrFMspZIUI= golang.org/x/net v0.20.0/go.mod h1:z8BVo6PvndSri0LbOE3hAn0apkU+1YvI6E70E9jsnvY= golang.org/x/net v0.21.0/go.mod h1:bIjVDfnllIU7BJ2DNgfnXvpSvtn8VRwhlsaeUTyUS44= -golang.org/x/net v0.54.0 h1:2zJIZAxAHV/OHCDTCOHAYehQzLfSXuf/5SoL/Dv6w/w= -golang.org/x/net v0.54.0/go.mod h1:Sj4oj8jK6XmHpBZU/zWHw3BV3abl4Kvi+Ut7cQcY+cQ= +golang.org/x/net v0.55.0 h1:bcvxaJn3e1U6InsFWt1JUq1aSjnRxLzT2rtD2KfkDF8= +golang.org/x/net v0.55.0/go.mod h1:L5U2KuzuOe1lY7Z+aWVIKK6qEeJXnXV9yzGA+WCHJww= golang.org/x/oauth2 v0.0.0-20180821212333-d2e6202438be/go.mod h1:N/0e6XlmueqKjAGxoOufVs8QHGRruUQn6yWY3a++T0U= golang.org/x/oauth2 v0.0.0-20190226205417-e64efc72b421/go.mod h1:gOpvHmFTYa4IltrdGE7lF6nIHvwfUNPOp7c8zoXwtLw= golang.org/x/oauth2 v0.0.0-20190604053449-0f29369cfe45/go.mod h1:gOpvHmFTYa4IltrdGE7lF6nIHvwfUNPOp7c8zoXwtLw= @@ -2023,8 +2023,8 @@ golang.org/x/sys v0.14.0/go.mod h1:/VUhepiaJMQUp4+oa/7Zr1D23ma6VTLIYjOOTFZPUcA= golang.org/x/sys v0.16.0/go.mod h1:/VUhepiaJMQUp4+oa/7Zr1D23ma6VTLIYjOOTFZPUcA= golang.org/x/sys v0.17.0/go.mod h1:/VUhepiaJMQUp4+oa/7Zr1D23ma6VTLIYjOOTFZPUcA= golang.org/x/sys v0.18.0/go.mod h1:/VUhepiaJMQUp4+oa/7Zr1D23ma6VTLIYjOOTFZPUcA= -golang.org/x/sys v0.44.0 h1:ildZl3J4uzeKP07r2F++Op7E9B29JRUy+a27EibtBTQ= -golang.org/x/sys v0.44.0/go.mod h1:4GL1E5IUh+htKOUEOaiffhrAeqysfVGipDYzABqnCmw= +golang.org/x/sys v0.45.0 h1:dO4czNzziLiiXplLQgBCEpCvXQ3dnkn0SdaZSYdQ+FY= +golang.org/x/sys v0.45.0/go.mod h1:4GL1E5IUh+htKOUEOaiffhrAeqysfVGipDYzABqnCmw= golang.org/x/term v0.0.0-20201117132131-f5c789dd3221/go.mod h1:Nr5EML6q2oocZ2LXRh80K7BxOlk5/8JxuGnuhpl+muw= golang.org/x/term v0.0.0-20201126162022-7de9c90e9dd1/go.mod h1:bj7SfCRtBDWHUb9snDiAeCFNEtKQo2Wmx5Cou7ajbmo= golang.org/x/term v0.0.0-20201210144234-2321bbc49cbf/go.mod h1:bj7SfCRtBDWHUb9snDiAeCFNEtKQo2Wmx5Cou7ajbmo= diff --git a/integration-tests/go.mod b/integration-tests/go.mod index ce781f62c15..5648c07f6e9 100644 --- a/integration-tests/go.mod +++ b/integration-tests/go.mod @@ -29,7 +29,7 @@ require ( github.com/smartcontractkit/chainlink-ccip/chains/evm v0.0.0-20260506144252-c100eabfda74 github.com/smartcontractkit/chainlink-ccip/chains/solana v0.0.0-20260506144252-c100eabfda74 github.com/smartcontractkit/chainlink-ccip/chains/solana/gobindings v0.0.0-20260511195239-0f6e1b177fc7 - github.com/smartcontractkit/chainlink-common v0.11.2-0.20260527110243-883689d933be + github.com/smartcontractkit/chainlink-common v0.11.2-0.20260528150532-b12054695b25 github.com/smartcontractkit/chainlink-common/keystore v1.1.0 github.com/smartcontractkit/chainlink-deployments-framework v0.105.0 github.com/smartcontractkit/chainlink-evm v0.3.4-0.20260527175653-b78bae59d823 @@ -501,11 +501,11 @@ require ( go.yaml.in/yaml/v3 v3.0.4 // indirect go.yaml.in/yaml/v4 v4.0.0-rc.4 // indirect golang.org/x/arch v0.11.0 // indirect - golang.org/x/crypto v0.51.0 // indirect + golang.org/x/crypto v0.52.0 // indirect golang.org/x/mod v0.36.0 // indirect - golang.org/x/net v0.54.0 // indirect + golang.org/x/net v0.55.0 // indirect golang.org/x/oauth2 v0.36.0 // indirect - golang.org/x/sys v0.44.0 // indirect + golang.org/x/sys v0.45.0 // indirect golang.org/x/term v0.43.0 // indirect golang.org/x/time v0.15.0 // indirect golang.org/x/tools v0.45.0 // indirect diff --git a/integration-tests/go.sum b/integration-tests/go.sum index b479cfb45f5..c01033ab349 100644 --- a/integration-tests/go.sum +++ b/integration-tests/go.sum @@ -1363,8 +1363,8 @@ github.com/smartcontractkit/chainlink-ccv v0.0.2-0.20260428133800-3b1484e8b1fd h github.com/smartcontractkit/chainlink-ccv v0.0.2-0.20260428133800-3b1484e8b1fd/go.mod h1:SBN8Urnh5sQvrQRbSo1Nr8coWatHg8LZoPw3R/42sho= github.com/smartcontractkit/chainlink-ccv/deployment v0.0.2-0.20260428205321-9ce8f4c44d23 h1:1Rt4HLpwbRN1YtBFcbsxSJYIiUP2wJ11qizevOEeCrs= github.com/smartcontractkit/chainlink-ccv/deployment v0.0.2-0.20260428205321-9ce8f4c44d23/go.mod h1:V+wrhuNve+JiFwoBr25d6y0lL1rYSCSJhTFyloL3ueo= -github.com/smartcontractkit/chainlink-common v0.11.2-0.20260527110243-883689d933be h1:h6NXQz2hZEcdKF/UOXCtQANFGZFDnz6YUIee4OplWLo= -github.com/smartcontractkit/chainlink-common v0.11.2-0.20260527110243-883689d933be/go.mod h1:lFJ2fkxep1wBzl+sIyxJNfwo5tb31mBNrGlHpjVO008= +github.com/smartcontractkit/chainlink-common v0.11.2-0.20260528150532-b12054695b25 h1:hhPlsgzyfvcohAVSqh4vNyr88icCUVvJ/CNSD7gBZIc= +github.com/smartcontractkit/chainlink-common v0.11.2-0.20260528150532-b12054695b25/go.mod h1:jueIfDkkRexwGgLbVB7vGCZlNtd383zuwi4uHHwcbqc= github.com/smartcontractkit/chainlink-common/keystore v1.1.0 h1:2wzySccgk2fpWusPKO0bpeAZzfSU9eq6CS5U+JwYaVo= github.com/smartcontractkit/chainlink-common/keystore v1.1.0/go.mod h1:6JexOOhPhknQ0QMuppFIlOpm6wCp54yZMxai+tWugwY= github.com/smartcontractkit/chainlink-common/pkg/chipingress v0.0.11-0.20260520194751-11a4f360f4e2 h1:22H/CQy2L1unVJ2KEViEqvM8evJLSIqJxEdfDeXB4o8= @@ -1775,8 +1775,8 @@ golang.org/x/crypto v0.13.0/go.mod h1:y6Z2r+Rw4iayiXXAIxJIDAJ1zMW4yaTpebo8fPOliY golang.org/x/crypto v0.18.0/go.mod h1:R0j02AL6hcrfOiy9T4ZYp/rcWeMxM3L6QYxlOuEG1mg= golang.org/x/crypto v0.19.0/go.mod h1:Iy9bg/ha4yyC70EfRS8jz+B6ybOBKMaSxLj6P6oBDfU= golang.org/x/crypto v0.20.0/go.mod h1:Xwo95rrVNIoSMx9wa1JroENMToLWn3RNVrTBpLHgZPQ= -golang.org/x/crypto v0.51.0 h1:IBPXwPfKxY7cWQZ38ZCIRPI50YLeevDLlLnyC5wRGTI= -golang.org/x/crypto v0.51.0/go.mod h1:8AdwkbraGNABw2kOX6YFPs3WM22XqI4EXEd8g+x7Oc8= +golang.org/x/crypto v0.52.0 h1:RMs7fP2rXdep0CftQlK8Uf+kibLm7qkCcradZWYz988= +golang.org/x/crypto v0.52.0/go.mod h1:1QgfPxDqh0T2M/elOJtp9RvuR95kVjir0e6/BvEmGbc= golang.org/x/exp v0.0.0-20180321215751-8460e604b9de/go.mod h1:CJ0aWSM057203Lf6IL+f9T1iT9GByDxfZKAQTCR3kQA= golang.org/x/exp v0.0.0-20190121172915-509febef88a4/go.mod h1:CJ0aWSM057203Lf6IL+f9T1iT9GByDxfZKAQTCR3kQA= golang.org/x/exp v0.0.0-20190306152737-a1d7652674e8/go.mod h1:CJ0aWSM057203Lf6IL+f9T1iT9GByDxfZKAQTCR3kQA= @@ -1879,8 +1879,8 @@ golang.org/x/net v0.10.0/go.mod h1:0qNGK6F8kojg2nk9dLZ2mShWaEBan6FAoqfSigmmuDg= golang.org/x/net v0.14.0/go.mod h1:PpSgVXXLK0OxS0F31C1/tv6XNguvCrnXIDrFMspZIUI= golang.org/x/net v0.20.0/go.mod h1:z8BVo6PvndSri0LbOE3hAn0apkU+1YvI6E70E9jsnvY= golang.org/x/net v0.21.0/go.mod h1:bIjVDfnllIU7BJ2DNgfnXvpSvtn8VRwhlsaeUTyUS44= -golang.org/x/net v0.54.0 h1:2zJIZAxAHV/OHCDTCOHAYehQzLfSXuf/5SoL/Dv6w/w= -golang.org/x/net v0.54.0/go.mod h1:Sj4oj8jK6XmHpBZU/zWHw3BV3abl4Kvi+Ut7cQcY+cQ= +golang.org/x/net v0.55.0 h1:bcvxaJn3e1U6InsFWt1JUq1aSjnRxLzT2rtD2KfkDF8= +golang.org/x/net v0.55.0/go.mod h1:L5U2KuzuOe1lY7Z+aWVIKK6qEeJXnXV9yzGA+WCHJww= golang.org/x/oauth2 v0.0.0-20180821212333-d2e6202438be/go.mod h1:N/0e6XlmueqKjAGxoOufVs8QHGRruUQn6yWY3a++T0U= golang.org/x/oauth2 v0.0.0-20190226205417-e64efc72b421/go.mod h1:gOpvHmFTYa4IltrdGE7lF6nIHvwfUNPOp7c8zoXwtLw= golang.org/x/oauth2 v0.0.0-20190604053449-0f29369cfe45/go.mod h1:gOpvHmFTYa4IltrdGE7lF6nIHvwfUNPOp7c8zoXwtLw= @@ -2001,8 +2001,8 @@ golang.org/x/sys v0.14.0/go.mod h1:/VUhepiaJMQUp4+oa/7Zr1D23ma6VTLIYjOOTFZPUcA= golang.org/x/sys v0.16.0/go.mod h1:/VUhepiaJMQUp4+oa/7Zr1D23ma6VTLIYjOOTFZPUcA= golang.org/x/sys v0.17.0/go.mod h1:/VUhepiaJMQUp4+oa/7Zr1D23ma6VTLIYjOOTFZPUcA= golang.org/x/sys v0.18.0/go.mod h1:/VUhepiaJMQUp4+oa/7Zr1D23ma6VTLIYjOOTFZPUcA= -golang.org/x/sys v0.44.0 h1:ildZl3J4uzeKP07r2F++Op7E9B29JRUy+a27EibtBTQ= -golang.org/x/sys v0.44.0/go.mod h1:4GL1E5IUh+htKOUEOaiffhrAeqysfVGipDYzABqnCmw= +golang.org/x/sys v0.45.0 h1:dO4czNzziLiiXplLQgBCEpCvXQ3dnkn0SdaZSYdQ+FY= +golang.org/x/sys v0.45.0/go.mod h1:4GL1E5IUh+htKOUEOaiffhrAeqysfVGipDYzABqnCmw= golang.org/x/term v0.0.0-20201117132131-f5c789dd3221/go.mod h1:Nr5EML6q2oocZ2LXRh80K7BxOlk5/8JxuGnuhpl+muw= golang.org/x/term v0.0.0-20201126162022-7de9c90e9dd1/go.mod h1:bj7SfCRtBDWHUb9snDiAeCFNEtKQo2Wmx5Cou7ajbmo= golang.org/x/term v0.0.0-20201210144234-2321bbc49cbf/go.mod h1:bj7SfCRtBDWHUb9snDiAeCFNEtKQo2Wmx5Cou7ajbmo= diff --git a/integration-tests/load/go.mod b/integration-tests/load/go.mod index 6d9b6427c8d..33e3baf94e4 100644 --- a/integration-tests/load/go.mod +++ b/integration-tests/load/go.mod @@ -20,7 +20,7 @@ require ( github.com/smartcontractkit/chainlink-ccip/chains/evm v0.0.0-20260506144252-c100eabfda74 github.com/smartcontractkit/chainlink-ccip/chains/solana v0.0.0-20260506144252-c100eabfda74 github.com/smartcontractkit/chainlink-ccip/chains/solana/gobindings v0.0.0-20260511195239-0f6e1b177fc7 - github.com/smartcontractkit/chainlink-common v0.11.2-0.20260527110243-883689d933be + github.com/smartcontractkit/chainlink-common v0.11.2-0.20260528150532-b12054695b25 github.com/smartcontractkit/chainlink-deployments-framework v0.105.0 github.com/smartcontractkit/chainlink-evm v0.3.4-0.20260527175653-b78bae59d823 github.com/smartcontractkit/chainlink-testing-framework/framework v0.16.1 @@ -617,12 +617,12 @@ require ( go.yaml.in/yaml/v4 v4.0.0-rc.4 // indirect go4.org/netipx v0.0.0-20230125063823-8449b0a6169f // indirect golang.org/x/arch v0.11.0 // indirect - golang.org/x/crypto v0.51.0 // indirect + golang.org/x/crypto v0.52.0 // indirect golang.org/x/exp v0.0.0-20260508232706-74f9aab9d74a // indirect golang.org/x/mod v0.36.0 // indirect - golang.org/x/net v0.54.0 // indirect + golang.org/x/net v0.55.0 // indirect golang.org/x/oauth2 v0.36.0 // indirect - golang.org/x/sys v0.44.0 // indirect + golang.org/x/sys v0.45.0 // indirect golang.org/x/term v0.43.0 // indirect golang.org/x/text v0.37.0 // indirect golang.org/x/time v0.15.0 // indirect diff --git a/integration-tests/load/go.sum b/integration-tests/load/go.sum index 2cfa5e31b5b..c00a17a0c04 100644 --- a/integration-tests/load/go.sum +++ b/integration-tests/load/go.sum @@ -1629,8 +1629,8 @@ github.com/smartcontractkit/chainlink-ccv v0.0.2-0.20260428133800-3b1484e8b1fd h github.com/smartcontractkit/chainlink-ccv v0.0.2-0.20260428133800-3b1484e8b1fd/go.mod h1:SBN8Urnh5sQvrQRbSo1Nr8coWatHg8LZoPw3R/42sho= github.com/smartcontractkit/chainlink-ccv/deployment v0.0.2-0.20260428205321-9ce8f4c44d23 h1:1Rt4HLpwbRN1YtBFcbsxSJYIiUP2wJ11qizevOEeCrs= github.com/smartcontractkit/chainlink-ccv/deployment v0.0.2-0.20260428205321-9ce8f4c44d23/go.mod h1:V+wrhuNve+JiFwoBr25d6y0lL1rYSCSJhTFyloL3ueo= -github.com/smartcontractkit/chainlink-common v0.11.2-0.20260527110243-883689d933be h1:h6NXQz2hZEcdKF/UOXCtQANFGZFDnz6YUIee4OplWLo= -github.com/smartcontractkit/chainlink-common v0.11.2-0.20260527110243-883689d933be/go.mod h1:lFJ2fkxep1wBzl+sIyxJNfwo5tb31mBNrGlHpjVO008= +github.com/smartcontractkit/chainlink-common v0.11.2-0.20260528150532-b12054695b25 h1:hhPlsgzyfvcohAVSqh4vNyr88icCUVvJ/CNSD7gBZIc= +github.com/smartcontractkit/chainlink-common v0.11.2-0.20260528150532-b12054695b25/go.mod h1:jueIfDkkRexwGgLbVB7vGCZlNtd383zuwi4uHHwcbqc= github.com/smartcontractkit/chainlink-common/keystore v1.1.0 h1:2wzySccgk2fpWusPKO0bpeAZzfSU9eq6CS5U+JwYaVo= github.com/smartcontractkit/chainlink-common/keystore v1.1.0/go.mod h1:6JexOOhPhknQ0QMuppFIlOpm6wCp54yZMxai+tWugwY= github.com/smartcontractkit/chainlink-common/pkg/chipingress v0.0.11-0.20260520194751-11a4f360f4e2 h1:22H/CQy2L1unVJ2KEViEqvM8evJLSIqJxEdfDeXB4o8= @@ -2133,8 +2133,8 @@ golang.org/x/crypto v0.19.0/go.mod h1:Iy9bg/ha4yyC70EfRS8jz+B6ybOBKMaSxLj6P6oBDf golang.org/x/crypto v0.20.0/go.mod h1:Xwo95rrVNIoSMx9wa1JroENMToLWn3RNVrTBpLHgZPQ= golang.org/x/crypto v0.23.0/go.mod h1:CKFgDieR+mRhux2Lsu27y0fO304Db0wZe70UKqHu0v8= golang.org/x/crypto v0.32.0/go.mod h1:ZnnJkOaASj8g0AjIduWNlq2NRxL0PlBrbKVyZ6V/Ugc= -golang.org/x/crypto v0.51.0 h1:IBPXwPfKxY7cWQZ38ZCIRPI50YLeevDLlLnyC5wRGTI= -golang.org/x/crypto v0.51.0/go.mod h1:8AdwkbraGNABw2kOX6YFPs3WM22XqI4EXEd8g+x7Oc8= +golang.org/x/crypto v0.52.0 h1:RMs7fP2rXdep0CftQlK8Uf+kibLm7qkCcradZWYz988= +golang.org/x/crypto v0.52.0/go.mod h1:1QgfPxDqh0T2M/elOJtp9RvuR95kVjir0e6/BvEmGbc= golang.org/x/exp v0.0.0-20180321215751-8460e604b9de/go.mod h1:CJ0aWSM057203Lf6IL+f9T1iT9GByDxfZKAQTCR3kQA= golang.org/x/exp v0.0.0-20190121172915-509febef88a4/go.mod h1:CJ0aWSM057203Lf6IL+f9T1iT9GByDxfZKAQTCR3kQA= golang.org/x/exp v0.0.0-20190306152737-a1d7652674e8/go.mod h1:CJ0aWSM057203Lf6IL+f9T1iT9GByDxfZKAQTCR3kQA= @@ -2248,8 +2248,8 @@ golang.org/x/net v0.20.0/go.mod h1:z8BVo6PvndSri0LbOE3hAn0apkU+1YvI6E70E9jsnvY= golang.org/x/net v0.21.0/go.mod h1:bIjVDfnllIU7BJ2DNgfnXvpSvtn8VRwhlsaeUTyUS44= golang.org/x/net v0.25.0/go.mod h1:JkAGAh7GEvH74S6FOH42FLoXpXbE/aqXSrIQjXgsiwM= golang.org/x/net v0.34.0/go.mod h1:di0qlW3YNM5oh6GqDGQr92MyTozJPmybPK4Ev/Gm31k= -golang.org/x/net v0.54.0 h1:2zJIZAxAHV/OHCDTCOHAYehQzLfSXuf/5SoL/Dv6w/w= -golang.org/x/net v0.54.0/go.mod h1:Sj4oj8jK6XmHpBZU/zWHw3BV3abl4Kvi+Ut7cQcY+cQ= +golang.org/x/net v0.55.0 h1:bcvxaJn3e1U6InsFWt1JUq1aSjnRxLzT2rtD2KfkDF8= +golang.org/x/net v0.55.0/go.mod h1:L5U2KuzuOe1lY7Z+aWVIKK6qEeJXnXV9yzGA+WCHJww= golang.org/x/oauth2 v0.0.0-20180821212333-d2e6202438be/go.mod h1:N/0e6XlmueqKjAGxoOufVs8QHGRruUQn6yWY3a++T0U= golang.org/x/oauth2 v0.0.0-20190226205417-e64efc72b421/go.mod h1:gOpvHmFTYa4IltrdGE7lF6nIHvwfUNPOp7c8zoXwtLw= golang.org/x/oauth2 v0.0.0-20190604053449-0f29369cfe45/go.mod h1:gOpvHmFTYa4IltrdGE7lF6nIHvwfUNPOp7c8zoXwtLw= @@ -2381,8 +2381,8 @@ golang.org/x/sys v0.17.0/go.mod h1:/VUhepiaJMQUp4+oa/7Zr1D23ma6VTLIYjOOTFZPUcA= golang.org/x/sys v0.18.0/go.mod h1:/VUhepiaJMQUp4+oa/7Zr1D23ma6VTLIYjOOTFZPUcA= golang.org/x/sys v0.20.0/go.mod h1:/VUhepiaJMQUp4+oa/7Zr1D23ma6VTLIYjOOTFZPUcA= golang.org/x/sys v0.29.0/go.mod h1:/VUhepiaJMQUp4+oa/7Zr1D23ma6VTLIYjOOTFZPUcA= -golang.org/x/sys v0.44.0 h1:ildZl3J4uzeKP07r2F++Op7E9B29JRUy+a27EibtBTQ= -golang.org/x/sys v0.44.0/go.mod h1:4GL1E5IUh+htKOUEOaiffhrAeqysfVGipDYzABqnCmw= +golang.org/x/sys v0.45.0 h1:dO4czNzziLiiXplLQgBCEpCvXQ3dnkn0SdaZSYdQ+FY= +golang.org/x/sys v0.45.0/go.mod h1:4GL1E5IUh+htKOUEOaiffhrAeqysfVGipDYzABqnCmw= golang.org/x/telemetry v0.0.0-20240228155512-f48c80bd79b2/go.mod h1:TeRTkGYfJXctD9OcfyVLyj2J3IxLnKwHJR8f4D8a3YE= golang.org/x/term v0.0.0-20201117132131-f5c789dd3221/go.mod h1:Nr5EML6q2oocZ2LXRh80K7BxOlk5/8JxuGnuhpl+muw= golang.org/x/term v0.0.0-20201126162022-7de9c90e9dd1/go.mod h1:bj7SfCRtBDWHUb9snDiAeCFNEtKQo2Wmx5Cou7ajbmo= diff --git a/system-tests/lib/go.mod b/system-tests/lib/go.mod index f17230d125c..86c1c163e68 100644 --- a/system-tests/lib/go.mod +++ b/system-tests/lib/go.mod @@ -33,7 +33,7 @@ require ( github.com/smartcontractkit/chain-selectors v1.0.101 github.com/smartcontractkit/chainlink-aptos v0.0.0-20260507123701-77fc93b573bb github.com/smartcontractkit/chainlink-ccip/chains/solana v0.0.0-20260415165642-49f23e4d76cc - github.com/smartcontractkit/chainlink-common v0.11.2-0.20260527110243-883689d933be + github.com/smartcontractkit/chainlink-common v0.11.2-0.20260528150532-b12054695b25 github.com/smartcontractkit/chainlink-common/keystore v1.1.0 github.com/smartcontractkit/chainlink-deployments-framework v0.105.0 github.com/smartcontractkit/chainlink-evm v0.3.4-0.20260527175653-b78bae59d823 @@ -553,12 +553,12 @@ require ( go.yaml.in/yaml/v3 v3.0.4 // indirect go.yaml.in/yaml/v4 v4.0.0-rc.4 // indirect golang.org/x/arch v0.11.0 // indirect - golang.org/x/crypto v0.51.0 // indirect + golang.org/x/crypto v0.52.0 // indirect golang.org/x/exp v0.0.0-20260508232706-74f9aab9d74a // indirect golang.org/x/mod v0.36.0 // indirect - golang.org/x/net v0.54.0 // indirect + golang.org/x/net v0.55.0 // indirect golang.org/x/oauth2 v0.36.0 // indirect - golang.org/x/sys v0.44.0 // indirect + golang.org/x/sys v0.45.0 // indirect golang.org/x/term v0.43.0 // indirect golang.org/x/text v0.37.0 // indirect golang.org/x/time v0.15.0 // indirect diff --git a/system-tests/lib/go.sum b/system-tests/lib/go.sum index 483624f0f67..aabd383298e 100644 --- a/system-tests/lib/go.sum +++ b/system-tests/lib/go.sum @@ -1538,8 +1538,8 @@ github.com/smartcontractkit/chainlink-ccip/chains/solana/gobindings v0.0.0-20260 github.com/smartcontractkit/chainlink-ccip/chains/solana/gobindings v0.0.0-20260511195239-0f6e1b177fc7/go.mod h1:67YbnoglYD61Pz/jTVCgav9wFq7S35OU8UyQSvPllRw= github.com/smartcontractkit/chainlink-ccv v0.0.2-0.20260428133800-3b1484e8b1fd h1:IMopuENFVS63AerRELdfWo6o60UNUidcldJOxJLmk24= github.com/smartcontractkit/chainlink-ccv v0.0.2-0.20260428133800-3b1484e8b1fd/go.mod h1:SBN8Urnh5sQvrQRbSo1Nr8coWatHg8LZoPw3R/42sho= -github.com/smartcontractkit/chainlink-common v0.11.2-0.20260527110243-883689d933be h1:h6NXQz2hZEcdKF/UOXCtQANFGZFDnz6YUIee4OplWLo= -github.com/smartcontractkit/chainlink-common v0.11.2-0.20260527110243-883689d933be/go.mod h1:lFJ2fkxep1wBzl+sIyxJNfwo5tb31mBNrGlHpjVO008= +github.com/smartcontractkit/chainlink-common v0.11.2-0.20260528150532-b12054695b25 h1:hhPlsgzyfvcohAVSqh4vNyr88icCUVvJ/CNSD7gBZIc= +github.com/smartcontractkit/chainlink-common v0.11.2-0.20260528150532-b12054695b25/go.mod h1:jueIfDkkRexwGgLbVB7vGCZlNtd383zuwi4uHHwcbqc= github.com/smartcontractkit/chainlink-common/keystore v1.1.0 h1:2wzySccgk2fpWusPKO0bpeAZzfSU9eq6CS5U+JwYaVo= github.com/smartcontractkit/chainlink-common/keystore v1.1.0/go.mod h1:6JexOOhPhknQ0QMuppFIlOpm6wCp54yZMxai+tWugwY= github.com/smartcontractkit/chainlink-common/pkg/chipingress v0.0.11-0.20260520194751-11a4f360f4e2 h1:22H/CQy2L1unVJ2KEViEqvM8evJLSIqJxEdfDeXB4o8= @@ -1966,8 +1966,8 @@ golang.org/x/crypto v0.13.0/go.mod h1:y6Z2r+Rw4iayiXXAIxJIDAJ1zMW4yaTpebo8fPOliY golang.org/x/crypto v0.18.0/go.mod h1:R0j02AL6hcrfOiy9T4ZYp/rcWeMxM3L6QYxlOuEG1mg= golang.org/x/crypto v0.19.0/go.mod h1:Iy9bg/ha4yyC70EfRS8jz+B6ybOBKMaSxLj6P6oBDfU= golang.org/x/crypto v0.20.0/go.mod h1:Xwo95rrVNIoSMx9wa1JroENMToLWn3RNVrTBpLHgZPQ= -golang.org/x/crypto v0.51.0 h1:IBPXwPfKxY7cWQZ38ZCIRPI50YLeevDLlLnyC5wRGTI= -golang.org/x/crypto v0.51.0/go.mod h1:8AdwkbraGNABw2kOX6YFPs3WM22XqI4EXEd8g+x7Oc8= +golang.org/x/crypto v0.52.0 h1:RMs7fP2rXdep0CftQlK8Uf+kibLm7qkCcradZWYz988= +golang.org/x/crypto v0.52.0/go.mod h1:1QgfPxDqh0T2M/elOJtp9RvuR95kVjir0e6/BvEmGbc= golang.org/x/exp v0.0.0-20180321215751-8460e604b9de/go.mod h1:CJ0aWSM057203Lf6IL+f9T1iT9GByDxfZKAQTCR3kQA= golang.org/x/exp v0.0.0-20190121172915-509febef88a4/go.mod h1:CJ0aWSM057203Lf6IL+f9T1iT9GByDxfZKAQTCR3kQA= golang.org/x/exp v0.0.0-20190306152737-a1d7652674e8/go.mod h1:CJ0aWSM057203Lf6IL+f9T1iT9GByDxfZKAQTCR3kQA= @@ -2068,8 +2068,8 @@ golang.org/x/net v0.10.0/go.mod h1:0qNGK6F8kojg2nk9dLZ2mShWaEBan6FAoqfSigmmuDg= golang.org/x/net v0.14.0/go.mod h1:PpSgVXXLK0OxS0F31C1/tv6XNguvCrnXIDrFMspZIUI= golang.org/x/net v0.20.0/go.mod h1:z8BVo6PvndSri0LbOE3hAn0apkU+1YvI6E70E9jsnvY= golang.org/x/net v0.21.0/go.mod h1:bIjVDfnllIU7BJ2DNgfnXvpSvtn8VRwhlsaeUTyUS44= -golang.org/x/net v0.54.0 h1:2zJIZAxAHV/OHCDTCOHAYehQzLfSXuf/5SoL/Dv6w/w= -golang.org/x/net v0.54.0/go.mod h1:Sj4oj8jK6XmHpBZU/zWHw3BV3abl4Kvi+Ut7cQcY+cQ= +golang.org/x/net v0.55.0 h1:bcvxaJn3e1U6InsFWt1JUq1aSjnRxLzT2rtD2KfkDF8= +golang.org/x/net v0.55.0/go.mod h1:L5U2KuzuOe1lY7Z+aWVIKK6qEeJXnXV9yzGA+WCHJww= golang.org/x/oauth2 v0.0.0-20180821212333-d2e6202438be/go.mod h1:N/0e6XlmueqKjAGxoOufVs8QHGRruUQn6yWY3a++T0U= golang.org/x/oauth2 v0.0.0-20190226205417-e64efc72b421/go.mod h1:gOpvHmFTYa4IltrdGE7lF6nIHvwfUNPOp7c8zoXwtLw= golang.org/x/oauth2 v0.0.0-20190604053449-0f29369cfe45/go.mod h1:gOpvHmFTYa4IltrdGE7lF6nIHvwfUNPOp7c8zoXwtLw= @@ -2187,8 +2187,8 @@ golang.org/x/sys v0.14.0/go.mod h1:/VUhepiaJMQUp4+oa/7Zr1D23ma6VTLIYjOOTFZPUcA= golang.org/x/sys v0.16.0/go.mod h1:/VUhepiaJMQUp4+oa/7Zr1D23ma6VTLIYjOOTFZPUcA= golang.org/x/sys v0.17.0/go.mod h1:/VUhepiaJMQUp4+oa/7Zr1D23ma6VTLIYjOOTFZPUcA= golang.org/x/sys v0.18.0/go.mod h1:/VUhepiaJMQUp4+oa/7Zr1D23ma6VTLIYjOOTFZPUcA= -golang.org/x/sys v0.44.0 h1:ildZl3J4uzeKP07r2F++Op7E9B29JRUy+a27EibtBTQ= -golang.org/x/sys v0.44.0/go.mod h1:4GL1E5IUh+htKOUEOaiffhrAeqysfVGipDYzABqnCmw= +golang.org/x/sys v0.45.0 h1:dO4czNzziLiiXplLQgBCEpCvXQ3dnkn0SdaZSYdQ+FY= +golang.org/x/sys v0.45.0/go.mod h1:4GL1E5IUh+htKOUEOaiffhrAeqysfVGipDYzABqnCmw= golang.org/x/term v0.0.0-20201117132131-f5c789dd3221/go.mod h1:Nr5EML6q2oocZ2LXRh80K7BxOlk5/8JxuGnuhpl+muw= golang.org/x/term v0.0.0-20201126162022-7de9c90e9dd1/go.mod h1:bj7SfCRtBDWHUb9snDiAeCFNEtKQo2Wmx5Cou7ajbmo= golang.org/x/term v0.0.0-20210927222741-03fcf44c2211/go.mod h1:jbD1KX2456YbFQfuXm/mYQcufACuNUgVhRMnK/tPxf8= diff --git a/system-tests/tests/go.mod b/system-tests/tests/go.mod index 88069ed9588..6f1d934fb36 100644 --- a/system-tests/tests/go.mod +++ b/system-tests/tests/go.mod @@ -58,7 +58,7 @@ require ( github.com/rs/zerolog v1.34.0 github.com/smartcontractkit/chain-selectors v1.0.101 github.com/smartcontractkit/chainlink-ccip/chains/solana v0.0.0-20260415165642-49f23e4d76cc - github.com/smartcontractkit/chainlink-common v0.11.2-0.20260527110243-883689d933be + github.com/smartcontractkit/chainlink-common v0.11.2-0.20260528150532-b12054695b25 github.com/smartcontractkit/chainlink-common/keystore v1.1.0 github.com/smartcontractkit/chainlink-deployments-framework v0.105.0 github.com/smartcontractkit/chainlink-evm/contracts/cre/gobindings v0.0.0-20260403151002-2c91155b5501 @@ -614,12 +614,12 @@ require ( go.uber.org/ratelimit v0.3.1 // indirect go.uber.org/zap v1.28.0 // indirect golang.org/x/arch v0.11.0 // indirect - golang.org/x/crypto v0.51.0 // indirect + golang.org/x/crypto v0.52.0 // indirect golang.org/x/exp v0.0.0-20260508232706-74f9aab9d74a // indirect golang.org/x/mod v0.36.0 // indirect - golang.org/x/net v0.54.0 // indirect + golang.org/x/net v0.55.0 // indirect golang.org/x/oauth2 v0.36.0 // indirect - golang.org/x/sys v0.44.0 // indirect + golang.org/x/sys v0.45.0 // indirect golang.org/x/term v0.43.0 // indirect golang.org/x/text v0.37.0 // indirect golang.org/x/time v0.15.0 // indirect diff --git a/system-tests/tests/go.sum b/system-tests/tests/go.sum index 2378ee382c9..31eca9b9308 100644 --- a/system-tests/tests/go.sum +++ b/system-tests/tests/go.sum @@ -1552,8 +1552,8 @@ github.com/smartcontractkit/chainlink-ccip/chains/solana/gobindings v0.0.0-20260 github.com/smartcontractkit/chainlink-ccip/chains/solana/gobindings v0.0.0-20260511195239-0f6e1b177fc7/go.mod h1:67YbnoglYD61Pz/jTVCgav9wFq7S35OU8UyQSvPllRw= github.com/smartcontractkit/chainlink-ccv v0.0.2-0.20260428133800-3b1484e8b1fd h1:IMopuENFVS63AerRELdfWo6o60UNUidcldJOxJLmk24= github.com/smartcontractkit/chainlink-ccv v0.0.2-0.20260428133800-3b1484e8b1fd/go.mod h1:SBN8Urnh5sQvrQRbSo1Nr8coWatHg8LZoPw3R/42sho= -github.com/smartcontractkit/chainlink-common v0.11.2-0.20260527110243-883689d933be h1:h6NXQz2hZEcdKF/UOXCtQANFGZFDnz6YUIee4OplWLo= -github.com/smartcontractkit/chainlink-common v0.11.2-0.20260527110243-883689d933be/go.mod h1:lFJ2fkxep1wBzl+sIyxJNfwo5tb31mBNrGlHpjVO008= +github.com/smartcontractkit/chainlink-common v0.11.2-0.20260528150532-b12054695b25 h1:hhPlsgzyfvcohAVSqh4vNyr88icCUVvJ/CNSD7gBZIc= +github.com/smartcontractkit/chainlink-common v0.11.2-0.20260528150532-b12054695b25/go.mod h1:jueIfDkkRexwGgLbVB7vGCZlNtd383zuwi4uHHwcbqc= github.com/smartcontractkit/chainlink-common/keystore v1.1.0 h1:2wzySccgk2fpWusPKO0bpeAZzfSU9eq6CS5U+JwYaVo= github.com/smartcontractkit/chainlink-common/keystore v1.1.0/go.mod h1:6JexOOhPhknQ0QMuppFIlOpm6wCp54yZMxai+tWugwY= github.com/smartcontractkit/chainlink-common/pkg/chipingress v0.0.11-0.20260520194751-11a4f360f4e2 h1:22H/CQy2L1unVJ2KEViEqvM8evJLSIqJxEdfDeXB4o8= @@ -1990,8 +1990,8 @@ golang.org/x/crypto v0.19.0/go.mod h1:Iy9bg/ha4yyC70EfRS8jz+B6ybOBKMaSxLj6P6oBDf golang.org/x/crypto v0.20.0/go.mod h1:Xwo95rrVNIoSMx9wa1JroENMToLWn3RNVrTBpLHgZPQ= golang.org/x/crypto v0.23.0/go.mod h1:CKFgDieR+mRhux2Lsu27y0fO304Db0wZe70UKqHu0v8= golang.org/x/crypto v0.32.0/go.mod h1:ZnnJkOaASj8g0AjIduWNlq2NRxL0PlBrbKVyZ6V/Ugc= -golang.org/x/crypto v0.51.0 h1:IBPXwPfKxY7cWQZ38ZCIRPI50YLeevDLlLnyC5wRGTI= -golang.org/x/crypto v0.51.0/go.mod h1:8AdwkbraGNABw2kOX6YFPs3WM22XqI4EXEd8g+x7Oc8= +golang.org/x/crypto v0.52.0 h1:RMs7fP2rXdep0CftQlK8Uf+kibLm7qkCcradZWYz988= +golang.org/x/crypto v0.52.0/go.mod h1:1QgfPxDqh0T2M/elOJtp9RvuR95kVjir0e6/BvEmGbc= golang.org/x/exp v0.0.0-20180321215751-8460e604b9de/go.mod h1:CJ0aWSM057203Lf6IL+f9T1iT9GByDxfZKAQTCR3kQA= golang.org/x/exp v0.0.0-20190121172915-509febef88a4/go.mod h1:CJ0aWSM057203Lf6IL+f9T1iT9GByDxfZKAQTCR3kQA= golang.org/x/exp v0.0.0-20190306152737-a1d7652674e8/go.mod h1:CJ0aWSM057203Lf6IL+f9T1iT9GByDxfZKAQTCR3kQA= @@ -2103,8 +2103,8 @@ golang.org/x/net v0.20.0/go.mod h1:z8BVo6PvndSri0LbOE3hAn0apkU+1YvI6E70E9jsnvY= golang.org/x/net v0.21.0/go.mod h1:bIjVDfnllIU7BJ2DNgfnXvpSvtn8VRwhlsaeUTyUS44= golang.org/x/net v0.25.0/go.mod h1:JkAGAh7GEvH74S6FOH42FLoXpXbE/aqXSrIQjXgsiwM= golang.org/x/net v0.34.0/go.mod h1:di0qlW3YNM5oh6GqDGQr92MyTozJPmybPK4Ev/Gm31k= -golang.org/x/net v0.54.0 h1:2zJIZAxAHV/OHCDTCOHAYehQzLfSXuf/5SoL/Dv6w/w= -golang.org/x/net v0.54.0/go.mod h1:Sj4oj8jK6XmHpBZU/zWHw3BV3abl4Kvi+Ut7cQcY+cQ= +golang.org/x/net v0.55.0 h1:bcvxaJn3e1U6InsFWt1JUq1aSjnRxLzT2rtD2KfkDF8= +golang.org/x/net v0.55.0/go.mod h1:L5U2KuzuOe1lY7Z+aWVIKK6qEeJXnXV9yzGA+WCHJww= golang.org/x/oauth2 v0.0.0-20180821212333-d2e6202438be/go.mod h1:N/0e6XlmueqKjAGxoOufVs8QHGRruUQn6yWY3a++T0U= golang.org/x/oauth2 v0.0.0-20190226205417-e64efc72b421/go.mod h1:gOpvHmFTYa4IltrdGE7lF6nIHvwfUNPOp7c8zoXwtLw= golang.org/x/oauth2 v0.0.0-20190604053449-0f29369cfe45/go.mod h1:gOpvHmFTYa4IltrdGE7lF6nIHvwfUNPOp7c8zoXwtLw= @@ -2233,8 +2233,8 @@ golang.org/x/sys v0.17.0/go.mod h1:/VUhepiaJMQUp4+oa/7Zr1D23ma6VTLIYjOOTFZPUcA= golang.org/x/sys v0.18.0/go.mod h1:/VUhepiaJMQUp4+oa/7Zr1D23ma6VTLIYjOOTFZPUcA= golang.org/x/sys v0.20.0/go.mod h1:/VUhepiaJMQUp4+oa/7Zr1D23ma6VTLIYjOOTFZPUcA= golang.org/x/sys v0.29.0/go.mod h1:/VUhepiaJMQUp4+oa/7Zr1D23ma6VTLIYjOOTFZPUcA= -golang.org/x/sys v0.44.0 h1:ildZl3J4uzeKP07r2F++Op7E9B29JRUy+a27EibtBTQ= -golang.org/x/sys v0.44.0/go.mod h1:4GL1E5IUh+htKOUEOaiffhrAeqysfVGipDYzABqnCmw= +golang.org/x/sys v0.45.0 h1:dO4czNzziLiiXplLQgBCEpCvXQ3dnkn0SdaZSYdQ+FY= +golang.org/x/sys v0.45.0/go.mod h1:4GL1E5IUh+htKOUEOaiffhrAeqysfVGipDYzABqnCmw= golang.org/x/telemetry v0.0.0-20240228155512-f48c80bd79b2/go.mod h1:TeRTkGYfJXctD9OcfyVLyj2J3IxLnKwHJR8f4D8a3YE= golang.org/x/term v0.0.0-20201117132131-f5c789dd3221/go.mod h1:Nr5EML6q2oocZ2LXRh80K7BxOlk5/8JxuGnuhpl+muw= golang.org/x/term v0.0.0-20201126162022-7de9c90e9dd1/go.mod h1:bj7SfCRtBDWHUb9snDiAeCFNEtKQo2Wmx5Cou7ajbmo= From ffcad13178d112f48991562524ffd921a8e35a07 Mon Sep 17 00:00:00 2001 From: Tejaswi Nadahalli Date: Mon, 1 Jun 2026 22:50:34 +0200 Subject: [PATCH 4/7] Fix gateway confidentialrelay test fixtures for mandatory EnclaveConfig The chainlink-common bump in this PR makes confidentialrelay.Validate require a non-empty EnclaveConfig (Signers, F, MasterPublicKey). The gateway aggregator test fixtures (validCapParams/validSecretsParams) didn't set it, so Hash() errored, no signed responses formed, and TestConfidentialRelayHandler_QuorumWithRealAggregator blocked on quorum until the 15m test timeout. Add a valid EnclaveConfig to both fixtures. Gateway production code is unaffected (nodes and gateway share one build, so hashing stays consistent); only the stale test fixtures needed the field. --- .../confidentialrelay/aggregator_test.go | 27 ++++++++++++++----- 1 file changed, 21 insertions(+), 6 deletions(-) diff --git a/core/services/gateway/handlers/confidentialrelay/aggregator_test.go b/core/services/gateway/handlers/confidentialrelay/aggregator_test.go index edffd923729..3abdd54f621 100644 --- a/core/services/gateway/handlers/confidentialrelay/aggregator_test.go +++ b/core/services/gateway/handlers/confidentialrelay/aggregator_test.go @@ -23,14 +23,28 @@ const ( testEnclavePK = "aabbcc" ) +// validEnclaveConfig satisfies chainlink-common's confidentialrelay.Validate, +// which requires a non-empty Signers list, non-zero F, and a non-empty +// MasterPublicKey. Without it Hash() errors and the real aggregator never +// reaches quorum. +func validEnclaveConfig() relaytypes.EnclaveConfig { + return relaytypes.EnclaveConfig{ + Signers: [][]byte{{0x01}, {0x02}, {0x03}, {0x04}}, + MasterPublicKey: []byte("test-master-public-key"), + T: 3, + F: 1, + } +} + func validCapParams(workflowID string) relaytypes.CapabilityRequestParams { return relaytypes.CapabilityRequestParams{ - WorkflowID: workflowID, - Owner: testOwner, - ExecutionID: testExecutionID, - ReferenceID: "ref-1", - CapabilityID: "cap-1", - Payload: "in", + WorkflowID: workflowID, + Owner: testOwner, + ExecutionID: testExecutionID, + ReferenceID: "ref-1", + CapabilityID: "cap-1", + Payload: "in", + EnclaveConfig: validEnclaveConfig(), } } @@ -41,6 +55,7 @@ func validSecretsParams(workflowID string) relaytypes.SecretsRequestParams { ExecutionID: testExecutionID, Secrets: []relaytypes.SecretIdentifier{{Key: "k1", Namespace: "ns"}}, EnclavePublicKey: testEnclavePK, + EnclaveConfig: validEnclaveConfig(), } } From 3c903cf4231df0626d8887fb5b7536b75bcd744c Mon Sep 17 00:00:00 2001 From: Tejaswi Nadahalli Date: Mon, 1 Jun 2026 23:29:43 +0200 Subject: [PATCH 5/7] Address review: fetch LocalNode once; gofmt test fixtures - verifyEnclaveConfigMatchesDON now takes a localNode snapshot instead of fetching it itself. handleSecretsGet fetched LocalNode twice (once for the config check, once for request metadata); now it fetches once and passes the snapshot, avoiding the redundant lookup and any inconsistency if registry state changes between calls. handleCapabilityExecute fetches once and passes it too. - gofmt the handler test: the EnclaveConfig struct literals added earlier were mis-indented. - Drop the audit tag from the doc comment, matching the chainlink-common cleanup (keep PRIV-458). --- .../capabilities/confidentialrelay/handler.go | 48 ++++---- .../confidentialrelay/handler_test.go | 110 +++++++++--------- 2 files changed, 79 insertions(+), 79 deletions(-) diff --git a/core/capabilities/confidentialrelay/handler.go b/core/capabilities/confidentialrelay/handler.go index cb803619e77..d4c0d84a32a 100644 --- a/core/capabilities/confidentialrelay/handler.go +++ b/core/capabilities/confidentialrelay/handler.go @@ -222,12 +222,18 @@ func (h *Handler) handleSecretsGet(ctx context.Context, gatewayID string, req *j if err := h.verifyAttestationHash(ctx, att, params, confidentialrelaytypes.DomainSecretsGet); err != nil { return h.errorResponse(ctx, gatewayID, req, jsonrpc.ErrInternal, err) } + // Fetch the local node once: it provides both the WorkflowDON snapshot for + // the enclave-config check below and the DON metadata on the vault request. + localNode, err := h.capRegistry.LocalNode(ctx) + if err != nil { + return h.errorResponse(ctx, gatewayID, req, jsonrpc.ErrInternal, fmt.Errorf("failed to get local node: %w", err)) + } // Verify the enclave's reported config matches the onchain DON state - // before treating the attested request as trusted. Sigma Prime CL112-01: - // the Nitro attestation binds the request hash, but a malicious host - // can produce a genuinely-attested request over a forged enclave config - // unless we compare the config value against an onchain reference. - if err := h.verifyEnclaveConfigMatchesDON(ctx, params.EnclaveConfig); err != nil { + // before treating the attested request as trusted: the Nitro attestation + // binds the request hash, but a malicious host can produce a + // genuinely-attested request over a forged enclave config unless we + // compare the config value against the DON reference. + if err := h.verifyEnclaveConfigMatchesDON(localNode, params.EnclaveConfig); err != nil { return h.errorResponse(ctx, gatewayID, req, jsonrpc.ErrInternal, err) } @@ -265,11 +271,6 @@ func (h *Handler) handleSecretsGet(ctx context.Context, gatewayID string, req *j return h.errorResponse(ctx, gatewayID, req, jsonrpc.ErrInternal, fmt.Errorf("failed to wrap vault request: %w", err)) } - localNode, err := h.capRegistry.LocalNode(ctx) - if err != nil { - return h.errorResponse(ctx, gatewayID, req, jsonrpc.ErrInternal, fmt.Errorf("failed to get local node: %w", err)) - } - metadata := capabilities.RequestMetadata{ WorkflowID: params.WorkflowID, WorkflowOwner: params.Owner, @@ -399,7 +400,11 @@ func (h *Handler) handleCapabilityExecute(ctx context.Context, gatewayID string, if err := h.verifyAttestationHash(ctx, att, params, confidentialrelaytypes.DomainCapabilityExec); err != nil { return h.errorResponse(ctx, gatewayID, req, jsonrpc.ErrInternal, err) } - if err := h.verifyEnclaveConfigMatchesDON(ctx, params.EnclaveConfig); err != nil { + localNode, err := h.capRegistry.LocalNode(ctx) + if err != nil { + return h.errorResponse(ctx, gatewayID, req, jsonrpc.ErrInternal, fmt.Errorf("failed to get local node: %w", err)) + } + if err := h.verifyEnclaveConfigMatchesDON(localNode, params.EnclaveConfig); err != nil { return h.errorResponse(ctx, gatewayID, req, jsonrpc.ErrInternal, err) } @@ -479,20 +484,15 @@ func (h *Handler) handleCapabilityExecute(ctx context.Context, gatewayID string, // relay DON runs on the same nodes as the workflow DON, so // localNode.WorkflowDON.Members is the right comparison target. // -// Sigma Prime CL112-01 / PRIV-458: pool.go validates the Nitro attestation -// cryptographically but a malicious host can still produce a -// genuinely-attested request over a forged config. The fix is to compare -// the attested config value against onchain DON state. +// PRIV-458: the Nitro attestation binds the request hash but does not on its +// own prove the config matches the DON, so a malicious host could produce a +// genuinely-attested request over a forged config. Comparing the attested +// config against onchain DON state closes that gap. // -// LocalNode is an O(1) in-memory map lookup populated by the registry -// syncer (background goroutine, default 12s tick); not an RPC on the hot -// path. Up to a ~12s staleness window applies during DON membership -// rotations and is acceptable: rotations are rare planned events. -func (h *Handler) verifyEnclaveConfigMatchesDON(ctx context.Context, cfg confidentialrelaytypes.EnclaveConfig) error { - localNode, err := h.capRegistry.LocalNode(ctx) - if err != nil { - return fmt.Errorf("fetch LocalNode for enclave config check: %w", err) - } +// localNode is passed in so each request fetches it once (it feeds request +// metadata too); the caller's lookup is an O(1) in-memory read populated by +// the registry syncer, so this stays off the RPC hot path. +func (h *Handler) verifyEnclaveConfigMatchesDON(localNode capabilities.Node, cfg confidentialrelaytypes.EnclaveConfig) error { expectedF := uint32(localNode.WorkflowDON.F) if cfg.F != expectedF { return fmt.Errorf("enclave config F mismatch: enclave reports %d, expected %d", cfg.F, expectedF) diff --git a/core/capabilities/confidentialrelay/handler_test.go b/core/capabilities/confidentialrelay/handler_test.go index e4896705736..1ef70eb65df 100644 --- a/core/capabilities/confidentialrelay/handler_test.go +++ b/core/capabilities/confidentialrelay/handler_test.go @@ -324,26 +324,26 @@ func TestHandler_HandleGatewayMessage(t *testing.T) { }, req: func(t *testing.T) *jsonrpc.Request[json.RawMessage] { return makeRequest(t, confidentialrelaytypes.MethodCapabilityExec, confidentialrelaytypes.CapabilityRequestParams{ - WorkflowID: "wf-1", - Owner: testOwner, // chainlink-common#2032 requires 0x-prefixed 20-byte hex - ExecutionID: "32c631d295ef5e32deb99a10ee6804bc4af13855687559d7ff6552ac6dbb2ce1", - ReferenceID: "17", - CapabilityID: "my-cap@1.0.0", - Payload: makeCapabilityPayload(t, map[string]any{"key": "val"}), + WorkflowID: "wf-1", + Owner: testOwner, // chainlink-common#2032 requires 0x-prefixed 20-byte hex + ExecutionID: "32c631d295ef5e32deb99a10ee6804bc4af13855687559d7ff6552ac6dbb2ce1", + ReferenceID: "17", + CapabilityID: "my-cap@1.0.0", + Payload: makeCapabilityPayload(t, map[string]any{"key": "val"}), EnclaveConfig: testEnclaveConfig(), - Attestation: testAttestationB64, + Attestation: testAttestationB64, }) }, checkResp: func(t *testing.T, resp *jsonrpc.Response[json.RawMessage]) { require.Nil(t, resp.Error) params := confidentialrelaytypes.CapabilityRequestParams{ - WorkflowID: "wf-1", - Owner: testOwner, - ExecutionID: "32c631d295ef5e32deb99a10ee6804bc4af13855687559d7ff6552ac6dbb2ce1", - ReferenceID: "17", - CapabilityID: "my-cap@1.0.0", - Payload: makeCapabilityPayload(t, map[string]any{"key": "val"}), - EnclaveConfig: testEnclaveConfig(), + WorkflowID: "wf-1", + Owner: testOwner, + ExecutionID: "32c631d295ef5e32deb99a10ee6804bc4af13855687559d7ff6552ac6dbb2ce1", + ReferenceID: "17", + CapabilityID: "my-cap@1.0.0", + Payload: makeCapabilityPayload(t, map[string]any{"key": "val"}), + EnclaveConfig: testEnclaveConfig(), } var result confidentialrelaytypes.SignedCapabilityResponseResult require.NoError(t, json.Unmarshal(*resp.Result, &result)) @@ -388,28 +388,28 @@ func TestHandler_HandleGatewayMessage(t *testing.T) { }, req: func(t *testing.T) *jsonrpc.Request[json.RawMessage] { return makeRequest(t, confidentialrelaytypes.MethodCapabilityExec, confidentialrelaytypes.CapabilityRequestParams{ - WorkflowID: "wf-1", - Owner: testOwner, - ExecutionID: "32c631d295ef5e32deb99a10ee6804bc4af13855687559d7ff6552ac6dbb2ce1", - OrgID: "org-relay-1", - ReferenceID: "17", - CapabilityID: "my-cap@1.0.0", - Payload: makeCapabilityPayload(t, map[string]any{"key": "val"}), + WorkflowID: "wf-1", + Owner: testOwner, + ExecutionID: "32c631d295ef5e32deb99a10ee6804bc4af13855687559d7ff6552ac6dbb2ce1", + OrgID: "org-relay-1", + ReferenceID: "17", + CapabilityID: "my-cap@1.0.0", + Payload: makeCapabilityPayload(t, map[string]any{"key": "val"}), EnclaveConfig: testEnclaveConfig(), - Attestation: testAttestationB64, + Attestation: testAttestationB64, }) }, checkResp: func(t *testing.T, resp *jsonrpc.Response[json.RawMessage]) { require.Nil(t, resp.Error) params := confidentialrelaytypes.CapabilityRequestParams{ - WorkflowID: "wf-1", - Owner: testOwner, - ExecutionID: "32c631d295ef5e32deb99a10ee6804bc4af13855687559d7ff6552ac6dbb2ce1", - OrgID: "org-relay-1", - ReferenceID: "17", - CapabilityID: "my-cap@1.0.0", - Payload: makeCapabilityPayload(t, map[string]any{"key": "val"}), - EnclaveConfig: testEnclaveConfig(), + WorkflowID: "wf-1", + Owner: testOwner, + ExecutionID: "32c631d295ef5e32deb99a10ee6804bc4af13855687559d7ff6552ac6dbb2ce1", + OrgID: "org-relay-1", + ReferenceID: "17", + CapabilityID: "my-cap@1.0.0", + Payload: makeCapabilityPayload(t, map[string]any{"key": "val"}), + EnclaveConfig: testEnclaveConfig(), } var result confidentialrelaytypes.SignedCapabilityResponseResult require.NoError(t, json.Unmarshal(*resp.Result, &result)) @@ -435,14 +435,14 @@ func TestHandler_HandleGatewayMessage(t *testing.T) { }, req: func(t *testing.T) *jsonrpc.Request[json.RawMessage] { return makeRequest(t, confidentialrelaytypes.MethodCapabilityExec, confidentialrelaytypes.CapabilityRequestParams{ - WorkflowID: "wf-1", - Owner: testOwner, - ExecutionID: "32c631d295ef5e32deb99a10ee6804bc4af13855687559d7ff6552ac6dbb2ce1", - ReferenceID: "17", - CapabilityID: "my-cap@1.0.0", - Payload: makeCapabilityPayload(t, map[string]any{"echo": "hello"}), + WorkflowID: "wf-1", + Owner: testOwner, + ExecutionID: "32c631d295ef5e32deb99a10ee6804bc4af13855687559d7ff6552ac6dbb2ce1", + ReferenceID: "17", + CapabilityID: "my-cap@1.0.0", + Payload: makeCapabilityPayload(t, map[string]any{"echo": "hello"}), EnclaveConfig: testEnclaveConfig(), - Attestation: testAttestationB64, + Attestation: testAttestationB64, }) }, checkResp: func(t *testing.T, resp *jsonrpc.Response[json.RawMessage]) { @@ -486,11 +486,11 @@ func TestHandler_HandleGatewayMessage(t *testing.T) { }, req: func(t *testing.T) *jsonrpc.Request[json.RawMessage] { return makeRequest(t, confidentialrelaytypes.MethodCapabilityExec, confidentialrelaytypes.CapabilityRequestParams{ - WorkflowID: "wf-1", - CapabilityID: "missing-cap@1.0.0", - Payload: base64.StdEncoding.EncodeToString([]byte("payload")), + WorkflowID: "wf-1", + CapabilityID: "missing-cap@1.0.0", + Payload: base64.StdEncoding.EncodeToString([]byte("payload")), EnclaveConfig: testEnclaveConfig(), - Attestation: testAttestationB64, + Attestation: testAttestationB64, }) }, checkResp: func(t *testing.T, resp *jsonrpc.Response[json.RawMessage]) { @@ -513,26 +513,26 @@ func TestHandler_HandleGatewayMessage(t *testing.T) { b, err := proto.Marshal(sdkReq) require.NoError(t, err) return makeRequest(t, confidentialrelaytypes.MethodCapabilityExec, confidentialrelaytypes.CapabilityRequestParams{ - WorkflowID: "wf-1", - Owner: testOwner, - ExecutionID: "32c631d295ef5e32deb99a10ee6804bc4af13855687559d7ff6552ac6dbb2ce1", - ReferenceID: "17", - CapabilityID: "fail-cap@1.0.0", - Payload: base64.StdEncoding.EncodeToString(b), + WorkflowID: "wf-1", + Owner: testOwner, + ExecutionID: "32c631d295ef5e32deb99a10ee6804bc4af13855687559d7ff6552ac6dbb2ce1", + ReferenceID: "17", + CapabilityID: "fail-cap@1.0.0", + Payload: base64.StdEncoding.EncodeToString(b), EnclaveConfig: testEnclaveConfig(), - Attestation: testAttestationB64, + Attestation: testAttestationB64, }) }, checkResp: func(t *testing.T, resp *jsonrpc.Response[json.RawMessage]) { require.Nil(t, resp.Error) params := confidentialrelaytypes.CapabilityRequestParams{ - WorkflowID: "wf-1", - Owner: testOwner, - ExecutionID: "32c631d295ef5e32deb99a10ee6804bc4af13855687559d7ff6552ac6dbb2ce1", - ReferenceID: "17", - CapabilityID: "fail-cap@1.0.0", - Payload: base64.StdEncoding.EncodeToString(mustMarshalProto(t, &sdkpb.CapabilityRequest{Id: "fail-cap@1.0.0", Method: "Execute"})), - EnclaveConfig: testEnclaveConfig(), + WorkflowID: "wf-1", + Owner: testOwner, + ExecutionID: "32c631d295ef5e32deb99a10ee6804bc4af13855687559d7ff6552ac6dbb2ce1", + ReferenceID: "17", + CapabilityID: "fail-cap@1.0.0", + Payload: base64.StdEncoding.EncodeToString(mustMarshalProto(t, &sdkpb.CapabilityRequest{Id: "fail-cap@1.0.0", Method: "Execute"})), + EnclaveConfig: testEnclaveConfig(), } var result confidentialrelaytypes.SignedCapabilityResponseResult require.NoError(t, json.Unmarshal(*resp.Result, &result)) From 7ec5a902da4f30660bfd4b31d52ca70b5fc25eec Mon Sep 17 00:00:00 2001 From: Tejaswi Nadahalli Date: Tue, 2 Jun 2026 12:02:26 +0200 Subject: [PATCH 6/7] Fix err shadow in confidentialrelay handlers The LocalNode-once refactor introduced `localNode, err :=` then kept `if err := verifyEnclaveConfigMatchesDON(...)`, shadowing err (govet). Use `=` so it assigns the existing err. --- core/capabilities/confidentialrelay/handler.go | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/core/capabilities/confidentialrelay/handler.go b/core/capabilities/confidentialrelay/handler.go index d4c0d84a32a..df12ee0252e 100644 --- a/core/capabilities/confidentialrelay/handler.go +++ b/core/capabilities/confidentialrelay/handler.go @@ -233,7 +233,7 @@ func (h *Handler) handleSecretsGet(ctx context.Context, gatewayID string, req *j // binds the request hash, but a malicious host can produce a // genuinely-attested request over a forged enclave config unless we // compare the config value against the DON reference. - if err := h.verifyEnclaveConfigMatchesDON(localNode, params.EnclaveConfig); err != nil { + if err = h.verifyEnclaveConfigMatchesDON(localNode, params.EnclaveConfig); err != nil { return h.errorResponse(ctx, gatewayID, req, jsonrpc.ErrInternal, err) } @@ -404,7 +404,7 @@ func (h *Handler) handleCapabilityExecute(ctx context.Context, gatewayID string, if err != nil { return h.errorResponse(ctx, gatewayID, req, jsonrpc.ErrInternal, fmt.Errorf("failed to get local node: %w", err)) } - if err := h.verifyEnclaveConfigMatchesDON(localNode, params.EnclaveConfig); err != nil { + if err = h.verifyEnclaveConfigMatchesDON(localNode, params.EnclaveConfig); err != nil { return h.errorResponse(ctx, gatewayID, req, jsonrpc.ErrInternal, err) } From 04fec3175d824aceae7f32017dd30968b77354f5 Mon Sep 17 00:00:00 2001 From: Tejaswi Nadahalli Date: Tue, 2 Jun 2026 12:30:02 +0200 Subject: [PATCH 7/7] Bump chainlink-common for optional EnclaveConfig; handle nil chainlink-common #2111 made EnclaveConfig optional (*EnclaveConfig). Bump common to 208ae6dd across the root and the dependent submodules that replace chainlink => ../, and adapt the relay handler: - verifyEnclaveConfigMatchesDON takes *EnclaveConfig and skips the check when nil (sender on an older protocol that omits it), verifying only when present. - Node-handler and gateway-aggregator test fixtures use the pointer form; add a node-handler subtest covering nil-config acceptance. --- .../capabilities/confidentialrelay/handler.go | 9 ++- .../confidentialrelay/handler_test.go | 57 ++++++++++++++----- core/scripts/go.mod | 6 +- core/scripts/go.sum | 12 ++-- .../confidentialrelay/aggregator_test.go | 9 ++- deployment/go.mod | 6 +- deployment/go.sum | 12 ++-- go.mod | 6 +- go.sum | 12 ++-- integration-tests/go.mod | 6 +- integration-tests/go.sum | 12 ++-- integration-tests/load/go.mod | 6 +- integration-tests/load/go.sum | 12 ++-- system-tests/lib/go.mod | 6 +- system-tests/lib/go.sum | 12 ++-- system-tests/tests/go.mod | 6 +- system-tests/tests/go.sum | 12 ++-- 17 files changed, 121 insertions(+), 80 deletions(-) diff --git a/core/capabilities/confidentialrelay/handler.go b/core/capabilities/confidentialrelay/handler.go index df12ee0252e..82fa0e77d08 100644 --- a/core/capabilities/confidentialrelay/handler.go +++ b/core/capabilities/confidentialrelay/handler.go @@ -492,7 +492,14 @@ func (h *Handler) handleCapabilityExecute(ctx context.Context, gatewayID string, // localNode is passed in so each request fetches it once (it feeds request // metadata too); the caller's lookup is an O(1) in-memory read populated by // the registry syncer, so this stays off the RPC hot path. -func (h *Handler) verifyEnclaveConfigMatchesDON(localNode capabilities.Node, cfg confidentialrelaytypes.EnclaveConfig) error { +// +// cfg is optional: a nil EnclaveConfig (sender on an older protocol that does +// not include it) is accepted and skips the check. The config is verified +// only when present. +func (h *Handler) verifyEnclaveConfigMatchesDON(localNode capabilities.Node, cfg *confidentialrelaytypes.EnclaveConfig) error { + if cfg == nil { + return nil + } expectedF := uint32(localNode.WorkflowDON.F) if cfg.F != expectedF { return fmt.Errorf("enclave config F mismatch: enclave reports %d, expected %d", cfg.F, expectedF) diff --git a/core/capabilities/confidentialrelay/handler_test.go b/core/capabilities/confidentialrelay/handler_test.go index 1ef70eb65df..48467d46c90 100644 --- a/core/capabilities/confidentialrelay/handler_test.go +++ b/core/capabilities/confidentialrelay/handler_test.go @@ -209,6 +209,11 @@ func testEnclaveConfig() confidentialrelaytypes.EnclaveConfig { } } +func testEnclaveConfigPtr() *confidentialrelaytypes.EnclaveConfig { + c := testEnclaveConfig() + return &c +} + // testWorkflowDONMembers returns []p2ptypes.PeerID whose [:] slices match // testEnclaveConfig().Signers byte-for-byte. func testWorkflowDONMembers() []p2ptypes.PeerID { @@ -292,7 +297,7 @@ func secretsGetTestParams() confidentialrelaytypes.SecretsRequestParams { ExecutionID: "0000000000000000000000000000000000000000000000000000000000000001", OrgID: "org-123", EnclavePublicKey: "aabbcc", - EnclaveConfig: testEnclaveConfig(), + EnclaveConfig: testEnclaveConfigPtr(), Secrets: []confidentialrelaytypes.SecretIdentifier{ {Key: "API_KEY", Namespace: "main"}, }, @@ -330,7 +335,7 @@ func TestHandler_HandleGatewayMessage(t *testing.T) { ReferenceID: "17", CapabilityID: "my-cap@1.0.0", Payload: makeCapabilityPayload(t, map[string]any{"key": "val"}), - EnclaveConfig: testEnclaveConfig(), + EnclaveConfig: testEnclaveConfigPtr(), Attestation: testAttestationB64, }) }, @@ -343,7 +348,7 @@ func TestHandler_HandleGatewayMessage(t *testing.T) { ReferenceID: "17", CapabilityID: "my-cap@1.0.0", Payload: makeCapabilityPayload(t, map[string]any{"key": "val"}), - EnclaveConfig: testEnclaveConfig(), + EnclaveConfig: testEnclaveConfigPtr(), } var result confidentialrelaytypes.SignedCapabilityResponseResult require.NoError(t, json.Unmarshal(*resp.Result, &result)) @@ -395,7 +400,7 @@ func TestHandler_HandleGatewayMessage(t *testing.T) { ReferenceID: "17", CapabilityID: "my-cap@1.0.0", Payload: makeCapabilityPayload(t, map[string]any{"key": "val"}), - EnclaveConfig: testEnclaveConfig(), + EnclaveConfig: testEnclaveConfigPtr(), Attestation: testAttestationB64, }) }, @@ -409,7 +414,7 @@ func TestHandler_HandleGatewayMessage(t *testing.T) { ReferenceID: "17", CapabilityID: "my-cap@1.0.0", Payload: makeCapabilityPayload(t, map[string]any{"key": "val"}), - EnclaveConfig: testEnclaveConfig(), + EnclaveConfig: testEnclaveConfigPtr(), } var result confidentialrelaytypes.SignedCapabilityResponseResult require.NoError(t, json.Unmarshal(*resp.Result, &result)) @@ -441,7 +446,7 @@ func TestHandler_HandleGatewayMessage(t *testing.T) { ReferenceID: "17", CapabilityID: "my-cap@1.0.0", Payload: makeCapabilityPayload(t, map[string]any{"echo": "hello"}), - EnclaveConfig: testEnclaveConfig(), + EnclaveConfig: testEnclaveConfigPtr(), Attestation: testAttestationB64, }) }, @@ -489,7 +494,7 @@ func TestHandler_HandleGatewayMessage(t *testing.T) { WorkflowID: "wf-1", CapabilityID: "missing-cap@1.0.0", Payload: base64.StdEncoding.EncodeToString([]byte("payload")), - EnclaveConfig: testEnclaveConfig(), + EnclaveConfig: testEnclaveConfigPtr(), Attestation: testAttestationB64, }) }, @@ -519,7 +524,7 @@ func TestHandler_HandleGatewayMessage(t *testing.T) { ReferenceID: "17", CapabilityID: "fail-cap@1.0.0", Payload: base64.StdEncoding.EncodeToString(b), - EnclaveConfig: testEnclaveConfig(), + EnclaveConfig: testEnclaveConfigPtr(), Attestation: testAttestationB64, }) }, @@ -532,7 +537,7 @@ func TestHandler_HandleGatewayMessage(t *testing.T) { ReferenceID: "17", CapabilityID: "fail-cap@1.0.0", Payload: base64.StdEncoding.EncodeToString(mustMarshalProto(t, &sdkpb.CapabilityRequest{Id: "fail-cap@1.0.0", Method: "Execute"})), - EnclaveConfig: testEnclaveConfig(), + EnclaveConfig: testEnclaveConfigPtr(), } var result confidentialrelaytypes.SignedCapabilityResponseResult require.NoError(t, json.Unmarshal(*resp.Result, &result)) @@ -725,7 +730,31 @@ func TestHandler_VerifyEnclaveConfig(t *testing.T) { ReferenceID: "1", CapabilityID: "my-cap@1.0.0", Payload: makeCapabilityPayload(t, map[string]any{"key": "val"}), - EnclaveConfig: testEnclaveConfig(), + EnclaveConfig: testEnclaveConfigPtr(), + Attestation: testAttestationB64, + }) + err := h.HandleGatewayMessage(context.Background(), "gw-1", req) + require.NoError(t, err) + resp := gwConn.lastResp + require.Nil(t, resp.Error) + }) + + t.Run("nil config accepted on capability execute (optional)", func(t *testing.T) { + reg := withEnclaveConfig(&mockCapRegistry{ + executables: map[string]*mockExecutable{ + "my-cap@1.0.0": {execResult: capabilities.CapabilityResponse{Payload: &anypb.Any{}}}, + }, + }) + gwConn := &mockGatewayConnector{} + h := newTestHandler(t, reg, gwConn) + req := makeRequest(t, confidentialrelaytypes.MethodCapabilityExec, confidentialrelaytypes.CapabilityRequestParams{ + WorkflowID: "wf-1", + Owner: testOwner, + ExecutionID: "32c631d295ef5e32deb99a10ee6804bc4af13855687559d7ff6552ac6dbb2ce1", + ReferenceID: "1", + CapabilityID: "my-cap@1.0.0", + Payload: makeCapabilityPayload(t, map[string]any{"key": "val"}), + EnclaveConfig: nil, // sender on older protocol; check is skipped Attestation: testAttestationB64, }) err := h.HandleGatewayMessage(context.Background(), "gw-1", req) @@ -751,7 +780,7 @@ func TestHandler_VerifyEnclaveConfig(t *testing.T) { ReferenceID: "1", CapabilityID: "my-cap@1.0.0", Payload: makeCapabilityPayload(t, map[string]any{"key": "val"}), - EnclaveConfig: badCfg, + EnclaveConfig: &badCfg, Attestation: testAttestationB64, }) err := h.HandleGatewayMessage(context.Background(), "gw-1", req) @@ -777,7 +806,7 @@ func TestHandler_VerifyEnclaveConfig(t *testing.T) { ReferenceID: "1", CapabilityID: "my-cap@1.0.0", Payload: makeCapabilityPayload(t, map[string]any{"key": "val"}), - EnclaveConfig: badCfg, + EnclaveConfig: &badCfg, Attestation: testAttestationB64, }) err := h.HandleGatewayMessage(context.Background(), "gw-1", req) @@ -808,7 +837,7 @@ func TestHandler_VerifyEnclaveConfig(t *testing.T) { ReferenceID: "1", CapabilityID: "my-cap@1.0.0", Payload: makeCapabilityPayload(t, map[string]any{"key": "val"}), - EnclaveConfig: badCfg, + EnclaveConfig: &badCfg, Attestation: testAttestationB64, }) err := h.HandleGatewayMessage(context.Background(), "gw-1", req) @@ -840,7 +869,7 @@ func TestHandler_VerifyEnclaveConfig(t *testing.T) { ReferenceID: "1", CapabilityID: "my-cap@1.0.0", Payload: makeCapabilityPayload(t, map[string]any{"key": "val"}), - EnclaveConfig: shuffled, + EnclaveConfig: &shuffled, Attestation: testAttestationB64, }) err := h.HandleGatewayMessage(context.Background(), "gw-1", req) diff --git a/core/scripts/go.mod b/core/scripts/go.mod index 9ea460f3ece..133e74dc798 100644 --- a/core/scripts/go.mod +++ b/core/scripts/go.mod @@ -43,7 +43,7 @@ require ( github.com/smartcontractkit/chain-selectors v1.0.101 github.com/smartcontractkit/chainlink-automation v0.8.1 github.com/smartcontractkit/chainlink-ccip/chains/evm v0.0.0-20260506144252-c100eabfda74 - github.com/smartcontractkit/chainlink-common v0.11.2-0.20260528150532-b12054695b25 + github.com/smartcontractkit/chainlink-common v0.11.2-0.20260602101458-208ae6ddea43 github.com/smartcontractkit/chainlink-common/keystore v1.1.0 github.com/smartcontractkit/chainlink-data-streams v0.1.15-0.20260522094612-5f9f748bd87a github.com/smartcontractkit/chainlink-deployments-framework v0.105.0 @@ -480,7 +480,7 @@ require ( github.com/smartcontractkit/chainlink-ccip/chains/solana v0.0.0-20260506144252-c100eabfda74 // indirect github.com/smartcontractkit/chainlink-ccip/chains/solana/gobindings v0.0.0-20260511195239-0f6e1b177fc7 // indirect github.com/smartcontractkit/chainlink-ccv v0.0.2-0.20260428133800-3b1484e8b1fd // indirect - github.com/smartcontractkit/chainlink-common/pkg/chipingress v0.0.11-0.20260520194751-11a4f360f4e2 // indirect + github.com/smartcontractkit/chainlink-common/pkg/chipingress v0.0.11-0.20260528204832-58c7145c53f8 // indirect github.com/smartcontractkit/chainlink-evm/contracts/cre/gobindings v0.0.0-20260403151002-2c91155b5501 // indirect github.com/smartcontractkit/chainlink-feeds v0.1.2-0.20250227211209-7cd000095135 // indirect github.com/smartcontractkit/chainlink-framework/capabilities v0.0.0-20260423135514-5b1a7565a99c // indirect @@ -500,7 +500,7 @@ require ( github.com/smartcontractkit/chainlink-protos/rmn/v1.6/go v0.0.0-20250131130834-15e0d4cde2a6 // indirect github.com/smartcontractkit/chainlink-protos/storage-service v0.3.0 // indirect github.com/smartcontractkit/chainlink-protos/svr v1.2.0 // indirect - github.com/smartcontractkit/chainlink-protos/workflows/go v0.0.0-20260323124644-faea187e6997 // indirect + github.com/smartcontractkit/chainlink-protos/workflows/go v0.0.0-20260528173149-f5b8336b19d9 // indirect github.com/smartcontractkit/chainlink-solana/contracts v0.0.0-20260513123719-d347eaf314e1 // indirect github.com/smartcontractkit/chainlink-sui v0.0.0-20260527160341-aa3adc0abf67 // indirect github.com/smartcontractkit/chainlink-testing-framework/framework/components/chiprouter v1.0.4 // indirect diff --git a/core/scripts/go.sum b/core/scripts/go.sum index ea60f26c0de..70fb369faf0 100644 --- a/core/scripts/go.sum +++ b/core/scripts/go.sum @@ -1571,12 +1571,12 @@ github.com/smartcontractkit/chainlink-ccip/chains/solana/gobindings v0.0.0-20260 github.com/smartcontractkit/chainlink-ccip/chains/solana/gobindings v0.0.0-20260511195239-0f6e1b177fc7/go.mod h1:67YbnoglYD61Pz/jTVCgav9wFq7S35OU8UyQSvPllRw= github.com/smartcontractkit/chainlink-ccv v0.0.2-0.20260428133800-3b1484e8b1fd h1:IMopuENFVS63AerRELdfWo6o60UNUidcldJOxJLmk24= github.com/smartcontractkit/chainlink-ccv v0.0.2-0.20260428133800-3b1484e8b1fd/go.mod h1:SBN8Urnh5sQvrQRbSo1Nr8coWatHg8LZoPw3R/42sho= -github.com/smartcontractkit/chainlink-common v0.11.2-0.20260528150532-b12054695b25 h1:hhPlsgzyfvcohAVSqh4vNyr88icCUVvJ/CNSD7gBZIc= -github.com/smartcontractkit/chainlink-common v0.11.2-0.20260528150532-b12054695b25/go.mod h1:jueIfDkkRexwGgLbVB7vGCZlNtd383zuwi4uHHwcbqc= +github.com/smartcontractkit/chainlink-common v0.11.2-0.20260602101458-208ae6ddea43 h1:SsdcAiY6/MDPV93o2P6JRaooIA088OZFTT3ohOKSS3U= +github.com/smartcontractkit/chainlink-common v0.11.2-0.20260602101458-208ae6ddea43/go.mod h1:6jgqiFXFJHqjkvFFmuf8gvoUFa6Ygx/D1tKnIL+CCF8= github.com/smartcontractkit/chainlink-common/keystore v1.1.0 h1:2wzySccgk2fpWusPKO0bpeAZzfSU9eq6CS5U+JwYaVo= github.com/smartcontractkit/chainlink-common/keystore v1.1.0/go.mod h1:6JexOOhPhknQ0QMuppFIlOpm6wCp54yZMxai+tWugwY= -github.com/smartcontractkit/chainlink-common/pkg/chipingress v0.0.11-0.20260520194751-11a4f360f4e2 h1:22H/CQy2L1unVJ2KEViEqvM8evJLSIqJxEdfDeXB4o8= -github.com/smartcontractkit/chainlink-common/pkg/chipingress v0.0.11-0.20260520194751-11a4f360f4e2/go.mod h1:HmUyH2oD9m+GRpKq7q3vuRnm1F2Uczf/Nd1v3ipMSK8= +github.com/smartcontractkit/chainlink-common/pkg/chipingress v0.0.11-0.20260528204832-58c7145c53f8 h1:5O2qAtvBLzTHBeSIPcxt9i9BCqqOyeroVxN0xbXwoS0= +github.com/smartcontractkit/chainlink-common/pkg/chipingress v0.0.11-0.20260528204832-58c7145c53f8/go.mod h1:HmUyH2oD9m+GRpKq7q3vuRnm1F2Uczf/Nd1v3ipMSK8= github.com/smartcontractkit/chainlink-data-streams v0.1.15-0.20260522094612-5f9f748bd87a h1:8bIqv4r7SgDWkXL2Qz/Ijw+YjZY1uroIte3E2v2keVk= github.com/smartcontractkit/chainlink-data-streams v0.1.15-0.20260522094612-5f9f748bd87a/go.mod h1:dF5JiHWueHjYguUUUrFeb03MkcDqha/tssEkqTkgzp4= github.com/smartcontractkit/chainlink-deployments-framework v0.105.0 h1:Vp4EwkvxcBzgahIZdbWyCExDXLha93cS63xvwd2xwx8= @@ -1629,8 +1629,8 @@ github.com/smartcontractkit/chainlink-protos/storage-service v0.3.0 h1:B7itmjy+C github.com/smartcontractkit/chainlink-protos/storage-service v0.3.0/go.mod h1:h6kqaGajbNRrezm56zhx03p0mVmmA2xxj7E/M4ytLUA= github.com/smartcontractkit/chainlink-protos/svr v1.2.0 h1:7jjgqRgORQS/ikL3z0ZgJy95pzjhR9LuU1TVWg4BZ78= github.com/smartcontractkit/chainlink-protos/svr v1.2.0/go.mod h1:TcOliTQU6r59DwG4lo3U+mFM9WWyBHGuFkkxQpvSujo= -github.com/smartcontractkit/chainlink-protos/workflows/go v0.0.0-20260323124644-faea187e6997 h1:W0HKHO8eE8BckTRnhSdqjHKbJcnk068nEWYnWRu6tJY= -github.com/smartcontractkit/chainlink-protos/workflows/go v0.0.0-20260323124644-faea187e6997/go.mod h1:GTpDgyK0OObf7jpch6p8N281KxN92wbB8serZhU9yRc= +github.com/smartcontractkit/chainlink-protos/workflows/go v0.0.0-20260528173149-f5b8336b19d9 h1:LQy2j2+TdKLSWsUTUYuqmQPn8kjqCLjGI3ZJYGtDc08= +github.com/smartcontractkit/chainlink-protos/workflows/go v0.0.0-20260528173149-f5b8336b19d9/go.mod h1:GTpDgyK0OObf7jpch6p8N281KxN92wbB8serZhU9yRc= github.com/smartcontractkit/chainlink-solana v1.3.1-0.20260522172305-f71b70a4d020 h1:8bMEgrIdrff6CequbqHQOACd3ktgwlLf1XmQ6giPfNk= github.com/smartcontractkit/chainlink-solana v1.3.1-0.20260522172305-f71b70a4d020/go.mod h1:5uWu39vXphl2Ug0WyHqpB2UfltClSANBVenvGMpsDS8= github.com/smartcontractkit/chainlink-solana/contracts v0.0.0-20260513123719-d347eaf314e1 h1:/xvuNFI7DwOoTQnmAdYPDdY+sConn3RgZ2rMy/8AXlo= diff --git a/core/services/gateway/handlers/confidentialrelay/aggregator_test.go b/core/services/gateway/handlers/confidentialrelay/aggregator_test.go index 3abdd54f621..0391e0b7d5e 100644 --- a/core/services/gateway/handlers/confidentialrelay/aggregator_test.go +++ b/core/services/gateway/handlers/confidentialrelay/aggregator_test.go @@ -36,6 +36,11 @@ func validEnclaveConfig() relaytypes.EnclaveConfig { } } +func validEnclaveConfigPtr() *relaytypes.EnclaveConfig { + c := validEnclaveConfig() + return &c +} + func validCapParams(workflowID string) relaytypes.CapabilityRequestParams { return relaytypes.CapabilityRequestParams{ WorkflowID: workflowID, @@ -44,7 +49,7 @@ func validCapParams(workflowID string) relaytypes.CapabilityRequestParams { ReferenceID: "ref-1", CapabilityID: "cap-1", Payload: "in", - EnclaveConfig: validEnclaveConfig(), + EnclaveConfig: validEnclaveConfigPtr(), } } @@ -55,7 +60,7 @@ func validSecretsParams(workflowID string) relaytypes.SecretsRequestParams { ExecutionID: testExecutionID, Secrets: []relaytypes.SecretIdentifier{{Key: "k1", Namespace: "ns"}}, EnclavePublicKey: testEnclavePK, - EnclaveConfig: validEnclaveConfig(), + EnclaveConfig: validEnclaveConfigPtr(), } } diff --git a/deployment/go.mod b/deployment/go.mod index 2658497f829..11af6e85473 100644 --- a/deployment/go.mod +++ b/deployment/go.mod @@ -42,7 +42,7 @@ require ( github.com/smartcontractkit/chainlink-ccip/chains/solana v0.0.0-20260415165642-49f23e4d76cc github.com/smartcontractkit/chainlink-ccip/chains/solana/gobindings v0.0.0-20260511195239-0f6e1b177fc7 github.com/smartcontractkit/chainlink-ccip/deployment v0.0.0-20260504204047-af9826978b72 - github.com/smartcontractkit/chainlink-common v0.11.2-0.20260528150532-b12054695b25 + github.com/smartcontractkit/chainlink-common v0.11.2-0.20260602101458-208ae6ddea43 github.com/smartcontractkit/chainlink-common/keystore v1.1.0 github.com/smartcontractkit/chainlink-data-streams v0.1.15-0.20260522094612-5f9f748bd87a github.com/smartcontractkit/chainlink-deployments-framework v0.105.0 @@ -418,7 +418,7 @@ require ( github.com/smartcontractkit/chainlink-automation v0.8.1 // indirect github.com/smartcontractkit/chainlink-ccip/ccv/chains/evm v0.0.0-20260408145530-22e2d05695cd // indirect github.com/smartcontractkit/chainlink-ccv v0.0.2-0.20260428133800-3b1484e8b1fd // indirect - github.com/smartcontractkit/chainlink-common/pkg/chipingress v0.0.11-0.20260520194751-11a4f360f4e2 // indirect + github.com/smartcontractkit/chainlink-common/pkg/chipingress v0.0.11-0.20260528204832-58c7145c53f8 // indirect github.com/smartcontractkit/chainlink-feeds v0.1.2-0.20250227211209-7cd000095135 // indirect github.com/smartcontractkit/chainlink-framework/capabilities v0.0.0-20260423135514-5b1a7565a99c // indirect github.com/smartcontractkit/chainlink-framework/chains v0.0.0-20260423135514-5b1a7565a99c // indirect @@ -437,7 +437,7 @@ require ( github.com/smartcontractkit/chainlink-protos/rmn/v1.6/go v0.0.0-20250131130834-15e0d4cde2a6 // indirect github.com/smartcontractkit/chainlink-protos/storage-service v0.3.0 // indirect github.com/smartcontractkit/chainlink-protos/svr v1.2.0 // indirect - github.com/smartcontractkit/chainlink-protos/workflows/go v0.0.0-20260323124644-faea187e6997 // indirect + github.com/smartcontractkit/chainlink-protos/workflows/go v0.0.0-20260528173149-f5b8336b19d9 // indirect github.com/smartcontractkit/chainlink-testing-framework/parrot v0.6.2 // indirect github.com/smartcontractkit/chainlink-testing-framework/seth v1.51.5 // indirect github.com/smartcontractkit/chainlink-tron/relayer v0.0.11-0.20260408092456-3c6369888d4a // indirect diff --git a/deployment/go.sum b/deployment/go.sum index 78275c59c54..efded348531 100644 --- a/deployment/go.sum +++ b/deployment/go.sum @@ -1378,12 +1378,12 @@ github.com/smartcontractkit/chainlink-ccv v0.0.2-0.20260428133800-3b1484e8b1fd h github.com/smartcontractkit/chainlink-ccv v0.0.2-0.20260428133800-3b1484e8b1fd/go.mod h1:SBN8Urnh5sQvrQRbSo1Nr8coWatHg8LZoPw3R/42sho= github.com/smartcontractkit/chainlink-ccv/deployment v0.0.2-0.20260428205321-9ce8f4c44d23 h1:1Rt4HLpwbRN1YtBFcbsxSJYIiUP2wJ11qizevOEeCrs= github.com/smartcontractkit/chainlink-ccv/deployment v0.0.2-0.20260428205321-9ce8f4c44d23/go.mod h1:V+wrhuNve+JiFwoBr25d6y0lL1rYSCSJhTFyloL3ueo= -github.com/smartcontractkit/chainlink-common v0.11.2-0.20260528150532-b12054695b25 h1:hhPlsgzyfvcohAVSqh4vNyr88icCUVvJ/CNSD7gBZIc= -github.com/smartcontractkit/chainlink-common v0.11.2-0.20260528150532-b12054695b25/go.mod h1:jueIfDkkRexwGgLbVB7vGCZlNtd383zuwi4uHHwcbqc= +github.com/smartcontractkit/chainlink-common v0.11.2-0.20260602101458-208ae6ddea43 h1:SsdcAiY6/MDPV93o2P6JRaooIA088OZFTT3ohOKSS3U= +github.com/smartcontractkit/chainlink-common v0.11.2-0.20260602101458-208ae6ddea43/go.mod h1:6jgqiFXFJHqjkvFFmuf8gvoUFa6Ygx/D1tKnIL+CCF8= github.com/smartcontractkit/chainlink-common/keystore v1.1.0 h1:2wzySccgk2fpWusPKO0bpeAZzfSU9eq6CS5U+JwYaVo= github.com/smartcontractkit/chainlink-common/keystore v1.1.0/go.mod h1:6JexOOhPhknQ0QMuppFIlOpm6wCp54yZMxai+tWugwY= -github.com/smartcontractkit/chainlink-common/pkg/chipingress v0.0.11-0.20260520194751-11a4f360f4e2 h1:22H/CQy2L1unVJ2KEViEqvM8evJLSIqJxEdfDeXB4o8= -github.com/smartcontractkit/chainlink-common/pkg/chipingress v0.0.11-0.20260520194751-11a4f360f4e2/go.mod h1:HmUyH2oD9m+GRpKq7q3vuRnm1F2Uczf/Nd1v3ipMSK8= +github.com/smartcontractkit/chainlink-common/pkg/chipingress v0.0.11-0.20260528204832-58c7145c53f8 h1:5O2qAtvBLzTHBeSIPcxt9i9BCqqOyeroVxN0xbXwoS0= +github.com/smartcontractkit/chainlink-common/pkg/chipingress v0.0.11-0.20260528204832-58c7145c53f8/go.mod h1:HmUyH2oD9m+GRpKq7q3vuRnm1F2Uczf/Nd1v3ipMSK8= github.com/smartcontractkit/chainlink-data-streams v0.1.15-0.20260522094612-5f9f748bd87a h1:8bIqv4r7SgDWkXL2Qz/Ijw+YjZY1uroIte3E2v2keVk= github.com/smartcontractkit/chainlink-data-streams v0.1.15-0.20260522094612-5f9f748bd87a/go.mod h1:dF5JiHWueHjYguUUUrFeb03MkcDqha/tssEkqTkgzp4= github.com/smartcontractkit/chainlink-deployments-framework v0.105.0 h1:Vp4EwkvxcBzgahIZdbWyCExDXLha93cS63xvwd2xwx8= @@ -1436,8 +1436,8 @@ github.com/smartcontractkit/chainlink-protos/storage-service v0.3.0 h1:B7itmjy+C github.com/smartcontractkit/chainlink-protos/storage-service v0.3.0/go.mod h1:h6kqaGajbNRrezm56zhx03p0mVmmA2xxj7E/M4ytLUA= github.com/smartcontractkit/chainlink-protos/svr v1.2.0 h1:7jjgqRgORQS/ikL3z0ZgJy95pzjhR9LuU1TVWg4BZ78= github.com/smartcontractkit/chainlink-protos/svr v1.2.0/go.mod h1:TcOliTQU6r59DwG4lo3U+mFM9WWyBHGuFkkxQpvSujo= -github.com/smartcontractkit/chainlink-protos/workflows/go v0.0.0-20260323124644-faea187e6997 h1:W0HKHO8eE8BckTRnhSdqjHKbJcnk068nEWYnWRu6tJY= -github.com/smartcontractkit/chainlink-protos/workflows/go v0.0.0-20260323124644-faea187e6997/go.mod h1:GTpDgyK0OObf7jpch6p8N281KxN92wbB8serZhU9yRc= +github.com/smartcontractkit/chainlink-protos/workflows/go v0.0.0-20260528173149-f5b8336b19d9 h1:LQy2j2+TdKLSWsUTUYuqmQPn8kjqCLjGI3ZJYGtDc08= +github.com/smartcontractkit/chainlink-protos/workflows/go v0.0.0-20260528173149-f5b8336b19d9/go.mod h1:GTpDgyK0OObf7jpch6p8N281KxN92wbB8serZhU9yRc= github.com/smartcontractkit/chainlink-solana v1.3.1-0.20260522172305-f71b70a4d020 h1:8bMEgrIdrff6CequbqHQOACd3ktgwlLf1XmQ6giPfNk= github.com/smartcontractkit/chainlink-solana v1.3.1-0.20260522172305-f71b70a4d020/go.mod h1:5uWu39vXphl2Ug0WyHqpB2UfltClSANBVenvGMpsDS8= github.com/smartcontractkit/chainlink-solana/contracts v0.0.0-20260513123719-d347eaf314e1 h1:/xvuNFI7DwOoTQnmAdYPDdY+sConn3RgZ2rMy/8AXlo= diff --git a/go.mod b/go.mod index 11efed0507d..212529a466d 100644 --- a/go.mod +++ b/go.mod @@ -84,9 +84,9 @@ require ( github.com/smartcontractkit/chainlink-ccip/chains/solana v0.0.0-20260415165642-49f23e4d76cc github.com/smartcontractkit/chainlink-ccip/chains/solana/gobindings v0.0.0-20260415165642-49f23e4d76cc github.com/smartcontractkit/chainlink-ccv v0.0.2-0.20260428133800-3b1484e8b1fd - github.com/smartcontractkit/chainlink-common v0.11.2-0.20260528150532-b12054695b25 + github.com/smartcontractkit/chainlink-common v0.11.2-0.20260602101458-208ae6ddea43 github.com/smartcontractkit/chainlink-common/keystore v1.1.0 - github.com/smartcontractkit/chainlink-common/pkg/chipingress v0.0.11-0.20260520194751-11a4f360f4e2 + github.com/smartcontractkit/chainlink-common/pkg/chipingress v0.0.11-0.20260528204832-58c7145c53f8 github.com/smartcontractkit/chainlink-data-streams v0.1.15-0.20260522094612-5f9f748bd87a github.com/smartcontractkit/chainlink-evm v0.3.4-0.20260527175653-b78bae59d823 github.com/smartcontractkit/chainlink-evm/contracts/cre/gobindings v0.0.0-20260403151002-2c91155b5501 @@ -103,7 +103,7 @@ require ( github.com/smartcontractkit/chainlink-protos/orchestrator v0.10.0 github.com/smartcontractkit/chainlink-protos/ring/go v0.0.0-20260331131315-f08a616d8dcd github.com/smartcontractkit/chainlink-protos/storage-service v0.3.0 - github.com/smartcontractkit/chainlink-protos/workflows/go v0.0.0-20260323124644-faea187e6997 + github.com/smartcontractkit/chainlink-protos/workflows/go v0.0.0-20260528173149-f5b8336b19d9 github.com/smartcontractkit/chainlink-solana v1.3.1-0.20260522172305-f71b70a4d020 github.com/smartcontractkit/chainlink-sui v0.0.0-20260527160341-aa3adc0abf67 github.com/smartcontractkit/chainlink-ton v1.0.5-0.20260520103847-15ca4de9dba9 diff --git a/go.sum b/go.sum index 1f5191e9c2f..41b9a625362 100644 --- a/go.sum +++ b/go.sum @@ -1177,12 +1177,12 @@ github.com/smartcontractkit/chainlink-ccip/chains/solana/gobindings v0.0.0-20260 github.com/smartcontractkit/chainlink-ccip/chains/solana/gobindings v0.0.0-20260415165642-49f23e4d76cc/go.mod h1:67YbnoglYD61Pz/jTVCgav9wFq7S35OU8UyQSvPllRw= github.com/smartcontractkit/chainlink-ccv v0.0.2-0.20260428133800-3b1484e8b1fd h1:IMopuENFVS63AerRELdfWo6o60UNUidcldJOxJLmk24= github.com/smartcontractkit/chainlink-ccv v0.0.2-0.20260428133800-3b1484e8b1fd/go.mod h1:SBN8Urnh5sQvrQRbSo1Nr8coWatHg8LZoPw3R/42sho= -github.com/smartcontractkit/chainlink-common v0.11.2-0.20260528150532-b12054695b25 h1:hhPlsgzyfvcohAVSqh4vNyr88icCUVvJ/CNSD7gBZIc= -github.com/smartcontractkit/chainlink-common v0.11.2-0.20260528150532-b12054695b25/go.mod h1:jueIfDkkRexwGgLbVB7vGCZlNtd383zuwi4uHHwcbqc= +github.com/smartcontractkit/chainlink-common v0.11.2-0.20260602101458-208ae6ddea43 h1:SsdcAiY6/MDPV93o2P6JRaooIA088OZFTT3ohOKSS3U= +github.com/smartcontractkit/chainlink-common v0.11.2-0.20260602101458-208ae6ddea43/go.mod h1:6jgqiFXFJHqjkvFFmuf8gvoUFa6Ygx/D1tKnIL+CCF8= github.com/smartcontractkit/chainlink-common/keystore v1.1.0 h1:2wzySccgk2fpWusPKO0bpeAZzfSU9eq6CS5U+JwYaVo= github.com/smartcontractkit/chainlink-common/keystore v1.1.0/go.mod h1:6JexOOhPhknQ0QMuppFIlOpm6wCp54yZMxai+tWugwY= -github.com/smartcontractkit/chainlink-common/pkg/chipingress v0.0.11-0.20260520194751-11a4f360f4e2 h1:22H/CQy2L1unVJ2KEViEqvM8evJLSIqJxEdfDeXB4o8= -github.com/smartcontractkit/chainlink-common/pkg/chipingress v0.0.11-0.20260520194751-11a4f360f4e2/go.mod h1:HmUyH2oD9m+GRpKq7q3vuRnm1F2Uczf/Nd1v3ipMSK8= +github.com/smartcontractkit/chainlink-common/pkg/chipingress v0.0.11-0.20260528204832-58c7145c53f8 h1:5O2qAtvBLzTHBeSIPcxt9i9BCqqOyeroVxN0xbXwoS0= +github.com/smartcontractkit/chainlink-common/pkg/chipingress v0.0.11-0.20260528204832-58c7145c53f8/go.mod h1:HmUyH2oD9m+GRpKq7q3vuRnm1F2Uczf/Nd1v3ipMSK8= github.com/smartcontractkit/chainlink-data-streams v0.1.15-0.20260522094612-5f9f748bd87a h1:8bIqv4r7SgDWkXL2Qz/Ijw+YjZY1uroIte3E2v2keVk= github.com/smartcontractkit/chainlink-data-streams v0.1.15-0.20260522094612-5f9f748bd87a/go.mod h1:dF5JiHWueHjYguUUUrFeb03MkcDqha/tssEkqTkgzp4= github.com/smartcontractkit/chainlink-evm v0.3.4-0.20260527175653-b78bae59d823 h1:TsRkbimQWtBnDqT5IdUXuy9kS4NU3xN54CpaLeRNHLw= @@ -1229,8 +1229,8 @@ github.com/smartcontractkit/chainlink-protos/storage-service v0.3.0 h1:B7itmjy+C github.com/smartcontractkit/chainlink-protos/storage-service v0.3.0/go.mod h1:h6kqaGajbNRrezm56zhx03p0mVmmA2xxj7E/M4ytLUA= github.com/smartcontractkit/chainlink-protos/svr v1.2.0 h1:7jjgqRgORQS/ikL3z0ZgJy95pzjhR9LuU1TVWg4BZ78= github.com/smartcontractkit/chainlink-protos/svr v1.2.0/go.mod h1:TcOliTQU6r59DwG4lo3U+mFM9WWyBHGuFkkxQpvSujo= -github.com/smartcontractkit/chainlink-protos/workflows/go v0.0.0-20260323124644-faea187e6997 h1:W0HKHO8eE8BckTRnhSdqjHKbJcnk068nEWYnWRu6tJY= -github.com/smartcontractkit/chainlink-protos/workflows/go v0.0.0-20260323124644-faea187e6997/go.mod h1:GTpDgyK0OObf7jpch6p8N281KxN92wbB8serZhU9yRc= +github.com/smartcontractkit/chainlink-protos/workflows/go v0.0.0-20260528173149-f5b8336b19d9 h1:LQy2j2+TdKLSWsUTUYuqmQPn8kjqCLjGI3ZJYGtDc08= +github.com/smartcontractkit/chainlink-protos/workflows/go v0.0.0-20260528173149-f5b8336b19d9/go.mod h1:GTpDgyK0OObf7jpch6p8N281KxN92wbB8serZhU9yRc= github.com/smartcontractkit/chainlink-solana v1.3.1-0.20260522172305-f71b70a4d020 h1:8bMEgrIdrff6CequbqHQOACd3ktgwlLf1XmQ6giPfNk= github.com/smartcontractkit/chainlink-solana v1.3.1-0.20260522172305-f71b70a4d020/go.mod h1:5uWu39vXphl2Ug0WyHqpB2UfltClSANBVenvGMpsDS8= github.com/smartcontractkit/chainlink-sui v0.0.0-20260527160341-aa3adc0abf67 h1:NNvPOgvf5vbOYVLxLST+5E88iPOAnpmzZGPihEx8DFc= diff --git a/integration-tests/go.mod b/integration-tests/go.mod index 5648c07f6e9..644218b71d5 100644 --- a/integration-tests/go.mod +++ b/integration-tests/go.mod @@ -29,7 +29,7 @@ require ( github.com/smartcontractkit/chainlink-ccip/chains/evm v0.0.0-20260506144252-c100eabfda74 github.com/smartcontractkit/chainlink-ccip/chains/solana v0.0.0-20260506144252-c100eabfda74 github.com/smartcontractkit/chainlink-ccip/chains/solana/gobindings v0.0.0-20260511195239-0f6e1b177fc7 - github.com/smartcontractkit/chainlink-common v0.11.2-0.20260528150532-b12054695b25 + github.com/smartcontractkit/chainlink-common v0.11.2-0.20260602101458-208ae6ddea43 github.com/smartcontractkit/chainlink-common/keystore v1.1.0 github.com/smartcontractkit/chainlink-deployments-framework v0.105.0 github.com/smartcontractkit/chainlink-evm v0.3.4-0.20260527175653-b78bae59d823 @@ -394,7 +394,7 @@ require ( github.com/smartcontractkit/chainlink-ccip/ccv/chains/evm v0.0.0-20260408145530-22e2d05695cd // indirect github.com/smartcontractkit/chainlink-ccip/deployment v0.0.0-20260504204047-af9826978b72 // indirect github.com/smartcontractkit/chainlink-ccv v0.0.2-0.20260428133800-3b1484e8b1fd // indirect - github.com/smartcontractkit/chainlink-common/pkg/chipingress v0.0.11-0.20260520194751-11a4f360f4e2 // indirect + github.com/smartcontractkit/chainlink-common/pkg/chipingress v0.0.11-0.20260528204832-58c7145c53f8 // indirect github.com/smartcontractkit/chainlink-data-streams v0.1.15-0.20260522094612-5f9f748bd87a // indirect github.com/smartcontractkit/chainlink-evm/contracts/cre/gobindings v0.0.0-20260403151002-2c91155b5501 // indirect github.com/smartcontractkit/chainlink-feeds v0.1.2-0.20250227211209-7cd000095135 // indirect @@ -417,7 +417,7 @@ require ( github.com/smartcontractkit/chainlink-protos/rmn/v1.6/go v0.0.0-20250131130834-15e0d4cde2a6 // indirect github.com/smartcontractkit/chainlink-protos/storage-service v0.3.0 // indirect github.com/smartcontractkit/chainlink-protos/svr v1.2.0 // indirect - github.com/smartcontractkit/chainlink-protos/workflows/go v0.0.0-20260323124644-faea187e6997 // indirect + github.com/smartcontractkit/chainlink-protos/workflows/go v0.0.0-20260528173149-f5b8336b19d9 // indirect github.com/smartcontractkit/chainlink-solana v1.3.1-0.20260522172305-f71b70a4d020 // indirect github.com/smartcontractkit/chainlink-testing-framework/framework v0.16.1 // indirect github.com/smartcontractkit/chainlink-ton v1.0.5-0.20260520103847-15ca4de9dba9 // indirect diff --git a/integration-tests/go.sum b/integration-tests/go.sum index c01033ab349..67fc5bcc8b4 100644 --- a/integration-tests/go.sum +++ b/integration-tests/go.sum @@ -1363,12 +1363,12 @@ github.com/smartcontractkit/chainlink-ccv v0.0.2-0.20260428133800-3b1484e8b1fd h github.com/smartcontractkit/chainlink-ccv v0.0.2-0.20260428133800-3b1484e8b1fd/go.mod h1:SBN8Urnh5sQvrQRbSo1Nr8coWatHg8LZoPw3R/42sho= github.com/smartcontractkit/chainlink-ccv/deployment v0.0.2-0.20260428205321-9ce8f4c44d23 h1:1Rt4HLpwbRN1YtBFcbsxSJYIiUP2wJ11qizevOEeCrs= github.com/smartcontractkit/chainlink-ccv/deployment v0.0.2-0.20260428205321-9ce8f4c44d23/go.mod h1:V+wrhuNve+JiFwoBr25d6y0lL1rYSCSJhTFyloL3ueo= -github.com/smartcontractkit/chainlink-common v0.11.2-0.20260528150532-b12054695b25 h1:hhPlsgzyfvcohAVSqh4vNyr88icCUVvJ/CNSD7gBZIc= -github.com/smartcontractkit/chainlink-common v0.11.2-0.20260528150532-b12054695b25/go.mod h1:jueIfDkkRexwGgLbVB7vGCZlNtd383zuwi4uHHwcbqc= +github.com/smartcontractkit/chainlink-common v0.11.2-0.20260602101458-208ae6ddea43 h1:SsdcAiY6/MDPV93o2P6JRaooIA088OZFTT3ohOKSS3U= +github.com/smartcontractkit/chainlink-common v0.11.2-0.20260602101458-208ae6ddea43/go.mod h1:6jgqiFXFJHqjkvFFmuf8gvoUFa6Ygx/D1tKnIL+CCF8= github.com/smartcontractkit/chainlink-common/keystore v1.1.0 h1:2wzySccgk2fpWusPKO0bpeAZzfSU9eq6CS5U+JwYaVo= github.com/smartcontractkit/chainlink-common/keystore v1.1.0/go.mod h1:6JexOOhPhknQ0QMuppFIlOpm6wCp54yZMxai+tWugwY= -github.com/smartcontractkit/chainlink-common/pkg/chipingress v0.0.11-0.20260520194751-11a4f360f4e2 h1:22H/CQy2L1unVJ2KEViEqvM8evJLSIqJxEdfDeXB4o8= -github.com/smartcontractkit/chainlink-common/pkg/chipingress v0.0.11-0.20260520194751-11a4f360f4e2/go.mod h1:HmUyH2oD9m+GRpKq7q3vuRnm1F2Uczf/Nd1v3ipMSK8= +github.com/smartcontractkit/chainlink-common/pkg/chipingress v0.0.11-0.20260528204832-58c7145c53f8 h1:5O2qAtvBLzTHBeSIPcxt9i9BCqqOyeroVxN0xbXwoS0= +github.com/smartcontractkit/chainlink-common/pkg/chipingress v0.0.11-0.20260528204832-58c7145c53f8/go.mod h1:HmUyH2oD9m+GRpKq7q3vuRnm1F2Uczf/Nd1v3ipMSK8= github.com/smartcontractkit/chainlink-data-streams v0.1.15-0.20260522094612-5f9f748bd87a h1:8bIqv4r7SgDWkXL2Qz/Ijw+YjZY1uroIte3E2v2keVk= github.com/smartcontractkit/chainlink-data-streams v0.1.15-0.20260522094612-5f9f748bd87a/go.mod h1:dF5JiHWueHjYguUUUrFeb03MkcDqha/tssEkqTkgzp4= github.com/smartcontractkit/chainlink-deployments-framework v0.105.0 h1:Vp4EwkvxcBzgahIZdbWyCExDXLha93cS63xvwd2xwx8= @@ -1421,8 +1421,8 @@ github.com/smartcontractkit/chainlink-protos/storage-service v0.3.0 h1:B7itmjy+C github.com/smartcontractkit/chainlink-protos/storage-service v0.3.0/go.mod h1:h6kqaGajbNRrezm56zhx03p0mVmmA2xxj7E/M4ytLUA= github.com/smartcontractkit/chainlink-protos/svr v1.2.0 h1:7jjgqRgORQS/ikL3z0ZgJy95pzjhR9LuU1TVWg4BZ78= github.com/smartcontractkit/chainlink-protos/svr v1.2.0/go.mod h1:TcOliTQU6r59DwG4lo3U+mFM9WWyBHGuFkkxQpvSujo= -github.com/smartcontractkit/chainlink-protos/workflows/go v0.0.0-20260323124644-faea187e6997 h1:W0HKHO8eE8BckTRnhSdqjHKbJcnk068nEWYnWRu6tJY= -github.com/smartcontractkit/chainlink-protos/workflows/go v0.0.0-20260323124644-faea187e6997/go.mod h1:GTpDgyK0OObf7jpch6p8N281KxN92wbB8serZhU9yRc= +github.com/smartcontractkit/chainlink-protos/workflows/go v0.0.0-20260528173149-f5b8336b19d9 h1:LQy2j2+TdKLSWsUTUYuqmQPn8kjqCLjGI3ZJYGtDc08= +github.com/smartcontractkit/chainlink-protos/workflows/go v0.0.0-20260528173149-f5b8336b19d9/go.mod h1:GTpDgyK0OObf7jpch6p8N281KxN92wbB8serZhU9yRc= github.com/smartcontractkit/chainlink-solana v1.3.1-0.20260522172305-f71b70a4d020 h1:8bMEgrIdrff6CequbqHQOACd3ktgwlLf1XmQ6giPfNk= github.com/smartcontractkit/chainlink-solana v1.3.1-0.20260522172305-f71b70a4d020/go.mod h1:5uWu39vXphl2Ug0WyHqpB2UfltClSANBVenvGMpsDS8= github.com/smartcontractkit/chainlink-sui v0.0.0-20260527160341-aa3adc0abf67 h1:NNvPOgvf5vbOYVLxLST+5E88iPOAnpmzZGPihEx8DFc= diff --git a/integration-tests/load/go.mod b/integration-tests/load/go.mod index 33e3baf94e4..290be72e25b 100644 --- a/integration-tests/load/go.mod +++ b/integration-tests/load/go.mod @@ -20,7 +20,7 @@ require ( github.com/smartcontractkit/chainlink-ccip/chains/evm v0.0.0-20260506144252-c100eabfda74 github.com/smartcontractkit/chainlink-ccip/chains/solana v0.0.0-20260506144252-c100eabfda74 github.com/smartcontractkit/chainlink-ccip/chains/solana/gobindings v0.0.0-20260511195239-0f6e1b177fc7 - github.com/smartcontractkit/chainlink-common v0.11.2-0.20260528150532-b12054695b25 + github.com/smartcontractkit/chainlink-common v0.11.2-0.20260602101458-208ae6ddea43 github.com/smartcontractkit/chainlink-deployments-framework v0.105.0 github.com/smartcontractkit/chainlink-evm v0.3.4-0.20260527175653-b78bae59d823 github.com/smartcontractkit/chainlink-testing-framework/framework v0.16.1 @@ -475,7 +475,7 @@ require ( github.com/smartcontractkit/chainlink-ccip/deployment v0.0.0-20260504204047-af9826978b72 // indirect github.com/smartcontractkit/chainlink-ccv v0.0.2-0.20260428133800-3b1484e8b1fd // indirect github.com/smartcontractkit/chainlink-common/keystore v1.1.0 // indirect - github.com/smartcontractkit/chainlink-common/pkg/chipingress v0.0.11-0.20260520194751-11a4f360f4e2 // indirect + github.com/smartcontractkit/chainlink-common/pkg/chipingress v0.0.11-0.20260528204832-58c7145c53f8 // indirect github.com/smartcontractkit/chainlink-data-streams v0.1.15-0.20260522094612-5f9f748bd87a // indirect github.com/smartcontractkit/chainlink-evm/contracts/cre/gobindings v0.0.0-20260403151002-2c91155b5501 // indirect github.com/smartcontractkit/chainlink-evm/gethwrappers v0.0.0-20260521215851-3fdbb363496f // indirect @@ -500,7 +500,7 @@ require ( github.com/smartcontractkit/chainlink-protos/rmn/v1.6/go v0.0.0-20250131130834-15e0d4cde2a6 // indirect github.com/smartcontractkit/chainlink-protos/storage-service v0.3.0 // indirect github.com/smartcontractkit/chainlink-protos/svr v1.2.0 // indirect - github.com/smartcontractkit/chainlink-protos/workflows/go v0.0.0-20260323124644-faea187e6997 // indirect + github.com/smartcontractkit/chainlink-protos/workflows/go v0.0.0-20260528173149-f5b8336b19d9 // indirect github.com/smartcontractkit/chainlink-solana v1.3.1-0.20260522172305-f71b70a4d020 // indirect github.com/smartcontractkit/chainlink-sui v0.0.0-20260527160341-aa3adc0abf67 // indirect github.com/smartcontractkit/chainlink-sui/deployment v0.0.0-20260527160341-aa3adc0abf67 // indirect diff --git a/integration-tests/load/go.sum b/integration-tests/load/go.sum index c00a17a0c04..fe0cd8f56cb 100644 --- a/integration-tests/load/go.sum +++ b/integration-tests/load/go.sum @@ -1629,12 +1629,12 @@ github.com/smartcontractkit/chainlink-ccv v0.0.2-0.20260428133800-3b1484e8b1fd h github.com/smartcontractkit/chainlink-ccv v0.0.2-0.20260428133800-3b1484e8b1fd/go.mod h1:SBN8Urnh5sQvrQRbSo1Nr8coWatHg8LZoPw3R/42sho= github.com/smartcontractkit/chainlink-ccv/deployment v0.0.2-0.20260428205321-9ce8f4c44d23 h1:1Rt4HLpwbRN1YtBFcbsxSJYIiUP2wJ11qizevOEeCrs= github.com/smartcontractkit/chainlink-ccv/deployment v0.0.2-0.20260428205321-9ce8f4c44d23/go.mod h1:V+wrhuNve+JiFwoBr25d6y0lL1rYSCSJhTFyloL3ueo= -github.com/smartcontractkit/chainlink-common v0.11.2-0.20260528150532-b12054695b25 h1:hhPlsgzyfvcohAVSqh4vNyr88icCUVvJ/CNSD7gBZIc= -github.com/smartcontractkit/chainlink-common v0.11.2-0.20260528150532-b12054695b25/go.mod h1:jueIfDkkRexwGgLbVB7vGCZlNtd383zuwi4uHHwcbqc= +github.com/smartcontractkit/chainlink-common v0.11.2-0.20260602101458-208ae6ddea43 h1:SsdcAiY6/MDPV93o2P6JRaooIA088OZFTT3ohOKSS3U= +github.com/smartcontractkit/chainlink-common v0.11.2-0.20260602101458-208ae6ddea43/go.mod h1:6jgqiFXFJHqjkvFFmuf8gvoUFa6Ygx/D1tKnIL+CCF8= github.com/smartcontractkit/chainlink-common/keystore v1.1.0 h1:2wzySccgk2fpWusPKO0bpeAZzfSU9eq6CS5U+JwYaVo= github.com/smartcontractkit/chainlink-common/keystore v1.1.0/go.mod h1:6JexOOhPhknQ0QMuppFIlOpm6wCp54yZMxai+tWugwY= -github.com/smartcontractkit/chainlink-common/pkg/chipingress v0.0.11-0.20260520194751-11a4f360f4e2 h1:22H/CQy2L1unVJ2KEViEqvM8evJLSIqJxEdfDeXB4o8= -github.com/smartcontractkit/chainlink-common/pkg/chipingress v0.0.11-0.20260520194751-11a4f360f4e2/go.mod h1:HmUyH2oD9m+GRpKq7q3vuRnm1F2Uczf/Nd1v3ipMSK8= +github.com/smartcontractkit/chainlink-common/pkg/chipingress v0.0.11-0.20260528204832-58c7145c53f8 h1:5O2qAtvBLzTHBeSIPcxt9i9BCqqOyeroVxN0xbXwoS0= +github.com/smartcontractkit/chainlink-common/pkg/chipingress v0.0.11-0.20260528204832-58c7145c53f8/go.mod h1:HmUyH2oD9m+GRpKq7q3vuRnm1F2Uczf/Nd1v3ipMSK8= github.com/smartcontractkit/chainlink-data-streams v0.1.15-0.20260522094612-5f9f748bd87a h1:8bIqv4r7SgDWkXL2Qz/Ijw+YjZY1uroIte3E2v2keVk= github.com/smartcontractkit/chainlink-data-streams v0.1.15-0.20260522094612-5f9f748bd87a/go.mod h1:dF5JiHWueHjYguUUUrFeb03MkcDqha/tssEkqTkgzp4= github.com/smartcontractkit/chainlink-deployments-framework v0.105.0 h1:Vp4EwkvxcBzgahIZdbWyCExDXLha93cS63xvwd2xwx8= @@ -1687,8 +1687,8 @@ github.com/smartcontractkit/chainlink-protos/storage-service v0.3.0 h1:B7itmjy+C github.com/smartcontractkit/chainlink-protos/storage-service v0.3.0/go.mod h1:h6kqaGajbNRrezm56zhx03p0mVmmA2xxj7E/M4ytLUA= github.com/smartcontractkit/chainlink-protos/svr v1.2.0 h1:7jjgqRgORQS/ikL3z0ZgJy95pzjhR9LuU1TVWg4BZ78= github.com/smartcontractkit/chainlink-protos/svr v1.2.0/go.mod h1:TcOliTQU6r59DwG4lo3U+mFM9WWyBHGuFkkxQpvSujo= -github.com/smartcontractkit/chainlink-protos/workflows/go v0.0.0-20260323124644-faea187e6997 h1:W0HKHO8eE8BckTRnhSdqjHKbJcnk068nEWYnWRu6tJY= -github.com/smartcontractkit/chainlink-protos/workflows/go v0.0.0-20260323124644-faea187e6997/go.mod h1:GTpDgyK0OObf7jpch6p8N281KxN92wbB8serZhU9yRc= +github.com/smartcontractkit/chainlink-protos/workflows/go v0.0.0-20260528173149-f5b8336b19d9 h1:LQy2j2+TdKLSWsUTUYuqmQPn8kjqCLjGI3ZJYGtDc08= +github.com/smartcontractkit/chainlink-protos/workflows/go v0.0.0-20260528173149-f5b8336b19d9/go.mod h1:GTpDgyK0OObf7jpch6p8N281KxN92wbB8serZhU9yRc= github.com/smartcontractkit/chainlink-solana v1.3.1-0.20260522172305-f71b70a4d020 h1:8bMEgrIdrff6CequbqHQOACd3ktgwlLf1XmQ6giPfNk= github.com/smartcontractkit/chainlink-solana v1.3.1-0.20260522172305-f71b70a4d020/go.mod h1:5uWu39vXphl2Ug0WyHqpB2UfltClSANBVenvGMpsDS8= github.com/smartcontractkit/chainlink-sui v0.0.0-20260527160341-aa3adc0abf67 h1:NNvPOgvf5vbOYVLxLST+5E88iPOAnpmzZGPihEx8DFc= diff --git a/system-tests/lib/go.mod b/system-tests/lib/go.mod index 86c1c163e68..e1b62f26c53 100644 --- a/system-tests/lib/go.mod +++ b/system-tests/lib/go.mod @@ -33,7 +33,7 @@ require ( github.com/smartcontractkit/chain-selectors v1.0.101 github.com/smartcontractkit/chainlink-aptos v0.0.0-20260507123701-77fc93b573bb github.com/smartcontractkit/chainlink-ccip/chains/solana v0.0.0-20260415165642-49f23e4d76cc - github.com/smartcontractkit/chainlink-common v0.11.2-0.20260528150532-b12054695b25 + github.com/smartcontractkit/chainlink-common v0.11.2-0.20260602101458-208ae6ddea43 github.com/smartcontractkit/chainlink-common/keystore v1.1.0 github.com/smartcontractkit/chainlink-deployments-framework v0.105.0 github.com/smartcontractkit/chainlink-evm v0.3.4-0.20260527175653-b78bae59d823 @@ -41,7 +41,7 @@ require ( github.com/smartcontractkit/chainlink-protos/cre/go v0.0.0-20260526195338-adcf8013a1b7 github.com/smartcontractkit/chainlink-protos/job-distributor v0.18.0 github.com/smartcontractkit/chainlink-protos/linking-service/go v0.0.0-20260512230622-65f10f4cd305 - github.com/smartcontractkit/chainlink-protos/workflows/go v0.0.0-20260323124644-faea187e6997 + github.com/smartcontractkit/chainlink-protos/workflows/go v0.0.0-20260528173149-f5b8336b19d9 github.com/smartcontractkit/chainlink-testing-framework/framework v0.16.2 github.com/smartcontractkit/chainlink-testing-framework/framework/components/chiprouter v1.0.4 github.com/smartcontractkit/chainlink-testing-framework/framework/components/dockercompose v0.1.23 @@ -446,7 +446,7 @@ require ( github.com/smartcontractkit/chainlink-ccip/chains/evm v0.0.0-20260506144252-c100eabfda74 // indirect github.com/smartcontractkit/chainlink-ccip/chains/solana/gobindings v0.0.0-20260511195239-0f6e1b177fc7 // indirect github.com/smartcontractkit/chainlink-ccv v0.0.2-0.20260428133800-3b1484e8b1fd // indirect - github.com/smartcontractkit/chainlink-common/pkg/chipingress v0.0.11-0.20260520194751-11a4f360f4e2 // indirect + github.com/smartcontractkit/chainlink-common/pkg/chipingress v0.0.11-0.20260528204832-58c7145c53f8 // indirect github.com/smartcontractkit/chainlink-data-streams v0.1.15-0.20260522094612-5f9f748bd87a // indirect github.com/smartcontractkit/chainlink-evm/contracts/cre/gobindings v0.0.0-20260403151002-2c91155b5501 // indirect github.com/smartcontractkit/chainlink-feeds v0.1.2-0.20250227211209-7cd000095135 // indirect diff --git a/system-tests/lib/go.sum b/system-tests/lib/go.sum index aabd383298e..d6b43279676 100644 --- a/system-tests/lib/go.sum +++ b/system-tests/lib/go.sum @@ -1538,12 +1538,12 @@ github.com/smartcontractkit/chainlink-ccip/chains/solana/gobindings v0.0.0-20260 github.com/smartcontractkit/chainlink-ccip/chains/solana/gobindings v0.0.0-20260511195239-0f6e1b177fc7/go.mod h1:67YbnoglYD61Pz/jTVCgav9wFq7S35OU8UyQSvPllRw= github.com/smartcontractkit/chainlink-ccv v0.0.2-0.20260428133800-3b1484e8b1fd h1:IMopuENFVS63AerRELdfWo6o60UNUidcldJOxJLmk24= github.com/smartcontractkit/chainlink-ccv v0.0.2-0.20260428133800-3b1484e8b1fd/go.mod h1:SBN8Urnh5sQvrQRbSo1Nr8coWatHg8LZoPw3R/42sho= -github.com/smartcontractkit/chainlink-common v0.11.2-0.20260528150532-b12054695b25 h1:hhPlsgzyfvcohAVSqh4vNyr88icCUVvJ/CNSD7gBZIc= -github.com/smartcontractkit/chainlink-common v0.11.2-0.20260528150532-b12054695b25/go.mod h1:jueIfDkkRexwGgLbVB7vGCZlNtd383zuwi4uHHwcbqc= +github.com/smartcontractkit/chainlink-common v0.11.2-0.20260602101458-208ae6ddea43 h1:SsdcAiY6/MDPV93o2P6JRaooIA088OZFTT3ohOKSS3U= +github.com/smartcontractkit/chainlink-common v0.11.2-0.20260602101458-208ae6ddea43/go.mod h1:6jgqiFXFJHqjkvFFmuf8gvoUFa6Ygx/D1tKnIL+CCF8= github.com/smartcontractkit/chainlink-common/keystore v1.1.0 h1:2wzySccgk2fpWusPKO0bpeAZzfSU9eq6CS5U+JwYaVo= github.com/smartcontractkit/chainlink-common/keystore v1.1.0/go.mod h1:6JexOOhPhknQ0QMuppFIlOpm6wCp54yZMxai+tWugwY= -github.com/smartcontractkit/chainlink-common/pkg/chipingress v0.0.11-0.20260520194751-11a4f360f4e2 h1:22H/CQy2L1unVJ2KEViEqvM8evJLSIqJxEdfDeXB4o8= -github.com/smartcontractkit/chainlink-common/pkg/chipingress v0.0.11-0.20260520194751-11a4f360f4e2/go.mod h1:HmUyH2oD9m+GRpKq7q3vuRnm1F2Uczf/Nd1v3ipMSK8= +github.com/smartcontractkit/chainlink-common/pkg/chipingress v0.0.11-0.20260528204832-58c7145c53f8 h1:5O2qAtvBLzTHBeSIPcxt9i9BCqqOyeroVxN0xbXwoS0= +github.com/smartcontractkit/chainlink-common/pkg/chipingress v0.0.11-0.20260528204832-58c7145c53f8/go.mod h1:HmUyH2oD9m+GRpKq7q3vuRnm1F2Uczf/Nd1v3ipMSK8= github.com/smartcontractkit/chainlink-data-streams v0.1.15-0.20260522094612-5f9f748bd87a h1:8bIqv4r7SgDWkXL2Qz/Ijw+YjZY1uroIte3E2v2keVk= github.com/smartcontractkit/chainlink-data-streams v0.1.15-0.20260522094612-5f9f748bd87a/go.mod h1:dF5JiHWueHjYguUUUrFeb03MkcDqha/tssEkqTkgzp4= github.com/smartcontractkit/chainlink-deployments-framework v0.105.0 h1:Vp4EwkvxcBzgahIZdbWyCExDXLha93cS63xvwd2xwx8= @@ -1596,8 +1596,8 @@ github.com/smartcontractkit/chainlink-protos/storage-service v0.3.0 h1:B7itmjy+C github.com/smartcontractkit/chainlink-protos/storage-service v0.3.0/go.mod h1:h6kqaGajbNRrezm56zhx03p0mVmmA2xxj7E/M4ytLUA= github.com/smartcontractkit/chainlink-protos/svr v1.2.0 h1:7jjgqRgORQS/ikL3z0ZgJy95pzjhR9LuU1TVWg4BZ78= github.com/smartcontractkit/chainlink-protos/svr v1.2.0/go.mod h1:TcOliTQU6r59DwG4lo3U+mFM9WWyBHGuFkkxQpvSujo= -github.com/smartcontractkit/chainlink-protos/workflows/go v0.0.0-20260323124644-faea187e6997 h1:W0HKHO8eE8BckTRnhSdqjHKbJcnk068nEWYnWRu6tJY= -github.com/smartcontractkit/chainlink-protos/workflows/go v0.0.0-20260323124644-faea187e6997/go.mod h1:GTpDgyK0OObf7jpch6p8N281KxN92wbB8serZhU9yRc= +github.com/smartcontractkit/chainlink-protos/workflows/go v0.0.0-20260528173149-f5b8336b19d9 h1:LQy2j2+TdKLSWsUTUYuqmQPn8kjqCLjGI3ZJYGtDc08= +github.com/smartcontractkit/chainlink-protos/workflows/go v0.0.0-20260528173149-f5b8336b19d9/go.mod h1:GTpDgyK0OObf7jpch6p8N281KxN92wbB8serZhU9yRc= github.com/smartcontractkit/chainlink-solana v1.3.1-0.20260522172305-f71b70a4d020 h1:8bMEgrIdrff6CequbqHQOACd3ktgwlLf1XmQ6giPfNk= github.com/smartcontractkit/chainlink-solana v1.3.1-0.20260522172305-f71b70a4d020/go.mod h1:5uWu39vXphl2Ug0WyHqpB2UfltClSANBVenvGMpsDS8= github.com/smartcontractkit/chainlink-solana/contracts v0.0.0-20260513123719-d347eaf314e1 h1:/xvuNFI7DwOoTQnmAdYPDdY+sConn3RgZ2rMy/8AXlo= diff --git a/system-tests/tests/go.mod b/system-tests/tests/go.mod index 6f1d934fb36..a5141a1cf97 100644 --- a/system-tests/tests/go.mod +++ b/system-tests/tests/go.mod @@ -58,14 +58,14 @@ require ( github.com/rs/zerolog v1.34.0 github.com/smartcontractkit/chain-selectors v1.0.101 github.com/smartcontractkit/chainlink-ccip/chains/solana v0.0.0-20260415165642-49f23e4d76cc - github.com/smartcontractkit/chainlink-common v0.11.2-0.20260528150532-b12054695b25 + github.com/smartcontractkit/chainlink-common v0.11.2-0.20260602101458-208ae6ddea43 github.com/smartcontractkit/chainlink-common/keystore v1.1.0 github.com/smartcontractkit/chainlink-deployments-framework v0.105.0 github.com/smartcontractkit/chainlink-evm/contracts/cre/gobindings v0.0.0-20260403151002-2c91155b5501 github.com/smartcontractkit/chainlink-evm/gethwrappers v0.0.0-20260521215851-3fdbb363496f github.com/smartcontractkit/chainlink-protos/cre/go v0.0.0-20260526195338-adcf8013a1b7 github.com/smartcontractkit/chainlink-protos/ring/go v0.0.0-20260331131315-f08a616d8dcd - github.com/smartcontractkit/chainlink-protos/workflows/go v0.0.0-20260323124644-faea187e6997 + github.com/smartcontractkit/chainlink-protos/workflows/go v0.0.0-20260528173149-f5b8336b19d9 github.com/smartcontractkit/chainlink-testing-framework/framework v0.16.2 github.com/smartcontractkit/chainlink-testing-framework/framework/components/chiprouter v1.0.4 github.com/smartcontractkit/chainlink-testing-framework/framework/components/fake v0.15.0 @@ -516,7 +516,7 @@ require ( github.com/smartcontractkit/chainlink-aptos v0.0.0-20260507123701-77fc93b573bb github.com/smartcontractkit/chainlink-automation v0.8.1 // indirect github.com/smartcontractkit/chainlink-ccip v0.1.1-solana.0.20260428205619-2db1389501a1 // indirect - github.com/smartcontractkit/chainlink-common/pkg/chipingress v0.0.11-0.20260520194751-11a4f360f4e2 + github.com/smartcontractkit/chainlink-common/pkg/chipingress v0.0.11-0.20260528204832-58c7145c53f8 github.com/smartcontractkit/chainlink-evm v0.3.4-0.20260527175653-b78bae59d823 github.com/smartcontractkit/chainlink-framework/capabilities v0.0.0-20260423135514-5b1a7565a99c // indirect github.com/smartcontractkit/chainlink-framework/chains v0.0.0-20260423135514-5b1a7565a99c // indirect diff --git a/system-tests/tests/go.sum b/system-tests/tests/go.sum index 31eca9b9308..5c62900998b 100644 --- a/system-tests/tests/go.sum +++ b/system-tests/tests/go.sum @@ -1552,12 +1552,12 @@ github.com/smartcontractkit/chainlink-ccip/chains/solana/gobindings v0.0.0-20260 github.com/smartcontractkit/chainlink-ccip/chains/solana/gobindings v0.0.0-20260511195239-0f6e1b177fc7/go.mod h1:67YbnoglYD61Pz/jTVCgav9wFq7S35OU8UyQSvPllRw= github.com/smartcontractkit/chainlink-ccv v0.0.2-0.20260428133800-3b1484e8b1fd h1:IMopuENFVS63AerRELdfWo6o60UNUidcldJOxJLmk24= github.com/smartcontractkit/chainlink-ccv v0.0.2-0.20260428133800-3b1484e8b1fd/go.mod h1:SBN8Urnh5sQvrQRbSo1Nr8coWatHg8LZoPw3R/42sho= -github.com/smartcontractkit/chainlink-common v0.11.2-0.20260528150532-b12054695b25 h1:hhPlsgzyfvcohAVSqh4vNyr88icCUVvJ/CNSD7gBZIc= -github.com/smartcontractkit/chainlink-common v0.11.2-0.20260528150532-b12054695b25/go.mod h1:jueIfDkkRexwGgLbVB7vGCZlNtd383zuwi4uHHwcbqc= +github.com/smartcontractkit/chainlink-common v0.11.2-0.20260602101458-208ae6ddea43 h1:SsdcAiY6/MDPV93o2P6JRaooIA088OZFTT3ohOKSS3U= +github.com/smartcontractkit/chainlink-common v0.11.2-0.20260602101458-208ae6ddea43/go.mod h1:6jgqiFXFJHqjkvFFmuf8gvoUFa6Ygx/D1tKnIL+CCF8= github.com/smartcontractkit/chainlink-common/keystore v1.1.0 h1:2wzySccgk2fpWusPKO0bpeAZzfSU9eq6CS5U+JwYaVo= github.com/smartcontractkit/chainlink-common/keystore v1.1.0/go.mod h1:6JexOOhPhknQ0QMuppFIlOpm6wCp54yZMxai+tWugwY= -github.com/smartcontractkit/chainlink-common/pkg/chipingress v0.0.11-0.20260520194751-11a4f360f4e2 h1:22H/CQy2L1unVJ2KEViEqvM8evJLSIqJxEdfDeXB4o8= -github.com/smartcontractkit/chainlink-common/pkg/chipingress v0.0.11-0.20260520194751-11a4f360f4e2/go.mod h1:HmUyH2oD9m+GRpKq7q3vuRnm1F2Uczf/Nd1v3ipMSK8= +github.com/smartcontractkit/chainlink-common/pkg/chipingress v0.0.11-0.20260528204832-58c7145c53f8 h1:5O2qAtvBLzTHBeSIPcxt9i9BCqqOyeroVxN0xbXwoS0= +github.com/smartcontractkit/chainlink-common/pkg/chipingress v0.0.11-0.20260528204832-58c7145c53f8/go.mod h1:HmUyH2oD9m+GRpKq7q3vuRnm1F2Uczf/Nd1v3ipMSK8= github.com/smartcontractkit/chainlink-data-streams v0.1.15-0.20260522094612-5f9f748bd87a h1:8bIqv4r7SgDWkXL2Qz/Ijw+YjZY1uroIte3E2v2keVk= github.com/smartcontractkit/chainlink-data-streams v0.1.15-0.20260522094612-5f9f748bd87a/go.mod h1:dF5JiHWueHjYguUUUrFeb03MkcDqha/tssEkqTkgzp4= github.com/smartcontractkit/chainlink-deployments-framework v0.105.0 h1:Vp4EwkvxcBzgahIZdbWyCExDXLha93cS63xvwd2xwx8= @@ -1610,8 +1610,8 @@ github.com/smartcontractkit/chainlink-protos/storage-service v0.3.0 h1:B7itmjy+C github.com/smartcontractkit/chainlink-protos/storage-service v0.3.0/go.mod h1:h6kqaGajbNRrezm56zhx03p0mVmmA2xxj7E/M4ytLUA= github.com/smartcontractkit/chainlink-protos/svr v1.2.0 h1:7jjgqRgORQS/ikL3z0ZgJy95pzjhR9LuU1TVWg4BZ78= github.com/smartcontractkit/chainlink-protos/svr v1.2.0/go.mod h1:TcOliTQU6r59DwG4lo3U+mFM9WWyBHGuFkkxQpvSujo= -github.com/smartcontractkit/chainlink-protos/workflows/go v0.0.0-20260323124644-faea187e6997 h1:W0HKHO8eE8BckTRnhSdqjHKbJcnk068nEWYnWRu6tJY= -github.com/smartcontractkit/chainlink-protos/workflows/go v0.0.0-20260323124644-faea187e6997/go.mod h1:GTpDgyK0OObf7jpch6p8N281KxN92wbB8serZhU9yRc= +github.com/smartcontractkit/chainlink-protos/workflows/go v0.0.0-20260528173149-f5b8336b19d9 h1:LQy2j2+TdKLSWsUTUYuqmQPn8kjqCLjGI3ZJYGtDc08= +github.com/smartcontractkit/chainlink-protos/workflows/go v0.0.0-20260528173149-f5b8336b19d9/go.mod h1:GTpDgyK0OObf7jpch6p8N281KxN92wbB8serZhU9yRc= github.com/smartcontractkit/chainlink-solana v1.3.1-0.20260522172305-f71b70a4d020 h1:8bMEgrIdrff6CequbqHQOACd3ktgwlLf1XmQ6giPfNk= github.com/smartcontractkit/chainlink-solana v1.3.1-0.20260522172305-f71b70a4d020/go.mod h1:5uWu39vXphl2Ug0WyHqpB2UfltClSANBVenvGMpsDS8= github.com/smartcontractkit/chainlink-solana/contracts v0.0.0-20260513123719-d347eaf314e1 h1:/xvuNFI7DwOoTQnmAdYPDdY+sConn3RgZ2rMy/8AXlo=