@temporalio/core-bridge 1.8.6 → 1.9.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (213) hide show
  1. package/Cargo.lock +670 -594
  2. package/Cargo.toml +2 -1
  3. package/lib/errors.js +6 -6
  4. package/lib/errors.js.map +1 -1
  5. package/lib/index.d.ts +17 -44
  6. package/lib/index.js.map +1 -1
  7. package/package.json +5 -6
  8. package/releases/aarch64-apple-darwin/index.node +0 -0
  9. package/releases/aarch64-unknown-linux-gnu/index.node +0 -0
  10. package/releases/x86_64-apple-darwin/index.node +0 -0
  11. package/releases/x86_64-pc-windows-msvc/index.node +0 -0
  12. package/releases/x86_64-unknown-linux-gnu/index.node +0 -0
  13. package/sdk-core/.github/workflows/heavy.yml +4 -0
  14. package/sdk-core/.github/workflows/per-pr.yml +96 -0
  15. package/sdk-core/ARCHITECTURE.md +1 -1
  16. package/sdk-core/Cargo.toml +10 -0
  17. package/sdk-core/LICENSE.txt +0 -2
  18. package/sdk-core/README.md +37 -21
  19. package/sdk-core/client/Cargo.toml +7 -4
  20. package/sdk-core/client/src/lib.rs +274 -142
  21. package/sdk-core/client/src/metrics.rs +68 -57
  22. package/sdk-core/client/src/raw.rs +191 -45
  23. package/sdk-core/client/src/retry.rs +20 -0
  24. package/sdk-core/client/src/worker_registry/mod.rs +264 -0
  25. package/sdk-core/client/src/workflow_handle/mod.rs +2 -1
  26. package/sdk-core/core/Cargo.toml +17 -19
  27. package/sdk-core/core/src/core_tests/activity_tasks.rs +4 -2
  28. package/sdk-core/core/src/core_tests/child_workflows.rs +7 -7
  29. package/sdk-core/core/src/core_tests/mod.rs +1 -0
  30. package/sdk-core/core/src/core_tests/queries.rs +42 -1
  31. package/sdk-core/core/src/core_tests/replay_flag.rs +29 -39
  32. package/sdk-core/core/src/core_tests/updates.rs +73 -0
  33. package/sdk-core/core/src/core_tests/workflow_tasks.rs +52 -1
  34. package/sdk-core/core/src/ephemeral_server/mod.rs +34 -11
  35. package/sdk-core/core/src/internal_flags.rs +7 -1
  36. package/sdk-core/core/src/lib.rs +19 -36
  37. package/sdk-core/core/src/protosext/mod.rs +12 -4
  38. package/sdk-core/core/src/protosext/protocol_messages.rs +102 -0
  39. package/sdk-core/core/src/replay/mod.rs +99 -48
  40. package/sdk-core/core/src/telemetry/log_export.rs +161 -28
  41. package/sdk-core/core/src/telemetry/metrics.rs +869 -248
  42. package/sdk-core/core/src/telemetry/mod.rs +153 -257
  43. package/sdk-core/core/src/telemetry/prometheus_server.rs +36 -31
  44. package/sdk-core/core/src/test_help/mod.rs +64 -5
  45. package/sdk-core/core/src/worker/activities/activity_heartbeat_manager.rs +12 -2
  46. package/sdk-core/core/src/worker/activities.rs +276 -10
  47. package/sdk-core/core/src/worker/client/mocks.rs +18 -0
  48. package/sdk-core/core/src/worker/client.rs +16 -3
  49. package/sdk-core/core/src/worker/mod.rs +45 -28
  50. package/sdk-core/core/src/worker/slot_provider.rs +175 -0
  51. package/sdk-core/core/src/worker/workflow/driven_workflow.rs +27 -34
  52. package/sdk-core/core/src/worker/workflow/history_update.rs +5 -2
  53. package/sdk-core/core/src/worker/workflow/machines/activity_state_machine.rs +71 -95
  54. package/sdk-core/core/src/worker/workflow/machines/cancel_external_state_machine.rs +34 -22
  55. package/sdk-core/core/src/worker/workflow/machines/cancel_workflow_state_machine.rs +50 -34
  56. package/sdk-core/core/src/worker/workflow/machines/child_workflow_state_machine.rs +106 -92
  57. package/sdk-core/core/src/worker/workflow/machines/continue_as_new_workflow_state_machine.rs +22 -21
  58. package/sdk-core/core/src/worker/workflow/machines/local_activity_state_machine.rs +386 -499
  59. package/sdk-core/core/src/worker/workflow/machines/mod.rs +12 -2
  60. package/sdk-core/core/src/worker/workflow/machines/modify_workflow_properties_state_machine.rs +33 -26
  61. package/sdk-core/core/src/worker/workflow/machines/patch_state_machine.rs +198 -215
  62. package/sdk-core/core/src/worker/workflow/machines/signal_external_state_machine.rs +67 -63
  63. package/sdk-core/core/src/worker/workflow/machines/timer_state_machine.rs +88 -119
  64. package/sdk-core/core/src/worker/workflow/machines/transition_coverage.rs +3 -1
  65. package/sdk-core/core/src/worker/workflow/machines/update_state_machine.rs +411 -0
  66. package/sdk-core/core/src/worker/workflow/machines/upsert_search_attributes_state_machine.rs +27 -26
  67. package/sdk-core/core/src/worker/workflow/machines/workflow_machines.rs +319 -94
  68. package/sdk-core/core/src/worker/workflow/managed_run.rs +179 -132
  69. package/sdk-core/core/src/worker/workflow/mod.rs +129 -58
  70. package/sdk-core/core/src/worker/workflow/run_cache.rs +16 -26
  71. package/sdk-core/core/src/worker/workflow/workflow_stream/saved_wf_inputs.rs +2 -2
  72. package/sdk-core/core/src/worker/workflow/workflow_stream.rs +48 -43
  73. package/sdk-core/core-api/Cargo.toml +8 -7
  74. package/sdk-core/core-api/src/lib.rs +4 -12
  75. package/sdk-core/core-api/src/telemetry/metrics.rs +334 -0
  76. package/sdk-core/core-api/src/telemetry.rs +53 -42
  77. package/sdk-core/core-api/src/worker.rs +7 -0
  78. package/sdk-core/{.buildkite/docker → docker}/docker-compose.yaml +1 -1
  79. package/sdk-core/etc/dynamic-config.yaml +11 -1
  80. package/sdk-core/fsm/LICENSE.txt +0 -2
  81. package/sdk-core/fsm/rustfsm_procmacro/Cargo.toml +1 -1
  82. package/sdk-core/fsm/rustfsm_procmacro/LICENSE.txt +0 -2
  83. package/sdk-core/fsm/rustfsm_procmacro/src/lib.rs +1 -3
  84. package/sdk-core/fsm/rustfsm_procmacro/tests/trybuild/no_handle_conversions_require_into_fail.stderr +2 -2
  85. package/sdk-core/fsm/rustfsm_trait/LICENSE.txt +0 -2
  86. package/sdk-core/sdk/Cargo.toml +2 -2
  87. package/sdk-core/sdk/src/lib.rs +85 -7
  88. package/sdk-core/sdk/src/workflow_context/options.rs +4 -0
  89. package/sdk-core/sdk/src/workflow_context.rs +43 -15
  90. package/sdk-core/sdk/src/workflow_future.rs +334 -204
  91. package/sdk-core/sdk-core-protos/Cargo.toml +3 -3
  92. package/sdk-core/sdk-core-protos/build.rs +14 -14
  93. package/sdk-core/sdk-core-protos/protos/api_upstream/.buildkite/Dockerfile +2 -0
  94. package/sdk-core/sdk-core-protos/protos/api_upstream/Makefile +99 -0
  95. package/sdk-core/sdk-core-protos/protos/api_upstream/api-linter.yaml +56 -0
  96. package/sdk-core/sdk-core-protos/protos/api_upstream/buf.gen.yaml +20 -0
  97. package/sdk-core/sdk-core-protos/protos/api_upstream/buf.lock +11 -0
  98. package/sdk-core/sdk-core-protos/protos/api_upstream/buf.yaml +18 -0
  99. package/sdk-core/sdk-core-protos/protos/api_upstream/google/api/annotations.proto +31 -0
  100. package/sdk-core/sdk-core-protos/protos/api_upstream/google/api/http.proto +379 -0
  101. package/sdk-core/sdk-core-protos/protos/api_upstream/google/protobuf/any.proto +162 -0
  102. package/sdk-core/sdk-core-protos/protos/api_upstream/google/protobuf/descriptor.proto +1212 -0
  103. package/sdk-core/sdk-core-protos/protos/api_upstream/google/protobuf/duration.proto +115 -0
  104. package/sdk-core/sdk-core-protos/protos/api_upstream/google/protobuf/empty.proto +51 -0
  105. package/sdk-core/sdk-core-protos/protos/api_upstream/google/protobuf/timestamp.proto +144 -0
  106. package/sdk-core/sdk-core-protos/protos/api_upstream/google/protobuf/wrappers.proto +123 -0
  107. package/sdk-core/{protos → sdk-core-protos/protos}/api_upstream/temporal/api/batch/v1/message.proto +12 -9
  108. package/sdk-core/{protos → sdk-core-protos/protos}/api_upstream/temporal/api/command/v1/message.proto +11 -13
  109. package/sdk-core/{protos → sdk-core-protos/protos}/api_upstream/temporal/api/common/v1/message.proto +33 -4
  110. package/sdk-core/{protos → sdk-core-protos/protos}/api_upstream/temporal/api/enums/v1/failed_cause.proto +2 -0
  111. package/sdk-core/{protos → sdk-core-protos/protos}/api_upstream/temporal/api/enums/v1/reset.proto +4 -4
  112. package/sdk-core/{protos/api_upstream/build/tools.go → sdk-core-protos/protos/api_upstream/temporal/api/export/v1/message.proto} +22 -6
  113. package/sdk-core/{protos → sdk-core-protos/protos}/api_upstream/temporal/api/filter/v1/message.proto +2 -4
  114. package/sdk-core/{protos → sdk-core-protos/protos}/api_upstream/temporal/api/history/v1/message.proto +21 -23
  115. package/sdk-core/{protos → sdk-core-protos/protos}/api_upstream/temporal/api/namespace/v1/message.proto +2 -4
  116. package/sdk-core/{protos → sdk-core-protos/protos}/api_upstream/temporal/api/operatorservice/v1/request_response.proto +2 -0
  117. package/sdk-core/{protos → sdk-core-protos/protos}/api_upstream/temporal/api/operatorservice/v1/service.proto +4 -0
  118. package/sdk-core/{protos → sdk-core-protos/protos}/api_upstream/temporal/api/replication/v1/message.proto +1 -3
  119. package/sdk-core/{protos → sdk-core-protos/protos}/api_upstream/temporal/api/schedule/v1/message.proto +36 -20
  120. package/sdk-core/{protos → sdk-core-protos/protos}/api_upstream/temporal/api/sdk/v1/task_complete_metadata.proto +13 -0
  121. package/sdk-core/sdk-core-protos/protos/api_upstream/temporal/api/sdk/v1/workflow_metadata.proto +66 -0
  122. package/sdk-core/{protos → sdk-core-protos/protos}/api_upstream/temporal/api/taskqueue/v1/message.proto +2 -4
  123. package/sdk-core/{protos → sdk-core-protos/protos}/api_upstream/temporal/api/update/v1/message.proto +1 -1
  124. package/sdk-core/{protos → sdk-core-protos/protos}/api_upstream/temporal/api/version/v1/message.proto +2 -3
  125. package/sdk-core/{protos → sdk-core-protos/protos}/api_upstream/temporal/api/workflow/v1/message.proto +24 -22
  126. package/sdk-core/{protos → sdk-core-protos/protos}/api_upstream/temporal/api/workflowservice/v1/request_response.proto +84 -32
  127. package/sdk-core/{protos → sdk-core-protos/protos}/api_upstream/temporal/api/workflowservice/v1/service.proto +205 -47
  128. package/sdk-core/{protos → sdk-core-protos/protos}/local/temporal/sdk/core/workflow_activation/workflow_activation.proto +57 -0
  129. package/sdk-core/{protos → sdk-core-protos/protos}/local/temporal/sdk/core/workflow_commands/workflow_commands.proto +27 -0
  130. package/sdk-core/sdk-core-protos/src/history_builder.rs +67 -2
  131. package/sdk-core/sdk-core-protos/src/history_info.rs +1 -1
  132. package/sdk-core/sdk-core-protos/src/lib.rs +76 -3
  133. package/sdk-core/sdk-core-protos/src/utilities.rs +14 -0
  134. package/sdk-core/test-utils/Cargo.toml +6 -1
  135. package/sdk-core/test-utils/src/canned_histories.rs +3 -57
  136. package/sdk-core/test-utils/src/interceptors.rs +46 -0
  137. package/sdk-core/test-utils/src/lib.rs +106 -38
  138. package/sdk-core/tests/integ_tests/metrics_tests.rs +110 -15
  139. package/sdk-core/tests/integ_tests/queries_tests.rs +174 -3
  140. package/sdk-core/tests/integ_tests/update_tests.rs +908 -0
  141. package/sdk-core/tests/integ_tests/visibility_tests.rs +4 -4
  142. package/sdk-core/tests/integ_tests/workflow_tests/activities.rs +44 -1
  143. package/sdk-core/tests/integ_tests/workflow_tests/cancel_external.rs +1 -1
  144. package/sdk-core/tests/integ_tests/workflow_tests/cancel_wf.rs +1 -1
  145. package/sdk-core/tests/integ_tests/workflow_tests/child_workflows.rs +4 -4
  146. package/sdk-core/tests/integ_tests/workflow_tests/eager.rs +61 -0
  147. package/sdk-core/tests/integ_tests/workflow_tests/replay.rs +27 -2
  148. package/sdk-core/tests/integ_tests/workflow_tests.rs +142 -3
  149. package/sdk-core/tests/main.rs +2 -1
  150. package/sdk-core/tests/runner.rs +15 -2
  151. package/src/conversions.rs +107 -96
  152. package/src/helpers.rs +74 -0
  153. package/src/runtime.rs +29 -15
  154. package/src/worker.rs +14 -61
  155. package/ts/index.ts +23 -54
  156. package/sdk-core/.buildkite/docker/Dockerfile +0 -9
  157. package/sdk-core/.buildkite/docker/build.sh +0 -5
  158. package/sdk-core/.buildkite/docker/docker-compose-ci.yaml +0 -27
  159. package/sdk-core/.buildkite/pipeline.yml +0 -57
  160. package/sdk-core/.github/workflows/semgrep.yml +0 -25
  161. package/sdk-core/client/LICENSE.txt +0 -23
  162. package/sdk-core/core/LICENSE.txt +0 -23
  163. package/sdk-core/core/src/worker/workflow/bridge.rs +0 -35
  164. package/sdk-core/core/src/worker/workflow/managed_run/managed_wf_test.rs +0 -215
  165. package/sdk-core/core-api/LICENSE.txt +0 -23
  166. package/sdk-core/protos/api_upstream/.buildkite/Dockerfile +0 -2
  167. package/sdk-core/protos/api_upstream/Makefile +0 -80
  168. package/sdk-core/protos/api_upstream/api-linter.yaml +0 -40
  169. package/sdk-core/protos/api_upstream/buf.yaml +0 -9
  170. package/sdk-core/protos/api_upstream/build/go.mod +0 -7
  171. package/sdk-core/protos/api_upstream/build/go.sum +0 -5
  172. package/sdk-core/protos/api_upstream/go.mod +0 -6
  173. package/sdk-core/protos/testsrv_upstream/dependencies/gogoproto/gogo.proto +0 -141
  174. package/sdk-core/sdk/LICENSE.txt +0 -23
  175. package/sdk-core/sdk-core-protos/LICENSE.txt +0 -23
  176. /package/sdk-core/{.buildkite/docker → docker}/docker-compose-telem.yaml +0 -0
  177. /package/sdk-core/{protos → sdk-core-protos/protos}/api_upstream/.buildkite/docker-compose.yml +0 -0
  178. /package/sdk-core/{protos → sdk-core-protos/protos}/api_upstream/.buildkite/pipeline.yml +0 -0
  179. /package/sdk-core/{protos → sdk-core-protos/protos}/api_upstream/.github/CODEOWNERS +0 -0
  180. /package/sdk-core/{protos → sdk-core-protos/protos}/api_upstream/.github/PULL_REQUEST_TEMPLATE.md +0 -0
  181. /package/sdk-core/{protos → sdk-core-protos/protos}/api_upstream/.github/workflows/publish-docs.yml +0 -0
  182. /package/sdk-core/{protos → sdk-core-protos/protos}/api_upstream/.github/workflows/trigger-api-go-update.yml +0 -0
  183. /package/sdk-core/{protos → sdk-core-protos/protos}/api_upstream/LICENSE +0 -0
  184. /package/sdk-core/{protos → sdk-core-protos/protos}/api_upstream/README.md +0 -0
  185. /package/sdk-core/{protos → sdk-core-protos/protos}/api_upstream/temporal/api/enums/v1/batch_operation.proto +0 -0
  186. /package/sdk-core/{protos → sdk-core-protos/protos}/api_upstream/temporal/api/enums/v1/command_type.proto +0 -0
  187. /package/sdk-core/{protos → sdk-core-protos/protos}/api_upstream/temporal/api/enums/v1/common.proto +0 -0
  188. /package/sdk-core/{protos → sdk-core-protos/protos}/api_upstream/temporal/api/enums/v1/event_type.proto +0 -0
  189. /package/sdk-core/{protos → sdk-core-protos/protos}/api_upstream/temporal/api/enums/v1/namespace.proto +0 -0
  190. /package/sdk-core/{protos → sdk-core-protos/protos}/api_upstream/temporal/api/enums/v1/query.proto +0 -0
  191. /package/sdk-core/{protos → sdk-core-protos/protos}/api_upstream/temporal/api/enums/v1/schedule.proto +0 -0
  192. /package/sdk-core/{protos → sdk-core-protos/protos}/api_upstream/temporal/api/enums/v1/task_queue.proto +0 -0
  193. /package/sdk-core/{protos → sdk-core-protos/protos}/api_upstream/temporal/api/enums/v1/update.proto +0 -0
  194. /package/sdk-core/{protos → sdk-core-protos/protos}/api_upstream/temporal/api/enums/v1/workflow.proto +0 -0
  195. /package/sdk-core/{protos → sdk-core-protos/protos}/api_upstream/temporal/api/errordetails/v1/message.proto +0 -0
  196. /package/sdk-core/{protos → sdk-core-protos/protos}/api_upstream/temporal/api/failure/v1/message.proto +0 -0
  197. /package/sdk-core/{protos → sdk-core-protos/protos}/api_upstream/temporal/api/protocol/v1/message.proto +0 -0
  198. /package/sdk-core/{protos → sdk-core-protos/protos}/api_upstream/temporal/api/query/v1/message.proto +0 -0
  199. /package/sdk-core/{protos → sdk-core-protos/protos}/google/rpc/status.proto +0 -0
  200. /package/sdk-core/{protos → sdk-core-protos/protos}/grpc/health/v1/health.proto +0 -0
  201. /package/sdk-core/{protos → sdk-core-protos/protos}/local/temporal/sdk/core/activity_result/activity_result.proto +0 -0
  202. /package/sdk-core/{protos → sdk-core-protos/protos}/local/temporal/sdk/core/activity_task/activity_task.proto +0 -0
  203. /package/sdk-core/{protos → sdk-core-protos/protos}/local/temporal/sdk/core/child_workflow/child_workflow.proto +0 -0
  204. /package/sdk-core/{protos → sdk-core-protos/protos}/local/temporal/sdk/core/common/common.proto +0 -0
  205. /package/sdk-core/{protos → sdk-core-protos/protos}/local/temporal/sdk/core/core_interface.proto +0 -0
  206. /package/sdk-core/{protos → sdk-core-protos/protos}/local/temporal/sdk/core/external_data/external_data.proto +0 -0
  207. /package/sdk-core/{protos → sdk-core-protos/protos}/local/temporal/sdk/core/workflow_completion/workflow_completion.proto +0 -0
  208. /package/sdk-core/{protos → sdk-core-protos/protos}/testsrv_upstream/Makefile +0 -0
  209. /package/sdk-core/{protos → sdk-core-protos/protos}/testsrv_upstream/api-linter.yaml +0 -0
  210. /package/sdk-core/{protos → sdk-core-protos/protos}/testsrv_upstream/buf.yaml +0 -0
  211. /package/sdk-core/{protos/api_upstream → sdk-core-protos/protos/testsrv_upstream}/dependencies/gogoproto/gogo.proto +0 -0
  212. /package/sdk-core/{protos → sdk-core-protos/protos}/testsrv_upstream/temporal/api/testservice/v1/request_response.proto +0 -0
  213. /package/sdk-core/{protos → sdk-core-protos/protos}/testsrv_upstream/temporal/api/testservice/v1/service.proto +0 -0
@@ -2,8 +2,6 @@
2
2
  //
3
3
  // Copyright (c) 2020 Temporal Technologies Inc. All rights reserved.
4
4
  //
5
- // Copyright (c) 2020 Uber Technologies, Inc.
6
- //
7
5
  // Permission is hereby granted, free of charge, to any person obtaining a copy
8
6
  // of this software and associated documentation files (the "Software"), to deal
9
7
  // in the Software without restriction, including without limitation the rights
@@ -22,8 +20,26 @@
22
20
  // OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
23
21
  // THE SOFTWARE.
24
22
 
25
- package build
23
+ syntax = "proto3";
24
+
25
+ package temporal.api.export.v1;
26
+
27
+ option go_package = "go.temporal.io/api/export/v1;export";
28
+ option java_package = "io.temporal.api.export.v1";
29
+ option java_multiple_files = true;
30
+ option java_outer_classname = "MessageProto";
31
+ option ruby_package = "Temporalio::Api::Export::V1";
32
+ option csharp_namespace = "Temporalio.Api.Export.V1";
33
+
34
+ import "temporal/api/history/v1/message.proto";
35
+
36
+ message WorkflowExecution {
37
+ temporal.api.history.v1.History history = 1;
38
+ }
39
+
40
+ // WorkflowExecutions is used by the Cloud Export feature to deserialize
41
+ // the exported file. It encapsulates a collection of workflow execution information.
42
+ message WorkflowExecutions {
43
+ repeated WorkflowExecution items = 1;
44
+ }
26
45
 
27
- import (
28
- _ "github.com/temporalio/gogo-protobuf/gogoproto" // gogoproto is just a random package name for module.
29
- )
@@ -33,8 +33,6 @@ option csharp_namespace = "Temporalio.Api.Filter.V1";
33
33
 
34
34
  import "google/protobuf/timestamp.proto";
35
35
 
36
- import "dependencies/gogoproto/gogo.proto";
37
-
38
36
  import "temporal/api/enums/v1/workflow.proto";
39
37
 
40
38
  message WorkflowExecutionFilter {
@@ -47,8 +45,8 @@ message WorkflowTypeFilter {
47
45
  }
48
46
 
49
47
  message StartTimeFilter {
50
- google.protobuf.Timestamp earliest_time = 1 [(gogoproto.stdtime) = true];
51
- google.protobuf.Timestamp latest_time = 2 [(gogoproto.stdtime) = true];
48
+ google.protobuf.Timestamp earliest_time = 1;
49
+ google.protobuf.Timestamp latest_time = 2;
52
50
  }
53
51
 
54
52
  message StatusFilter {
@@ -34,8 +34,6 @@ option csharp_namespace = "Temporalio.Api.History.V1";
34
34
  import "google/protobuf/duration.proto";
35
35
  import "google/protobuf/timestamp.proto";
36
36
 
37
- import "dependencies/gogoproto/gogo.proto";
38
-
39
37
  import "temporal/api/enums/v1/event_type.proto";
40
38
  import "temporal/api/enums/v1/failed_cause.proto";
41
39
  import "temporal/api/enums/v1/workflow.proto";
@@ -62,11 +60,11 @@ message WorkflowExecutionStartedEventAttributes {
62
60
  // SDK will deserialize this and provide it as arguments to the workflow function
63
61
  temporal.api.common.v1.Payloads input = 6;
64
62
  // Total workflow execution timeout including retries and continue as new.
65
- google.protobuf.Duration workflow_execution_timeout = 7 [(gogoproto.stdduration) = true];
63
+ google.protobuf.Duration workflow_execution_timeout = 7;
66
64
  // Timeout of a single workflow run.
67
- google.protobuf.Duration workflow_run_timeout = 8 [(gogoproto.stdduration) = true];
65
+ google.protobuf.Duration workflow_run_timeout = 8;
68
66
  // Timeout of a single workflow task.
69
- google.protobuf.Duration workflow_task_timeout = 9 [(gogoproto.stdduration) = true];
67
+ google.protobuf.Duration workflow_task_timeout = 9;
70
68
  // Run id of the previous workflow which continued-as-new or retired or cron executed into this
71
69
  // workflow.
72
70
  string continued_execution_run_id = 10;
@@ -86,12 +84,12 @@ message WorkflowExecutionStartedEventAttributes {
86
84
  int32 attempt = 18;
87
85
  // The absolute time at which the workflow will be timed out.
88
86
  // This is passed without change to the next run/retry of a workflow.
89
- google.protobuf.Timestamp workflow_execution_expiration_time = 19 [(gogoproto.stdtime) = true];
87
+ google.protobuf.Timestamp workflow_execution_expiration_time = 19;
90
88
  // If this workflow runs on a cron schedule, it will appear here
91
89
  string cron_schedule = 20;
92
90
  // For a cron workflow, this contains the amount of time between when this iteration of
93
91
  // the cron workflow was scheduled and when it should run next per its cron_schedule.
94
- google.protobuf.Duration first_workflow_task_backoff = 21 [(gogoproto.stdduration) = true];
92
+ google.protobuf.Duration first_workflow_task_backoff = 21;
95
93
  temporal.api.common.v1.Memo memo = 22;
96
94
  temporal.api.common.v1.SearchAttributes search_attributes = 23;
97
95
  temporal.api.workflow.v1.ResetPoints prev_auto_reset_points = 24;
@@ -139,13 +137,13 @@ message WorkflowExecutionContinuedAsNewEventAttributes {
139
137
  temporal.api.taskqueue.v1.TaskQueue task_queue = 3;
140
138
  temporal.api.common.v1.Payloads input = 4;
141
139
  // Timeout of a single workflow run.
142
- google.protobuf.Duration workflow_run_timeout = 5 [(gogoproto.stdduration) = true];
140
+ google.protobuf.Duration workflow_run_timeout = 5;
143
141
  // Timeout of a single workflow task.
144
- google.protobuf.Duration workflow_task_timeout = 6 [(gogoproto.stdduration) = true];
142
+ google.protobuf.Duration workflow_task_timeout = 6;
145
143
  // The `WORKFLOW_TASK_COMPLETED` event which this command was reported with
146
144
  int64 workflow_task_completed_event_id = 7;
147
145
  // TODO: How and is this used?
148
- google.protobuf.Duration backoff_start_interval = 8 [(gogoproto.stdduration) = true];
146
+ google.protobuf.Duration backoff_start_interval = 8;
149
147
  temporal.api.enums.v1.ContinueAsNewInitiator initiator = 9;
150
148
  // TODO: David are these right?
151
149
  // Deprecated. If a workflow's retry policy would cause a new run to start when the current one
@@ -171,7 +169,7 @@ message WorkflowTaskScheduledEventAttributes {
171
169
  //
172
170
  // (-- api-linter: core::0140::prepositions=disabled
173
171
  // aip.dev/not-precedent: "to" is used to indicate interval. --)
174
- google.protobuf.Duration start_to_close_timeout = 2 [(gogoproto.stdduration) = true];
172
+ google.protobuf.Duration start_to_close_timeout = 2;
175
173
  // Starting at 1, how many attempts there have been to complete this task
176
174
  int32 attempt = 3;
177
175
  }
@@ -260,7 +258,7 @@ message ActivityTaskScheduledEventAttributes {
260
258
  //
261
259
  // (-- api-linter: core::0140::prepositions=disabled
262
260
  // aip.dev/not-precedent: "to" is used to indicate interval. --)
263
- google.protobuf.Duration schedule_to_close_timeout = 7 [(gogoproto.stdduration) = true];
261
+ google.protobuf.Duration schedule_to_close_timeout = 7;
264
262
  // Limits time an activity task can stay in a task queue before a worker picks it up. This
265
263
  // timeout is always non retryable, as all a retry would achieve is to put it back into the same
266
264
  // queue. Defaults to `schedule_to_close_timeout` or workflow execution timeout if not
@@ -268,16 +266,16 @@ message ActivityTaskScheduledEventAttributes {
268
266
  //
269
267
  // (-- api-linter: core::0140::prepositions=disabled
270
268
  // aip.dev/not-precedent: "to" is used to indicate interval. --)
271
- google.protobuf.Duration schedule_to_start_timeout = 8 [(gogoproto.stdduration) = true];
269
+ google.protobuf.Duration schedule_to_start_timeout = 8;
272
270
  // Maximum time an activity is allowed to execute after being picked up by a worker. This
273
271
  // timeout is always retryable. Either this or `schedule_to_close_timeout` must be
274
272
  // specified.
275
273
  //
276
274
  // (-- api-linter: core::0140::prepositions=disabled
277
275
  // aip.dev/not-precedent: "to" is used to indicate interval. --)
278
- google.protobuf.Duration start_to_close_timeout = 9 [(gogoproto.stdduration) = true];
276
+ google.protobuf.Duration start_to_close_timeout = 9;
279
277
  // Maximum permitted time between successful worker heartbeats.
280
- google.protobuf.Duration heartbeat_timeout = 10 [(gogoproto.stdduration) = true];
278
+ google.protobuf.Duration heartbeat_timeout = 10;
281
279
  // The `WORKFLOW_TASK_COMPLETED` event which this command was reported with
282
280
  int64 workflow_task_completed_event_id = 11;
283
281
  // Activities are assigned a default retry policy controlled by the service's dynamic
@@ -372,7 +370,7 @@ message TimerStartedEventAttributes {
372
370
  //
373
371
  // (-- api-linter: core::0140::prepositions=disabled
374
372
  // aip.dev/not-precedent: "to" is used to indicate interval. --)
375
- google.protobuf.Duration start_to_fire_timeout = 2 [(gogoproto.stdduration) = true];
373
+ google.protobuf.Duration start_to_fire_timeout = 2;
376
374
  // The `WORKFLOW_TASK_COMPLETED` event which this command was reported with
377
375
  int64 workflow_task_completed_event_id = 3;
378
376
  }
@@ -561,11 +559,11 @@ message StartChildWorkflowExecutionInitiatedEventAttributes {
561
559
  temporal.api.taskqueue.v1.TaskQueue task_queue = 4;
562
560
  temporal.api.common.v1.Payloads input = 5;
563
561
  // Total workflow execution timeout including retries and continue as new.
564
- google.protobuf.Duration workflow_execution_timeout = 6 [(gogoproto.stdduration) = true];
562
+ google.protobuf.Duration workflow_execution_timeout = 6;
565
563
  // Timeout of a single workflow run.
566
- google.protobuf.Duration workflow_run_timeout = 7 [(gogoproto.stdduration) = true];
564
+ google.protobuf.Duration workflow_run_timeout = 7;
567
565
  // Timeout of a single workflow task.
568
- google.protobuf.Duration workflow_task_timeout = 8 [(gogoproto.stdduration) = true];
566
+ google.protobuf.Duration workflow_task_timeout = 8;
569
567
  // Default: PARENT_CLOSE_POLICY_TERMINATE.
570
568
  temporal.api.enums.v1.ParentClosePolicy parent_close_policy = 9;
571
569
  // Deprecated
@@ -689,11 +687,11 @@ message WorkflowPropertiesModifiedExternallyEventAttributes {
689
687
  // the provided queue.
690
688
  string new_task_queue = 1;
691
689
  // If set, update the workflow task timeout to this value.
692
- google.protobuf.Duration new_workflow_task_timeout = 2 [(gogoproto.stdduration) = true];
690
+ google.protobuf.Duration new_workflow_task_timeout = 2;
693
691
  // If set, update the workflow run timeout to this value. May be set to 0 for no timeout.
694
- google.protobuf.Duration new_workflow_run_timeout = 3 [(gogoproto.stdduration) = true];
692
+ google.protobuf.Duration new_workflow_run_timeout = 3;
695
693
  // If set, update the workflow execution timeout to this value. May be set to 0 for no timeout.
696
- google.protobuf.Duration new_workflow_execution_timeout = 4 [(gogoproto.stdduration) = true];
694
+ google.protobuf.Duration new_workflow_execution_timeout = 4;
697
695
  // If set, update the workflow memo with the provided values. The values will be merged with
698
696
  // the existing memo. If the user wants to delete values, a default/empty Payload should be
699
697
  // used as the value for the key being deleted.
@@ -755,7 +753,7 @@ message WorkflowExecutionUpdateRejectedEventAttributes {
755
753
  message HistoryEvent {
756
754
  // Monotonically increasing event number, starts at 1.
757
755
  int64 event_id = 1;
758
- google.protobuf.Timestamp event_time = 2 [(gogoproto.stdtime) = true];
756
+ google.protobuf.Timestamp event_time = 2;
759
757
  temporal.api.enums.v1.EventType event_type = 3;
760
758
  // TODO: What is this? Appears unused by SDKs
761
759
  int64 version = 4;
@@ -34,8 +34,6 @@ option csharp_namespace = "Temporalio.Api.Namespace.V1";
34
34
  import "google/protobuf/duration.proto";
35
35
  import "google/protobuf/timestamp.proto";
36
36
 
37
- import "dependencies/gogoproto/gogo.proto";
38
-
39
37
  import "temporal/api/enums/v1/namespace.proto";
40
38
 
41
39
 
@@ -54,7 +52,7 @@ message NamespaceInfo {
54
52
  }
55
53
 
56
54
  message NamespaceConfig {
57
- google.protobuf.Duration workflow_execution_retention_ttl = 1 [(gogoproto.stdduration) = true];
55
+ google.protobuf.Duration workflow_execution_retention_ttl = 1;
58
56
  BadBinaries bad_binaries = 2;
59
57
  // If unspecified (ARCHIVAL_STATE_UNSPECIFIED) then default server configuration is used.
60
58
  temporal.api.enums.v1.ArchivalState history_archival_state = 3;
@@ -73,7 +71,7 @@ message BadBinaries {
73
71
  message BadBinaryInfo {
74
72
  string reason = 1;
75
73
  string operator = 2;
76
- google.protobuf.Timestamp create_time = 3 [(gogoproto.stdtime) = true];
74
+ google.protobuf.Timestamp create_time = 3;
77
75
  }
78
76
 
79
77
  message UpdateNamespaceInfo {
@@ -71,7 +71,9 @@ message ListSearchAttributesResponse {
71
71
  // (-- api-linter: core::0135::request-name-required=disabled
72
72
  // aip.dev/not-precedent: DeleteNamespace RPC doesn't follow Google API format. --)
73
73
  message DeleteNamespaceRequest {
74
+ // Only one of namespace or namespace_id must be specified to identify namespace.
74
75
  string namespace = 1;
76
+ string namespace_id = 2;
75
77
  }
76
78
 
77
79
  message DeleteNamespaceResponse {
@@ -33,6 +33,7 @@ option csharp_namespace = "Temporalio.Api.OperatorService.V1";
33
33
 
34
34
 
35
35
  import "temporal/api/operatorservice/v1/request_response.proto";
36
+ import "google/api/annotations.proto";
36
37
 
37
38
  // OperatorService API defines how Temporal SDKs and other clients interact with the Temporal server
38
39
  // to perform administrative functions like registering a search attribute or a namespace.
@@ -56,6 +57,9 @@ service OperatorService {
56
57
 
57
58
  // ListSearchAttributes returns comprehensive information about search attributes.
58
59
  rpc ListSearchAttributes (ListSearchAttributesRequest) returns (ListSearchAttributesResponse) {
60
+ option (google.api.http) = {
61
+ get: "/api/v1/namespaces/{namespace}/search-attributes",
62
+ };
59
63
  }
60
64
 
61
65
  // DeleteNamespace synchronously deletes a namespace and asynchronously reclaims all namespace resources.
@@ -33,8 +33,6 @@ option csharp_namespace = "Temporalio.Api.Replication.V1";
33
33
 
34
34
  import "google/protobuf/timestamp.proto";
35
35
 
36
- import "dependencies/gogoproto/gogo.proto";
37
-
38
36
  import "temporal/api/enums/v1/namespace.proto";
39
37
 
40
38
  message ClusterReplicationConfig {
@@ -50,6 +48,6 @@ message NamespaceReplicationConfig {
50
48
  // Represents a historical replication status of a Namespace
51
49
  message FailoverStatus {
52
50
  // Timestamp when the Cluster switched to the following failover_version
53
- google.protobuf.Timestamp failover_time = 1 [(gogoproto.stdtime) = true];
51
+ google.protobuf.Timestamp failover_time = 1;
54
52
  int64 failover_version = 2;
55
53
  }
@@ -39,8 +39,6 @@ option csharp_namespace = "Temporalio.Api.Schedule.V1";
39
39
  import "google/protobuf/duration.proto";
40
40
  import "google/protobuf/timestamp.proto";
41
41
 
42
- import "dependencies/gogoproto/gogo.proto";
43
-
44
42
  import "temporal/api/common/v1/message.proto";
45
43
  import "temporal/api/enums/v1/schedule.proto";
46
44
  import "temporal/api/workflow/v1/message.proto";
@@ -139,8 +137,8 @@ message StructuredCalendarSpec {
139
137
  // 2022-02-17T00:00:00Z (among other times). The same interval with a phase of 3
140
138
  // days, 5 hours, and 23 minutes would match 2022-02-20T05:23:00Z instead.
141
139
  message IntervalSpec {
142
- google.protobuf.Duration interval = 1 [(gogoproto.stdduration) = true];
143
- google.protobuf.Duration phase = 2 [(gogoproto.stdduration) = true];
140
+ google.protobuf.Duration interval = 1;
141
+ google.protobuf.Duration phase = 2;
144
142
  }
145
143
 
146
144
  // ScheduleSpec is a complete description of a set of absolute timestamps
@@ -158,6 +156,9 @@ message IntervalSpec {
158
156
  // On input, calendar and cron_string fields will be compiled into
159
157
  // structured_calendar (and maybe interval and timezone_name), so if you
160
158
  // Describe a schedule, you'll see only structured_calendar, interval, etc.
159
+ //
160
+ // If a spec has no matching times after the current time, then the schedule
161
+ // will be subject to automatic deletion (after several days).
161
162
  message ScheduleSpec {
162
163
  // Calendar-based specifications of times.
163
164
  repeated StructuredCalendarSpec structured_calendar = 7;
@@ -191,12 +192,12 @@ message ScheduleSpec {
191
192
  repeated StructuredCalendarSpec exclude_structured_calendar = 9;
192
193
  // If start_time is set, any timestamps before start_time will be skipped.
193
194
  // (Together, start_time and end_time make an inclusive interval.)
194
- google.protobuf.Timestamp start_time = 4 [(gogoproto.stdtime) = true];
195
+ google.protobuf.Timestamp start_time = 4;
195
196
  // If end_time is set, any timestamps after end_time will be skipped.
196
- google.protobuf.Timestamp end_time = 5 [(gogoproto.stdtime) = true];
197
+ google.protobuf.Timestamp end_time = 5;
197
198
  // All timestamps will be incremented by a random value from 0 to this
198
199
  // amount of jitter. Default: 0
199
- google.protobuf.Duration jitter = 6 [(gogoproto.stdduration) = true];
200
+ google.protobuf.Duration jitter = 6;
200
201
 
201
202
  // Time zone to interpret all calendar-based specs in.
202
203
  //
@@ -235,8 +236,8 @@ message SchedulePolicies {
235
236
  // If the Temporal server misses an action due to one or more components
236
237
  // being down, and comes back up, the action will be run if the scheduled
237
238
  // time is within this window from the current time.
238
- // This value defaults to 60 seconds, and can't be less than 10 seconds.
239
- google.protobuf.Duration catchup_window = 2 [(gogoproto.stdduration) = true];
239
+ // This value defaults to one year, and can't be less than 10 seconds.
240
+ google.protobuf.Duration catchup_window = 2;
240
241
 
241
242
  // If true, and a workflow run fails or times out, turn on "paused".
242
243
  // This applies after retry policies: the full chain of retries must fail to
@@ -257,10 +258,10 @@ message ScheduleAction {
257
258
 
258
259
  message ScheduleActionResult {
259
260
  // Time that the action was taken (according to the schedule, including jitter).
260
- google.protobuf.Timestamp schedule_time = 1 [(gogoproto.stdtime) = true];
261
+ google.protobuf.Timestamp schedule_time = 1;
261
262
 
262
263
  // Time that the action was taken (real time).
263
- google.protobuf.Timestamp actual_time = 2 [(gogoproto.stdtime) = true];
264
+ google.protobuf.Timestamp actual_time = 2;
264
265
 
265
266
  // If action was start_workflow:
266
267
  temporal.api.common.v1.WorkflowExecution start_workflow_result = 11;
@@ -280,20 +281,27 @@ message ScheduleState {
280
281
  // is zero. Actions may still be taken by explicit request (i.e. trigger
281
282
  // immediately or backfill). Skipped actions (due to overlap policy) do not
282
283
  // count against remaining actions.
284
+ // If a schedule has no more remaining actions, then the schedule will be
285
+ // subject to automatic deletion (after several days).
283
286
  bool limited_actions = 3;
284
287
  int64 remaining_actions = 4;
285
288
  }
286
289
 
287
290
  message TriggerImmediatelyRequest {
288
- // Override overlap policy for this one request.
291
+ // If set, override overlap policy for this one request.
289
292
  temporal.api.enums.v1.ScheduleOverlapPolicy overlap_policy = 1;
290
293
  }
291
294
 
292
295
  message BackfillRequest {
293
- // Time range to evaluate schedule in.
294
- google.protobuf.Timestamp start_time = 1 [(gogoproto.stdtime) = true];
295
- google.protobuf.Timestamp end_time = 2 [(gogoproto.stdtime) = true];
296
- // Override overlap policy for this request.
296
+ // Time range to evaluate schedule in. Currently, this time range is
297
+ // exclusive on start_time and inclusive on end_time. (This is admittedly
298
+ // counterintuitive and it may change in the future, so to be safe, use a
299
+ // start time strictly before a scheduled time.) Also note that an action
300
+ // nominally scheduled in the interval but with jitter that pushes it after
301
+ // end_time will not be included.
302
+ google.protobuf.Timestamp start_time = 1;
303
+ google.protobuf.Timestamp end_time = 2;
304
+ // If set, override overlap policy for this request.
297
305
  temporal.api.enums.v1.ScheduleOverlapPolicy overlap_policy = 3;
298
306
  }
299
307
 
@@ -322,6 +330,14 @@ message ScheduleInfo {
322
330
  // Number of skipped actions due to overlap.
323
331
  int64 overlap_skipped = 3;
324
332
 
333
+ // Number of dropped actions due to buffer limit.
334
+ int64 buffer_dropped = 10;
335
+
336
+ // Number of actions in the buffer. The buffer holds the actions that cannot
337
+ // be immediately triggered (due to the overlap policy). These actions can be a result of
338
+ // the normal schedule or a backfill.
339
+ int64 buffer_size = 11;
340
+
325
341
  // Currently-running workflows started by this schedule. (There might be
326
342
  // more than one if the overlap policy allows overlaps.)
327
343
  // Note that the run_ids in here are the original execution run ids as
@@ -333,11 +349,11 @@ message ScheduleInfo {
333
349
  repeated ScheduleActionResult recent_actions = 4;
334
350
 
335
351
  // Next ten scheduled action times.
336
- repeated google.protobuf.Timestamp future_action_times = 5 [(gogoproto.stdtime) = true];
352
+ repeated google.protobuf.Timestamp future_action_times = 5;
337
353
 
338
354
  // Timestamps of schedule creation and last update.
339
- google.protobuf.Timestamp create_time = 6 [(gogoproto.stdtime) = true];
340
- google.protobuf.Timestamp update_time = 7 [(gogoproto.stdtime) = true];
355
+ google.protobuf.Timestamp create_time = 6;
356
+ google.protobuf.Timestamp update_time = 7;
341
357
 
342
358
  string invalid_schedule_error = 8 [deprecated = true];
343
359
  }
@@ -367,7 +383,7 @@ message ScheduleListInfo {
367
383
 
368
384
  // From info (maybe fewer entries):
369
385
  repeated ScheduleActionResult recent_actions = 5;
370
- repeated google.protobuf.Timestamp future_action_times = 6 [(gogoproto.stdtime) = true];
386
+ repeated google.protobuf.Timestamp future_action_times = 6;
371
387
  }
372
388
 
373
389
  // ScheduleListEntry is returned by ListSchedules.
@@ -60,4 +60,17 @@ message WorkflowTaskCompletedMetadata {
60
60
  // (-- api-linter: core::0141::forbidden-types=disabled
61
61
  // aip.dev/not-precedent: These really shouldn't have negative values. --)
62
62
  repeated uint32 lang_used_flags = 2;
63
+
64
+ // Name of the SDK that processed the task. This is usually something like "temporal-go" and is
65
+ // usually the same as client-name gRPC header. This should only be set if its value changed
66
+ // since the last time recorded on the workflow (or be set on the first task).
67
+ //
68
+ // (-- api-linter: core::0122::name-suffix=disabled
69
+ // aip.dev/not-precedent: We're ok with a name suffix here. --)
70
+ string sdk_name = 3;
71
+
72
+ // Version of the SDK that processed the task. This is usually something like "1.20.0" and is
73
+ // usually the same as client-version gRPC header. This should only be set if its value changed
74
+ // since the last time recorded on the workflow (or be set on the first task).
75
+ string sdk_version = 4;
63
76
  }
@@ -0,0 +1,66 @@
1
+ // The MIT License
2
+ //
3
+ // Copyright (c) 2020 Temporal Technologies Inc. All rights reserved.
4
+ //
5
+ // Permission is hereby granted, free of charge, to any person obtaining a copy
6
+ // of this software and associated documentation files (the "Software"), to deal
7
+ // in the Software without restriction, including without limitation the rights
8
+ // to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
9
+ // copies of the Software, and to permit persons to whom the Software is
10
+ // furnished to do so, subject to the following conditions:
11
+ //
12
+ // The above copyright notice and this permission notice shall be included in
13
+ // all copies or substantial portions of the Software.
14
+ //
15
+ // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16
+ // IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17
+ // FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
18
+ // AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19
+ // LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20
+ // OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
21
+ // THE SOFTWARE.
22
+
23
+ syntax = "proto3";
24
+
25
+ package temporal.api.sdk.v1;
26
+
27
+ option go_package = "go.temporal.io/api/sdk/v1;sdk";
28
+ option java_package = "io.temporal.api.sdk.v1";
29
+ option java_multiple_files = true;
30
+ option java_outer_classname = "WorkflowMetadataProto";
31
+ option ruby_package = "Temporalio::Api::Sdk::V1";
32
+ option csharp_namespace = "Temporalio.Api.Sdk.V1";
33
+
34
+ // The name of the query to retrieve this information is `__temporal_getWorkflowMetadata`.
35
+ message WorkflowMetadata {
36
+ // Metadata provided at declaration or creation time.
37
+ WorkflowDefinition definition = 1;
38
+ }
39
+
40
+ // (-- api-linter: core::0203::optional=disabled --)
41
+ message WorkflowDefinition {
42
+ // A name scoped by the task queue that maps to this workflow definition.
43
+ // If missing, this workflow is a dynamic workflow.
44
+ string type = 1;
45
+ // An optional workflow description provided by the application.
46
+ // By convention, external tools may interpret its first part,
47
+ // i.e., ending with a line break, as a summary of the description.
48
+ string description = 2;
49
+ repeated WorkflowInteractionDefinition query_definitions = 3;
50
+ repeated WorkflowInteractionDefinition signal_definitions = 4;
51
+ repeated WorkflowInteractionDefinition update_definitions = 5;
52
+ }
53
+
54
+ // (-- api-linter: core::0123::resource-annotation=disabled
55
+ // aip.dev/not-precedent: The `name` field is optional. --)
56
+ // (-- api-linter: core::0203::optional=disabled --)
57
+ message WorkflowInteractionDefinition {
58
+ // An optional name for the handler. If missing, it represents
59
+ // a dynamic handler that processes any interactions not handled by others.
60
+ // There is at most one dynamic handler per workflow and interaction kind.
61
+ string name = 1;
62
+ // An optional interaction description provided by the application.
63
+ // By convention, external tools may interpret its first part,
64
+ // i.e., ending with a line break, as a summary of the description.
65
+ string description = 2;
66
+ }
@@ -35,8 +35,6 @@ import "google/protobuf/duration.proto";
35
35
  import "google/protobuf/timestamp.proto";
36
36
  import "google/protobuf/wrappers.proto";
37
37
 
38
- import "dependencies/gogoproto/gogo.proto";
39
-
40
38
  import "temporal/api/enums/v1/task_queue.proto";
41
39
  import "temporal/api/common/v1/message.proto";
42
40
 
@@ -75,7 +73,7 @@ message TaskQueuePartitionMetadata {
75
73
  }
76
74
 
77
75
  message PollerInfo {
78
- google.protobuf.Timestamp last_access_time = 1 [(gogoproto.stdtime) = true];
76
+ google.protobuf.Timestamp last_access_time = 1;
79
77
  string identity = 2;
80
78
  double rate_per_second = 3;
81
79
  // If a worker has opted into the worker versioning feature while polling, its capabilities will
@@ -87,7 +85,7 @@ message StickyExecutionAttributes {
87
85
  TaskQueue worker_task_queue = 1;
88
86
  // (-- api-linter: core::0140::prepositions=disabled
89
87
  // aip.dev/not-precedent: "to" is used to indicate interval. --)
90
- google.protobuf.Duration schedule_to_start_timeout = 2 [(gogoproto.stdduration) = true];
88
+ google.protobuf.Duration schedule_to_start_timeout = 2;
91
89
  }
92
90
 
93
91
  // Used by the worker versioning APIs, represents an unordered set of one or more versions which are
@@ -44,7 +44,7 @@ message WaitPolicy {
44
44
  temporal.api.enums.v1.UpdateWorkflowExecutionLifecycleStage lifecycle_stage = 1;
45
45
  }
46
46
 
47
- // The data needed by a client to refer to an previously invoked workflow
47
+ // The data needed by a client to refer to a previously invoked workflow
48
48
  // execution update process.
49
49
  message UpdateRef {
50
50
  temporal.api.common.v1.WorkflowExecution workflow_execution = 1;
@@ -32,13 +32,12 @@ option ruby_package = "Temporalio::Api::Version::V1";
32
32
  option csharp_namespace = "Temporalio.Api.Version.V1";
33
33
 
34
34
  import "google/protobuf/timestamp.proto";
35
- import "dependencies/gogoproto/gogo.proto";
36
35
  import "temporal/api/enums/v1/common.proto";
37
36
 
38
37
  // ReleaseInfo contains information about specific version of temporal.
39
38
  message ReleaseInfo {
40
39
  string version = 1;
41
- google.protobuf.Timestamp release_time = 2 [(gogoproto.stdtime) = true];
40
+ google.protobuf.Timestamp release_time = 2;
42
41
  string notes = 3;
43
42
  }
44
43
 
@@ -54,6 +53,6 @@ message VersionInfo {
54
53
  ReleaseInfo recommended = 2;
55
54
  string instructions = 3;
56
55
  repeated Alert alerts = 4;
57
- google.protobuf.Timestamp last_update_time = 5 [(gogoproto.stdtime) = true];
56
+ google.protobuf.Timestamp last_update_time = 5;
58
57
  }
59
58