From 417a1add1d35237f1300ca969f49cbc476d9dd2f Mon Sep 17 00:00:00 2001 From: Stephan Behnke Date: Fri, 2 Oct 2026 13:21:33 -0700 Subject: [PATCH] Generate Buf validation annotations for standalone Nexus APIs --- .gitmodules | 3 +- Makefile | 2 + cmd/proxygenerator/go.mod | 3 +- cmd/proxygenerator/go.sum | 6 +- go.mod | 3 +- go.sum | 6 +- proto/api | 2 +- workflowservice/v1/request_response.pb.go | 77 ++++++++++++----------- 8 files changed, 56 insertions(+), 46 deletions(-) diff --git a/.gitmodules b/.gitmodules index c4a68cc4..2ab34117 100644 --- a/.gitmodules +++ b/.gitmodules @@ -1,6 +1,7 @@ [submodule "proto/api"] path = proto/api - url = https://github.com/temporalio/api + url = https://github.com/stephanos/api.git + branch = stephanos/proto-required [submodule "proto/api-cloud"] path = proto/api-cloud url = https://github.com/temporalio/api-cloud diff --git a/Makefile b/Makefile index 70abcfa4..06a4c55b 100644 --- a/Makefile +++ b/Makefile @@ -78,6 +78,7 @@ go-grpc: clean .go-helpers-installed $(PROTO_OUT) --output=$(PROTO_OUT) \ --exclude=internal \ --exclude=proto/api/google \ + --exclude=proto/api/buf \ -p go-grpc_out=$(PROTO_PATHS) \ -p grpc-gateway_out=allow_patch_feature=false,$(PROTO_PATHS) \ -p go-helpers_out=$(PROTO_PATHS) @@ -121,6 +122,7 @@ gen-proto-desc: --output=$(PROTO_OUT) \ --exclude=internal \ --exclude=proto/api/google \ + --exclude=proto/api/buf \ --no-rewrite-enum-const \ --no-rewrite-enum-string \ --output-descriptor=$(PROTO_OUT)/descriptor_set.pb diff --git a/cmd/proxygenerator/go.mod b/cmd/proxygenerator/go.mod index 77216dcd..fc0c83e9 100644 --- a/cmd/proxygenerator/go.mod +++ b/cmd/proxygenerator/go.mod @@ -7,10 +7,11 @@ replace go.temporal.io/api => ../.. require ( go.temporal.io/api v1.14.0 golang.org/x/tools v0.44.0 - google.golang.org/protobuf v1.36.11 + google.golang.org/protobuf v1.36.12 ) require ( + buf.build/gen/go/bufbuild/protovalidate/protocolbuffers/go v1.36.12-20260709200747-435963d16310.1 // indirect github.com/grpc-ecosystem/grpc-gateway/v2 v2.26.1 // indirect github.com/nexus-rpc/nexus-proto-annotations v0.1.0 // indirect golang.org/x/mod v0.35.0 // indirect diff --git a/cmd/proxygenerator/go.sum b/cmd/proxygenerator/go.sum index 28509622..3cd7e150 100644 --- a/cmd/proxygenerator/go.sum +++ b/cmd/proxygenerator/go.sum @@ -1,3 +1,5 @@ +buf.build/gen/go/bufbuild/protovalidate/protocolbuffers/go v1.36.12-20260709200747-435963d16310.1 h1:6nlcxMOui23ZRVAfJM451duu79P1npA5JRdZqMilrrQ= +buf.build/gen/go/bufbuild/protovalidate/protocolbuffers/go v1.36.12-20260709200747-435963d16310.1/go.mod h1:TCt1lluMFnctISJXvkIQ4x3ABrPuUKCWKyjKdkJNBpw= github.com/cespare/xxhash/v2 v2.3.0 h1:UL815xU9SqsFlibzuggzjXhog7bL6oX9BbNZnL2UFvs= github.com/cespare/xxhash/v2 v2.3.0/go.mod h1:VGX0DQ3Q6kWi7AoAeZDth3/j3BFtOZR5XLFGgcrjCOs= github.com/davecgh/go-spew v1.1.1 h1:vj9j/u1bqnvCEfJOwUhtlOARqs3+rkHYY13jYWTU97c= @@ -52,7 +54,7 @@ google.golang.org/genproto/googleapis/rpc v0.0.0-20260526163538-3dc84a4a5aaa h1: google.golang.org/genproto/googleapis/rpc v0.0.0-20260526163538-3dc84a4a5aaa/go.mod h1:4Hqkh8ycfw05ld/3BWL7rJOSfebL2Q+DVDeRgYgxUU8= google.golang.org/grpc v1.83.1 h1:HIO0+BEtBP6soyqvqC8sNUjZ7bTs+0hFQuFF+RAy++Y= google.golang.org/grpc v1.83.1/go.mod h1:kDyl6SKsiHKt0uylY5gtn5cEjkrIOhQOGDgIc4JGwzQ= -google.golang.org/protobuf v1.36.11 h1:fV6ZwhNocDyBLK0dj+fg8ektcVegBBuEolpbTQyBNVE= -google.golang.org/protobuf v1.36.11/go.mod h1:HTf+CrKn2C3g5S8VImy6tdcUvCska2kB7j23XfzDpco= +google.golang.org/protobuf v1.36.12 h1:pJOKDDOyeXErUroCihFAd5LQuwXBSpVnKGrj5o/fwxc= +google.golang.org/protobuf v1.36.12/go.mod h1:HTf+CrKn2C3g5S8VImy6tdcUvCska2kB7j23XfzDpco= gopkg.in/yaml.v3 v3.0.1 h1:fxVm/GzAzEWqLHuvctI91KS9hhNmmWOoWu0XTYJS7CA= gopkg.in/yaml.v3 v3.0.1/go.mod h1:K4uyk7z7BCEPqu6E+C64Yfv1cQ7kz7rIZviUmN+EgEM= diff --git a/go.mod b/go.mod index f9c4c954..4e9f090b 100644 --- a/go.mod +++ b/go.mod @@ -3,6 +3,7 @@ module go.temporal.io/api go 1.25.4 require ( + buf.build/gen/go/bufbuild/protovalidate/protocolbuffers/go v1.36.12-20260709200747-435963d16310.1 github.com/golang/mock v1.6.0 github.com/google/go-cmp v0.7.0 github.com/grpc-ecosystem/grpc-gateway/v2 v2.22.0 @@ -12,7 +13,7 @@ require ( google.golang.org/genproto/googleapis/api v0.0.0-20260526163538-3dc84a4a5aaa google.golang.org/genproto/googleapis/rpc v0.0.0-20260526163538-3dc84a4a5aaa google.golang.org/grpc v1.83.1 - google.golang.org/protobuf v1.36.11 + google.golang.org/protobuf v1.36.12 ) require ( diff --git a/go.sum b/go.sum index aef3de6d..08c7ec26 100644 --- a/go.sum +++ b/go.sum @@ -1,3 +1,5 @@ +buf.build/gen/go/bufbuild/protovalidate/protocolbuffers/go v1.36.12-20260709200747-435963d16310.1 h1:6nlcxMOui23ZRVAfJM451duu79P1npA5JRdZqMilrrQ= +buf.build/gen/go/bufbuild/protovalidate/protocolbuffers/go v1.36.12-20260709200747-435963d16310.1/go.mod h1:TCt1lluMFnctISJXvkIQ4x3ABrPuUKCWKyjKdkJNBpw= github.com/cespare/xxhash/v2 v2.3.0 h1:UL815xU9SqsFlibzuggzjXhog7bL6oX9BbNZnL2UFvs= github.com/cespare/xxhash/v2 v2.3.0/go.mod h1:VGX0DQ3Q6kWi7AoAeZDth3/j3BFtOZR5XLFGgcrjCOs= github.com/creack/pty v1.1.9/go.mod h1:oKZEueFk5CKHvIhNR5MUki03XCEU+Q6VDXinZuGJ33E= @@ -80,8 +82,8 @@ google.golang.org/genproto/googleapis/rpc v0.0.0-20260526163538-3dc84a4a5aaa h1: google.golang.org/genproto/googleapis/rpc v0.0.0-20260526163538-3dc84a4a5aaa/go.mod h1:4Hqkh8ycfw05ld/3BWL7rJOSfebL2Q+DVDeRgYgxUU8= google.golang.org/grpc v1.83.1 h1:HIO0+BEtBP6soyqvqC8sNUjZ7bTs+0hFQuFF+RAy++Y= google.golang.org/grpc v1.83.1/go.mod h1:kDyl6SKsiHKt0uylY5gtn5cEjkrIOhQOGDgIc4JGwzQ= -google.golang.org/protobuf v1.36.11 h1:fV6ZwhNocDyBLK0dj+fg8ektcVegBBuEolpbTQyBNVE= -google.golang.org/protobuf v1.36.11/go.mod h1:HTf+CrKn2C3g5S8VImy6tdcUvCska2kB7j23XfzDpco= +google.golang.org/protobuf v1.36.12 h1:pJOKDDOyeXErUroCihFAd5LQuwXBSpVnKGrj5o/fwxc= +google.golang.org/protobuf v1.36.12/go.mod h1:HTf+CrKn2C3g5S8VImy6tdcUvCska2kB7j23XfzDpco= gopkg.in/check.v1 v0.0.0-20161208181325-20d25e280405/go.mod h1:Co6ibVJAznAaIkqp8huTwlJQCZ016jof/cbN4VW5Yz0= gopkg.in/check.v1 v1.0.0-20201130134442-10cb98267c6c h1:Hei/4ADfdWqJk1ZMxUNpqntNwaWcugrBjAiHlqqRiVk= gopkg.in/check.v1 v1.0.0-20201130134442-10cb98267c6c/go.mod h1:JHkPIbrfpd72SG/EVd6muEfDQjcINNoR0C8j2r3qZ4Q= diff --git a/proto/api b/proto/api index 1c27468c..4a1e475d 160000 --- a/proto/api +++ b/proto/api @@ -1 +1 @@ -Subproject commit 1c27468c756fc8abc800235c33b74c6eba638c88 +Subproject commit 4a1e475d88f47d22b162541e26c777d637328323 diff --git a/workflowservice/v1/request_response.pb.go b/workflowservice/v1/request_response.pb.go index edd16961..31814ed1 100644 --- a/workflowservice/v1/request_response.pb.go +++ b/workflowservice/v1/request_response.pb.go @@ -11,6 +11,7 @@ import ( sync "sync" unsafe "unsafe" + _ "buf.build/gen/go/bufbuild/protovalidate/protocolbuffers/go/buf/validate" v120 "go.temporal.io/api/activity/v1" v118 "go.temporal.io/api/batch/v1" v112 "go.temporal.io/api/command/v1" @@ -20594,7 +20595,7 @@ var File_temporal_api_workflowservice_v1_request_response_proto protoreflect.Fil const file_temporal_api_workflowservice_v1_request_response_proto_rawDesc = "" + "\n" + - "6temporal/api/workflowservice/v1/request_response.proto\x12\x1ftemporal.api.workflowservice.v1\x1a+temporal/api/enums/v1/batch_operation.proto\x1a\"temporal/api/enums/v1/common.proto\x1a$temporal/api/enums/v1/workflow.proto\x1a%temporal/api/enums/v1/namespace.proto\x1a(temporal/api/enums/v1/failed_cause.proto\x1a!temporal/api/enums/v1/query.proto\x1a!temporal/api/enums/v1/reset.proto\x1a&temporal/api/enums/v1/task_queue.proto\x1a&temporal/api/enums/v1/deployment.proto\x1a\"temporal/api/enums/v1/update.proto\x1a)temporal/api/enums/v1/time_skipping.proto\x1a$temporal/api/enums/v1/activity.proto\x1a!temporal/api/enums/v1/nexus.proto\x1a&temporal/api/activity/v1/message.proto\x1a$temporal/api/common/v1/message.proto\x1a%temporal/api/history/v1/message.proto\x1a&temporal/api/workflow/v1/message.proto\x1a%temporal/api/command/v1/message.proto\x1a$temporal/api/compute/v1/config.proto\x1a(temporal/api/deployment/v1/message.proto\x1a%temporal/api/failure/v1/message.proto\x1a$temporal/api/filter/v1/message.proto\x1a&temporal/api/protocol/v1/message.proto\x1a'temporal/api/namespace/v1/message.proto\x1a#temporal/api/query/v1/message.proto\x1a)temporal/api/replication/v1/message.proto\x1a#temporal/api/rules/v1/message.proto\x1a'temporal/api/sdk/v1/worker_config.proto\x1a&temporal/api/schedule/v1/message.proto\x1a'temporal/api/taskqueue/v1/message.proto\x1a$temporal/api/update/v1/message.proto\x1a%temporal/api/version/v1/message.proto\x1a#temporal/api/batch/v1/message.proto\x1a0temporal/api/sdk/v1/task_complete_metadata.proto\x1a'temporal/api/sdk/v1/user_metadata.proto\x1a#temporal/api/nexus/v1/message.proto\x1a,temporal/api/nexusoperation/v1/message.proto\x1a$temporal/api/worker/v1/message.proto\x1a\x1egoogle/protobuf/duration.proto\x1a google/protobuf/field_mask.proto\x1a\x1fgoogle/protobuf/timestamp.proto\"\xf9\x06\n" + + "6temporal/api/workflowservice/v1/request_response.proto\x12\x1ftemporal.api.workflowservice.v1\x1a+temporal/api/enums/v1/batch_operation.proto\x1a\"temporal/api/enums/v1/common.proto\x1a$temporal/api/enums/v1/workflow.proto\x1a%temporal/api/enums/v1/namespace.proto\x1a(temporal/api/enums/v1/failed_cause.proto\x1a!temporal/api/enums/v1/query.proto\x1a!temporal/api/enums/v1/reset.proto\x1a&temporal/api/enums/v1/task_queue.proto\x1a&temporal/api/enums/v1/deployment.proto\x1a\"temporal/api/enums/v1/update.proto\x1a)temporal/api/enums/v1/time_skipping.proto\x1a$temporal/api/enums/v1/activity.proto\x1a!temporal/api/enums/v1/nexus.proto\x1a&temporal/api/activity/v1/message.proto\x1a$temporal/api/common/v1/message.proto\x1a%temporal/api/history/v1/message.proto\x1a&temporal/api/workflow/v1/message.proto\x1a%temporal/api/command/v1/message.proto\x1a$temporal/api/compute/v1/config.proto\x1a(temporal/api/deployment/v1/message.proto\x1a%temporal/api/failure/v1/message.proto\x1a$temporal/api/filter/v1/message.proto\x1a&temporal/api/protocol/v1/message.proto\x1a'temporal/api/namespace/v1/message.proto\x1a#temporal/api/query/v1/message.proto\x1a)temporal/api/replication/v1/message.proto\x1a#temporal/api/rules/v1/message.proto\x1a'temporal/api/sdk/v1/worker_config.proto\x1a&temporal/api/schedule/v1/message.proto\x1a'temporal/api/taskqueue/v1/message.proto\x1a$temporal/api/update/v1/message.proto\x1a%temporal/api/version/v1/message.proto\x1a#temporal/api/batch/v1/message.proto\x1a0temporal/api/sdk/v1/task_complete_metadata.proto\x1a'temporal/api/sdk/v1/user_metadata.proto\x1a#temporal/api/nexus/v1/message.proto\x1a,temporal/api/nexusoperation/v1/message.proto\x1a$temporal/api/worker/v1/message.proto\x1a\x1egoogle/protobuf/duration.proto\x1a google/protobuf/field_mask.proto\x1a\x1fgoogle/protobuf/timestamp.proto\x1a\x1bbuf/validate/validate.proto\"\xf9\x06\n" + "\x18RegisterNamespaceRequest\x12\x1c\n" + "\tnamespace\x18\x01 \x01(\tR\tnamespace\x12 \n" + "\vdescription\x18\x02 \x01(\tR\vdescription\x12\x1f\n" + @@ -22059,17 +22060,17 @@ const file_temporal_api_workflowservice_v1_request_response_proto_rawDesc = "" + "\n" + "executions\x18\x01 \x03(\v23.temporal.api.activity.v1.ActivityExecutionListInfoR\n" + "executions\x12&\n" + - "\x0fnext_page_token\x18\x02 \x01(\fR\rnextPageToken\"\xae\n" + + "\x0fnext_page_token\x18\x02 \x01(\fR\rnextPageToken\"\xd6\n" + "\n" + - "#StartNexusOperationExecutionRequest\x12\x1c\n" + - "\tnamespace\x18\x01 \x01(\tR\tnamespace\x12\x1a\n" + + "#StartNexusOperationExecutionRequest\x12$\n" + + "\tnamespace\x18\x01 \x01(\tB\x06\xbaH\x03\xc8\x01\x01R\tnamespace\x12\x1a\n" + "\bidentity\x18\x02 \x01(\tR\bidentity\x12\x1d\n" + "\n" + - "request_id\x18\x03 \x01(\tR\trequestId\x12!\n" + - "\foperation_id\x18\x04 \x01(\tR\voperationId\x12\x1a\n" + - "\bendpoint\x18\x05 \x01(\tR\bendpoint\x12\x18\n" + - "\aservice\x18\x06 \x01(\tR\aservice\x12\x1c\n" + - "\toperation\x18\a \x01(\tR\toperation\x12T\n" + + "request_id\x18\x03 \x01(\tR\trequestId\x12)\n" + + "\foperation_id\x18\x04 \x01(\tB\x06\xbaH\x03\xc8\x01\x01R\voperationId\x12\"\n" + + "\bendpoint\x18\x05 \x01(\tB\x06\xbaH\x03\xc8\x01\x01R\bendpoint\x12 \n" + + "\aservice\x18\x06 \x01(\tB\x06\xbaH\x03\xc8\x01\x01R\aservice\x12$\n" + + "\toperation\x18\a \x01(\tB\x06\xbaH\x03\xc8\x01\x01R\toperation\x12T\n" + "\x19schedule_to_close_timeout\x18\b \x01(\v2\x19.google.protobuf.DurationR\x16scheduleToCloseTimeout\x12T\n" + "\x19schedule_to_start_timeout\x18\t \x01(\v2\x19.google.protobuf.DurationR\x16scheduleToStartTimeout\x12N\n" + "\x16start_to_close_timeout\x18\n" + @@ -22085,13 +22086,13 @@ const file_temporal_api_workflowservice_v1_request_response_proto_rawDesc = "" + "\x05links\x18\x13 \x03(\v2\x1c.temporal.api.common.v1.LinkR\x05links\x1a>\n" + "\x10NexusHeaderEntry\x12\x10\n" + "\x03key\x18\x01 \x01(\tR\x03key\x12\x14\n" + - "\x05value\x18\x02 \x01(\tR\x05value:\x028\x01\"W\n" + - "$StartNexusOperationExecutionResponse\x12\x15\n" + - "\x06run_id\x18\x01 \x01(\tR\x05runId\x12\x18\n" + - "\astarted\x18\x02 \x01(\bR\astarted\"\xf6\x01\n" + - "&DescribeNexusOperationExecutionRequest\x12\x1c\n" + - "\tnamespace\x18\x01 \x01(\tR\tnamespace\x12!\n" + - "\foperation_id\x18\x02 \x01(\tR\voperationId\x12\x15\n" + + "\x05value\x18\x02 \x01(\tR\x05value:\x028\x01\"_\n" + + "$StartNexusOperationExecutionResponse\x12\x1d\n" + + "\x06run_id\x18\x01 \x01(\tB\x06\xbaH\x03\xc8\x01\x01R\x05runId\x12\x18\n" + + "\astarted\x18\x02 \x01(\bR\astarted\"\x86\x02\n" + + "&DescribeNexusOperationExecutionRequest\x12$\n" + + "\tnamespace\x18\x01 \x01(\tB\x06\xbaH\x03\xc8\x01\x01R\tnamespace\x12)\n" + + "\foperation_id\x18\x02 \x01(\tB\x06\xbaH\x03\xc8\x01\x01R\voperationId\x12\x15\n" + "\x06run_id\x18\x03 \x01(\tR\x05runId\x12#\n" + "\rinclude_input\x18\x04 \x01(\bR\fincludeInput\x12'\n" + "\x0finclude_outcome\x18\x05 \x01(\bR\x0eincludeOutcome\x12&\n" + @@ -22104,10 +22105,10 @@ const file_temporal_api_workflowservice_v1_request_response_proto_rawDesc = "" + "\afailure\x18\x05 \x01(\v2 .temporal.api.failure.v1.FailureH\x00R\afailure\x12&\n" + "\x0flong_poll_token\x18\x06 \x01(\fR\rlongPollToken\x12_\n" + "\x14completion_callbacks\x18\a \x03(\v2,.temporal.api.nexusoperation.v1.CallbackInfoR\x13completionCallbacksB\t\n" + - "\aoutcome\"\xcb\x01\n" + - "\"PollNexusOperationExecutionRequest\x12\x1c\n" + - "\tnamespace\x18\x01 \x01(\tR\tnamespace\x12!\n" + - "\foperation_id\x18\x02 \x01(\tR\voperationId\x12\x15\n" + + "\aoutcome\"\xdb\x01\n" + + "\"PollNexusOperationExecutionRequest\x12$\n" + + "\tnamespace\x18\x01 \x01(\tB\x06\xbaH\x03\xc8\x01\x01R\tnamespace\x12)\n" + + "\foperation_id\x18\x02 \x01(\tB\x06\xbaH\x03\xc8\x01\x01R\voperationId\x12\x15\n" + "\x06run_id\x18\x03 \x01(\tR\x05runId\x12M\n" + "\n" + "wait_stage\x18\x04 \x01(\x0e2..temporal.api.enums.v1.NexusOperationWaitStageR\twaitStage\"\xb8\x02\n" + @@ -22118,9 +22119,9 @@ const file_temporal_api_workflowservice_v1_request_response_proto_rawDesc = "" + "\x0foperation_token\x18\x03 \x01(\tR\x0eoperationToken\x129\n" + "\x06result\x18\x04 \x01(\v2\x1f.temporal.api.common.v1.PayloadH\x00R\x06result\x12<\n" + "\afailure\x18\x05 \x01(\v2 .temporal.api.failure.v1.FailureH\x00R\afailureB\t\n" + - "\aoutcome\"\x9e\x01\n" + - "#ListNexusOperationExecutionsRequest\x12\x1c\n" + - "\tnamespace\x18\x01 \x01(\tR\tnamespace\x12\x1b\n" + + "\aoutcome\"\xa6\x01\n" + + "#ListNexusOperationExecutionsRequest\x12$\n" + + "\tnamespace\x18\x01 \x01(\tB\x06\xbaH\x03\xc8\x01\x01R\tnamespace\x12\x1b\n" + "\tpage_size\x18\x02 \x01(\x05R\bpageSize\x12&\n" + "\x0fnext_page_token\x18\x03 \x01(\fR\rnextPageToken\x12\x14\n" + "\x05query\x18\x04 \x01(\tR\x05query\"\xa6\x01\n" + @@ -22137,9 +22138,9 @@ const file_temporal_api_workflowservice_v1_request_response_proto_rawDesc = "" + "\x06groups\x18\x02 \x03(\v2Q.temporal.api.workflowservice.v1.CountActivityExecutionsResponse.AggregationGroupR\x06groups\x1al\n" + "\x10AggregationGroup\x12B\n" + "\fgroup_values\x18\x01 \x03(\v2\x1f.temporal.api.common.v1.PayloadR\vgroupValues\x12\x14\n" + - "\x05count\x18\x02 \x01(\x03R\x05count\"Z\n" + - "$CountNexusOperationExecutionsRequest\x12\x1c\n" + - "\tnamespace\x18\x01 \x01(\tR\tnamespace\x12\x14\n" + + "\x05count\x18\x02 \x01(\x03R\x05count\"b\n" + + "$CountNexusOperationExecutionsRequest\x12$\n" + + "\tnamespace\x18\x01 \x01(\tB\x06\xbaH\x03\xc8\x01\x01R\tnamespace\x12\x14\n" + "\x05query\x18\x02 \x01(\tR\x05query\"\x9c\x02\n" + "%CountNexusOperationExecutionsResponse\x12\x14\n" + "\x05count\x18\x01 \x01(\x03R\x05count\x12o\n" + @@ -22172,28 +22173,28 @@ const file_temporal_api_workflowservice_v1_request_response_proto_rawDesc = "" + "\vactivity_id\x18\x02 \x01(\tR\n" + "activityId\x12\x15\n" + "\x06run_id\x18\x03 \x01(\tR\x05runId\"!\n" + - "\x1fDeleteActivityExecutionResponse\"\xd8\x01\n" + - "+RequestCancelNexusOperationExecutionRequest\x12\x1c\n" + - "\tnamespace\x18\x01 \x01(\tR\tnamespace\x12!\n" + - "\foperation_id\x18\x02 \x01(\tR\voperationId\x12\x15\n" + + "\x1fDeleteActivityExecutionResponse\"\xe8\x01\n" + + "+RequestCancelNexusOperationExecutionRequest\x12$\n" + + "\tnamespace\x18\x01 \x01(\tB\x06\xbaH\x03\xc8\x01\x01R\tnamespace\x12)\n" + + "\foperation_id\x18\x02 \x01(\tB\x06\xbaH\x03\xc8\x01\x01R\voperationId\x12\x15\n" + "\x06run_id\x18\x03 \x01(\tR\x05runId\x12\x1a\n" + "\bidentity\x18\x04 \x01(\tR\bidentity\x12\x1d\n" + "\n" + "request_id\x18\x05 \x01(\tR\trequestId\x12\x16\n" + "\x06reason\x18\x06 \x01(\tR\x06reason\".\n" + - ",RequestCancelNexusOperationExecutionResponse\"\xd4\x01\n" + - "'TerminateNexusOperationExecutionRequest\x12\x1c\n" + - "\tnamespace\x18\x01 \x01(\tR\tnamespace\x12!\n" + - "\foperation_id\x18\x02 \x01(\tR\voperationId\x12\x15\n" + + ",RequestCancelNexusOperationExecutionResponse\"\xe4\x01\n" + + "'TerminateNexusOperationExecutionRequest\x12$\n" + + "\tnamespace\x18\x01 \x01(\tB\x06\xbaH\x03\xc8\x01\x01R\tnamespace\x12)\n" + + "\foperation_id\x18\x02 \x01(\tB\x06\xbaH\x03\xc8\x01\x01R\voperationId\x12\x15\n" + "\x06run_id\x18\x03 \x01(\tR\x05runId\x12\x1a\n" + "\bidentity\x18\x04 \x01(\tR\bidentity\x12\x1d\n" + "\n" + "request_id\x18\x05 \x01(\tR\trequestId\x12\x16\n" + "\x06reason\x18\x06 \x01(\tR\x06reason\"*\n" + - "(TerminateNexusOperationExecutionResponse\"~\n" + - "$DeleteNexusOperationExecutionRequest\x12\x1c\n" + - "\tnamespace\x18\x01 \x01(\tR\tnamespace\x12!\n" + - "\foperation_id\x18\x02 \x01(\tR\voperationId\x12\x15\n" + + "(TerminateNexusOperationExecutionResponse\"\x8e\x01\n" + + "$DeleteNexusOperationExecutionRequest\x12$\n" + + "\tnamespace\x18\x01 \x01(\tB\x06\xbaH\x03\xc8\x01\x01R\tnamespace\x12)\n" + + "\foperation_id\x18\x02 \x01(\tB\x06\xbaH\x03\xc8\x01\x01R\voperationId\x12\x15\n" + "\x06run_id\x18\x03 \x01(\tR\x05runId\"'\n" + "%DeleteNexusOperationExecutionResponse\"\xca\x01\n" + "(PollWorkflowExecutionTimeSkippingRequest\x12\x1c\n" +