From 30817a9739de0d8cc4b26b49e4790e276cef6308 Mon Sep 17 00:00:00 2001 From: Tim Conley Date: Tue, 8 Sep 2026 10:25:27 -0700 Subject: [PATCH 1/3] Add TypeScript SignalWithStart WIT annotations --- nexus/workflow-service.wit | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/nexus/workflow-service.wit b/nexus/workflow-service.wit index c4a7bf5e9..caf3842a3 100644 --- a/nexus/workflow-service.wit +++ b/nexus/workflow-service.wit @@ -126,13 +126,14 @@ interface workflow-service { /// @nexus.output-transform /// python-type="temporalio.workflow.ExternalWorkflowHandle[WorkflowResult]" /// python="temporalio.workflow.get_external_workflow_handle(request.id, run_id=result.run_id)" - /// typescript-type="workflow.ExternalWorkflowHandle" + /// typescript-type="ExternalWorkflowHandle" + /// typescript-type-import="../../../../workflow-handle" /// typescript="workflow.getExternalWorkflowHandle(request.id, result.runId ?? undefined)" /// typescript-import="@temporalio/workflow" /// dotnet-type="Temporalio.Workflows.ExternalWorkflowHandle" /// dotnet="Temporalio.Workflows.Workflow.GetExternalWorkflowHandle(request.Id, result.RunId)" /// @nexus.operation name="SignalWithStartWorkflowExecution" - /// @nexus.serialization-context python="signal_with_start_workflow_serialization_context" dotnet="WorkflowServiceSerializationContexts.SignalWithStartWorkflow" + /// @nexus.serialization-context python="signal_with_start_workflow_serialization_context" typescript="signalWithStartWorkflowSerializationContext" dotnet="WorkflowServiceSerializationContexts.SignalWithStartWorkflow" /// @nexus.experimental signal-with-start-workflow: func( request: signal-with-start-workflow-request, From 5ec1372c856f6c211967d17342d92d5fbd73ffdf Mon Sep 17 00:00:00 2001 From: Tim Conley Date: Tue, 8 Sep 2026 10:27:56 -0700 Subject: [PATCH 2/3] Use common SignalDefinition in TypeScript WIT --- nexus/deps/nexus-temporal-types/model.wit | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/nexus/deps/nexus-temporal-types/model.wit b/nexus/deps/nexus-temporal-types/model.wit index f7d2ebd64..252755cd9 100644 --- a/nexus/deps/nexus-temporal-types/model.wit +++ b/nexus/deps/nexus-temporal-types/model.wit @@ -86,9 +86,9 @@ interface model { /// typescript-name-extractor="signalFunctionName" /// dotnet-name-extractor="TemporalFunctionNames.SignalName" /// dotnet-call-extractor="TemporalFunctionNames.ExtractCall" - /// typescript-value-type="workflow.SignalDefinition" - /// typescript-args-type="Value extends workflow.SignalDefinition ? Args : never" - /// typescript-import="@temporalio/workflow" + /// typescript-value-type="common.SignalDefinition" + /// typescript-args-type="Value extends common.SignalDefinition ? Args : never" + /// typescript-import="@temporalio/common" /// @nexus.add-rpc-compatible-with "string" type signal-function = placeholder; From eecf30fafa57b142fbda50c9eb6e936970f30bc0 Mon Sep 17 00:00:00 2001 From: Tim Conley Date: Tue, 8 Sep 2026 10:28:36 -0700 Subject: [PATCH 3/3] Use application values for TypeScript WIT headers --- nexus/deps/nexus-temporal-types/model.wit | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/nexus/deps/nexus-temporal-types/model.wit b/nexus/deps/nexus-temporal-types/model.wit index 252755cd9..c661ee510 100644 --- a/nexus/deps/nexus-temporal-types/model.wit +++ b/nexus/deps/nexus-temporal-types/model.wit @@ -117,7 +117,7 @@ interface model { /// @nexus.proto "temporal.api.common.v1.Header" typescript-import="@temporalio/proto" /// @nexus.type /// python="collections.abc.Mapping[str, typing.Any]" - /// typescript="common.Headers" + /// typescript="Record" /// go="map[string]any" /// dotnet="IReadOnlyDictionary" /// dotnet-from="ProtoExtensions.FromHeaderProto"