temporalio 1.5.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 (516) hide show
  1. checksums.yaml +4 -4
  2. data/Cargo.lock +1469 -659
  3. data/Cargo.toml +1 -1
  4. data/Gemfile +9 -5
  5. data/README.md +59 -3
  6. data/Rakefile +1 -1
  7. data/ext/Cargo.toml +9 -3
  8. data/lib/temporalio/api/activity/v1/message.rb +1 -1
  9. data/lib/temporalio/api/batch/v1/message.rb +4 -1
  10. data/lib/temporalio/api/cloud/billing/v1/message.rb +2 -1
  11. data/lib/temporalio/api/cloud/cloudservice/v1/request_response.rb +17 -1
  12. data/lib/temporalio/api/cloud/cloudservice/v1/service.rb +1 -1
  13. data/lib/temporalio/api/cloud/connectivityrule/v1/message.rb +1 -1
  14. data/lib/temporalio/api/cloud/identity/v1/message.rb +8 -1
  15. data/lib/temporalio/api/cloud/namespace/v1/message.rb +5 -1
  16. data/lib/temporalio/api/command/v1/message.rb +3 -1
  17. data/lib/temporalio/api/common/v1/message.rb +9 -1
  18. data/lib/temporalio/api/deployment/v1/message.rb +3 -1
  19. data/lib/temporalio/api/enums/v1/activity.rb +1 -1
  20. data/lib/temporalio/api/enums/v1/batch_operation.rb +1 -1
  21. data/lib/temporalio/api/enums/v1/common.rb +2 -1
  22. data/lib/temporalio/api/enums/v1/failed_cause.rb +1 -1
  23. data/lib/temporalio/api/enums/v1/time_skipping.rb +21 -0
  24. data/lib/temporalio/api/errordetails/v1/message.rb +2 -1
  25. data/lib/temporalio/api/history/v1/message.rb +3 -1
  26. data/lib/temporalio/api/namespace/v1/message.rb +1 -1
  27. data/lib/temporalio/api/nexus/v1/message.rb +1 -1
  28. data/lib/temporalio/api/nexusannotations/v1/options.rb +20 -0
  29. data/lib/temporalio/api/payload_visitor.rb +32 -0
  30. data/lib/temporalio/api/schedule/v1/message.rb +1 -1
  31. data/lib/temporalio/api/sdk/v1/event_group_marker.rb +26 -0
  32. data/lib/temporalio/api/taskqueue/v1/message.rb +2 -1
  33. data/lib/temporalio/api/update/v1/message.rb +1 -1
  34. data/lib/temporalio/api/worker/v1/message.rb +13 -1
  35. data/lib/temporalio/api/workflow/v1/message.rb +3 -2
  36. data/lib/temporalio/api/workflowservice/v1/request_response.rb +14 -1
  37. data/lib/temporalio/api/workflowservice/v1/service.rb +3 -2
  38. data/lib/temporalio/client/connection/cloud_service.rb +120 -0
  39. data/lib/temporalio/client/connection/workflow_service.rb +90 -0
  40. data/lib/temporalio/client/connection.rb +68 -3
  41. data/lib/temporalio/client/schedule.rb +4 -5
  42. data/lib/temporalio/client/workflow_execution.rb +2 -2
  43. data/lib/temporalio/client/workflow_handle.rb +2 -1
  44. data/lib/temporalio/client.rb +14 -11
  45. data/lib/temporalio/converters/data_converter.rb +1 -0
  46. data/lib/temporalio/converters/failure_converter.rb +7 -4
  47. data/lib/temporalio/internal/bridge/api/common/common.rb +2 -1
  48. data/lib/temporalio/internal/bridge/api/workflow_commands/workflow_commands.rb +1 -1
  49. data/lib/temporalio/internal/bridge/api/workflow_completion/workflow_completion.rb +1 -1
  50. data/lib/temporalio/internal/bridge/client.rb +8 -1
  51. data/lib/temporalio/internal/bridge/runtime.rb +4 -1
  52. data/lib/temporalio/internal/bridge/worker.rb +3 -1
  53. data/lib/temporalio/internal/bridge.rb +20 -0
  54. data/lib/temporalio/internal/google_protobuf.rb +11 -0
  55. data/lib/temporalio/internal/worker/workflow_instance/context.rb +2 -0
  56. data/lib/temporalio/internal/worker/workflow_instance/details.rb +3 -1
  57. data/lib/temporalio/internal/worker/workflow_instance/illegal_call_tracer.rb +9 -0
  58. data/lib/temporalio/internal/worker/workflow_instance/scheduler.rb +73 -2
  59. data/lib/temporalio/internal/worker/workflow_instance.rb +36 -6
  60. data/lib/temporalio/internal/worker/workflow_worker.rb +10 -2
  61. data/lib/temporalio/internal/workflow_task_failure_error.rb +9 -0
  62. data/lib/temporalio/runtime.rb +25 -7
  63. data/lib/temporalio/scoped_logger.rb +15 -0
  64. data/lib/temporalio/version.rb +1 -1
  65. data/lib/temporalio/worker/activity_executor/fiber.rb +1 -1
  66. data/lib/temporalio/worker/activity_executor/thread_pool.rb +1 -1
  67. data/lib/temporalio/worker/illegal_workflow_call_validator.rb +3 -1
  68. data/lib/temporalio/worker/workflow_executor/thread_pool.rb +5 -1
  69. data/lib/temporalio/worker/workflow_replayer.rb +19 -4
  70. data/lib/temporalio/worker.rb +54 -9
  71. data/lib/temporalio/workflow/future.rb +5 -0
  72. data/lib/temporalio/workflow/nexus_operation_cancellation_type.rb +4 -2
  73. data/lib/temporalio/workflow.rb +16 -9
  74. data/rbi/google/protobuf.rbi +25 -0
  75. data/rbi/temporalio/activity/cancellation_details.rbi +33 -0
  76. data/rbi/temporalio/activity/complete_async_error.rbi +3 -0
  77. data/rbi/temporalio/activity/context.rbi +42 -0
  78. data/rbi/temporalio/activity/definition.rbi +74 -0
  79. data/rbi/temporalio/activity/info.rbi +112 -0
  80. data/rbi/temporalio/activity.rbi +3 -0
  81. data/rbi/temporalio/api/activity/v1/message.rbi +1539 -0
  82. data/rbi/temporalio/api/batch/v1/message.rbi +1510 -0
  83. data/rbi/temporalio/api/callback/v1/message.rbi +188 -0
  84. data/rbi/temporalio/api/cloud/account/v1/message.rbi +650 -0
  85. data/rbi/temporalio/api/cloud/auditlog/v1/message.rbi +318 -0
  86. data/rbi/temporalio/api/cloud/billing/v1/message.rbi +480 -0
  87. data/rbi/temporalio/api/cloud/cloudservice/v1/request_response.rbi +12454 -0
  88. data/rbi/temporalio/api/cloud/cloudservice/v1/service.rbi +3 -0
  89. data/rbi/temporalio/api/cloud/cloudservice/v1/service_services.rbi +709 -0
  90. data/rbi/temporalio/api/cloud/cloudservice.rbi +5 -0
  91. data/rbi/temporalio/api/cloud/connectivityrule/v1/message.rbi +403 -0
  92. data/rbi/temporalio/api/cloud/identity/v1/message.rbi +3072 -0
  93. data/rbi/temporalio/api/cloud/namespace/v1/message.rbi +3659 -0
  94. data/rbi/temporalio/api/cloud/nexus/v1/message.rbi +595 -0
  95. data/rbi/temporalio/api/cloud/operation/v1/message.rbi +244 -0
  96. data/rbi/temporalio/api/cloud/region/v1/message.rbi +166 -0
  97. data/rbi/temporalio/api/cloud/resource/v1/message.rbi +29 -0
  98. data/rbi/temporalio/api/cloud/sink/v1/message.rbi +438 -0
  99. data/rbi/temporalio/api/cloud/usage/v1/message.rbi +409 -0
  100. data/rbi/temporalio/api/command/v1/message.rbi +2675 -0
  101. data/rbi/temporalio/api/common/v1/grpc_status.rbi +92 -0
  102. data/rbi/temporalio/api/common/v1/message.rbi +3457 -0
  103. data/rbi/temporalio/api/compute/v1/config.rbi +421 -0
  104. data/rbi/temporalio/api/compute/v1/provider.rbi +125 -0
  105. data/rbi/temporalio/api/compute/v1/scaler.rbi +102 -0
  106. data/rbi/temporalio/api/deployment/v1/message.rbi +2340 -0
  107. data/rbi/temporalio/api/enums/v1/activity.rbi +63 -0
  108. data/rbi/temporalio/api/enums/v1/batch_operation.rbi +56 -0
  109. data/rbi/temporalio/api/enums/v1/command_type.rbi +36 -0
  110. data/rbi/temporalio/api/enums/v1/common.rbi +199 -0
  111. data/rbi/temporalio/api/enums/v1/deployment.rbi +80 -0
  112. data/rbi/temporalio/api/enums/v1/event_type.rbi +79 -0
  113. data/rbi/temporalio/api/enums/v1/failed_cause.rbi +159 -0
  114. data/rbi/temporalio/api/enums/v1/namespace.rbi +58 -0
  115. data/rbi/temporalio/api/enums/v1/nexus.rbi +98 -0
  116. data/rbi/temporalio/api/enums/v1/query.rbi +40 -0
  117. data/rbi/temporalio/api/enums/v1/reset.rbi +60 -0
  118. data/rbi/temporalio/api/enums/v1/schedule.rbi +25 -0
  119. data/rbi/temporalio/api/enums/v1/task_queue.rbi +134 -0
  120. data/rbi/temporalio/api/enums/v1/time_skipping.rbi +22 -0
  121. data/rbi/temporalio/api/enums/v1/update.rbi +39 -0
  122. data/rbi/temporalio/api/enums/v1/workflow.rbi +259 -0
  123. data/rbi/temporalio/api/errordetails/v1/message.rbi +1446 -0
  124. data/rbi/temporalio/api/export/v1/message.rbi +123 -0
  125. data/rbi/temporalio/api/failure/v1/message.rbi +1303 -0
  126. data/rbi/temporalio/api/filter/v1/message.rbi +267 -0
  127. data/rbi/temporalio/api/history/v1/message.rbi +10757 -0
  128. data/rbi/temporalio/api/namespace/v1/message.rbi +1135 -0
  129. data/rbi/temporalio/api/nexus/v1/message.rbi +2780 -0
  130. data/rbi/temporalio/api/nexusannotations/v1/options.rbi +161 -0
  131. data/rbi/temporalio/api/nexusservices/workerservice/v1/request_response.rbi +124 -0
  132. data/rbi/temporalio/api/operatorservice/v1/request_response.rbi +1836 -0
  133. data/rbi/temporalio/api/operatorservice/v1/service.rbi +3 -0
  134. data/rbi/temporalio/api/operatorservice/v1/service_services.rbi +143 -0
  135. data/rbi/temporalio/api/operatorservice.rbi +5 -0
  136. data/rbi/temporalio/api/payload_visitor.rbi +876 -0
  137. data/rbi/temporalio/api/protoc_gen_openapiv2/options/annotations.rbi +3 -0
  138. data/rbi/temporalio/api/protoc_gen_openapiv2/options/openapiv2.rbi +3482 -0
  139. data/rbi/temporalio/api/protocol/v1/message.rbi +139 -0
  140. data/rbi/temporalio/api/protometa/v1/annotations.rbi +97 -0
  141. data/rbi/temporalio/api/query/v1/message.rbi +288 -0
  142. data/rbi/temporalio/api/replication/v1/message.rbi +226 -0
  143. data/rbi/temporalio/api/rules/v1/message.rbi +492 -0
  144. data/rbi/temporalio/api/schedule/v1/message.rbi +2377 -0
  145. data/rbi/temporalio/api/sdk/v1/enhanced_stack_trace.rbi +478 -0
  146. data/rbi/temporalio/api/sdk/v1/event_group_marker.rbi +337 -0
  147. data/rbi/temporalio/api/sdk/v1/external_storage.rbi +85 -0
  148. data/rbi/temporalio/api/sdk/v1/task_complete_metadata.rbi +206 -0
  149. data/rbi/temporalio/api/sdk/v1/user_metadata.rbi +98 -0
  150. data/rbi/temporalio/api/sdk/v1/worker_config.rbi +255 -0
  151. data/rbi/temporalio/api/sdk/v1/workflow_metadata.rbi +297 -0
  152. data/rbi/temporalio/api/taskqueue/v1/message.rbi +2571 -0
  153. data/rbi/temporalio/api/testservice/v1/request_response.rbi +380 -0
  154. data/rbi/temporalio/api/testservice/v1/service.rbi +3 -0
  155. data/rbi/temporalio/api/testservice/v1/service_services.rbi +100 -0
  156. data/rbi/temporalio/api/update/v1/message.rbi +800 -0
  157. data/rbi/temporalio/api/version/v1/message.rbi +281 -0
  158. data/rbi/temporalio/api/worker/v1/message.rbi +2305 -0
  159. data/rbi/temporalio/api/workflow/v1/message.rbi +5031 -0
  160. data/rbi/temporalio/api/workflowservice/v1/request_response.rbi +31061 -0
  161. data/rbi/temporalio/api/workflowservice/v1/service.rbi +3 -0
  162. data/rbi/temporalio/api/workflowservice/v1/service_services.rbi +1579 -0
  163. data/rbi/temporalio/api/workflowservice.rbi +5 -0
  164. data/rbi/temporalio/api.rbi +7 -0
  165. data/rbi/temporalio/cancellation.rbi +40 -0
  166. data/rbi/temporalio/client/activity_execution.rbi +134 -0
  167. data/rbi/temporalio/client/activity_execution_count.rbi +23 -0
  168. data/rbi/temporalio/client/activity_execution_status.rbi +11 -0
  169. data/rbi/temporalio/client/activity_handle.rbi +49 -0
  170. data/rbi/temporalio/client/activity_id_reference.rbi +24 -0
  171. data/rbi/temporalio/client/async_activity_handle.rbi +49 -0
  172. data/rbi/temporalio/client/connection/cloud_service.rbi +239 -0
  173. data/rbi/temporalio/client/connection/operator_service.rbi +47 -0
  174. data/rbi/temporalio/client/connection/service.rbi +19 -0
  175. data/rbi/temporalio/client/connection/test_service.rbi +29 -0
  176. data/rbi/temporalio/client/connection/workflow_service.rbi +380 -0
  177. data/rbi/temporalio/client/connection.rbi +286 -0
  178. data/rbi/temporalio/client/interceptor.rbi +1067 -0
  179. data/rbi/temporalio/client/pending_activity_state.rbi +9 -0
  180. data/rbi/temporalio/client/plugin.rbi +17 -0
  181. data/rbi/temporalio/client/schedule.rbi +677 -0
  182. data/rbi/temporalio/client/schedule_handle.rbi +40 -0
  183. data/rbi/temporalio/client/with_start_workflow_operation.rbi +126 -0
  184. data/rbi/temporalio/client/workflow_execution.rbi +62 -0
  185. data/rbi/temporalio/client/workflow_execution_count.rbi +23 -0
  186. data/rbi/temporalio/client/workflow_execution_status.rbi +11 -0
  187. data/rbi/temporalio/client/workflow_handle.rbi +148 -0
  188. data/rbi/temporalio/client/workflow_query_reject_condition.rbi +7 -0
  189. data/rbi/temporalio/client/workflow_update_handle.rbi +38 -0
  190. data/rbi/temporalio/client/workflow_update_wait_stage.rbi +7 -0
  191. data/rbi/temporalio/client.rbi +534 -0
  192. data/rbi/temporalio/common_enums.rbi +45 -0
  193. data/rbi/temporalio/contrib/open_telemetry.rbi +73 -0
  194. data/rbi/temporalio/converters/data_converter.rbi +44 -0
  195. data/rbi/temporalio/converters/failure_converter.rbi +25 -0
  196. data/rbi/temporalio/converters/payload_codec.rbi +11 -0
  197. data/rbi/temporalio/converters/payload_converter/binary_null.rbi +5 -0
  198. data/rbi/temporalio/converters/payload_converter/binary_plain.rbi +5 -0
  199. data/rbi/temporalio/converters/payload_converter/binary_protobuf.rbi +5 -0
  200. data/rbi/temporalio/converters/payload_converter/composite.rbi +20 -0
  201. data/rbi/temporalio/converters/payload_converter/encoding.rbi +14 -0
  202. data/rbi/temporalio/converters/payload_converter/json_plain.rbi +10 -0
  203. data/rbi/temporalio/converters/payload_converter/json_protobuf.rbi +5 -0
  204. data/rbi/temporalio/converters/payload_converter.rbi +28 -0
  205. data/rbi/temporalio/converters/raw_value.rbi +11 -0
  206. data/rbi/temporalio/converters.rbi +3 -0
  207. data/rbi/temporalio/env_config.rbi +156 -0
  208. data/rbi/temporalio/error/failure.rbi +3 -0
  209. data/rbi/temporalio/error.rbi +313 -0
  210. data/rbi/temporalio/internal/bridge/api/activity_result/activity_result.rbi +547 -0
  211. data/rbi/temporalio/internal/bridge/api/activity_task/activity_task.rbi +705 -0
  212. data/rbi/temporalio/internal/bridge/api/child_workflow/child_workflow.rbi +332 -0
  213. data/rbi/temporalio/internal/bridge/api/common/common.rbi +306 -0
  214. data/rbi/temporalio/internal/bridge/api/core_interface.rbi +567 -0
  215. data/rbi/temporalio/internal/bridge/api/external_data/external_data.rbi +255 -0
  216. data/rbi/temporalio/internal/bridge/api/nexus/nexus.rbi +527 -0
  217. data/rbi/temporalio/internal/bridge/api/workflow_activation/workflow_activation.rbi +2808 -0
  218. data/rbi/temporalio/internal/bridge/api/workflow_commands/workflow_commands.rbi +3309 -0
  219. data/rbi/temporalio/internal/bridge/api/workflow_completion/workflow_completion.rbi +312 -0
  220. data/rbi/temporalio/internal/bridge/api.rbi +3 -0
  221. data/rbi/temporalio/internal/bridge/client.rbi +346 -0
  222. data/rbi/temporalio/internal/bridge/runtime.rbi +251 -0
  223. data/rbi/temporalio/internal/bridge/testing.rbi +109 -0
  224. data/rbi/temporalio/internal/bridge/worker.rbi +252 -0
  225. data/rbi/temporalio/internal/bridge.rbi +47 -0
  226. data/rbi/temporalio/internal/client/implementation.rbi +53 -0
  227. data/rbi/temporalio/internal/google_protobuf.rbi +8 -0
  228. data/rbi/temporalio/internal/metric.rbi +55 -0
  229. data/rbi/temporalio/internal/proto_utils.rbi +148 -0
  230. data/rbi/temporalio/internal/worker/activity_worker.rbi +108 -0
  231. data/rbi/temporalio/internal/worker/multi_runner.rbi +175 -0
  232. data/rbi/temporalio/internal/worker/workflow_instance/child_workflow_handle.rbi +20 -0
  233. data/rbi/temporalio/internal/worker/workflow_instance/context.rbi +290 -0
  234. data/rbi/temporalio/internal/worker/workflow_instance/details.rbi +87 -0
  235. data/rbi/temporalio/internal/worker/workflow_instance/external_workflow_handle.rbi +14 -0
  236. data/rbi/temporalio/internal/worker/workflow_instance/externally_immutable_hash.rbi +17 -0
  237. data/rbi/temporalio/internal/worker/workflow_instance/handler_execution.rbi +17 -0
  238. data/rbi/temporalio/internal/worker/workflow_instance/handler_hash.rbi +24 -0
  239. data/rbi/temporalio/internal/worker/workflow_instance/illegal_call_tracer.rbi +17 -0
  240. data/rbi/temporalio/internal/worker/workflow_instance/inbound_implementation.rbi +21 -0
  241. data/rbi/temporalio/internal/worker/workflow_instance/nexus_client.rbi +47 -0
  242. data/rbi/temporalio/internal/worker/workflow_instance/nexus_operation_handle.rbi +19 -0
  243. data/rbi/temporalio/internal/worker/workflow_instance/outbound_implementation.rbi +43 -0
  244. data/rbi/temporalio/internal/worker/workflow_instance/replay_safe_logger.rbi +11 -0
  245. data/rbi/temporalio/internal/worker/workflow_instance/replay_safe_metric.rbi +15 -0
  246. data/rbi/temporalio/internal/worker/workflow_instance/scheduler.rbi +36 -0
  247. data/rbi/temporalio/internal/worker/workflow_instance.rbi +231 -0
  248. data/rbi/temporalio/internal/worker/workflow_worker.rbi +199 -0
  249. data/rbi/temporalio/internal/workflow_task_failure_error.rbi +3 -0
  250. data/rbi/temporalio/internal.rbi +3 -0
  251. data/rbi/temporalio/metric.rbi +56 -0
  252. data/rbi/temporalio/priority.rbi +38 -0
  253. data/rbi/temporalio/retry_policy.rbi +40 -0
  254. data/rbi/temporalio/runtime/metric_buffer.rbi +45 -0
  255. data/rbi/temporalio/runtime.rbi +194 -0
  256. data/rbi/temporalio/scoped_logger.rbi +50 -0
  257. data/rbi/temporalio/search_attributes.rbi +94 -0
  258. data/rbi/temporalio/simple_plugin.rbi +41 -0
  259. data/rbi/temporalio/testing/activity_environment.rbi +43 -0
  260. data/rbi/temporalio/testing/workflow_environment.rbi +116 -0
  261. data/rbi/temporalio/testing.rbi +3 -0
  262. data/rbi/temporalio/version.rbi +5 -0
  263. data/rbi/temporalio/versioning_override.rbi +13 -0
  264. data/rbi/temporalio/worker/activity_executor/fiber.rbi +20 -0
  265. data/rbi/temporalio/worker/activity_executor/thread_pool.rbi +20 -0
  266. data/rbi/temporalio/worker/activity_executor.rbi +20 -0
  267. data/rbi/temporalio/worker/deployment_options.rbi +23 -0
  268. data/rbi/temporalio/worker/illegal_workflow_call_validator.rbi +33 -0
  269. data/rbi/temporalio/worker/interceptor.rbi +489 -0
  270. data/rbi/temporalio/worker/plugin.rbi +49 -0
  271. data/rbi/temporalio/worker/poller_behavior.rbi +29 -0
  272. data/rbi/temporalio/worker/thread_pool.rbi +38 -0
  273. data/rbi/temporalio/worker/tuner.rbi +221 -0
  274. data/rbi/temporalio/worker/workflow_executor/thread_pool.rbi +15 -0
  275. data/rbi/temporalio/worker/workflow_executor.rbi +8 -0
  276. data/rbi/temporalio/worker/workflow_replayer.rbi +152 -0
  277. data/rbi/temporalio/worker.rbi +265 -0
  278. data/rbi/temporalio/worker_deployment_version.rbi +29 -0
  279. data/rbi/temporalio/workflow/activity_cancellation_type.rbi +7 -0
  280. data/rbi/temporalio/workflow/child_workflow_cancellation_type.rbi +8 -0
  281. data/rbi/temporalio/workflow/child_workflow_handle.rbi +27 -0
  282. data/rbi/temporalio/workflow/definition.rbi +305 -0
  283. data/rbi/temporalio/workflow/external_workflow_handle.rbi +24 -0
  284. data/rbi/temporalio/workflow/future.rbi +62 -0
  285. data/rbi/temporalio/workflow/handler_unfinished_policy.rbi +6 -0
  286. data/rbi/temporalio/workflow/info.rbi +100 -0
  287. data/rbi/temporalio/workflow/nexus_client.rbi +65 -0
  288. data/rbi/temporalio/workflow/nexus_operation_cancellation_type.rbi +8 -0
  289. data/rbi/temporalio/workflow/nexus_operation_handle.rbi +14 -0
  290. data/rbi/temporalio/workflow/parent_close_policy.rbi +8 -0
  291. data/rbi/temporalio/workflow/update_info.rbi +14 -0
  292. data/rbi/temporalio/workflow.rbi +393 -0
  293. data/rbi/temporalio/workflow_history.rbi +21 -0
  294. data/rbi/temporalio.rbi +5 -0
  295. data/sig/common.rbs +1 -0
  296. data/sig/google/protobuf_compat.rbs +17 -0
  297. data/sig/open_telemetry.rbs +47 -0
  298. data/sig/temporalio/activity/cancellation_details.rbs +21 -0
  299. data/sig/temporalio/activity/complete_async_error.rbs +6 -0
  300. data/sig/temporalio/activity/context.rbs +26 -0
  301. data/sig/temporalio/activity/definition.rbs +60 -0
  302. data/sig/temporalio/activity/info.rbs +57 -0
  303. data/sig/temporalio/activity.rbs +4 -0
  304. data/sig/temporalio/api/activity/v1/message.rbs +754 -0
  305. data/sig/temporalio/api/batch/v1/message.rbs +680 -0
  306. data/sig/temporalio/api/callback/v1/message.rbs +112 -0
  307. data/sig/temporalio/api/cloud/account/v1/message.rbs +314 -0
  308. data/sig/temporalio/api/cloud/auditlog/v1/message.rbs +168 -0
  309. data/sig/temporalio/api/cloud/billing/v1/message.rbs +279 -0
  310. data/sig/temporalio/api/cloud/cloudservice/v1/request_response.rbs +4726 -0
  311. data/sig/temporalio/api/cloud/cloudservice/v1/service.rbs +25 -0
  312. data/sig/temporalio/api/cloud/cloudservice.rbs +8 -0
  313. data/sig/temporalio/api/cloud/connectivityrule/v1/message.rbs +191 -0
  314. data/sig/temporalio/api/cloud/identity/v1/message.rbs +1372 -0
  315. data/sig/temporalio/api/cloud/namespace/v1/message.rbs +1571 -0
  316. data/sig/temporalio/api/cloud/nexus/v1/message.rbs +269 -0
  317. data/sig/temporalio/api/cloud/operation/v1/message.rbs +156 -0
  318. data/sig/temporalio/api/cloud/region/v1/message.rbs +109 -0
  319. data/sig/temporalio/api/cloud/resource/v1/message.rbs +61 -0
  320. data/sig/temporalio/api/cloud/sink/v1/message.rbs +207 -0
  321. data/sig/temporalio/api/cloud/usage/v1/message.rbs +230 -0
  322. data/sig/temporalio/api/command/v1/message.rbs +1221 -0
  323. data/sig/temporalio/api/common/v1/grpc_status.rbs +59 -0
  324. data/sig/temporalio/api/common/v1/message.rbs +1439 -0
  325. data/sig/temporalio/api/compute/v1/config.rbs +176 -0
  326. data/sig/temporalio/api/compute/v1/provider.rbs +73 -0
  327. data/sig/temporalio/api/compute/v1/scaler.rbs +60 -0
  328. data/sig/temporalio/api/deployment/v1/message.rbs +1063 -0
  329. data/sig/temporalio/api/enums/v1/activity.rbs +138 -0
  330. data/sig/temporalio/api/enums/v1/batch_operation.rbs +110 -0
  331. data/sig/temporalio/api/enums/v1/command_type.rbs +74 -0
  332. data/sig/temporalio/api/enums/v1/common.rbs +294 -0
  333. data/sig/temporalio/api/enums/v1/deployment.rbs +177 -0
  334. data/sig/temporalio/api/enums/v1/event_type.rbs +263 -0
  335. data/sig/temporalio/api/enums/v1/failed_cause.rbs +293 -0
  336. data/sig/temporalio/api/enums/v1/namespace.rbs +87 -0
  337. data/sig/temporalio/api/enums/v1/nexus.rbs +172 -0
  338. data/sig/temporalio/api/enums/v1/query.rbs +69 -0
  339. data/sig/temporalio/api/enums/v1/reset.rbs +106 -0
  340. data/sig/temporalio/api/enums/v1/schedule.rbs +68 -0
  341. data/sig/temporalio/api/enums/v1/task_queue.rbs +238 -0
  342. data/sig/temporalio/api/enums/v1/time_skipping.rbs +58 -0
  343. data/sig/temporalio/api/enums/v1/update.rbs +87 -0
  344. data/sig/temporalio/api/enums/v1/workflow.rbs +435 -0
  345. data/sig/temporalio/api/errordetails/v1/message.rbs +551 -0
  346. data/sig/temporalio/api/export/v1/message.rbs +63 -0
  347. data/sig/temporalio/api/failure/v1/message.rbs +579 -0
  348. data/sig/temporalio/api/filter/v1/message.rbs +121 -0
  349. data/sig/temporalio/api/history/v1/message.rbs +4938 -0
  350. data/sig/temporalio/api/namespace/v1/message.rbs +508 -0
  351. data/sig/temporalio/api/nexus/v1/message.rbs +1268 -0
  352. data/sig/temporalio/api/nexusannotations/v1/options.rbs +76 -0
  353. data/sig/temporalio/api/nexusservices/workerservice/v1/request_response.rbs +65 -0
  354. data/sig/temporalio/api/operatorservice/v1/request_response.rbs +679 -0
  355. data/sig/temporalio/api/operatorservice/v1/service.rbs +23 -0
  356. data/sig/temporalio/api/operatorservice.rbs +6 -0
  357. data/sig/temporalio/api/payload_visitor.rbs +298 -0
  358. data/sig/temporalio/api/protoc_gen_openapiv2/options/annotations.rbs +23 -0
  359. data/sig/temporalio/api/protoc_gen_openapiv2/options/openapiv2.rbs +1691 -0
  360. data/sig/temporalio/api/protocol/v1/message.rbs +90 -0
  361. data/sig/temporalio/api/protometa/v1/annotations.rbs +62 -0
  362. data/sig/temporalio/api/query/v1/message.rbs +138 -0
  363. data/sig/temporalio/api/replication/v1/message.rbs +109 -0
  364. data/sig/temporalio/api/rules/v1/message.rbs +213 -0
  365. data/sig/temporalio/api/schedule/v1/message.rbs +1066 -0
  366. data/sig/temporalio/api/sdk/v1/enhanced_stack_trace.rbs +210 -0
  367. data/sig/temporalio/api/sdk/v1/event_group_marker.rbs +154 -0
  368. data/sig/temporalio/api/sdk/v1/external_storage.rbs +54 -0
  369. data/sig/temporalio/api/sdk/v1/task_complete_metadata.rbs +92 -0
  370. data/sig/temporalio/api/sdk/v1/user_metadata.rbs +58 -0
  371. data/sig/temporalio/api/sdk/v1/worker_config.rbs +122 -0
  372. data/sig/temporalio/api/sdk/v1/workflow_metadata.rbs +138 -0
  373. data/sig/temporalio/api/taskqueue/v1/message.rbs +1057 -0
  374. data/sig/temporalio/api/testservice/v1/request_response.rbs +125 -0
  375. data/sig/temporalio/api/testservice/v1/service.rbs +23 -0
  376. data/sig/temporalio/api/update/v1/message.rbs +349 -0
  377. data/sig/temporalio/api/version/v1/message.rbs +143 -0
  378. data/sig/temporalio/api/worker/v1/message.rbs +1126 -0
  379. data/sig/temporalio/api/workflow/v1/message.rbs +2332 -0
  380. data/sig/temporalio/api/workflowservice/v1/request_response.rbs +13006 -0
  381. data/sig/temporalio/api/workflowservice/v1/service.rbs +23 -0
  382. data/sig/temporalio/api/workflowservice.rbs +6 -0
  383. data/sig/temporalio/api.rbs +4 -0
  384. data/sig/temporalio/cancellation.rbs +20 -0
  385. data/sig/temporalio/client/activity_execution.rbs +50 -0
  386. data/sig/temporalio/client/activity_execution_count.rbs +17 -0
  387. data/sig/temporalio/client/activity_execution_status.rbs +15 -0
  388. data/sig/temporalio/client/activity_handle.rbs +26 -0
  389. data/sig/temporalio/client/activity_id_reference.rbs +16 -0
  390. data/sig/temporalio/client/async_activity_handle.rbs +41 -0
  391. data/sig/temporalio/client/connection/cloud_service.rbs +315 -0
  392. data/sig/temporalio/client/connection/operator_service.rbs +59 -0
  393. data/sig/temporalio/client/connection/service.rbs +17 -0
  394. data/sig/temporalio/client/connection/test_service.rbs +35 -0
  395. data/sig/temporalio/client/connection/workflow_service.rbs +503 -0
  396. data/sig/temporalio/client/connection.rbs +156 -0
  397. data/sig/temporalio/client/interceptor.rbs +622 -0
  398. data/sig/temporalio/client/pending_activity_state.rbs +14 -0
  399. data/sig/temporalio/client/plugin.rbs +14 -0
  400. data/sig/temporalio/client/schedule.rbs +337 -0
  401. data/sig/temporalio/client/schedule_handle.rbs +44 -0
  402. data/sig/temporalio/client/with_start_workflow_operation.rbs +82 -0
  403. data/sig/temporalio/client/workflow_execution.rbs +37 -0
  404. data/sig/temporalio/client/workflow_execution_count.rbs +17 -0
  405. data/sig/temporalio/client/workflow_execution_status.rbs +16 -0
  406. data/sig/temporalio/client/workflow_handle.rbs +95 -0
  407. data/sig/temporalio/client/workflow_query_reject_condition.rbs +12 -0
  408. data/sig/temporalio/client/workflow_update_handle.rbs +26 -0
  409. data/sig/temporalio/client/workflow_update_wait_stage.rbs +12 -0
  410. data/sig/temporalio/client.rbs +271 -0
  411. data/sig/temporalio/common_enums.rbs +60 -0
  412. data/sig/temporalio/contrib/open_telemetry.rbs +74 -0
  413. data/sig/temporalio/converters/data_converter.rbs +32 -0
  414. data/sig/temporalio/converters/failure_converter.rbs +15 -0
  415. data/sig/temporalio/converters/payload_codec.rbs +8 -0
  416. data/sig/temporalio/converters/payload_converter/binary_null.rbs +9 -0
  417. data/sig/temporalio/converters/payload_converter/binary_plain.rbs +9 -0
  418. data/sig/temporalio/converters/payload_converter/binary_protobuf.rbs +9 -0
  419. data/sig/temporalio/converters/payload_converter/composite.rbs +16 -0
  420. data/sig/temporalio/converters/payload_converter/encoding.rbs +13 -0
  421. data/sig/temporalio/converters/payload_converter/json_plain.rbs +14 -0
  422. data/sig/temporalio/converters/payload_converter/json_protobuf.rbs +9 -0
  423. data/sig/temporalio/converters/payload_converter.rbs +24 -0
  424. data/sig/temporalio/converters/raw_value.rbs +9 -0
  425. data/sig/temporalio/converters.rbs +4 -0
  426. data/sig/temporalio/env_config.rbs +86 -0
  427. data/sig/temporalio/error/failure.rbs +170 -0
  428. data/sig/temporalio/error.rbs +88 -0
  429. data/sig/temporalio/internal/bridge/api/activity_result/activity_result.rbs +247 -0
  430. data/sig/temporalio/internal/bridge/api/activity_task/activity_task.rbs +372 -0
  431. data/sig/temporalio/internal/bridge/api/child_workflow/child_workflow.rbs +207 -0
  432. data/sig/temporalio/internal/bridge/api/common/common.rbs +173 -0
  433. data/sig/temporalio/internal/bridge/api/core_interface.rbs +231 -0
  434. data/sig/temporalio/internal/bridge/api/external_data/external_data.rbs +134 -0
  435. data/sig/temporalio/internal/bridge/api/nexus/nexus.rbs +285 -0
  436. data/sig/temporalio/internal/bridge/api/workflow_activation/workflow_activation.rbs +1304 -0
  437. data/sig/temporalio/internal/bridge/api/workflow_commands/workflow_commands.rbs +1526 -0
  438. data/sig/temporalio/internal/bridge/api/workflow_completion/workflow_completion.rbs +156 -0
  439. data/sig/temporalio/internal/bridge/api.rbs +8 -0
  440. data/sig/temporalio/internal/bridge/client.rbs +148 -0
  441. data/sig/temporalio/internal/bridge/metric.rbs +28 -0
  442. data/sig/temporalio/internal/bridge/runtime.rbs +103 -0
  443. data/sig/temporalio/internal/bridge/testing.rbs +91 -0
  444. data/sig/temporalio/internal/bridge/worker.rbs +203 -0
  445. data/sig/temporalio/internal/bridge.rbs +36 -0
  446. data/sig/temporalio/internal/client/implementation.rbs +33 -0
  447. data/sig/temporalio/internal/google_protobuf.rbs +7 -0
  448. data/sig/temporalio/internal/metric.rbs +35 -0
  449. data/sig/temporalio/internal/proto_utils.rbs +94 -0
  450. data/sig/temporalio/internal/worker/activity_worker.rbs +64 -0
  451. data/sig/temporalio/internal/worker/multi_runner.rbs +132 -0
  452. data/sig/temporalio/internal/worker/workflow_instance/child_workflow_handle.rbs +22 -0
  453. data/sig/temporalio/internal/worker/workflow_instance/context.rbs +172 -0
  454. data/sig/temporalio/internal/worker/workflow_instance/details.rbs +43 -0
  455. data/sig/temporalio/internal/worker/workflow_instance/external_workflow_handle.rbs +15 -0
  456. data/sig/temporalio/internal/worker/workflow_instance/externally_immutable_hash.rbs +16 -0
  457. data/sig/temporalio/internal/worker/workflow_instance/handler_execution.rbs +19 -0
  458. data/sig/temporalio/internal/worker/workflow_instance/handler_hash.rbs +14 -0
  459. data/sig/temporalio/internal/worker/workflow_instance/illegal_call_tracer.rbs +20 -0
  460. data/sig/temporalio/internal/worker/workflow_instance/inbound_implementation.rbs +19 -0
  461. data/sig/temporalio/internal/worker/workflow_instance/nexus_client.rbs +25 -0
  462. data/sig/temporalio/internal/worker/workflow_instance/nexus_operation_handle.rbs +19 -0
  463. data/sig/temporalio/internal/worker/workflow_instance/outbound_implementation.rbs +35 -0
  464. data/sig/temporalio/internal/worker/workflow_instance/replay_safe_logger.rbs +16 -0
  465. data/sig/temporalio/internal/worker/workflow_instance/replay_safe_metric.rbs +15 -0
  466. data/sig/temporalio/internal/worker/workflow_instance/scheduler.rbs +52 -0
  467. data/sig/temporalio/internal/worker/workflow_instance.rbs +111 -0
  468. data/sig/temporalio/internal/worker/workflow_worker.rbs +99 -0
  469. data/sig/temporalio/internal/workflow_task_failure_error.rbs +6 -0
  470. data/sig/temporalio/internal.rbs +4 -0
  471. data/sig/temporalio/metric.rbs +55 -0
  472. data/sig/temporalio/priority.rbs +17 -0
  473. data/sig/temporalio/retry_policy.rbs +21 -0
  474. data/sig/temporalio/runtime/metric_buffer.rbs +49 -0
  475. data/sig/temporalio/runtime.rbs +129 -0
  476. data/sig/temporalio/scoped_logger.rbs +15 -0
  477. data/sig/temporalio/search_attributes.rbs +82 -0
  478. data/sig/temporalio/simple_plugin.rbs +65 -0
  479. data/sig/temporalio/testing/activity_environment.rbs +52 -0
  480. data/sig/temporalio/testing/workflow_environment.rbs +141 -0
  481. data/sig/temporalio/testing.rbs +4 -0
  482. data/sig/temporalio/version.rbs +3 -0
  483. data/sig/temporalio/versioning_override.rbs +17 -0
  484. data/sig/temporalio/worker/activity_executor/fiber.rbs +9 -0
  485. data/sig/temporalio/worker/activity_executor/thread_pool.rbs +11 -0
  486. data/sig/temporalio/worker/activity_executor.rbs +12 -0
  487. data/sig/temporalio/worker/deployment_options.rbs +17 -0
  488. data/sig/temporalio/worker/illegal_workflow_call_validator.rbs +25 -0
  489. data/sig/temporalio/worker/interceptor.rbs +373 -0
  490. data/sig/temporalio/worker/plugin.rbs +47 -0
  491. data/sig/temporalio/worker/poller_behavior.rbs +23 -0
  492. data/sig/temporalio/worker/thread_pool.rbs +44 -0
  493. data/sig/temporalio/worker/tuner.rbs +121 -0
  494. data/sig/temporalio/worker/workflow_executor/thread_pool.rbs +58 -0
  495. data/sig/temporalio/worker/workflow_executor.rbs +15 -0
  496. data/sig/temporalio/worker/workflow_replayer.rbs +105 -0
  497. data/sig/temporalio/worker.rbs +174 -0
  498. data/sig/temporalio/worker_deployment_version.rbs +17 -0
  499. data/sig/temporalio/workflow/activity_cancellation_type.rbs +11 -0
  500. data/sig/temporalio/workflow/child_workflow_cancellation_type.rbs +12 -0
  501. data/sig/temporalio/workflow/child_workflow_handle.rbs +18 -0
  502. data/sig/temporalio/workflow/definition.rbs +181 -0
  503. data/sig/temporalio/workflow/external_workflow_handle.rbs +17 -0
  504. data/sig/temporalio/workflow/future.rbs +24 -0
  505. data/sig/temporalio/workflow/handler_unfinished_policy.rbs +10 -0
  506. data/sig/temporalio/workflow/info.rbs +79 -0
  507. data/sig/temporalio/workflow/nexus_client.rbs +34 -0
  508. data/sig/temporalio/workflow/nexus_operation_cancellation_type.rbs +12 -0
  509. data/sig/temporalio/workflow/nexus_operation_handle.rbs +10 -0
  510. data/sig/temporalio/workflow/parent_close_policy.rbs +12 -0
  511. data/sig/temporalio/workflow/update_info.rbs +15 -0
  512. data/sig/temporalio/workflow.rbs +215 -0
  513. data/sig/temporalio/workflow_history.rbs +13 -0
  514. data/sig/temporalio.rbs +3 -0
  515. data/temporalio.gemspec +1 -1
  516. metadata +448 -2
@@ -0,0 +1,2571 @@
1
+ # Code generated by protoc-gen-rbi. DO NOT EDIT.
2
+ # source: temporal/api/taskqueue/v1/message.proto
3
+ # typed: strict
4
+
5
+ # See https://docs.temporal.io/docs/concepts/task-queues/
6
+ class Temporalio::Api::TaskQueue::V1::TaskQueue
7
+ include ::Google::Protobuf::MessageExts
8
+ extend ::Google::Protobuf::MessageExts::ClassMethods
9
+
10
+ sig do
11
+ params(
12
+ name: T.nilable(String),
13
+ kind: T.nilable(T.any(Symbol, String, Integer)),
14
+ normal_name: T.nilable(String)
15
+ ).void
16
+ end
17
+ def initialize(
18
+ name: "",
19
+ kind: :TASK_QUEUE_KIND_UNSPECIFIED,
20
+ normal_name: ""
21
+ )
22
+ end
23
+
24
+ sig { returns(String) }
25
+ def name
26
+ end
27
+
28
+ sig { params(value: String).void }
29
+ def name=(value)
30
+ end
31
+
32
+ sig { void }
33
+ def clear_name
34
+ end
35
+
36
+ # Default: TASK_QUEUE_KIND_NORMAL.
37
+ sig { returns(T.any(Symbol, Integer)) }
38
+ def kind
39
+ end
40
+
41
+ # Default: TASK_QUEUE_KIND_NORMAL.
42
+ sig { params(value: T.any(Symbol, String, Integer)).void }
43
+ def kind=(value)
44
+ end
45
+
46
+ # Default: TASK_QUEUE_KIND_NORMAL.
47
+ sig { void }
48
+ def clear_kind
49
+ end
50
+
51
+ # Iff kind == TASK_QUEUE_KIND_STICKY, then this field contains the name of
52
+ # the normal task queue that the sticky worker is running on.
53
+ sig { returns(String) }
54
+ def normal_name
55
+ end
56
+
57
+ # Iff kind == TASK_QUEUE_KIND_STICKY, then this field contains the name of
58
+ # the normal task queue that the sticky worker is running on.
59
+ sig { params(value: String).void }
60
+ def normal_name=(value)
61
+ end
62
+
63
+ # Iff kind == TASK_QUEUE_KIND_STICKY, then this field contains the name of
64
+ # the normal task queue that the sticky worker is running on.
65
+ sig { void }
66
+ def clear_normal_name
67
+ end
68
+
69
+ sig { params(field: String).returns(T.untyped) }
70
+ def [](field)
71
+ end
72
+
73
+ sig { params(field: String, value: T.untyped).void }
74
+ def []=(field, value)
75
+ end
76
+
77
+ sig { returns(T::Hash[Symbol, T.untyped]) }
78
+ def to_h
79
+ end
80
+
81
+ sig { params(str: String).returns(Temporalio::Api::TaskQueue::V1::TaskQueue) }
82
+ def self.decode(str)
83
+ end
84
+
85
+ sig { params(msg: Temporalio::Api::TaskQueue::V1::TaskQueue).returns(String) }
86
+ def self.encode(msg)
87
+ end
88
+
89
+ sig { params(str: String, kw: T.untyped).returns(Temporalio::Api::TaskQueue::V1::TaskQueue) }
90
+ def self.decode_json(str, **kw)
91
+ end
92
+
93
+ sig { params(msg: Temporalio::Api::TaskQueue::V1::TaskQueue, kw: T.untyped).returns(String) }
94
+ def self.encode_json(msg, **kw)
95
+ end
96
+
97
+ sig { returns(::Google::Protobuf::Descriptor) }
98
+ def self.descriptor
99
+ end
100
+ end
101
+
102
+ # Only applies to activity task queues
103
+ class Temporalio::Api::TaskQueue::V1::TaskQueueMetadata
104
+ include ::Google::Protobuf::MessageExts
105
+ extend ::Google::Protobuf::MessageExts::ClassMethods
106
+
107
+ sig do
108
+ params(
109
+ max_tasks_per_second: T.nilable(Google::Protobuf::DoubleValue)
110
+ ).void
111
+ end
112
+ def initialize(
113
+ max_tasks_per_second: nil
114
+ )
115
+ end
116
+
117
+ # Allows throttling dispatch of tasks from this queue
118
+ sig { returns(T.nilable(Google::Protobuf::DoubleValue)) }
119
+ def max_tasks_per_second
120
+ end
121
+
122
+ # Allows throttling dispatch of tasks from this queue
123
+ sig { params(value: T.nilable(Google::Protobuf::DoubleValue)).void }
124
+ def max_tasks_per_second=(value)
125
+ end
126
+
127
+ # Allows throttling dispatch of tasks from this queue
128
+ sig { void }
129
+ def clear_max_tasks_per_second
130
+ end
131
+
132
+ sig { params(field: String).returns(T.untyped) }
133
+ def [](field)
134
+ end
135
+
136
+ sig { params(field: String, value: T.untyped).void }
137
+ def []=(field, value)
138
+ end
139
+
140
+ sig { returns(T::Hash[Symbol, T.untyped]) }
141
+ def to_h
142
+ end
143
+
144
+ sig { params(str: String).returns(Temporalio::Api::TaskQueue::V1::TaskQueueMetadata) }
145
+ def self.decode(str)
146
+ end
147
+
148
+ sig { params(msg: Temporalio::Api::TaskQueue::V1::TaskQueueMetadata).returns(String) }
149
+ def self.encode(msg)
150
+ end
151
+
152
+ sig { params(str: String, kw: T.untyped).returns(Temporalio::Api::TaskQueue::V1::TaskQueueMetadata) }
153
+ def self.decode_json(str, **kw)
154
+ end
155
+
156
+ sig { params(msg: Temporalio::Api::TaskQueue::V1::TaskQueueMetadata, kw: T.untyped).returns(String) }
157
+ def self.encode_json(msg, **kw)
158
+ end
159
+
160
+ sig { returns(::Google::Protobuf::Descriptor) }
161
+ def self.descriptor
162
+ end
163
+ end
164
+
165
+ class Temporalio::Api::TaskQueue::V1::TaskQueueVersioningInfo
166
+ include ::Google::Protobuf::MessageExts
167
+ extend ::Google::Protobuf::MessageExts::ClassMethods
168
+
169
+ sig do
170
+ params(
171
+ current_deployment_version: T.nilable(Temporalio::Api::Deployment::V1::WorkerDeploymentVersion),
172
+ current_version: T.nilable(String),
173
+ ramping_deployment_version: T.nilable(Temporalio::Api::Deployment::V1::WorkerDeploymentVersion),
174
+ ramping_version: T.nilable(String),
175
+ ramping_version_percentage: T.nilable(Float),
176
+ update_time: T.nilable(Google::Protobuf::Timestamp)
177
+ ).void
178
+ end
179
+ def initialize(
180
+ current_deployment_version: nil,
181
+ current_version: "",
182
+ ramping_deployment_version: nil,
183
+ ramping_version: "",
184
+ ramping_version_percentage: 0.0,
185
+ update_time: nil
186
+ )
187
+ end
188
+
189
+ # Specifies which Deployment Version should receive new workflow executions and tasks of
190
+ # existing unversioned or AutoUpgrade workflows.
191
+ # Nil value represents all the unversioned workers (those with `UNVERSIONED` (or unspecified) `WorkerVersioningMode`.)
192
+ # Note: Current Version is overridden by the Ramping Version for a portion of traffic when ramp percentage
193
+ # is non-zero (see `ramping_deployment_version` and `ramping_version_percentage`).
194
+ sig { returns(T.nilable(Temporalio::Api::Deployment::V1::WorkerDeploymentVersion)) }
195
+ def current_deployment_version
196
+ end
197
+
198
+ # Specifies which Deployment Version should receive new workflow executions and tasks of
199
+ # existing unversioned or AutoUpgrade workflows.
200
+ # Nil value represents all the unversioned workers (those with `UNVERSIONED` (or unspecified) `WorkerVersioningMode`.)
201
+ # Note: Current Version is overridden by the Ramping Version for a portion of traffic when ramp percentage
202
+ # is non-zero (see `ramping_deployment_version` and `ramping_version_percentage`).
203
+ sig { params(value: T.nilable(Temporalio::Api::Deployment::V1::WorkerDeploymentVersion)).void }
204
+ def current_deployment_version=(value)
205
+ end
206
+
207
+ # Specifies which Deployment Version should receive new workflow executions and tasks of
208
+ # existing unversioned or AutoUpgrade workflows.
209
+ # Nil value represents all the unversioned workers (those with `UNVERSIONED` (or unspecified) `WorkerVersioningMode`.)
210
+ # Note: Current Version is overridden by the Ramping Version for a portion of traffic when ramp percentage
211
+ # is non-zero (see `ramping_deployment_version` and `ramping_version_percentage`).
212
+ sig { void }
213
+ def clear_current_deployment_version
214
+ end
215
+
216
+ # Deprecated. Use `current_deployment_version`.
217
+ sig { returns(String) }
218
+ def current_version
219
+ end
220
+
221
+ # Deprecated. Use `current_deployment_version`.
222
+ sig { params(value: String).void }
223
+ def current_version=(value)
224
+ end
225
+
226
+ # Deprecated. Use `current_deployment_version`.
227
+ sig { void }
228
+ def clear_current_version
229
+ end
230
+
231
+ # When ramp percentage is non-zero, that portion of traffic is shifted from the Current Version to the Ramping Version.
232
+ # Must always be different from `current_deployment_version` unless both are nil.
233
+ # Nil value represents all the unversioned workers (those with `UNVERSIONED` (or unspecified) `WorkerVersioningMode`.)
234
+ # Note that it is possible to ramp from one Version to another Version, or from unversioned
235
+ # workers to a particular Version, or from a particular Version to unversioned workers.
236
+ sig { returns(T.nilable(Temporalio::Api::Deployment::V1::WorkerDeploymentVersion)) }
237
+ def ramping_deployment_version
238
+ end
239
+
240
+ # When ramp percentage is non-zero, that portion of traffic is shifted from the Current Version to the Ramping Version.
241
+ # Must always be different from `current_deployment_version` unless both are nil.
242
+ # Nil value represents all the unversioned workers (those with `UNVERSIONED` (or unspecified) `WorkerVersioningMode`.)
243
+ # Note that it is possible to ramp from one Version to another Version, or from unversioned
244
+ # workers to a particular Version, or from a particular Version to unversioned workers.
245
+ sig { params(value: T.nilable(Temporalio::Api::Deployment::V1::WorkerDeploymentVersion)).void }
246
+ def ramping_deployment_version=(value)
247
+ end
248
+
249
+ # When ramp percentage is non-zero, that portion of traffic is shifted from the Current Version to the Ramping Version.
250
+ # Must always be different from `current_deployment_version` unless both are nil.
251
+ # Nil value represents all the unversioned workers (those with `UNVERSIONED` (or unspecified) `WorkerVersioningMode`.)
252
+ # Note that it is possible to ramp from one Version to another Version, or from unversioned
253
+ # workers to a particular Version, or from a particular Version to unversioned workers.
254
+ sig { void }
255
+ def clear_ramping_deployment_version
256
+ end
257
+
258
+ # Deprecated. Use `ramping_deployment_version`.
259
+ sig { returns(String) }
260
+ def ramping_version
261
+ end
262
+
263
+ # Deprecated. Use `ramping_deployment_version`.
264
+ sig { params(value: String).void }
265
+ def ramping_version=(value)
266
+ end
267
+
268
+ # Deprecated. Use `ramping_deployment_version`.
269
+ sig { void }
270
+ def clear_ramping_version
271
+ end
272
+
273
+ # Percentage of tasks that are routed to the Ramping Version instead of the Current Version.
274
+ # Valid range: [0, 100]. A 100% value means the Ramping Version is receiving full traffic but
275
+ # not yet "promoted" to be the Current Version, likely due to pending validations.
276
+ # A 0% value means the Ramping Version is receiving no traffic.
277
+ sig { returns(Float) }
278
+ def ramping_version_percentage
279
+ end
280
+
281
+ # Percentage of tasks that are routed to the Ramping Version instead of the Current Version.
282
+ # Valid range: [0, 100]. A 100% value means the Ramping Version is receiving full traffic but
283
+ # not yet "promoted" to be the Current Version, likely due to pending validations.
284
+ # A 0% value means the Ramping Version is receiving no traffic.
285
+ sig { params(value: Float).void }
286
+ def ramping_version_percentage=(value)
287
+ end
288
+
289
+ # Percentage of tasks that are routed to the Ramping Version instead of the Current Version.
290
+ # Valid range: [0, 100]. A 100% value means the Ramping Version is receiving full traffic but
291
+ # not yet "promoted" to be the Current Version, likely due to pending validations.
292
+ # A 0% value means the Ramping Version is receiving no traffic.
293
+ sig { void }
294
+ def clear_ramping_version_percentage
295
+ end
296
+
297
+ # Last time versioning information of this Task Queue changed.
298
+ sig { returns(T.nilable(Google::Protobuf::Timestamp)) }
299
+ def update_time
300
+ end
301
+
302
+ # Last time versioning information of this Task Queue changed.
303
+ sig { params(value: T.nilable(Google::Protobuf::Timestamp)).void }
304
+ def update_time=(value)
305
+ end
306
+
307
+ # Last time versioning information of this Task Queue changed.
308
+ sig { void }
309
+ def clear_update_time
310
+ end
311
+
312
+ sig { params(field: String).returns(T.untyped) }
313
+ def [](field)
314
+ end
315
+
316
+ sig { params(field: String, value: T.untyped).void }
317
+ def []=(field, value)
318
+ end
319
+
320
+ sig { returns(T::Hash[Symbol, T.untyped]) }
321
+ def to_h
322
+ end
323
+
324
+ sig { params(str: String).returns(Temporalio::Api::TaskQueue::V1::TaskQueueVersioningInfo) }
325
+ def self.decode(str)
326
+ end
327
+
328
+ sig { params(msg: Temporalio::Api::TaskQueue::V1::TaskQueueVersioningInfo).returns(String) }
329
+ def self.encode(msg)
330
+ end
331
+
332
+ sig { params(str: String, kw: T.untyped).returns(Temporalio::Api::TaskQueue::V1::TaskQueueVersioningInfo) }
333
+ def self.decode_json(str, **kw)
334
+ end
335
+
336
+ sig { params(msg: Temporalio::Api::TaskQueue::V1::TaskQueueVersioningInfo, kw: T.untyped).returns(String) }
337
+ def self.encode_json(msg, **kw)
338
+ end
339
+
340
+ sig { returns(::Google::Protobuf::Descriptor) }
341
+ def self.descriptor
342
+ end
343
+ end
344
+
345
+ # Used for specifying versions the caller is interested in.
346
+ class Temporalio::Api::TaskQueue::V1::TaskQueueVersionSelection
347
+ include ::Google::Protobuf::MessageExts
348
+ extend ::Google::Protobuf::MessageExts::ClassMethods
349
+
350
+ sig do
351
+ params(
352
+ build_ids: T.nilable(T::Array[String]),
353
+ unversioned: T.nilable(T::Boolean),
354
+ all_active: T.nilable(T::Boolean)
355
+ ).void
356
+ end
357
+ def initialize(
358
+ build_ids: [],
359
+ unversioned: false,
360
+ all_active: false
361
+ )
362
+ end
363
+
364
+ # Include specific Build IDs.
365
+ sig { returns(T::Array[String]) }
366
+ def build_ids
367
+ end
368
+
369
+ # Include specific Build IDs.
370
+ sig { params(value: ::Google::Protobuf::RepeatedField).void }
371
+ def build_ids=(value)
372
+ end
373
+
374
+ # Include specific Build IDs.
375
+ sig { void }
376
+ def clear_build_ids
377
+ end
378
+
379
+ # Include the unversioned queue.
380
+ sig { returns(T::Boolean) }
381
+ def unversioned
382
+ end
383
+
384
+ # Include the unversioned queue.
385
+ sig { params(value: T::Boolean).void }
386
+ def unversioned=(value)
387
+ end
388
+
389
+ # Include the unversioned queue.
390
+ sig { void }
391
+ def clear_unversioned
392
+ end
393
+
394
+ # Include all active versions. A version is considered active if, in the last few minutes,
395
+ # it has had new tasks or polls, or it has been the subject of certain task queue API calls.
396
+ sig { returns(T::Boolean) }
397
+ def all_active
398
+ end
399
+
400
+ # Include all active versions. A version is considered active if, in the last few minutes,
401
+ # it has had new tasks or polls, or it has been the subject of certain task queue API calls.
402
+ sig { params(value: T::Boolean).void }
403
+ def all_active=(value)
404
+ end
405
+
406
+ # Include all active versions. A version is considered active if, in the last few minutes,
407
+ # it has had new tasks or polls, or it has been the subject of certain task queue API calls.
408
+ sig { void }
409
+ def clear_all_active
410
+ end
411
+
412
+ sig { params(field: String).returns(T.untyped) }
413
+ def [](field)
414
+ end
415
+
416
+ sig { params(field: String, value: T.untyped).void }
417
+ def []=(field, value)
418
+ end
419
+
420
+ sig { returns(T::Hash[Symbol, T.untyped]) }
421
+ def to_h
422
+ end
423
+
424
+ sig { params(str: String).returns(Temporalio::Api::TaskQueue::V1::TaskQueueVersionSelection) }
425
+ def self.decode(str)
426
+ end
427
+
428
+ sig { params(msg: Temporalio::Api::TaskQueue::V1::TaskQueueVersionSelection).returns(String) }
429
+ def self.encode(msg)
430
+ end
431
+
432
+ sig { params(str: String, kw: T.untyped).returns(Temporalio::Api::TaskQueue::V1::TaskQueueVersionSelection) }
433
+ def self.decode_json(str, **kw)
434
+ end
435
+
436
+ sig { params(msg: Temporalio::Api::TaskQueue::V1::TaskQueueVersionSelection, kw: T.untyped).returns(String) }
437
+ def self.encode_json(msg, **kw)
438
+ end
439
+
440
+ sig { returns(::Google::Protobuf::Descriptor) }
441
+ def self.descriptor
442
+ end
443
+ end
444
+
445
+ class Temporalio::Api::TaskQueue::V1::TaskQueueVersionInfo
446
+ include ::Google::Protobuf::MessageExts
447
+ extend ::Google::Protobuf::MessageExts::ClassMethods
448
+
449
+ sig do
450
+ params(
451
+ types_info: T.nilable(T::Hash[Integer, T.nilable(Temporalio::Api::TaskQueue::V1::TaskQueueTypeInfo)]),
452
+ task_reachability: T.nilable(T.any(Symbol, String, Integer))
453
+ ).void
454
+ end
455
+ def initialize(
456
+ types_info: ::Google::Protobuf::Map.new(:int32, :message, Temporalio::Api::TaskQueue::V1::TaskQueueTypeInfo),
457
+ task_reachability: :BUILD_ID_TASK_REACHABILITY_UNSPECIFIED
458
+ )
459
+ end
460
+
461
+ # Task Queue info per Task Type. Key is the numerical value of the temporal.api.enums.v1.TaskQueueType enum.
462
+ sig { returns(T::Hash[Integer, T.nilable(Temporalio::Api::TaskQueue::V1::TaskQueueTypeInfo)]) }
463
+ def types_info
464
+ end
465
+
466
+ # Task Queue info per Task Type. Key is the numerical value of the temporal.api.enums.v1.TaskQueueType enum.
467
+ sig { params(value: ::Google::Protobuf::Map).void }
468
+ def types_info=(value)
469
+ end
470
+
471
+ # Task Queue info per Task Type. Key is the numerical value of the temporal.api.enums.v1.TaskQueueType enum.
472
+ sig { void }
473
+ def clear_types_info
474
+ end
475
+
476
+ # Task Reachability is eventually consistent; there may be a delay until it converges to the most
477
+ # accurate value but it is designed in a way to take the more conservative side until it converges.
478
+ # For example REACHABLE is more conservative than CLOSED_WORKFLOWS_ONLY.
479
+ #
480
+ # Note: future activities who inherit their workflow's Build ID but not its Task Queue will not be
481
+ # accounted for reachability as server cannot know if they'll happen as they do not use
482
+ # assignment rules of their Task Queue. Same goes for Child Workflows or Continue-As-New Workflows
483
+ # who inherit the parent/previous workflow's Build ID but not its Task Queue. In those cases, make
484
+ # sure to query reachability for the parent/previous workflow's Task Queue as well.
485
+ sig { returns(T.any(Symbol, Integer)) }
486
+ def task_reachability
487
+ end
488
+
489
+ # Task Reachability is eventually consistent; there may be a delay until it converges to the most
490
+ # accurate value but it is designed in a way to take the more conservative side until it converges.
491
+ # For example REACHABLE is more conservative than CLOSED_WORKFLOWS_ONLY.
492
+ #
493
+ # Note: future activities who inherit their workflow's Build ID but not its Task Queue will not be
494
+ # accounted for reachability as server cannot know if they'll happen as they do not use
495
+ # assignment rules of their Task Queue. Same goes for Child Workflows or Continue-As-New Workflows
496
+ # who inherit the parent/previous workflow's Build ID but not its Task Queue. In those cases, make
497
+ # sure to query reachability for the parent/previous workflow's Task Queue as well.
498
+ sig { params(value: T.any(Symbol, String, Integer)).void }
499
+ def task_reachability=(value)
500
+ end
501
+
502
+ # Task Reachability is eventually consistent; there may be a delay until it converges to the most
503
+ # accurate value but it is designed in a way to take the more conservative side until it converges.
504
+ # For example REACHABLE is more conservative than CLOSED_WORKFLOWS_ONLY.
505
+ #
506
+ # Note: future activities who inherit their workflow's Build ID but not its Task Queue will not be
507
+ # accounted for reachability as server cannot know if they'll happen as they do not use
508
+ # assignment rules of their Task Queue. Same goes for Child Workflows or Continue-As-New Workflows
509
+ # who inherit the parent/previous workflow's Build ID but not its Task Queue. In those cases, make
510
+ # sure to query reachability for the parent/previous workflow's Task Queue as well.
511
+ sig { void }
512
+ def clear_task_reachability
513
+ end
514
+
515
+ sig { params(field: String).returns(T.untyped) }
516
+ def [](field)
517
+ end
518
+
519
+ sig { params(field: String, value: T.untyped).void }
520
+ def []=(field, value)
521
+ end
522
+
523
+ sig { returns(T::Hash[Symbol, T.untyped]) }
524
+ def to_h
525
+ end
526
+
527
+ sig { params(str: String).returns(Temporalio::Api::TaskQueue::V1::TaskQueueVersionInfo) }
528
+ def self.decode(str)
529
+ end
530
+
531
+ sig { params(msg: Temporalio::Api::TaskQueue::V1::TaskQueueVersionInfo).returns(String) }
532
+ def self.encode(msg)
533
+ end
534
+
535
+ sig { params(str: String, kw: T.untyped).returns(Temporalio::Api::TaskQueue::V1::TaskQueueVersionInfo) }
536
+ def self.decode_json(str, **kw)
537
+ end
538
+
539
+ sig { params(msg: Temporalio::Api::TaskQueue::V1::TaskQueueVersionInfo, kw: T.untyped).returns(String) }
540
+ def self.encode_json(msg, **kw)
541
+ end
542
+
543
+ sig { returns(::Google::Protobuf::Descriptor) }
544
+ def self.descriptor
545
+ end
546
+ end
547
+
548
+ class Temporalio::Api::TaskQueue::V1::TaskQueueTypeInfo
549
+ include ::Google::Protobuf::MessageExts
550
+ extend ::Google::Protobuf::MessageExts::ClassMethods
551
+
552
+ sig do
553
+ params(
554
+ pollers: T.nilable(T::Array[T.nilable(Temporalio::Api::TaskQueue::V1::PollerInfo)]),
555
+ stats: T.nilable(Temporalio::Api::TaskQueue::V1::TaskQueueStats)
556
+ ).void
557
+ end
558
+ def initialize(
559
+ pollers: [],
560
+ stats: nil
561
+ )
562
+ end
563
+
564
+ # Unversioned workers (with `useVersioning=false`) are reported in unversioned result even if they set a Build ID.
565
+ sig { returns(T::Array[T.nilable(Temporalio::Api::TaskQueue::V1::PollerInfo)]) }
566
+ def pollers
567
+ end
568
+
569
+ # Unversioned workers (with `useVersioning=false`) are reported in unversioned result even if they set a Build ID.
570
+ sig { params(value: ::Google::Protobuf::RepeatedField).void }
571
+ def pollers=(value)
572
+ end
573
+
574
+ # Unversioned workers (with `useVersioning=false`) are reported in unversioned result even if they set a Build ID.
575
+ sig { void }
576
+ def clear_pollers
577
+ end
578
+
579
+ sig { returns(T.nilable(Temporalio::Api::TaskQueue::V1::TaskQueueStats)) }
580
+ def stats
581
+ end
582
+
583
+ sig { params(value: T.nilable(Temporalio::Api::TaskQueue::V1::TaskQueueStats)).void }
584
+ def stats=(value)
585
+ end
586
+
587
+ sig { void }
588
+ def clear_stats
589
+ end
590
+
591
+ sig { params(field: String).returns(T.untyped) }
592
+ def [](field)
593
+ end
594
+
595
+ sig { params(field: String, value: T.untyped).void }
596
+ def []=(field, value)
597
+ end
598
+
599
+ sig { returns(T::Hash[Symbol, T.untyped]) }
600
+ def to_h
601
+ end
602
+
603
+ sig { params(str: String).returns(Temporalio::Api::TaskQueue::V1::TaskQueueTypeInfo) }
604
+ def self.decode(str)
605
+ end
606
+
607
+ sig { params(msg: Temporalio::Api::TaskQueue::V1::TaskQueueTypeInfo).returns(String) }
608
+ def self.encode(msg)
609
+ end
610
+
611
+ sig { params(str: String, kw: T.untyped).returns(Temporalio::Api::TaskQueue::V1::TaskQueueTypeInfo) }
612
+ def self.decode_json(str, **kw)
613
+ end
614
+
615
+ sig { params(msg: Temporalio::Api::TaskQueue::V1::TaskQueueTypeInfo, kw: T.untyped).returns(String) }
616
+ def self.encode_json(msg, **kw)
617
+ end
618
+
619
+ sig { returns(::Google::Protobuf::Descriptor) }
620
+ def self.descriptor
621
+ end
622
+ end
623
+
624
+ # TaskQueueStats contains statistics about task queue backlog and activity.
625
+ #
626
+ # For workflow task queue type, this result is partial because tasks sent to sticky queues are not included. Read
627
+ # comments above each metric to understand the impact of sticky queue exclusion on that metric accuracy.
628
+ class Temporalio::Api::TaskQueue::V1::TaskQueueStats
629
+ include ::Google::Protobuf::MessageExts
630
+ extend ::Google::Protobuf::MessageExts::ClassMethods
631
+
632
+ sig do
633
+ params(
634
+ approximate_backlog_count: T.nilable(Integer),
635
+ approximate_backlog_age: T.nilable(Google::Protobuf::Duration),
636
+ tasks_add_rate: T.nilable(Float),
637
+ tasks_dispatch_rate: T.nilable(Float),
638
+ rate_limiting_active: T.nilable(T::Boolean)
639
+ ).void
640
+ end
641
+ def initialize(
642
+ approximate_backlog_count: 0,
643
+ approximate_backlog_age: nil,
644
+ tasks_add_rate: 0.0,
645
+ tasks_dispatch_rate: 0.0,
646
+ rate_limiting_active: false
647
+ )
648
+ end
649
+
650
+ # The approximate number of tasks backlogged in this task queue. May count expired tasks but eventually
651
+ # converges to the right value. Can be relied upon for scaling decisions.
652
+ #
653
+ # Special note for workflow task queue type: this metric does not count sticky queue tasks. However, because
654
+ # those tasks only remain valid for a few seconds, the inaccuracy becomes less significant as the backlog size
655
+ # grows.
656
+ sig { returns(Integer) }
657
+ def approximate_backlog_count
658
+ end
659
+
660
+ # The approximate number of tasks backlogged in this task queue. May count expired tasks but eventually
661
+ # converges to the right value. Can be relied upon for scaling decisions.
662
+ #
663
+ # Special note for workflow task queue type: this metric does not count sticky queue tasks. However, because
664
+ # those tasks only remain valid for a few seconds, the inaccuracy becomes less significant as the backlog size
665
+ # grows.
666
+ sig { params(value: Integer).void }
667
+ def approximate_backlog_count=(value)
668
+ end
669
+
670
+ # The approximate number of tasks backlogged in this task queue. May count expired tasks but eventually
671
+ # converges to the right value. Can be relied upon for scaling decisions.
672
+ #
673
+ # Special note for workflow task queue type: this metric does not count sticky queue tasks. However, because
674
+ # those tasks only remain valid for a few seconds, the inaccuracy becomes less significant as the backlog size
675
+ # grows.
676
+ sig { void }
677
+ def clear_approximate_backlog_count
678
+ end
679
+
680
+ # Approximate age of the oldest task in the backlog based on the creation time of the task at the head of
681
+ # the queue. Can be relied upon for scaling decisions.
682
+ #
683
+ # Special note for workflow task queue type: this metric does not count sticky queue tasks. However, because
684
+ # those tasks only remain valid for a few seconds, they should not affect the result when backlog is older than
685
+ # few seconds.
686
+ sig { returns(T.nilable(Google::Protobuf::Duration)) }
687
+ def approximate_backlog_age
688
+ end
689
+
690
+ # Approximate age of the oldest task in the backlog based on the creation time of the task at the head of
691
+ # the queue. Can be relied upon for scaling decisions.
692
+ #
693
+ # Special note for workflow task queue type: this metric does not count sticky queue tasks. However, because
694
+ # those tasks only remain valid for a few seconds, they should not affect the result when backlog is older than
695
+ # few seconds.
696
+ sig { params(value: T.nilable(Google::Protobuf::Duration)).void }
697
+ def approximate_backlog_age=(value)
698
+ end
699
+
700
+ # Approximate age of the oldest task in the backlog based on the creation time of the task at the head of
701
+ # the queue. Can be relied upon for scaling decisions.
702
+ #
703
+ # Special note for workflow task queue type: this metric does not count sticky queue tasks. However, because
704
+ # those tasks only remain valid for a few seconds, they should not affect the result when backlog is older than
705
+ # few seconds.
706
+ sig { void }
707
+ def clear_approximate_backlog_age
708
+ end
709
+
710
+ # The approximate tasks per second added to the task queue, averaging the last 30 seconds. These includes tasks
711
+ # whether or not they were added to/dispatched from the backlog or they were dispatched immediately without going
712
+ # to the backlog (sync-matched).
713
+ #
714
+ # The difference between `tasks_add_rate` and `tasks_dispatch_rate` is a reliable metric for the rate at which
715
+ # backlog grows/shrinks.
716
+ #
717
+ # Note: the actual tasks delivered to the workers may significantly be higher than the numbers reported by
718
+ # tasks_add_rate, because:
719
+ # - Tasks can be sent to workers without going to the task queue. This is called Eager dispatch. Eager dispatch is
720
+ # enable for activities by default in the latest SDKs.
721
+ # - Tasks going to Sticky queue are not accounted for. Note that, typically, only the first workflow task of each
722
+ # workflow goes to a normal queue, and the rest workflow tasks go to the Sticky queue associated with a specific
723
+ # worker instance.
724
+ sig { returns(Float) }
725
+ def tasks_add_rate
726
+ end
727
+
728
+ # The approximate tasks per second added to the task queue, averaging the last 30 seconds. These includes tasks
729
+ # whether or not they were added to/dispatched from the backlog or they were dispatched immediately without going
730
+ # to the backlog (sync-matched).
731
+ #
732
+ # The difference between `tasks_add_rate` and `tasks_dispatch_rate` is a reliable metric for the rate at which
733
+ # backlog grows/shrinks.
734
+ #
735
+ # Note: the actual tasks delivered to the workers may significantly be higher than the numbers reported by
736
+ # tasks_add_rate, because:
737
+ # - Tasks can be sent to workers without going to the task queue. This is called Eager dispatch. Eager dispatch is
738
+ # enable for activities by default in the latest SDKs.
739
+ # - Tasks going to Sticky queue are not accounted for. Note that, typically, only the first workflow task of each
740
+ # workflow goes to a normal queue, and the rest workflow tasks go to the Sticky queue associated with a specific
741
+ # worker instance.
742
+ sig { params(value: Float).void }
743
+ def tasks_add_rate=(value)
744
+ end
745
+
746
+ # The approximate tasks per second added to the task queue, averaging the last 30 seconds. These includes tasks
747
+ # whether or not they were added to/dispatched from the backlog or they were dispatched immediately without going
748
+ # to the backlog (sync-matched).
749
+ #
750
+ # The difference between `tasks_add_rate` and `tasks_dispatch_rate` is a reliable metric for the rate at which
751
+ # backlog grows/shrinks.
752
+ #
753
+ # Note: the actual tasks delivered to the workers may significantly be higher than the numbers reported by
754
+ # tasks_add_rate, because:
755
+ # - Tasks can be sent to workers without going to the task queue. This is called Eager dispatch. Eager dispatch is
756
+ # enable for activities by default in the latest SDKs.
757
+ # - Tasks going to Sticky queue are not accounted for. Note that, typically, only the first workflow task of each
758
+ # workflow goes to a normal queue, and the rest workflow tasks go to the Sticky queue associated with a specific
759
+ # worker instance.
760
+ sig { void }
761
+ def clear_tasks_add_rate
762
+ end
763
+
764
+ # The approximate tasks per second dispatched from the task queue, averaging the last 30 seconds. These includes
765
+ # tasks whether or not they were added to/dispatched from the backlog or they were dispatched immediately without
766
+ # going to the backlog (sync-matched).
767
+ #
768
+ # The difference between `tasks_add_rate` and `tasks_dispatch_rate` is a reliable metric for the rate at which
769
+ # backlog grows/shrinks.
770
+ #
771
+ # Note: the actual tasks delivered to the workers may significantly be higher than the numbers reported by
772
+ # tasks_dispatch_rate, because:
773
+ # - Tasks can be sent to workers without going to the task queue. This is called Eager dispatch. Eager dispatch is
774
+ # enable for activities by default in the latest SDKs.
775
+ # - Tasks going to Sticky queue are not accounted for. Note that, typically, only the first workflow task of each
776
+ # workflow goes to a normal queue, and the rest workflow tasks go to the Sticky queue associated with a specific
777
+ # worker instance.
778
+ sig { returns(Float) }
779
+ def tasks_dispatch_rate
780
+ end
781
+
782
+ # The approximate tasks per second dispatched from the task queue, averaging the last 30 seconds. These includes
783
+ # tasks whether or not they were added to/dispatched from the backlog or they were dispatched immediately without
784
+ # going to the backlog (sync-matched).
785
+ #
786
+ # The difference between `tasks_add_rate` and `tasks_dispatch_rate` is a reliable metric for the rate at which
787
+ # backlog grows/shrinks.
788
+ #
789
+ # Note: the actual tasks delivered to the workers may significantly be higher than the numbers reported by
790
+ # tasks_dispatch_rate, because:
791
+ # - Tasks can be sent to workers without going to the task queue. This is called Eager dispatch. Eager dispatch is
792
+ # enable for activities by default in the latest SDKs.
793
+ # - Tasks going to Sticky queue are not accounted for. Note that, typically, only the first workflow task of each
794
+ # workflow goes to a normal queue, and the rest workflow tasks go to the Sticky queue associated with a specific
795
+ # worker instance.
796
+ sig { params(value: Float).void }
797
+ def tasks_dispatch_rate=(value)
798
+ end
799
+
800
+ # The approximate tasks per second dispatched from the task queue, averaging the last 30 seconds. These includes
801
+ # tasks whether or not they were added to/dispatched from the backlog or they were dispatched immediately without
802
+ # going to the backlog (sync-matched).
803
+ #
804
+ # The difference between `tasks_add_rate` and `tasks_dispatch_rate` is a reliable metric for the rate at which
805
+ # backlog grows/shrinks.
806
+ #
807
+ # Note: the actual tasks delivered to the workers may significantly be higher than the numbers reported by
808
+ # tasks_dispatch_rate, because:
809
+ # - Tasks can be sent to workers without going to the task queue. This is called Eager dispatch. Eager dispatch is
810
+ # enable for activities by default in the latest SDKs.
811
+ # - Tasks going to Sticky queue are not accounted for. Note that, typically, only the first workflow task of each
812
+ # workflow goes to a normal queue, and the rest workflow tasks go to the Sticky queue associated with a specific
813
+ # worker instance.
814
+ sig { void }
815
+ def clear_tasks_dispatch_rate
816
+ end
817
+
818
+ # Whether rate limiting blocked any dispatches within the recent observation window (approximately
819
+ # 30 seconds). When true, adding more workers will not increase throughput — the bottleneck is the
820
+ # rate limit, not worker count. This field is useful for auto-scaling systems to avoid unnecessary
821
+ # scale-up.
822
+ sig { returns(T::Boolean) }
823
+ def rate_limiting_active
824
+ end
825
+
826
+ # Whether rate limiting blocked any dispatches within the recent observation window (approximately
827
+ # 30 seconds). When true, adding more workers will not increase throughput — the bottleneck is the
828
+ # rate limit, not worker count. This field is useful for auto-scaling systems to avoid unnecessary
829
+ # scale-up.
830
+ sig { params(value: T::Boolean).void }
831
+ def rate_limiting_active=(value)
832
+ end
833
+
834
+ # Whether rate limiting blocked any dispatches within the recent observation window (approximately
835
+ # 30 seconds). When true, adding more workers will not increase throughput — the bottleneck is the
836
+ # rate limit, not worker count. This field is useful for auto-scaling systems to avoid unnecessary
837
+ # scale-up.
838
+ sig { void }
839
+ def clear_rate_limiting_active
840
+ end
841
+
842
+ sig { params(field: String).returns(T.untyped) }
843
+ def [](field)
844
+ end
845
+
846
+ sig { params(field: String, value: T.untyped).void }
847
+ def []=(field, value)
848
+ end
849
+
850
+ sig { returns(T::Hash[Symbol, T.untyped]) }
851
+ def to_h
852
+ end
853
+
854
+ sig { params(str: String).returns(Temporalio::Api::TaskQueue::V1::TaskQueueStats) }
855
+ def self.decode(str)
856
+ end
857
+
858
+ sig { params(msg: Temporalio::Api::TaskQueue::V1::TaskQueueStats).returns(String) }
859
+ def self.encode(msg)
860
+ end
861
+
862
+ sig { params(str: String, kw: T.untyped).returns(Temporalio::Api::TaskQueue::V1::TaskQueueStats) }
863
+ def self.decode_json(str, **kw)
864
+ end
865
+
866
+ sig { params(msg: Temporalio::Api::TaskQueue::V1::TaskQueueStats, kw: T.untyped).returns(String) }
867
+ def self.encode_json(msg, **kw)
868
+ end
869
+
870
+ sig { returns(::Google::Protobuf::Descriptor) }
871
+ def self.descriptor
872
+ end
873
+ end
874
+
875
+ # Deprecated. Use `InternalTaskQueueStatus`. This is kept until `DescribeTaskQueue` supports legacy behavior.
876
+ class Temporalio::Api::TaskQueue::V1::TaskQueueStatus
877
+ include ::Google::Protobuf::MessageExts
878
+ extend ::Google::Protobuf::MessageExts::ClassMethods
879
+
880
+ sig do
881
+ params(
882
+ backlog_count_hint: T.nilable(Integer),
883
+ read_level: T.nilable(Integer),
884
+ ack_level: T.nilable(Integer),
885
+ rate_per_second: T.nilable(Float),
886
+ task_id_block: T.nilable(Temporalio::Api::TaskQueue::V1::TaskIdBlock)
887
+ ).void
888
+ end
889
+ def initialize(
890
+ backlog_count_hint: 0,
891
+ read_level: 0,
892
+ ack_level: 0,
893
+ rate_per_second: 0.0,
894
+ task_id_block: nil
895
+ )
896
+ end
897
+
898
+ sig { returns(Integer) }
899
+ def backlog_count_hint
900
+ end
901
+
902
+ sig { params(value: Integer).void }
903
+ def backlog_count_hint=(value)
904
+ end
905
+
906
+ sig { void }
907
+ def clear_backlog_count_hint
908
+ end
909
+
910
+ sig { returns(Integer) }
911
+ def read_level
912
+ end
913
+
914
+ sig { params(value: Integer).void }
915
+ def read_level=(value)
916
+ end
917
+
918
+ sig { void }
919
+ def clear_read_level
920
+ end
921
+
922
+ sig { returns(Integer) }
923
+ def ack_level
924
+ end
925
+
926
+ sig { params(value: Integer).void }
927
+ def ack_level=(value)
928
+ end
929
+
930
+ sig { void }
931
+ def clear_ack_level
932
+ end
933
+
934
+ sig { returns(Float) }
935
+ def rate_per_second
936
+ end
937
+
938
+ sig { params(value: Float).void }
939
+ def rate_per_second=(value)
940
+ end
941
+
942
+ sig { void }
943
+ def clear_rate_per_second
944
+ end
945
+
946
+ sig { returns(T.nilable(Temporalio::Api::TaskQueue::V1::TaskIdBlock)) }
947
+ def task_id_block
948
+ end
949
+
950
+ sig { params(value: T.nilable(Temporalio::Api::TaskQueue::V1::TaskIdBlock)).void }
951
+ def task_id_block=(value)
952
+ end
953
+
954
+ sig { void }
955
+ def clear_task_id_block
956
+ end
957
+
958
+ sig { params(field: String).returns(T.untyped) }
959
+ def [](field)
960
+ end
961
+
962
+ sig { params(field: String, value: T.untyped).void }
963
+ def []=(field, value)
964
+ end
965
+
966
+ sig { returns(T::Hash[Symbol, T.untyped]) }
967
+ def to_h
968
+ end
969
+
970
+ sig { params(str: String).returns(Temporalio::Api::TaskQueue::V1::TaskQueueStatus) }
971
+ def self.decode(str)
972
+ end
973
+
974
+ sig { params(msg: Temporalio::Api::TaskQueue::V1::TaskQueueStatus).returns(String) }
975
+ def self.encode(msg)
976
+ end
977
+
978
+ sig { params(str: String, kw: T.untyped).returns(Temporalio::Api::TaskQueue::V1::TaskQueueStatus) }
979
+ def self.decode_json(str, **kw)
980
+ end
981
+
982
+ sig { params(msg: Temporalio::Api::TaskQueue::V1::TaskQueueStatus, kw: T.untyped).returns(String) }
983
+ def self.encode_json(msg, **kw)
984
+ end
985
+
986
+ sig { returns(::Google::Protobuf::Descriptor) }
987
+ def self.descriptor
988
+ end
989
+ end
990
+
991
+ class Temporalio::Api::TaskQueue::V1::TaskIdBlock
992
+ include ::Google::Protobuf::MessageExts
993
+ extend ::Google::Protobuf::MessageExts::ClassMethods
994
+
995
+ sig do
996
+ params(
997
+ start_id: T.nilable(Integer),
998
+ end_id: T.nilable(Integer)
999
+ ).void
1000
+ end
1001
+ def initialize(
1002
+ start_id: 0,
1003
+ end_id: 0
1004
+ )
1005
+ end
1006
+
1007
+ sig { returns(Integer) }
1008
+ def start_id
1009
+ end
1010
+
1011
+ sig { params(value: Integer).void }
1012
+ def start_id=(value)
1013
+ end
1014
+
1015
+ sig { void }
1016
+ def clear_start_id
1017
+ end
1018
+
1019
+ sig { returns(Integer) }
1020
+ def end_id
1021
+ end
1022
+
1023
+ sig { params(value: Integer).void }
1024
+ def end_id=(value)
1025
+ end
1026
+
1027
+ sig { void }
1028
+ def clear_end_id
1029
+ end
1030
+
1031
+ sig { params(field: String).returns(T.untyped) }
1032
+ def [](field)
1033
+ end
1034
+
1035
+ sig { params(field: String, value: T.untyped).void }
1036
+ def []=(field, value)
1037
+ end
1038
+
1039
+ sig { returns(T::Hash[Symbol, T.untyped]) }
1040
+ def to_h
1041
+ end
1042
+
1043
+ sig { params(str: String).returns(Temporalio::Api::TaskQueue::V1::TaskIdBlock) }
1044
+ def self.decode(str)
1045
+ end
1046
+
1047
+ sig { params(msg: Temporalio::Api::TaskQueue::V1::TaskIdBlock).returns(String) }
1048
+ def self.encode(msg)
1049
+ end
1050
+
1051
+ sig { params(str: String, kw: T.untyped).returns(Temporalio::Api::TaskQueue::V1::TaskIdBlock) }
1052
+ def self.decode_json(str, **kw)
1053
+ end
1054
+
1055
+ sig { params(msg: Temporalio::Api::TaskQueue::V1::TaskIdBlock, kw: T.untyped).returns(String) }
1056
+ def self.encode_json(msg, **kw)
1057
+ end
1058
+
1059
+ sig { returns(::Google::Protobuf::Descriptor) }
1060
+ def self.descriptor
1061
+ end
1062
+ end
1063
+
1064
+ class Temporalio::Api::TaskQueue::V1::TaskQueuePartitionMetadata
1065
+ include ::Google::Protobuf::MessageExts
1066
+ extend ::Google::Protobuf::MessageExts::ClassMethods
1067
+
1068
+ sig do
1069
+ params(
1070
+ key: T.nilable(String),
1071
+ owner_host_name: T.nilable(String)
1072
+ ).void
1073
+ end
1074
+ def initialize(
1075
+ key: "",
1076
+ owner_host_name: ""
1077
+ )
1078
+ end
1079
+
1080
+ sig { returns(String) }
1081
+ def key
1082
+ end
1083
+
1084
+ sig { params(value: String).void }
1085
+ def key=(value)
1086
+ end
1087
+
1088
+ sig { void }
1089
+ def clear_key
1090
+ end
1091
+
1092
+ sig { returns(String) }
1093
+ def owner_host_name
1094
+ end
1095
+
1096
+ sig { params(value: String).void }
1097
+ def owner_host_name=(value)
1098
+ end
1099
+
1100
+ sig { void }
1101
+ def clear_owner_host_name
1102
+ end
1103
+
1104
+ sig { params(field: String).returns(T.untyped) }
1105
+ def [](field)
1106
+ end
1107
+
1108
+ sig { params(field: String, value: T.untyped).void }
1109
+ def []=(field, value)
1110
+ end
1111
+
1112
+ sig { returns(T::Hash[Symbol, T.untyped]) }
1113
+ def to_h
1114
+ end
1115
+
1116
+ sig { params(str: String).returns(Temporalio::Api::TaskQueue::V1::TaskQueuePartitionMetadata) }
1117
+ def self.decode(str)
1118
+ end
1119
+
1120
+ sig { params(msg: Temporalio::Api::TaskQueue::V1::TaskQueuePartitionMetadata).returns(String) }
1121
+ def self.encode(msg)
1122
+ end
1123
+
1124
+ sig { params(str: String, kw: T.untyped).returns(Temporalio::Api::TaskQueue::V1::TaskQueuePartitionMetadata) }
1125
+ def self.decode_json(str, **kw)
1126
+ end
1127
+
1128
+ sig { params(msg: Temporalio::Api::TaskQueue::V1::TaskQueuePartitionMetadata, kw: T.untyped).returns(String) }
1129
+ def self.encode_json(msg, **kw)
1130
+ end
1131
+
1132
+ sig { returns(::Google::Protobuf::Descriptor) }
1133
+ def self.descriptor
1134
+ end
1135
+ end
1136
+
1137
+ class Temporalio::Api::TaskQueue::V1::PollerInfo
1138
+ include ::Google::Protobuf::MessageExts
1139
+ extend ::Google::Protobuf::MessageExts::ClassMethods
1140
+
1141
+ sig do
1142
+ params(
1143
+ last_access_time: T.nilable(Google::Protobuf::Timestamp),
1144
+ identity: T.nilable(String),
1145
+ rate_per_second: T.nilable(Float),
1146
+ worker_version_capabilities: T.nilable(Temporalio::Api::Common::V1::WorkerVersionCapabilities),
1147
+ deployment_options: T.nilable(Temporalio::Api::Deployment::V1::WorkerDeploymentOptions)
1148
+ ).void
1149
+ end
1150
+ def initialize(
1151
+ last_access_time: nil,
1152
+ identity: "",
1153
+ rate_per_second: 0.0,
1154
+ worker_version_capabilities: nil,
1155
+ deployment_options: nil
1156
+ )
1157
+ end
1158
+
1159
+ sig { returns(T.nilable(Google::Protobuf::Timestamp)) }
1160
+ def last_access_time
1161
+ end
1162
+
1163
+ sig { params(value: T.nilable(Google::Protobuf::Timestamp)).void }
1164
+ def last_access_time=(value)
1165
+ end
1166
+
1167
+ sig { void }
1168
+ def clear_last_access_time
1169
+ end
1170
+
1171
+ sig { returns(String) }
1172
+ def identity
1173
+ end
1174
+
1175
+ sig { params(value: String).void }
1176
+ def identity=(value)
1177
+ end
1178
+
1179
+ sig { void }
1180
+ def clear_identity
1181
+ end
1182
+
1183
+ sig { returns(Float) }
1184
+ def rate_per_second
1185
+ end
1186
+
1187
+ sig { params(value: Float).void }
1188
+ def rate_per_second=(value)
1189
+ end
1190
+
1191
+ sig { void }
1192
+ def clear_rate_per_second
1193
+ end
1194
+
1195
+ # If a worker has opted into the worker versioning feature while polling, its capabilities will
1196
+ # appear here.
1197
+ # Deprecated. Replaced by deployment_options.
1198
+ sig { returns(T.nilable(Temporalio::Api::Common::V1::WorkerVersionCapabilities)) }
1199
+ def worker_version_capabilities
1200
+ end
1201
+
1202
+ # If a worker has opted into the worker versioning feature while polling, its capabilities will
1203
+ # appear here.
1204
+ # Deprecated. Replaced by deployment_options.
1205
+ sig { params(value: T.nilable(Temporalio::Api::Common::V1::WorkerVersionCapabilities)).void }
1206
+ def worker_version_capabilities=(value)
1207
+ end
1208
+
1209
+ # If a worker has opted into the worker versioning feature while polling, its capabilities will
1210
+ # appear here.
1211
+ # Deprecated. Replaced by deployment_options.
1212
+ sig { void }
1213
+ def clear_worker_version_capabilities
1214
+ end
1215
+
1216
+ # Worker deployment options that SDK sent to server.
1217
+ sig { returns(T.nilable(Temporalio::Api::Deployment::V1::WorkerDeploymentOptions)) }
1218
+ def deployment_options
1219
+ end
1220
+
1221
+ # Worker deployment options that SDK sent to server.
1222
+ sig { params(value: T.nilable(Temporalio::Api::Deployment::V1::WorkerDeploymentOptions)).void }
1223
+ def deployment_options=(value)
1224
+ end
1225
+
1226
+ # Worker deployment options that SDK sent to server.
1227
+ sig { void }
1228
+ def clear_deployment_options
1229
+ end
1230
+
1231
+ sig { params(field: String).returns(T.untyped) }
1232
+ def [](field)
1233
+ end
1234
+
1235
+ sig { params(field: String, value: T.untyped).void }
1236
+ def []=(field, value)
1237
+ end
1238
+
1239
+ sig { returns(T::Hash[Symbol, T.untyped]) }
1240
+ def to_h
1241
+ end
1242
+
1243
+ sig { params(str: String).returns(Temporalio::Api::TaskQueue::V1::PollerInfo) }
1244
+ def self.decode(str)
1245
+ end
1246
+
1247
+ sig { params(msg: Temporalio::Api::TaskQueue::V1::PollerInfo).returns(String) }
1248
+ def self.encode(msg)
1249
+ end
1250
+
1251
+ sig { params(str: String, kw: T.untyped).returns(Temporalio::Api::TaskQueue::V1::PollerInfo) }
1252
+ def self.decode_json(str, **kw)
1253
+ end
1254
+
1255
+ sig { params(msg: Temporalio::Api::TaskQueue::V1::PollerInfo, kw: T.untyped).returns(String) }
1256
+ def self.encode_json(msg, **kw)
1257
+ end
1258
+
1259
+ sig { returns(::Google::Protobuf::Descriptor) }
1260
+ def self.descriptor
1261
+ end
1262
+ end
1263
+
1264
+ class Temporalio::Api::TaskQueue::V1::StickyExecutionAttributes
1265
+ include ::Google::Protobuf::MessageExts
1266
+ extend ::Google::Protobuf::MessageExts::ClassMethods
1267
+
1268
+ sig do
1269
+ params(
1270
+ worker_task_queue: T.nilable(Temporalio::Api::TaskQueue::V1::TaskQueue),
1271
+ schedule_to_start_timeout: T.nilable(Google::Protobuf::Duration)
1272
+ ).void
1273
+ end
1274
+ def initialize(
1275
+ worker_task_queue: nil,
1276
+ schedule_to_start_timeout: nil
1277
+ )
1278
+ end
1279
+
1280
+ sig { returns(T.nilable(Temporalio::Api::TaskQueue::V1::TaskQueue)) }
1281
+ def worker_task_queue
1282
+ end
1283
+
1284
+ sig { params(value: T.nilable(Temporalio::Api::TaskQueue::V1::TaskQueue)).void }
1285
+ def worker_task_queue=(value)
1286
+ end
1287
+
1288
+ sig { void }
1289
+ def clear_worker_task_queue
1290
+ end
1291
+
1292
+ # (-- api-linter: core::0140::prepositions=disabled
1293
+ # aip.dev/not-precedent: "to" is used to indicate interval. --)
1294
+ sig { returns(T.nilable(Google::Protobuf::Duration)) }
1295
+ def schedule_to_start_timeout
1296
+ end
1297
+
1298
+ # (-- api-linter: core::0140::prepositions=disabled
1299
+ # aip.dev/not-precedent: "to" is used to indicate interval. --)
1300
+ sig { params(value: T.nilable(Google::Protobuf::Duration)).void }
1301
+ def schedule_to_start_timeout=(value)
1302
+ end
1303
+
1304
+ # (-- api-linter: core::0140::prepositions=disabled
1305
+ # aip.dev/not-precedent: "to" is used to indicate interval. --)
1306
+ sig { void }
1307
+ def clear_schedule_to_start_timeout
1308
+ end
1309
+
1310
+ sig { params(field: String).returns(T.untyped) }
1311
+ def [](field)
1312
+ end
1313
+
1314
+ sig { params(field: String, value: T.untyped).void }
1315
+ def []=(field, value)
1316
+ end
1317
+
1318
+ sig { returns(T::Hash[Symbol, T.untyped]) }
1319
+ def to_h
1320
+ end
1321
+
1322
+ sig { params(str: String).returns(Temporalio::Api::TaskQueue::V1::StickyExecutionAttributes) }
1323
+ def self.decode(str)
1324
+ end
1325
+
1326
+ sig { params(msg: Temporalio::Api::TaskQueue::V1::StickyExecutionAttributes).returns(String) }
1327
+ def self.encode(msg)
1328
+ end
1329
+
1330
+ sig { params(str: String, kw: T.untyped).returns(Temporalio::Api::TaskQueue::V1::StickyExecutionAttributes) }
1331
+ def self.decode_json(str, **kw)
1332
+ end
1333
+
1334
+ sig { params(msg: Temporalio::Api::TaskQueue::V1::StickyExecutionAttributes, kw: T.untyped).returns(String) }
1335
+ def self.encode_json(msg, **kw)
1336
+ end
1337
+
1338
+ sig { returns(::Google::Protobuf::Descriptor) }
1339
+ def self.descriptor
1340
+ end
1341
+ end
1342
+
1343
+ # Used by the worker versioning APIs, represents an unordered set of one or more versions which are
1344
+ # considered to be compatible with each other. Currently the versions are always worker build IDs.
1345
+ class Temporalio::Api::TaskQueue::V1::CompatibleVersionSet
1346
+ include ::Google::Protobuf::MessageExts
1347
+ extend ::Google::Protobuf::MessageExts::ClassMethods
1348
+
1349
+ sig do
1350
+ params(
1351
+ build_ids: T.nilable(T::Array[String])
1352
+ ).void
1353
+ end
1354
+ def initialize(
1355
+ build_ids: []
1356
+ )
1357
+ end
1358
+
1359
+ # All the compatible versions, unordered, except for the last element, which is considered the set "default".
1360
+ sig { returns(T::Array[String]) }
1361
+ def build_ids
1362
+ end
1363
+
1364
+ # All the compatible versions, unordered, except for the last element, which is considered the set "default".
1365
+ sig { params(value: ::Google::Protobuf::RepeatedField).void }
1366
+ def build_ids=(value)
1367
+ end
1368
+
1369
+ # All the compatible versions, unordered, except for the last element, which is considered the set "default".
1370
+ sig { void }
1371
+ def clear_build_ids
1372
+ end
1373
+
1374
+ sig { params(field: String).returns(T.untyped) }
1375
+ def [](field)
1376
+ end
1377
+
1378
+ sig { params(field: String, value: T.untyped).void }
1379
+ def []=(field, value)
1380
+ end
1381
+
1382
+ sig { returns(T::Hash[Symbol, T.untyped]) }
1383
+ def to_h
1384
+ end
1385
+
1386
+ sig { params(str: String).returns(Temporalio::Api::TaskQueue::V1::CompatibleVersionSet) }
1387
+ def self.decode(str)
1388
+ end
1389
+
1390
+ sig { params(msg: Temporalio::Api::TaskQueue::V1::CompatibleVersionSet).returns(String) }
1391
+ def self.encode(msg)
1392
+ end
1393
+
1394
+ sig { params(str: String, kw: T.untyped).returns(Temporalio::Api::TaskQueue::V1::CompatibleVersionSet) }
1395
+ def self.decode_json(str, **kw)
1396
+ end
1397
+
1398
+ sig { params(msg: Temporalio::Api::TaskQueue::V1::CompatibleVersionSet, kw: T.untyped).returns(String) }
1399
+ def self.encode_json(msg, **kw)
1400
+ end
1401
+
1402
+ sig { returns(::Google::Protobuf::Descriptor) }
1403
+ def self.descriptor
1404
+ end
1405
+ end
1406
+
1407
+ # Reachability of tasks for a worker on a single task queue.
1408
+ class Temporalio::Api::TaskQueue::V1::TaskQueueReachability
1409
+ include ::Google::Protobuf::MessageExts
1410
+ extend ::Google::Protobuf::MessageExts::ClassMethods
1411
+
1412
+ sig do
1413
+ params(
1414
+ task_queue: T.nilable(String),
1415
+ reachability: T.nilable(T::Array[T.any(Symbol, String, Integer)])
1416
+ ).void
1417
+ end
1418
+ def initialize(
1419
+ task_queue: "",
1420
+ reachability: []
1421
+ )
1422
+ end
1423
+
1424
+ sig { returns(String) }
1425
+ def task_queue
1426
+ end
1427
+
1428
+ sig { params(value: String).void }
1429
+ def task_queue=(value)
1430
+ end
1431
+
1432
+ sig { void }
1433
+ def clear_task_queue
1434
+ end
1435
+
1436
+ # Task reachability for a worker in a single task queue.
1437
+ # See the TaskReachability docstring for information about each enum variant.
1438
+ # If reachability is empty, this worker is considered unreachable in this task queue.
1439
+ sig { returns(T::Array[T.any(Symbol, Integer)]) }
1440
+ def reachability
1441
+ end
1442
+
1443
+ # Task reachability for a worker in a single task queue.
1444
+ # See the TaskReachability docstring for information about each enum variant.
1445
+ # If reachability is empty, this worker is considered unreachable in this task queue.
1446
+ sig { params(value: ::Google::Protobuf::RepeatedField).void }
1447
+ def reachability=(value)
1448
+ end
1449
+
1450
+ # Task reachability for a worker in a single task queue.
1451
+ # See the TaskReachability docstring for information about each enum variant.
1452
+ # If reachability is empty, this worker is considered unreachable in this task queue.
1453
+ sig { void }
1454
+ def clear_reachability
1455
+ end
1456
+
1457
+ sig { params(field: String).returns(T.untyped) }
1458
+ def [](field)
1459
+ end
1460
+
1461
+ sig { params(field: String, value: T.untyped).void }
1462
+ def []=(field, value)
1463
+ end
1464
+
1465
+ sig { returns(T::Hash[Symbol, T.untyped]) }
1466
+ def to_h
1467
+ end
1468
+
1469
+ sig { params(str: String).returns(Temporalio::Api::TaskQueue::V1::TaskQueueReachability) }
1470
+ def self.decode(str)
1471
+ end
1472
+
1473
+ sig { params(msg: Temporalio::Api::TaskQueue::V1::TaskQueueReachability).returns(String) }
1474
+ def self.encode(msg)
1475
+ end
1476
+
1477
+ sig { params(str: String, kw: T.untyped).returns(Temporalio::Api::TaskQueue::V1::TaskQueueReachability) }
1478
+ def self.decode_json(str, **kw)
1479
+ end
1480
+
1481
+ sig { params(msg: Temporalio::Api::TaskQueue::V1::TaskQueueReachability, kw: T.untyped).returns(String) }
1482
+ def self.encode_json(msg, **kw)
1483
+ end
1484
+
1485
+ sig { returns(::Google::Protobuf::Descriptor) }
1486
+ def self.descriptor
1487
+ end
1488
+ end
1489
+
1490
+ # Reachability of tasks for a worker by build id, in one or more task queues.
1491
+ class Temporalio::Api::TaskQueue::V1::BuildIdReachability
1492
+ include ::Google::Protobuf::MessageExts
1493
+ extend ::Google::Protobuf::MessageExts::ClassMethods
1494
+
1495
+ sig do
1496
+ params(
1497
+ build_id: T.nilable(String),
1498
+ task_queue_reachability: T.nilable(T::Array[T.nilable(Temporalio::Api::TaskQueue::V1::TaskQueueReachability)])
1499
+ ).void
1500
+ end
1501
+ def initialize(
1502
+ build_id: "",
1503
+ task_queue_reachability: []
1504
+ )
1505
+ end
1506
+
1507
+ # A build id or empty if unversioned.
1508
+ sig { returns(String) }
1509
+ def build_id
1510
+ end
1511
+
1512
+ # A build id or empty if unversioned.
1513
+ sig { params(value: String).void }
1514
+ def build_id=(value)
1515
+ end
1516
+
1517
+ # A build id or empty if unversioned.
1518
+ sig { void }
1519
+ def clear_build_id
1520
+ end
1521
+
1522
+ # Reachability per task queue.
1523
+ sig { returns(T::Array[T.nilable(Temporalio::Api::TaskQueue::V1::TaskQueueReachability)]) }
1524
+ def task_queue_reachability
1525
+ end
1526
+
1527
+ # Reachability per task queue.
1528
+ sig { params(value: ::Google::Protobuf::RepeatedField).void }
1529
+ def task_queue_reachability=(value)
1530
+ end
1531
+
1532
+ # Reachability per task queue.
1533
+ sig { void }
1534
+ def clear_task_queue_reachability
1535
+ end
1536
+
1537
+ sig { params(field: String).returns(T.untyped) }
1538
+ def [](field)
1539
+ end
1540
+
1541
+ sig { params(field: String, value: T.untyped).void }
1542
+ def []=(field, value)
1543
+ end
1544
+
1545
+ sig { returns(T::Hash[Symbol, T.untyped]) }
1546
+ def to_h
1547
+ end
1548
+
1549
+ sig { params(str: String).returns(Temporalio::Api::TaskQueue::V1::BuildIdReachability) }
1550
+ def self.decode(str)
1551
+ end
1552
+
1553
+ sig { params(msg: Temporalio::Api::TaskQueue::V1::BuildIdReachability).returns(String) }
1554
+ def self.encode(msg)
1555
+ end
1556
+
1557
+ sig { params(str: String, kw: T.untyped).returns(Temporalio::Api::TaskQueue::V1::BuildIdReachability) }
1558
+ def self.decode_json(str, **kw)
1559
+ end
1560
+
1561
+ sig { params(msg: Temporalio::Api::TaskQueue::V1::BuildIdReachability, kw: T.untyped).returns(String) }
1562
+ def self.encode_json(msg, **kw)
1563
+ end
1564
+
1565
+ sig { returns(::Google::Protobuf::Descriptor) }
1566
+ def self.descriptor
1567
+ end
1568
+ end
1569
+
1570
+ class Temporalio::Api::TaskQueue::V1::RampByPercentage
1571
+ include ::Google::Protobuf::MessageExts
1572
+ extend ::Google::Protobuf::MessageExts::ClassMethods
1573
+
1574
+ sig do
1575
+ params(
1576
+ ramp_percentage: T.nilable(Float)
1577
+ ).void
1578
+ end
1579
+ def initialize(
1580
+ ramp_percentage: 0.0
1581
+ )
1582
+ end
1583
+
1584
+ # Acceptable range is [0,100).
1585
+ sig { returns(Float) }
1586
+ def ramp_percentage
1587
+ end
1588
+
1589
+ # Acceptable range is [0,100).
1590
+ sig { params(value: Float).void }
1591
+ def ramp_percentage=(value)
1592
+ end
1593
+
1594
+ # Acceptable range is [0,100).
1595
+ sig { void }
1596
+ def clear_ramp_percentage
1597
+ end
1598
+
1599
+ sig { params(field: String).returns(T.untyped) }
1600
+ def [](field)
1601
+ end
1602
+
1603
+ sig { params(field: String, value: T.untyped).void }
1604
+ def []=(field, value)
1605
+ end
1606
+
1607
+ sig { returns(T::Hash[Symbol, T.untyped]) }
1608
+ def to_h
1609
+ end
1610
+
1611
+ sig { params(str: String).returns(Temporalio::Api::TaskQueue::V1::RampByPercentage) }
1612
+ def self.decode(str)
1613
+ end
1614
+
1615
+ sig { params(msg: Temporalio::Api::TaskQueue::V1::RampByPercentage).returns(String) }
1616
+ def self.encode(msg)
1617
+ end
1618
+
1619
+ sig { params(str: String, kw: T.untyped).returns(Temporalio::Api::TaskQueue::V1::RampByPercentage) }
1620
+ def self.decode_json(str, **kw)
1621
+ end
1622
+
1623
+ sig { params(msg: Temporalio::Api::TaskQueue::V1::RampByPercentage, kw: T.untyped).returns(String) }
1624
+ def self.encode_json(msg, **kw)
1625
+ end
1626
+
1627
+ sig { returns(::Google::Protobuf::Descriptor) }
1628
+ def self.descriptor
1629
+ end
1630
+ end
1631
+
1632
+ # Assignment rules are applied to *new* Workflow and Activity executions at
1633
+ # schedule time to assign them to a Build ID.
1634
+ #
1635
+ # Assignment rules will not be used in the following cases:
1636
+ # - Child Workflows or Continue-As-New Executions who inherit their
1637
+ # parent/previous Workflow's assigned Build ID (by setting the
1638
+ # `inherit_build_id` flag - default behavior in SDKs when the same Task Queue
1639
+ # is used.)
1640
+ # - An Activity that inherits the assigned Build ID of its Workflow (by
1641
+ # setting the `use_workflow_build_id` flag - default behavior in SDKs
1642
+ # when the same Task Queue is used.)
1643
+ #
1644
+ # In absence of (applicable) redirect rules (`CompatibleBuildIdRedirectRule`s)
1645
+ # the task will be dispatched to Workers of the Build ID determined by the
1646
+ # assignment rules (or inherited). Otherwise, the final Build ID will be
1647
+ # determined by the redirect rules.
1648
+ #
1649
+ # Once a Workflow completes its first Workflow Task in a particular Build ID it
1650
+ # stays in that Build ID regardless of changes to assignment rules. Redirect
1651
+ # rules can be used to move the workflow to another compatible Build ID.
1652
+ #
1653
+ # When using Worker Versioning on a Task Queue, in the steady state,
1654
+ # there should typically be a single assignment rule to send all new executions
1655
+ # to the latest Build ID. Existence of at least one such "unconditional"
1656
+ # rule at all times is enforces by the system, unless the `force` flag is used
1657
+ # by the user when replacing/deleting these rules (for exceptional cases).
1658
+ #
1659
+ # During a deployment, one or more additional rules can be added to assign a
1660
+ # subset of the tasks to a new Build ID based on a "ramp percentage".
1661
+ #
1662
+ # When there are multiple assignment rules for a Task Queue, the rules are
1663
+ # evaluated in order, starting from index 0. The first applicable rule will be
1664
+ # applied and the rest will be ignored.
1665
+ #
1666
+ # In the event that no assignment rule is applicable on a task (or the Task
1667
+ # Queue is simply not versioned), the tasks will be dispatched to an
1668
+ # unversioned Worker.
1669
+ class Temporalio::Api::TaskQueue::V1::BuildIdAssignmentRule
1670
+ include ::Google::Protobuf::MessageExts
1671
+ extend ::Google::Protobuf::MessageExts::ClassMethods
1672
+
1673
+ sig do
1674
+ params(
1675
+ target_build_id: T.nilable(String),
1676
+ percentage_ramp: T.nilable(Temporalio::Api::TaskQueue::V1::RampByPercentage)
1677
+ ).void
1678
+ end
1679
+ def initialize(
1680
+ target_build_id: "",
1681
+ percentage_ramp: nil
1682
+ )
1683
+ end
1684
+
1685
+ sig { returns(String) }
1686
+ def target_build_id
1687
+ end
1688
+
1689
+ sig { params(value: String).void }
1690
+ def target_build_id=(value)
1691
+ end
1692
+
1693
+ sig { void }
1694
+ def clear_target_build_id
1695
+ end
1696
+
1697
+ # This ramp is useful for gradual Blue/Green deployments (and similar)
1698
+ # where you want to send a certain portion of the traffic to the target
1699
+ # Build ID.
1700
+ sig { returns(T.nilable(Temporalio::Api::TaskQueue::V1::RampByPercentage)) }
1701
+ def percentage_ramp
1702
+ end
1703
+
1704
+ # This ramp is useful for gradual Blue/Green deployments (and similar)
1705
+ # where you want to send a certain portion of the traffic to the target
1706
+ # Build ID.
1707
+ sig { params(value: T.nilable(Temporalio::Api::TaskQueue::V1::RampByPercentage)).void }
1708
+ def percentage_ramp=(value)
1709
+ end
1710
+
1711
+ # This ramp is useful for gradual Blue/Green deployments (and similar)
1712
+ # where you want to send a certain portion of the traffic to the target
1713
+ # Build ID.
1714
+ sig { void }
1715
+ def clear_percentage_ramp
1716
+ end
1717
+
1718
+ sig { returns(T.nilable(Symbol)) }
1719
+ def ramp
1720
+ end
1721
+
1722
+ sig { params(field: String).returns(T.untyped) }
1723
+ def [](field)
1724
+ end
1725
+
1726
+ sig { params(field: String, value: T.untyped).void }
1727
+ def []=(field, value)
1728
+ end
1729
+
1730
+ sig { returns(T::Hash[Symbol, T.untyped]) }
1731
+ def to_h
1732
+ end
1733
+
1734
+ sig { params(str: String).returns(Temporalio::Api::TaskQueue::V1::BuildIdAssignmentRule) }
1735
+ def self.decode(str)
1736
+ end
1737
+
1738
+ sig { params(msg: Temporalio::Api::TaskQueue::V1::BuildIdAssignmentRule).returns(String) }
1739
+ def self.encode(msg)
1740
+ end
1741
+
1742
+ sig { params(str: String, kw: T.untyped).returns(Temporalio::Api::TaskQueue::V1::BuildIdAssignmentRule) }
1743
+ def self.decode_json(str, **kw)
1744
+ end
1745
+
1746
+ sig { params(msg: Temporalio::Api::TaskQueue::V1::BuildIdAssignmentRule, kw: T.untyped).returns(String) }
1747
+ def self.encode_json(msg, **kw)
1748
+ end
1749
+
1750
+ sig { returns(::Google::Protobuf::Descriptor) }
1751
+ def self.descriptor
1752
+ end
1753
+ end
1754
+
1755
+ # These rules apply to tasks assigned to a particular Build ID
1756
+ # (`source_build_id`) to redirect them to another *compatible* Build ID
1757
+ # (`target_build_id`).
1758
+ #
1759
+ # It is user's responsibility to ensure that the target Build ID is compatible
1760
+ # with the source Build ID (e.g. by using the Patching API).
1761
+ #
1762
+ # Most deployments are not expected to need these rules, however following
1763
+ # situations can greatly benefit from redirects:
1764
+ # - Need to move long-running Workflow Executions from an old Build ID to a
1765
+ # newer one.
1766
+ # - Need to hotfix some broken or stuck Workflow Executions.
1767
+ #
1768
+ # In steady state, redirect rules are beneficial when dealing with old
1769
+ # Executions ran on now-decommissioned Build IDs:
1770
+ # - To redirecting the Workflow Queries to the current (compatible) Build ID.
1771
+ # - To be able to Reset an old Execution so it can run on the current
1772
+ # (compatible) Build ID.
1773
+ #
1774
+ # Redirect rules can be chained.
1775
+ class Temporalio::Api::TaskQueue::V1::CompatibleBuildIdRedirectRule
1776
+ include ::Google::Protobuf::MessageExts
1777
+ extend ::Google::Protobuf::MessageExts::ClassMethods
1778
+
1779
+ sig do
1780
+ params(
1781
+ source_build_id: T.nilable(String),
1782
+ target_build_id: T.nilable(String)
1783
+ ).void
1784
+ end
1785
+ def initialize(
1786
+ source_build_id: "",
1787
+ target_build_id: ""
1788
+ )
1789
+ end
1790
+
1791
+ sig { returns(String) }
1792
+ def source_build_id
1793
+ end
1794
+
1795
+ sig { params(value: String).void }
1796
+ def source_build_id=(value)
1797
+ end
1798
+
1799
+ sig { void }
1800
+ def clear_source_build_id
1801
+ end
1802
+
1803
+ # Target Build ID must be compatible with the Source Build ID; that is it
1804
+ # must be able to process event histories made by the Source Build ID by
1805
+ # using [Patching](https://docs.temporal.io/workflows#patching) or other
1806
+ # means.
1807
+ sig { returns(String) }
1808
+ def target_build_id
1809
+ end
1810
+
1811
+ # Target Build ID must be compatible with the Source Build ID; that is it
1812
+ # must be able to process event histories made by the Source Build ID by
1813
+ # using [Patching](https://docs.temporal.io/workflows#patching) or other
1814
+ # means.
1815
+ sig { params(value: String).void }
1816
+ def target_build_id=(value)
1817
+ end
1818
+
1819
+ # Target Build ID must be compatible with the Source Build ID; that is it
1820
+ # must be able to process event histories made by the Source Build ID by
1821
+ # using [Patching](https://docs.temporal.io/workflows#patching) or other
1822
+ # means.
1823
+ sig { void }
1824
+ def clear_target_build_id
1825
+ end
1826
+
1827
+ sig { params(field: String).returns(T.untyped) }
1828
+ def [](field)
1829
+ end
1830
+
1831
+ sig { params(field: String, value: T.untyped).void }
1832
+ def []=(field, value)
1833
+ end
1834
+
1835
+ sig { returns(T::Hash[Symbol, T.untyped]) }
1836
+ def to_h
1837
+ end
1838
+
1839
+ sig { params(str: String).returns(Temporalio::Api::TaskQueue::V1::CompatibleBuildIdRedirectRule) }
1840
+ def self.decode(str)
1841
+ end
1842
+
1843
+ sig { params(msg: Temporalio::Api::TaskQueue::V1::CompatibleBuildIdRedirectRule).returns(String) }
1844
+ def self.encode(msg)
1845
+ end
1846
+
1847
+ sig { params(str: String, kw: T.untyped).returns(Temporalio::Api::TaskQueue::V1::CompatibleBuildIdRedirectRule) }
1848
+ def self.decode_json(str, **kw)
1849
+ end
1850
+
1851
+ sig { params(msg: Temporalio::Api::TaskQueue::V1::CompatibleBuildIdRedirectRule, kw: T.untyped).returns(String) }
1852
+ def self.encode_json(msg, **kw)
1853
+ end
1854
+
1855
+ sig { returns(::Google::Protobuf::Descriptor) }
1856
+ def self.descriptor
1857
+ end
1858
+ end
1859
+
1860
+ class Temporalio::Api::TaskQueue::V1::TimestampedBuildIdAssignmentRule
1861
+ include ::Google::Protobuf::MessageExts
1862
+ extend ::Google::Protobuf::MessageExts::ClassMethods
1863
+
1864
+ sig do
1865
+ params(
1866
+ rule: T.nilable(Temporalio::Api::TaskQueue::V1::BuildIdAssignmentRule),
1867
+ create_time: T.nilable(Google::Protobuf::Timestamp)
1868
+ ).void
1869
+ end
1870
+ def initialize(
1871
+ rule: nil,
1872
+ create_time: nil
1873
+ )
1874
+ end
1875
+
1876
+ sig { returns(T.nilable(Temporalio::Api::TaskQueue::V1::BuildIdAssignmentRule)) }
1877
+ def rule
1878
+ end
1879
+
1880
+ sig { params(value: T.nilable(Temporalio::Api::TaskQueue::V1::BuildIdAssignmentRule)).void }
1881
+ def rule=(value)
1882
+ end
1883
+
1884
+ sig { void }
1885
+ def clear_rule
1886
+ end
1887
+
1888
+ sig { returns(T.nilable(Google::Protobuf::Timestamp)) }
1889
+ def create_time
1890
+ end
1891
+
1892
+ sig { params(value: T.nilable(Google::Protobuf::Timestamp)).void }
1893
+ def create_time=(value)
1894
+ end
1895
+
1896
+ sig { void }
1897
+ def clear_create_time
1898
+ end
1899
+
1900
+ sig { params(field: String).returns(T.untyped) }
1901
+ def [](field)
1902
+ end
1903
+
1904
+ sig { params(field: String, value: T.untyped).void }
1905
+ def []=(field, value)
1906
+ end
1907
+
1908
+ sig { returns(T::Hash[Symbol, T.untyped]) }
1909
+ def to_h
1910
+ end
1911
+
1912
+ sig { params(str: String).returns(Temporalio::Api::TaskQueue::V1::TimestampedBuildIdAssignmentRule) }
1913
+ def self.decode(str)
1914
+ end
1915
+
1916
+ sig { params(msg: Temporalio::Api::TaskQueue::V1::TimestampedBuildIdAssignmentRule).returns(String) }
1917
+ def self.encode(msg)
1918
+ end
1919
+
1920
+ sig { params(str: String, kw: T.untyped).returns(Temporalio::Api::TaskQueue::V1::TimestampedBuildIdAssignmentRule) }
1921
+ def self.decode_json(str, **kw)
1922
+ end
1923
+
1924
+ sig { params(msg: Temporalio::Api::TaskQueue::V1::TimestampedBuildIdAssignmentRule, kw: T.untyped).returns(String) }
1925
+ def self.encode_json(msg, **kw)
1926
+ end
1927
+
1928
+ sig { returns(::Google::Protobuf::Descriptor) }
1929
+ def self.descriptor
1930
+ end
1931
+ end
1932
+
1933
+ class Temporalio::Api::TaskQueue::V1::TimestampedCompatibleBuildIdRedirectRule
1934
+ include ::Google::Protobuf::MessageExts
1935
+ extend ::Google::Protobuf::MessageExts::ClassMethods
1936
+
1937
+ sig do
1938
+ params(
1939
+ rule: T.nilable(Temporalio::Api::TaskQueue::V1::CompatibleBuildIdRedirectRule),
1940
+ create_time: T.nilable(Google::Protobuf::Timestamp)
1941
+ ).void
1942
+ end
1943
+ def initialize(
1944
+ rule: nil,
1945
+ create_time: nil
1946
+ )
1947
+ end
1948
+
1949
+ sig { returns(T.nilable(Temporalio::Api::TaskQueue::V1::CompatibleBuildIdRedirectRule)) }
1950
+ def rule
1951
+ end
1952
+
1953
+ sig { params(value: T.nilable(Temporalio::Api::TaskQueue::V1::CompatibleBuildIdRedirectRule)).void }
1954
+ def rule=(value)
1955
+ end
1956
+
1957
+ sig { void }
1958
+ def clear_rule
1959
+ end
1960
+
1961
+ sig { returns(T.nilable(Google::Protobuf::Timestamp)) }
1962
+ def create_time
1963
+ end
1964
+
1965
+ sig { params(value: T.nilable(Google::Protobuf::Timestamp)).void }
1966
+ def create_time=(value)
1967
+ end
1968
+
1969
+ sig { void }
1970
+ def clear_create_time
1971
+ end
1972
+
1973
+ sig { params(field: String).returns(T.untyped) }
1974
+ def [](field)
1975
+ end
1976
+
1977
+ sig { params(field: String, value: T.untyped).void }
1978
+ def []=(field, value)
1979
+ end
1980
+
1981
+ sig { returns(T::Hash[Symbol, T.untyped]) }
1982
+ def to_h
1983
+ end
1984
+
1985
+ sig { params(str: String).returns(Temporalio::Api::TaskQueue::V1::TimestampedCompatibleBuildIdRedirectRule) }
1986
+ def self.decode(str)
1987
+ end
1988
+
1989
+ sig { params(msg: Temporalio::Api::TaskQueue::V1::TimestampedCompatibleBuildIdRedirectRule).returns(String) }
1990
+ def self.encode(msg)
1991
+ end
1992
+
1993
+ sig { params(str: String, kw: T.untyped).returns(Temporalio::Api::TaskQueue::V1::TimestampedCompatibleBuildIdRedirectRule) }
1994
+ def self.decode_json(str, **kw)
1995
+ end
1996
+
1997
+ sig { params(msg: Temporalio::Api::TaskQueue::V1::TimestampedCompatibleBuildIdRedirectRule, kw: T.untyped).returns(String) }
1998
+ def self.encode_json(msg, **kw)
1999
+ end
2000
+
2001
+ sig { returns(::Google::Protobuf::Descriptor) }
2002
+ def self.descriptor
2003
+ end
2004
+ end
2005
+
2006
+ class Temporalio::Api::TaskQueue::V1::PollerGroupInfo
2007
+ include ::Google::Protobuf::MessageExts
2008
+ extend ::Google::Protobuf::MessageExts::ClassMethods
2009
+
2010
+ sig do
2011
+ params(
2012
+ id: T.nilable(String),
2013
+ weight: T.nilable(Float)
2014
+ ).void
2015
+ end
2016
+ def initialize(
2017
+ id: "",
2018
+ weight: 0.0
2019
+ )
2020
+ end
2021
+
2022
+ sig { returns(String) }
2023
+ def id
2024
+ end
2025
+
2026
+ sig { params(value: String).void }
2027
+ def id=(value)
2028
+ end
2029
+
2030
+ sig { void }
2031
+ def clear_id
2032
+ end
2033
+
2034
+ sig { returns(Float) }
2035
+ def weight
2036
+ end
2037
+
2038
+ sig { params(value: Float).void }
2039
+ def weight=(value)
2040
+ end
2041
+
2042
+ sig { void }
2043
+ def clear_weight
2044
+ end
2045
+
2046
+ sig { params(field: String).returns(T.untyped) }
2047
+ def [](field)
2048
+ end
2049
+
2050
+ sig { params(field: String, value: T.untyped).void }
2051
+ def []=(field, value)
2052
+ end
2053
+
2054
+ sig { returns(T::Hash[Symbol, T.untyped]) }
2055
+ def to_h
2056
+ end
2057
+
2058
+ sig { params(str: String).returns(Temporalio::Api::TaskQueue::V1::PollerGroupInfo) }
2059
+ def self.decode(str)
2060
+ end
2061
+
2062
+ sig { params(msg: Temporalio::Api::TaskQueue::V1::PollerGroupInfo).returns(String) }
2063
+ def self.encode(msg)
2064
+ end
2065
+
2066
+ sig { params(str: String, kw: T.untyped).returns(Temporalio::Api::TaskQueue::V1::PollerGroupInfo) }
2067
+ def self.decode_json(str, **kw)
2068
+ end
2069
+
2070
+ sig { params(msg: Temporalio::Api::TaskQueue::V1::PollerGroupInfo, kw: T.untyped).returns(String) }
2071
+ def self.encode_json(msg, **kw)
2072
+ end
2073
+
2074
+ sig { returns(::Google::Protobuf::Descriptor) }
2075
+ def self.descriptor
2076
+ end
2077
+ end
2078
+
2079
+ # A versioned snapshot of the poller groups the client should use for future polls to a task
2080
+ # queue. The version is monotonically increasing so that a client can ignore a snapshot that is
2081
+ # older than the one it has already applied.
2082
+ class Temporalio::Api::TaskQueue::V1::PollerGroupsInfo
2083
+ include ::Google::Protobuf::MessageExts
2084
+ extend ::Google::Protobuf::MessageExts::ClassMethods
2085
+
2086
+ sig do
2087
+ params(
2088
+ version: T.nilable(Integer),
2089
+ poller_groups: T.nilable(T::Array[T.nilable(Temporalio::Api::TaskQueue::V1::PollerGroupInfo)])
2090
+ ).void
2091
+ end
2092
+ def initialize(
2093
+ version: 0,
2094
+ poller_groups: []
2095
+ )
2096
+ end
2097
+
2098
+ # Monotonically increasing version of this snapshot. A client should ignore any snapshot whose
2099
+ # version is not greater than the one it last applied.
2100
+ sig { returns(Integer) }
2101
+ def version
2102
+ end
2103
+
2104
+ # Monotonically increasing version of this snapshot. A client should ignore any snapshot whose
2105
+ # version is not greater than the one it last applied.
2106
+ sig { params(value: Integer).void }
2107
+ def version=(value)
2108
+ end
2109
+
2110
+ # Monotonically increasing version of this snapshot. A client should ignore any snapshot whose
2111
+ # version is not greater than the one it last applied.
2112
+ sig { void }
2113
+ def clear_version
2114
+ end
2115
+
2116
+ # The weighted list of poller groups the client should use for future polls to this task queue.
2117
+ sig { returns(T::Array[T.nilable(Temporalio::Api::TaskQueue::V1::PollerGroupInfo)]) }
2118
+ def poller_groups
2119
+ end
2120
+
2121
+ # The weighted list of poller groups the client should use for future polls to this task queue.
2122
+ sig { params(value: ::Google::Protobuf::RepeatedField).void }
2123
+ def poller_groups=(value)
2124
+ end
2125
+
2126
+ # The weighted list of poller groups the client should use for future polls to this task queue.
2127
+ sig { void }
2128
+ def clear_poller_groups
2129
+ end
2130
+
2131
+ sig { params(field: String).returns(T.untyped) }
2132
+ def [](field)
2133
+ end
2134
+
2135
+ sig { params(field: String, value: T.untyped).void }
2136
+ def []=(field, value)
2137
+ end
2138
+
2139
+ sig { returns(T::Hash[Symbol, T.untyped]) }
2140
+ def to_h
2141
+ end
2142
+
2143
+ sig { params(str: String).returns(Temporalio::Api::TaskQueue::V1::PollerGroupsInfo) }
2144
+ def self.decode(str)
2145
+ end
2146
+
2147
+ sig { params(msg: Temporalio::Api::TaskQueue::V1::PollerGroupsInfo).returns(String) }
2148
+ def self.encode(msg)
2149
+ end
2150
+
2151
+ sig { params(str: String, kw: T.untyped).returns(Temporalio::Api::TaskQueue::V1::PollerGroupsInfo) }
2152
+ def self.decode_json(str, **kw)
2153
+ end
2154
+
2155
+ sig { params(msg: Temporalio::Api::TaskQueue::V1::PollerGroupsInfo, kw: T.untyped).returns(String) }
2156
+ def self.encode_json(msg, **kw)
2157
+ end
2158
+
2159
+ sig { returns(::Google::Protobuf::Descriptor) }
2160
+ def self.descriptor
2161
+ end
2162
+ end
2163
+
2164
+ # Attached to task responses to give hints to the SDK about how it may adjust its number of
2165
+ # pollers.
2166
+ class Temporalio::Api::TaskQueue::V1::PollerScalingDecision
2167
+ include ::Google::Protobuf::MessageExts
2168
+ extend ::Google::Protobuf::MessageExts::ClassMethods
2169
+
2170
+ sig do
2171
+ params(
2172
+ poll_request_delta_suggestion: T.nilable(Integer)
2173
+ ).void
2174
+ end
2175
+ def initialize(
2176
+ poll_request_delta_suggestion: 0
2177
+ )
2178
+ end
2179
+
2180
+ # How many poll requests to suggest should be added or removed, if any. As of now, server only
2181
+ # scales up or down by 1. However, SDKs should allow for other values (while staying within
2182
+ # defined min/max).
2183
+ #
2184
+ # The SDK is free to ignore this suggestion, EX: making more polls would not make sense because
2185
+ # all slots are already occupied.
2186
+ sig { returns(Integer) }
2187
+ def poll_request_delta_suggestion
2188
+ end
2189
+
2190
+ # How many poll requests to suggest should be added or removed, if any. As of now, server only
2191
+ # scales up or down by 1. However, SDKs should allow for other values (while staying within
2192
+ # defined min/max).
2193
+ #
2194
+ # The SDK is free to ignore this suggestion, EX: making more polls would not make sense because
2195
+ # all slots are already occupied.
2196
+ sig { params(value: Integer).void }
2197
+ def poll_request_delta_suggestion=(value)
2198
+ end
2199
+
2200
+ # How many poll requests to suggest should be added or removed, if any. As of now, server only
2201
+ # scales up or down by 1. However, SDKs should allow for other values (while staying within
2202
+ # defined min/max).
2203
+ #
2204
+ # The SDK is free to ignore this suggestion, EX: making more polls would not make sense because
2205
+ # all slots are already occupied.
2206
+ sig { void }
2207
+ def clear_poll_request_delta_suggestion
2208
+ end
2209
+
2210
+ sig { params(field: String).returns(T.untyped) }
2211
+ def [](field)
2212
+ end
2213
+
2214
+ sig { params(field: String, value: T.untyped).void }
2215
+ def []=(field, value)
2216
+ end
2217
+
2218
+ sig { returns(T::Hash[Symbol, T.untyped]) }
2219
+ def to_h
2220
+ end
2221
+
2222
+ sig { params(str: String).returns(Temporalio::Api::TaskQueue::V1::PollerScalingDecision) }
2223
+ def self.decode(str)
2224
+ end
2225
+
2226
+ sig { params(msg: Temporalio::Api::TaskQueue::V1::PollerScalingDecision).returns(String) }
2227
+ def self.encode(msg)
2228
+ end
2229
+
2230
+ sig { params(str: String, kw: T.untyped).returns(Temporalio::Api::TaskQueue::V1::PollerScalingDecision) }
2231
+ def self.decode_json(str, **kw)
2232
+ end
2233
+
2234
+ sig { params(msg: Temporalio::Api::TaskQueue::V1::PollerScalingDecision, kw: T.untyped).returns(String) }
2235
+ def self.encode_json(msg, **kw)
2236
+ end
2237
+
2238
+ sig { returns(::Google::Protobuf::Descriptor) }
2239
+ def self.descriptor
2240
+ end
2241
+ end
2242
+
2243
+ class Temporalio::Api::TaskQueue::V1::RateLimit
2244
+ include ::Google::Protobuf::MessageExts
2245
+ extend ::Google::Protobuf::MessageExts::ClassMethods
2246
+
2247
+ sig do
2248
+ params(
2249
+ requests_per_second: T.nilable(Float)
2250
+ ).void
2251
+ end
2252
+ def initialize(
2253
+ requests_per_second: 0.0
2254
+ )
2255
+ end
2256
+
2257
+ # Zero is a valid rate limit.
2258
+ sig { returns(Float) }
2259
+ def requests_per_second
2260
+ end
2261
+
2262
+ # Zero is a valid rate limit.
2263
+ sig { params(value: Float).void }
2264
+ def requests_per_second=(value)
2265
+ end
2266
+
2267
+ # Zero is a valid rate limit.
2268
+ sig { void }
2269
+ def clear_requests_per_second
2270
+ end
2271
+
2272
+ sig { params(field: String).returns(T.untyped) }
2273
+ def [](field)
2274
+ end
2275
+
2276
+ sig { params(field: String, value: T.untyped).void }
2277
+ def []=(field, value)
2278
+ end
2279
+
2280
+ sig { returns(T::Hash[Symbol, T.untyped]) }
2281
+ def to_h
2282
+ end
2283
+
2284
+ sig { params(str: String).returns(Temporalio::Api::TaskQueue::V1::RateLimit) }
2285
+ def self.decode(str)
2286
+ end
2287
+
2288
+ sig { params(msg: Temporalio::Api::TaskQueue::V1::RateLimit).returns(String) }
2289
+ def self.encode(msg)
2290
+ end
2291
+
2292
+ sig { params(str: String, kw: T.untyped).returns(Temporalio::Api::TaskQueue::V1::RateLimit) }
2293
+ def self.decode_json(str, **kw)
2294
+ end
2295
+
2296
+ sig { params(msg: Temporalio::Api::TaskQueue::V1::RateLimit, kw: T.untyped).returns(String) }
2297
+ def self.encode_json(msg, **kw)
2298
+ end
2299
+
2300
+ sig { returns(::Google::Protobuf::Descriptor) }
2301
+ def self.descriptor
2302
+ end
2303
+ end
2304
+
2305
+ class Temporalio::Api::TaskQueue::V1::ConfigMetadata
2306
+ include ::Google::Protobuf::MessageExts
2307
+ extend ::Google::Protobuf::MessageExts::ClassMethods
2308
+
2309
+ sig do
2310
+ params(
2311
+ reason: T.nilable(String),
2312
+ update_identity: T.nilable(String),
2313
+ update_time: T.nilable(Google::Protobuf::Timestamp)
2314
+ ).void
2315
+ end
2316
+ def initialize(
2317
+ reason: "",
2318
+ update_identity: "",
2319
+ update_time: nil
2320
+ )
2321
+ end
2322
+
2323
+ # Reason for why the config was set.
2324
+ sig { returns(String) }
2325
+ def reason
2326
+ end
2327
+
2328
+ # Reason for why the config was set.
2329
+ sig { params(value: String).void }
2330
+ def reason=(value)
2331
+ end
2332
+
2333
+ # Reason for why the config was set.
2334
+ sig { void }
2335
+ def clear_reason
2336
+ end
2337
+
2338
+ # Identity of the last updater.
2339
+ # Set by the request's identity field.
2340
+ sig { returns(String) }
2341
+ def update_identity
2342
+ end
2343
+
2344
+ # Identity of the last updater.
2345
+ # Set by the request's identity field.
2346
+ sig { params(value: String).void }
2347
+ def update_identity=(value)
2348
+ end
2349
+
2350
+ # Identity of the last updater.
2351
+ # Set by the request's identity field.
2352
+ sig { void }
2353
+ def clear_update_identity
2354
+ end
2355
+
2356
+ # Time of the last update.
2357
+ sig { returns(T.nilable(Google::Protobuf::Timestamp)) }
2358
+ def update_time
2359
+ end
2360
+
2361
+ # Time of the last update.
2362
+ sig { params(value: T.nilable(Google::Protobuf::Timestamp)).void }
2363
+ def update_time=(value)
2364
+ end
2365
+
2366
+ # Time of the last update.
2367
+ sig { void }
2368
+ def clear_update_time
2369
+ end
2370
+
2371
+ sig { params(field: String).returns(T.untyped) }
2372
+ def [](field)
2373
+ end
2374
+
2375
+ sig { params(field: String, value: T.untyped).void }
2376
+ def []=(field, value)
2377
+ end
2378
+
2379
+ sig { returns(T::Hash[Symbol, T.untyped]) }
2380
+ def to_h
2381
+ end
2382
+
2383
+ sig { params(str: String).returns(Temporalio::Api::TaskQueue::V1::ConfigMetadata) }
2384
+ def self.decode(str)
2385
+ end
2386
+
2387
+ sig { params(msg: Temporalio::Api::TaskQueue::V1::ConfigMetadata).returns(String) }
2388
+ def self.encode(msg)
2389
+ end
2390
+
2391
+ sig { params(str: String, kw: T.untyped).returns(Temporalio::Api::TaskQueue::V1::ConfigMetadata) }
2392
+ def self.decode_json(str, **kw)
2393
+ end
2394
+
2395
+ sig { params(msg: Temporalio::Api::TaskQueue::V1::ConfigMetadata, kw: T.untyped).returns(String) }
2396
+ def self.encode_json(msg, **kw)
2397
+ end
2398
+
2399
+ sig { returns(::Google::Protobuf::Descriptor) }
2400
+ def self.descriptor
2401
+ end
2402
+ end
2403
+
2404
+ class Temporalio::Api::TaskQueue::V1::RateLimitConfig
2405
+ include ::Google::Protobuf::MessageExts
2406
+ extend ::Google::Protobuf::MessageExts::ClassMethods
2407
+
2408
+ sig do
2409
+ params(
2410
+ rate_limit: T.nilable(Temporalio::Api::TaskQueue::V1::RateLimit),
2411
+ metadata: T.nilable(Temporalio::Api::TaskQueue::V1::ConfigMetadata)
2412
+ ).void
2413
+ end
2414
+ def initialize(
2415
+ rate_limit: nil,
2416
+ metadata: nil
2417
+ )
2418
+ end
2419
+
2420
+ sig { returns(T.nilable(Temporalio::Api::TaskQueue::V1::RateLimit)) }
2421
+ def rate_limit
2422
+ end
2423
+
2424
+ sig { params(value: T.nilable(Temporalio::Api::TaskQueue::V1::RateLimit)).void }
2425
+ def rate_limit=(value)
2426
+ end
2427
+
2428
+ sig { void }
2429
+ def clear_rate_limit
2430
+ end
2431
+
2432
+ sig { returns(T.nilable(Temporalio::Api::TaskQueue::V1::ConfigMetadata)) }
2433
+ def metadata
2434
+ end
2435
+
2436
+ sig { params(value: T.nilable(Temporalio::Api::TaskQueue::V1::ConfigMetadata)).void }
2437
+ def metadata=(value)
2438
+ end
2439
+
2440
+ sig { void }
2441
+ def clear_metadata
2442
+ end
2443
+
2444
+ sig { params(field: String).returns(T.untyped) }
2445
+ def [](field)
2446
+ end
2447
+
2448
+ sig { params(field: String, value: T.untyped).void }
2449
+ def []=(field, value)
2450
+ end
2451
+
2452
+ sig { returns(T::Hash[Symbol, T.untyped]) }
2453
+ def to_h
2454
+ end
2455
+
2456
+ sig { params(str: String).returns(Temporalio::Api::TaskQueue::V1::RateLimitConfig) }
2457
+ def self.decode(str)
2458
+ end
2459
+
2460
+ sig { params(msg: Temporalio::Api::TaskQueue::V1::RateLimitConfig).returns(String) }
2461
+ def self.encode(msg)
2462
+ end
2463
+
2464
+ sig { params(str: String, kw: T.untyped).returns(Temporalio::Api::TaskQueue::V1::RateLimitConfig) }
2465
+ def self.decode_json(str, **kw)
2466
+ end
2467
+
2468
+ sig { params(msg: Temporalio::Api::TaskQueue::V1::RateLimitConfig, kw: T.untyped).returns(String) }
2469
+ def self.encode_json(msg, **kw)
2470
+ end
2471
+
2472
+ sig { returns(::Google::Protobuf::Descriptor) }
2473
+ def self.descriptor
2474
+ end
2475
+ end
2476
+
2477
+ class Temporalio::Api::TaskQueue::V1::TaskQueueConfig
2478
+ include ::Google::Protobuf::MessageExts
2479
+ extend ::Google::Protobuf::MessageExts::ClassMethods
2480
+
2481
+ sig do
2482
+ params(
2483
+ queue_rate_limit: T.nilable(Temporalio::Api::TaskQueue::V1::RateLimitConfig),
2484
+ fairness_keys_rate_limit_default: T.nilable(Temporalio::Api::TaskQueue::V1::RateLimitConfig),
2485
+ fairness_weight_overrides: T.nilable(T::Hash[String, Float])
2486
+ ).void
2487
+ end
2488
+ def initialize(
2489
+ queue_rate_limit: nil,
2490
+ fairness_keys_rate_limit_default: nil,
2491
+ fairness_weight_overrides: ::Google::Protobuf::Map.new(:string, :float)
2492
+ )
2493
+ end
2494
+
2495
+ # Unless modified, this is the system-defined rate limit.
2496
+ sig { returns(T.nilable(Temporalio::Api::TaskQueue::V1::RateLimitConfig)) }
2497
+ def queue_rate_limit
2498
+ end
2499
+
2500
+ # Unless modified, this is the system-defined rate limit.
2501
+ sig { params(value: T.nilable(Temporalio::Api::TaskQueue::V1::RateLimitConfig)).void }
2502
+ def queue_rate_limit=(value)
2503
+ end
2504
+
2505
+ # Unless modified, this is the system-defined rate limit.
2506
+ sig { void }
2507
+ def clear_queue_rate_limit
2508
+ end
2509
+
2510
+ # If set, each individual fairness key will be limited to this rate, scaled by the weight of the fairness key.
2511
+ sig { returns(T.nilable(Temporalio::Api::TaskQueue::V1::RateLimitConfig)) }
2512
+ def fairness_keys_rate_limit_default
2513
+ end
2514
+
2515
+ # If set, each individual fairness key will be limited to this rate, scaled by the weight of the fairness key.
2516
+ sig { params(value: T.nilable(Temporalio::Api::TaskQueue::V1::RateLimitConfig)).void }
2517
+ def fairness_keys_rate_limit_default=(value)
2518
+ end
2519
+
2520
+ # If set, each individual fairness key will be limited to this rate, scaled by the weight of the fairness key.
2521
+ sig { void }
2522
+ def clear_fairness_keys_rate_limit_default
2523
+ end
2524
+
2525
+ # If set, overrides the fairness weights for the corresponding fairness keys.
2526
+ sig { returns(T::Hash[String, Float]) }
2527
+ def fairness_weight_overrides
2528
+ end
2529
+
2530
+ # If set, overrides the fairness weights for the corresponding fairness keys.
2531
+ sig { params(value: ::Google::Protobuf::Map).void }
2532
+ def fairness_weight_overrides=(value)
2533
+ end
2534
+
2535
+ # If set, overrides the fairness weights for the corresponding fairness keys.
2536
+ sig { void }
2537
+ def clear_fairness_weight_overrides
2538
+ end
2539
+
2540
+ sig { params(field: String).returns(T.untyped) }
2541
+ def [](field)
2542
+ end
2543
+
2544
+ sig { params(field: String, value: T.untyped).void }
2545
+ def []=(field, value)
2546
+ end
2547
+
2548
+ sig { returns(T::Hash[Symbol, T.untyped]) }
2549
+ def to_h
2550
+ end
2551
+
2552
+ sig { params(str: String).returns(Temporalio::Api::TaskQueue::V1::TaskQueueConfig) }
2553
+ def self.decode(str)
2554
+ end
2555
+
2556
+ sig { params(msg: Temporalio::Api::TaskQueue::V1::TaskQueueConfig).returns(String) }
2557
+ def self.encode(msg)
2558
+ end
2559
+
2560
+ sig { params(str: String, kw: T.untyped).returns(Temporalio::Api::TaskQueue::V1::TaskQueueConfig) }
2561
+ def self.decode_json(str, **kw)
2562
+ end
2563
+
2564
+ sig { params(msg: Temporalio::Api::TaskQueue::V1::TaskQueueConfig, kw: T.untyped).returns(String) }
2565
+ def self.encode_json(msg, **kw)
2566
+ end
2567
+
2568
+ sig { returns(::Google::Protobuf::Descriptor) }
2569
+ def self.descriptor
2570
+ end
2571
+ end