Skip to content

Port system Nexus payload handling to WIT generation#1572

Open
tconley1428 wants to merge 9 commits into
mainfrom
nexusapigenintegration
Open

Port system Nexus payload handling to WIT generation#1572
tconley1428 wants to merge 9 commits into
mainfrom
nexusapigenintegration

Conversation

@tconley1428

@tconley1428 tconley1428 commented Jun 2, 2026

Copy link
Copy Markdown
Contributor

Summary

Adds WIT-generated Python bindings for Temporal system Nexus operations, starting with WorkflowService.SignalWithStartWorkflowExecution, and exposes it as workflow.signal_with_start_workflow.

The generated call targets the server-reserved __temporal_system endpoint and uses the fully qualified service name temporal.api.workflowservice.v1.WorkflowService.

What changed

  • Adds system Nexus API generation from the WIT model checked into sdk-core.
  • Wires system Nexus generation into proto generation.
  • Generates the Python workflow service package for SignalWithStartWorkflowExecution.
  • Re-exports generated workflow operations from temporalio.workflow so newly generated operations are exposed without manual edits.
  • Adds a system Nexus operation registry keyed by fully qualified service and operation name.
  • Adds system Nexus payload handling so:
    • the outer system Nexus envelope remains binary proto encoded
    • nested payload-bearing fields still go through normal codec and external storage processing
  • Updates payload visitor generation to route recognized system Nexus operation inputs through the generated system payload visitor.

Testing

Adds coverage for:

  • binary proto round trips for generated system Nexus request and response envelopes
  • workflow.signal_with_start_workflow using the system Nexus path
  • codec behavior proving the outer proto envelope is not codec-encoded
  • nested payload traversal for workflow inputs, signal inputs, memo, and user metadata

@tconley1428 tconley1428 force-pushed the nexusapigenintegration branch from df8f660 to cd4dd9b Compare June 8, 2026 23:07
@tconley1428 tconley1428 marked this pull request as ready for review June 8, 2026 23:27
@tconley1428 tconley1428 requested a review from a team as a code owner June 8, 2026 23:27
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.

1 participant