temporalio 1.6.0 → 1.8.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 (120) hide show
  1. checksums.yaml +4 -4
  2. data/Cargo.lock +37 -67
  3. data/Gemfile +3 -0
  4. data/README.md +25 -2
  5. data/Rakefile +20 -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/activity_execution.rb +82 -1
  25. data/lib/temporalio/client/activity_execution_options.rb +39 -0
  26. data/lib/temporalio/client/activity_execution_status.rb +1 -0
  27. data/lib/temporalio/client/activity_handle.rb +122 -1
  28. data/lib/temporalio/client/activity_options.rb +113 -0
  29. data/lib/temporalio/client/connection/workflow_service.rb +15 -0
  30. data/lib/temporalio/client/connection.rb +33 -3
  31. data/lib/temporalio/client/interceptor.rb +65 -0
  32. data/lib/temporalio/client/schedule.rb +4 -5
  33. data/lib/temporalio/client/workflow_execution.rb +2 -2
  34. data/lib/temporalio/client/workflow_handle.rb +2 -1
  35. data/lib/temporalio/client.rb +4 -6
  36. data/lib/temporalio/converters/data_converter.rb +1 -0
  37. data/lib/temporalio/converters/failure_converter.rb +7 -4
  38. data/lib/temporalio/internal/bridge/api/common/common.rb +2 -1
  39. data/lib/temporalio/internal/bridge/api/workflow_completion/workflow_completion.rb +1 -1
  40. data/lib/temporalio/internal/bridge/client.rb +3 -1
  41. data/lib/temporalio/internal/bridge/runtime.rb +4 -1
  42. data/lib/temporalio/internal/bridge/worker.rb +3 -1
  43. data/lib/temporalio/internal/client/implementation.rb +54 -2
  44. data/lib/temporalio/internal/worker/workflow_instance/illegal_call_tracer.rb +9 -0
  45. data/lib/temporalio/runtime.rb +25 -7
  46. data/lib/temporalio/scoped_logger.rb +18 -0
  47. data/lib/temporalio/version.rb +1 -1
  48. data/lib/temporalio/worker/activity_executor/fiber.rb +11 -1
  49. data/lib/temporalio/worker/workflow_replayer.rb +2 -0
  50. data/lib/temporalio/worker.rb +24 -4
  51. data/lib/temporalio/workflow.rb +8 -9
  52. data/rbi/temporalio/api/activity/v1/message.rbi +100 -14
  53. data/rbi/temporalio/api/batch/v1/message.rbi +229 -2
  54. data/rbi/temporalio/api/command/v1/message.rbi +22 -2
  55. data/rbi/temporalio/api/common/v1/message.rbi +548 -74
  56. data/rbi/temporalio/api/enums/v1/activity.rbi +1 -0
  57. data/rbi/temporalio/api/enums/v1/batch_operation.rbi +9 -0
  58. data/rbi/temporalio/api/enums/v1/common.rbi +18 -0
  59. data/rbi/temporalio/api/enums/v1/failed_cause.rbi +4 -0
  60. data/rbi/temporalio/api/enums/v1/time_skipping.rbi +22 -0
  61. data/rbi/temporalio/api/errordetails/v1/message.rbi +59 -2
  62. data/rbi/temporalio/api/history/v1/message.rbi +27 -7
  63. data/rbi/temporalio/api/namespace/v1/message.rbi +95 -4
  64. data/rbi/temporalio/api/taskqueue/v1/message.rbi +113 -2
  65. data/rbi/temporalio/api/worker/v1/message.rbi +742 -2
  66. data/rbi/temporalio/api/workflow/v1/message.rbi +22 -2
  67. data/rbi/temporalio/api/workflowservice/v1/request_response.rbi +701 -117
  68. data/rbi/temporalio/api/workflowservice/v1/service_services.rbi +8 -0
  69. data/rbi/temporalio/client/activity_execution.rbi +27 -0
  70. data/rbi/temporalio/client/activity_execution_options.rbi +58 -0
  71. data/rbi/temporalio/client/activity_execution_status.rbi +1 -0
  72. data/rbi/temporalio/client/activity_handle.rbi +43 -2
  73. data/rbi/temporalio/client/activity_options.rbi +49 -0
  74. data/rbi/temporalio/client/connection/workflow_service.rbi +3 -0
  75. data/rbi/temporalio/client/connection.rbi +2 -0
  76. data/rbi/temporalio/client/interceptor.rbi +107 -0
  77. data/rbi/temporalio/converters/failure_converter.rbi +7 -2
  78. data/rbi/temporalio/internal/bridge/api/common/common.rbi +115 -0
  79. data/rbi/temporalio/internal/bridge/api/workflow_completion/workflow_completion.rbi +42 -2
  80. data/rbi/temporalio/internal/bridge/runtime.rbi +24 -4
  81. data/rbi/temporalio/internal/bridge/worker.rbi +2 -0
  82. data/rbi/temporalio/runtime.rbi +13 -4
  83. data/rbi/temporalio/scoped_logger.rbi +1 -1
  84. data/rbi/temporalio/worker.rbi +9 -2
  85. data/rbi/temporalio/workflow/future.rbi +1 -1
  86. data/sig/temporalio/api/activity/v1/message.rbs +48 -2
  87. data/sig/temporalio/api/batch/v1/message.rbs +86 -0
  88. data/sig/temporalio/api/command/v1/message.rbs +10 -0
  89. data/sig/temporalio/api/common/v1/message.rbs +240 -39
  90. data/sig/temporalio/api/enums/v1/activity.rbs +9 -5
  91. data/sig/temporalio/api/enums/v1/batch_operation.rbs +33 -3
  92. data/sig/temporalio/api/enums/v1/common.rbs +23 -0
  93. data/sig/temporalio/api/enums/v1/failed_cause.rbs +18 -6
  94. data/sig/temporalio/api/enums/v1/time_skipping.rbs +58 -0
  95. data/sig/temporalio/api/errordetails/v1/message.rbs +19 -0
  96. data/sig/temporalio/api/history/v1/message.rbs +13 -3
  97. data/sig/temporalio/api/namespace/v1/message.rbs +43 -0
  98. data/sig/temporalio/api/taskqueue/v1/message.rbs +44 -0
  99. data/sig/temporalio/api/worker/v1/message.rbs +410 -0
  100. data/sig/temporalio/api/workflow/v1/message.rbs +10 -0
  101. data/sig/temporalio/api/workflowservice/v1/request_response.rbs +311 -40
  102. data/sig/temporalio/client/activity_execution.rbs +10 -0
  103. data/sig/temporalio/client/activity_execution_options.rbs +27 -0
  104. data/sig/temporalio/client/activity_execution_status.rbs +1 -0
  105. data/sig/temporalio/client/activity_handle.rbs +23 -1
  106. data/sig/temporalio/client/activity_options.rbs +30 -0
  107. data/sig/temporalio/client/connection/workflow_service.rbs +4 -0
  108. data/sig/temporalio/client/connection.rbs +14 -1
  109. data/sig/temporalio/client/interceptor.rbs +62 -0
  110. data/sig/temporalio/converters/failure_converter.rbs +4 -1
  111. data/sig/temporalio/internal/bridge/api/common/common.rbs +50 -0
  112. data/sig/temporalio/internal/bridge/api/workflow_completion/workflow_completion.rbs +20 -0
  113. data/sig/temporalio/internal/bridge/client.rbs +5 -1
  114. data/sig/temporalio/internal/bridge/runtime.rbs +9 -3
  115. data/sig/temporalio/internal/bridge/worker.rbs +5 -1
  116. data/sig/temporalio/internal/client/implementation.rbs +7 -0
  117. data/sig/temporalio/runtime.rbs +14 -3
  118. data/sig/temporalio/scoped_logger.rbs +1 -1
  119. data/sig/temporalio/worker.rbs +8 -2
  120. metadata +10 -1
@@ -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
@@ -257,6 +257,29 @@ module Temporalio
257
257
 
258
258
  type numbers = 0 | 1 | 2 | 3
259
259
  end
260
+
261
+ module ExecutionType
262
+
263
+ EXECUTION_TYPE_UNSPECIFIED: 0
264
+
265
+ # A workflow execution archetype.
266
+ EXECUTION_TYPE_WORKFLOW: 1
267
+
268
+ # An activity execution archetype. This is reserved for standalone activities.
269
+ EXECUTION_TYPE_ACTIVITY: 2
270
+
271
+ def self.lookup: (::Integer number) -> ::Symbol
272
+
273
+
274
+ def self.resolve: (::Symbol name) -> ::Integer
275
+
276
+
277
+ type names = :EXECUTION_TYPE_UNSPECIFIED | :EXECUTION_TYPE_WORKFLOW | :EXECUTION_TYPE_ACTIVITY
278
+
279
+ type strings = "EXECUTION_TYPE_UNSPECIFIED" | "EXECUTION_TYPE_WORKFLOW" | "EXECUTION_TYPE_ACTIVITY"
280
+
281
+ type numbers = 0 | 1 | 2
282
+ end
260
283
  end
261
284
  end
262
285
  end
@@ -119,17 +119,27 @@ module Temporalio
119
119
  # A workflow task failed because payloads were too large.
120
120
  WORKFLOW_TASK_FAILED_CAUSE_PAYLOADS_TOO_LARGE: 37
121
121
 
122
+ # A workflow task failed because an external storage operation failed.
123
+ # Check the workflow task failure message for more information.
124
+ WORKFLOW_TASK_FAILED_CAUSE_EXTERNAL_STORAGE_FAILURE: 38
125
+
126
+ # A workflow task is failed because the workflow is paused before the task is started.
127
+ WORKFLOW_TASK_FAILED_CAUSE_WORKFLOW_PAUSE_REQUESTED_BEFORE_TASK_STARTED: 39
128
+
129
+ # A workflow task failed because the request exceeded a size limit.
130
+ WORKFLOW_TASK_FAILED_CAUSE_REQUEST_TOO_LARGE: 40
131
+
122
132
  def self.lookup: (::Integer number) -> ::Symbol
123
133
 
124
134
 
125
135
  def self.resolve: (::Symbol name) -> ::Integer
126
136
 
127
137
 
128
- type names = :WORKFLOW_TASK_FAILED_CAUSE_UNSPECIFIED | :WORKFLOW_TASK_FAILED_CAUSE_UNHANDLED_COMMAND | :WORKFLOW_TASK_FAILED_CAUSE_BAD_SCHEDULE_ACTIVITY_ATTRIBUTES | :WORKFLOW_TASK_FAILED_CAUSE_BAD_REQUEST_CANCEL_ACTIVITY_ATTRIBUTES | :WORKFLOW_TASK_FAILED_CAUSE_BAD_START_TIMER_ATTRIBUTES | :WORKFLOW_TASK_FAILED_CAUSE_BAD_CANCEL_TIMER_ATTRIBUTES | :WORKFLOW_TASK_FAILED_CAUSE_BAD_RECORD_MARKER_ATTRIBUTES | :WORKFLOW_TASK_FAILED_CAUSE_BAD_COMPLETE_WORKFLOW_EXECUTION_ATTRIBUTES | :WORKFLOW_TASK_FAILED_CAUSE_BAD_FAIL_WORKFLOW_EXECUTION_ATTRIBUTES | :WORKFLOW_TASK_FAILED_CAUSE_BAD_CANCEL_WORKFLOW_EXECUTION_ATTRIBUTES | :WORKFLOW_TASK_FAILED_CAUSE_BAD_REQUEST_CANCEL_EXTERNAL_WORKFLOW_EXECUTION_ATTRIBUTES | :WORKFLOW_TASK_FAILED_CAUSE_BAD_CONTINUE_AS_NEW_ATTRIBUTES | :WORKFLOW_TASK_FAILED_CAUSE_START_TIMER_DUPLICATE_ID | :WORKFLOW_TASK_FAILED_CAUSE_RESET_STICKY_TASK_QUEUE | :WORKFLOW_TASK_FAILED_CAUSE_WORKFLOW_WORKER_UNHANDLED_FAILURE | :WORKFLOW_TASK_FAILED_CAUSE_BAD_SIGNAL_WORKFLOW_EXECUTION_ATTRIBUTES | :WORKFLOW_TASK_FAILED_CAUSE_BAD_START_CHILD_EXECUTION_ATTRIBUTES | :WORKFLOW_TASK_FAILED_CAUSE_FORCE_CLOSE_COMMAND | :WORKFLOW_TASK_FAILED_CAUSE_FAILOVER_CLOSE_COMMAND | :WORKFLOW_TASK_FAILED_CAUSE_BAD_SIGNAL_INPUT_SIZE | :WORKFLOW_TASK_FAILED_CAUSE_RESET_WORKFLOW | :WORKFLOW_TASK_FAILED_CAUSE_BAD_BINARY | :WORKFLOW_TASK_FAILED_CAUSE_SCHEDULE_ACTIVITY_DUPLICATE_ID | :WORKFLOW_TASK_FAILED_CAUSE_BAD_SEARCH_ATTRIBUTES | :WORKFLOW_TASK_FAILED_CAUSE_NON_DETERMINISTIC_ERROR | :WORKFLOW_TASK_FAILED_CAUSE_BAD_MODIFY_WORKFLOW_PROPERTIES_ATTRIBUTES | :WORKFLOW_TASK_FAILED_CAUSE_PENDING_CHILD_WORKFLOWS_LIMIT_EXCEEDED | :WORKFLOW_TASK_FAILED_CAUSE_PENDING_ACTIVITIES_LIMIT_EXCEEDED | :WORKFLOW_TASK_FAILED_CAUSE_PENDING_SIGNALS_LIMIT_EXCEEDED | :WORKFLOW_TASK_FAILED_CAUSE_PENDING_REQUEST_CANCEL_LIMIT_EXCEEDED | :WORKFLOW_TASK_FAILED_CAUSE_BAD_UPDATE_WORKFLOW_EXECUTION_MESSAGE | :WORKFLOW_TASK_FAILED_CAUSE_UNHANDLED_UPDATE | :WORKFLOW_TASK_FAILED_CAUSE_BAD_SCHEDULE_NEXUS_OPERATION_ATTRIBUTES | :WORKFLOW_TASK_FAILED_CAUSE_PENDING_NEXUS_OPERATIONS_LIMIT_EXCEEDED | :WORKFLOW_TASK_FAILED_CAUSE_BAD_REQUEST_CANCEL_NEXUS_OPERATION_ATTRIBUTES | :WORKFLOW_TASK_FAILED_CAUSE_FEATURE_DISABLED | :WORKFLOW_TASK_FAILED_CAUSE_GRPC_MESSAGE_TOO_LARGE | :WORKFLOW_TASK_FAILED_CAUSE_PAYLOADS_TOO_LARGE
138
+ type names = :WORKFLOW_TASK_FAILED_CAUSE_UNSPECIFIED | :WORKFLOW_TASK_FAILED_CAUSE_UNHANDLED_COMMAND | :WORKFLOW_TASK_FAILED_CAUSE_BAD_SCHEDULE_ACTIVITY_ATTRIBUTES | :WORKFLOW_TASK_FAILED_CAUSE_BAD_REQUEST_CANCEL_ACTIVITY_ATTRIBUTES | :WORKFLOW_TASK_FAILED_CAUSE_BAD_START_TIMER_ATTRIBUTES | :WORKFLOW_TASK_FAILED_CAUSE_BAD_CANCEL_TIMER_ATTRIBUTES | :WORKFLOW_TASK_FAILED_CAUSE_BAD_RECORD_MARKER_ATTRIBUTES | :WORKFLOW_TASK_FAILED_CAUSE_BAD_COMPLETE_WORKFLOW_EXECUTION_ATTRIBUTES | :WORKFLOW_TASK_FAILED_CAUSE_BAD_FAIL_WORKFLOW_EXECUTION_ATTRIBUTES | :WORKFLOW_TASK_FAILED_CAUSE_BAD_CANCEL_WORKFLOW_EXECUTION_ATTRIBUTES | :WORKFLOW_TASK_FAILED_CAUSE_BAD_REQUEST_CANCEL_EXTERNAL_WORKFLOW_EXECUTION_ATTRIBUTES | :WORKFLOW_TASK_FAILED_CAUSE_BAD_CONTINUE_AS_NEW_ATTRIBUTES | :WORKFLOW_TASK_FAILED_CAUSE_START_TIMER_DUPLICATE_ID | :WORKFLOW_TASK_FAILED_CAUSE_RESET_STICKY_TASK_QUEUE | :WORKFLOW_TASK_FAILED_CAUSE_WORKFLOW_WORKER_UNHANDLED_FAILURE | :WORKFLOW_TASK_FAILED_CAUSE_BAD_SIGNAL_WORKFLOW_EXECUTION_ATTRIBUTES | :WORKFLOW_TASK_FAILED_CAUSE_BAD_START_CHILD_EXECUTION_ATTRIBUTES | :WORKFLOW_TASK_FAILED_CAUSE_FORCE_CLOSE_COMMAND | :WORKFLOW_TASK_FAILED_CAUSE_FAILOVER_CLOSE_COMMAND | :WORKFLOW_TASK_FAILED_CAUSE_BAD_SIGNAL_INPUT_SIZE | :WORKFLOW_TASK_FAILED_CAUSE_RESET_WORKFLOW | :WORKFLOW_TASK_FAILED_CAUSE_BAD_BINARY | :WORKFLOW_TASK_FAILED_CAUSE_SCHEDULE_ACTIVITY_DUPLICATE_ID | :WORKFLOW_TASK_FAILED_CAUSE_BAD_SEARCH_ATTRIBUTES | :WORKFLOW_TASK_FAILED_CAUSE_NON_DETERMINISTIC_ERROR | :WORKFLOW_TASK_FAILED_CAUSE_BAD_MODIFY_WORKFLOW_PROPERTIES_ATTRIBUTES | :WORKFLOW_TASK_FAILED_CAUSE_PENDING_CHILD_WORKFLOWS_LIMIT_EXCEEDED | :WORKFLOW_TASK_FAILED_CAUSE_PENDING_ACTIVITIES_LIMIT_EXCEEDED | :WORKFLOW_TASK_FAILED_CAUSE_PENDING_SIGNALS_LIMIT_EXCEEDED | :WORKFLOW_TASK_FAILED_CAUSE_PENDING_REQUEST_CANCEL_LIMIT_EXCEEDED | :WORKFLOW_TASK_FAILED_CAUSE_BAD_UPDATE_WORKFLOW_EXECUTION_MESSAGE | :WORKFLOW_TASK_FAILED_CAUSE_UNHANDLED_UPDATE | :WORKFLOW_TASK_FAILED_CAUSE_BAD_SCHEDULE_NEXUS_OPERATION_ATTRIBUTES | :WORKFLOW_TASK_FAILED_CAUSE_PENDING_NEXUS_OPERATIONS_LIMIT_EXCEEDED | :WORKFLOW_TASK_FAILED_CAUSE_BAD_REQUEST_CANCEL_NEXUS_OPERATION_ATTRIBUTES | :WORKFLOW_TASK_FAILED_CAUSE_FEATURE_DISABLED | :WORKFLOW_TASK_FAILED_CAUSE_GRPC_MESSAGE_TOO_LARGE | :WORKFLOW_TASK_FAILED_CAUSE_PAYLOADS_TOO_LARGE | :WORKFLOW_TASK_FAILED_CAUSE_EXTERNAL_STORAGE_FAILURE | :WORKFLOW_TASK_FAILED_CAUSE_WORKFLOW_PAUSE_REQUESTED_BEFORE_TASK_STARTED | :WORKFLOW_TASK_FAILED_CAUSE_REQUEST_TOO_LARGE
129
139
 
130
- type strings = "WORKFLOW_TASK_FAILED_CAUSE_UNSPECIFIED" | "WORKFLOW_TASK_FAILED_CAUSE_UNHANDLED_COMMAND" | "WORKFLOW_TASK_FAILED_CAUSE_BAD_SCHEDULE_ACTIVITY_ATTRIBUTES" | "WORKFLOW_TASK_FAILED_CAUSE_BAD_REQUEST_CANCEL_ACTIVITY_ATTRIBUTES" | "WORKFLOW_TASK_FAILED_CAUSE_BAD_START_TIMER_ATTRIBUTES" | "WORKFLOW_TASK_FAILED_CAUSE_BAD_CANCEL_TIMER_ATTRIBUTES" | "WORKFLOW_TASK_FAILED_CAUSE_BAD_RECORD_MARKER_ATTRIBUTES" | "WORKFLOW_TASK_FAILED_CAUSE_BAD_COMPLETE_WORKFLOW_EXECUTION_ATTRIBUTES" | "WORKFLOW_TASK_FAILED_CAUSE_BAD_FAIL_WORKFLOW_EXECUTION_ATTRIBUTES" | "WORKFLOW_TASK_FAILED_CAUSE_BAD_CANCEL_WORKFLOW_EXECUTION_ATTRIBUTES" | "WORKFLOW_TASK_FAILED_CAUSE_BAD_REQUEST_CANCEL_EXTERNAL_WORKFLOW_EXECUTION_ATTRIBUTES" | "WORKFLOW_TASK_FAILED_CAUSE_BAD_CONTINUE_AS_NEW_ATTRIBUTES" | "WORKFLOW_TASK_FAILED_CAUSE_START_TIMER_DUPLICATE_ID" | "WORKFLOW_TASK_FAILED_CAUSE_RESET_STICKY_TASK_QUEUE" | "WORKFLOW_TASK_FAILED_CAUSE_WORKFLOW_WORKER_UNHANDLED_FAILURE" | "WORKFLOW_TASK_FAILED_CAUSE_BAD_SIGNAL_WORKFLOW_EXECUTION_ATTRIBUTES" | "WORKFLOW_TASK_FAILED_CAUSE_BAD_START_CHILD_EXECUTION_ATTRIBUTES" | "WORKFLOW_TASK_FAILED_CAUSE_FORCE_CLOSE_COMMAND" | "WORKFLOW_TASK_FAILED_CAUSE_FAILOVER_CLOSE_COMMAND" | "WORKFLOW_TASK_FAILED_CAUSE_BAD_SIGNAL_INPUT_SIZE" | "WORKFLOW_TASK_FAILED_CAUSE_RESET_WORKFLOW" | "WORKFLOW_TASK_FAILED_CAUSE_BAD_BINARY" | "WORKFLOW_TASK_FAILED_CAUSE_SCHEDULE_ACTIVITY_DUPLICATE_ID" | "WORKFLOW_TASK_FAILED_CAUSE_BAD_SEARCH_ATTRIBUTES" | "WORKFLOW_TASK_FAILED_CAUSE_NON_DETERMINISTIC_ERROR" | "WORKFLOW_TASK_FAILED_CAUSE_BAD_MODIFY_WORKFLOW_PROPERTIES_ATTRIBUTES" | "WORKFLOW_TASK_FAILED_CAUSE_PENDING_CHILD_WORKFLOWS_LIMIT_EXCEEDED" | "WORKFLOW_TASK_FAILED_CAUSE_PENDING_ACTIVITIES_LIMIT_EXCEEDED" | "WORKFLOW_TASK_FAILED_CAUSE_PENDING_SIGNALS_LIMIT_EXCEEDED" | "WORKFLOW_TASK_FAILED_CAUSE_PENDING_REQUEST_CANCEL_LIMIT_EXCEEDED" | "WORKFLOW_TASK_FAILED_CAUSE_BAD_UPDATE_WORKFLOW_EXECUTION_MESSAGE" | "WORKFLOW_TASK_FAILED_CAUSE_UNHANDLED_UPDATE" | "WORKFLOW_TASK_FAILED_CAUSE_BAD_SCHEDULE_NEXUS_OPERATION_ATTRIBUTES" | "WORKFLOW_TASK_FAILED_CAUSE_PENDING_NEXUS_OPERATIONS_LIMIT_EXCEEDED" | "WORKFLOW_TASK_FAILED_CAUSE_BAD_REQUEST_CANCEL_NEXUS_OPERATION_ATTRIBUTES" | "WORKFLOW_TASK_FAILED_CAUSE_FEATURE_DISABLED" | "WORKFLOW_TASK_FAILED_CAUSE_GRPC_MESSAGE_TOO_LARGE" | "WORKFLOW_TASK_FAILED_CAUSE_PAYLOADS_TOO_LARGE"
140
+ type strings = "WORKFLOW_TASK_FAILED_CAUSE_UNSPECIFIED" | "WORKFLOW_TASK_FAILED_CAUSE_UNHANDLED_COMMAND" | "WORKFLOW_TASK_FAILED_CAUSE_BAD_SCHEDULE_ACTIVITY_ATTRIBUTES" | "WORKFLOW_TASK_FAILED_CAUSE_BAD_REQUEST_CANCEL_ACTIVITY_ATTRIBUTES" | "WORKFLOW_TASK_FAILED_CAUSE_BAD_START_TIMER_ATTRIBUTES" | "WORKFLOW_TASK_FAILED_CAUSE_BAD_CANCEL_TIMER_ATTRIBUTES" | "WORKFLOW_TASK_FAILED_CAUSE_BAD_RECORD_MARKER_ATTRIBUTES" | "WORKFLOW_TASK_FAILED_CAUSE_BAD_COMPLETE_WORKFLOW_EXECUTION_ATTRIBUTES" | "WORKFLOW_TASK_FAILED_CAUSE_BAD_FAIL_WORKFLOW_EXECUTION_ATTRIBUTES" | "WORKFLOW_TASK_FAILED_CAUSE_BAD_CANCEL_WORKFLOW_EXECUTION_ATTRIBUTES" | "WORKFLOW_TASK_FAILED_CAUSE_BAD_REQUEST_CANCEL_EXTERNAL_WORKFLOW_EXECUTION_ATTRIBUTES" | "WORKFLOW_TASK_FAILED_CAUSE_BAD_CONTINUE_AS_NEW_ATTRIBUTES" | "WORKFLOW_TASK_FAILED_CAUSE_START_TIMER_DUPLICATE_ID" | "WORKFLOW_TASK_FAILED_CAUSE_RESET_STICKY_TASK_QUEUE" | "WORKFLOW_TASK_FAILED_CAUSE_WORKFLOW_WORKER_UNHANDLED_FAILURE" | "WORKFLOW_TASK_FAILED_CAUSE_BAD_SIGNAL_WORKFLOW_EXECUTION_ATTRIBUTES" | "WORKFLOW_TASK_FAILED_CAUSE_BAD_START_CHILD_EXECUTION_ATTRIBUTES" | "WORKFLOW_TASK_FAILED_CAUSE_FORCE_CLOSE_COMMAND" | "WORKFLOW_TASK_FAILED_CAUSE_FAILOVER_CLOSE_COMMAND" | "WORKFLOW_TASK_FAILED_CAUSE_BAD_SIGNAL_INPUT_SIZE" | "WORKFLOW_TASK_FAILED_CAUSE_RESET_WORKFLOW" | "WORKFLOW_TASK_FAILED_CAUSE_BAD_BINARY" | "WORKFLOW_TASK_FAILED_CAUSE_SCHEDULE_ACTIVITY_DUPLICATE_ID" | "WORKFLOW_TASK_FAILED_CAUSE_BAD_SEARCH_ATTRIBUTES" | "WORKFLOW_TASK_FAILED_CAUSE_NON_DETERMINISTIC_ERROR" | "WORKFLOW_TASK_FAILED_CAUSE_BAD_MODIFY_WORKFLOW_PROPERTIES_ATTRIBUTES" | "WORKFLOW_TASK_FAILED_CAUSE_PENDING_CHILD_WORKFLOWS_LIMIT_EXCEEDED" | "WORKFLOW_TASK_FAILED_CAUSE_PENDING_ACTIVITIES_LIMIT_EXCEEDED" | "WORKFLOW_TASK_FAILED_CAUSE_PENDING_SIGNALS_LIMIT_EXCEEDED" | "WORKFLOW_TASK_FAILED_CAUSE_PENDING_REQUEST_CANCEL_LIMIT_EXCEEDED" | "WORKFLOW_TASK_FAILED_CAUSE_BAD_UPDATE_WORKFLOW_EXECUTION_MESSAGE" | "WORKFLOW_TASK_FAILED_CAUSE_UNHANDLED_UPDATE" | "WORKFLOW_TASK_FAILED_CAUSE_BAD_SCHEDULE_NEXUS_OPERATION_ATTRIBUTES" | "WORKFLOW_TASK_FAILED_CAUSE_PENDING_NEXUS_OPERATIONS_LIMIT_EXCEEDED" | "WORKFLOW_TASK_FAILED_CAUSE_BAD_REQUEST_CANCEL_NEXUS_OPERATION_ATTRIBUTES" | "WORKFLOW_TASK_FAILED_CAUSE_FEATURE_DISABLED" | "WORKFLOW_TASK_FAILED_CAUSE_GRPC_MESSAGE_TOO_LARGE" | "WORKFLOW_TASK_FAILED_CAUSE_PAYLOADS_TOO_LARGE" | "WORKFLOW_TASK_FAILED_CAUSE_EXTERNAL_STORAGE_FAILURE" | "WORKFLOW_TASK_FAILED_CAUSE_WORKFLOW_PAUSE_REQUESTED_BEFORE_TASK_STARTED" | "WORKFLOW_TASK_FAILED_CAUSE_REQUEST_TOO_LARGE"
131
141
 
132
- type numbers = 0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | 22 | 23 | 24 | 25 | 26 | 27 | 28 | 29 | 30 | 31 | 32 | 33 | 34 | 35 | 36 | 37
142
+ type numbers = 0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | 22 | 23 | 24 | 25 | 26 | 27 | 28 | 29 | 30 | 31 | 32 | 33 | 34 | 35 | 36 | 37 | 38 | 39 | 40
133
143
  end
134
144
 
135
145
  module StartChildWorkflowExecutionFailedCause
@@ -140,17 +150,19 @@ module Temporalio
140
150
 
141
151
  START_CHILD_WORKFLOW_EXECUTION_FAILED_CAUSE_NAMESPACE_NOT_FOUND: 2
142
152
 
153
+ START_CHILD_WORKFLOW_EXECUTION_FAILED_CAUSE_INVALID_VERSIONING_OVERRIDE: 3
154
+
143
155
  def self.lookup: (::Integer number) -> ::Symbol
144
156
 
145
157
 
146
158
  def self.resolve: (::Symbol name) -> ::Integer
147
159
 
148
160
 
149
- type names = :START_CHILD_WORKFLOW_EXECUTION_FAILED_CAUSE_UNSPECIFIED | :START_CHILD_WORKFLOW_EXECUTION_FAILED_CAUSE_WORKFLOW_ALREADY_EXISTS | :START_CHILD_WORKFLOW_EXECUTION_FAILED_CAUSE_NAMESPACE_NOT_FOUND
161
+ type names = :START_CHILD_WORKFLOW_EXECUTION_FAILED_CAUSE_UNSPECIFIED | :START_CHILD_WORKFLOW_EXECUTION_FAILED_CAUSE_WORKFLOW_ALREADY_EXISTS | :START_CHILD_WORKFLOW_EXECUTION_FAILED_CAUSE_NAMESPACE_NOT_FOUND | :START_CHILD_WORKFLOW_EXECUTION_FAILED_CAUSE_INVALID_VERSIONING_OVERRIDE
150
162
 
151
- type strings = "START_CHILD_WORKFLOW_EXECUTION_FAILED_CAUSE_UNSPECIFIED" | "START_CHILD_WORKFLOW_EXECUTION_FAILED_CAUSE_WORKFLOW_ALREADY_EXISTS" | "START_CHILD_WORKFLOW_EXECUTION_FAILED_CAUSE_NAMESPACE_NOT_FOUND"
163
+ type strings = "START_CHILD_WORKFLOW_EXECUTION_FAILED_CAUSE_UNSPECIFIED" | "START_CHILD_WORKFLOW_EXECUTION_FAILED_CAUSE_WORKFLOW_ALREADY_EXISTS" | "START_CHILD_WORKFLOW_EXECUTION_FAILED_CAUSE_NAMESPACE_NOT_FOUND" | "START_CHILD_WORKFLOW_EXECUTION_FAILED_CAUSE_INVALID_VERSIONING_OVERRIDE"
152
164
 
153
- type numbers = 0 | 1 | 2
165
+ type numbers = 0 | 1 | 2 | 3
154
166
  end
155
167
 
156
168
  module CancelExternalWorkflowExecutionFailedCause
@@ -0,0 +1,58 @@
1
+ # Generated by the protocol buffer compiler. DO NOT EDIT!
2
+ # This RBS interface is provided for convenience, on a best-effort basis.
3
+ # The library is the definitive source for the API contract; if the RBS file
4
+ # and the library's behavior differ, the library behavior is authoritative.
5
+ # We welcome fixes to change the RBS file to match.
6
+ # source: temporal/api/enums/v1/time_skipping.proto
7
+
8
+ module Temporalio
9
+ module Api
10
+ module Enums
11
+ module V1
12
+ # FastForwardPollingResult is the result of polling and waiting for a fast-forward to complete
13
+ # on a time-skipping execution.
14
+ # FAST_FORWARD_POLLING_RESULT_POLL_TIMEOUT and FAST_FORWARD_POLLING_RESULT_FAST_FORWARD_COMPLETED
15
+ # are the normal poll outcomes; FAST_FORWARD_POLLING_RESULT_FAST_FORWARD_FAILED means the
16
+ # fast-forward can no longer complete.
17
+ module FastForwardPollingResult
18
+
19
+ # Never returned; guards against an unset result.
20
+ FAST_FORWARD_POLLING_RESULT_UNSPECIFIED: 0
21
+
22
+ # The poll timed out server-side before the fast-forward completed. The caller may poll again.
23
+ FAST_FORWARD_POLLING_RESULT_POLL_TIMEOUT: 1
24
+
25
+ # The fast-forward identified by the request's `fast_forward_id` reached its target time and completed.
26
+ FAST_FORWARD_POLLING_RESULT_FAST_FORWARD_COMPLETED: 2
27
+
28
+ # The fast-forward can no longer complete, which usually indicates improper usage of
29
+ # fast-forward on the client side. Possible reasons: the `fast_forward_id` does not match
30
+ # the execution's current fast-forward, the execution ended before the fast-forward
31
+ # completed, the fast-forward config was updated while the poll was in flight, etc.
32
+ # See `failed_reason` in the response for the specific cause.
33
+ FAST_FORWARD_POLLING_RESULT_FAST_FORWARD_FAILED: 3
34
+
35
+ def self.lookup: (::Integer number) -> ::Symbol
36
+
37
+
38
+ def self.resolve: (::Symbol name) -> ::Integer
39
+
40
+
41
+ type names = :FAST_FORWARD_POLLING_RESULT_UNSPECIFIED | :FAST_FORWARD_POLLING_RESULT_POLL_TIMEOUT | :FAST_FORWARD_POLLING_RESULT_FAST_FORWARD_COMPLETED | :FAST_FORWARD_POLLING_RESULT_FAST_FORWARD_FAILED
42
+
43
+ type strings = "FAST_FORWARD_POLLING_RESULT_UNSPECIFIED" | "FAST_FORWARD_POLLING_RESULT_POLL_TIMEOUT" | "FAST_FORWARD_POLLING_RESULT_FAST_FORWARD_COMPLETED" | "FAST_FORWARD_POLLING_RESULT_FAST_FORWARD_FAILED"
44
+
45
+ type numbers = 0 | 1 | 2 | 3
46
+ end
47
+ end
48
+ end
49
+ end
50
+ end
51
+
52
+ module Google
53
+ module Protobuf
54
+ class DescriptorPool
55
+ def lookup: (::String name) -> ::Google::Protobuf::Descriptor
56
+ end
57
+ end
58
+ end