Skip to content

Add confidential-workflows capability codegen#1851

Merged
prashantkumar1982 merged 9 commits intomainfrom
tejaswi/confidential-workflows-codegen
Mar 3, 2026
Merged

Add confidential-workflows capability codegen#1851
prashantkumar1982 merged 9 commits intomainfrom
tejaswi/confidential-workflows-codegen

Conversation

@nadahalli
Copy link
Contributor

@nadahalli nadahalli commented Feb 25, 2026

Confidential CRE Workflows (implementation plan)

Summary

  • Generate Go types and server scaffolding for the confidential-workflows@1.0.0-alpha capability proto
  • Generated from cre/capabilities/compute/confidentialworkflow/v1alpha/client.proto in chainlink-protos
  • New Types: ConfidentialWorkflowRequest, ConfidentialWorkflowResponse, SecretIdentifier, WorkflowExecution

Depends on smartcontractkit/chainlink-protos#298.
Used by smartcontractkit/chainlink#21298.

Generated Go types and server from the new confidential-workflows
proto in chainlink-protos. Types: SecretIdentifier, WorkflowExecution,
ConfidentialWorkflowRequest, ConfidentialWorkflowResponse. Server
implements ClientCapability interface with Execute method.
@nadahalli nadahalli requested a review from a team as a code owner February 25, 2026 00:11
Copilot AI review requested due to automatic review settings February 25, 2026 00:11
@github-actions
Copy link

👋 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!

@github-actions
Copy link

github-actions bot commented Feb 25, 2026

✅ API Diff Results - No breaking changes


📄 View full apidiff report

Copy link
Contributor

Copilot AI left a comment

Choose a reason for hiding this comment

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

Pull request overview

This PR adds code generation for the confidential-workflows@1.0.0-alpha capability, which enables confidential workflow execution with secret management from VaultDON. The generated code provides the type definitions and server scaffolding needed to implement this capability in the chainlink ecosystem.

Changes:

  • Generated Go protobuf types (SecretIdentifier, WorkflowExecution, ConfidentialWorkflowRequest, ConfidentialWorkflowResponse) from the proto definition
  • Generated server scaffolding implementing the capability interface pattern used throughout the codebase
  • Updated chainlink-protos/cre/go dependency to include the new capability proto definition

Reviewed changes

Copilot reviewed 4 out of 5 changed files in this pull request and generated no comments.

Show a summary per file
File Description
pkg/capabilities/v2/actions/confidentialworkflow/client.pb.go Generated protobuf types for confidential workflow requests, responses, and related data structures
pkg/capabilities/v2/actions/confidentialworkflow/server/client_server_gen.go Generated server scaffolding providing ClientCapability interface and implementation for the confidential-workflows capability
pkg/capabilities/v2/actions/confidentialworkflow/generate.go Code generation directive to generate from capabilities/compute/confidentialworkflow/v1alpha/client.proto
go.mod Updated chainlink-protos/cre/go dependency version to include confidential workflow proto definitions
go.sum Updated checksums for the new chainlink-protos/cre/go dependency version

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

@nadahalli
Copy link
Contributor Author

Implementation plan: Confidential CRE Workflows (full PR chain and cross-repo dependencies)

jmank88
jmank88 previously approved these changes Feb 25, 2026
Removes owner field from SecretIdentifier per reviewer feedback.
@github-actions
Copy link

github-actions bot commented Mar 2, 2026

✅ API Diff Results - github.com/smartcontractkit/chainlink-common

✅ Compatible Changes (3)

package github (3)
  • com/smartcontractkit/chainlink-common/pkg/capabilities/actions/confidentialrelay — ➕ Added

  • com/smartcontractkit/chainlink-common/pkg/capabilities/v2/actions/confidentialworkflow — ➕ Added

  • com/smartcontractkit/chainlink-common/pkg/capabilities/v2/actions/confidentialworkflow/server — ➕ Added


📄 View full apidiff report

Shared JSON-RPC wire types for the enclave <-> relay DON protocol,
enabling both confidential-compute and chainlink to use the same
struct definitions.
jmank88
jmank88 previously approved these changes Mar 2, 2026
justinkaseman
justinkaseman previously approved these changes Mar 2, 2026
Avoid exposing "enclave" as an implementation detail in
the public API surface. Also update method/domain prefixes
from "enclave." to "confidential.".
@prashantkumar1982 prashantkumar1982 added this pull request to the merge queue Mar 3, 2026
Merged via the queue into main with commit 2879e49 Mar 3, 2026
36 of 37 checks passed
@prashantkumar1982 prashantkumar1982 deleted the tejaswi/confidential-workflows-codegen branch March 3, 2026 01:08
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

5 participants