Skip to content

Add dynamic system Nexus operation registry to proxy package#281

Draft
chaptersix wants to merge 2 commits into
temporalio:mainfrom
chaptersix:spk/nexus-payload-annotations
Draft

Add dynamic system Nexus operation registry to proxy package#281
chaptersix wants to merge 2 commits into
temporalio:mainfrom
chaptersix:spk/nexus-payload-annotations

Conversation

@chaptersix
Copy link
Copy Markdown
Contributor

@chaptersix chaptersix commented Jun 1, 2026

Summary

  • Adds proxy.SystemNexusOperations registry mapping known system Nexus operations (endpoint + operation name) to their request/response proto constructors
  • Registry is built dynamically via reflection from the generated workflowservicenexus.WorkflowService struct, so new operations added to temporalio/api are picked up automatically without changes to this repo or downstream consumers
  • Exports TemporalSystemNexusEndpoint, SystemNexusOpKey, SystemNexusOpTypes for consumer use

Test plan

  • Unit test verifying SignalWithStartWorkflowExecution is registered with correct types
  • All existing proxy tests pass

Export SystemNexusOperations, a canonical mapping of known system Nexus
operations to their request/response proto types. This allows consumers
(CLI, cloud-cli, SDKs) to decode payloads nested inside opaque system
Nexus operation bytes without maintaining their own registries.
@CLAassistant
Copy link
Copy Markdown

CLA assistant check
Thank you for your submission! We really appreciate it. Like many open source projects, we ask that you sign our Contributor License Agreement before we can accept your contribution.
You have signed the CLA already but the status is still pending? Let us recheck it.

…d code

Use reflection to iterate the generated workflowservicenexus.WorkflowService
struct fields, building the SystemNexusOperations registry automatically.
New operations added to temporalio/api are picked up without changes to
this repo or downstream consumers.
@chaptersix chaptersix changed the title Add system Nexus operation registry to proxy package Add dynamic system Nexus operation registry to proxy package Jun 1, 2026
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.

2 participants