temporalio 1.6.0 → 1.7.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 (99) hide show
  1. checksums.yaml +4 -4
  2. data/Cargo.lock +37 -67
  3. data/Gemfile +3 -0
  4. data/README.md +17 -2
  5. data/Rakefile +1 -1
  6. data/ext/Cargo.toml +3 -3
  7. data/lib/temporalio/api/activity/v1/message.rb +1 -1
  8. data/lib/temporalio/api/batch/v1/message.rb +4 -1
  9. data/lib/temporalio/api/command/v1/message.rb +2 -1
  10. data/lib/temporalio/api/common/v1/message.rb +5 -1
  11. data/lib/temporalio/api/enums/v1/activity.rb +1 -1
  12. data/lib/temporalio/api/enums/v1/batch_operation.rb +1 -1
  13. data/lib/temporalio/api/enums/v1/common.rb +2 -1
  14. data/lib/temporalio/api/enums/v1/failed_cause.rb +1 -1
  15. data/lib/temporalio/api/enums/v1/time_skipping.rb +21 -0
  16. data/lib/temporalio/api/errordetails/v1/message.rb +2 -1
  17. data/lib/temporalio/api/history/v1/message.rb +1 -1
  18. data/lib/temporalio/api/namespace/v1/message.rb +1 -1
  19. data/lib/temporalio/api/taskqueue/v1/message.rb +2 -1
  20. data/lib/temporalio/api/worker/v1/message.rb +13 -1
  21. data/lib/temporalio/api/workflow/v1/message.rb +1 -1
  22. data/lib/temporalio/api/workflowservice/v1/request_response.rb +4 -1
  23. data/lib/temporalio/api/workflowservice/v1/service.rb +1 -1
  24. data/lib/temporalio/client/connection/workflow_service.rb +15 -0
  25. data/lib/temporalio/client/connection.rb +33 -3
  26. data/lib/temporalio/client/schedule.rb +4 -5
  27. data/lib/temporalio/client/workflow_execution.rb +2 -2
  28. data/lib/temporalio/client/workflow_handle.rb +2 -1
  29. data/lib/temporalio/client.rb +4 -6
  30. data/lib/temporalio/converters/data_converter.rb +1 -0
  31. data/lib/temporalio/converters/failure_converter.rb +7 -4
  32. data/lib/temporalio/internal/bridge/api/common/common.rb +2 -1
  33. data/lib/temporalio/internal/bridge/api/workflow_completion/workflow_completion.rb +1 -1
  34. data/lib/temporalio/internal/bridge/client.rb +3 -1
  35. data/lib/temporalio/internal/bridge/runtime.rb +4 -1
  36. data/lib/temporalio/internal/bridge/worker.rb +3 -1
  37. data/lib/temporalio/internal/worker/workflow_instance/illegal_call_tracer.rb +9 -0
  38. data/lib/temporalio/runtime.rb +25 -7
  39. data/lib/temporalio/scoped_logger.rb +15 -0
  40. data/lib/temporalio/version.rb +1 -1
  41. data/lib/temporalio/worker/workflow_replayer.rb +2 -0
  42. data/lib/temporalio/worker.rb +24 -4
  43. data/lib/temporalio/workflow.rb +8 -9
  44. data/rbi/temporalio/api/activity/v1/message.rbi +100 -14
  45. data/rbi/temporalio/api/batch/v1/message.rbi +229 -2
  46. data/rbi/temporalio/api/command/v1/message.rbi +22 -2
  47. data/rbi/temporalio/api/common/v1/message.rbi +548 -74
  48. data/rbi/temporalio/api/enums/v1/activity.rbi +1 -0
  49. data/rbi/temporalio/api/enums/v1/batch_operation.rbi +9 -0
  50. data/rbi/temporalio/api/enums/v1/common.rbi +18 -0
  51. data/rbi/temporalio/api/enums/v1/failed_cause.rbi +4 -0
  52. data/rbi/temporalio/api/enums/v1/time_skipping.rbi +22 -0
  53. data/rbi/temporalio/api/errordetails/v1/message.rbi +59 -2
  54. data/rbi/temporalio/api/history/v1/message.rbi +27 -7
  55. data/rbi/temporalio/api/namespace/v1/message.rbi +95 -4
  56. data/rbi/temporalio/api/taskqueue/v1/message.rbi +113 -2
  57. data/rbi/temporalio/api/worker/v1/message.rbi +742 -2
  58. data/rbi/temporalio/api/workflow/v1/message.rbi +22 -2
  59. data/rbi/temporalio/api/workflowservice/v1/request_response.rbi +701 -117
  60. data/rbi/temporalio/api/workflowservice/v1/service_services.rbi +8 -0
  61. data/rbi/temporalio/client/connection/workflow_service.rbi +3 -0
  62. data/rbi/temporalio/client/connection.rbi +2 -0
  63. data/rbi/temporalio/converters/failure_converter.rbi +7 -2
  64. data/rbi/temporalio/internal/bridge/api/common/common.rbi +115 -0
  65. data/rbi/temporalio/internal/bridge/api/workflow_completion/workflow_completion.rbi +42 -2
  66. data/rbi/temporalio/internal/bridge/runtime.rbi +24 -4
  67. data/rbi/temporalio/internal/bridge/worker.rbi +2 -0
  68. data/rbi/temporalio/runtime.rbi +13 -4
  69. data/rbi/temporalio/scoped_logger.rbi +1 -1
  70. data/rbi/temporalio/worker.rbi +9 -2
  71. data/rbi/temporalio/workflow/future.rbi +1 -1
  72. data/sig/temporalio/api/activity/v1/message.rbs +48 -2
  73. data/sig/temporalio/api/batch/v1/message.rbs +86 -0
  74. data/sig/temporalio/api/command/v1/message.rbs +10 -0
  75. data/sig/temporalio/api/common/v1/message.rbs +240 -39
  76. data/sig/temporalio/api/enums/v1/activity.rbs +9 -5
  77. data/sig/temporalio/api/enums/v1/batch_operation.rbs +33 -3
  78. data/sig/temporalio/api/enums/v1/common.rbs +23 -0
  79. data/sig/temporalio/api/enums/v1/failed_cause.rbs +18 -6
  80. data/sig/temporalio/api/enums/v1/time_skipping.rbs +58 -0
  81. data/sig/temporalio/api/errordetails/v1/message.rbs +19 -0
  82. data/sig/temporalio/api/history/v1/message.rbs +13 -3
  83. data/sig/temporalio/api/namespace/v1/message.rbs +43 -0
  84. data/sig/temporalio/api/taskqueue/v1/message.rbs +44 -0
  85. data/sig/temporalio/api/worker/v1/message.rbs +410 -0
  86. data/sig/temporalio/api/workflow/v1/message.rbs +10 -0
  87. data/sig/temporalio/api/workflowservice/v1/request_response.rbs +311 -40
  88. data/sig/temporalio/client/connection/workflow_service.rbs +4 -0
  89. data/sig/temporalio/client/connection.rbs +14 -1
  90. data/sig/temporalio/converters/failure_converter.rbs +4 -1
  91. data/sig/temporalio/internal/bridge/api/common/common.rbs +50 -0
  92. data/sig/temporalio/internal/bridge/api/workflow_completion/workflow_completion.rbs +20 -0
  93. data/sig/temporalio/internal/bridge/client.rbs +5 -1
  94. data/sig/temporalio/internal/bridge/runtime.rbs +9 -3
  95. data/sig/temporalio/internal/bridge/worker.rbs +5 -1
  96. data/sig/temporalio/runtime.rbs +14 -3
  97. data/sig/temporalio/scoped_logger.rbs +1 -1
  98. data/sig/temporalio/worker.rbs +8 -2
  99. metadata +4 -1
@@ -34,6 +34,12 @@ module Temporalio
34
34
  def has_close_time?: () -> bool
35
35
  def clear_close_time: () -> void
36
36
 
37
+ # Operation type
38
+ attr_reader operation_type(): ::Temporalio::Api::Enums::V1::BatchOperationType::names | ::Integer
39
+ attr_writer operation_type(): ::Temporalio::Api::Enums::V1::BatchOperationType::names | ::Temporalio::Api::Enums::V1::BatchOperationType::strings | ::Integer | ::Float
40
+ attr_reader operation_type_const(): ::Integer
41
+ def clear_operation_type: () -> void
42
+
37
43
  type init_map = {
38
44
  job_id: (::String | ::Symbol)?,
39
45
  "job_id" => (::String | ::Symbol)?,
@@ -43,6 +49,8 @@ module Temporalio
43
49
  "start_time" => (::Google::Protobuf::Timestamp | ::Google::Protobuf::Timestamp)?,
44
50
  close_time: (::Google::Protobuf::Timestamp | ::Google::Protobuf::Timestamp)?,
45
51
  "close_time" => (::Google::Protobuf::Timestamp | ::Google::Protobuf::Timestamp)?,
52
+ operation_type: (::Temporalio::Api::Enums::V1::BatchOperationType::names | ::Temporalio::Api::Enums::V1::BatchOperationType::strings | ::Integer | ::Float)?,
53
+ "operation_type" => (::Temporalio::Api::Enums::V1::BatchOperationType::names | ::Temporalio::Api::Enums::V1::BatchOperationType::strings | ::Integer | ::Float)?,
46
54
  }
47
55
 
48
56
  def initialize: (?init_map initial_value) -> void
@@ -52,12 +60,14 @@ module Temporalio
52
60
  | ("state" name) -> (::Temporalio::Api::Enums::V1::BatchOperationState::names | ::Integer)
53
61
  | ("start_time" name) -> ::Google::Protobuf::Timestamp?
54
62
  | ("close_time" name) -> ::Google::Protobuf::Timestamp?
63
+ | ("operation_type" name) -> (::Temporalio::Api::Enums::V1::BatchOperationType::names | ::Integer)
55
64
 
56
65
  def []=:
57
66
  ("job_id" name, (::String | ::Symbol) value) -> void
58
67
  | ("state" name, (::Temporalio::Api::Enums::V1::BatchOperationState::names | ::Temporalio::Api::Enums::V1::BatchOperationState::strings | ::Integer | ::Float) value) -> void
59
68
  | ("start_time" name, ((::Google::Protobuf::Timestamp | ::Time)?) value) -> void
60
69
  | ("close_time" name, ((::Google::Protobuf::Timestamp | ::Time)?) value) -> void
70
+ | ("operation_type" name, (::Temporalio::Api::Enums::V1::BatchOperationType::names | ::Temporalio::Api::Enums::V1::BatchOperationType::strings | ::Integer | ::Float) value) -> void
61
71
  end
62
72
 
63
73
  # BatchOperationTermination sends terminate requests to batch workflows.
@@ -93,6 +103,39 @@ module Temporalio
93
103
  | ("identity" name, (::String | ::Symbol) value) -> void
94
104
  end
95
105
 
106
+ # BatchOperationTerminateActivities sends terminate requests to a batch of activities.
107
+ # Keep the parameter in sync with temporal.api.workflowservice.v1.TerminateActivityExecutionRequest.
108
+ class BatchOperationTerminateActivities < ::Google::Protobuf::AbstractMessage
109
+
110
+ # The identity of the worker/client
111
+ attr_reader identity(): ::String
112
+ attr_writer identity(): ::String | ::Symbol
113
+ def clear_identity: () -> void
114
+
115
+ # Reason for requesting the termination, recorded and available via the PollActivityExecution API.
116
+ # Not propagated to a worker if an activity attempt is currently running.
117
+ attr_reader reason(): ::String
118
+ attr_writer reason(): ::String | ::Symbol
119
+ def clear_reason: () -> void
120
+
121
+ type init_map = {
122
+ identity: (::String | ::Symbol)?,
123
+ "identity" => (::String | ::Symbol)?,
124
+ reason: (::String | ::Symbol)?,
125
+ "reason" => (::String | ::Symbol)?,
126
+ }
127
+
128
+ def initialize: (?init_map initial_value) -> void
129
+
130
+ def []:
131
+ ("identity" name) -> ::String
132
+ | ("reason" name) -> ::String
133
+
134
+ def []=:
135
+ ("identity" name, (::String | ::Symbol) value) -> void
136
+ | ("reason" name, (::String | ::Symbol) value) -> void
137
+ end
138
+
96
139
  # BatchOperationSignal sends signals to batch workflows.
97
140
  # Keep the parameter in sync with temporal.api.workflowservice.v1.SignalWorkflowExecutionRequest.
98
141
  class BatchOperationSignal < ::Google::Protobuf::AbstractMessage
@@ -168,6 +211,39 @@ module Temporalio
168
211
  ("identity" name, (::String | ::Symbol) value) -> void
169
212
  end
170
213
 
214
+ # BatchOperationCancelActivities sends cancel requests to a batch of activities.
215
+ # Keep the parameter in sync with temporal.api.workflowservice.v1.RequestCancelActivityExecutionRequest.
216
+ class BatchOperationCancelActivities < ::Google::Protobuf::AbstractMessage
217
+
218
+ # The identity of the worker/client
219
+ attr_reader identity(): ::String
220
+ attr_writer identity(): ::String | ::Symbol
221
+ def clear_identity: () -> void
222
+
223
+ # Reason for requesting the cancellation, recorded and available via the PollActivityExecution API.
224
+ # Not propagated to a worker if an activity attempt is currently running.
225
+ attr_reader reason(): ::String
226
+ attr_writer reason(): ::String | ::Symbol
227
+ def clear_reason: () -> void
228
+
229
+ type init_map = {
230
+ identity: (::String | ::Symbol)?,
231
+ "identity" => (::String | ::Symbol)?,
232
+ reason: (::String | ::Symbol)?,
233
+ "reason" => (::String | ::Symbol)?,
234
+ }
235
+
236
+ def initialize: (?init_map initial_value) -> void
237
+
238
+ def []:
239
+ ("identity" name) -> ::String
240
+ | ("reason" name) -> ::String
241
+
242
+ def []=:
243
+ ("identity" name, (::String | ::Symbol) value) -> void
244
+ | ("reason" name, (::String | ::Symbol) value) -> void
245
+ end
246
+
171
247
  # BatchOperationDeletion sends deletion requests to batch workflows.
172
248
  # Keep the parameter in sync with temporal.api.workflowservice.v1.DeleteWorkflowExecutionRequest.
173
249
  class BatchOperationDeletion < ::Google::Protobuf::AbstractMessage
@@ -191,6 +267,16 @@ module Temporalio
191
267
  ("identity" name, (::String | ::Symbol) value) -> void
192
268
  end
193
269
 
270
+ # BatchOperationDeleteActivities sends deletion requests to a batch of activities.
271
+ # Keep the parameter in sync with temporal.api.workflowservice.v1.DeleteActivityExecutionRequest.
272
+ class BatchOperationDeleteActivities < ::Google::Protobuf::AbstractMessage
273
+
274
+ type init_map = {
275
+ }
276
+
277
+ def initialize: (?init_map initial_value) -> void
278
+ end
279
+
194
280
  # BatchOperationReset sends reset requests to batch workflows.
195
281
  # Keep the parameter in sync with temporal.api.workflowservice.v1.ResetWorkflowExecutionRequest.
196
282
  class BatchOperationReset < ::Google::Protobuf::AbstractMessage
@@ -773,6 +773,12 @@ module Temporalio
773
773
  def has_priority?: () -> bool
774
774
  def clear_priority: () -> void
775
775
 
776
+ # Versioning override for the child workflow. If present, this explicit override takes
777
+ # precedence over versioning behavior inherited from the parent workflow.
778
+ attr_accessor versioning_override(): ::Temporalio::Api::Workflow::V1::VersioningOverride?
779
+ def has_versioning_override?: () -> bool
780
+ def clear_versioning_override: () -> void
781
+
776
782
  type init_map = {
777
783
  namespace: (::String | ::Symbol)?,
778
784
  "namespace" => (::String | ::Symbol)?,
@@ -810,6 +816,8 @@ module Temporalio
810
816
  "inherit_build_id" => bool?,
811
817
  priority: (::Temporalio::Api::Common::V1::Priority | ::Temporalio::Api::Common::V1::Priority::init_map)?,
812
818
  "priority" => (::Temporalio::Api::Common::V1::Priority | ::Temporalio::Api::Common::V1::Priority::init_map)?,
819
+ versioning_override: (::Temporalio::Api::Workflow::V1::VersioningOverride | ::Temporalio::Api::Workflow::V1::VersioningOverride::init_map)?,
820
+ "versioning_override" => (::Temporalio::Api::Workflow::V1::VersioningOverride | ::Temporalio::Api::Workflow::V1::VersioningOverride::init_map)?,
813
821
  }
814
822
 
815
823
  def initialize: (?init_map initial_value) -> void
@@ -833,6 +841,7 @@ module Temporalio
833
841
  | ("search_attributes" name) -> ::Temporalio::Api::Common::V1::SearchAttributes?
834
842
  | ("inherit_build_id" name) -> bool
835
843
  | ("priority" name) -> ::Temporalio::Api::Common::V1::Priority?
844
+ | ("versioning_override" name) -> ::Temporalio::Api::Workflow::V1::VersioningOverride?
836
845
 
837
846
  def []=:
838
847
  ("namespace" name, (::String | ::Symbol) value) -> void
@@ -853,6 +862,7 @@ module Temporalio
853
862
  | ("search_attributes" name, ::Temporalio::Api::Common::V1::SearchAttributes? value) -> void
854
863
  | ("inherit_build_id" name, bool value) -> void
855
864
  | ("priority" name, ::Temporalio::Api::Common::V1::Priority? value) -> void
865
+ | ("versioning_override" name, ::Temporalio::Api::Workflow::V1::VersioningOverride? value) -> void
856
866
  end
857
867
 
858
868
  class ProtocolMessageCommandAttributes < ::Google::Protobuf::AbstractMessage
@@ -208,6 +208,45 @@ module Temporalio
208
208
  | ("run_id" name, (::String | ::Symbol) value) -> void
209
209
  end
210
210
 
211
+ # Identifies a specific execution within a namespace. This is used for standalone activities
212
+ # executions in batch jobs currently.
213
+ class Execution < ::Google::Protobuf::AbstractMessage
214
+
215
+ attr_reader type(): ::Temporalio::Api::Enums::V1::ExecutionType::names | ::Integer
216
+ attr_writer type(): ::Temporalio::Api::Enums::V1::ExecutionType::names | ::Temporalio::Api::Enums::V1::ExecutionType::strings | ::Integer | ::Float
217
+ attr_reader type_const(): ::Integer
218
+ def clear_type: () -> void
219
+
220
+ attr_reader business_id(): ::String
221
+ attr_writer business_id(): ::String | ::Symbol
222
+ def clear_business_id: () -> void
223
+
224
+ attr_reader run_id(): ::String
225
+ attr_writer run_id(): ::String | ::Symbol
226
+ def clear_run_id: () -> void
227
+
228
+ type init_map = {
229
+ type: (::Temporalio::Api::Enums::V1::ExecutionType::names | ::Temporalio::Api::Enums::V1::ExecutionType::strings | ::Integer | ::Float)?,
230
+ "type" => (::Temporalio::Api::Enums::V1::ExecutionType::names | ::Temporalio::Api::Enums::V1::ExecutionType::strings | ::Integer | ::Float)?,
231
+ business_id: (::String | ::Symbol)?,
232
+ "business_id" => (::String | ::Symbol)?,
233
+ run_id: (::String | ::Symbol)?,
234
+ "run_id" => (::String | ::Symbol)?,
235
+ }
236
+
237
+ def initialize: (?init_map initial_value) -> void
238
+
239
+ def []:
240
+ ("type" name) -> (::Temporalio::Api::Enums::V1::ExecutionType::names | ::Integer)
241
+ | ("business_id" name) -> ::String
242
+ | ("run_id" name) -> ::String
243
+
244
+ def []=:
245
+ ("type" name, (::Temporalio::Api::Enums::V1::ExecutionType::names | ::Temporalio::Api::Enums::V1::ExecutionType::strings | ::Integer | ::Float) value) -> void
246
+ | ("business_id" name, (::String | ::Symbol) value) -> void
247
+ | ("run_id" name, (::String | ::Symbol) value) -> void
248
+ end
249
+
211
250
  # Represents the identifier used by a workflow author to define the workflow. Typically, the
212
251
  # name of a function. This is sometimes referred to as the workflow's "name"
213
252
  class WorkflowType < ::Google::Protobuf::AbstractMessage
@@ -1128,14 +1167,16 @@ module Temporalio
1128
1167
  | ("attach_links" name, bool value) -> void
1129
1168
  end
1130
1169
 
1131
- # The configuration for time skipping of a workflow execution (a chain of runs including retries, cron, continue-as-new).
1170
+ # The configuration for time skipping of an execution.
1132
1171
  # When time skipping is enabled, virtual time advances automatically whenever there is no in-flight work.
1133
- # In-flight work includes activities, child workflows, Nexus operations, signal/cancel external workflow operations,
1134
- # and possibly other features added in the future.
1172
+ # Options like fast_forward, disable_propagation, and max_session_skip_count are provided for granular
1173
+ # control of the execution's time skipping behavior. See each field's comment for a detailed explanation.
1174
+ # An example of workflows with time skipping:
1175
+ # For workflows, an execution is a chain of runs including retries, cron, and continue-as-new.
1176
+ # In-flight work includes activities, child workflows, Nexus operations, signal/cancel external workflow operations, etc.
1135
1177
  # User timers are not classified as in-flight work and will be skipped over; the virtual clock may also skip to the
1136
- # time point of the registered fast forward when there is no in-flight work.
1137
- # When time is skipped, a WorkflowExecutionTimeSkippingTransitionedEvent will be
1138
- # added to the workflow history to capture the state changes.
1178
+ # time point of the registered fast-forward when there is no in-flight work.
1179
+ # Whenever time is skipped, the skip count is incremented by one; max_session_skip_count bounds the number of skips allowed within a single time-skipping session.
1139
1180
  # For child workflows, by default, if the parent execution is skipping time, the child execution will also skip time,
1140
1181
  # but a parent's fast_forward won't affect its child's execution. A flag is provided to disable propagation of the
1141
1182
  # "enabled" flag to child workflows; regardless of that flag, a child workflow inherits the virtual time from the
@@ -1146,72 +1187,125 @@ module Temporalio
1146
1187
  attr_accessor enabled(): bool
1147
1188
  def clear_enabled: () -> void
1148
1189
 
1149
- # Optionally fast-forward the current workflow execution by this duration ahead of current workflow execution time.
1150
- # After the fast-forward completes, time skipping is disabled, and this
1151
- # action is recorded in the WorkflowExecutionTimeSkippingTransitionedEvent. It can be re-enabled by
1152
- # setting `enabled` to true or setting `fast_forward` again via UpdateWorkflowExecutionOptions.
1153
- # The current workflow execution is a chain of runs (retries, cron, continue-as-new);
1154
- # child workflows are separate executions, so this fast_forward won't affect them.
1155
- # For a given workflow execution, only one active fast-forward is allowed at a time.
1156
- # If a new fast-forward is set via UpdateWorkflowExecutionOptions before the previous
1157
- # one completes, the new one will override the previous one.
1158
- # If the fast-forward duration exceeds the remaining execution timeout, time will only
1159
- # be fast-forwarded up to the end of the execution.
1160
- attr_reader fast_forward(): ::Google::Protobuf::Duration?
1161
- attr_writer fast_forward(): (::Google::Protobuf::Duration | ::int)?
1162
- def has_fast_forward?: () -> bool
1163
- def clear_fast_forward: () -> void
1164
-
1165
- # By default, child workflows inherit the "enabled" flag when they are started.
1190
+ # An optional opt-in to control time-skipping behavior through fast-forward; see its definition for details.
1191
+ attr_accessor fast_forward_config(): ::Temporalio::Api::Common::V1::FastForwardConfig?
1192
+ def has_fast_forward_config?: () -> bool
1193
+ def clear_fast_forward_config: () -> void
1194
+
1195
+ # By default, executions started by another execution (e.g. a child workflow of a parent workflow or
1196
+ # a schedule with the time-skipping policy enabled) inherit the "enabled" flag and skip time when possible.
1166
1197
  # This flag disables that inheritance.
1167
- attr_accessor disable_child_propagation(): bool
1168
- def clear_disable_child_propagation: () -> void
1198
+ attr_accessor disable_propagation(): bool
1199
+ def clear_disable_propagation: () -> void
1200
+
1201
+ # The maximum number of skips allowed every time this field is updated. It protects the execution from
1202
+ # situations like unlimited retries when backoff is skipped.
1203
+ # Every time the execution skips time, the skip count is incremented by one, and when it reaches
1204
+ # max_session_skip_count, time skipping stops. Whenever this config field is updated, the accumulated
1205
+ # skip count is cleared, marking the start of a new session.
1206
+ # For an execution with a chain of runs (retry, cron, continue-as-new), the count is accumulated
1207
+ # across all runs within the same session.
1208
+ # If this field is not set, the server applies a large default value (e.g. 100). The default can
1209
+ # be changed through dynamic config, and is overridden by this field when set.
1210
+ attr_reader max_session_skip_count(): ::Integer
1211
+ attr_writer max_session_skip_count(): ::Integer | ::Float
1212
+ def clear_max_session_skip_count: () -> void
1169
1213
 
1170
1214
  type init_map = {
1171
1215
  enabled: bool?,
1172
1216
  "enabled" => bool?,
1173
- fast_forward: (::Google::Protobuf::Duration | ::Google::Protobuf::Duration)?,
1174
- "fast_forward" => (::Google::Protobuf::Duration | ::Google::Protobuf::Duration)?,
1175
- disable_child_propagation: bool?,
1176
- "disable_child_propagation" => bool?,
1217
+ fast_forward_config: (::Temporalio::Api::Common::V1::FastForwardConfig | ::Temporalio::Api::Common::V1::FastForwardConfig::init_map)?,
1218
+ "fast_forward_config" => (::Temporalio::Api::Common::V1::FastForwardConfig | ::Temporalio::Api::Common::V1::FastForwardConfig::init_map)?,
1219
+ disable_propagation: bool?,
1220
+ "disable_propagation" => bool?,
1221
+ max_session_skip_count: (::Integer | ::Float)?,
1222
+ "max_session_skip_count" => (::Integer | ::Float)?,
1177
1223
  }
1178
1224
 
1179
1225
  def initialize: (?init_map initial_value) -> void
1180
1226
 
1181
1227
  def []:
1182
1228
  ("enabled" name) -> bool
1183
- | ("fast_forward" name) -> ::Google::Protobuf::Duration?
1184
- | ("disable_child_propagation" name) -> bool
1229
+ | ("fast_forward_config" name) -> ::Temporalio::Api::Common::V1::FastForwardConfig?
1230
+ | ("disable_propagation" name) -> bool
1231
+ | ("max_session_skip_count" name) -> ::Integer
1185
1232
 
1186
1233
  def []=:
1187
1234
  ("enabled" name, bool value) -> void
1188
- | ("fast_forward" name, ((::Google::Protobuf::Duration | ::int)?) value) -> void
1189
- | ("disable_child_propagation" name, bool value) -> void
1235
+ | ("fast_forward_config" name, ::Temporalio::Api::Common::V1::FastForwardConfig? value) -> void
1236
+ | ("disable_propagation" name, bool value) -> void
1237
+ | ("max_session_skip_count" name, (::Integer | ::Float) value) -> void
1190
1238
  end
1191
1239
 
1192
- # The time-skipping state that needs to be propagated from a parent workflow to a child workflow,
1193
- # or through a chain of runs.
1240
+ class FastForwardConfig < ::Google::Protobuf::AbstractMessage
1241
+
1242
+ # A client-supplied ID, required field, set alongside `duration`. It is used to poll for
1243
+ # fast-forward completion via PollWorkflowExecutionTimeSkipping.
1244
+ # The server performs no idempotency check on this ID; the client is responsible for managing it.
1245
+ attr_reader id(): ::String
1246
+ attr_writer id(): ::String | ::Symbol
1247
+ def clear_id: () -> void
1248
+
1249
+ # Fast-forward the current execution by this duration ahead of the current execution time; required field.
1250
+ # The duration yields a target time (current execution time + duration), surfaced as `target_time` in
1251
+ # TimeSkippingFastForwardInfo. Once virtual time reaches that target, the fast-forward completes, time
1252
+ # skipping is disabled, and no further time is skipped. Time skipping can be resumed either
1253
+ # by updating the TimeSkippingConfig with a new FastForwardConfig, or by clearing the FastForwardConfig
1254
+ # to skip through to the end of the execution.
1255
+ # If this duration exceeds the remaining execution timeout, time will not pass beyond the end
1256
+ # of the execution, and the fast-forward won't have a chance to complete.
1257
+ attr_reader duration(): ::Google::Protobuf::Duration?
1258
+ attr_writer duration(): (::Google::Protobuf::Duration | ::int)?
1259
+ def has_duration?: () -> bool
1260
+ def clear_duration: () -> void
1261
+
1262
+ type init_map = {
1263
+ id: (::String | ::Symbol)?,
1264
+ "id" => (::String | ::Symbol)?,
1265
+ duration: (::Google::Protobuf::Duration | ::Google::Protobuf::Duration)?,
1266
+ "duration" => (::Google::Protobuf::Duration | ::Google::Protobuf::Duration)?,
1267
+ }
1268
+
1269
+ def initialize: (?init_map initial_value) -> void
1270
+
1271
+ def []:
1272
+ ("id" name) -> ::String
1273
+ | ("duration" name) -> ::Google::Protobuf::Duration?
1274
+
1275
+ def []=:
1276
+ ("id" name, (::String | ::Symbol) value) -> void
1277
+ | ("duration" name, ((::Google::Protobuf::Duration | ::int)?) value) -> void
1278
+ end
1279
+
1280
+ # The time-skipping state that needs to be propagated from one execution to another, or through a chain of runs
1281
+ # within the same execution.
1194
1282
  class TimeSkippingStatePropagation < ::Google::Protobuf::AbstractMessage
1195
1283
 
1196
- # The time skipped by the previous execution that started this workflow.
1197
- # It can happen in child workflows and a chain of runs (CaN, cron, retry).
1284
+ # The time skipped by the previous run. It is propagated both to executions started by the
1285
+ # current execution and through a chain of runs (CaN, cron, retry).
1198
1286
  attr_reader initial_skipped_duration(): ::Google::Protobuf::Duration?
1199
1287
  attr_writer initial_skipped_duration(): (::Google::Protobuf::Duration | ::int)?
1200
1288
  def has_initial_skipped_duration?: () -> bool
1201
1289
  def clear_initial_skipped_duration: () -> void
1202
1290
 
1203
- # If there is a fast-forward action set for the previous run in a chain of runs,
1204
- # the target time should be propagated to the next run as well.
1291
+ # The fast-forward target time. It only propagates across a chain of runs within the same execution.
1205
1292
  attr_reader fast_forward_target_time(): ::Google::Protobuf::Timestamp?
1206
1293
  attr_writer fast_forward_target_time(): (::Google::Protobuf::Timestamp | ::Time)?
1207
1294
  def has_fast_forward_target_time?: () -> bool
1208
1295
  def clear_fast_forward_target_time: () -> void
1209
1296
 
1297
+ # The initial skip count. It only propagates across a chain of runs within the same execution.
1298
+ attr_reader initial_skip_count(): ::Integer
1299
+ attr_writer initial_skip_count(): ::Integer | ::Float
1300
+ def clear_initial_skip_count: () -> void
1301
+
1210
1302
  type init_map = {
1211
1303
  initial_skipped_duration: (::Google::Protobuf::Duration | ::Google::Protobuf::Duration)?,
1212
1304
  "initial_skipped_duration" => (::Google::Protobuf::Duration | ::Google::Protobuf::Duration)?,
1213
1305
  fast_forward_target_time: (::Google::Protobuf::Timestamp | ::Google::Protobuf::Timestamp)?,
1214
1306
  "fast_forward_target_time" => (::Google::Protobuf::Timestamp | ::Google::Protobuf::Timestamp)?,
1307
+ initial_skip_count: (::Integer | ::Float)?,
1308
+ "initial_skip_count" => (::Integer | ::Float)?,
1215
1309
  }
1216
1310
 
1217
1311
  def initialize: (?init_map initial_value) -> void
@@ -1219,10 +1313,117 @@ module Temporalio
1219
1313
  def []:
1220
1314
  ("initial_skipped_duration" name) -> ::Google::Protobuf::Duration?
1221
1315
  | ("fast_forward_target_time" name) -> ::Google::Protobuf::Timestamp?
1316
+ | ("initial_skip_count" name) -> ::Integer
1222
1317
 
1223
1318
  def []=:
1224
1319
  ("initial_skipped_duration" name, ((::Google::Protobuf::Duration | ::int)?) value) -> void
1225
1320
  | ("fast_forward_target_time" name, ((::Google::Protobuf::Timestamp | ::Time)?) value) -> void
1321
+ | ("initial_skip_count" name, (::Integer | ::Float) value) -> void
1322
+ end
1323
+
1324
+ # Describes the current time-skipping state of a workflow execution.
1325
+ class TimeSkippingInfo < ::Google::Protobuf::AbstractMessage
1326
+
1327
+ # Current virtual time of the execution. If the execution hasn't skipped
1328
+ # any time yet, it will be the same as wall clock time.
1329
+ attr_reader current_time(): ::Google::Protobuf::Timestamp?
1330
+ attr_writer current_time(): (::Google::Protobuf::Timestamp | ::Time)?
1331
+ def has_current_time?: () -> bool
1332
+ def clear_current_time: () -> void
1333
+
1334
+ # The current effective time-skipping config, which can differ from the config the user last set:
1335
+ # internally-defaulted fields are populated, and `enabled` reflects whether the execution is still
1336
+ # skipping time — e.g. it is set to false once `max_session_skip_count` is reached, the fast-forward
1337
+ # completes, or a client call disables time skipping.
1338
+ attr_accessor effective_config(): ::Temporalio::Api::Common::V1::TimeSkippingConfig?
1339
+ def has_effective_config?: () -> bool
1340
+ def clear_effective_config: () -> void
1341
+
1342
+ # The execution's current fast-forward, if any. Unset if time skipping is enabled without a fast-forward.
1343
+ attr_accessor fast_forward_info(): ::Temporalio::Api::Common::V1::TimeSkippingFastForwardInfo?
1344
+ def has_fast_forward_info?: () -> bool
1345
+ def clear_fast_forward_info: () -> void
1346
+
1347
+ # The number of skips accumulated in the current session, bounded by `max_session_skip_count`.
1348
+ # A new session begins — and this resets to 0 — each time `max_session_skip_count` is updated.
1349
+ attr_reader current_session_skip_count(): ::Integer
1350
+ attr_writer current_session_skip_count(): ::Integer | ::Float
1351
+ def clear_current_session_skip_count: () -> void
1352
+
1353
+ type init_map = {
1354
+ current_time: (::Google::Protobuf::Timestamp | ::Google::Protobuf::Timestamp)?,
1355
+ "current_time" => (::Google::Protobuf::Timestamp | ::Google::Protobuf::Timestamp)?,
1356
+ effective_config: (::Temporalio::Api::Common::V1::TimeSkippingConfig | ::Temporalio::Api::Common::V1::TimeSkippingConfig::init_map)?,
1357
+ "effective_config" => (::Temporalio::Api::Common::V1::TimeSkippingConfig | ::Temporalio::Api::Common::V1::TimeSkippingConfig::init_map)?,
1358
+ fast_forward_info: (::Temporalio::Api::Common::V1::TimeSkippingFastForwardInfo | ::Temporalio::Api::Common::V1::TimeSkippingFastForwardInfo::init_map)?,
1359
+ "fast_forward_info" => (::Temporalio::Api::Common::V1::TimeSkippingFastForwardInfo | ::Temporalio::Api::Common::V1::TimeSkippingFastForwardInfo::init_map)?,
1360
+ current_session_skip_count: (::Integer | ::Float)?,
1361
+ "current_session_skip_count" => (::Integer | ::Float)?,
1362
+ }
1363
+
1364
+ def initialize: (?init_map initial_value) -> void
1365
+
1366
+ def []:
1367
+ ("current_time" name) -> ::Google::Protobuf::Timestamp?
1368
+ | ("effective_config" name) -> ::Temporalio::Api::Common::V1::TimeSkippingConfig?
1369
+ | ("fast_forward_info" name) -> ::Temporalio::Api::Common::V1::TimeSkippingFastForwardInfo?
1370
+ | ("current_session_skip_count" name) -> ::Integer
1371
+
1372
+ def []=:
1373
+ ("current_time" name, ((::Google::Protobuf::Timestamp | ::Time)?) value) -> void
1374
+ | ("effective_config" name, ::Temporalio::Api::Common::V1::TimeSkippingConfig? value) -> void
1375
+ | ("fast_forward_info" name, ::Temporalio::Api::Common::V1::TimeSkippingFastForwardInfo? value) -> void
1376
+ | ("current_session_skip_count" name, (::Integer | ::Float) value) -> void
1377
+ end
1378
+
1379
+ # TimeSkippingFastForwardInfo describes the current time-skipping fast-forward on an execution.
1380
+ class TimeSkippingFastForwardInfo < ::Google::Protobuf::AbstractMessage
1381
+
1382
+ # The client-supplied `fast_forward` duration.
1383
+ attr_reader fast_forward_duration(): ::Google::Protobuf::Duration?
1384
+ attr_writer fast_forward_duration(): (::Google::Protobuf::Duration | ::int)?
1385
+ def has_fast_forward_duration?: () -> bool
1386
+ def clear_fast_forward_duration: () -> void
1387
+
1388
+ # The client-supplied ID set alongside `fast_forward` duration.
1389
+ attr_reader fast_forward_id(): ::String
1390
+ attr_writer fast_forward_id(): ::String | ::Symbol
1391
+ def clear_fast_forward_id: () -> void
1392
+
1393
+ # The target virtual time at which the fast-forward completes.
1394
+ attr_reader target_time(): ::Google::Protobuf::Timestamp?
1395
+ attr_writer target_time(): (::Google::Protobuf::Timestamp | ::Time)?
1396
+ def has_target_time?: () -> bool
1397
+ def clear_target_time: () -> void
1398
+
1399
+ # True once `target_time` has been reached.
1400
+ attr_accessor has_completed(): bool
1401
+ def clear_has_completed: () -> void
1402
+
1403
+ type init_map = {
1404
+ fast_forward_duration: (::Google::Protobuf::Duration | ::Google::Protobuf::Duration)?,
1405
+ "fast_forward_duration" => (::Google::Protobuf::Duration | ::Google::Protobuf::Duration)?,
1406
+ fast_forward_id: (::String | ::Symbol)?,
1407
+ "fast_forward_id" => (::String | ::Symbol)?,
1408
+ target_time: (::Google::Protobuf::Timestamp | ::Google::Protobuf::Timestamp)?,
1409
+ "target_time" => (::Google::Protobuf::Timestamp | ::Google::Protobuf::Timestamp)?,
1410
+ has_completed: bool?,
1411
+ "has_completed" => bool?,
1412
+ }
1413
+
1414
+ def initialize: (?init_map initial_value) -> void
1415
+
1416
+ def []:
1417
+ ("fast_forward_duration" name) -> ::Google::Protobuf::Duration?
1418
+ | ("fast_forward_id" name) -> ::String
1419
+ | ("target_time" name) -> ::Google::Protobuf::Timestamp?
1420
+ | ("has_completed" name) -> bool
1421
+
1422
+ def []=:
1423
+ ("fast_forward_duration" name, ((::Google::Protobuf::Duration | ::int)?) value) -> void
1424
+ | ("fast_forward_id" name, (::String | ::Symbol) value) -> void
1425
+ | ("target_time" name, ((::Google::Protobuf::Timestamp | ::Time)?) value) -> void
1426
+ | ("has_completed" name, bool value) -> void
1226
1427
  end
1227
1428
  end
1228
1429
  end
@@ -10,8 +10,8 @@ module Temporalio
10
10
  module Enums
11
11
  module V1
12
12
  # Status of a standalone activity.
13
- # The status is updated once, when the activity is originally scheduled, and again when the activity reaches a terminal
14
- # status.
13
+ # The status is updated when the activity is originally scheduled, paused, unpaused, and when the
14
+ # activity reaches a terminal state.
15
15
  # (-- api-linter: core::0216::synonyms=disabled
16
16
  # aip.dev/not-precedent: Named consistently with WorkflowExecutionStatus. --)
17
17
  module ActivityExecutionStatus
@@ -51,17 +51,21 @@ module Temporalio
51
51
  # SCHEDULE_TO_CLOSE would be exceeded, or cancellation has been requested).
52
52
  ACTIVITY_EXECUTION_STATUS_TIMED_OUT: 6
53
53
 
54
+ # The activity is paused. Paused state is only reachable after calling
55
+ # PauseActivityExecution on a standalone activity.
56
+ ACTIVITY_EXECUTION_STATUS_PAUSED: 7
57
+
54
58
  def self.lookup: (::Integer number) -> ::Symbol
55
59
 
56
60
 
57
61
  def self.resolve: (::Symbol name) -> ::Integer
58
62
 
59
63
 
60
- type names = :ACTIVITY_EXECUTION_STATUS_UNSPECIFIED | :ACTIVITY_EXECUTION_STATUS_RUNNING | :ACTIVITY_EXECUTION_STATUS_COMPLETED | :ACTIVITY_EXECUTION_STATUS_FAILED | :ACTIVITY_EXECUTION_STATUS_CANCELED | :ACTIVITY_EXECUTION_STATUS_TERMINATED | :ACTIVITY_EXECUTION_STATUS_TIMED_OUT
64
+ type names = :ACTIVITY_EXECUTION_STATUS_UNSPECIFIED | :ACTIVITY_EXECUTION_STATUS_RUNNING | :ACTIVITY_EXECUTION_STATUS_COMPLETED | :ACTIVITY_EXECUTION_STATUS_FAILED | :ACTIVITY_EXECUTION_STATUS_CANCELED | :ACTIVITY_EXECUTION_STATUS_TERMINATED | :ACTIVITY_EXECUTION_STATUS_TIMED_OUT | :ACTIVITY_EXECUTION_STATUS_PAUSED
61
65
 
62
- type strings = "ACTIVITY_EXECUTION_STATUS_UNSPECIFIED" | "ACTIVITY_EXECUTION_STATUS_RUNNING" | "ACTIVITY_EXECUTION_STATUS_COMPLETED" | "ACTIVITY_EXECUTION_STATUS_FAILED" | "ACTIVITY_EXECUTION_STATUS_CANCELED" | "ACTIVITY_EXECUTION_STATUS_TERMINATED" | "ACTIVITY_EXECUTION_STATUS_TIMED_OUT"
66
+ type strings = "ACTIVITY_EXECUTION_STATUS_UNSPECIFIED" | "ACTIVITY_EXECUTION_STATUS_RUNNING" | "ACTIVITY_EXECUTION_STATUS_COMPLETED" | "ACTIVITY_EXECUTION_STATUS_FAILED" | "ACTIVITY_EXECUTION_STATUS_CANCELED" | "ACTIVITY_EXECUTION_STATUS_TERMINATED" | "ACTIVITY_EXECUTION_STATUS_TIMED_OUT" | "ACTIVITY_EXECUTION_STATUS_PAUSED"
63
67
 
64
- type numbers = 0 | 1 | 2 | 3 | 4 | 5 | 6
68
+ type numbers = 0 | 1 | 2 | 3 | 4 | 5 | 6 | 7
65
69
  end
66
70
 
67
71
  # Defines whether to allow re-using an activity ID from a previously *closed* activity.
@@ -13,35 +13,65 @@ module Temporalio
13
13
 
14
14
  BATCH_OPERATION_TYPE_UNSPECIFIED: 0
15
15
 
16
+ # DEPRECATED: Use BATCH_OPERATION_TYPE_TERMINATE_WORKFLOW instead.
17
+ # @deprecated
16
18
  BATCH_OPERATION_TYPE_TERMINATE: 1
17
19
 
20
+ BATCH_OPERATION_TYPE_TERMINATE_WORKFLOW: 13
21
+
22
+ # DEPRECATED: Use BATCH_OPERATION_TYPE_CANCEL_WORKFLOW instead.
23
+ # @deprecated
18
24
  BATCH_OPERATION_TYPE_CANCEL: 2
19
25
 
26
+ BATCH_OPERATION_TYPE_CANCEL_WORKFLOW: 14
27
+
28
+ # DEPRECATED: Use BATCH_OPERATION_TYPE_SIGNAL_WORKFLOW instead.
29
+ # @deprecated
20
30
  BATCH_OPERATION_TYPE_SIGNAL: 3
21
31
 
32
+ BATCH_OPERATION_TYPE_SIGNAL_WORKFLOW: 15
33
+
34
+ # DEPRECATED: Use BATCH_OPERATION_TYPE_DELETE_WORKFLOW instead.
35
+ # @deprecated
22
36
  BATCH_OPERATION_TYPE_DELETE: 4
23
37
 
38
+ BATCH_OPERATION_TYPE_DELETE_WORKFLOW: 16
39
+
40
+ # DEPRECATED: Use BATCH_OPERATION_TYPE_RESET_WORKFLOW instead.
41
+ # @deprecated
24
42
  BATCH_OPERATION_TYPE_RESET: 5
25
43
 
44
+ BATCH_OPERATION_TYPE_RESET_WORKFLOW: 17
45
+
46
+ # DEPRECATED: Use BATCH_OPERATION_TYPE_UPDATE_WORKFLOW_EXECUTION_OPTIONS instead.
47
+ # @deprecated
26
48
  BATCH_OPERATION_TYPE_UPDATE_EXECUTION_OPTIONS: 6
27
49
 
50
+ BATCH_OPERATION_TYPE_UPDATE_WORKFLOW_EXECUTION_OPTIONS: 18
51
+
28
52
  BATCH_OPERATION_TYPE_UNPAUSE_ACTIVITY: 7
29
53
 
30
54
  BATCH_OPERATION_TYPE_UPDATE_ACTIVITY_OPTIONS: 8
31
55
 
32
56
  BATCH_OPERATION_TYPE_RESET_ACTIVITY: 9
33
57
 
58
+ BATCH_OPERATION_TYPE_TERMINATE_ACTIVITY: 10
59
+
60
+ BATCH_OPERATION_TYPE_CANCEL_ACTIVITY: 11
61
+
62
+ BATCH_OPERATION_TYPE_DELETE_ACTIVITY: 12
63
+
34
64
  def self.lookup: (::Integer number) -> ::Symbol
35
65
 
36
66
 
37
67
  def self.resolve: (::Symbol name) -> ::Integer
38
68
 
39
69
 
40
- type names = :BATCH_OPERATION_TYPE_UNSPECIFIED | :BATCH_OPERATION_TYPE_TERMINATE | :BATCH_OPERATION_TYPE_CANCEL | :BATCH_OPERATION_TYPE_SIGNAL | :BATCH_OPERATION_TYPE_DELETE | :BATCH_OPERATION_TYPE_RESET | :BATCH_OPERATION_TYPE_UPDATE_EXECUTION_OPTIONS | :BATCH_OPERATION_TYPE_UNPAUSE_ACTIVITY | :BATCH_OPERATION_TYPE_UPDATE_ACTIVITY_OPTIONS | :BATCH_OPERATION_TYPE_RESET_ACTIVITY
70
+ type names = :BATCH_OPERATION_TYPE_UNSPECIFIED | :BATCH_OPERATION_TYPE_TERMINATE | :BATCH_OPERATION_TYPE_TERMINATE_WORKFLOW | :BATCH_OPERATION_TYPE_CANCEL | :BATCH_OPERATION_TYPE_CANCEL_WORKFLOW | :BATCH_OPERATION_TYPE_SIGNAL | :BATCH_OPERATION_TYPE_SIGNAL_WORKFLOW | :BATCH_OPERATION_TYPE_DELETE | :BATCH_OPERATION_TYPE_DELETE_WORKFLOW | :BATCH_OPERATION_TYPE_RESET | :BATCH_OPERATION_TYPE_RESET_WORKFLOW | :BATCH_OPERATION_TYPE_UPDATE_EXECUTION_OPTIONS | :BATCH_OPERATION_TYPE_UPDATE_WORKFLOW_EXECUTION_OPTIONS | :BATCH_OPERATION_TYPE_UNPAUSE_ACTIVITY | :BATCH_OPERATION_TYPE_UPDATE_ACTIVITY_OPTIONS | :BATCH_OPERATION_TYPE_RESET_ACTIVITY | :BATCH_OPERATION_TYPE_TERMINATE_ACTIVITY | :BATCH_OPERATION_TYPE_CANCEL_ACTIVITY | :BATCH_OPERATION_TYPE_DELETE_ACTIVITY
41
71
 
42
- type strings = "BATCH_OPERATION_TYPE_UNSPECIFIED" | "BATCH_OPERATION_TYPE_TERMINATE" | "BATCH_OPERATION_TYPE_CANCEL" | "BATCH_OPERATION_TYPE_SIGNAL" | "BATCH_OPERATION_TYPE_DELETE" | "BATCH_OPERATION_TYPE_RESET" | "BATCH_OPERATION_TYPE_UPDATE_EXECUTION_OPTIONS" | "BATCH_OPERATION_TYPE_UNPAUSE_ACTIVITY" | "BATCH_OPERATION_TYPE_UPDATE_ACTIVITY_OPTIONS" | "BATCH_OPERATION_TYPE_RESET_ACTIVITY"
72
+ type strings = "BATCH_OPERATION_TYPE_UNSPECIFIED" | "BATCH_OPERATION_TYPE_TERMINATE" | "BATCH_OPERATION_TYPE_TERMINATE_WORKFLOW" | "BATCH_OPERATION_TYPE_CANCEL" | "BATCH_OPERATION_TYPE_CANCEL_WORKFLOW" | "BATCH_OPERATION_TYPE_SIGNAL" | "BATCH_OPERATION_TYPE_SIGNAL_WORKFLOW" | "BATCH_OPERATION_TYPE_DELETE" | "BATCH_OPERATION_TYPE_DELETE_WORKFLOW" | "BATCH_OPERATION_TYPE_RESET" | "BATCH_OPERATION_TYPE_RESET_WORKFLOW" | "BATCH_OPERATION_TYPE_UPDATE_EXECUTION_OPTIONS" | "BATCH_OPERATION_TYPE_UPDATE_WORKFLOW_EXECUTION_OPTIONS" | "BATCH_OPERATION_TYPE_UNPAUSE_ACTIVITY" | "BATCH_OPERATION_TYPE_UPDATE_ACTIVITY_OPTIONS" | "BATCH_OPERATION_TYPE_RESET_ACTIVITY" | "BATCH_OPERATION_TYPE_TERMINATE_ACTIVITY" | "BATCH_OPERATION_TYPE_CANCEL_ACTIVITY" | "BATCH_OPERATION_TYPE_DELETE_ACTIVITY"
43
73
 
44
- type numbers = 0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9
74
+ type numbers = 0 | 1 | 13 | 2 | 14 | 3 | 15 | 4 | 16 | 5 | 17 | 6 | 18 | 7 | 8 | 9 | 10 | 11 | 12
45
75
  end
46
76
 
47
77
  module BatchOperationState