everyrow 0.1.10__py3-none-any.whl → 0.2.0__py3-none-any.whl

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 (207) hide show
  1. everyrow/__init__.py +8 -1
  2. everyrow/api_utils.py +5 -1
  3. everyrow/billing.py +29 -0
  4. everyrow/constants.py +1 -1
  5. everyrow/generated/__init__.py +1 -1
  6. everyrow/generated/api/{default/interrupt_chat_task_tasks_chat_interrupt_post.py → artifacts/create_artifact_artifacts_post.py} +38 -32
  7. everyrow/generated/api/billing/__init__.py +1 -0
  8. everyrow/generated/api/{default/get_queues_stats_jobs_queues_get.py → billing/get_billing_balance_billing_get.py} +25 -17
  9. everyrow/generated/api/operations/__init__.py +1 -0
  10. everyrow/generated/api/{default/re_execute_task_endpoint_tasks_re_execute_post.py → operations/agent_map_operations_agent_map_post.py} +53 -41
  11. everyrow/generated/api/{default/create_workflow_from_artifact_workflows_from_artifact_post.py → operations/dedupe_operations_dedupe_post.py} +39 -33
  12. everyrow/generated/api/{default/submit_task_tasks_post.py → operations/merge_operations_merge_post.py} +37 -29
  13. everyrow/generated/api/{default/copy_workflow_endpoint_workflows_copy_post.py → operations/rank_operations_rank_post.py} +43 -29
  14. everyrow/generated/api/{default/export_to_google_sheets_export_post.py → operations/screen_operations_screen_post.py} +43 -31
  15. everyrow/generated/api/operations/single_agent_operations_single_agent_post.py +236 -0
  16. everyrow/generated/api/sessions/__init__.py +1 -0
  17. everyrow/generated/api/{default/copy_artifacts_artifacts_copy_post.py → sessions/create_session_endpoint_sessions_post.py} +35 -27
  18. everyrow/generated/api/tasks/__init__.py +1 -0
  19. everyrow/generated/api/{default/get_job_progress_for_task_jobs_progress_get.py → tasks/get_task_result_tasks_task_id_result_get.py} +45 -33
  20. everyrow/generated/api/{default/get_task_status_endpoint_tasks_task_id_status_get.py → tasks/get_task_status_tasks_task_id_status_get.py} +24 -42
  21. everyrow/generated/models/__init__.py +82 -266
  22. everyrow/generated/models/agent_map_operation.py +315 -0
  23. everyrow/generated/models/{artifact_group_record_metadata_type_0.py → agent_map_operation_input_type_1_item.py} +5 -5
  24. everyrow/generated/models/agent_map_operation_input_type_2.py +46 -0
  25. everyrow/generated/models/{standalone_artifact_record_analysis_type_0.py → agent_map_operation_response_schema_type_0.py} +5 -5
  26. everyrow/generated/models/{create_query_params.py → billing_response.py} +13 -12
  27. everyrow/generated/models/{continue_task_request.py → create_artifact_request.py} +43 -43
  28. everyrow/generated/models/create_artifact_request_data_type_0_item.py +46 -0
  29. everyrow/generated/models/{task_metadata_cols_to_rename_type_0.py → create_artifact_request_data_type_1.py} +5 -5
  30. everyrow/generated/models/{copy_artifacts_response.py → create_artifact_response.py} +12 -12
  31. everyrow/generated/models/{create_session_request.py → create_session.py} +6 -7
  32. everyrow/generated/models/dedupe_operation.py +151 -0
  33. everyrow/generated/models/dedupe_operation_input_type_1_item.py +46 -0
  34. everyrow/generated/models/{import_request_token_data.py → dedupe_operation_input_type_2.py} +5 -5
  35. everyrow/generated/models/error_response.py +109 -0
  36. everyrow/generated/models/{task_insert_query_params.py → error_response_details_type_0.py} +5 -5
  37. everyrow/generated/models/insufficient_balance_error.py +8 -0
  38. everyrow/generated/models/{llm_enum.py → llm_enum_public.py} +1 -20
  39. everyrow/generated/models/merge_operation.py +278 -0
  40. everyrow/generated/models/merge_operation_left_input_type_1_item.py +46 -0
  41. everyrow/generated/models/{chat_completion_message_tool_call.py → merge_operation_left_input_type_2.py} +5 -5
  42. everyrow/generated/models/merge_operation_right_input_type_1_item.py +46 -0
  43. everyrow/generated/models/merge_operation_right_input_type_2.py +46 -0
  44. everyrow/generated/models/merge_operation_use_web_search_type_0.py +10 -0
  45. everyrow/generated/models/operation_response.py +131 -0
  46. everyrow/generated/models/{multi_agent_effort_level.py → public_effort_level.py} +1 -1
  47. everyrow/generated/models/public_task_type.py +12 -0
  48. everyrow/generated/models/rank_operation.py +203 -0
  49. everyrow/generated/models/rank_operation_input_type_1_item.py +46 -0
  50. everyrow/generated/models/{export_request_token_data.py → rank_operation_input_type_2.py} +5 -5
  51. everyrow/generated/models/{artifact_group_record_analysis_type_0.py → rank_operation_response_schema_type_0.py} +5 -5
  52. everyrow/generated/models/screen_operation.py +186 -0
  53. everyrow/generated/models/screen_operation_input_type_1_item.py +46 -0
  54. everyrow/generated/models/screen_operation_input_type_2.py +46 -0
  55. everyrow/generated/models/screen_operation_response_schema_type_0.py +46 -0
  56. everyrow/generated/models/{create_session_response.py → session_response.py} +7 -8
  57. everyrow/generated/models/single_agent_operation.py +304 -0
  58. everyrow/generated/models/single_agent_operation_input_type_1_item.py +46 -0
  59. everyrow/generated/models/single_agent_operation_input_type_2.py +46 -0
  60. everyrow/generated/models/single_agent_operation_response_schema_type_0.py +46 -0
  61. everyrow/generated/models/task_result_response.py +185 -0
  62. everyrow/generated/models/task_result_response_data_type_0_item.py +46 -0
  63. everyrow/generated/models/task_result_response_data_type_1.py +46 -0
  64. everyrow/generated/models/task_status_response.py +99 -19
  65. everyrow/ops.py +360 -434
  66. everyrow/session.py +5 -7
  67. everyrow/task.py +68 -115
  68. {everyrow-0.1.10.dist-info → everyrow-0.2.0.dist-info}/METADATA +22 -8
  69. everyrow-0.2.0.dist-info/RECORD +81 -0
  70. everyrow/citations.py +0 -50
  71. everyrow/generated/api/default/continue_task_endpoint_tasks_continue_post.py +0 -208
  72. everyrow/generated/api/default/create_api_key_endpoint_api_keys_create_post.py +0 -186
  73. everyrow/generated/api/default/create_session_endpoint_sessions_create_post.py +0 -198
  74. everyrow/generated/api/default/generate_feedback_endpoint_tasks_generate_feedback_post.py +0 -186
  75. everyrow/generated/api/default/get_artifacts_artifacts_get.py +0 -260
  76. everyrow/generated/api/default/get_default_timeout_seconds_models_default_timeout_seconds_get.py +0 -165
  77. everyrow/generated/api/default/get_metrics_metrics_get.py +0 -80
  78. everyrow/generated/api/default/get_user_usage_usage_get.py +0 -123
  79. everyrow/generated/api/default/healthz_healthz_get.py +0 -127
  80. everyrow/generated/api/default/import_from_google_sheets_import_post.py +0 -170
  81. everyrow/generated/api/default/list_api_keys_endpoint_api_keys_get.py +0 -186
  82. everyrow/generated/api/default/revoke_api_key_endpoint_api_keys_key_id_revoke_post.py +0 -181
  83. everyrow/generated/api/default/revoke_jobs_for_task_jobs_revoke_post.py +0 -164
  84. everyrow/generated/api/default/rollback_to_message_endpoint_tasks_chat_rollback_post.py +0 -186
  85. everyrow/generated/api/default/submit_chat_task_tasks_chat_post.py +0 -164
  86. everyrow/generated/api/default/task_resource_estimation_task_resource_estimation_post.py +0 -319
  87. everyrow/generated/api/default/trigger_workflow_execution_endpoint_workflows_trigger_post.py +0 -166
  88. everyrow/generated/api/default/whoami_whoami_get.py +0 -127
  89. everyrow/generated/models/agent_improvement_instruction.py +0 -69
  90. everyrow/generated/models/agent_query_params.py +0 -383
  91. everyrow/generated/models/agent_query_params_system_prompt_kind_type_0.py +0 -10
  92. everyrow/generated/models/agent_task_args.py +0 -163
  93. everyrow/generated/models/agent_task_args_processing_mode.py +0 -9
  94. everyrow/generated/models/allowed_suggestions.py +0 -9
  95. everyrow/generated/models/api_key_info.py +0 -163
  96. everyrow/generated/models/artifact_changed_payload.py +0 -89
  97. everyrow/generated/models/artifact_group_record.py +0 -363
  98. everyrow/generated/models/artifact_group_record_trace_mapping_type_0.py +0 -46
  99. everyrow/generated/models/artifact_status.py +0 -14
  100. everyrow/generated/models/auto_cohort_conversation_message.py +0 -533
  101. everyrow/generated/models/aux_data.py +0 -128
  102. everyrow/generated/models/aux_data_source_bank.py +0 -59
  103. everyrow/generated/models/chat_message_metadata.py +0 -193
  104. everyrow/generated/models/concatenate_query_params.py +0 -46
  105. everyrow/generated/models/concatenate_request.py +0 -306
  106. everyrow/generated/models/continue_reason.py +0 -9
  107. everyrow/generated/models/controller_improvement_round.py +0 -79
  108. everyrow/generated/models/conversation_changed_payload.py +0 -89
  109. everyrow/generated/models/copy_artifacts_request.py +0 -70
  110. everyrow/generated/models/copy_workflow_request.py +0 -62
  111. everyrow/generated/models/copy_workflow_response.py +0 -70
  112. everyrow/generated/models/create_api_key_request.py +0 -95
  113. everyrow/generated/models/create_api_key_response.py +0 -96
  114. everyrow/generated/models/create_group_query_params.py +0 -61
  115. everyrow/generated/models/create_group_request.py +0 -305
  116. everyrow/generated/models/create_request.py +0 -305
  117. everyrow/generated/models/create_workflow_from_artifact_request.py +0 -92
  118. everyrow/generated/models/create_workflow_from_artifact_response.py +0 -70
  119. everyrow/generated/models/data_frame_method.py +0 -18
  120. everyrow/generated/models/date_cutoffs.py +0 -145
  121. everyrow/generated/models/dedupe_public_params.py +0 -64
  122. everyrow/generated/models/dedupe_request_params.py +0 -311
  123. everyrow/generated/models/deep_merge_public_params.py +0 -143
  124. everyrow/generated/models/deep_merge_request.py +0 -313
  125. everyrow/generated/models/deep_rank_public_params.py +0 -109
  126. everyrow/generated/models/deep_rank_request.py +0 -313
  127. everyrow/generated/models/deep_screen_public_params.py +0 -132
  128. everyrow/generated/models/deep_screen_request.py +0 -313
  129. everyrow/generated/models/derive_expression.py +0 -69
  130. everyrow/generated/models/derive_query_params.py +0 -75
  131. everyrow/generated/models/derive_request.py +0 -307
  132. everyrow/generated/models/document_query_tool.py +0 -12
  133. everyrow/generated/models/drop_columns_query_params.py +0 -61
  134. everyrow/generated/models/drop_columns_request.py +0 -305
  135. everyrow/generated/models/event_type.py +0 -14
  136. everyrow/generated/models/execution_metadata.py +0 -146
  137. everyrow/generated/models/export_request.py +0 -75
  138. everyrow/generated/models/export_to_google_sheets_export_post_response_export_to_google_sheets_export_post.py +0 -46
  139. everyrow/generated/models/filter_query_params.py +0 -91
  140. everyrow/generated/models/filter_request.py +0 -305
  141. everyrow/generated/models/flatten_query_params.py +0 -46
  142. everyrow/generated/models/flatten_request.py +0 -305
  143. everyrow/generated/models/generate_feedback_request.py +0 -62
  144. everyrow/generated/models/group_by_query_params.py +0 -62
  145. everyrow/generated/models/group_by_request.py +0 -305
  146. everyrow/generated/models/healthz_healthz_get_response_healthz_healthz_get.py +0 -46
  147. everyrow/generated/models/image_chat_content_part.py +0 -80
  148. everyrow/generated/models/image_chat_content_part_image_url.py +0 -46
  149. everyrow/generated/models/import_from_google_sheets_import_post_response_import_from_google_sheets_import_post.py +0 -46
  150. everyrow/generated/models/import_request.py +0 -83
  151. everyrow/generated/models/join_query_params.py +0 -73
  152. everyrow/generated/models/join_request.py +0 -305
  153. everyrow/generated/models/map_agent_request_params.py +0 -313
  154. everyrow/generated/models/map_multi_agent_request_params.py +0 -313
  155. everyrow/generated/models/message_created_payload.py +0 -98
  156. everyrow/generated/models/multi_agent_query_params.py +0 -264
  157. everyrow/generated/models/multi_modal_chat_message.py +0 -160
  158. everyrow/generated/models/multi_modal_chat_message_role.py +0 -10
  159. everyrow/generated/models/preview_metadata.py +0 -144
  160. everyrow/generated/models/processing_mode.py +0 -10
  161. everyrow/generated/models/progress_status.py +0 -83
  162. everyrow/generated/models/queue_stats.py +0 -77
  163. everyrow/generated/models/reduce_agent_request_params.py +0 -305
  164. everyrow/generated/models/reduce_multi_agent_request_params.py +0 -305
  165. everyrow/generated/models/resource_estimation_response.py +0 -85
  166. everyrow/generated/models/response_schema_type.py +0 -9
  167. everyrow/generated/models/revoke_api_key_response.py +0 -61
  168. everyrow/generated/models/rollback_to_message_request.py +0 -62
  169. everyrow/generated/models/rollback_to_message_response.py +0 -77
  170. everyrow/generated/models/session_changed_payload.py +0 -69
  171. everyrow/generated/models/simple_chat_message.py +0 -121
  172. everyrow/generated/models/simple_chat_message_role.py +0 -10
  173. everyrow/generated/models/simple_chat_message_with_tool_calls.py +0 -156
  174. everyrow/generated/models/source_database_entry.py +0 -92
  175. everyrow/generated/models/standalone_artifact_record.py +0 -311
  176. everyrow/generated/models/standalone_artifact_record_metadata_type_0.py +0 -46
  177. everyrow/generated/models/standalone_artifact_record_trace_mapping_type_0.py +0 -46
  178. everyrow/generated/models/status_count.py +0 -71
  179. everyrow/generated/models/status_count_status.py +0 -13
  180. everyrow/generated/models/submit_chat_task_body.py +0 -497
  181. everyrow/generated/models/submit_chat_task_body_selected_task_type_type_0.py +0 -11
  182. everyrow/generated/models/submit_task_body.py +0 -745
  183. everyrow/generated/models/task_changed_payload.py +0 -105
  184. everyrow/generated/models/task_effort.py +0 -10
  185. everyrow/generated/models/task_id_request.py +0 -62
  186. everyrow/generated/models/task_insert.py +0 -725
  187. everyrow/generated/models/task_metadata.py +0 -323
  188. everyrow/generated/models/task_response.py +0 -62
  189. everyrow/generated/models/task_type.py +0 -31
  190. everyrow/generated/models/text_chat_content_part.py +0 -74
  191. everyrow/generated/models/tool_response_message.py +0 -127
  192. everyrow/generated/models/toolkit_constants.py +0 -80
  193. everyrow/generated/models/trace_changed_payload.py +0 -94
  194. everyrow/generated/models/trace_info.py +0 -78
  195. everyrow/generated/models/trigger_workflow_execution_request.py +0 -112
  196. everyrow/generated/models/trigger_workflow_execution_request_task_params.py +0 -65
  197. everyrow/generated/models/trigger_workflow_execution_request_task_params_additional_property.py +0 -46
  198. everyrow/generated/models/trigger_workflow_execution_response.py +0 -69
  199. everyrow/generated/models/upload_csv_payload.py +0 -310
  200. everyrow/generated/models/upload_csv_query_params.py +0 -114
  201. everyrow/generated/models/usage_response.py +0 -77
  202. everyrow/generated/models/whoami_whoami_get_response_whoami_whoami_get.py +0 -46
  203. everyrow/generated/models/workflow_leaf_node_input.py +0 -70
  204. everyrow-0.1.10.dist-info/RECORD +0 -183
  205. /everyrow/generated/api/{default → artifacts}/__init__.py +0 -0
  206. {everyrow-0.1.10.dist-info → everyrow-0.2.0.dist-info}/WHEEL +0 -0
  207. {everyrow-0.1.10.dist-info → everyrow-0.2.0.dist-info}/licenses/LICENSE.txt +0 -0
@@ -1,725 +0,0 @@
1
- from __future__ import annotations
2
-
3
- import datetime
4
- from collections.abc import Mapping
5
- from typing import TYPE_CHECKING, Any, TypeVar, cast
6
- from uuid import UUID
7
-
8
- from attrs import define as _attrs_define
9
- from dateutil.parser import isoparse
10
-
11
- from ..models.processing_mode import ProcessingMode
12
- from ..models.task_status import TaskStatus
13
- from ..models.task_type import TaskType
14
- from ..types import UNSET, Unset
15
-
16
- if TYPE_CHECKING:
17
- from ..models.execution_metadata import ExecutionMetadata
18
- from ..models.task_insert_query_params import TaskInsertQueryParams
19
- from ..models.task_metadata import TaskMetadata
20
-
21
-
22
- T = TypeVar("T", bound="TaskInsert")
23
-
24
-
25
- @_attrs_define
26
- class TaskInsert:
27
- """
28
- Attributes:
29
- type_ (TaskType):
30
- processing_method (ProcessingMode):
31
- query_params (TaskInsertQueryParams):
32
- session_id (UUID):
33
- status (TaskStatus):
34
- id (None | str | Unset | UUID):
35
- context_artifacts (list[UUID] | None | Unset):
36
- created_at (datetime.datetime | None | Unset):
37
- ended_at (datetime.datetime | None | Unset):
38
- input_artifacts (list[UUID] | None | Unset):
39
- metadata (None | TaskMetadata | Unset):
40
- updated_at (datetime.datetime | None | Unset):
41
- error (None | str | Unset):
42
- is_group (bool | None | Unset):
43
- label (None | str | Unset):
44
- description (None | str | Unset):
45
- artifact_id (None | Unset | UUID):
46
- join_with_input (bool | None | Unset):
47
- execution_metadata (ExecutionMetadata | None | Unset):
48
- workflow_task_id (None | Unset | UUID):
49
- workflow_run_id (None | Unset | UUID):
50
- replaces_task_id (None | Unset | UUID):
51
- original_task_id (None | Unset | UUID):
52
- conversation_id (None | Unset | UUID):
53
- yolo_mode (bool | None | Unset):
54
- n_preview_iteration (int | None | Unset):
55
- enable_preview_loop (bool | None | Unset):
56
- twin_artifact_id (None | Unset | UUID):
57
- """
58
-
59
- type_: TaskType
60
- processing_method: ProcessingMode
61
- query_params: TaskInsertQueryParams
62
- session_id: UUID
63
- status: TaskStatus
64
- id: None | str | Unset | UUID = UNSET
65
- context_artifacts: list[UUID] | None | Unset = UNSET
66
- created_at: datetime.datetime | None | Unset = UNSET
67
- ended_at: datetime.datetime | None | Unset = UNSET
68
- input_artifacts: list[UUID] | None | Unset = UNSET
69
- metadata: None | TaskMetadata | Unset = UNSET
70
- updated_at: datetime.datetime | None | Unset = UNSET
71
- error: None | str | Unset = UNSET
72
- is_group: bool | None | Unset = UNSET
73
- label: None | str | Unset = UNSET
74
- description: None | str | Unset = UNSET
75
- artifact_id: None | Unset | UUID = UNSET
76
- join_with_input: bool | None | Unset = UNSET
77
- execution_metadata: ExecutionMetadata | None | Unset = UNSET
78
- workflow_task_id: None | Unset | UUID = UNSET
79
- workflow_run_id: None | Unset | UUID = UNSET
80
- replaces_task_id: None | Unset | UUID = UNSET
81
- original_task_id: None | Unset | UUID = UNSET
82
- conversation_id: None | Unset | UUID = UNSET
83
- yolo_mode: bool | None | Unset = UNSET
84
- n_preview_iteration: int | None | Unset = UNSET
85
- enable_preview_loop: bool | None | Unset = UNSET
86
- twin_artifact_id: None | Unset | UUID = UNSET
87
-
88
- def to_dict(self) -> dict[str, Any]:
89
- from ..models.execution_metadata import ExecutionMetadata
90
- from ..models.task_metadata import TaskMetadata
91
-
92
- type_ = self.type_.value
93
-
94
- processing_method = self.processing_method.value
95
-
96
- query_params = self.query_params.to_dict()
97
-
98
- session_id = str(self.session_id)
99
-
100
- status = self.status.value
101
-
102
- id: None | str | Unset
103
- if isinstance(self.id, Unset):
104
- id = UNSET
105
- elif isinstance(self.id, UUID):
106
- id = str(self.id)
107
- else:
108
- id = self.id
109
-
110
- context_artifacts: list[str] | None | Unset
111
- if isinstance(self.context_artifacts, Unset):
112
- context_artifacts = UNSET
113
- elif isinstance(self.context_artifacts, list):
114
- context_artifacts = []
115
- for componentsschemas_context_artifacts_ids_item_data in self.context_artifacts:
116
- componentsschemas_context_artifacts_ids_item = str(componentsschemas_context_artifacts_ids_item_data)
117
- context_artifacts.append(componentsschemas_context_artifacts_ids_item)
118
-
119
- else:
120
- context_artifacts = self.context_artifacts
121
-
122
- created_at: None | str | Unset
123
- if isinstance(self.created_at, Unset):
124
- created_at = UNSET
125
- elif isinstance(self.created_at, datetime.datetime):
126
- created_at = self.created_at.isoformat()
127
- else:
128
- created_at = self.created_at
129
-
130
- ended_at: None | str | Unset
131
- if isinstance(self.ended_at, Unset):
132
- ended_at = UNSET
133
- elif isinstance(self.ended_at, datetime.datetime):
134
- ended_at = self.ended_at.isoformat()
135
- else:
136
- ended_at = self.ended_at
137
-
138
- input_artifacts: list[str] | None | Unset
139
- if isinstance(self.input_artifacts, Unset):
140
- input_artifacts = UNSET
141
- elif isinstance(self.input_artifacts, list):
142
- input_artifacts = []
143
- for componentsschemas_input_artifacts_ids_item_data in self.input_artifacts:
144
- componentsschemas_input_artifacts_ids_item = str(componentsschemas_input_artifacts_ids_item_data)
145
- input_artifacts.append(componentsschemas_input_artifacts_ids_item)
146
-
147
- else:
148
- input_artifacts = self.input_artifacts
149
-
150
- metadata: dict[str, Any] | None | Unset
151
- if isinstance(self.metadata, Unset):
152
- metadata = UNSET
153
- elif isinstance(self.metadata, TaskMetadata):
154
- metadata = self.metadata.to_dict()
155
- else:
156
- metadata = self.metadata
157
-
158
- updated_at: None | str | Unset
159
- if isinstance(self.updated_at, Unset):
160
- updated_at = UNSET
161
- elif isinstance(self.updated_at, datetime.datetime):
162
- updated_at = self.updated_at.isoformat()
163
- else:
164
- updated_at = self.updated_at
165
-
166
- error: None | str | Unset
167
- if isinstance(self.error, Unset):
168
- error = UNSET
169
- else:
170
- error = self.error
171
-
172
- is_group: bool | None | Unset
173
- if isinstance(self.is_group, Unset):
174
- is_group = UNSET
175
- else:
176
- is_group = self.is_group
177
-
178
- label: None | str | Unset
179
- if isinstance(self.label, Unset):
180
- label = UNSET
181
- else:
182
- label = self.label
183
-
184
- description: None | str | Unset
185
- if isinstance(self.description, Unset):
186
- description = UNSET
187
- else:
188
- description = self.description
189
-
190
- artifact_id: None | str | Unset
191
- if isinstance(self.artifact_id, Unset):
192
- artifact_id = UNSET
193
- elif isinstance(self.artifact_id, UUID):
194
- artifact_id = str(self.artifact_id)
195
- else:
196
- artifact_id = self.artifact_id
197
-
198
- join_with_input: bool | None | Unset
199
- if isinstance(self.join_with_input, Unset):
200
- join_with_input = UNSET
201
- else:
202
- join_with_input = self.join_with_input
203
-
204
- execution_metadata: dict[str, Any] | None | Unset
205
- if isinstance(self.execution_metadata, Unset):
206
- execution_metadata = UNSET
207
- elif isinstance(self.execution_metadata, ExecutionMetadata):
208
- execution_metadata = self.execution_metadata.to_dict()
209
- else:
210
- execution_metadata = self.execution_metadata
211
-
212
- workflow_task_id: None | str | Unset
213
- if isinstance(self.workflow_task_id, Unset):
214
- workflow_task_id = UNSET
215
- elif isinstance(self.workflow_task_id, UUID):
216
- workflow_task_id = str(self.workflow_task_id)
217
- else:
218
- workflow_task_id = self.workflow_task_id
219
-
220
- workflow_run_id: None | str | Unset
221
- if isinstance(self.workflow_run_id, Unset):
222
- workflow_run_id = UNSET
223
- elif isinstance(self.workflow_run_id, UUID):
224
- workflow_run_id = str(self.workflow_run_id)
225
- else:
226
- workflow_run_id = self.workflow_run_id
227
-
228
- replaces_task_id: None | str | Unset
229
- if isinstance(self.replaces_task_id, Unset):
230
- replaces_task_id = UNSET
231
- elif isinstance(self.replaces_task_id, UUID):
232
- replaces_task_id = str(self.replaces_task_id)
233
- else:
234
- replaces_task_id = self.replaces_task_id
235
-
236
- original_task_id: None | str | Unset
237
- if isinstance(self.original_task_id, Unset):
238
- original_task_id = UNSET
239
- elif isinstance(self.original_task_id, UUID):
240
- original_task_id = str(self.original_task_id)
241
- else:
242
- original_task_id = self.original_task_id
243
-
244
- conversation_id: None | str | Unset
245
- if isinstance(self.conversation_id, Unset):
246
- conversation_id = UNSET
247
- elif isinstance(self.conversation_id, UUID):
248
- conversation_id = str(self.conversation_id)
249
- else:
250
- conversation_id = self.conversation_id
251
-
252
- yolo_mode: bool | None | Unset
253
- if isinstance(self.yolo_mode, Unset):
254
- yolo_mode = UNSET
255
- else:
256
- yolo_mode = self.yolo_mode
257
-
258
- n_preview_iteration: int | None | Unset
259
- if isinstance(self.n_preview_iteration, Unset):
260
- n_preview_iteration = UNSET
261
- else:
262
- n_preview_iteration = self.n_preview_iteration
263
-
264
- enable_preview_loop: bool | None | Unset
265
- if isinstance(self.enable_preview_loop, Unset):
266
- enable_preview_loop = UNSET
267
- else:
268
- enable_preview_loop = self.enable_preview_loop
269
-
270
- twin_artifact_id: None | str | Unset
271
- if isinstance(self.twin_artifact_id, Unset):
272
- twin_artifact_id = UNSET
273
- elif isinstance(self.twin_artifact_id, UUID):
274
- twin_artifact_id = str(self.twin_artifact_id)
275
- else:
276
- twin_artifact_id = self.twin_artifact_id
277
-
278
- field_dict: dict[str, Any] = {}
279
-
280
- field_dict.update(
281
- {
282
- "type": type_,
283
- "processing_method": processing_method,
284
- "query_params": query_params,
285
- "session_id": session_id,
286
- "status": status,
287
- }
288
- )
289
- if id is not UNSET:
290
- field_dict["id"] = id
291
- if context_artifacts is not UNSET:
292
- field_dict["context_artifacts"] = context_artifacts
293
- if created_at is not UNSET:
294
- field_dict["created_at"] = created_at
295
- if ended_at is not UNSET:
296
- field_dict["ended_at"] = ended_at
297
- if input_artifacts is not UNSET:
298
- field_dict["input_artifacts"] = input_artifacts
299
- if metadata is not UNSET:
300
- field_dict["metadata"] = metadata
301
- if updated_at is not UNSET:
302
- field_dict["updated_at"] = updated_at
303
- if error is not UNSET:
304
- field_dict["error"] = error
305
- if is_group is not UNSET:
306
- field_dict["is_group"] = is_group
307
- if label is not UNSET:
308
- field_dict["label"] = label
309
- if description is not UNSET:
310
- field_dict["description"] = description
311
- if artifact_id is not UNSET:
312
- field_dict["artifact_id"] = artifact_id
313
- if join_with_input is not UNSET:
314
- field_dict["join_with_input"] = join_with_input
315
- if execution_metadata is not UNSET:
316
- field_dict["execution_metadata"] = execution_metadata
317
- if workflow_task_id is not UNSET:
318
- field_dict["workflow_task_id"] = workflow_task_id
319
- if workflow_run_id is not UNSET:
320
- field_dict["workflow_run_id"] = workflow_run_id
321
- if replaces_task_id is not UNSET:
322
- field_dict["replaces_task_id"] = replaces_task_id
323
- if original_task_id is not UNSET:
324
- field_dict["original_task_id"] = original_task_id
325
- if conversation_id is not UNSET:
326
- field_dict["conversation_id"] = conversation_id
327
- if yolo_mode is not UNSET:
328
- field_dict["yolo_mode"] = yolo_mode
329
- if n_preview_iteration is not UNSET:
330
- field_dict["n_preview_iteration"] = n_preview_iteration
331
- if enable_preview_loop is not UNSET:
332
- field_dict["enable_preview_loop"] = enable_preview_loop
333
- if twin_artifact_id is not UNSET:
334
- field_dict["twin_artifact_id"] = twin_artifact_id
335
-
336
- return field_dict
337
-
338
- @classmethod
339
- def from_dict(cls: type[T], src_dict: Mapping[str, Any]) -> T:
340
- from ..models.execution_metadata import ExecutionMetadata
341
- from ..models.task_insert_query_params import TaskInsertQueryParams
342
- from ..models.task_metadata import TaskMetadata
343
-
344
- d = dict(src_dict)
345
- type_ = TaskType(d.pop("type"))
346
-
347
- processing_method = ProcessingMode(d.pop("processing_method"))
348
-
349
- query_params = TaskInsertQueryParams.from_dict(d.pop("query_params"))
350
-
351
- session_id = UUID(d.pop("session_id"))
352
-
353
- status = TaskStatus(d.pop("status"))
354
-
355
- def _parse_id(data: object) -> None | str | Unset | UUID:
356
- if data is None:
357
- return data
358
- if isinstance(data, Unset):
359
- return data
360
- try:
361
- if not isinstance(data, str):
362
- raise TypeError()
363
- id_type_0 = UUID(data)
364
-
365
- return id_type_0
366
- except (TypeError, ValueError, AttributeError, KeyError):
367
- pass
368
- return cast(None | str | Unset | UUID, data)
369
-
370
- id = _parse_id(d.pop("id", UNSET))
371
-
372
- def _parse_context_artifacts(data: object) -> list[UUID] | None | Unset:
373
- if data is None:
374
- return data
375
- if isinstance(data, Unset):
376
- return data
377
- try:
378
- if not isinstance(data, list):
379
- raise TypeError()
380
- context_artifacts_type_0 = []
381
- _context_artifacts_type_0 = data
382
- for componentsschemas_context_artifacts_ids_item_data in _context_artifacts_type_0:
383
- componentsschemas_context_artifacts_ids_item = UUID(
384
- componentsschemas_context_artifacts_ids_item_data
385
- )
386
-
387
- context_artifacts_type_0.append(componentsschemas_context_artifacts_ids_item)
388
-
389
- return context_artifacts_type_0
390
- except (TypeError, ValueError, AttributeError, KeyError):
391
- pass
392
- return cast(list[UUID] | None | Unset, data)
393
-
394
- context_artifacts = _parse_context_artifacts(d.pop("context_artifacts", UNSET))
395
-
396
- def _parse_created_at(data: object) -> datetime.datetime | None | Unset:
397
- if data is None:
398
- return data
399
- if isinstance(data, Unset):
400
- return data
401
- try:
402
- if not isinstance(data, str):
403
- raise TypeError()
404
- created_at_type_0 = isoparse(data)
405
-
406
- return created_at_type_0
407
- except (TypeError, ValueError, AttributeError, KeyError):
408
- pass
409
- return cast(datetime.datetime | None | Unset, data)
410
-
411
- created_at = _parse_created_at(d.pop("created_at", UNSET))
412
-
413
- def _parse_ended_at(data: object) -> datetime.datetime | None | Unset:
414
- if data is None:
415
- return data
416
- if isinstance(data, Unset):
417
- return data
418
- try:
419
- if not isinstance(data, str):
420
- raise TypeError()
421
- ended_at_type_0 = isoparse(data)
422
-
423
- return ended_at_type_0
424
- except (TypeError, ValueError, AttributeError, KeyError):
425
- pass
426
- return cast(datetime.datetime | None | Unset, data)
427
-
428
- ended_at = _parse_ended_at(d.pop("ended_at", UNSET))
429
-
430
- def _parse_input_artifacts(data: object) -> list[UUID] | None | Unset:
431
- if data is None:
432
- return data
433
- if isinstance(data, Unset):
434
- return data
435
- try:
436
- if not isinstance(data, list):
437
- raise TypeError()
438
- input_artifacts_type_0 = []
439
- _input_artifacts_type_0 = data
440
- for componentsschemas_input_artifacts_ids_item_data in _input_artifacts_type_0:
441
- componentsschemas_input_artifacts_ids_item = UUID(componentsschemas_input_artifacts_ids_item_data)
442
-
443
- input_artifacts_type_0.append(componentsschemas_input_artifacts_ids_item)
444
-
445
- return input_artifacts_type_0
446
- except (TypeError, ValueError, AttributeError, KeyError):
447
- pass
448
- return cast(list[UUID] | None | Unset, data)
449
-
450
- input_artifacts = _parse_input_artifacts(d.pop("input_artifacts", UNSET))
451
-
452
- def _parse_metadata(data: object) -> None | TaskMetadata | Unset:
453
- if data is None:
454
- return data
455
- if isinstance(data, Unset):
456
- return data
457
- try:
458
- if not isinstance(data, dict):
459
- raise TypeError()
460
- metadata_type_0 = TaskMetadata.from_dict(data)
461
-
462
- return metadata_type_0
463
- except (TypeError, ValueError, AttributeError, KeyError):
464
- pass
465
- return cast(None | TaskMetadata | Unset, data)
466
-
467
- metadata = _parse_metadata(d.pop("metadata", UNSET))
468
-
469
- def _parse_updated_at(data: object) -> datetime.datetime | None | Unset:
470
- if data is None:
471
- return data
472
- if isinstance(data, Unset):
473
- return data
474
- try:
475
- if not isinstance(data, str):
476
- raise TypeError()
477
- updated_at_type_0 = isoparse(data)
478
-
479
- return updated_at_type_0
480
- except (TypeError, ValueError, AttributeError, KeyError):
481
- pass
482
- return cast(datetime.datetime | None | Unset, data)
483
-
484
- updated_at = _parse_updated_at(d.pop("updated_at", UNSET))
485
-
486
- def _parse_error(data: object) -> None | str | Unset:
487
- if data is None:
488
- return data
489
- if isinstance(data, Unset):
490
- return data
491
- return cast(None | str | Unset, data)
492
-
493
- error = _parse_error(d.pop("error", UNSET))
494
-
495
- def _parse_is_group(data: object) -> bool | None | Unset:
496
- if data is None:
497
- return data
498
- if isinstance(data, Unset):
499
- return data
500
- return cast(bool | None | Unset, data)
501
-
502
- is_group = _parse_is_group(d.pop("is_group", UNSET))
503
-
504
- def _parse_label(data: object) -> None | str | Unset:
505
- if data is None:
506
- return data
507
- if isinstance(data, Unset):
508
- return data
509
- return cast(None | str | Unset, data)
510
-
511
- label = _parse_label(d.pop("label", UNSET))
512
-
513
- def _parse_description(data: object) -> None | str | Unset:
514
- if data is None:
515
- return data
516
- if isinstance(data, Unset):
517
- return data
518
- return cast(None | str | Unset, data)
519
-
520
- description = _parse_description(d.pop("description", UNSET))
521
-
522
- def _parse_artifact_id(data: object) -> None | Unset | UUID:
523
- if data is None:
524
- return data
525
- if isinstance(data, Unset):
526
- return data
527
- try:
528
- if not isinstance(data, str):
529
- raise TypeError()
530
- artifact_id_type_0 = UUID(data)
531
-
532
- return artifact_id_type_0
533
- except (TypeError, ValueError, AttributeError, KeyError):
534
- pass
535
- return cast(None | Unset | UUID, data)
536
-
537
- artifact_id = _parse_artifact_id(d.pop("artifact_id", UNSET))
538
-
539
- def _parse_join_with_input(data: object) -> bool | None | Unset:
540
- if data is None:
541
- return data
542
- if isinstance(data, Unset):
543
- return data
544
- return cast(bool | None | Unset, data)
545
-
546
- join_with_input = _parse_join_with_input(d.pop("join_with_input", UNSET))
547
-
548
- def _parse_execution_metadata(data: object) -> ExecutionMetadata | None | Unset:
549
- if data is None:
550
- return data
551
- if isinstance(data, Unset):
552
- return data
553
- try:
554
- if not isinstance(data, dict):
555
- raise TypeError()
556
- execution_metadata_type_0 = ExecutionMetadata.from_dict(data)
557
-
558
- return execution_metadata_type_0
559
- except (TypeError, ValueError, AttributeError, KeyError):
560
- pass
561
- return cast(ExecutionMetadata | None | Unset, data)
562
-
563
- execution_metadata = _parse_execution_metadata(d.pop("execution_metadata", UNSET))
564
-
565
- def _parse_workflow_task_id(data: object) -> None | Unset | UUID:
566
- if data is None:
567
- return data
568
- if isinstance(data, Unset):
569
- return data
570
- try:
571
- if not isinstance(data, str):
572
- raise TypeError()
573
- workflow_task_id_type_0 = UUID(data)
574
-
575
- return workflow_task_id_type_0
576
- except (TypeError, ValueError, AttributeError, KeyError):
577
- pass
578
- return cast(None | Unset | UUID, data)
579
-
580
- workflow_task_id = _parse_workflow_task_id(d.pop("workflow_task_id", UNSET))
581
-
582
- def _parse_workflow_run_id(data: object) -> None | Unset | UUID:
583
- if data is None:
584
- return data
585
- if isinstance(data, Unset):
586
- return data
587
- try:
588
- if not isinstance(data, str):
589
- raise TypeError()
590
- workflow_run_id_type_0 = UUID(data)
591
-
592
- return workflow_run_id_type_0
593
- except (TypeError, ValueError, AttributeError, KeyError):
594
- pass
595
- return cast(None | Unset | UUID, data)
596
-
597
- workflow_run_id = _parse_workflow_run_id(d.pop("workflow_run_id", UNSET))
598
-
599
- def _parse_replaces_task_id(data: object) -> None | Unset | UUID:
600
- if data is None:
601
- return data
602
- if isinstance(data, Unset):
603
- return data
604
- try:
605
- if not isinstance(data, str):
606
- raise TypeError()
607
- replaces_task_id_type_0 = UUID(data)
608
-
609
- return replaces_task_id_type_0
610
- except (TypeError, ValueError, AttributeError, KeyError):
611
- pass
612
- return cast(None | Unset | UUID, data)
613
-
614
- replaces_task_id = _parse_replaces_task_id(d.pop("replaces_task_id", UNSET))
615
-
616
- def _parse_original_task_id(data: object) -> None | Unset | UUID:
617
- if data is None:
618
- return data
619
- if isinstance(data, Unset):
620
- return data
621
- try:
622
- if not isinstance(data, str):
623
- raise TypeError()
624
- original_task_id_type_0 = UUID(data)
625
-
626
- return original_task_id_type_0
627
- except (TypeError, ValueError, AttributeError, KeyError):
628
- pass
629
- return cast(None | Unset | UUID, data)
630
-
631
- original_task_id = _parse_original_task_id(d.pop("original_task_id", UNSET))
632
-
633
- def _parse_conversation_id(data: object) -> None | Unset | UUID:
634
- if data is None:
635
- return data
636
- if isinstance(data, Unset):
637
- return data
638
- try:
639
- if not isinstance(data, str):
640
- raise TypeError()
641
- conversation_id_type_0 = UUID(data)
642
-
643
- return conversation_id_type_0
644
- except (TypeError, ValueError, AttributeError, KeyError):
645
- pass
646
- return cast(None | Unset | UUID, data)
647
-
648
- conversation_id = _parse_conversation_id(d.pop("conversation_id", UNSET))
649
-
650
- def _parse_yolo_mode(data: object) -> bool | None | Unset:
651
- if data is None:
652
- return data
653
- if isinstance(data, Unset):
654
- return data
655
- return cast(bool | None | Unset, data)
656
-
657
- yolo_mode = _parse_yolo_mode(d.pop("yolo_mode", UNSET))
658
-
659
- def _parse_n_preview_iteration(data: object) -> int | None | Unset:
660
- if data is None:
661
- return data
662
- if isinstance(data, Unset):
663
- return data
664
- return cast(int | None | Unset, data)
665
-
666
- n_preview_iteration = _parse_n_preview_iteration(d.pop("n_preview_iteration", UNSET))
667
-
668
- def _parse_enable_preview_loop(data: object) -> bool | None | Unset:
669
- if data is None:
670
- return data
671
- if isinstance(data, Unset):
672
- return data
673
- return cast(bool | None | Unset, data)
674
-
675
- enable_preview_loop = _parse_enable_preview_loop(d.pop("enable_preview_loop", UNSET))
676
-
677
- def _parse_twin_artifact_id(data: object) -> None | Unset | UUID:
678
- if data is None:
679
- return data
680
- if isinstance(data, Unset):
681
- return data
682
- try:
683
- if not isinstance(data, str):
684
- raise TypeError()
685
- twin_artifact_id_type_0 = UUID(data)
686
-
687
- return twin_artifact_id_type_0
688
- except (TypeError, ValueError, AttributeError, KeyError):
689
- pass
690
- return cast(None | Unset | UUID, data)
691
-
692
- twin_artifact_id = _parse_twin_artifact_id(d.pop("twin_artifact_id", UNSET))
693
-
694
- task_insert = cls(
695
- type_=type_,
696
- processing_method=processing_method,
697
- query_params=query_params,
698
- session_id=session_id,
699
- status=status,
700
- id=id,
701
- context_artifacts=context_artifacts,
702
- created_at=created_at,
703
- ended_at=ended_at,
704
- input_artifacts=input_artifacts,
705
- metadata=metadata,
706
- updated_at=updated_at,
707
- error=error,
708
- is_group=is_group,
709
- label=label,
710
- description=description,
711
- artifact_id=artifact_id,
712
- join_with_input=join_with_input,
713
- execution_metadata=execution_metadata,
714
- workflow_task_id=workflow_task_id,
715
- workflow_run_id=workflow_run_id,
716
- replaces_task_id=replaces_task_id,
717
- original_task_id=original_task_id,
718
- conversation_id=conversation_id,
719
- yolo_mode=yolo_mode,
720
- n_preview_iteration=n_preview_iteration,
721
- enable_preview_loop=enable_preview_loop,
722
- twin_artifact_id=twin_artifact_id,
723
- )
724
-
725
- return task_insert