Skip to content

Restructure ConfidentialWorkflow proto additively (no Go API break)#376

Merged
nadahalli merged 2 commits into
capabilities-developmentfrom
tejaswi/confidentialworkflow-proto-additive
May 26, 2026
Merged

Restructure ConfidentialWorkflow proto additively (no Go API break)#376
nadahalli merged 2 commits into
capabilities-developmentfrom
tejaswi/confidentialworkflow-proto-additive

Conversation

@nadahalli
Copy link
Copy Markdown
Contributor

Re-does the ConfidentialWorkflow proto changes from #365 and #363 as pure additions, so the generated Go API is preserved and existing chainlink consumers compile unchanged.

#365 and #363 renumbered and retyped fields (moved binary_url out of WorkflowExecution, dropped SecretIdentifier and vault_don_secrets, retyped execute_request/execution_result from bytes to messages). That broke the chainlink build, which cannot migrate to the new API in the available window.

This keeps the original pre-#365 shape and only appends:

execute_request (4) and execution_result (1) stay bytes. All field numbers are append-only relative to the original proto, so the wire stays compatible.

See PRIV-389.

nadahalli added 2 commits May 26, 2026 21:24
Supersedes the destructive changes in #365 and #363. Re-applies the
binary_url-out-of-hash fix and the TEE additions as pure appends to the
original proto, so the generated Go API is preserved and existing chainlink
consumers compile unchanged.

- ConfidentialWorkflowRequest.binary_url (field 3): per-node URL outside the
  hash envelope (the #365 fix), without dropping WorkflowExecution.binary_url,
  vault_don_secrets, or the SecretIdentifier message.
- WorkflowExecution.requirements (field 8), ProvidedTees rpc, and
  ProvidedTeesResponse: additive TEE surface (from #363).
- execute_request and execution_result stay bytes (no retyping).

See PRIV-389.
Restores the structured sdk.v1alpha.ExecuteRequest / ExecutionResult from #363
as new fields alongside the retained bytes fields, so typed and legacy
consumers coexist without an API break:

- WorkflowExecution.sdk_execute_request (field 9)
- ConfidentialWorkflowResponse.sdk_execution_result (field 2)

Field names mirror their message types. The bytes fields (execute_request=4,
execution_result=1) are unchanged, so chainlink compiles as-is. The typed and
bytes fields are independent on the wire; producers populate whichever their
consumer reads.
@nadahalli nadahalli requested review from a team as code owners May 26, 2026 19:33
@changeset-bot
Copy link
Copy Markdown

changeset-bot Bot commented May 26, 2026

⚠️ No Changeset found

Latest commit: 0641392

Merging this PR will not cause a version bump for any packages. If these changes should not result in a new version, you're good to go. If these changes should result in a version bump, you need to add a changeset.

This PR includes no changesets

When changesets are added to this PR, you'll see the packages that this PR includes changesets for and the associated semver types

Click here to learn what changesets are, and how to add one.

Click here if you're a maintainer who wants to add a changeset to this PR

@github-actions
Copy link
Copy Markdown

The latest Buf updates on your PR. Results from workflow Regenerate Protobuf Files / buf (pull_request).

BuildFormatLintBreakingUpdated (UTC)
✅ passed✅ passed✅ passed⏩ skippedMay 26, 2026, 7:33 PM

@nadahalli nadahalli merged commit adcf801 into capabilities-development May 26, 2026
11 checks passed
@nadahalli nadahalli deleted the tejaswi/confidentialworkflow-proto-additive branch May 26, 2026 19:53
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants