hatchet-sdk 1.16.5__tar.gz → 1.17.0__tar.gz

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.

Potentially problematic release.


This version of hatchet-sdk might be problematic. Click here for more details.

Files changed (547) hide show
  1. {hatchet_sdk-1.16.5 → hatchet_sdk-1.17.0}/PKG-INFO +1 -2
  2. {hatchet_sdk-1.16.5 → hatchet_sdk-1.17.0}/hatchet_sdk/__init__.py +2 -1
  3. {hatchet_sdk-1.16.5 → hatchet_sdk-1.17.0}/hatchet_sdk/clients/events.py +5 -2
  4. {hatchet_sdk-1.16.5 → hatchet_sdk-1.17.0}/hatchet_sdk/context/context.py +31 -2
  5. {hatchet_sdk-1.16.5 → hatchet_sdk-1.17.0}/hatchet_sdk/exceptions.py +70 -5
  6. {hatchet_sdk-1.16.5 → hatchet_sdk-1.17.0}/hatchet_sdk/hatchet.py +29 -11
  7. {hatchet_sdk-1.16.5 → hatchet_sdk-1.17.0}/hatchet_sdk/rate_limit.py +1 -21
  8. {hatchet_sdk-1.16.5 → hatchet_sdk-1.17.0}/hatchet_sdk/runnables/task.py +109 -19
  9. {hatchet_sdk-1.16.5 → hatchet_sdk-1.17.0}/hatchet_sdk/runnables/workflow.py +23 -8
  10. {hatchet_sdk-1.16.5 → hatchet_sdk-1.17.0}/hatchet_sdk/utils/typing.py +27 -0
  11. {hatchet_sdk-1.16.5 → hatchet_sdk-1.17.0}/hatchet_sdk/worker/runner/runner.py +27 -19
  12. {hatchet_sdk-1.16.5 → hatchet_sdk-1.17.0}/hatchet_sdk/worker/runner/utils/capture_logs.py +24 -11
  13. {hatchet_sdk-1.16.5 → hatchet_sdk-1.17.0}/pyproject.toml +1 -2
  14. {hatchet_sdk-1.16.5 → hatchet_sdk-1.17.0}/README.md +0 -0
  15. {hatchet_sdk-1.16.5 → hatchet_sdk-1.17.0}/hatchet_sdk/client.py +0 -0
  16. {hatchet_sdk-1.16.5 → hatchet_sdk-1.17.0}/hatchet_sdk/clients/admin.py +0 -0
  17. {hatchet_sdk-1.16.5 → hatchet_sdk-1.17.0}/hatchet_sdk/clients/dispatcher/action_listener.py +0 -0
  18. {hatchet_sdk-1.16.5 → hatchet_sdk-1.17.0}/hatchet_sdk/clients/dispatcher/dispatcher.py +0 -0
  19. {hatchet_sdk-1.16.5 → hatchet_sdk-1.17.0}/hatchet_sdk/clients/event_ts.py +0 -0
  20. {hatchet_sdk-1.16.5 → hatchet_sdk-1.17.0}/hatchet_sdk/clients/listeners/durable_event_listener.py +0 -0
  21. {hatchet_sdk-1.16.5 → hatchet_sdk-1.17.0}/hatchet_sdk/clients/listeners/pooled_listener.py +0 -0
  22. {hatchet_sdk-1.16.5 → hatchet_sdk-1.17.0}/hatchet_sdk/clients/listeners/run_event_listener.py +0 -0
  23. {hatchet_sdk-1.16.5 → hatchet_sdk-1.17.0}/hatchet_sdk/clients/listeners/workflow_listener.py +0 -0
  24. {hatchet_sdk-1.16.5 → hatchet_sdk-1.17.0}/hatchet_sdk/clients/rest/__init__.py +0 -0
  25. {hatchet_sdk-1.16.5 → hatchet_sdk-1.17.0}/hatchet_sdk/clients/rest/api/__init__.py +0 -0
  26. {hatchet_sdk-1.16.5 → hatchet_sdk-1.17.0}/hatchet_sdk/clients/rest/api/api_token_api.py +0 -0
  27. {hatchet_sdk-1.16.5 → hatchet_sdk-1.17.0}/hatchet_sdk/clients/rest/api/cel_api.py +0 -0
  28. {hatchet_sdk-1.16.5 → hatchet_sdk-1.17.0}/hatchet_sdk/clients/rest/api/default_api.py +0 -0
  29. {hatchet_sdk-1.16.5 → hatchet_sdk-1.17.0}/hatchet_sdk/clients/rest/api/event_api.py +0 -0
  30. {hatchet_sdk-1.16.5 → hatchet_sdk-1.17.0}/hatchet_sdk/clients/rest/api/filter_api.py +0 -0
  31. {hatchet_sdk-1.16.5 → hatchet_sdk-1.17.0}/hatchet_sdk/clients/rest/api/github_api.py +0 -0
  32. {hatchet_sdk-1.16.5 → hatchet_sdk-1.17.0}/hatchet_sdk/clients/rest/api/healthcheck_api.py +0 -0
  33. {hatchet_sdk-1.16.5 → hatchet_sdk-1.17.0}/hatchet_sdk/clients/rest/api/log_api.py +0 -0
  34. {hatchet_sdk-1.16.5 → hatchet_sdk-1.17.0}/hatchet_sdk/clients/rest/api/metadata_api.py +0 -0
  35. {hatchet_sdk-1.16.5 → hatchet_sdk-1.17.0}/hatchet_sdk/clients/rest/api/rate_limits_api.py +0 -0
  36. {hatchet_sdk-1.16.5 → hatchet_sdk-1.17.0}/hatchet_sdk/clients/rest/api/slack_api.py +0 -0
  37. {hatchet_sdk-1.16.5 → hatchet_sdk-1.17.0}/hatchet_sdk/clients/rest/api/sns_api.py +0 -0
  38. {hatchet_sdk-1.16.5 → hatchet_sdk-1.17.0}/hatchet_sdk/clients/rest/api/step_run_api.py +0 -0
  39. {hatchet_sdk-1.16.5 → hatchet_sdk-1.17.0}/hatchet_sdk/clients/rest/api/task_api.py +0 -0
  40. {hatchet_sdk-1.16.5 → hatchet_sdk-1.17.0}/hatchet_sdk/clients/rest/api/tenant_api.py +0 -0
  41. {hatchet_sdk-1.16.5 → hatchet_sdk-1.17.0}/hatchet_sdk/clients/rest/api/user_api.py +0 -0
  42. {hatchet_sdk-1.16.5 → hatchet_sdk-1.17.0}/hatchet_sdk/clients/rest/api/webhook_api.py +0 -0
  43. {hatchet_sdk-1.16.5 → hatchet_sdk-1.17.0}/hatchet_sdk/clients/rest/api/worker_api.py +0 -0
  44. {hatchet_sdk-1.16.5 → hatchet_sdk-1.17.0}/hatchet_sdk/clients/rest/api/workflow_api.py +0 -0
  45. {hatchet_sdk-1.16.5 → hatchet_sdk-1.17.0}/hatchet_sdk/clients/rest/api/workflow_run_api.py +0 -0
  46. {hatchet_sdk-1.16.5 → hatchet_sdk-1.17.0}/hatchet_sdk/clients/rest/api/workflow_runs_api.py +0 -0
  47. {hatchet_sdk-1.16.5 → hatchet_sdk-1.17.0}/hatchet_sdk/clients/rest/api_client.py +0 -0
  48. {hatchet_sdk-1.16.5 → hatchet_sdk-1.17.0}/hatchet_sdk/clients/rest/api_response.py +0 -0
  49. {hatchet_sdk-1.16.5 → hatchet_sdk-1.17.0}/hatchet_sdk/clients/rest/configuration.py +0 -0
  50. {hatchet_sdk-1.16.5 → hatchet_sdk-1.17.0}/hatchet_sdk/clients/rest/exceptions.py +0 -0
  51. {hatchet_sdk-1.16.5 → hatchet_sdk-1.17.0}/hatchet_sdk/clients/rest/models/__init__.py +0 -0
  52. {hatchet_sdk-1.16.5 → hatchet_sdk-1.17.0}/hatchet_sdk/clients/rest/models/accept_invite_request.py +0 -0
  53. {hatchet_sdk-1.16.5 → hatchet_sdk-1.17.0}/hatchet_sdk/clients/rest/models/api_error.py +0 -0
  54. {hatchet_sdk-1.16.5 → hatchet_sdk-1.17.0}/hatchet_sdk/clients/rest/models/api_errors.py +0 -0
  55. {hatchet_sdk-1.16.5 → hatchet_sdk-1.17.0}/hatchet_sdk/clients/rest/models/api_meta.py +0 -0
  56. {hatchet_sdk-1.16.5 → hatchet_sdk-1.17.0}/hatchet_sdk/clients/rest/models/api_meta_auth.py +0 -0
  57. {hatchet_sdk-1.16.5 → hatchet_sdk-1.17.0}/hatchet_sdk/clients/rest/models/api_meta_integration.py +0 -0
  58. {hatchet_sdk-1.16.5 → hatchet_sdk-1.17.0}/hatchet_sdk/clients/rest/models/api_meta_posthog.py +0 -0
  59. {hatchet_sdk-1.16.5 → hatchet_sdk-1.17.0}/hatchet_sdk/clients/rest/models/api_resource_meta.py +0 -0
  60. {hatchet_sdk-1.16.5 → hatchet_sdk-1.17.0}/hatchet_sdk/clients/rest/models/api_token.py +0 -0
  61. {hatchet_sdk-1.16.5 → hatchet_sdk-1.17.0}/hatchet_sdk/clients/rest/models/bulk_create_event_request.py +0 -0
  62. {hatchet_sdk-1.16.5 → hatchet_sdk-1.17.0}/hatchet_sdk/clients/rest/models/bulk_create_event_response.py +0 -0
  63. {hatchet_sdk-1.16.5 → hatchet_sdk-1.17.0}/hatchet_sdk/clients/rest/models/cancel_event_request.py +0 -0
  64. {hatchet_sdk-1.16.5 → hatchet_sdk-1.17.0}/hatchet_sdk/clients/rest/models/cancel_step_run_request.py +0 -0
  65. {hatchet_sdk-1.16.5 → hatchet_sdk-1.17.0}/hatchet_sdk/clients/rest/models/concurrency_limit_strategy.py +0 -0
  66. {hatchet_sdk-1.16.5 → hatchet_sdk-1.17.0}/hatchet_sdk/clients/rest/models/create_api_token_request.py +0 -0
  67. {hatchet_sdk-1.16.5 → hatchet_sdk-1.17.0}/hatchet_sdk/clients/rest/models/create_api_token_response.py +0 -0
  68. {hatchet_sdk-1.16.5 → hatchet_sdk-1.17.0}/hatchet_sdk/clients/rest/models/create_cron_workflow_trigger_request.py +0 -0
  69. {hatchet_sdk-1.16.5 → hatchet_sdk-1.17.0}/hatchet_sdk/clients/rest/models/create_event_request.py +0 -0
  70. {hatchet_sdk-1.16.5 → hatchet_sdk-1.17.0}/hatchet_sdk/clients/rest/models/create_pull_request_from_step_run.py +0 -0
  71. {hatchet_sdk-1.16.5 → hatchet_sdk-1.17.0}/hatchet_sdk/clients/rest/models/create_sns_integration_request.py +0 -0
  72. {hatchet_sdk-1.16.5 → hatchet_sdk-1.17.0}/hatchet_sdk/clients/rest/models/create_tenant_alert_email_group_request.py +0 -0
  73. {hatchet_sdk-1.16.5 → hatchet_sdk-1.17.0}/hatchet_sdk/clients/rest/models/create_tenant_invite_request.py +0 -0
  74. {hatchet_sdk-1.16.5 → hatchet_sdk-1.17.0}/hatchet_sdk/clients/rest/models/create_tenant_request.py +0 -0
  75. {hatchet_sdk-1.16.5 → hatchet_sdk-1.17.0}/hatchet_sdk/clients/rest/models/cron_workflows.py +0 -0
  76. {hatchet_sdk-1.16.5 → hatchet_sdk-1.17.0}/hatchet_sdk/clients/rest/models/cron_workflows_list.py +0 -0
  77. {hatchet_sdk-1.16.5 → hatchet_sdk-1.17.0}/hatchet_sdk/clients/rest/models/cron_workflows_method.py +0 -0
  78. {hatchet_sdk-1.16.5 → hatchet_sdk-1.17.0}/hatchet_sdk/clients/rest/models/cron_workflows_order_by_field.py +0 -0
  79. {hatchet_sdk-1.16.5 → hatchet_sdk-1.17.0}/hatchet_sdk/clients/rest/models/event.py +0 -0
  80. {hatchet_sdk-1.16.5 → hatchet_sdk-1.17.0}/hatchet_sdk/clients/rest/models/event_data.py +0 -0
  81. {hatchet_sdk-1.16.5 → hatchet_sdk-1.17.0}/hatchet_sdk/clients/rest/models/event_key_list.py +0 -0
  82. {hatchet_sdk-1.16.5 → hatchet_sdk-1.17.0}/hatchet_sdk/clients/rest/models/event_list.py +0 -0
  83. {hatchet_sdk-1.16.5 → hatchet_sdk-1.17.0}/hatchet_sdk/clients/rest/models/event_order_by_direction.py +0 -0
  84. {hatchet_sdk-1.16.5 → hatchet_sdk-1.17.0}/hatchet_sdk/clients/rest/models/event_order_by_field.py +0 -0
  85. {hatchet_sdk-1.16.5 → hatchet_sdk-1.17.0}/hatchet_sdk/clients/rest/models/event_update_cancel200_response.py +0 -0
  86. {hatchet_sdk-1.16.5 → hatchet_sdk-1.17.0}/hatchet_sdk/clients/rest/models/event_workflow_run_summary.py +0 -0
  87. {hatchet_sdk-1.16.5 → hatchet_sdk-1.17.0}/hatchet_sdk/clients/rest/models/events.py +0 -0
  88. {hatchet_sdk-1.16.5 → hatchet_sdk-1.17.0}/hatchet_sdk/clients/rest/models/get_step_run_diff_response.py +0 -0
  89. {hatchet_sdk-1.16.5 → hatchet_sdk-1.17.0}/hatchet_sdk/clients/rest/models/github_app_installation.py +0 -0
  90. {hatchet_sdk-1.16.5 → hatchet_sdk-1.17.0}/hatchet_sdk/clients/rest/models/github_branch.py +0 -0
  91. {hatchet_sdk-1.16.5 → hatchet_sdk-1.17.0}/hatchet_sdk/clients/rest/models/github_repo.py +0 -0
  92. {hatchet_sdk-1.16.5 → hatchet_sdk-1.17.0}/hatchet_sdk/clients/rest/models/info_get_version200_response.py +0 -0
  93. {hatchet_sdk-1.16.5 → hatchet_sdk-1.17.0}/hatchet_sdk/clients/rest/models/job.py +0 -0
  94. {hatchet_sdk-1.16.5 → hatchet_sdk-1.17.0}/hatchet_sdk/clients/rest/models/job_run.py +0 -0
  95. {hatchet_sdk-1.16.5 → hatchet_sdk-1.17.0}/hatchet_sdk/clients/rest/models/job_run_status.py +0 -0
  96. {hatchet_sdk-1.16.5 → hatchet_sdk-1.17.0}/hatchet_sdk/clients/rest/models/link_github_repository_request.py +0 -0
  97. {hatchet_sdk-1.16.5 → hatchet_sdk-1.17.0}/hatchet_sdk/clients/rest/models/list_api_tokens_response.py +0 -0
  98. {hatchet_sdk-1.16.5 → hatchet_sdk-1.17.0}/hatchet_sdk/clients/rest/models/list_github_app_installations_response.py +0 -0
  99. {hatchet_sdk-1.16.5 → hatchet_sdk-1.17.0}/hatchet_sdk/clients/rest/models/list_pull_requests_response.py +0 -0
  100. {hatchet_sdk-1.16.5 → hatchet_sdk-1.17.0}/hatchet_sdk/clients/rest/models/list_slack_webhooks.py +0 -0
  101. {hatchet_sdk-1.16.5 → hatchet_sdk-1.17.0}/hatchet_sdk/clients/rest/models/list_sns_integrations.py +0 -0
  102. {hatchet_sdk-1.16.5 → hatchet_sdk-1.17.0}/hatchet_sdk/clients/rest/models/log_line.py +0 -0
  103. {hatchet_sdk-1.16.5 → hatchet_sdk-1.17.0}/hatchet_sdk/clients/rest/models/log_line_level.py +0 -0
  104. {hatchet_sdk-1.16.5 → hatchet_sdk-1.17.0}/hatchet_sdk/clients/rest/models/log_line_list.py +0 -0
  105. {hatchet_sdk-1.16.5 → hatchet_sdk-1.17.0}/hatchet_sdk/clients/rest/models/log_line_order_by_direction.py +0 -0
  106. {hatchet_sdk-1.16.5 → hatchet_sdk-1.17.0}/hatchet_sdk/clients/rest/models/log_line_order_by_field.py +0 -0
  107. {hatchet_sdk-1.16.5 → hatchet_sdk-1.17.0}/hatchet_sdk/clients/rest/models/pagination_response.py +0 -0
  108. {hatchet_sdk-1.16.5 → hatchet_sdk-1.17.0}/hatchet_sdk/clients/rest/models/pull_request.py +0 -0
  109. {hatchet_sdk-1.16.5 → hatchet_sdk-1.17.0}/hatchet_sdk/clients/rest/models/pull_request_state.py +0 -0
  110. {hatchet_sdk-1.16.5 → hatchet_sdk-1.17.0}/hatchet_sdk/clients/rest/models/queue_metrics.py +0 -0
  111. {hatchet_sdk-1.16.5 → hatchet_sdk-1.17.0}/hatchet_sdk/clients/rest/models/rate_limit.py +0 -0
  112. {hatchet_sdk-1.16.5 → hatchet_sdk-1.17.0}/hatchet_sdk/clients/rest/models/rate_limit_list.py +0 -0
  113. {hatchet_sdk-1.16.5 → hatchet_sdk-1.17.0}/hatchet_sdk/clients/rest/models/rate_limit_order_by_direction.py +0 -0
  114. {hatchet_sdk-1.16.5 → hatchet_sdk-1.17.0}/hatchet_sdk/clients/rest/models/rate_limit_order_by_field.py +0 -0
  115. {hatchet_sdk-1.16.5 → hatchet_sdk-1.17.0}/hatchet_sdk/clients/rest/models/recent_step_runs.py +0 -0
  116. {hatchet_sdk-1.16.5 → hatchet_sdk-1.17.0}/hatchet_sdk/clients/rest/models/reject_invite_request.py +0 -0
  117. {hatchet_sdk-1.16.5 → hatchet_sdk-1.17.0}/hatchet_sdk/clients/rest/models/replay_event_request.py +0 -0
  118. {hatchet_sdk-1.16.5 → hatchet_sdk-1.17.0}/hatchet_sdk/clients/rest/models/replay_workflow_runs_request.py +0 -0
  119. {hatchet_sdk-1.16.5 → hatchet_sdk-1.17.0}/hatchet_sdk/clients/rest/models/replay_workflow_runs_response.py +0 -0
  120. {hatchet_sdk-1.16.5 → hatchet_sdk-1.17.0}/hatchet_sdk/clients/rest/models/rerun_step_run_request.py +0 -0
  121. {hatchet_sdk-1.16.5 → hatchet_sdk-1.17.0}/hatchet_sdk/clients/rest/models/schedule_workflow_run_request.py +0 -0
  122. {hatchet_sdk-1.16.5 → hatchet_sdk-1.17.0}/hatchet_sdk/clients/rest/models/scheduled_run_status.py +0 -0
  123. {hatchet_sdk-1.16.5 → hatchet_sdk-1.17.0}/hatchet_sdk/clients/rest/models/scheduled_workflows.py +0 -0
  124. {hatchet_sdk-1.16.5 → hatchet_sdk-1.17.0}/hatchet_sdk/clients/rest/models/scheduled_workflows_list.py +0 -0
  125. {hatchet_sdk-1.16.5 → hatchet_sdk-1.17.0}/hatchet_sdk/clients/rest/models/scheduled_workflows_method.py +0 -0
  126. {hatchet_sdk-1.16.5 → hatchet_sdk-1.17.0}/hatchet_sdk/clients/rest/models/scheduled_workflows_order_by_field.py +0 -0
  127. {hatchet_sdk-1.16.5 → hatchet_sdk-1.17.0}/hatchet_sdk/clients/rest/models/semaphore_slots.py +0 -0
  128. {hatchet_sdk-1.16.5 → hatchet_sdk-1.17.0}/hatchet_sdk/clients/rest/models/slack_webhook.py +0 -0
  129. {hatchet_sdk-1.16.5 → hatchet_sdk-1.17.0}/hatchet_sdk/clients/rest/models/sns_integration.py +0 -0
  130. {hatchet_sdk-1.16.5 → hatchet_sdk-1.17.0}/hatchet_sdk/clients/rest/models/step.py +0 -0
  131. {hatchet_sdk-1.16.5 → hatchet_sdk-1.17.0}/hatchet_sdk/clients/rest/models/step_run.py +0 -0
  132. {hatchet_sdk-1.16.5 → hatchet_sdk-1.17.0}/hatchet_sdk/clients/rest/models/step_run_archive.py +0 -0
  133. {hatchet_sdk-1.16.5 → hatchet_sdk-1.17.0}/hatchet_sdk/clients/rest/models/step_run_archive_list.py +0 -0
  134. {hatchet_sdk-1.16.5 → hatchet_sdk-1.17.0}/hatchet_sdk/clients/rest/models/step_run_diff.py +0 -0
  135. {hatchet_sdk-1.16.5 → hatchet_sdk-1.17.0}/hatchet_sdk/clients/rest/models/step_run_event.py +0 -0
  136. {hatchet_sdk-1.16.5 → hatchet_sdk-1.17.0}/hatchet_sdk/clients/rest/models/step_run_event_list.py +0 -0
  137. {hatchet_sdk-1.16.5 → hatchet_sdk-1.17.0}/hatchet_sdk/clients/rest/models/step_run_event_reason.py +0 -0
  138. {hatchet_sdk-1.16.5 → hatchet_sdk-1.17.0}/hatchet_sdk/clients/rest/models/step_run_event_severity.py +0 -0
  139. {hatchet_sdk-1.16.5 → hatchet_sdk-1.17.0}/hatchet_sdk/clients/rest/models/step_run_status.py +0 -0
  140. {hatchet_sdk-1.16.5 → hatchet_sdk-1.17.0}/hatchet_sdk/clients/rest/models/tenant.py +0 -0
  141. {hatchet_sdk-1.16.5 → hatchet_sdk-1.17.0}/hatchet_sdk/clients/rest/models/tenant_alert_email_group.py +0 -0
  142. {hatchet_sdk-1.16.5 → hatchet_sdk-1.17.0}/hatchet_sdk/clients/rest/models/tenant_alert_email_group_list.py +0 -0
  143. {hatchet_sdk-1.16.5 → hatchet_sdk-1.17.0}/hatchet_sdk/clients/rest/models/tenant_alerting_settings.py +0 -0
  144. {hatchet_sdk-1.16.5 → hatchet_sdk-1.17.0}/hatchet_sdk/clients/rest/models/tenant_invite.py +0 -0
  145. {hatchet_sdk-1.16.5 → hatchet_sdk-1.17.0}/hatchet_sdk/clients/rest/models/tenant_invite_list.py +0 -0
  146. {hatchet_sdk-1.16.5 → hatchet_sdk-1.17.0}/hatchet_sdk/clients/rest/models/tenant_list.py +0 -0
  147. {hatchet_sdk-1.16.5 → hatchet_sdk-1.17.0}/hatchet_sdk/clients/rest/models/tenant_member.py +0 -0
  148. {hatchet_sdk-1.16.5 → hatchet_sdk-1.17.0}/hatchet_sdk/clients/rest/models/tenant_member_list.py +0 -0
  149. {hatchet_sdk-1.16.5 → hatchet_sdk-1.17.0}/hatchet_sdk/clients/rest/models/tenant_member_role.py +0 -0
  150. {hatchet_sdk-1.16.5 → hatchet_sdk-1.17.0}/hatchet_sdk/clients/rest/models/tenant_queue_metrics.py +0 -0
  151. {hatchet_sdk-1.16.5 → hatchet_sdk-1.17.0}/hatchet_sdk/clients/rest/models/tenant_resource.py +0 -0
  152. {hatchet_sdk-1.16.5 → hatchet_sdk-1.17.0}/hatchet_sdk/clients/rest/models/tenant_resource_limit.py +0 -0
  153. {hatchet_sdk-1.16.5 → hatchet_sdk-1.17.0}/hatchet_sdk/clients/rest/models/tenant_resource_policy.py +0 -0
  154. {hatchet_sdk-1.16.5 → hatchet_sdk-1.17.0}/hatchet_sdk/clients/rest/models/tenant_step_run_queue_metrics.py +0 -0
  155. {hatchet_sdk-1.16.5 → hatchet_sdk-1.17.0}/hatchet_sdk/clients/rest/models/tenant_ui_version.py +0 -0
  156. {hatchet_sdk-1.16.5 → hatchet_sdk-1.17.0}/hatchet_sdk/clients/rest/models/tenant_version.py +0 -0
  157. {hatchet_sdk-1.16.5 → hatchet_sdk-1.17.0}/hatchet_sdk/clients/rest/models/trigger_workflow_run_request.py +0 -0
  158. {hatchet_sdk-1.16.5 → hatchet_sdk-1.17.0}/hatchet_sdk/clients/rest/models/update_tenant_alert_email_group_request.py +0 -0
  159. {hatchet_sdk-1.16.5 → hatchet_sdk-1.17.0}/hatchet_sdk/clients/rest/models/update_tenant_invite_request.py +0 -0
  160. {hatchet_sdk-1.16.5 → hatchet_sdk-1.17.0}/hatchet_sdk/clients/rest/models/update_tenant_request.py +0 -0
  161. {hatchet_sdk-1.16.5 → hatchet_sdk-1.17.0}/hatchet_sdk/clients/rest/models/update_worker_request.py +0 -0
  162. {hatchet_sdk-1.16.5 → hatchet_sdk-1.17.0}/hatchet_sdk/clients/rest/models/user.py +0 -0
  163. {hatchet_sdk-1.16.5 → hatchet_sdk-1.17.0}/hatchet_sdk/clients/rest/models/user_change_password_request.py +0 -0
  164. {hatchet_sdk-1.16.5 → hatchet_sdk-1.17.0}/hatchet_sdk/clients/rest/models/user_login_request.py +0 -0
  165. {hatchet_sdk-1.16.5 → hatchet_sdk-1.17.0}/hatchet_sdk/clients/rest/models/user_register_request.py +0 -0
  166. {hatchet_sdk-1.16.5 → hatchet_sdk-1.17.0}/hatchet_sdk/clients/rest/models/user_tenant_memberships_list.py +0 -0
  167. {hatchet_sdk-1.16.5 → hatchet_sdk-1.17.0}/hatchet_sdk/clients/rest/models/user_tenant_public.py +0 -0
  168. {hatchet_sdk-1.16.5 → hatchet_sdk-1.17.0}/hatchet_sdk/clients/rest/models/v1_cancel_task_request.py +0 -0
  169. {hatchet_sdk-1.16.5 → hatchet_sdk-1.17.0}/hatchet_sdk/clients/rest/models/v1_cancelled_tasks.py +0 -0
  170. {hatchet_sdk-1.16.5 → hatchet_sdk-1.17.0}/hatchet_sdk/clients/rest/models/v1_cel_debug_error_response.py +0 -0
  171. {hatchet_sdk-1.16.5 → hatchet_sdk-1.17.0}/hatchet_sdk/clients/rest/models/v1_cel_debug_request.py +0 -0
  172. {hatchet_sdk-1.16.5 → hatchet_sdk-1.17.0}/hatchet_sdk/clients/rest/models/v1_cel_debug_response.py +0 -0
  173. {hatchet_sdk-1.16.5 → hatchet_sdk-1.17.0}/hatchet_sdk/clients/rest/models/v1_cel_debug_response_status.py +0 -0
  174. {hatchet_sdk-1.16.5 → hatchet_sdk-1.17.0}/hatchet_sdk/clients/rest/models/v1_cel_debug_success_response.py +0 -0
  175. {hatchet_sdk-1.16.5 → hatchet_sdk-1.17.0}/hatchet_sdk/clients/rest/models/v1_create_filter_request.py +0 -0
  176. {hatchet_sdk-1.16.5 → hatchet_sdk-1.17.0}/hatchet_sdk/clients/rest/models/v1_create_webhook_request.py +0 -0
  177. {hatchet_sdk-1.16.5 → hatchet_sdk-1.17.0}/hatchet_sdk/clients/rest/models/v1_create_webhook_request_api_key.py +0 -0
  178. {hatchet_sdk-1.16.5 → hatchet_sdk-1.17.0}/hatchet_sdk/clients/rest/models/v1_create_webhook_request_api_key_all_of_auth_type.py +0 -0
  179. {hatchet_sdk-1.16.5 → hatchet_sdk-1.17.0}/hatchet_sdk/clients/rest/models/v1_create_webhook_request_base.py +0 -0
  180. {hatchet_sdk-1.16.5 → hatchet_sdk-1.17.0}/hatchet_sdk/clients/rest/models/v1_create_webhook_request_basic_auth.py +0 -0
  181. {hatchet_sdk-1.16.5 → hatchet_sdk-1.17.0}/hatchet_sdk/clients/rest/models/v1_create_webhook_request_basic_auth_all_of_auth_type.py +0 -0
  182. {hatchet_sdk-1.16.5 → hatchet_sdk-1.17.0}/hatchet_sdk/clients/rest/models/v1_create_webhook_request_hmac.py +0 -0
  183. {hatchet_sdk-1.16.5 → hatchet_sdk-1.17.0}/hatchet_sdk/clients/rest/models/v1_create_webhook_request_hmac_all_of_auth_type.py +0 -0
  184. {hatchet_sdk-1.16.5 → hatchet_sdk-1.17.0}/hatchet_sdk/clients/rest/models/v1_dag_children.py +0 -0
  185. {hatchet_sdk-1.16.5 → hatchet_sdk-1.17.0}/hatchet_sdk/clients/rest/models/v1_event.py +0 -0
  186. {hatchet_sdk-1.16.5 → hatchet_sdk-1.17.0}/hatchet_sdk/clients/rest/models/v1_event_list.py +0 -0
  187. {hatchet_sdk-1.16.5 → hatchet_sdk-1.17.0}/hatchet_sdk/clients/rest/models/v1_event_triggered_run.py +0 -0
  188. {hatchet_sdk-1.16.5 → hatchet_sdk-1.17.0}/hatchet_sdk/clients/rest/models/v1_event_workflow_run_summary.py +0 -0
  189. {hatchet_sdk-1.16.5 → hatchet_sdk-1.17.0}/hatchet_sdk/clients/rest/models/v1_filter.py +0 -0
  190. {hatchet_sdk-1.16.5 → hatchet_sdk-1.17.0}/hatchet_sdk/clients/rest/models/v1_filter_list.py +0 -0
  191. {hatchet_sdk-1.16.5 → hatchet_sdk-1.17.0}/hatchet_sdk/clients/rest/models/v1_log_line.py +0 -0
  192. {hatchet_sdk-1.16.5 → hatchet_sdk-1.17.0}/hatchet_sdk/clients/rest/models/v1_log_line_level.py +0 -0
  193. {hatchet_sdk-1.16.5 → hatchet_sdk-1.17.0}/hatchet_sdk/clients/rest/models/v1_log_line_list.py +0 -0
  194. {hatchet_sdk-1.16.5 → hatchet_sdk-1.17.0}/hatchet_sdk/clients/rest/models/v1_replay_task_request.py +0 -0
  195. {hatchet_sdk-1.16.5 → hatchet_sdk-1.17.0}/hatchet_sdk/clients/rest/models/v1_replayed_tasks.py +0 -0
  196. {hatchet_sdk-1.16.5 → hatchet_sdk-1.17.0}/hatchet_sdk/clients/rest/models/v1_task.py +0 -0
  197. {hatchet_sdk-1.16.5 → hatchet_sdk-1.17.0}/hatchet_sdk/clients/rest/models/v1_task_event.py +0 -0
  198. {hatchet_sdk-1.16.5 → hatchet_sdk-1.17.0}/hatchet_sdk/clients/rest/models/v1_task_event_list.py +0 -0
  199. {hatchet_sdk-1.16.5 → hatchet_sdk-1.17.0}/hatchet_sdk/clients/rest/models/v1_task_event_type.py +0 -0
  200. {hatchet_sdk-1.16.5 → hatchet_sdk-1.17.0}/hatchet_sdk/clients/rest/models/v1_task_filter.py +0 -0
  201. {hatchet_sdk-1.16.5 → hatchet_sdk-1.17.0}/hatchet_sdk/clients/rest/models/v1_task_point_metric.py +0 -0
  202. {hatchet_sdk-1.16.5 → hatchet_sdk-1.17.0}/hatchet_sdk/clients/rest/models/v1_task_point_metrics.py +0 -0
  203. {hatchet_sdk-1.16.5 → hatchet_sdk-1.17.0}/hatchet_sdk/clients/rest/models/v1_task_run_metric.py +0 -0
  204. {hatchet_sdk-1.16.5 → hatchet_sdk-1.17.0}/hatchet_sdk/clients/rest/models/v1_task_run_status.py +0 -0
  205. {hatchet_sdk-1.16.5 → hatchet_sdk-1.17.0}/hatchet_sdk/clients/rest/models/v1_task_status.py +0 -0
  206. {hatchet_sdk-1.16.5 → hatchet_sdk-1.17.0}/hatchet_sdk/clients/rest/models/v1_task_summary.py +0 -0
  207. {hatchet_sdk-1.16.5 → hatchet_sdk-1.17.0}/hatchet_sdk/clients/rest/models/v1_task_summary_list.py +0 -0
  208. {hatchet_sdk-1.16.5 → hatchet_sdk-1.17.0}/hatchet_sdk/clients/rest/models/v1_task_timing.py +0 -0
  209. {hatchet_sdk-1.16.5 → hatchet_sdk-1.17.0}/hatchet_sdk/clients/rest/models/v1_task_timing_list.py +0 -0
  210. {hatchet_sdk-1.16.5 → hatchet_sdk-1.17.0}/hatchet_sdk/clients/rest/models/v1_trigger_workflow_run_request.py +0 -0
  211. {hatchet_sdk-1.16.5 → hatchet_sdk-1.17.0}/hatchet_sdk/clients/rest/models/v1_update_filter_request.py +0 -0
  212. {hatchet_sdk-1.16.5 → hatchet_sdk-1.17.0}/hatchet_sdk/clients/rest/models/v1_webhook.py +0 -0
  213. {hatchet_sdk-1.16.5 → hatchet_sdk-1.17.0}/hatchet_sdk/clients/rest/models/v1_webhook_api_key_auth.py +0 -0
  214. {hatchet_sdk-1.16.5 → hatchet_sdk-1.17.0}/hatchet_sdk/clients/rest/models/v1_webhook_auth_type.py +0 -0
  215. {hatchet_sdk-1.16.5 → hatchet_sdk-1.17.0}/hatchet_sdk/clients/rest/models/v1_webhook_basic_auth.py +0 -0
  216. {hatchet_sdk-1.16.5 → hatchet_sdk-1.17.0}/hatchet_sdk/clients/rest/models/v1_webhook_hmac_algorithm.py +0 -0
  217. {hatchet_sdk-1.16.5 → hatchet_sdk-1.17.0}/hatchet_sdk/clients/rest/models/v1_webhook_hmac_auth.py +0 -0
  218. {hatchet_sdk-1.16.5 → hatchet_sdk-1.17.0}/hatchet_sdk/clients/rest/models/v1_webhook_hmac_encoding.py +0 -0
  219. {hatchet_sdk-1.16.5 → hatchet_sdk-1.17.0}/hatchet_sdk/clients/rest/models/v1_webhook_list.py +0 -0
  220. {hatchet_sdk-1.16.5 → hatchet_sdk-1.17.0}/hatchet_sdk/clients/rest/models/v1_webhook_receive200_response.py +0 -0
  221. {hatchet_sdk-1.16.5 → hatchet_sdk-1.17.0}/hatchet_sdk/clients/rest/models/v1_webhook_source_name.py +0 -0
  222. {hatchet_sdk-1.16.5 → hatchet_sdk-1.17.0}/hatchet_sdk/clients/rest/models/v1_workflow_run.py +0 -0
  223. {hatchet_sdk-1.16.5 → hatchet_sdk-1.17.0}/hatchet_sdk/clients/rest/models/v1_workflow_run_details.py +0 -0
  224. {hatchet_sdk-1.16.5 → hatchet_sdk-1.17.0}/hatchet_sdk/clients/rest/models/v1_workflow_run_display_name.py +0 -0
  225. {hatchet_sdk-1.16.5 → hatchet_sdk-1.17.0}/hatchet_sdk/clients/rest/models/v1_workflow_run_display_name_list.py +0 -0
  226. {hatchet_sdk-1.16.5 → hatchet_sdk-1.17.0}/hatchet_sdk/clients/rest/models/v1_workflow_type.py +0 -0
  227. {hatchet_sdk-1.16.5 → hatchet_sdk-1.17.0}/hatchet_sdk/clients/rest/models/webhook_worker.py +0 -0
  228. {hatchet_sdk-1.16.5 → hatchet_sdk-1.17.0}/hatchet_sdk/clients/rest/models/webhook_worker_create_request.py +0 -0
  229. {hatchet_sdk-1.16.5 → hatchet_sdk-1.17.0}/hatchet_sdk/clients/rest/models/webhook_worker_create_response.py +0 -0
  230. {hatchet_sdk-1.16.5 → hatchet_sdk-1.17.0}/hatchet_sdk/clients/rest/models/webhook_worker_created.py +0 -0
  231. {hatchet_sdk-1.16.5 → hatchet_sdk-1.17.0}/hatchet_sdk/clients/rest/models/webhook_worker_list_response.py +0 -0
  232. {hatchet_sdk-1.16.5 → hatchet_sdk-1.17.0}/hatchet_sdk/clients/rest/models/webhook_worker_request.py +0 -0
  233. {hatchet_sdk-1.16.5 → hatchet_sdk-1.17.0}/hatchet_sdk/clients/rest/models/webhook_worker_request_list_response.py +0 -0
  234. {hatchet_sdk-1.16.5 → hatchet_sdk-1.17.0}/hatchet_sdk/clients/rest/models/webhook_worker_request_method.py +0 -0
  235. {hatchet_sdk-1.16.5 → hatchet_sdk-1.17.0}/hatchet_sdk/clients/rest/models/worker.py +0 -0
  236. {hatchet_sdk-1.16.5 → hatchet_sdk-1.17.0}/hatchet_sdk/clients/rest/models/worker_label.py +0 -0
  237. {hatchet_sdk-1.16.5 → hatchet_sdk-1.17.0}/hatchet_sdk/clients/rest/models/worker_list.py +0 -0
  238. {hatchet_sdk-1.16.5 → hatchet_sdk-1.17.0}/hatchet_sdk/clients/rest/models/worker_runtime_info.py +0 -0
  239. {hatchet_sdk-1.16.5 → hatchet_sdk-1.17.0}/hatchet_sdk/clients/rest/models/worker_runtime_sdks.py +0 -0
  240. {hatchet_sdk-1.16.5 → hatchet_sdk-1.17.0}/hatchet_sdk/clients/rest/models/worker_type.py +0 -0
  241. {hatchet_sdk-1.16.5 → hatchet_sdk-1.17.0}/hatchet_sdk/clients/rest/models/workflow.py +0 -0
  242. {hatchet_sdk-1.16.5 → hatchet_sdk-1.17.0}/hatchet_sdk/clients/rest/models/workflow_concurrency.py +0 -0
  243. {hatchet_sdk-1.16.5 → hatchet_sdk-1.17.0}/hatchet_sdk/clients/rest/models/workflow_deployment_config.py +0 -0
  244. {hatchet_sdk-1.16.5 → hatchet_sdk-1.17.0}/hatchet_sdk/clients/rest/models/workflow_kind.py +0 -0
  245. {hatchet_sdk-1.16.5 → hatchet_sdk-1.17.0}/hatchet_sdk/clients/rest/models/workflow_list.py +0 -0
  246. {hatchet_sdk-1.16.5 → hatchet_sdk-1.17.0}/hatchet_sdk/clients/rest/models/workflow_metrics.py +0 -0
  247. {hatchet_sdk-1.16.5 → hatchet_sdk-1.17.0}/hatchet_sdk/clients/rest/models/workflow_run.py +0 -0
  248. {hatchet_sdk-1.16.5 → hatchet_sdk-1.17.0}/hatchet_sdk/clients/rest/models/workflow_run_cancel200_response.py +0 -0
  249. {hatchet_sdk-1.16.5 → hatchet_sdk-1.17.0}/hatchet_sdk/clients/rest/models/workflow_run_list.py +0 -0
  250. {hatchet_sdk-1.16.5 → hatchet_sdk-1.17.0}/hatchet_sdk/clients/rest/models/workflow_run_order_by_direction.py +0 -0
  251. {hatchet_sdk-1.16.5 → hatchet_sdk-1.17.0}/hatchet_sdk/clients/rest/models/workflow_run_order_by_field.py +0 -0
  252. {hatchet_sdk-1.16.5 → hatchet_sdk-1.17.0}/hatchet_sdk/clients/rest/models/workflow_run_shape.py +0 -0
  253. {hatchet_sdk-1.16.5 → hatchet_sdk-1.17.0}/hatchet_sdk/clients/rest/models/workflow_run_shape_item_for_workflow_run_details.py +0 -0
  254. {hatchet_sdk-1.16.5 → hatchet_sdk-1.17.0}/hatchet_sdk/clients/rest/models/workflow_run_status.py +0 -0
  255. {hatchet_sdk-1.16.5 → hatchet_sdk-1.17.0}/hatchet_sdk/clients/rest/models/workflow_run_triggered_by.py +0 -0
  256. {hatchet_sdk-1.16.5 → hatchet_sdk-1.17.0}/hatchet_sdk/clients/rest/models/workflow_runs_cancel_request.py +0 -0
  257. {hatchet_sdk-1.16.5 → hatchet_sdk-1.17.0}/hatchet_sdk/clients/rest/models/workflow_runs_metrics.py +0 -0
  258. {hatchet_sdk-1.16.5 → hatchet_sdk-1.17.0}/hatchet_sdk/clients/rest/models/workflow_runs_metrics_counts.py +0 -0
  259. {hatchet_sdk-1.16.5 → hatchet_sdk-1.17.0}/hatchet_sdk/clients/rest/models/workflow_tag.py +0 -0
  260. {hatchet_sdk-1.16.5 → hatchet_sdk-1.17.0}/hatchet_sdk/clients/rest/models/workflow_trigger_cron_ref.py +0 -0
  261. {hatchet_sdk-1.16.5 → hatchet_sdk-1.17.0}/hatchet_sdk/clients/rest/models/workflow_trigger_event_ref.py +0 -0
  262. {hatchet_sdk-1.16.5 → hatchet_sdk-1.17.0}/hatchet_sdk/clients/rest/models/workflow_triggers.py +0 -0
  263. {hatchet_sdk-1.16.5 → hatchet_sdk-1.17.0}/hatchet_sdk/clients/rest/models/workflow_update_request.py +0 -0
  264. {hatchet_sdk-1.16.5 → hatchet_sdk-1.17.0}/hatchet_sdk/clients/rest/models/workflow_version.py +0 -0
  265. {hatchet_sdk-1.16.5 → hatchet_sdk-1.17.0}/hatchet_sdk/clients/rest/models/workflow_version_concurrency.py +0 -0
  266. {hatchet_sdk-1.16.5 → hatchet_sdk-1.17.0}/hatchet_sdk/clients/rest/models/workflow_version_definition.py +0 -0
  267. {hatchet_sdk-1.16.5 → hatchet_sdk-1.17.0}/hatchet_sdk/clients/rest/models/workflow_version_meta.py +0 -0
  268. {hatchet_sdk-1.16.5 → hatchet_sdk-1.17.0}/hatchet_sdk/clients/rest/models/workflow_workers_count.py +0 -0
  269. {hatchet_sdk-1.16.5 → hatchet_sdk-1.17.0}/hatchet_sdk/clients/rest/rest.py +0 -0
  270. {hatchet_sdk-1.16.5 → hatchet_sdk-1.17.0}/hatchet_sdk/clients/rest/tenacity_utils.py +0 -0
  271. {hatchet_sdk-1.16.5 → hatchet_sdk-1.17.0}/hatchet_sdk/clients/v1/api_client.py +0 -0
  272. {hatchet_sdk-1.16.5 → hatchet_sdk-1.17.0}/hatchet_sdk/conditions.py +0 -0
  273. {hatchet_sdk-1.16.5 → hatchet_sdk-1.17.0}/hatchet_sdk/config.py +0 -0
  274. {hatchet_sdk-1.16.5 → hatchet_sdk-1.17.0}/hatchet_sdk/connection.py +0 -0
  275. {hatchet_sdk-1.16.5 → hatchet_sdk-1.17.0}/hatchet_sdk/context/__init__.py +0 -0
  276. {hatchet_sdk-1.16.5 → hatchet_sdk-1.17.0}/hatchet_sdk/context/worker_context.py +0 -0
  277. {hatchet_sdk-1.16.5 → hatchet_sdk-1.17.0}/hatchet_sdk/contracts/dispatcher_pb2.py +0 -0
  278. {hatchet_sdk-1.16.5 → hatchet_sdk-1.17.0}/hatchet_sdk/contracts/dispatcher_pb2.pyi +0 -0
  279. {hatchet_sdk-1.16.5 → hatchet_sdk-1.17.0}/hatchet_sdk/contracts/dispatcher_pb2_grpc.py +0 -0
  280. {hatchet_sdk-1.16.5 → hatchet_sdk-1.17.0}/hatchet_sdk/contracts/events_pb2.py +0 -0
  281. {hatchet_sdk-1.16.5 → hatchet_sdk-1.17.0}/hatchet_sdk/contracts/events_pb2.pyi +0 -0
  282. {hatchet_sdk-1.16.5 → hatchet_sdk-1.17.0}/hatchet_sdk/contracts/events_pb2_grpc.py +0 -0
  283. {hatchet_sdk-1.16.5 → hatchet_sdk-1.17.0}/hatchet_sdk/contracts/v1/dispatcher_pb2.py +0 -0
  284. {hatchet_sdk-1.16.5 → hatchet_sdk-1.17.0}/hatchet_sdk/contracts/v1/dispatcher_pb2.pyi +0 -0
  285. {hatchet_sdk-1.16.5 → hatchet_sdk-1.17.0}/hatchet_sdk/contracts/v1/dispatcher_pb2_grpc.py +0 -0
  286. {hatchet_sdk-1.16.5 → hatchet_sdk-1.17.0}/hatchet_sdk/contracts/v1/shared/condition_pb2.py +0 -0
  287. {hatchet_sdk-1.16.5 → hatchet_sdk-1.17.0}/hatchet_sdk/contracts/v1/shared/condition_pb2.pyi +0 -0
  288. {hatchet_sdk-1.16.5 → hatchet_sdk-1.17.0}/hatchet_sdk/contracts/v1/shared/condition_pb2_grpc.py +0 -0
  289. {hatchet_sdk-1.16.5 → hatchet_sdk-1.17.0}/hatchet_sdk/contracts/v1/workflows_pb2.py +0 -0
  290. {hatchet_sdk-1.16.5 → hatchet_sdk-1.17.0}/hatchet_sdk/contracts/v1/workflows_pb2.pyi +0 -0
  291. {hatchet_sdk-1.16.5 → hatchet_sdk-1.17.0}/hatchet_sdk/contracts/v1/workflows_pb2_grpc.py +0 -0
  292. {hatchet_sdk-1.16.5 → hatchet_sdk-1.17.0}/hatchet_sdk/contracts/workflows_pb2.py +0 -0
  293. {hatchet_sdk-1.16.5 → hatchet_sdk-1.17.0}/hatchet_sdk/contracts/workflows_pb2.pyi +0 -0
  294. {hatchet_sdk-1.16.5 → hatchet_sdk-1.17.0}/hatchet_sdk/contracts/workflows_pb2_grpc.py +0 -0
  295. {hatchet_sdk-1.16.5 → hatchet_sdk-1.17.0}/hatchet_sdk/features/cel.py +0 -0
  296. {hatchet_sdk-1.16.5 → hatchet_sdk-1.17.0}/hatchet_sdk/features/cron.py +0 -0
  297. {hatchet_sdk-1.16.5 → hatchet_sdk-1.17.0}/hatchet_sdk/features/filters.py +0 -0
  298. {hatchet_sdk-1.16.5 → hatchet_sdk-1.17.0}/hatchet_sdk/features/logs.py +0 -0
  299. {hatchet_sdk-1.16.5 → hatchet_sdk-1.17.0}/hatchet_sdk/features/metrics.py +0 -0
  300. {hatchet_sdk-1.16.5 → hatchet_sdk-1.17.0}/hatchet_sdk/features/rate_limits.py +0 -0
  301. {hatchet_sdk-1.16.5 → hatchet_sdk-1.17.0}/hatchet_sdk/features/runs.py +0 -0
  302. {hatchet_sdk-1.16.5 → hatchet_sdk-1.17.0}/hatchet_sdk/features/scheduled.py +0 -0
  303. {hatchet_sdk-1.16.5 → hatchet_sdk-1.17.0}/hatchet_sdk/features/tenant.py +0 -0
  304. {hatchet_sdk-1.16.5 → hatchet_sdk-1.17.0}/hatchet_sdk/features/workers.py +0 -0
  305. {hatchet_sdk-1.16.5 → hatchet_sdk-1.17.0}/hatchet_sdk/features/workflows.py +0 -0
  306. {hatchet_sdk-1.16.5 → hatchet_sdk-1.17.0}/hatchet_sdk/labels.py +0 -0
  307. {hatchet_sdk-1.16.5 → hatchet_sdk-1.17.0}/hatchet_sdk/logger.py +0 -0
  308. {hatchet_sdk-1.16.5 → hatchet_sdk-1.17.0}/hatchet_sdk/metadata.py +0 -0
  309. {hatchet_sdk-1.16.5 → hatchet_sdk-1.17.0}/hatchet_sdk/opentelemetry/instrumentor.py +0 -0
  310. {hatchet_sdk-1.16.5 → hatchet_sdk-1.17.0}/hatchet_sdk/py.typed +0 -0
  311. {hatchet_sdk-1.16.5 → hatchet_sdk-1.17.0}/hatchet_sdk/runnables/action.py +0 -0
  312. {hatchet_sdk-1.16.5 → hatchet_sdk-1.17.0}/hatchet_sdk/runnables/contextvars.py +0 -0
  313. {hatchet_sdk-1.16.5 → hatchet_sdk-1.17.0}/hatchet_sdk/runnables/types.py +0 -0
  314. {hatchet_sdk-1.16.5 → hatchet_sdk-1.17.0}/hatchet_sdk/token.py +0 -0
  315. {hatchet_sdk-1.16.5 → hatchet_sdk-1.17.0}/hatchet_sdk/utils/aio.py +0 -0
  316. {hatchet_sdk-1.16.5 → hatchet_sdk-1.17.0}/hatchet_sdk/utils/backoff.py +0 -0
  317. {hatchet_sdk-1.16.5 → hatchet_sdk-1.17.0}/hatchet_sdk/utils/datetimes.py +0 -0
  318. {hatchet_sdk-1.16.5 → hatchet_sdk-1.17.0}/hatchet_sdk/utils/opentelemetry.py +0 -0
  319. {hatchet_sdk-1.16.5 → hatchet_sdk-1.17.0}/hatchet_sdk/utils/proto_enums.py +0 -0
  320. {hatchet_sdk-1.16.5 → hatchet_sdk-1.17.0}/hatchet_sdk/utils/serde.py +0 -0
  321. {hatchet_sdk-1.16.5 → hatchet_sdk-1.17.0}/hatchet_sdk/utils/timedelta_to_expression.py +0 -0
  322. {hatchet_sdk-1.16.5 → hatchet_sdk-1.17.0}/hatchet_sdk/v0/__init__.py +0 -0
  323. {hatchet_sdk-1.16.5 → hatchet_sdk-1.17.0}/hatchet_sdk/v0/client.py +0 -0
  324. {hatchet_sdk-1.16.5 → hatchet_sdk-1.17.0}/hatchet_sdk/v0/clients/admin.py +0 -0
  325. {hatchet_sdk-1.16.5 → hatchet_sdk-1.17.0}/hatchet_sdk/v0/clients/dispatcher/action_listener.py +0 -0
  326. {hatchet_sdk-1.16.5 → hatchet_sdk-1.17.0}/hatchet_sdk/v0/clients/dispatcher/dispatcher.py +0 -0
  327. {hatchet_sdk-1.16.5 → hatchet_sdk-1.17.0}/hatchet_sdk/v0/clients/event_ts.py +0 -0
  328. {hatchet_sdk-1.16.5 → hatchet_sdk-1.17.0}/hatchet_sdk/v0/clients/events.py +0 -0
  329. {hatchet_sdk-1.16.5 → hatchet_sdk-1.17.0}/hatchet_sdk/v0/clients/rest/__init__.py +0 -0
  330. {hatchet_sdk-1.16.5 → hatchet_sdk-1.17.0}/hatchet_sdk/v0/clients/rest/api/__init__.py +0 -0
  331. {hatchet_sdk-1.16.5 → hatchet_sdk-1.17.0}/hatchet_sdk/v0/clients/rest/api/api_token_api.py +0 -0
  332. {hatchet_sdk-1.16.5 → hatchet_sdk-1.17.0}/hatchet_sdk/v0/clients/rest/api/default_api.py +0 -0
  333. {hatchet_sdk-1.16.5 → hatchet_sdk-1.17.0}/hatchet_sdk/v0/clients/rest/api/event_api.py +0 -0
  334. {hatchet_sdk-1.16.5 → hatchet_sdk-1.17.0}/hatchet_sdk/v0/clients/rest/api/github_api.py +0 -0
  335. {hatchet_sdk-1.16.5 → hatchet_sdk-1.17.0}/hatchet_sdk/v0/clients/rest/api/healthcheck_api.py +0 -0
  336. {hatchet_sdk-1.16.5 → hatchet_sdk-1.17.0}/hatchet_sdk/v0/clients/rest/api/log_api.py +0 -0
  337. {hatchet_sdk-1.16.5 → hatchet_sdk-1.17.0}/hatchet_sdk/v0/clients/rest/api/metadata_api.py +0 -0
  338. {hatchet_sdk-1.16.5 → hatchet_sdk-1.17.0}/hatchet_sdk/v0/clients/rest/api/rate_limits_api.py +0 -0
  339. {hatchet_sdk-1.16.5 → hatchet_sdk-1.17.0}/hatchet_sdk/v0/clients/rest/api/slack_api.py +0 -0
  340. {hatchet_sdk-1.16.5 → hatchet_sdk-1.17.0}/hatchet_sdk/v0/clients/rest/api/sns_api.py +0 -0
  341. {hatchet_sdk-1.16.5 → hatchet_sdk-1.17.0}/hatchet_sdk/v0/clients/rest/api/step_run_api.py +0 -0
  342. {hatchet_sdk-1.16.5 → hatchet_sdk-1.17.0}/hatchet_sdk/v0/clients/rest/api/tenant_api.py +0 -0
  343. {hatchet_sdk-1.16.5 → hatchet_sdk-1.17.0}/hatchet_sdk/v0/clients/rest/api/user_api.py +0 -0
  344. {hatchet_sdk-1.16.5 → hatchet_sdk-1.17.0}/hatchet_sdk/v0/clients/rest/api/worker_api.py +0 -0
  345. {hatchet_sdk-1.16.5 → hatchet_sdk-1.17.0}/hatchet_sdk/v0/clients/rest/api/workflow_api.py +0 -0
  346. {hatchet_sdk-1.16.5 → hatchet_sdk-1.17.0}/hatchet_sdk/v0/clients/rest/api/workflow_run_api.py +0 -0
  347. {hatchet_sdk-1.16.5 → hatchet_sdk-1.17.0}/hatchet_sdk/v0/clients/rest/api/workflow_runs_api.py +0 -0
  348. {hatchet_sdk-1.16.5 → hatchet_sdk-1.17.0}/hatchet_sdk/v0/clients/rest/api_client.py +0 -0
  349. {hatchet_sdk-1.16.5 → hatchet_sdk-1.17.0}/hatchet_sdk/v0/clients/rest/api_response.py +0 -0
  350. {hatchet_sdk-1.16.5 → hatchet_sdk-1.17.0}/hatchet_sdk/v0/clients/rest/configuration.py +0 -0
  351. {hatchet_sdk-1.16.5 → hatchet_sdk-1.17.0}/hatchet_sdk/v0/clients/rest/exceptions.py +0 -0
  352. {hatchet_sdk-1.16.5 → hatchet_sdk-1.17.0}/hatchet_sdk/v0/clients/rest/models/__init__.py +0 -0
  353. {hatchet_sdk-1.16.5 → hatchet_sdk-1.17.0}/hatchet_sdk/v0/clients/rest/models/accept_invite_request.py +0 -0
  354. {hatchet_sdk-1.16.5 → hatchet_sdk-1.17.0}/hatchet_sdk/v0/clients/rest/models/api_error.py +0 -0
  355. {hatchet_sdk-1.16.5 → hatchet_sdk-1.17.0}/hatchet_sdk/v0/clients/rest/models/api_errors.py +0 -0
  356. {hatchet_sdk-1.16.5 → hatchet_sdk-1.17.0}/hatchet_sdk/v0/clients/rest/models/api_meta.py +0 -0
  357. {hatchet_sdk-1.16.5 → hatchet_sdk-1.17.0}/hatchet_sdk/v0/clients/rest/models/api_meta_auth.py +0 -0
  358. {hatchet_sdk-1.16.5 → hatchet_sdk-1.17.0}/hatchet_sdk/v0/clients/rest/models/api_meta_integration.py +0 -0
  359. {hatchet_sdk-1.16.5 → hatchet_sdk-1.17.0}/hatchet_sdk/v0/clients/rest/models/api_meta_posthog.py +0 -0
  360. {hatchet_sdk-1.16.5 → hatchet_sdk-1.17.0}/hatchet_sdk/v0/clients/rest/models/api_resource_meta.py +0 -0
  361. {hatchet_sdk-1.16.5 → hatchet_sdk-1.17.0}/hatchet_sdk/v0/clients/rest/models/api_token.py +0 -0
  362. {hatchet_sdk-1.16.5 → hatchet_sdk-1.17.0}/hatchet_sdk/v0/clients/rest/models/bulk_create_event_request.py +0 -0
  363. {hatchet_sdk-1.16.5 → hatchet_sdk-1.17.0}/hatchet_sdk/v0/clients/rest/models/bulk_create_event_response.py +0 -0
  364. {hatchet_sdk-1.16.5 → hatchet_sdk-1.17.0}/hatchet_sdk/v0/clients/rest/models/cancel_event_request.py +0 -0
  365. {hatchet_sdk-1.16.5 → hatchet_sdk-1.17.0}/hatchet_sdk/v0/clients/rest/models/cancel_step_run_request.py +0 -0
  366. {hatchet_sdk-1.16.5 → hatchet_sdk-1.17.0}/hatchet_sdk/v0/clients/rest/models/concurrency_limit_strategy.py +0 -0
  367. {hatchet_sdk-1.16.5 → hatchet_sdk-1.17.0}/hatchet_sdk/v0/clients/rest/models/create_api_token_request.py +0 -0
  368. {hatchet_sdk-1.16.5 → hatchet_sdk-1.17.0}/hatchet_sdk/v0/clients/rest/models/create_api_token_response.py +0 -0
  369. {hatchet_sdk-1.16.5 → hatchet_sdk-1.17.0}/hatchet_sdk/v0/clients/rest/models/create_cron_workflow_trigger_request.py +0 -0
  370. {hatchet_sdk-1.16.5 → hatchet_sdk-1.17.0}/hatchet_sdk/v0/clients/rest/models/create_event_request.py +0 -0
  371. {hatchet_sdk-1.16.5 → hatchet_sdk-1.17.0}/hatchet_sdk/v0/clients/rest/models/create_pull_request_from_step_run.py +0 -0
  372. {hatchet_sdk-1.16.5 → hatchet_sdk-1.17.0}/hatchet_sdk/v0/clients/rest/models/create_sns_integration_request.py +0 -0
  373. {hatchet_sdk-1.16.5 → hatchet_sdk-1.17.0}/hatchet_sdk/v0/clients/rest/models/create_tenant_alert_email_group_request.py +0 -0
  374. {hatchet_sdk-1.16.5 → hatchet_sdk-1.17.0}/hatchet_sdk/v0/clients/rest/models/create_tenant_invite_request.py +0 -0
  375. {hatchet_sdk-1.16.5 → hatchet_sdk-1.17.0}/hatchet_sdk/v0/clients/rest/models/create_tenant_request.py +0 -0
  376. {hatchet_sdk-1.16.5 → hatchet_sdk-1.17.0}/hatchet_sdk/v0/clients/rest/models/cron_workflows.py +0 -0
  377. {hatchet_sdk-1.16.5 → hatchet_sdk-1.17.0}/hatchet_sdk/v0/clients/rest/models/cron_workflows_list.py +0 -0
  378. {hatchet_sdk-1.16.5 → hatchet_sdk-1.17.0}/hatchet_sdk/v0/clients/rest/models/cron_workflows_method.py +0 -0
  379. {hatchet_sdk-1.16.5 → hatchet_sdk-1.17.0}/hatchet_sdk/v0/clients/rest/models/cron_workflows_order_by_field.py +0 -0
  380. {hatchet_sdk-1.16.5 → hatchet_sdk-1.17.0}/hatchet_sdk/v0/clients/rest/models/event.py +0 -0
  381. {hatchet_sdk-1.16.5 → hatchet_sdk-1.17.0}/hatchet_sdk/v0/clients/rest/models/event_data.py +0 -0
  382. {hatchet_sdk-1.16.5 → hatchet_sdk-1.17.0}/hatchet_sdk/v0/clients/rest/models/event_key_list.py +0 -0
  383. {hatchet_sdk-1.16.5 → hatchet_sdk-1.17.0}/hatchet_sdk/v0/clients/rest/models/event_list.py +0 -0
  384. {hatchet_sdk-1.16.5 → hatchet_sdk-1.17.0}/hatchet_sdk/v0/clients/rest/models/event_order_by_direction.py +0 -0
  385. {hatchet_sdk-1.16.5 → hatchet_sdk-1.17.0}/hatchet_sdk/v0/clients/rest/models/event_order_by_field.py +0 -0
  386. {hatchet_sdk-1.16.5 → hatchet_sdk-1.17.0}/hatchet_sdk/v0/clients/rest/models/event_update_cancel200_response.py +0 -0
  387. {hatchet_sdk-1.16.5 → hatchet_sdk-1.17.0}/hatchet_sdk/v0/clients/rest/models/event_workflow_run_summary.py +0 -0
  388. {hatchet_sdk-1.16.5 → hatchet_sdk-1.17.0}/hatchet_sdk/v0/clients/rest/models/events.py +0 -0
  389. {hatchet_sdk-1.16.5 → hatchet_sdk-1.17.0}/hatchet_sdk/v0/clients/rest/models/get_step_run_diff_response.py +0 -0
  390. {hatchet_sdk-1.16.5 → hatchet_sdk-1.17.0}/hatchet_sdk/v0/clients/rest/models/github_app_installation.py +0 -0
  391. {hatchet_sdk-1.16.5 → hatchet_sdk-1.17.0}/hatchet_sdk/v0/clients/rest/models/github_branch.py +0 -0
  392. {hatchet_sdk-1.16.5 → hatchet_sdk-1.17.0}/hatchet_sdk/v0/clients/rest/models/github_repo.py +0 -0
  393. {hatchet_sdk-1.16.5 → hatchet_sdk-1.17.0}/hatchet_sdk/v0/clients/rest/models/info_get_version200_response.py +0 -0
  394. {hatchet_sdk-1.16.5 → hatchet_sdk-1.17.0}/hatchet_sdk/v0/clients/rest/models/job.py +0 -0
  395. {hatchet_sdk-1.16.5 → hatchet_sdk-1.17.0}/hatchet_sdk/v0/clients/rest/models/job_run.py +0 -0
  396. {hatchet_sdk-1.16.5 → hatchet_sdk-1.17.0}/hatchet_sdk/v0/clients/rest/models/job_run_status.py +0 -0
  397. {hatchet_sdk-1.16.5 → hatchet_sdk-1.17.0}/hatchet_sdk/v0/clients/rest/models/link_github_repository_request.py +0 -0
  398. {hatchet_sdk-1.16.5 → hatchet_sdk-1.17.0}/hatchet_sdk/v0/clients/rest/models/list_api_tokens_response.py +0 -0
  399. {hatchet_sdk-1.16.5 → hatchet_sdk-1.17.0}/hatchet_sdk/v0/clients/rest/models/list_github_app_installations_response.py +0 -0
  400. {hatchet_sdk-1.16.5 → hatchet_sdk-1.17.0}/hatchet_sdk/v0/clients/rest/models/list_pull_requests_response.py +0 -0
  401. {hatchet_sdk-1.16.5 → hatchet_sdk-1.17.0}/hatchet_sdk/v0/clients/rest/models/list_slack_webhooks.py +0 -0
  402. {hatchet_sdk-1.16.5 → hatchet_sdk-1.17.0}/hatchet_sdk/v0/clients/rest/models/list_sns_integrations.py +0 -0
  403. {hatchet_sdk-1.16.5 → hatchet_sdk-1.17.0}/hatchet_sdk/v0/clients/rest/models/log_line.py +0 -0
  404. {hatchet_sdk-1.16.5 → hatchet_sdk-1.17.0}/hatchet_sdk/v0/clients/rest/models/log_line_level.py +0 -0
  405. {hatchet_sdk-1.16.5 → hatchet_sdk-1.17.0}/hatchet_sdk/v0/clients/rest/models/log_line_list.py +0 -0
  406. {hatchet_sdk-1.16.5 → hatchet_sdk-1.17.0}/hatchet_sdk/v0/clients/rest/models/log_line_order_by_direction.py +0 -0
  407. {hatchet_sdk-1.16.5 → hatchet_sdk-1.17.0}/hatchet_sdk/v0/clients/rest/models/log_line_order_by_field.py +0 -0
  408. {hatchet_sdk-1.16.5 → hatchet_sdk-1.17.0}/hatchet_sdk/v0/clients/rest/models/pagination_response.py +0 -0
  409. {hatchet_sdk-1.16.5 → hatchet_sdk-1.17.0}/hatchet_sdk/v0/clients/rest/models/pull_request.py +0 -0
  410. {hatchet_sdk-1.16.5 → hatchet_sdk-1.17.0}/hatchet_sdk/v0/clients/rest/models/pull_request_state.py +0 -0
  411. {hatchet_sdk-1.16.5 → hatchet_sdk-1.17.0}/hatchet_sdk/v0/clients/rest/models/queue_metrics.py +0 -0
  412. {hatchet_sdk-1.16.5 → hatchet_sdk-1.17.0}/hatchet_sdk/v0/clients/rest/models/rate_limit.py +0 -0
  413. {hatchet_sdk-1.16.5 → hatchet_sdk-1.17.0}/hatchet_sdk/v0/clients/rest/models/rate_limit_list.py +0 -0
  414. {hatchet_sdk-1.16.5 → hatchet_sdk-1.17.0}/hatchet_sdk/v0/clients/rest/models/rate_limit_order_by_direction.py +0 -0
  415. {hatchet_sdk-1.16.5 → hatchet_sdk-1.17.0}/hatchet_sdk/v0/clients/rest/models/rate_limit_order_by_field.py +0 -0
  416. {hatchet_sdk-1.16.5 → hatchet_sdk-1.17.0}/hatchet_sdk/v0/clients/rest/models/recent_step_runs.py +0 -0
  417. {hatchet_sdk-1.16.5 → hatchet_sdk-1.17.0}/hatchet_sdk/v0/clients/rest/models/reject_invite_request.py +0 -0
  418. {hatchet_sdk-1.16.5 → hatchet_sdk-1.17.0}/hatchet_sdk/v0/clients/rest/models/replay_event_request.py +0 -0
  419. {hatchet_sdk-1.16.5 → hatchet_sdk-1.17.0}/hatchet_sdk/v0/clients/rest/models/replay_workflow_runs_request.py +0 -0
  420. {hatchet_sdk-1.16.5 → hatchet_sdk-1.17.0}/hatchet_sdk/v0/clients/rest/models/replay_workflow_runs_response.py +0 -0
  421. {hatchet_sdk-1.16.5 → hatchet_sdk-1.17.0}/hatchet_sdk/v0/clients/rest/models/rerun_step_run_request.py +0 -0
  422. {hatchet_sdk-1.16.5 → hatchet_sdk-1.17.0}/hatchet_sdk/v0/clients/rest/models/schedule_workflow_run_request.py +0 -0
  423. {hatchet_sdk-1.16.5 → hatchet_sdk-1.17.0}/hatchet_sdk/v0/clients/rest/models/scheduled_run_status.py +0 -0
  424. {hatchet_sdk-1.16.5 → hatchet_sdk-1.17.0}/hatchet_sdk/v0/clients/rest/models/scheduled_workflows.py +0 -0
  425. {hatchet_sdk-1.16.5 → hatchet_sdk-1.17.0}/hatchet_sdk/v0/clients/rest/models/scheduled_workflows_list.py +0 -0
  426. {hatchet_sdk-1.16.5 → hatchet_sdk-1.17.0}/hatchet_sdk/v0/clients/rest/models/scheduled_workflows_method.py +0 -0
  427. {hatchet_sdk-1.16.5 → hatchet_sdk-1.17.0}/hatchet_sdk/v0/clients/rest/models/scheduled_workflows_order_by_field.py +0 -0
  428. {hatchet_sdk-1.16.5 → hatchet_sdk-1.17.0}/hatchet_sdk/v0/clients/rest/models/semaphore_slots.py +0 -0
  429. {hatchet_sdk-1.16.5 → hatchet_sdk-1.17.0}/hatchet_sdk/v0/clients/rest/models/slack_webhook.py +0 -0
  430. {hatchet_sdk-1.16.5 → hatchet_sdk-1.17.0}/hatchet_sdk/v0/clients/rest/models/sns_integration.py +0 -0
  431. {hatchet_sdk-1.16.5 → hatchet_sdk-1.17.0}/hatchet_sdk/v0/clients/rest/models/step.py +0 -0
  432. {hatchet_sdk-1.16.5 → hatchet_sdk-1.17.0}/hatchet_sdk/v0/clients/rest/models/step_run.py +0 -0
  433. {hatchet_sdk-1.16.5 → hatchet_sdk-1.17.0}/hatchet_sdk/v0/clients/rest/models/step_run_archive.py +0 -0
  434. {hatchet_sdk-1.16.5 → hatchet_sdk-1.17.0}/hatchet_sdk/v0/clients/rest/models/step_run_archive_list.py +0 -0
  435. {hatchet_sdk-1.16.5 → hatchet_sdk-1.17.0}/hatchet_sdk/v0/clients/rest/models/step_run_diff.py +0 -0
  436. {hatchet_sdk-1.16.5 → hatchet_sdk-1.17.0}/hatchet_sdk/v0/clients/rest/models/step_run_event.py +0 -0
  437. {hatchet_sdk-1.16.5 → hatchet_sdk-1.17.0}/hatchet_sdk/v0/clients/rest/models/step_run_event_list.py +0 -0
  438. {hatchet_sdk-1.16.5 → hatchet_sdk-1.17.0}/hatchet_sdk/v0/clients/rest/models/step_run_event_reason.py +0 -0
  439. {hatchet_sdk-1.16.5 → hatchet_sdk-1.17.0}/hatchet_sdk/v0/clients/rest/models/step_run_event_severity.py +0 -0
  440. {hatchet_sdk-1.16.5 → hatchet_sdk-1.17.0}/hatchet_sdk/v0/clients/rest/models/step_run_status.py +0 -0
  441. {hatchet_sdk-1.16.5 → hatchet_sdk-1.17.0}/hatchet_sdk/v0/clients/rest/models/tenant.py +0 -0
  442. {hatchet_sdk-1.16.5 → hatchet_sdk-1.17.0}/hatchet_sdk/v0/clients/rest/models/tenant_alert_email_group.py +0 -0
  443. {hatchet_sdk-1.16.5 → hatchet_sdk-1.17.0}/hatchet_sdk/v0/clients/rest/models/tenant_alert_email_group_list.py +0 -0
  444. {hatchet_sdk-1.16.5 → hatchet_sdk-1.17.0}/hatchet_sdk/v0/clients/rest/models/tenant_alerting_settings.py +0 -0
  445. {hatchet_sdk-1.16.5 → hatchet_sdk-1.17.0}/hatchet_sdk/v0/clients/rest/models/tenant_invite.py +0 -0
  446. {hatchet_sdk-1.16.5 → hatchet_sdk-1.17.0}/hatchet_sdk/v0/clients/rest/models/tenant_invite_list.py +0 -0
  447. {hatchet_sdk-1.16.5 → hatchet_sdk-1.17.0}/hatchet_sdk/v0/clients/rest/models/tenant_list.py +0 -0
  448. {hatchet_sdk-1.16.5 → hatchet_sdk-1.17.0}/hatchet_sdk/v0/clients/rest/models/tenant_member.py +0 -0
  449. {hatchet_sdk-1.16.5 → hatchet_sdk-1.17.0}/hatchet_sdk/v0/clients/rest/models/tenant_member_list.py +0 -0
  450. {hatchet_sdk-1.16.5 → hatchet_sdk-1.17.0}/hatchet_sdk/v0/clients/rest/models/tenant_member_role.py +0 -0
  451. {hatchet_sdk-1.16.5 → hatchet_sdk-1.17.0}/hatchet_sdk/v0/clients/rest/models/tenant_queue_metrics.py +0 -0
  452. {hatchet_sdk-1.16.5 → hatchet_sdk-1.17.0}/hatchet_sdk/v0/clients/rest/models/tenant_resource.py +0 -0
  453. {hatchet_sdk-1.16.5 → hatchet_sdk-1.17.0}/hatchet_sdk/v0/clients/rest/models/tenant_resource_limit.py +0 -0
  454. {hatchet_sdk-1.16.5 → hatchet_sdk-1.17.0}/hatchet_sdk/v0/clients/rest/models/tenant_resource_policy.py +0 -0
  455. {hatchet_sdk-1.16.5 → hatchet_sdk-1.17.0}/hatchet_sdk/v0/clients/rest/models/tenant_step_run_queue_metrics.py +0 -0
  456. {hatchet_sdk-1.16.5 → hatchet_sdk-1.17.0}/hatchet_sdk/v0/clients/rest/models/trigger_workflow_run_request.py +0 -0
  457. {hatchet_sdk-1.16.5 → hatchet_sdk-1.17.0}/hatchet_sdk/v0/clients/rest/models/update_tenant_alert_email_group_request.py +0 -0
  458. {hatchet_sdk-1.16.5 → hatchet_sdk-1.17.0}/hatchet_sdk/v0/clients/rest/models/update_tenant_invite_request.py +0 -0
  459. {hatchet_sdk-1.16.5 → hatchet_sdk-1.17.0}/hatchet_sdk/v0/clients/rest/models/update_tenant_request.py +0 -0
  460. {hatchet_sdk-1.16.5 → hatchet_sdk-1.17.0}/hatchet_sdk/v0/clients/rest/models/update_worker_request.py +0 -0
  461. {hatchet_sdk-1.16.5 → hatchet_sdk-1.17.0}/hatchet_sdk/v0/clients/rest/models/user.py +0 -0
  462. {hatchet_sdk-1.16.5 → hatchet_sdk-1.17.0}/hatchet_sdk/v0/clients/rest/models/user_change_password_request.py +0 -0
  463. {hatchet_sdk-1.16.5 → hatchet_sdk-1.17.0}/hatchet_sdk/v0/clients/rest/models/user_login_request.py +0 -0
  464. {hatchet_sdk-1.16.5 → hatchet_sdk-1.17.0}/hatchet_sdk/v0/clients/rest/models/user_register_request.py +0 -0
  465. {hatchet_sdk-1.16.5 → hatchet_sdk-1.17.0}/hatchet_sdk/v0/clients/rest/models/user_tenant_memberships_list.py +0 -0
  466. {hatchet_sdk-1.16.5 → hatchet_sdk-1.17.0}/hatchet_sdk/v0/clients/rest/models/user_tenant_public.py +0 -0
  467. {hatchet_sdk-1.16.5 → hatchet_sdk-1.17.0}/hatchet_sdk/v0/clients/rest/models/webhook_worker.py +0 -0
  468. {hatchet_sdk-1.16.5 → hatchet_sdk-1.17.0}/hatchet_sdk/v0/clients/rest/models/webhook_worker_create_request.py +0 -0
  469. {hatchet_sdk-1.16.5 → hatchet_sdk-1.17.0}/hatchet_sdk/v0/clients/rest/models/webhook_worker_create_response.py +0 -0
  470. {hatchet_sdk-1.16.5 → hatchet_sdk-1.17.0}/hatchet_sdk/v0/clients/rest/models/webhook_worker_created.py +0 -0
  471. {hatchet_sdk-1.16.5 → hatchet_sdk-1.17.0}/hatchet_sdk/v0/clients/rest/models/webhook_worker_list_response.py +0 -0
  472. {hatchet_sdk-1.16.5 → hatchet_sdk-1.17.0}/hatchet_sdk/v0/clients/rest/models/webhook_worker_request.py +0 -0
  473. {hatchet_sdk-1.16.5 → hatchet_sdk-1.17.0}/hatchet_sdk/v0/clients/rest/models/webhook_worker_request_list_response.py +0 -0
  474. {hatchet_sdk-1.16.5 → hatchet_sdk-1.17.0}/hatchet_sdk/v0/clients/rest/models/webhook_worker_request_method.py +0 -0
  475. {hatchet_sdk-1.16.5 → hatchet_sdk-1.17.0}/hatchet_sdk/v0/clients/rest/models/worker.py +0 -0
  476. {hatchet_sdk-1.16.5 → hatchet_sdk-1.17.0}/hatchet_sdk/v0/clients/rest/models/worker_label.py +0 -0
  477. {hatchet_sdk-1.16.5 → hatchet_sdk-1.17.0}/hatchet_sdk/v0/clients/rest/models/worker_list.py +0 -0
  478. {hatchet_sdk-1.16.5 → hatchet_sdk-1.17.0}/hatchet_sdk/v0/clients/rest/models/worker_runtime_info.py +0 -0
  479. {hatchet_sdk-1.16.5 → hatchet_sdk-1.17.0}/hatchet_sdk/v0/clients/rest/models/worker_runtime_sdks.py +0 -0
  480. {hatchet_sdk-1.16.5 → hatchet_sdk-1.17.0}/hatchet_sdk/v0/clients/rest/models/worker_type.py +0 -0
  481. {hatchet_sdk-1.16.5 → hatchet_sdk-1.17.0}/hatchet_sdk/v0/clients/rest/models/workflow.py +0 -0
  482. {hatchet_sdk-1.16.5 → hatchet_sdk-1.17.0}/hatchet_sdk/v0/clients/rest/models/workflow_concurrency.py +0 -0
  483. {hatchet_sdk-1.16.5 → hatchet_sdk-1.17.0}/hatchet_sdk/v0/clients/rest/models/workflow_deployment_config.py +0 -0
  484. {hatchet_sdk-1.16.5 → hatchet_sdk-1.17.0}/hatchet_sdk/v0/clients/rest/models/workflow_kind.py +0 -0
  485. {hatchet_sdk-1.16.5 → hatchet_sdk-1.17.0}/hatchet_sdk/v0/clients/rest/models/workflow_list.py +0 -0
  486. {hatchet_sdk-1.16.5 → hatchet_sdk-1.17.0}/hatchet_sdk/v0/clients/rest/models/workflow_metrics.py +0 -0
  487. {hatchet_sdk-1.16.5 → hatchet_sdk-1.17.0}/hatchet_sdk/v0/clients/rest/models/workflow_run.py +0 -0
  488. {hatchet_sdk-1.16.5 → hatchet_sdk-1.17.0}/hatchet_sdk/v0/clients/rest/models/workflow_run_cancel200_response.py +0 -0
  489. {hatchet_sdk-1.16.5 → hatchet_sdk-1.17.0}/hatchet_sdk/v0/clients/rest/models/workflow_run_list.py +0 -0
  490. {hatchet_sdk-1.16.5 → hatchet_sdk-1.17.0}/hatchet_sdk/v0/clients/rest/models/workflow_run_order_by_direction.py +0 -0
  491. {hatchet_sdk-1.16.5 → hatchet_sdk-1.17.0}/hatchet_sdk/v0/clients/rest/models/workflow_run_order_by_field.py +0 -0
  492. {hatchet_sdk-1.16.5 → hatchet_sdk-1.17.0}/hatchet_sdk/v0/clients/rest/models/workflow_run_shape.py +0 -0
  493. {hatchet_sdk-1.16.5 → hatchet_sdk-1.17.0}/hatchet_sdk/v0/clients/rest/models/workflow_run_status.py +0 -0
  494. {hatchet_sdk-1.16.5 → hatchet_sdk-1.17.0}/hatchet_sdk/v0/clients/rest/models/workflow_run_triggered_by.py +0 -0
  495. {hatchet_sdk-1.16.5 → hatchet_sdk-1.17.0}/hatchet_sdk/v0/clients/rest/models/workflow_runs_cancel_request.py +0 -0
  496. {hatchet_sdk-1.16.5 → hatchet_sdk-1.17.0}/hatchet_sdk/v0/clients/rest/models/workflow_runs_metrics.py +0 -0
  497. {hatchet_sdk-1.16.5 → hatchet_sdk-1.17.0}/hatchet_sdk/v0/clients/rest/models/workflow_runs_metrics_counts.py +0 -0
  498. {hatchet_sdk-1.16.5 → hatchet_sdk-1.17.0}/hatchet_sdk/v0/clients/rest/models/workflow_tag.py +0 -0
  499. {hatchet_sdk-1.16.5 → hatchet_sdk-1.17.0}/hatchet_sdk/v0/clients/rest/models/workflow_trigger_cron_ref.py +0 -0
  500. {hatchet_sdk-1.16.5 → hatchet_sdk-1.17.0}/hatchet_sdk/v0/clients/rest/models/workflow_trigger_event_ref.py +0 -0
  501. {hatchet_sdk-1.16.5 → hatchet_sdk-1.17.0}/hatchet_sdk/v0/clients/rest/models/workflow_triggers.py +0 -0
  502. {hatchet_sdk-1.16.5 → hatchet_sdk-1.17.0}/hatchet_sdk/v0/clients/rest/models/workflow_update_request.py +0 -0
  503. {hatchet_sdk-1.16.5 → hatchet_sdk-1.17.0}/hatchet_sdk/v0/clients/rest/models/workflow_version.py +0 -0
  504. {hatchet_sdk-1.16.5 → hatchet_sdk-1.17.0}/hatchet_sdk/v0/clients/rest/models/workflow_version_concurrency.py +0 -0
  505. {hatchet_sdk-1.16.5 → hatchet_sdk-1.17.0}/hatchet_sdk/v0/clients/rest/models/workflow_version_definition.py +0 -0
  506. {hatchet_sdk-1.16.5 → hatchet_sdk-1.17.0}/hatchet_sdk/v0/clients/rest/models/workflow_version_meta.py +0 -0
  507. {hatchet_sdk-1.16.5 → hatchet_sdk-1.17.0}/hatchet_sdk/v0/clients/rest/models/workflow_workers_count.py +0 -0
  508. {hatchet_sdk-1.16.5 → hatchet_sdk-1.17.0}/hatchet_sdk/v0/clients/rest/rest.py +0 -0
  509. {hatchet_sdk-1.16.5 → hatchet_sdk-1.17.0}/hatchet_sdk/v0/clients/rest/tenacity_utils.py +0 -0
  510. {hatchet_sdk-1.16.5 → hatchet_sdk-1.17.0}/hatchet_sdk/v0/clients/rest_client.py +0 -0
  511. {hatchet_sdk-1.16.5 → hatchet_sdk-1.17.0}/hatchet_sdk/v0/clients/run_event_listener.py +0 -0
  512. {hatchet_sdk-1.16.5 → hatchet_sdk-1.17.0}/hatchet_sdk/v0/clients/workflow_listener.py +0 -0
  513. {hatchet_sdk-1.16.5 → hatchet_sdk-1.17.0}/hatchet_sdk/v0/connection.py +0 -0
  514. {hatchet_sdk-1.16.5 → hatchet_sdk-1.17.0}/hatchet_sdk/v0/context/__init__.py +0 -0
  515. {hatchet_sdk-1.16.5 → hatchet_sdk-1.17.0}/hatchet_sdk/v0/context/context.py +0 -0
  516. {hatchet_sdk-1.16.5 → hatchet_sdk-1.17.0}/hatchet_sdk/v0/context/worker_context.py +0 -0
  517. {hatchet_sdk-1.16.5 → hatchet_sdk-1.17.0}/hatchet_sdk/v0/features/cron.py +0 -0
  518. {hatchet_sdk-1.16.5 → hatchet_sdk-1.17.0}/hatchet_sdk/v0/features/scheduled.py +0 -0
  519. {hatchet_sdk-1.16.5 → hatchet_sdk-1.17.0}/hatchet_sdk/v0/hatchet.py +0 -0
  520. {hatchet_sdk-1.16.5 → hatchet_sdk-1.17.0}/hatchet_sdk/v0/labels.py +0 -0
  521. {hatchet_sdk-1.16.5 → hatchet_sdk-1.17.0}/hatchet_sdk/v0/loader.py +0 -0
  522. {hatchet_sdk-1.16.5 → hatchet_sdk-1.17.0}/hatchet_sdk/v0/metadata.py +0 -0
  523. {hatchet_sdk-1.16.5 → hatchet_sdk-1.17.0}/hatchet_sdk/v0/opentelemetry/instrumentor.py +0 -0
  524. {hatchet_sdk-1.16.5 → hatchet_sdk-1.17.0}/hatchet_sdk/v0/rate_limit.py +0 -0
  525. {hatchet_sdk-1.16.5 → hatchet_sdk-1.17.0}/hatchet_sdk/v0/semver.py +0 -0
  526. {hatchet_sdk-1.16.5 → hatchet_sdk-1.17.0}/hatchet_sdk/v0/token.py +0 -0
  527. {hatchet_sdk-1.16.5 → hatchet_sdk-1.17.0}/hatchet_sdk/v0/utils/aio_utils.py +0 -0
  528. {hatchet_sdk-1.16.5 → hatchet_sdk-1.17.0}/hatchet_sdk/v0/utils/backoff.py +0 -0
  529. {hatchet_sdk-1.16.5 → hatchet_sdk-1.17.0}/hatchet_sdk/v0/utils/types.py +0 -0
  530. {hatchet_sdk-1.16.5 → hatchet_sdk-1.17.0}/hatchet_sdk/v0/utils/typing.py +0 -0
  531. {hatchet_sdk-1.16.5 → hatchet_sdk-1.17.0}/hatchet_sdk/v0/v2/callable.py +0 -0
  532. {hatchet_sdk-1.16.5 → hatchet_sdk-1.17.0}/hatchet_sdk/v0/v2/concurrency.py +0 -0
  533. {hatchet_sdk-1.16.5 → hatchet_sdk-1.17.0}/hatchet_sdk/v0/v2/hatchet.py +0 -0
  534. {hatchet_sdk-1.16.5 → hatchet_sdk-1.17.0}/hatchet_sdk/v0/worker/__init__.py +0 -0
  535. {hatchet_sdk-1.16.5 → hatchet_sdk-1.17.0}/hatchet_sdk/v0/worker/action_listener_process.py +0 -0
  536. {hatchet_sdk-1.16.5 → hatchet_sdk-1.17.0}/hatchet_sdk/v0/worker/runner/run_loop_manager.py +0 -0
  537. {hatchet_sdk-1.16.5 → hatchet_sdk-1.17.0}/hatchet_sdk/v0/worker/runner/runner.py +0 -0
  538. {hatchet_sdk-1.16.5 → hatchet_sdk-1.17.0}/hatchet_sdk/v0/worker/runner/utils/capture_logs.py +0 -0
  539. {hatchet_sdk-1.16.5 → hatchet_sdk-1.17.0}/hatchet_sdk/v0/worker/runner/utils/error_with_traceback.py +0 -0
  540. {hatchet_sdk-1.16.5 → hatchet_sdk-1.17.0}/hatchet_sdk/v0/worker/worker.py +0 -0
  541. {hatchet_sdk-1.16.5 → hatchet_sdk-1.17.0}/hatchet_sdk/v0/workflow.py +0 -0
  542. {hatchet_sdk-1.16.5 → hatchet_sdk-1.17.0}/hatchet_sdk/v0/workflow_run.py +0 -0
  543. {hatchet_sdk-1.16.5 → hatchet_sdk-1.17.0}/hatchet_sdk/worker/__init__.py +0 -0
  544. {hatchet_sdk-1.16.5 → hatchet_sdk-1.17.0}/hatchet_sdk/worker/action_listener_process.py +0 -0
  545. {hatchet_sdk-1.16.5 → hatchet_sdk-1.17.0}/hatchet_sdk/worker/runner/run_loop_manager.py +0 -0
  546. {hatchet_sdk-1.16.5 → hatchet_sdk-1.17.0}/hatchet_sdk/worker/worker.py +0 -0
  547. {hatchet_sdk-1.16.5 → hatchet_sdk-1.17.0}/hatchet_sdk/workflow_run.py +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: hatchet-sdk
3
- Version: 1.16.5
3
+ Version: 1.17.0
4
4
  Summary:
5
5
  License: MIT
6
6
  Author: Alexander Belanger
@@ -15,7 +15,6 @@ Provides-Extra: otel
15
15
  Requires-Dist: aiohttp (>=3.10.5,<4.0.0)
16
16
  Requires-Dist: aiohttp-retry (>=2.8.3,<3.0.0)
17
17
  Requires-Dist: aiostream (>=0.5.2,<0.6.0)
18
- Requires-Dist: cel-python (>=0.2.0,<0.3.0)
19
18
  Requires-Dist: grpcio (>=1.64.1,!=1.68.*) ; python_version < "3.13"
20
19
  Requires-Dist: grpcio (>=1.69.0) ; python_version >= "3.13"
21
20
  Requires-Dist: grpcio-tools (>=1.64.1,!=1.68.*) ; python_version < "3.13"
@@ -155,7 +155,7 @@ from hatchet_sdk.exceptions import (
155
155
  from hatchet_sdk.features.cel import CELEvaluationResult, CELFailure, CELSuccess
156
156
  from hatchet_sdk.features.runs import BulkCancelReplayOpts, RunFilter
157
157
  from hatchet_sdk.hatchet import Hatchet
158
- from hatchet_sdk.runnables.task import Task
158
+ from hatchet_sdk.runnables.task import Depends, Task
159
159
  from hatchet_sdk.runnables.types import (
160
160
  ConcurrencyExpression,
161
161
  ConcurrencyLimitStrategy,
@@ -198,6 +198,7 @@ __all__ = [
198
198
  "CreateWorkflowVersionOpts",
199
199
  "DedupeViolationError",
200
200
  "DefaultFilter",
201
+ "Depends",
201
202
  "DurableContext",
202
203
  "EmptyModel",
203
204
  "Event",
@@ -28,7 +28,7 @@ from hatchet_sdk.contracts.events_pb2 import (
28
28
  )
29
29
  from hatchet_sdk.contracts.events_pb2_grpc import EventsServiceStub
30
30
  from hatchet_sdk.metadata import get_metadata
31
- from hatchet_sdk.utils.typing import JSONSerializableMapping
31
+ from hatchet_sdk.utils.typing import JSONSerializableMapping, LogLevel
32
32
 
33
33
 
34
34
  def proto_timestamp_now() -> timestamp_pb2.Timestamp:
@@ -180,11 +180,14 @@ class EventClient(BaseRestClient):
180
180
  )
181
181
 
182
182
  @tenacity_retry
183
- def log(self, message: str, step_run_id: str) -> None:
183
+ def log(
184
+ self, message: str, step_run_id: str, level: LogLevel | None = None
185
+ ) -> None:
184
186
  request = PutLogRequest(
185
187
  stepRunId=step_run_id,
186
188
  createdAt=proto_timestamp_now(),
187
189
  message=message,
190
+ level=level.value if level else None,
188
191
  )
189
192
 
190
193
  self.events_service_client.PutLog(request, metadata=get_metadata(self.token))
@@ -21,10 +21,11 @@ from hatchet_sdk.conditions import (
21
21
  flatten_conditions,
22
22
  )
23
23
  from hatchet_sdk.context.worker_context import WorkerContext
24
+ from hatchet_sdk.exceptions import TaskRunError
24
25
  from hatchet_sdk.features.runs import RunsClient
25
26
  from hatchet_sdk.logger import logger
26
27
  from hatchet_sdk.utils.timedelta_to_expression import Duration, timedelta_to_expr
27
- from hatchet_sdk.utils.typing import JSONSerializableMapping
28
+ from hatchet_sdk.utils.typing import JSONSerializableMapping, LogLevel
28
29
  from hatchet_sdk.worker.runner.utils.capture_logs import AsyncLogSender, LogRecord
29
30
 
30
31
  if TYPE_CHECKING:
@@ -211,7 +212,9 @@ class Context:
211
212
  line = str(line)
212
213
 
213
214
  logger.info(line)
214
- self.log_sender.publish(LogRecord(message=line, step_run_id=self.step_run_id))
215
+ self.log_sender.publish(
216
+ LogRecord(message=line, step_run_id=self.step_run_id, level=LogLevel.INFO)
217
+ )
215
218
 
216
219
  def release_slot(self) -> None:
217
220
  """
@@ -360,15 +363,41 @@ class Context:
360
363
  task: "Task[TWorkflowInput, R]",
361
364
  ) -> str | None:
362
365
  """
366
+ **DEPRECATED**: Use `get_task_run_error` instead.
367
+
363
368
  A helper intended to be used in an on-failure step to retrieve the error that occurred in a specific upstream task run.
364
369
 
365
370
  :param task: The task whose error you want to retrieve.
366
371
  :return: The error message of the task run, or None if no error occurred.
367
372
  """
373
+ warn(
374
+ "`fetch_task_run_error` is deprecated. Use `get_task_run_error` instead.",
375
+ DeprecationWarning,
376
+ stacklevel=2,
377
+ )
368
378
  errors = self.data.step_run_errors
369
379
 
370
380
  return errors.get(task.name)
371
381
 
382
+ def get_task_run_error(
383
+ self,
384
+ task: "Task[TWorkflowInput, R]",
385
+ ) -> TaskRunError | None:
386
+ """
387
+ A helper intended to be used in an on-failure step to retrieve the error that occurred in a specific upstream task run.
388
+
389
+ :param task: The task whose error you want to retrieve.
390
+ :return: The error message of the task run, or None if no error occurred.
391
+ """
392
+ errors = self.data.step_run_errors
393
+
394
+ error = errors.get(task.name)
395
+
396
+ if not error:
397
+ return None
398
+
399
+ return TaskRunError.deserialize(error)
400
+
372
401
 
373
402
  class DurableContext(Context):
374
403
  def __init__(
@@ -1,4 +1,10 @@
1
+ import json
1
2
  import traceback
3
+ from typing import cast
4
+
5
+
6
+ class InvalidDependencyError(Exception):
7
+ pass
2
8
 
3
9
 
4
10
  class NonRetryableException(Exception): # noqa: N818
@@ -9,28 +15,42 @@ class DedupeViolationError(Exception):
9
15
  """Raised by the Hatchet library to indicate that a workflow has already been run with this deduplication value."""
10
16
 
11
17
 
18
+ TASK_RUN_ERROR_METADATA_KEY = "__hatchet_error_metadata__"
19
+
20
+
12
21
  class TaskRunError(Exception):
13
22
  def __init__(
14
23
  self,
15
24
  exc: str,
16
25
  exc_type: str,
17
26
  trace: str,
27
+ task_run_external_id: str | None,
18
28
  ) -> None:
19
29
  self.exc = exc
20
30
  self.exc_type = exc_type
21
31
  self.trace = trace
32
+ self.task_run_external_id = task_run_external_id
22
33
 
23
34
  def __str__(self) -> str:
24
- return self.serialize()
35
+ return self.serialize(include_metadata=False)
25
36
 
26
37
  def __repr__(self) -> str:
27
38
  return str(self)
28
39
 
29
- def serialize(self) -> str:
40
+ def serialize(self, include_metadata: bool) -> str:
30
41
  if not self.exc_type or not self.exc:
31
42
  return ""
32
43
 
33
- return (
44
+ metadata = json.dumps(
45
+ {
46
+ TASK_RUN_ERROR_METADATA_KEY: {
47
+ "task_run_external_id": self.task_run_external_id,
48
+ }
49
+ },
50
+ indent=None,
51
+ )
52
+
53
+ result = (
34
54
  self.exc_type.replace(": ", ":::")
35
55
  + ": "
36
56
  + self.exc.replace("\n", "\\\n")
@@ -38,6 +58,40 @@ class TaskRunError(Exception):
38
58
  + self.trace
39
59
  )
40
60
 
61
+ if include_metadata:
62
+ return result + "\n\n" + metadata
63
+
64
+ return result
65
+
66
+ @classmethod
67
+ def _extract_metadata(cls, serialized: str) -> tuple[str, dict[str, str | None]]:
68
+ metadata = serialized.split("\n")[-1]
69
+
70
+ try:
71
+ parsed = json.loads(metadata)
72
+
73
+ if (
74
+ TASK_RUN_ERROR_METADATA_KEY in parsed
75
+ and "task_run_external_id" in parsed[TASK_RUN_ERROR_METADATA_KEY]
76
+ ):
77
+ serialized = serialized.replace(metadata, "").strip()
78
+ return serialized, cast(
79
+ dict[str, str | None], parsed[TASK_RUN_ERROR_METADATA_KEY]
80
+ )
81
+
82
+ return serialized, {}
83
+ except json.JSONDecodeError:
84
+ return serialized, {}
85
+
86
+ @classmethod
87
+ def _unpack_serialized_error(cls, serialized: str) -> tuple[str | None, str, str]:
88
+ serialized, metadata = cls._extract_metadata(serialized)
89
+
90
+ external_id = metadata.get("task_run_external_id", None)
91
+ header, trace = serialized.split("\n", 1)
92
+
93
+ return external_id, header, trace
94
+
41
95
  @classmethod
42
96
  def deserialize(cls, serialized: str) -> "TaskRunError":
43
97
  if not serialized:
@@ -45,10 +99,16 @@ class TaskRunError(Exception):
45
99
  exc="",
46
100
  exc_type="",
47
101
  trace="",
102
+ task_run_external_id=None,
48
103
  )
49
104
 
105
+ task_run_external_id = None
106
+
50
107
  try:
51
- header, trace = serialized.split("\n", 1)
108
+ task_run_external_id, header, trace = cls._unpack_serialized_error(
109
+ serialized
110
+ )
111
+
52
112
  exc_type, exc = header.split(": ", 1)
53
113
  except ValueError:
54
114
  ## If we get here, we saw an error that was not serialized how we expected,
@@ -57,6 +117,7 @@ class TaskRunError(Exception):
57
117
  exc=serialized,
58
118
  exc_type="HatchetError",
59
119
  trace="",
120
+ task_run_external_id=task_run_external_id,
60
121
  )
61
122
 
62
123
  exc_type = exc_type.replace(":::", ": ")
@@ -66,16 +127,20 @@ class TaskRunError(Exception):
66
127
  exc=exc,
67
128
  exc_type=exc_type,
68
129
  trace=trace,
130
+ task_run_external_id=task_run_external_id,
69
131
  )
70
132
 
71
133
  @classmethod
72
- def from_exception(cls, exc: Exception) -> "TaskRunError":
134
+ def from_exception(
135
+ cls, exc: Exception, task_run_external_id: str | None
136
+ ) -> "TaskRunError":
73
137
  return cls(
74
138
  exc=str(exc),
75
139
  exc_type=type(exc).__name__,
76
140
  trace="".join(
77
141
  traceback.format_exception(type(exc), exc, exc.__traceback__)
78
142
  ),
143
+ task_run_external_id=task_run_external_id,
79
144
  )
80
145
 
81
146
 
@@ -3,7 +3,7 @@ import logging
3
3
  from collections.abc import Callable
4
4
  from datetime import timedelta
5
5
  from functools import cached_property
6
- from typing import Any, cast, overload
6
+ from typing import Any, Concatenate, ParamSpec, cast, overload
7
7
 
8
8
  from hatchet_sdk import Context, DurableContext
9
9
  from hatchet_sdk.client import Client
@@ -40,6 +40,8 @@ from hatchet_sdk.utils.timedelta_to_expression import Duration
40
40
  from hatchet_sdk.utils.typing import CoroutineLike
41
41
  from hatchet_sdk.worker.worker import LifespanFn, Worker
42
42
 
43
+ P = ParamSpec("P")
44
+
43
45
 
44
46
  class Hatchet:
45
47
  """
@@ -346,7 +348,7 @@ class Hatchet:
346
348
  backoff_max_seconds: int | None = None,
347
349
  default_filters: list[DefaultFilter] | None = None,
348
350
  ) -> Callable[
349
- [Callable[[EmptyModel, Context], R | CoroutineLike[R]]],
351
+ [Callable[Concatenate[EmptyModel, Context, P], R | CoroutineLike[R]]],
350
352
  Standalone[EmptyModel, R],
351
353
  ]: ...
352
354
 
@@ -372,7 +374,7 @@ class Hatchet:
372
374
  backoff_max_seconds: int | None = None,
373
375
  default_filters: list[DefaultFilter] | None = None,
374
376
  ) -> Callable[
375
- [Callable[[TWorkflowInput, Context], R | CoroutineLike[R]]],
377
+ [Callable[Concatenate[TWorkflowInput, Context, P], R | CoroutineLike[R]]],
376
378
  Standalone[TWorkflowInput, R],
377
379
  ]: ...
378
380
 
@@ -398,11 +400,11 @@ class Hatchet:
398
400
  default_filters: list[DefaultFilter] | None = None,
399
401
  ) -> (
400
402
  Callable[
401
- [Callable[[EmptyModel, Context], R | CoroutineLike[R]]],
403
+ [Callable[Concatenate[EmptyModel, Context, P], R | CoroutineLike[R]]],
402
404
  Standalone[EmptyModel, R],
403
405
  ]
404
406
  | Callable[
405
- [Callable[[TWorkflowInput, Context], R | CoroutineLike[R]]],
407
+ [Callable[Concatenate[TWorkflowInput, Context, P], R | CoroutineLike[R]]],
406
408
  Standalone[TWorkflowInput, R],
407
409
  ]
408
410
  ):
@@ -447,7 +449,9 @@ class Hatchet:
447
449
  """
448
450
 
449
451
  def inner(
450
- func: Callable[[TWorkflowInput, Context], R | CoroutineLike[R]],
452
+ func: Callable[
453
+ Concatenate[TWorkflowInput, Context, P], R | CoroutineLike[R]
454
+ ],
451
455
  ) -> Standalone[TWorkflowInput, R]:
452
456
  inferred_name = name or func.__name__
453
457
 
@@ -518,7 +522,7 @@ class Hatchet:
518
522
  backoff_max_seconds: int | None = None,
519
523
  default_filters: list[DefaultFilter] | None = None,
520
524
  ) -> Callable[
521
- [Callable[[EmptyModel, DurableContext], R | CoroutineLike[R]]],
525
+ [Callable[Concatenate[EmptyModel, DurableContext, P], R | CoroutineLike[R]]],
522
526
  Standalone[EmptyModel, R],
523
527
  ]: ...
524
528
 
@@ -544,7 +548,11 @@ class Hatchet:
544
548
  backoff_max_seconds: int | None = None,
545
549
  default_filters: list[DefaultFilter] | None = None,
546
550
  ) -> Callable[
547
- [Callable[[TWorkflowInput, DurableContext], R | CoroutineLike[R]]],
551
+ [
552
+ Callable[
553
+ Concatenate[TWorkflowInput, DurableContext, P], R | CoroutineLike[R]
554
+ ]
555
+ ],
548
556
  Standalone[TWorkflowInput, R],
549
557
  ]: ...
550
558
 
@@ -570,11 +578,19 @@ class Hatchet:
570
578
  default_filters: list[DefaultFilter] | None = None,
571
579
  ) -> (
572
580
  Callable[
573
- [Callable[[EmptyModel, DurableContext], R | CoroutineLike[R]]],
581
+ [
582
+ Callable[
583
+ Concatenate[EmptyModel, DurableContext, P], R | CoroutineLike[R]
584
+ ]
585
+ ],
574
586
  Standalone[EmptyModel, R],
575
587
  ]
576
588
  | Callable[
577
- [Callable[[TWorkflowInput, DurableContext], R | CoroutineLike[R]]],
589
+ [
590
+ Callable[
591
+ Concatenate[TWorkflowInput, DurableContext, P], R | CoroutineLike[R]
592
+ ]
593
+ ],
578
594
  Standalone[TWorkflowInput, R],
579
595
  ]
580
596
  ):
@@ -619,7 +635,9 @@ class Hatchet:
619
635
  """
620
636
 
621
637
  def inner(
622
- func: Callable[[TWorkflowInput, DurableContext], R | CoroutineLike[R]],
638
+ func: Callable[
639
+ Concatenate[TWorkflowInput, DurableContext, P], R | CoroutineLike[R]
640
+ ],
623
641
  ) -> Standalone[TWorkflowInput, R]:
624
642
  inferred_name = name or func.__name__
625
643
  workflow = Workflow[TWorkflowInput](
@@ -1,20 +1,10 @@
1
1
  from enum import Enum
2
2
 
3
- from celpy import CELEvalError, Environment # type: ignore
4
3
  from pydantic import BaseModel, model_validator
5
4
 
6
5
  from hatchet_sdk.contracts.v1.workflows_pb2 import CreateTaskRateLimit
7
6
 
8
7
 
9
- def validate_cel_expression(expr: str) -> bool:
10
- env = Environment()
11
- try:
12
- env.compile(expr)
13
- return True
14
- except CELEvalError:
15
- return False
16
-
17
-
18
8
  class RateLimitDuration(str, Enum):
19
9
  SECOND = "SECOND"
20
10
  MINUTE = "MINUTE"
@@ -72,17 +62,7 @@ class RateLimit(BaseModel):
72
62
  if self.dynamic_key and self.static_key:
73
63
  raise ValueError("Cannot have both static key and dynamic key set")
74
64
 
75
- if self.dynamic_key and not validate_cel_expression(self.dynamic_key):
76
- raise ValueError(f"Invalid CEL expression: {self.dynamic_key}")
77
-
78
- if not isinstance(self.units, int) and not validate_cel_expression(self.units):
79
- raise ValueError(f"Invalid CEL expression: {self.units}")
80
-
81
- if (
82
- self.limit
83
- and not isinstance(self.limit, int)
84
- and not validate_cel_expression(self.limit)
85
- ):
65
+ if self.limit and not isinstance(self.limit, int):
86
66
  raise ValueError(f"Invalid CEL expression: {self.limit}")
87
67
 
88
68
  if self.dynamic_key and not self.limit:
@@ -1,5 +1,21 @@
1
+ import asyncio
1
2
  from collections.abc import Callable
2
- from typing import TYPE_CHECKING, Any, Generic, cast, get_type_hints
3
+ from inspect import Parameter, iscoroutinefunction, signature
4
+ from typing import (
5
+ TYPE_CHECKING,
6
+ Annotated,
7
+ Any,
8
+ Concatenate,
9
+ Generic,
10
+ ParamSpec,
11
+ TypeVar,
12
+ cast,
13
+ get_args,
14
+ get_origin,
15
+ get_type_hints,
16
+ )
17
+
18
+ from pydantic import BaseModel, ConfigDict
3
19
 
4
20
  from hatchet_sdk.conditions import (
5
21
  Action,
@@ -18,6 +34,7 @@ from hatchet_sdk.contracts.v1.workflows_pb2 import (
18
34
  CreateTaskRateLimit,
19
35
  DesiredWorkerLabels,
20
36
  )
37
+ from hatchet_sdk.exceptions import InvalidDependencyError
21
38
  from hatchet_sdk.runnables.types import (
22
39
  ConcurrencyExpression,
23
40
  EmptyModel,
@@ -25,7 +42,6 @@ from hatchet_sdk.runnables.types import (
25
42
  StepType,
26
43
  TWorkflowInput,
27
44
  is_async_fn,
28
- is_durable_sync_fn,
29
45
  is_sync_fn,
30
46
  )
31
47
  from hatchet_sdk.utils.timedelta_to_expression import Duration, timedelta_to_expr
@@ -41,16 +57,45 @@ from hatchet_sdk.worker.runner.utils.capture_logs import AsyncLogSender
41
57
  if TYPE_CHECKING:
42
58
  from hatchet_sdk.runnables.workflow import Workflow
43
59
 
60
+ T = TypeVar("T")
61
+ P = ParamSpec("P")
62
+
63
+
64
+ class Depends(Generic[T, TWorkflowInput]):
65
+ def __init__(
66
+ self, fn: Callable[[TWorkflowInput, Context], T | CoroutineLike[T]]
67
+ ) -> None:
68
+ sig = signature(fn)
69
+ params = list(sig.parameters.values())
70
+
71
+ if len(params) != 2:
72
+ raise InvalidDependencyError(
73
+ f"Dependency function {fn.__name__} must have exactly two parameters: input and ctx."
74
+ )
75
+
76
+ self.fn = fn
77
+
78
+
79
+ class DependencyToInject(BaseModel):
80
+ model_config = ConfigDict(arbitrary_types_allowed=True)
81
+
82
+ name: str
83
+ value: Any
84
+
44
85
 
45
86
  class Task(Generic[TWorkflowInput, R]):
46
87
  def __init__(
47
88
  self,
48
89
  _fn: (
49
- Callable[[TWorkflowInput, Context], R | CoroutineLike[R]]
50
- | Callable[[TWorkflowInput, Context], AwaitableLike[R]]
90
+ Callable[Concatenate[TWorkflowInput, Context, P], R | CoroutineLike[R]]
91
+ | Callable[Concatenate[TWorkflowInput, Context, P], AwaitableLike[R]]
51
92
  | (
52
- Callable[[TWorkflowInput, DurableContext], R | CoroutineLike[R]]
53
- | Callable[[TWorkflowInput, DurableContext], AwaitableLike[R]]
93
+ Callable[
94
+ Concatenate[TWorkflowInput, DurableContext, P], R | CoroutineLike[R]
95
+ ]
96
+ | Callable[
97
+ Concatenate[TWorkflowInput, DurableContext, P], AwaitableLike[R]
98
+ ]
54
99
  )
55
100
  ),
56
101
  is_durable: bool,
@@ -100,33 +145,74 @@ class Task(Generic[TWorkflowInput, R]):
100
145
  step_output=return_type if is_basemodel_subclass(return_type) else None,
101
146
  )
102
147
 
103
- def call(self, ctx: Context | DurableContext) -> R:
148
+ async def _parse_parameter(
149
+ self,
150
+ name: str,
151
+ param: Parameter,
152
+ input: TWorkflowInput,
153
+ ctx: Context | DurableContext,
154
+ ) -> DependencyToInject | None:
155
+ annotation = param.annotation
156
+
157
+ if get_origin(annotation) is Annotated:
158
+ args = get_args(annotation)
159
+
160
+ if len(args) < 2:
161
+ return None
162
+
163
+ metadata = args[1:]
164
+
165
+ for item in metadata:
166
+ if isinstance(item, Depends):
167
+ if iscoroutinefunction(item.fn):
168
+ return DependencyToInject(
169
+ name=name, value=await item.fn(input, ctx)
170
+ )
171
+
172
+ return DependencyToInject(
173
+ name=name, value=await asyncio.to_thread(item.fn, input, ctx)
174
+ )
175
+
176
+ return None
177
+
178
+ async def _unpack_dependencies(
179
+ self, ctx: Context | DurableContext
180
+ ) -> dict[str, Any]:
181
+ sig = signature(self.fn)
182
+ input = self.workflow._get_workflow_input(ctx)
183
+ return {
184
+ parsed.name: parsed.value
185
+ for n, p in sig.parameters.items()
186
+ if (parsed := await self._parse_parameter(n, p, input, ctx)) is not None
187
+ }
188
+
189
+ def call(
190
+ self, ctx: Context | DurableContext, dependencies: dict[str, Any] | None = None
191
+ ) -> R:
104
192
  if self.is_async_function:
105
193
  raise TypeError(f"{self.name} is not a sync function. Use `acall` instead.")
106
194
 
107
195
  workflow_input = self.workflow._get_workflow_input(ctx)
196
+ dependencies = dependencies or {}
108
197
 
109
- if self.is_durable:
110
- fn = cast(Callable[[TWorkflowInput, DurableContext], R], self.fn)
111
- if is_durable_sync_fn(fn):
112
- return fn(workflow_input, cast(DurableContext, ctx))
113
- else:
114
- fn = cast(Callable[[TWorkflowInput, Context], R], self.fn)
115
- if is_sync_fn(fn):
116
- return fn(workflow_input, ctx)
198
+ if is_sync_fn(self.fn): # type: ignore
199
+ return self.fn(workflow_input, cast(Context, ctx), **dependencies) # type: ignore
117
200
 
118
201
  raise TypeError(f"{self.name} is not a sync function. Use `acall` instead.")
119
202
 
120
- async def aio_call(self, ctx: Context | DurableContext) -> R:
203
+ async def aio_call(
204
+ self, ctx: Context | DurableContext, dependencies: dict[str, Any] | None = None
205
+ ) -> R:
121
206
  if not self.is_async_function:
122
207
  raise TypeError(
123
208
  f"{self.name} is not an async function. Use `call` instead."
124
209
  )
125
210
 
126
211
  workflow_input = self.workflow._get_workflow_input(ctx)
212
+ dependencies = dependencies or {}
127
213
 
128
214
  if is_async_fn(self.fn): # type: ignore
129
- return await self.fn(workflow_input, cast(Context, ctx)) # type: ignore
215
+ return await self.fn(workflow_input, cast(Context, ctx), **dependencies) # type: ignore
130
216
 
131
217
  raise TypeError(f"{self.name} is not an async function. Use `call` instead.")
132
218
 
@@ -255,6 +341,7 @@ class Task(Generic[TWorkflowInput, R]):
255
341
  parent_outputs: dict[str, JSONSerializableMapping] | None = None,
256
342
  retry_count: int = 0,
257
343
  lifespan: Any = None,
344
+ dependencies: dict[str, Any] | None = None,
258
345
  ) -> R:
259
346
  """
260
347
  Mimic the execution of a task. This method is intended to be used to unit test
@@ -266,6 +353,7 @@ class Task(Generic[TWorkflowInput, R]):
266
353
  :param parent_outputs: Outputs from parent tasks, if any. This is useful for mimicking DAG functionality. For instance, if you have a task `step_2` that has a `parent` which is `step_1`, you can pass `parent_outputs={"step_1": {"result": "Hello, world!"}}` to `step_2.mock_run()` to be able to access `ctx.task_output(step_1)` in `step_2`.
267
354
  :param retry_count: The number of times the task has been retried.
268
355
  :param lifespan: The lifespan to be used in the task, which is useful if one was set on the worker. This will allow you to access `ctx.lifespan` inside of your task.
356
+ :param dependencies: Dependencies to be injected into the task. This is useful for tasks that have dependencies defined using `Depends`. **IMPORTANT**: You must pass the dependencies _directly_, **not** the `Depends` objects themselves. For example, if you have a task that has a dependency `config: Annotated[str, Depends(get_config)]`, you should pass `dependencies={"config": "config_value"}` to `aio_mock_run`.
269
357
 
270
358
  :return: The output of the task.
271
359
  :raises TypeError: If the task is an async function and `mock_run` is called, or if the task is a sync function and `aio_mock_run` is called.
@@ -280,7 +368,7 @@ class Task(Generic[TWorkflowInput, R]):
280
368
  input, additional_metadata, parent_outputs, retry_count, lifespan
281
369
  )
282
370
 
283
- return self.call(ctx)
371
+ return self.call(ctx, dependencies)
284
372
 
285
373
  async def aio_mock_run(
286
374
  self,
@@ -289,6 +377,7 @@ class Task(Generic[TWorkflowInput, R]):
289
377
  parent_outputs: dict[str, JSONSerializableMapping] | None = None,
290
378
  retry_count: int = 0,
291
379
  lifespan: Any = None,
380
+ dependencies: dict[str, Any] | None = None,
292
381
  ) -> R:
293
382
  """
294
383
  Mimic the execution of a task. This method is intended to be used to unit test
@@ -300,6 +389,7 @@ class Task(Generic[TWorkflowInput, R]):
300
389
  :param parent_outputs: Outputs from parent tasks, if any. This is useful for mimicking DAG functionality. For instance, if you have a task `step_2` that has a `parent` which is `step_1`, you can pass `parent_outputs={"step_1": {"result": "Hello, world!"}}` to `step_2.mock_run()` to be able to access `ctx.task_output(step_1)` in `step_2`.
301
390
  :param retry_count: The number of times the task has been retried.
302
391
  :param lifespan: The lifespan to be used in the task, which is useful if one was set on the worker. This will allow you to access `ctx.lifespan` inside of your task.
392
+ :param dependencies: Dependencies to be injected into the task. This is useful for tasks that have dependencies defined using `Depends`. **IMPORTANT**: You must pass the dependencies _directly_, **not** the `Depends` objects themselves. For example, if you have a task that has a dependency `config: Annotated[str, Depends(get_config)]`, you should pass `dependencies={"config": "config_value"}` to `aio_mock_run`.
303
393
 
304
394
  :return: The output of the task.
305
395
  :raises TypeError: If the task is an async function and `mock_run` is called, or if the task is a sync function and `aio_mock_run` is called.
@@ -318,4 +408,4 @@ class Task(Generic[TWorkflowInput, R]):
318
408
  lifespan,
319
409
  )
320
410
 
321
- return await self.aio_call(ctx)
411
+ return await self.aio_call(ctx, dependencies)