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