Revert "Bump chainlink-protos/cre/go for ConfidentialWorkflow proto restructure (#2080)"#2091
Conversation
|
👋 nadahalli, thanks for creating this pull request! To help reviewers, please consider creating future PRs as drafts first. This allows you to self-review and make any final changes before notifying the team. Once you're ready, you can mark it as "Ready for review" to request feedback. Thanks! |
|
📊 API Diff Results
|
There was a problem hiding this comment.
Pull request overview
Reverts the github.com/smartcontractkit/chainlink-protos/cre/go bump from #2080 to restore the pre-restructure ConfidentialWorkflow proto surface (e.g., SecretIdentifier, vault_don_secrets, and WorkflowExecution.binary_url) so downstream Chainlink code can compile again.
Changes:
- Downgrades
chainlink-protos/cre/goin the root module back tov0.0.0-20260514104516-a827acdffe43. - Regenerates
pkg/capabilities/v2/actions/confidentialworkflow/client.pb.goto match the reverted proto API (restoringSecretIdentifier,VaultDonSecrets, andBinaryUrlonWorkflowExecution). - Updates
keystoremodule dependency metadata (but currently pinscre/goto a different pseudo-version than the PR description states).
Reviewed changes
Copilot reviewed 2 out of 5 changed files in this pull request and generated 3 comments.
Show a summary per file
| File | Description |
|---|---|
| pkg/capabilities/v2/actions/confidentialworkflow/client.pb.go | Regenerated ConfidentialWorkflow protobuf bindings to restore the old message/field layout. |
| go.mod | Reverts chainlink-protos/cre/go requirement to the pre-#2080 pseudo-version. |
| go.sum | Updates sums to match the reverted chainlink-protos/cre/go version. |
| keystore/go.mod | Adjusts the keystore module’s indirect chainlink-protos/cre/go version (currently not matching the PR description’s stated pin). |
| keystore/go.sum | Updates sums for the keystore module’s selected chainlink-protos/cre/go version. |
Files not reviewed (1)
- pkg/capabilities/v2/actions/confidentialworkflow/client.pb.go: Language not supported
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
| type SecretIdentifier struct { | ||
| state protoimpl.MessageState `protogen:"open.v1"` | ||
| Key string `protobuf:"bytes,1,opt,name=key,proto3" json:"key,omitempty"` | ||
| // namespace defaults to "main" when unset. |
| github.com/smartcontractkit/chain-selectors v1.0.89 // indirect | ||
| github.com/smartcontractkit/chainlink-common/pkg/chipingress v0.0.10 // indirect | ||
| github.com/smartcontractkit/chainlink-protos/cre/go v0.0.0-20260520181035-b5bb732eb9d7 // indirect | ||
| github.com/smartcontractkit/chainlink-protos/cre/go v0.0.0-20260420204255-a3f3bdd56877 // indirect | ||
| github.com/smartcontractkit/chainlink-protos/linking-service/go v0.0.0-20251002192024-d2ad9222409b // indirect |
There was a problem hiding this comment.
The PR description only referred to the main go.mod. The keystore/go.mod file was an indirect dep, and was also reverted as it should be. PR description changed now.
| // Becomes ComputeRequest.PublicData after proto serialization, which is | ||
| // covered by ComputeRequest.Hash() for F+1 quorum matching at the enclave. | ||
| // All fields here must be byte-identical across workflow DON nodes. | ||
| // Becomes ComputeRequest.PublicData after proto serialization. |
Bumps cre/go to v0.0.0-20260526195338-adcf8013a1b7 (chainlink-protos #376) and regenerates the confidentialworkflow client. The additive proto keeps the old Go API (SecretIdentifier, vault_don_secrets, WorkflowExecution.binary_url, bytes execute_request/execution_result) so existing chainlink consumers compile unchanged, while adding the per-node binary_url, requirements, ProvidedTees, and the typed sdk_execute_request/sdk_execution_result fields. Rebased onto main after #2091 (revert) merged; supersedes that revert.
Reverts #2080.
The proto restructure dropped SecretIdentifier, VaultDonSecrets, and BinaryUrl,
which downstream chainlink code still uses
(core/services/workflows/v2/confidential_module.go), breaking the chainlink
build. Reverting restores the old proto API as an interim unblock.
Restores each module's chainlink-protos/cre/go pin to its exact pre-#2080 value:
These two already differed before #2080; the revert faithfully restores both.
Stopgap. The durable fix is the additive proto in
smartcontractkit/chainlink-protos#376, which keeps chainlink's Go API intact
while preserving the binary_url and TEE changes. This PR can be dropped once
that lands and common bumps forward.