UncountablePythonSDK 0.0.72__py3-none-any.whl → 0.0.74__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.
Potentially problematic release.
This version of UncountablePythonSDK might be problematic. Click here for more details.
- {UncountablePythonSDK-0.0.72.dist-info → UncountablePythonSDK-0.0.74.dist-info}/METADATA +1 -1
- {UncountablePythonSDK-0.0.72.dist-info → UncountablePythonSDK-0.0.74.dist-info}/RECORD +117 -117
- {UncountablePythonSDK-0.0.72.dist-info → UncountablePythonSDK-0.0.74.dist-info}/WHEEL +1 -1
- examples/integration-server/jobs/materials_auto/profile.yaml +1 -1
- pkgs/argument_parser/__init__.py +1 -0
- pkgs/argument_parser/argument_parser.py +13 -1
- pkgs/serialization/serial_class.py +18 -0
- pkgs/serialization/serial_union.py +3 -0
- pkgs/type_spec/builder.py +70 -22
- pkgs/type_spec/config.py +5 -0
- pkgs/type_spec/emit_python.py +35 -22
- pkgs/type_spec/emit_typescript.py +31 -22
- pkgs/type_spec/emit_typescript_util.py +0 -2
- pkgs/type_spec/load_types.py +3 -2
- pkgs/type_spec/type_info/emit_type_info.py +7 -7
- pkgs/type_spec/util.py +1 -1
- uncountable/core/client.py +2 -2
- uncountable/integration/entrypoint.py +1 -9
- uncountable/integration/queue_runner/worker.py +9 -5
- uncountable/integration/server.py +63 -66
- uncountable/types/api/batch/execute_batch.py +8 -0
- uncountable/types/api/batch/execute_batch_load_async.py +7 -0
- uncountable/types/api/chemical/convert_chemical_formats.py +7 -0
- uncountable/types/api/entity/create_entities.py +11 -1
- uncountable/types/api/entity/create_entity.py +8 -1
- uncountable/types/api/entity/get_entities_data.py +10 -0
- uncountable/types/api/entity/list_entities.py +8 -0
- uncountable/types/api/entity/lock_entity.py +7 -0
- uncountable/types/api/entity/resolve_entity_ids.py +10 -0
- uncountable/types/api/entity/set_values.py +7 -0
- uncountable/types/api/entity/transition_entity_phase.py +8 -0
- uncountable/types/api/entity/unlock_entity.py +7 -0
- uncountable/types/api/equipment/associate_equipment_input.py +7 -0
- uncountable/types/api/field_options/upsert_field_options.py +10 -0
- uncountable/types/api/id_source/list_id_source.py +10 -0
- uncountable/types/api/id_source/match_id_source.py +10 -0
- uncountable/types/api/input_groups/get_input_group_names.py +10 -0
- uncountable/types/api/inputs/create_inputs.py +13 -0
- uncountable/types/api/inputs/get_input_data.py +19 -0
- uncountable/types/api/inputs/get_input_names.py +10 -0
- uncountable/types/api/inputs/get_inputs_data.py +19 -0
- uncountable/types/api/inputs/set_input_attribute_values.py +7 -0
- uncountable/types/api/inputs/set_input_category.py +7 -0
- uncountable/types/api/inputs/set_input_subcategories.py +7 -0
- uncountable/types/api/inputs/set_intermediate_type.py +7 -0
- uncountable/types/api/material_families/update_entity_material_families.py +7 -0
- uncountable/types/api/outputs/get_output_data.py +16 -0
- uncountable/types/api/outputs/get_output_names.py +10 -0
- uncountable/types/api/outputs/resolve_output_conditions.py +13 -0
- uncountable/types/api/permissions/set_core_permissions.py +10 -0
- uncountable/types/api/project/get_projects.py +10 -0
- uncountable/types/api/project/get_projects_data.py +10 -0
- uncountable/types/api/recipe_links/create_recipe_link.py +7 -0
- uncountable/types/api/recipe_links/remove_recipe_link.py +7 -0
- uncountable/types/api/recipe_metadata/get_recipe_metadata_data.py +10 -0
- uncountable/types/api/recipes/add_recipe_to_project.py +7 -0
- uncountable/types/api/recipes/archive_recipes.py +7 -0
- uncountable/types/api/recipes/associate_recipe_as_input.py +7 -0
- uncountable/types/api/recipes/associate_recipe_as_lot.py +7 -0
- uncountable/types/api/recipes/clear_recipe_outputs.py +7 -0
- uncountable/types/api/recipes/create_recipe.py +7 -0
- uncountable/types/api/recipes/create_recipes.py +13 -0
- uncountable/types/api/recipes/disassociate_recipe_as_input.py +7 -0
- uncountable/types/api/recipes/edit_recipe_inputs.py +20 -0
- uncountable/types/api/recipes/get_curve.py +7 -0
- uncountable/types/api/recipes/get_recipe_calculations.py +7 -0
- uncountable/types/api/recipes/get_recipe_links.py +7 -0
- uncountable/types/api/recipes/get_recipe_names.py +10 -0
- uncountable/types/api/recipes/get_recipe_output_metadata.py +7 -0
- uncountable/types/api/recipes/get_recipes_data.py +25 -0
- uncountable/types/api/recipes/lock_recipes.py +10 -0
- uncountable/types/api/recipes/remove_recipe_from_project.py +7 -0
- uncountable/types/api/recipes/set_recipe_inputs.py +7 -0
- uncountable/types/api/recipes/set_recipe_metadata.py +7 -0
- uncountable/types/api/recipes/set_recipe_output_annotations.py +13 -0
- uncountable/types/api/recipes/set_recipe_output_file.py +10 -0
- uncountable/types/api/recipes/set_recipe_outputs.py +10 -0
- uncountable/types/api/recipes/set_recipe_tags.py +12 -0
- uncountable/types/api/recipes/unarchive_recipes.py +7 -0
- uncountable/types/api/recipes/unlock_recipes.py +7 -0
- uncountable/types/api/triggers/run_trigger.py +7 -0
- uncountable/types/api/uploader/invoke_uploader.py +9 -1
- uncountable/types/async_batch_processor.py +4 -1
- uncountable/types/async_batch_t.py +10 -0
- uncountable/types/calculations_t.py +4 -0
- uncountable/types/chemical_structure_t.py +1 -0
- uncountable/types/client_base.py +6 -3
- uncountable/types/client_config_t.py +4 -0
- uncountable/types/curves_t.py +4 -0
- uncountable/types/entity_t.py +8 -0
- uncountable/types/experiment_groups_t.py +4 -0
- uncountable/types/field_values_t.py +4 -0
- uncountable/types/fields_t.py +4 -0
- uncountable/types/generic_upload_t.py +13 -0
- uncountable/types/id_source_t.py +13 -0
- uncountable/types/identifier_t.py +3 -0
- uncountable/types/input_attributes_t.py +1 -0
- uncountable/types/inputs_t.py +4 -0
- uncountable/types/job_definition_t.py +33 -0
- uncountable/types/outputs_t.py +4 -0
- uncountable/types/overrides_t.py +7 -0
- uncountable/types/phases_t.py +4 -0
- uncountable/types/queued_job_t.py +16 -0
- uncountable/types/recipe_identifiers_t.py +3 -0
- uncountable/types/recipe_links_t.py +4 -0
- uncountable/types/recipe_metadata_t.py +5 -0
- uncountable/types/recipe_output_metadata_t.py +4 -0
- uncountable/types/recipe_tags_t.py +4 -0
- uncountable/types/recipe_workflow_steps_t.py +7 -0
- uncountable/types/recipes_t.py +4 -0
- uncountable/types/response_t.py +1 -0
- uncountable/types/secret_retrieval_t.py +6 -0
- uncountable/types/units_t.py +4 -0
- uncountable/types/users_t.py +4 -0
- uncountable/types/webhook_job_t.py +4 -0
- uncountable/types/workflows_t.py +7 -0
- {UncountablePythonSDK-0.0.72.dist-info → UncountablePythonSDK-0.0.74.dist-info}/top_level.txt +0 -0
uncountable/types/entity_t.py
CHANGED
|
@@ -9,6 +9,7 @@ import datetime # noqa: F401
|
|
|
9
9
|
from decimal import Decimal # noqa: F401
|
|
10
10
|
from pkgs.strenum_compat import StrEnum
|
|
11
11
|
import dataclasses
|
|
12
|
+
from pkgs.serialization import serial_class
|
|
12
13
|
from pkgs.serialization import serial_string_enum
|
|
13
14
|
from . import base_t
|
|
14
15
|
|
|
@@ -110,6 +111,7 @@ __all__: list[str] = [
|
|
|
110
111
|
"recipe_calculation": "Recipe Calculation",
|
|
111
112
|
"recipe_check": "Experiment Check",
|
|
112
113
|
"recipe_export": "Recipe Export",
|
|
114
|
+
"recipe_goal": "Experiment Goal",
|
|
113
115
|
"recipe_ingredient": "Recipe Ingredient",
|
|
114
116
|
"recipe_ingredient_actual": "Recipe Ingredient Actual",
|
|
115
117
|
"recipe_ingredients_compounded": "Recipe Ingredients Compounded",
|
|
@@ -122,6 +124,7 @@ __all__: list[str] = [
|
|
|
122
124
|
"recipe_workflow_step": "Recipe Workflow Step",
|
|
123
125
|
"recipe_tag": "Recipe Tag",
|
|
124
126
|
"recipe_metadata": "Experiment Metadata",
|
|
127
|
+
"recipe_metadata_mapping": "Experiment Metadata Mapping",
|
|
125
128
|
"metadata_value": "Metadata Value",
|
|
126
129
|
"review": "Review",
|
|
127
130
|
"review_entity_user_status": "Review Entity User Status",
|
|
@@ -263,6 +266,7 @@ class EntityType(StrEnum):
|
|
|
263
266
|
RECIPE_CALCULATION = "recipe_calculation"
|
|
264
267
|
RECIPE_CHECK = "recipe_check"
|
|
265
268
|
RECIPE_EXPORT = "recipe_export"
|
|
269
|
+
RECIPE_GOAL = "recipe_goal"
|
|
266
270
|
RECIPE_INGREDIENT = "recipe_ingredient"
|
|
267
271
|
RECIPE_INGREDIENT_ACTUAL = "recipe_ingredient_actual"
|
|
268
272
|
RECIPE_INGREDIENTS_COMPOUNDED = "recipe_ingredients_compounded"
|
|
@@ -275,6 +279,7 @@ class EntityType(StrEnum):
|
|
|
275
279
|
RECIPE_WORKFLOW_STEP = "recipe_workflow_step"
|
|
276
280
|
RECIPE_TAG = "recipe_tag"
|
|
277
281
|
RECIPE_METADATA = "recipe_metadata"
|
|
282
|
+
RECIPE_METADATA_MAPPING = "recipe_metadata_mapping"
|
|
278
283
|
METADATA_VALUE = "metadata_value"
|
|
279
284
|
REVIEW = "review"
|
|
280
285
|
REVIEW_ENTITY_USER_STATUS = "review_entity_user_status"
|
|
@@ -327,6 +332,9 @@ class EntityType(StrEnum):
|
|
|
327
332
|
|
|
328
333
|
|
|
329
334
|
# DO NOT MODIFY -- This file is generated by type_spec
|
|
335
|
+
@serial_class(
|
|
336
|
+
named_type_path="sdk.entity.Entity",
|
|
337
|
+
)
|
|
330
338
|
@dataclasses.dataclass(kw_only=True)
|
|
331
339
|
class Entity:
|
|
332
340
|
id: base_t.ObjectId
|
|
@@ -8,6 +8,7 @@ import typing # noqa: F401
|
|
|
8
8
|
import datetime # noqa: F401
|
|
9
9
|
from decimal import Decimal # noqa: F401
|
|
10
10
|
import dataclasses
|
|
11
|
+
from pkgs.serialization import serial_class
|
|
11
12
|
from . import base_t
|
|
12
13
|
|
|
13
14
|
__all__: list[str] = [
|
|
@@ -16,6 +17,9 @@ __all__: list[str] = [
|
|
|
16
17
|
|
|
17
18
|
|
|
18
19
|
# DO NOT MODIFY -- This file is generated by type_spec
|
|
20
|
+
@serial_class(
|
|
21
|
+
named_type_path="sdk.experiment_groups.SimpleExperimentGroup",
|
|
22
|
+
)
|
|
19
23
|
@dataclasses.dataclass(kw_only=True)
|
|
20
24
|
class SimpleExperimentGroup:
|
|
21
25
|
experiment_group_id: base_t.ObjectId
|
|
@@ -21,6 +21,7 @@ __all__: list[str] = [
|
|
|
21
21
|
|
|
22
22
|
# DO NOT MODIFY -- This file is generated by type_spec
|
|
23
23
|
@serial_class(
|
|
24
|
+
named_type_path="sdk.field_values.FieldRefNameValue",
|
|
24
25
|
unconverted_values={"value"},
|
|
25
26
|
)
|
|
26
27
|
@dataclasses.dataclass(kw_only=True)
|
|
@@ -32,6 +33,7 @@ class FieldRefNameValue:
|
|
|
32
33
|
|
|
33
34
|
# DO NOT MODIFY -- This file is generated by type_spec
|
|
34
35
|
@serial_class(
|
|
36
|
+
named_type_path="sdk.field_values.FieldRefIdNameValue",
|
|
35
37
|
unconverted_values={"value"},
|
|
36
38
|
)
|
|
37
39
|
@dataclasses.dataclass(kw_only=True)
|
|
@@ -44,6 +46,7 @@ class FieldRefIdNameValue:
|
|
|
44
46
|
|
|
45
47
|
# DO NOT MODIFY -- This file is generated by type_spec
|
|
46
48
|
@serial_class(
|
|
49
|
+
named_type_path="sdk.field_values.ArgumentValueRefName",
|
|
47
50
|
unconverted_values={"value"},
|
|
48
51
|
)
|
|
49
52
|
@dataclasses.dataclass(kw_only=True)
|
|
@@ -55,6 +58,7 @@ class ArgumentValueRefName:
|
|
|
55
58
|
|
|
56
59
|
# DO NOT MODIFY -- This file is generated by type_spec
|
|
57
60
|
@serial_class(
|
|
61
|
+
named_type_path="sdk.field_values.ArgumentValueId",
|
|
58
62
|
unconverted_values={"value"},
|
|
59
63
|
)
|
|
60
64
|
@dataclasses.dataclass(kw_only=True)
|
uncountable/types/fields_t.py
CHANGED
|
@@ -8,6 +8,7 @@ import typing # noqa: F401
|
|
|
8
8
|
import datetime # noqa: F401
|
|
9
9
|
from decimal import Decimal # noqa: F401
|
|
10
10
|
import dataclasses
|
|
11
|
+
from pkgs.serialization import serial_class
|
|
11
12
|
from . import base_t
|
|
12
13
|
|
|
13
14
|
__all__: list[str] = [
|
|
@@ -16,6 +17,9 @@ __all__: list[str] = [
|
|
|
16
17
|
|
|
17
18
|
|
|
18
19
|
# DO NOT MODIFY -- This file is generated by type_spec
|
|
20
|
+
@serial_class(
|
|
21
|
+
named_type_path="sdk.fields.Field",
|
|
22
|
+
)
|
|
19
23
|
@dataclasses.dataclass(kw_only=True)
|
|
20
24
|
class Field:
|
|
21
25
|
id: base_t.ObjectId
|
|
@@ -26,6 +26,9 @@ __all__: list[str] = [
|
|
|
26
26
|
|
|
27
27
|
|
|
28
28
|
# DO NOT MODIFY -- This file is generated by type_spec
|
|
29
|
+
@serial_class(
|
|
30
|
+
named_type_path="sdk.generic_upload.GenericRemoteDirectoryScope",
|
|
31
|
+
)
|
|
29
32
|
@dataclasses.dataclass(kw_only=True)
|
|
30
33
|
class GenericRemoteDirectoryScope:
|
|
31
34
|
src_path: str
|
|
@@ -48,6 +51,9 @@ class UploadDestinationType(StrEnum):
|
|
|
48
51
|
|
|
49
52
|
|
|
50
53
|
# DO NOT MODIFY -- This file is generated by type_spec
|
|
54
|
+
@serial_class(
|
|
55
|
+
named_type_path="sdk.generic_upload.UploadDestinationBase",
|
|
56
|
+
)
|
|
51
57
|
@dataclasses.dataclass(kw_only=True)
|
|
52
58
|
class UploadDestinationBase:
|
|
53
59
|
type: UploadDestinationType
|
|
@@ -55,6 +61,7 @@ class UploadDestinationBase:
|
|
|
55
61
|
|
|
56
62
|
# DO NOT MODIFY -- This file is generated by type_spec
|
|
57
63
|
@serial_class(
|
|
64
|
+
named_type_path="sdk.generic_upload.UploadDestinationProject",
|
|
58
65
|
parse_require={"type"},
|
|
59
66
|
)
|
|
60
67
|
@dataclasses.dataclass(kw_only=True)
|
|
@@ -65,6 +72,7 @@ class UploadDestinationProject(UploadDestinationBase):
|
|
|
65
72
|
|
|
66
73
|
# DO NOT MODIFY -- This file is generated by type_spec
|
|
67
74
|
@serial_class(
|
|
75
|
+
named_type_path="sdk.generic_upload.UploadDestinationMaterialFamily",
|
|
68
76
|
parse_require={"type"},
|
|
69
77
|
)
|
|
70
78
|
@dataclasses.dataclass(kw_only=True)
|
|
@@ -75,6 +83,7 @@ class UploadDestinationMaterialFamily(UploadDestinationBase):
|
|
|
75
83
|
|
|
76
84
|
# DO NOT MODIFY -- This file is generated by type_spec
|
|
77
85
|
@serial_class(
|
|
86
|
+
named_type_path="sdk.generic_upload.UploadDestinationRecipe",
|
|
78
87
|
parse_require={"type"},
|
|
79
88
|
)
|
|
80
89
|
@dataclasses.dataclass(kw_only=True)
|
|
@@ -87,6 +96,7 @@ class UploadDestinationRecipe(UploadDestinationBase):
|
|
|
87
96
|
UploadDestination = typing.Annotated[
|
|
88
97
|
typing.Union[UploadDestinationProject, UploadDestinationMaterialFamily, UploadDestinationRecipe],
|
|
89
98
|
serial_union_annotation(
|
|
99
|
+
named_type_path="sdk.generic_upload.UploadDestination",
|
|
90
100
|
discriminator="type",
|
|
91
101
|
discriminator_map={
|
|
92
102
|
"project": UploadDestinationProject,
|
|
@@ -98,6 +108,9 @@ UploadDestination = typing.Annotated[
|
|
|
98
108
|
|
|
99
109
|
|
|
100
110
|
# DO NOT MODIFY -- This file is generated by type_spec
|
|
111
|
+
@serial_class(
|
|
112
|
+
named_type_path="sdk.generic_upload.GenericUploadStrategy",
|
|
113
|
+
)
|
|
101
114
|
@dataclasses.dataclass(kw_only=True)
|
|
102
115
|
class GenericUploadStrategy:
|
|
103
116
|
uploader_key: identifier_t.IdentifierKey
|
uncountable/types/id_source_t.py
CHANGED
|
@@ -8,6 +8,7 @@ import typing # noqa: F401
|
|
|
8
8
|
import datetime # noqa: F401
|
|
9
9
|
from decimal import Decimal # noqa: F401
|
|
10
10
|
import dataclasses
|
|
11
|
+
from pkgs.serialization import serial_class
|
|
11
12
|
from . import entity_t
|
|
12
13
|
|
|
13
14
|
__all__: list[str] = [
|
|
@@ -20,24 +21,36 @@ __all__: list[str] = [
|
|
|
20
21
|
|
|
21
22
|
|
|
22
23
|
# DO NOT MODIFY -- This file is generated by type_spec
|
|
24
|
+
@serial_class(
|
|
25
|
+
named_type_path="sdk.id_source.IdSourceSpecBase",
|
|
26
|
+
)
|
|
23
27
|
@dataclasses.dataclass(kw_only=True)
|
|
24
28
|
class IdSourceSpecBase:
|
|
25
29
|
pass
|
|
26
30
|
|
|
27
31
|
|
|
28
32
|
# DO NOT MODIFY -- This file is generated by type_spec
|
|
33
|
+
@serial_class(
|
|
34
|
+
named_type_path="sdk.id_source.IdSourceSpecEntity",
|
|
35
|
+
)
|
|
29
36
|
@dataclasses.dataclass(kw_only=True)
|
|
30
37
|
class IdSourceSpecEntity(IdSourceSpecBase):
|
|
31
38
|
entity_type: entity_t.EntityType
|
|
32
39
|
|
|
33
40
|
|
|
34
41
|
# DO NOT MODIFY -- This file is generated by type_spec
|
|
42
|
+
@serial_class(
|
|
43
|
+
named_type_path="sdk.id_source.IdSourceSpecCustomEntity",
|
|
44
|
+
)
|
|
35
45
|
@dataclasses.dataclass(kw_only=True)
|
|
36
46
|
class IdSourceSpecCustomEntity(IdSourceSpecBase):
|
|
37
47
|
definition_ref_name: str
|
|
38
48
|
|
|
39
49
|
|
|
40
50
|
# DO NOT MODIFY -- This file is generated by type_spec
|
|
51
|
+
@serial_class(
|
|
52
|
+
named_type_path="sdk.id_source.IdSourceSpecFieldOptions",
|
|
53
|
+
)
|
|
41
54
|
@dataclasses.dataclass(kw_only=True)
|
|
42
55
|
class IdSourceSpecFieldOptions(IdSourceSpecBase):
|
|
43
56
|
set_ref_name: str
|
|
@@ -21,6 +21,7 @@ __all__: list[str] = [
|
|
|
21
21
|
|
|
22
22
|
# DO NOT MODIFY -- This file is generated by type_spec
|
|
23
23
|
@serial_class(
|
|
24
|
+
named_type_path="sdk.identifier.IdentifierKeyId",
|
|
24
25
|
parse_require={"type"},
|
|
25
26
|
)
|
|
26
27
|
@dataclasses.dataclass(kw_only=True, frozen=True, eq=True)
|
|
@@ -31,6 +32,7 @@ class IdentifierKeyId:
|
|
|
31
32
|
|
|
32
33
|
# DO NOT MODIFY -- This file is generated by type_spec
|
|
33
34
|
@serial_class(
|
|
35
|
+
named_type_path="sdk.identifier.IdentifierKeyRefName",
|
|
34
36
|
parse_require={"type"},
|
|
35
37
|
)
|
|
36
38
|
@dataclasses.dataclass(kw_only=True, frozen=True, eq=True)
|
|
@@ -41,6 +43,7 @@ class IdentifierKeyRefName:
|
|
|
41
43
|
|
|
42
44
|
# DO NOT MODIFY -- This file is generated by type_spec
|
|
43
45
|
@serial_class(
|
|
46
|
+
named_type_path="sdk.identifier.IdentifierKeyBatchReference",
|
|
44
47
|
parse_require={"type"},
|
|
45
48
|
)
|
|
46
49
|
@dataclasses.dataclass(kw_only=True, frozen=True, eq=True)
|
uncountable/types/inputs_t.py
CHANGED
|
@@ -9,6 +9,7 @@ import datetime # noqa: F401
|
|
|
9
9
|
from decimal import Decimal # noqa: F401
|
|
10
10
|
from pkgs.strenum_compat import StrEnum
|
|
11
11
|
import dataclasses
|
|
12
|
+
from pkgs.serialization import serial_class
|
|
12
13
|
from pkgs.serialization import serial_string_enum
|
|
13
14
|
from . import base_t
|
|
14
15
|
|
|
@@ -68,6 +69,9 @@ class IngredientBehavior(StrEnum):
|
|
|
68
69
|
|
|
69
70
|
|
|
70
71
|
# DO NOT MODIFY -- This file is generated by type_spec
|
|
72
|
+
@serial_class(
|
|
73
|
+
named_type_path="sdk.inputs.SimpleInput",
|
|
74
|
+
)
|
|
71
75
|
@dataclasses.dataclass(kw_only=True)
|
|
72
76
|
class SimpleInput:
|
|
73
77
|
input_id: base_t.ObjectId
|
|
@@ -68,6 +68,9 @@ class GenericUploadDataSourceType(StrEnum):
|
|
|
68
68
|
|
|
69
69
|
|
|
70
70
|
# DO NOT MODIFY -- This file is generated by type_spec
|
|
71
|
+
@serial_class(
|
|
72
|
+
named_type_path="sdk.job_definition.JobExecutorBase",
|
|
73
|
+
)
|
|
71
74
|
@dataclasses.dataclass(kw_only=True)
|
|
72
75
|
class JobExecutorBase:
|
|
73
76
|
type: JobExecutorType
|
|
@@ -75,6 +78,7 @@ class JobExecutorBase:
|
|
|
75
78
|
|
|
76
79
|
# DO NOT MODIFY -- This file is generated by type_spec
|
|
77
80
|
@serial_class(
|
|
81
|
+
named_type_path="sdk.job_definition.JobExecutorScript",
|
|
78
82
|
parse_require={"type"},
|
|
79
83
|
)
|
|
80
84
|
@dataclasses.dataclass(kw_only=True)
|
|
@@ -84,6 +88,9 @@ class JobExecutorScript(JobExecutorBase):
|
|
|
84
88
|
|
|
85
89
|
|
|
86
90
|
# DO NOT MODIFY -- This file is generated by type_spec
|
|
91
|
+
@serial_class(
|
|
92
|
+
named_type_path="sdk.job_definition.GenericUploadDataSourceBase",
|
|
93
|
+
)
|
|
87
94
|
@dataclasses.dataclass(kw_only=True)
|
|
88
95
|
class GenericUploadDataSourceBase:
|
|
89
96
|
type: GenericUploadDataSourceType
|
|
@@ -91,6 +98,7 @@ class GenericUploadDataSourceBase:
|
|
|
91
98
|
|
|
92
99
|
# DO NOT MODIFY -- This file is generated by type_spec
|
|
93
100
|
@serial_class(
|
|
101
|
+
named_type_path="sdk.job_definition.GenericUploadDataSourceSFTP",
|
|
94
102
|
parse_require={"type"},
|
|
95
103
|
)
|
|
96
104
|
@dataclasses.dataclass(kw_only=True)
|
|
@@ -109,6 +117,7 @@ class S3CloudProvider(StrEnum):
|
|
|
109
117
|
|
|
110
118
|
# DO NOT MODIFY -- This file is generated by type_spec
|
|
111
119
|
@serial_class(
|
|
120
|
+
named_type_path="sdk.job_definition.GenericUploadDataSourceS3",
|
|
112
121
|
parse_require={"type"},
|
|
113
122
|
)
|
|
114
123
|
@dataclasses.dataclass(kw_only=True)
|
|
@@ -126,6 +135,7 @@ class GenericUploadDataSourceS3(GenericUploadDataSourceBase):
|
|
|
126
135
|
GenericUploadDataSource = typing.Annotated[
|
|
127
136
|
typing.Union[GenericUploadDataSourceSFTP, GenericUploadDataSourceS3],
|
|
128
137
|
serial_union_annotation(
|
|
138
|
+
named_type_path="sdk.job_definition.GenericUploadDataSource",
|
|
129
139
|
discriminator="type",
|
|
130
140
|
discriminator_map={
|
|
131
141
|
"sftp": GenericUploadDataSourceSFTP,
|
|
@@ -137,6 +147,7 @@ GenericUploadDataSource = typing.Annotated[
|
|
|
137
147
|
|
|
138
148
|
# DO NOT MODIFY -- This file is generated by type_spec
|
|
139
149
|
@serial_class(
|
|
150
|
+
named_type_path="sdk.job_definition.JobExecutorGenericUpload",
|
|
140
151
|
parse_require={"type"},
|
|
141
152
|
)
|
|
142
153
|
@dataclasses.dataclass(kw_only=True)
|
|
@@ -151,6 +162,7 @@ class JobExecutorGenericUpload(JobExecutorBase):
|
|
|
151
162
|
JobExecutor = typing.Annotated[
|
|
152
163
|
typing.Union[JobExecutorScript, JobExecutorGenericUpload],
|
|
153
164
|
serial_union_annotation(
|
|
165
|
+
named_type_path="sdk.job_definition.JobExecutor",
|
|
154
166
|
discriminator="type",
|
|
155
167
|
discriminator_map={
|
|
156
168
|
"script": JobExecutorScript,
|
|
@@ -161,6 +173,9 @@ JobExecutor = typing.Annotated[
|
|
|
161
173
|
|
|
162
174
|
|
|
163
175
|
# DO NOT MODIFY -- This file is generated by type_spec
|
|
176
|
+
@serial_class(
|
|
177
|
+
named_type_path="sdk.job_definition.JobDefinitionBase",
|
|
178
|
+
)
|
|
164
179
|
@dataclasses.dataclass(kw_only=True)
|
|
165
180
|
class JobDefinitionBase:
|
|
166
181
|
id: str
|
|
@@ -171,6 +186,7 @@ class JobDefinitionBase:
|
|
|
171
186
|
|
|
172
187
|
# DO NOT MODIFY -- This file is generated by type_spec
|
|
173
188
|
@serial_class(
|
|
189
|
+
named_type_path="sdk.job_definition.CronJobDefinition",
|
|
174
190
|
parse_require={"type"},
|
|
175
191
|
)
|
|
176
192
|
@dataclasses.dataclass(kw_only=True)
|
|
@@ -181,6 +197,7 @@ class CronJobDefinition(JobDefinitionBase):
|
|
|
181
197
|
|
|
182
198
|
# DO NOT MODIFY -- This file is generated by type_spec
|
|
183
199
|
@serial_class(
|
|
200
|
+
named_type_path="sdk.job_definition.WebhookJobDefinition",
|
|
184
201
|
parse_require={"type"},
|
|
185
202
|
)
|
|
186
203
|
@dataclasses.dataclass(kw_only=True)
|
|
@@ -193,6 +210,7 @@ class WebhookJobDefinition(JobDefinitionBase):
|
|
|
193
210
|
JobDefinition = typing.Annotated[
|
|
194
211
|
typing.Union[CronJobDefinition, WebhookJobDefinition],
|
|
195
212
|
serial_union_annotation(
|
|
213
|
+
named_type_path="sdk.job_definition.JobDefinition",
|
|
196
214
|
discriminator="type",
|
|
197
215
|
discriminator_map={
|
|
198
216
|
"cron": CronJobDefinition,
|
|
@@ -203,6 +221,9 @@ JobDefinition = typing.Annotated[
|
|
|
203
221
|
|
|
204
222
|
|
|
205
223
|
# DO NOT MODIFY -- This file is generated by type_spec
|
|
224
|
+
@serial_class(
|
|
225
|
+
named_type_path="sdk.job_definition.AuthRetrievalBase",
|
|
226
|
+
)
|
|
206
227
|
@dataclasses.dataclass(kw_only=True)
|
|
207
228
|
class AuthRetrievalBase:
|
|
208
229
|
type: AuthRetrievalType
|
|
@@ -210,6 +231,7 @@ class AuthRetrievalBase:
|
|
|
210
231
|
|
|
211
232
|
# DO NOT MODIFY -- This file is generated by type_spec
|
|
212
233
|
@serial_class(
|
|
234
|
+
named_type_path="sdk.job_definition.AuthRetrievalOAuth",
|
|
213
235
|
parse_require={"type"},
|
|
214
236
|
)
|
|
215
237
|
@dataclasses.dataclass(kw_only=True)
|
|
@@ -220,6 +242,7 @@ class AuthRetrievalOAuth(AuthRetrievalBase):
|
|
|
220
242
|
|
|
221
243
|
# DO NOT MODIFY -- This file is generated by type_spec
|
|
222
244
|
@serial_class(
|
|
245
|
+
named_type_path="sdk.job_definition.AuthRetrievalBasic",
|
|
223
246
|
parse_require={"type"},
|
|
224
247
|
)
|
|
225
248
|
@dataclasses.dataclass(kw_only=True)
|
|
@@ -233,6 +256,7 @@ class AuthRetrievalBasic(AuthRetrievalBase):
|
|
|
233
256
|
AuthRetrieval = typing.Annotated[
|
|
234
257
|
typing.Union[AuthRetrievalOAuth, AuthRetrievalBasic],
|
|
235
258
|
serial_union_annotation(
|
|
259
|
+
named_type_path="sdk.job_definition.AuthRetrieval",
|
|
236
260
|
discriminator="type",
|
|
237
261
|
discriminator_map={
|
|
238
262
|
"oauth": AuthRetrievalOAuth,
|
|
@@ -243,6 +267,9 @@ AuthRetrieval = typing.Annotated[
|
|
|
243
267
|
|
|
244
268
|
|
|
245
269
|
# DO NOT MODIFY -- This file is generated by type_spec
|
|
270
|
+
@serial_class(
|
|
271
|
+
named_type_path="sdk.job_definition.ProfileDefinition",
|
|
272
|
+
)
|
|
246
273
|
@dataclasses.dataclass(kw_only=True)
|
|
247
274
|
class ProfileDefinition:
|
|
248
275
|
auth_retrieval: AuthRetrieval
|
|
@@ -252,6 +279,9 @@ class ProfileDefinition:
|
|
|
252
279
|
|
|
253
280
|
|
|
254
281
|
# DO NOT MODIFY -- This file is generated by type_spec
|
|
282
|
+
@serial_class(
|
|
283
|
+
named_type_path="sdk.job_definition.ProfileMetadata",
|
|
284
|
+
)
|
|
255
285
|
@dataclasses.dataclass(kw_only=True)
|
|
256
286
|
class ProfileMetadata:
|
|
257
287
|
name: str
|
|
@@ -261,6 +291,9 @@ class ProfileMetadata:
|
|
|
261
291
|
|
|
262
292
|
|
|
263
293
|
# DO NOT MODIFY -- This file is generated by type_spec
|
|
294
|
+
@serial_class(
|
|
295
|
+
named_type_path="sdk.job_definition.JobResult",
|
|
296
|
+
)
|
|
264
297
|
@dataclasses.dataclass(kw_only=True)
|
|
265
298
|
class JobResult:
|
|
266
299
|
success: bool
|
uncountable/types/outputs_t.py
CHANGED
|
@@ -8,6 +8,7 @@ import typing # noqa: F401
|
|
|
8
8
|
import datetime # noqa: F401
|
|
9
9
|
from decimal import Decimal # noqa: F401
|
|
10
10
|
import dataclasses
|
|
11
|
+
from pkgs.serialization import serial_class
|
|
11
12
|
from . import base_t
|
|
12
13
|
from . import units_t
|
|
13
14
|
|
|
@@ -17,6 +18,9 @@ __all__: list[str] = [
|
|
|
17
18
|
|
|
18
19
|
|
|
19
20
|
# DO NOT MODIFY -- This file is generated by type_spec
|
|
21
|
+
@serial_class(
|
|
22
|
+
named_type_path="sdk.outputs.SimpleOutput",
|
|
23
|
+
)
|
|
20
24
|
@dataclasses.dataclass(kw_only=True)
|
|
21
25
|
class SimpleOutput:
|
|
22
26
|
output_id: base_t.ObjectId
|
uncountable/types/overrides_t.py
CHANGED
|
@@ -8,6 +8,7 @@ import typing # noqa: F401
|
|
|
8
8
|
import datetime # noqa: F401
|
|
9
9
|
from decimal import Decimal # noqa: F401
|
|
10
10
|
import dataclasses
|
|
11
|
+
from pkgs.serialization import serial_class
|
|
11
12
|
from . import secret_retrieval_t
|
|
12
13
|
|
|
13
14
|
__all__: list[str] = [
|
|
@@ -18,6 +19,9 @@ __all__: list[str] = [
|
|
|
18
19
|
|
|
19
20
|
|
|
20
21
|
# DO NOT MODIFY -- This file is generated by type_spec
|
|
22
|
+
@serial_class(
|
|
23
|
+
named_type_path="sdk.overrides.SecretRetrievalOverride",
|
|
24
|
+
)
|
|
21
25
|
@dataclasses.dataclass(kw_only=True)
|
|
22
26
|
class SecretRetrievalOverride:
|
|
23
27
|
profile_name: str
|
|
@@ -30,6 +34,9 @@ SecretRetrievalOverrides = list[SecretRetrievalOverride]
|
|
|
30
34
|
|
|
31
35
|
|
|
32
36
|
# DO NOT MODIFY -- This file is generated by type_spec
|
|
37
|
+
@serial_class(
|
|
38
|
+
named_type_path="sdk.overrides.Overrides",
|
|
39
|
+
)
|
|
33
40
|
@dataclasses.dataclass(kw_only=True)
|
|
34
41
|
class Overrides:
|
|
35
42
|
secrets: SecretRetrievalOverrides
|
uncountable/types/phases_t.py
CHANGED
|
@@ -8,6 +8,7 @@ import typing # noqa: F401
|
|
|
8
8
|
import datetime # noqa: F401
|
|
9
9
|
from decimal import Decimal # noqa: F401
|
|
10
10
|
import dataclasses
|
|
11
|
+
from pkgs.serialization import serial_class
|
|
11
12
|
from . import base_t
|
|
12
13
|
|
|
13
14
|
__all__: list[str] = [
|
|
@@ -16,6 +17,9 @@ __all__: list[str] = [
|
|
|
16
17
|
|
|
17
18
|
|
|
18
19
|
# DO NOT MODIFY -- This file is generated by type_spec
|
|
20
|
+
@serial_class(
|
|
21
|
+
named_type_path="sdk.phases.Phase",
|
|
22
|
+
)
|
|
19
23
|
@dataclasses.dataclass(kw_only=True)
|
|
20
24
|
class Phase:
|
|
21
25
|
id: base_t.ObjectId
|
|
@@ -35,6 +35,9 @@ class InvocationContextType(StrEnum):
|
|
|
35
35
|
|
|
36
36
|
|
|
37
37
|
# DO NOT MODIFY -- This file is generated by type_spec
|
|
38
|
+
@serial_class(
|
|
39
|
+
named_type_path="sdk.queued_job.InvocationContextBase",
|
|
40
|
+
)
|
|
38
41
|
@dataclasses.dataclass(kw_only=True)
|
|
39
42
|
class InvocationContextBase:
|
|
40
43
|
type: InvocationContextType
|
|
@@ -42,6 +45,7 @@ class InvocationContextBase:
|
|
|
42
45
|
|
|
43
46
|
# DO NOT MODIFY -- This file is generated by type_spec
|
|
44
47
|
@serial_class(
|
|
48
|
+
named_type_path="sdk.queued_job.InvocationContextCron",
|
|
45
49
|
parse_require={"type"},
|
|
46
50
|
)
|
|
47
51
|
@dataclasses.dataclass(kw_only=True)
|
|
@@ -51,6 +55,7 @@ class InvocationContextCron(InvocationContextBase):
|
|
|
51
55
|
|
|
52
56
|
# DO NOT MODIFY -- This file is generated by type_spec
|
|
53
57
|
@serial_class(
|
|
58
|
+
named_type_path="sdk.queued_job.InvocationContextManual",
|
|
54
59
|
parse_require={"type"},
|
|
55
60
|
)
|
|
56
61
|
@dataclasses.dataclass(kw_only=True)
|
|
@@ -60,6 +65,7 @@ class InvocationContextManual(InvocationContextBase):
|
|
|
60
65
|
|
|
61
66
|
# DO NOT MODIFY -- This file is generated by type_spec
|
|
62
67
|
@serial_class(
|
|
68
|
+
named_type_path="sdk.queued_job.InvocationContextWebhook",
|
|
63
69
|
unconverted_values={"webhook_payload"},
|
|
64
70
|
parse_require={"type"},
|
|
65
71
|
)
|
|
@@ -73,6 +79,7 @@ class InvocationContextWebhook(InvocationContextBase):
|
|
|
73
79
|
InvocationContext = typing.Annotated[
|
|
74
80
|
typing.Union[InvocationContextCron, InvocationContextManual, InvocationContextWebhook],
|
|
75
81
|
serial_union_annotation(
|
|
82
|
+
named_type_path="sdk.queued_job.InvocationContext",
|
|
76
83
|
discriminator="type",
|
|
77
84
|
discriminator_map={
|
|
78
85
|
"cron": InvocationContextCron,
|
|
@@ -84,12 +91,18 @@ InvocationContext = typing.Annotated[
|
|
|
84
91
|
|
|
85
92
|
|
|
86
93
|
# DO NOT MODIFY -- This file is generated by type_spec
|
|
94
|
+
@serial_class(
|
|
95
|
+
named_type_path="sdk.queued_job.QueuedJobPayload",
|
|
96
|
+
)
|
|
87
97
|
@dataclasses.dataclass(kw_only=True)
|
|
88
98
|
class QueuedJobPayload:
|
|
89
99
|
invocation_context: InvocationContext
|
|
90
100
|
|
|
91
101
|
|
|
92
102
|
# DO NOT MODIFY -- This file is generated by type_spec
|
|
103
|
+
@serial_class(
|
|
104
|
+
named_type_path="sdk.queued_job.QueuedJobResult",
|
|
105
|
+
)
|
|
93
106
|
@dataclasses.dataclass(kw_only=True)
|
|
94
107
|
class QueuedJobResult:
|
|
95
108
|
queued_job_uuid: str
|
|
@@ -97,6 +110,9 @@ class QueuedJobResult:
|
|
|
97
110
|
|
|
98
111
|
|
|
99
112
|
# DO NOT MODIFY -- This file is generated by type_spec
|
|
113
|
+
@serial_class(
|
|
114
|
+
named_type_path="sdk.queued_job.QueuedJob",
|
|
115
|
+
)
|
|
100
116
|
@dataclasses.dataclass(kw_only=True)
|
|
101
117
|
class QueuedJob:
|
|
102
118
|
queued_job_uuid: str
|
|
@@ -22,6 +22,7 @@ __all__: list[str] = [
|
|
|
22
22
|
|
|
23
23
|
# DO NOT MODIFY -- This file is generated by type_spec
|
|
24
24
|
@serial_class(
|
|
25
|
+
named_type_path="sdk.recipe_identifiers.RecipeIdentifierEditableName",
|
|
25
26
|
parse_require={"type"},
|
|
26
27
|
)
|
|
27
28
|
@dataclasses.dataclass(kw_only=True)
|
|
@@ -32,6 +33,7 @@ class RecipeIdentifierEditableName:
|
|
|
32
33
|
|
|
33
34
|
# DO NOT MODIFY -- This file is generated by type_spec
|
|
34
35
|
@serial_class(
|
|
36
|
+
named_type_path="sdk.recipe_identifiers.RecipeIdentifierMetadata",
|
|
35
37
|
to_string_values={"quantity_dec"},
|
|
36
38
|
parse_require={"type"},
|
|
37
39
|
)
|
|
@@ -45,6 +47,7 @@ class RecipeIdentifierMetadata:
|
|
|
45
47
|
|
|
46
48
|
# DO NOT MODIFY -- This file is generated by type_spec
|
|
47
49
|
@serial_class(
|
|
50
|
+
named_type_path="sdk.recipe_identifiers.RecipeIdentifierMaterialFamily",
|
|
48
51
|
parse_require={"type"},
|
|
49
52
|
)
|
|
50
53
|
@dataclasses.dataclass(kw_only=True)
|
|
@@ -9,6 +9,7 @@ import datetime # noqa: F401
|
|
|
9
9
|
from decimal import Decimal # noqa: F401
|
|
10
10
|
from pkgs.strenum_compat import StrEnum
|
|
11
11
|
import dataclasses
|
|
12
|
+
from pkgs.serialization import serial_class
|
|
12
13
|
from pkgs.serialization import serial_string_enum
|
|
13
14
|
from . import base_t
|
|
14
15
|
|
|
@@ -41,6 +42,9 @@ class RecipeLinkType(StrEnum):
|
|
|
41
42
|
|
|
42
43
|
|
|
43
44
|
# DO NOT MODIFY -- This file is generated by type_spec
|
|
45
|
+
@serial_class(
|
|
46
|
+
named_type_path="sdk.recipe_links.RecipeLink",
|
|
47
|
+
)
|
|
44
48
|
@dataclasses.dataclass(kw_only=True, frozen=True, eq=True)
|
|
45
49
|
class RecipeLink:
|
|
46
50
|
recipe_id_from: base_t.ObjectId
|
|
@@ -20,6 +20,7 @@ __all__: list[str] = [
|
|
|
20
20
|
|
|
21
21
|
# DO NOT MODIFY -- This file is generated by type_spec
|
|
22
22
|
@serial_class(
|
|
23
|
+
named_type_path="sdk.recipe_metadata.MetadataValue",
|
|
23
24
|
unconverted_values={"value_json"},
|
|
24
25
|
to_string_values={"value_numeric"},
|
|
25
26
|
)
|
|
@@ -33,6 +34,9 @@ class MetadataValue:
|
|
|
33
34
|
|
|
34
35
|
|
|
35
36
|
# DO NOT MODIFY -- This file is generated by type_spec
|
|
37
|
+
@serial_class(
|
|
38
|
+
named_type_path="sdk.recipe_metadata.SimpleRecipeMetadataField",
|
|
39
|
+
)
|
|
36
40
|
@dataclasses.dataclass(kw_only=True)
|
|
37
41
|
class SimpleRecipeMetadataField:
|
|
38
42
|
metadata_id: base_t.ObjectId
|
|
@@ -42,6 +46,7 @@ class SimpleRecipeMetadataField:
|
|
|
42
46
|
|
|
43
47
|
# DO NOT MODIFY -- This file is generated by type_spec
|
|
44
48
|
@serial_class(
|
|
49
|
+
named_type_path="sdk.recipe_metadata.RecipeMetadata",
|
|
45
50
|
unconverted_values={"quantity_json"},
|
|
46
51
|
to_string_values={"quantity_dec"},
|
|
47
52
|
)
|
|
@@ -8,6 +8,7 @@ import typing # noqa: F401
|
|
|
8
8
|
import datetime # noqa: F401
|
|
9
9
|
from decimal import Decimal # noqa: F401
|
|
10
10
|
import dataclasses
|
|
11
|
+
from pkgs.serialization import serial_class
|
|
11
12
|
from . import base_t
|
|
12
13
|
|
|
13
14
|
__all__: list[str] = [
|
|
@@ -16,6 +17,9 @@ __all__: list[str] = [
|
|
|
16
17
|
|
|
17
18
|
|
|
18
19
|
# DO NOT MODIFY -- This file is generated by type_spec
|
|
20
|
+
@serial_class(
|
|
21
|
+
named_type_path="sdk.recipe_output_metadata.RecipeOutputMetadataField",
|
|
22
|
+
)
|
|
19
23
|
@dataclasses.dataclass(kw_only=True)
|
|
20
24
|
class RecipeOutputMetadataField:
|
|
21
25
|
id: base_t.ObjectId
|
|
@@ -8,6 +8,7 @@ import typing # noqa: F401
|
|
|
8
8
|
import datetime # noqa: F401
|
|
9
9
|
from decimal import Decimal # noqa: F401
|
|
10
10
|
import dataclasses
|
|
11
|
+
from pkgs.serialization import serial_class
|
|
11
12
|
from . import base_t
|
|
12
13
|
|
|
13
14
|
__all__: list[str] = [
|
|
@@ -16,6 +17,9 @@ __all__: list[str] = [
|
|
|
16
17
|
|
|
17
18
|
|
|
18
19
|
# DO NOT MODIFY -- This file is generated by type_spec
|
|
20
|
+
@serial_class(
|
|
21
|
+
named_type_path="sdk.recipe_tags.SimpleRecipeTag",
|
|
22
|
+
)
|
|
19
23
|
@dataclasses.dataclass(kw_only=True)
|
|
20
24
|
class SimpleRecipeTag:
|
|
21
25
|
recipe_tag_id: base_t.ObjectId
|