vellum-ai 1.11.2__py3-none-any.whl → 1.13.5__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 vellum-ai might be problematic. Click here for more details.
- vellum/__init__.py +18 -0
- vellum/client/README.md +1 -1
- vellum/client/core/client_wrapper.py +2 -2
- vellum/client/core/force_multipart.py +4 -2
- vellum/client/core/http_response.py +1 -1
- vellum/client/core/pydantic_utilities.py +7 -4
- vellum/client/errors/too_many_requests_error.py +1 -2
- vellum/client/reference.md +677 -76
- vellum/client/resources/container_images/client.py +299 -0
- vellum/client/resources/container_images/raw_client.py +286 -0
- vellum/client/resources/documents/client.py +20 -10
- vellum/client/resources/documents/raw_client.py +20 -10
- vellum/client/resources/events/raw_client.py +4 -4
- vellum/client/resources/integration_auth_configs/client.py +2 -0
- vellum/client/resources/integration_auth_configs/raw_client.py +2 -0
- vellum/client/resources/integration_providers/client.py +28 -2
- vellum/client/resources/integration_providers/raw_client.py +24 -0
- vellum/client/resources/integrations/client.py +52 -4
- vellum/client/resources/integrations/raw_client.py +61 -0
- vellum/client/resources/workflow_deployments/client.py +156 -0
- vellum/client/resources/workflow_deployments/raw_client.py +334 -0
- vellum/client/resources/workflows/client.py +212 -8
- vellum/client/resources/workflows/raw_client.py +343 -6
- vellum/client/types/__init__.py +18 -0
- vellum/client/types/api_actor_type_enum.py +1 -1
- vellum/client/types/check_workflow_execution_status_error.py +21 -0
- vellum/client/types/check_workflow_execution_status_response.py +29 -0
- vellum/client/types/code_execution_package_request.py +21 -0
- vellum/client/types/composio_execute_tool_request.py +5 -0
- vellum/client/types/composio_tool_definition.py +1 -0
- vellum/client/types/container_image_build_config.py +1 -0
- vellum/client/types/container_image_container_image_tag.py +1 -0
- vellum/client/types/dataset_row_push_request.py +3 -0
- vellum/client/types/document_document_to_document_index.py +1 -0
- vellum/client/types/integration_name.py +24 -0
- vellum/client/types/node_execution_fulfilled_body.py +1 -0
- vellum/client/types/node_execution_log_body.py +24 -0
- vellum/client/types/node_execution_log_event.py +47 -0
- vellum/client/types/prompt_deployment_release_prompt_deployment.py +1 -0
- vellum/client/types/runner_config_request.py +24 -0
- vellum/client/types/severity_enum.py +5 -0
- vellum/client/types/slim_composio_tool_definition.py +1 -0
- vellum/client/types/slim_document_document_to_document_index.py +2 -0
- vellum/client/types/type_checker_enum.py +5 -0
- vellum/client/types/vellum_audio.py +5 -1
- vellum/client/types/vellum_audio_request.py +5 -1
- vellum/client/types/vellum_document.py +5 -1
- vellum/client/types/vellum_document_request.py +5 -1
- vellum/client/types/vellum_image.py +5 -1
- vellum/client/types/vellum_image_request.py +5 -1
- vellum/client/types/vellum_node_execution_event.py +2 -0
- vellum/client/types/vellum_variable.py +5 -0
- vellum/client/types/vellum_variable_extensions.py +1 -0
- vellum/client/types/vellum_variable_type.py +1 -0
- vellum/client/types/vellum_video.py +5 -1
- vellum/client/types/vellum_video_request.py +5 -1
- vellum/client/types/workflow_deployment_release_workflow_deployment.py +1 -0
- vellum/client/types/workflow_event.py +2 -0
- vellum/client/types/workflow_execution_fulfilled_body.py +1 -0
- vellum/client/types/workflow_result_event_output_data_array.py +1 -1
- vellum/client/types/workflow_result_event_output_data_chat_history.py +1 -1
- vellum/client/types/workflow_result_event_output_data_error.py +1 -1
- vellum/client/types/workflow_result_event_output_data_function_call.py +1 -1
- vellum/client/types/workflow_result_event_output_data_json.py +1 -1
- vellum/client/types/workflow_result_event_output_data_number.py +1 -1
- vellum/client/types/workflow_result_event_output_data_search_results.py +1 -1
- vellum/client/types/workflow_result_event_output_data_string.py +1 -1
- vellum/client/types/workflow_sandbox_execute_node_response.py +8 -0
- vellum/plugins/vellum_mypy.py +37 -2
- vellum/types/check_workflow_execution_status_error.py +3 -0
- vellum/types/check_workflow_execution_status_response.py +3 -0
- vellum/types/code_execution_package_request.py +3 -0
- vellum/types/node_execution_log_body.py +3 -0
- vellum/types/node_execution_log_event.py +3 -0
- vellum/types/runner_config_request.py +3 -0
- vellum/types/severity_enum.py +3 -0
- vellum/types/type_checker_enum.py +3 -0
- vellum/types/workflow_sandbox_execute_node_response.py +3 -0
- vellum/utils/files/mixin.py +26 -0
- vellum/utils/files/tests/test_mixin.py +62 -0
- vellum/utils/tests/test_vellum_client.py +95 -0
- vellum/utils/uuid.py +19 -2
- vellum/utils/vellum_client.py +10 -3
- vellum/workflows/__init__.py +7 -1
- vellum/workflows/descriptors/base.py +86 -0
- vellum/workflows/descriptors/tests/test_utils.py +9 -0
- vellum/workflows/errors/tests/__init__.py +0 -0
- vellum/workflows/errors/tests/test_types.py +52 -0
- vellum/workflows/errors/types.py +1 -0
- vellum/workflows/events/node.py +24 -0
- vellum/workflows/events/tests/test_event.py +123 -0
- vellum/workflows/events/types.py +2 -1
- vellum/workflows/events/workflow.py +28 -2
- vellum/workflows/expressions/add.py +3 -0
- vellum/workflows/expressions/tests/test_add.py +24 -0
- vellum/workflows/graph/graph.py +26 -5
- vellum/workflows/graph/tests/test_graph.py +228 -1
- vellum/workflows/inputs/base.py +22 -6
- vellum/workflows/inputs/dataset_row.py +121 -16
- vellum/workflows/inputs/tests/test_inputs.py +3 -3
- vellum/workflows/integrations/tests/test_vellum_integration_service.py +84 -0
- vellum/workflows/integrations/vellum_integration_service.py +12 -1
- vellum/workflows/loaders/base.py +2 -0
- vellum/workflows/nodes/bases/base.py +37 -16
- vellum/workflows/nodes/bases/tests/test_base_node.py +104 -1
- vellum/workflows/nodes/core/inline_subworkflow_node/node.py +1 -0
- vellum/workflows/nodes/core/inline_subworkflow_node/tests/test_node.py +1 -1
- vellum/workflows/nodes/core/map_node/node.py +7 -5
- vellum/workflows/nodes/core/map_node/tests/test_node.py +33 -0
- vellum/workflows/nodes/core/retry_node/node.py +1 -0
- vellum/workflows/nodes/core/try_node/node.py +1 -0
- vellum/workflows/nodes/displayable/api_node/node.py +3 -2
- vellum/workflows/nodes/displayable/api_node/tests/test_api_node.py +38 -0
- vellum/workflows/nodes/displayable/bases/api_node/node.py +1 -1
- vellum/workflows/nodes/displayable/bases/base_prompt_node/node.py +18 -1
- vellum/workflows/nodes/displayable/bases/inline_prompt_node/node.py +109 -2
- vellum/workflows/nodes/displayable/bases/prompt_deployment_node.py +13 -2
- vellum/workflows/nodes/displayable/code_execution_node/node.py +9 -15
- vellum/workflows/nodes/displayable/code_execution_node/tests/test_node.py +65 -24
- vellum/workflows/nodes/displayable/code_execution_node/utils.py +3 -0
- vellum/workflows/nodes/displayable/final_output_node/node.py +24 -69
- vellum/workflows/nodes/displayable/final_output_node/tests/test_node.py +53 -3
- vellum/workflows/nodes/displayable/note_node/node.py +4 -1
- vellum/workflows/nodes/displayable/subworkflow_deployment_node/node.py +16 -5
- vellum/workflows/nodes/displayable/tests/test_text_prompt_deployment_node.py +47 -0
- vellum/workflows/nodes/displayable/tool_calling_node/node.py +74 -34
- vellum/workflows/nodes/displayable/tool_calling_node/tests/test_node.py +204 -8
- vellum/workflows/nodes/displayable/tool_calling_node/utils.py +92 -71
- vellum/workflows/nodes/mocks.py +47 -213
- vellum/workflows/nodes/tests/test_mocks.py +0 -177
- vellum/workflows/nodes/utils.py +23 -8
- vellum/workflows/outputs/base.py +36 -3
- vellum/workflows/references/environment_variable.py +1 -11
- vellum/workflows/references/lazy.py +8 -0
- vellum/workflows/references/state_value.py +24 -1
- vellum/workflows/references/tests/test_lazy.py +58 -0
- vellum/workflows/references/trigger.py +8 -3
- vellum/workflows/references/workflow_input.py +8 -0
- vellum/workflows/resolvers/resolver.py +13 -3
- vellum/workflows/resolvers/tests/test_resolver.py +31 -0
- vellum/workflows/runner/runner.py +159 -14
- vellum/workflows/runner/tests/__init__.py +0 -0
- vellum/workflows/runner/tests/test_runner.py +170 -0
- vellum/workflows/sandbox.py +7 -8
- vellum/workflows/state/base.py +89 -30
- vellum/workflows/state/context.py +74 -3
- vellum/workflows/state/tests/test_state.py +269 -1
- vellum/workflows/tests/test_dataset_row.py +8 -7
- vellum/workflows/tests/test_sandbox.py +97 -8
- vellum/workflows/triggers/__init__.py +2 -1
- vellum/workflows/triggers/base.py +160 -28
- vellum/workflows/triggers/chat_message.py +141 -0
- vellum/workflows/triggers/integration.py +12 -0
- vellum/workflows/triggers/manual.py +3 -1
- vellum/workflows/triggers/schedule.py +3 -1
- vellum/workflows/triggers/tests/test_chat_message.py +257 -0
- vellum/workflows/types/core.py +18 -0
- vellum/workflows/types/definition.py +6 -13
- vellum/workflows/types/generics.py +12 -0
- vellum/workflows/types/tests/test_utils.py +12 -0
- vellum/workflows/types/utils.py +32 -2
- vellum/workflows/types/workflow_metadata.py +124 -0
- vellum/workflows/utils/functions.py +152 -16
- vellum/workflows/utils/pydantic_schema.py +19 -1
- vellum/workflows/utils/tests/test_functions.py +123 -8
- vellum/workflows/utils/tests/test_validate.py +79 -0
- vellum/workflows/utils/tests/test_vellum_variables.py +62 -2
- vellum/workflows/utils/uuids.py +90 -0
- vellum/workflows/utils/validate.py +108 -0
- vellum/workflows/utils/vellum_variables.py +96 -16
- vellum/workflows/workflows/base.py +177 -35
- vellum/workflows/workflows/tests/test_base_workflow.py +51 -0
- {vellum_ai-1.11.2.dist-info → vellum_ai-1.13.5.dist-info}/METADATA +6 -1
- {vellum_ai-1.11.2.dist-info → vellum_ai-1.13.5.dist-info}/RECORD +274 -227
- vellum_cli/__init__.py +21 -0
- vellum_cli/config.py +16 -2
- vellum_cli/pull.py +2 -0
- vellum_cli/push.py +23 -10
- vellum_cli/tests/conftest.py +8 -13
- vellum_cli/tests/test_image_push.py +4 -11
- vellum_cli/tests/test_pull.py +83 -68
- vellum_cli/tests/test_push.py +251 -2
- vellum_ee/assets/node-definitions.json +225 -12
- vellum_ee/scripts/generate_node_definitions.py +15 -3
- vellum_ee/workflows/display/base.py +4 -3
- vellum_ee/workflows/display/nodes/base_node_display.py +44 -11
- vellum_ee/workflows/display/nodes/tests/test_base_node_display.py +93 -0
- vellum_ee/workflows/display/nodes/types.py +1 -0
- vellum_ee/workflows/display/nodes/vellum/__init__.py +0 -2
- vellum_ee/workflows/display/nodes/vellum/base_adornment_node.py +5 -2
- vellum_ee/workflows/display/nodes/vellum/code_execution_node.py +1 -1
- vellum_ee/workflows/display/nodes/vellum/inline_prompt_node.py +10 -2
- vellum_ee/workflows/display/nodes/vellum/inline_subworkflow_node.py +17 -14
- vellum_ee/workflows/display/nodes/vellum/map_node.py +2 -0
- vellum_ee/workflows/display/nodes/vellum/note_node.py +18 -3
- vellum_ee/workflows/display/nodes/vellum/subworkflow_deployment_node.py +37 -14
- vellum_ee/workflows/display/nodes/vellum/tests/test_code_execution_node.py +62 -2
- vellum_ee/workflows/display/nodes/vellum/tests/test_final_output_node.py +136 -0
- vellum_ee/workflows/display/nodes/vellum/tests/test_note_node.py +44 -7
- vellum_ee/workflows/display/nodes/vellum/tests/test_prompt_node.py +5 -13
- vellum_ee/workflows/display/nodes/vellum/tests/test_subworkflow_deployment_node.py +27 -17
- vellum_ee/workflows/display/nodes/vellum/tests/test_tool_calling_node.py +145 -22
- vellum_ee/workflows/display/nodes/vellum/tests/test_utils.py +107 -2
- vellum_ee/workflows/display/nodes/vellum/utils.py +54 -12
- vellum_ee/workflows/display/tests/test_base_workflow_display.py +13 -16
- vellum_ee/workflows/display/tests/test_json_schema_validation.py +190 -0
- vellum_ee/workflows/display/tests/test_mocks.py +912 -0
- vellum_ee/workflows/display/tests/workflow_serialization/generic_nodes/test_adornments_serialization.py +14 -2
- vellum_ee/workflows/display/tests/workflow_serialization/generic_nodes/test_attributes_serialization.py +109 -0
- vellum_ee/workflows/display/tests/workflow_serialization/generic_nodes/test_outputs_serialization.py +3 -0
- vellum_ee/workflows/display/tests/workflow_serialization/generic_nodes/test_ports_serialization.py +187 -1
- vellum_ee/workflows/display/tests/workflow_serialization/test_basic_api_node_serialization.py +34 -325
- vellum_ee/workflows/display/tests/workflow_serialization/test_basic_code_execution_node_serialization.py +42 -393
- vellum_ee/workflows/display/tests/workflow_serialization/test_basic_conditional_node_serialization.py +13 -315
- vellum_ee/workflows/display/tests/workflow_serialization/test_basic_default_state_serialization.py +2 -122
- vellum_ee/workflows/display/tests/workflow_serialization/test_basic_error_node_serialization.py +24 -115
- vellum_ee/workflows/display/tests/workflow_serialization/test_basic_generic_node_serialization.py +4 -93
- vellum_ee/workflows/display/tests/workflow_serialization/test_basic_guardrail_node_serialization.py +7 -80
- vellum_ee/workflows/display/tests/workflow_serialization/test_basic_inline_prompt_node_serialization.py +9 -101
- vellum_ee/workflows/display/tests/workflow_serialization/test_basic_inline_subworkflow_serialization.py +77 -308
- vellum_ee/workflows/display/tests/workflow_serialization/test_basic_map_node_serialization.py +62 -324
- vellum_ee/workflows/display/tests/workflow_serialization/test_basic_merge_node_serialization.py +3 -82
- vellum_ee/workflows/display/tests/workflow_serialization/test_basic_prompt_deployment_serialization.py +4 -142
- vellum_ee/workflows/display/tests/workflow_serialization/test_basic_search_node_serialization.py +1 -61
- vellum_ee/workflows/display/tests/workflow_serialization/test_basic_set_state_node_serialization.py +4 -4
- vellum_ee/workflows/display/tests/workflow_serialization/test_basic_subworkflow_deployment_serialization.py +205 -134
- vellum_ee/workflows/display/tests/workflow_serialization/test_basic_templating_node_serialization.py +34 -146
- vellum_ee/workflows/display/tests/workflow_serialization/test_basic_terminal_node_serialization.py +2 -0
- vellum_ee/workflows/display/tests/workflow_serialization/test_basic_tool_calling_node_composio_serialization.py +8 -6
- vellum_ee/workflows/display/tests/workflow_serialization/test_basic_tool_calling_node_inline_workflow_serialization.py +137 -266
- vellum_ee/workflows/display/tests/workflow_serialization/test_basic_tool_calling_node_inline_workflow_tool_wrapper_serialization.py +84 -0
- vellum_ee/workflows/display/tests/workflow_serialization/test_basic_tool_calling_node_mcp_serialization.py +55 -16
- vellum_ee/workflows/display/tests/workflow_serialization/test_basic_tool_calling_node_serialization.py +15 -1
- vellum_ee/workflows/display/tests/workflow_serialization/test_basic_tool_calling_node_tool_wrapper_serialization.py +71 -0
- vellum_ee/workflows/display/tests/workflow_serialization/test_basic_tool_calling_node_vellum_integration_serialization.py +119 -0
- vellum_ee/workflows/display/tests/workflow_serialization/test_basic_tool_calling_node_workflow_deployment_serialization.py +1 -1
- vellum_ee/workflows/display/tests/workflow_serialization/test_basic_try_node_serialization.py +0 -2
- vellum_ee/workflows/display/tests/workflow_serialization/test_chat_message_dict_reference_serialization.py +22 -1
- vellum_ee/workflows/display/tests/workflow_serialization/test_chat_message_trigger_serialization.py +412 -0
- vellum_ee/workflows/display/tests/workflow_serialization/test_code_tool_node_reference_error.py +106 -0
- vellum_ee/workflows/display/tests/workflow_serialization/test_complex_terminal_node_serialization.py +9 -41
- vellum_ee/workflows/display/tests/workflow_serialization/test_duplicate_trigger_name_validation.py +208 -0
- vellum_ee/workflows/display/tests/workflow_serialization/test_final_output_node_not_referenced_by_workflow_outputs.py +45 -0
- vellum_ee/workflows/display/tests/workflow_serialization/test_infinite_loop_validation.py +66 -0
- vellum_ee/workflows/display/tests/workflow_serialization/test_int_input_serialization.py +40 -0
- vellum_ee/workflows/display/tests/workflow_serialization/test_integration_trigger_serialization.py +8 -14
- vellum_ee/workflows/display/tests/workflow_serialization/test_integration_trigger_validation.py +173 -0
- vellum_ee/workflows/display/tests/workflow_serialization/test_integration_trigger_with_entrypoint_node_id.py +16 -13
- vellum_ee/workflows/display/tests/workflow_serialization/test_list_vellum_document_serialization.py +5 -1
- vellum_ee/workflows/display/tests/workflow_serialization/test_manual_trigger_serialization.py +12 -2
- vellum_ee/workflows/display/tests/workflow_serialization/test_multi_trigger_same_node_serialization.py +111 -0
- vellum_ee/workflows/display/tests/workflow_serialization/test_no_triggers_no_entrypoint_validation.py +64 -0
- vellum_ee/workflows/display/tests/workflow_serialization/test_partial_workflow_meta_display_override.py +55 -0
- vellum_ee/workflows/display/tests/workflow_serialization/test_sandbox_dataset_mocks_serialization.py +268 -0
- vellum_ee/workflows/display/tests/workflow_serialization/test_sandbox_invalid_pdf_data_url.py +49 -0
- vellum_ee/workflows/display/tests/workflow_serialization/test_sandbox_validation_errors.py +112 -0
- vellum_ee/workflows/display/tests/workflow_serialization/test_scheduled_trigger_serialization.py +25 -16
- vellum_ee/workflows/display/tests/workflow_serialization/test_terminal_node_in_unused_graphs_serialization.py +53 -0
- vellum_ee/workflows/display/utils/exceptions.py +34 -0
- vellum_ee/workflows/display/utils/expressions.py +463 -52
- vellum_ee/workflows/display/utils/metadata.py +98 -33
- vellum_ee/workflows/display/utils/tests/test_metadata.py +31 -0
- vellum_ee/workflows/display/utils/triggers.py +153 -0
- vellum_ee/workflows/display/utils/vellum.py +59 -5
- vellum_ee/workflows/display/workflows/base_workflow_display.py +656 -254
- vellum_ee/workflows/display/workflows/get_vellum_workflow_display_class.py +26 -0
- vellum_ee/workflows/display/workflows/tests/test_workflow_display.py +77 -29
- vellum_ee/workflows/server/namespaces.py +18 -0
- vellum_ee/workflows/tests/test_display_meta.py +2 -0
- vellum_ee/workflows/tests/test_serialize_module.py +174 -7
- vellum_ee/workflows/tests/test_server.py +0 -3
- vellum_ee/workflows/display/nodes/vellum/function_node.py +0 -14
- {vellum_ai-1.11.2.dist-info → vellum_ai-1.13.5.dist-info}/LICENSE +0 -0
- {vellum_ai-1.11.2.dist-info → vellum_ai-1.13.5.dist-info}/WHEEL +0 -0
- {vellum_ai-1.11.2.dist-info → vellum_ai-1.13.5.dist-info}/entry_points.txt +0 -0
|
@@ -39,6 +39,7 @@ class DocumentDocumentToDocumentIndex(UniversalBaseModel):
|
|
|
39
39
|
"""
|
|
40
40
|
|
|
41
41
|
extracted_text_file_url: typing.Optional[str] = None
|
|
42
|
+
processing_state: typing.Optional[str] = None
|
|
42
43
|
|
|
43
44
|
if IS_PYDANTIC_V2:
|
|
44
45
|
model_config: typing.ClassVar[pydantic.ConfigDict] = pydantic.ConfigDict(extra="allow", frozen=True) # type: ignore # Pydantic v2
|
|
@@ -13,19 +13,30 @@ IntegrationName = typing.Union[
|
|
|
13
13
|
"CODA",
|
|
14
14
|
"HUBSPOT",
|
|
15
15
|
"INTERCOM",
|
|
16
|
+
"INSTAGRAM",
|
|
16
17
|
"LINEAR",
|
|
17
18
|
"LINKUP",
|
|
18
19
|
"LISTENNOTES",
|
|
19
20
|
"LMNT",
|
|
20
21
|
"LINKEDIN",
|
|
21
22
|
"MAILCHIMP",
|
|
23
|
+
"MIRO",
|
|
22
24
|
"MEM0",
|
|
25
|
+
"MONDAY",
|
|
23
26
|
"NEON",
|
|
27
|
+
"OUTLOOK",
|
|
24
28
|
"GITHUB",
|
|
25
29
|
"GOOGLE_SHEETS",
|
|
26
30
|
"GOOGLE_CALENDAR",
|
|
27
31
|
"GOOGLE_DRIVE",
|
|
28
32
|
"GMAIL",
|
|
33
|
+
"GOOGLE_ADS",
|
|
34
|
+
"GOOGLE_ANALYTICS",
|
|
35
|
+
"GOOGLE_DOCS",
|
|
36
|
+
"GOOGLE_PHOTOS",
|
|
37
|
+
"GOOGLE_SEARCH_CONSOLE",
|
|
38
|
+
"GOOGLE_SLIDES",
|
|
39
|
+
"GOOGLE_TASKS",
|
|
29
40
|
"ACCULYNX",
|
|
30
41
|
"AFFINITY",
|
|
31
42
|
"AGENCYZOOM",
|
|
@@ -37,6 +48,7 @@ IntegrationName = typing.Union[
|
|
|
37
48
|
"BITBUCKET",
|
|
38
49
|
"BOX",
|
|
39
50
|
"BREVO",
|
|
51
|
+
"BREX",
|
|
40
52
|
"BROWSERBASE_TOOL",
|
|
41
53
|
"CAL",
|
|
42
54
|
"CANVAS",
|
|
@@ -44,6 +56,7 @@ IntegrationName = typing.Union[
|
|
|
44
56
|
"EXA",
|
|
45
57
|
"GAMMA",
|
|
46
58
|
"GITLAB",
|
|
59
|
+
"GONG",
|
|
47
60
|
"FIRECRAWL",
|
|
48
61
|
"FIGMA",
|
|
49
62
|
"FIREFLIES",
|
|
@@ -59,27 +72,38 @@ IntegrationName = typing.Union[
|
|
|
59
72
|
"POSTHOG",
|
|
60
73
|
"PRODUCTBOARD",
|
|
61
74
|
"REDDIT",
|
|
75
|
+
"SALESFORCE",
|
|
62
76
|
"SEMRUSH",
|
|
63
77
|
"SEMANTICSCHOLAR",
|
|
64
78
|
"SENDGRID",
|
|
65
79
|
"SERPAPI",
|
|
66
80
|
"SHARE_POINT",
|
|
81
|
+
"SHOPIFY",
|
|
67
82
|
"SHORTCUT",
|
|
83
|
+
"SLACKBOT",
|
|
84
|
+
"SPOTIFY",
|
|
68
85
|
"STRIPE",
|
|
69
86
|
"SUPABASE",
|
|
70
87
|
"TAVILY",
|
|
71
88
|
"TELEGRAM",
|
|
89
|
+
"TODOIST",
|
|
72
90
|
"WEBFLOW",
|
|
73
91
|
"YOUSEARCH",
|
|
74
92
|
"ZENDESK",
|
|
75
93
|
"ZENROWS",
|
|
76
94
|
"DROPBOX",
|
|
77
95
|
"EVENTBRITE",
|
|
96
|
+
"FACEBOOK",
|
|
78
97
|
"CONFLUENCE",
|
|
79
98
|
"COINBASE",
|
|
80
99
|
"DISCORD",
|
|
81
100
|
"DOCUSIGN",
|
|
82
101
|
"TRELLO",
|
|
102
|
+
"HEYREACH",
|
|
103
|
+
"ACTIVE_CAMPAIGN",
|
|
104
|
+
"CUSTOMER_IO",
|
|
105
|
+
"SEGMENT",
|
|
106
|
+
"WHATSAPP",
|
|
83
107
|
],
|
|
84
108
|
typing.Any,
|
|
85
109
|
]
|
|
@@ -13,6 +13,7 @@ class NodeExecutionFulfilledBody(UniversalBaseModel):
|
|
|
13
13
|
invoked_ports: typing.Optional[typing.List[InvokedPort]] = None
|
|
14
14
|
outputs: typing.Dict[str, typing.Optional[typing.Any]]
|
|
15
15
|
mocked: typing.Optional[bool] = None
|
|
16
|
+
redacted: typing.Optional[bool] = None
|
|
16
17
|
|
|
17
18
|
if IS_PYDANTIC_V2:
|
|
18
19
|
model_config: typing.ClassVar[pydantic.ConfigDict] = pydantic.ConfigDict(extra="allow", frozen=True) # type: ignore # Pydantic v2
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
# This file was auto-generated by Fern from our API Definition.
|
|
2
|
+
|
|
3
|
+
import typing
|
|
4
|
+
|
|
5
|
+
import pydantic
|
|
6
|
+
from ..core.pydantic_utilities import IS_PYDANTIC_V2, UniversalBaseModel
|
|
7
|
+
from .severity_enum import SeverityEnum
|
|
8
|
+
from .vellum_code_resource_definition import VellumCodeResourceDefinition
|
|
9
|
+
|
|
10
|
+
|
|
11
|
+
class NodeExecutionLogBody(UniversalBaseModel):
|
|
12
|
+
node_definition: VellumCodeResourceDefinition
|
|
13
|
+
attributes: typing.Optional[typing.Dict[str, typing.Optional[typing.Any]]] = None
|
|
14
|
+
severity: SeverityEnum
|
|
15
|
+
message: str
|
|
16
|
+
|
|
17
|
+
if IS_PYDANTIC_V2:
|
|
18
|
+
model_config: typing.ClassVar[pydantic.ConfigDict] = pydantic.ConfigDict(extra="allow", frozen=True) # type: ignore # Pydantic v2
|
|
19
|
+
else:
|
|
20
|
+
|
|
21
|
+
class Config:
|
|
22
|
+
frozen = True
|
|
23
|
+
smart_union = True
|
|
24
|
+
extra = pydantic.Extra.allow
|
|
@@ -0,0 +1,47 @@
|
|
|
1
|
+
# This file was auto-generated by Fern from our API Definition.
|
|
2
|
+
|
|
3
|
+
from __future__ import annotations
|
|
4
|
+
|
|
5
|
+
import datetime as dt
|
|
6
|
+
import typing
|
|
7
|
+
|
|
8
|
+
import pydantic
|
|
9
|
+
from ..core.pydantic_utilities import IS_PYDANTIC_V2, UniversalBaseModel, update_forward_refs
|
|
10
|
+
from .api_version_enum import ApiVersionEnum
|
|
11
|
+
from .node_execution_log_body import NodeExecutionLogBody
|
|
12
|
+
|
|
13
|
+
|
|
14
|
+
class NodeExecutionLogEvent(UniversalBaseModel):
|
|
15
|
+
parent: typing.Optional["ParentContext"] = None
|
|
16
|
+
links: typing.Optional[typing.List["SpanLink"]] = None
|
|
17
|
+
name: typing.Literal["node.execution.log"] = "node.execution.log"
|
|
18
|
+
body: NodeExecutionLogBody
|
|
19
|
+
id: str
|
|
20
|
+
timestamp: dt.datetime
|
|
21
|
+
api_version: typing.Optional[ApiVersionEnum] = None
|
|
22
|
+
trace_id: str
|
|
23
|
+
span_id: str
|
|
24
|
+
|
|
25
|
+
if IS_PYDANTIC_V2:
|
|
26
|
+
model_config: typing.ClassVar[pydantic.ConfigDict] = pydantic.ConfigDict(extra="allow", frozen=True) # type: ignore # Pydantic v2
|
|
27
|
+
else:
|
|
28
|
+
|
|
29
|
+
class Config:
|
|
30
|
+
frozen = True
|
|
31
|
+
smart_union = True
|
|
32
|
+
extra = pydantic.Extra.allow
|
|
33
|
+
|
|
34
|
+
|
|
35
|
+
from .api_request_parent_context import ApiRequestParentContext # noqa: E402, F401, I001
|
|
36
|
+
from .external_parent_context import ExternalParentContext # noqa: E402, F401, I001
|
|
37
|
+
from .integration_trigger_context import IntegrationTriggerContext # noqa: E402, F401, I001
|
|
38
|
+
from .node_parent_context import NodeParentContext # noqa: E402, F401, I001
|
|
39
|
+
from .prompt_deployment_parent_context import PromptDeploymentParentContext # noqa: E402, F401, I001
|
|
40
|
+
from .scheduled_trigger_context import ScheduledTriggerContext # noqa: E402, F401, I001
|
|
41
|
+
from .span_link import SpanLink # noqa: E402, F401, I001
|
|
42
|
+
from .workflow_deployment_parent_context import WorkflowDeploymentParentContext # noqa: E402, F401, I001
|
|
43
|
+
from .workflow_parent_context import WorkflowParentContext # noqa: E402, F401, I001
|
|
44
|
+
from .workflow_sandbox_parent_context import WorkflowSandboxParentContext # noqa: E402, F401, I001
|
|
45
|
+
from .parent_context import ParentContext # noqa: E402, F401, I001
|
|
46
|
+
|
|
47
|
+
update_forward_refs(NodeExecutionLogEvent)
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
# This file was auto-generated by Fern from our API Definition.
|
|
2
|
+
|
|
3
|
+
import typing
|
|
4
|
+
|
|
5
|
+
import pydantic
|
|
6
|
+
from ..core.pydantic_utilities import IS_PYDANTIC_V2, UniversalBaseModel
|
|
7
|
+
|
|
8
|
+
|
|
9
|
+
class RunnerConfigRequest(UniversalBaseModel):
|
|
10
|
+
container_image_name: typing.Optional[str] = None
|
|
11
|
+
container_image_tag: typing.Optional[str] = None
|
|
12
|
+
codegen_version: typing.Optional[str] = None
|
|
13
|
+
sdk_version: typing.Optional[str] = None
|
|
14
|
+
is_deployment_inlining_enabled: typing.Optional[bool] = None
|
|
15
|
+
server_version: typing.Optional[str] = None
|
|
16
|
+
|
|
17
|
+
if IS_PYDANTIC_V2:
|
|
18
|
+
model_config: typing.ClassVar[pydantic.ConfigDict] = pydantic.ConfigDict(extra="allow", frozen=True) # type: ignore # Pydantic v2
|
|
19
|
+
else:
|
|
20
|
+
|
|
21
|
+
class Config:
|
|
22
|
+
frozen = True
|
|
23
|
+
smart_union = True
|
|
24
|
+
extra = pydantic.Extra.allow
|
|
@@ -13,6 +13,7 @@ class SlimComposioToolDefinition(UniversalBaseModel):
|
|
|
13
13
|
name: str
|
|
14
14
|
label: str
|
|
15
15
|
description: str
|
|
16
|
+
toolkit_version: str
|
|
16
17
|
|
|
17
18
|
if IS_PYDANTIC_V2:
|
|
18
19
|
model_config: typing.ClassVar[pydantic.ConfigDict] = pydantic.ConfigDict(extra="allow", frozen=True) # type: ignore # Pydantic v2
|
|
@@ -38,6 +38,8 @@ class SlimDocumentDocumentToDocumentIndex(UniversalBaseModel):
|
|
|
38
38
|
* `FAILED` - Failed
|
|
39
39
|
"""
|
|
40
40
|
|
|
41
|
+
processing_state: typing.Optional[str] = None
|
|
42
|
+
|
|
41
43
|
if IS_PYDANTIC_V2:
|
|
42
44
|
model_config: typing.ClassVar[pydantic.ConfigDict] = pydantic.ConfigDict(extra="allow", frozen=True) # type: ignore # Pydantic v2
|
|
43
45
|
else:
|
|
@@ -10,7 +10,11 @@ from ..core.pydantic_utilities import IS_PYDANTIC_V2, UniversalBaseModel
|
|
|
10
10
|
class VellumAudio(VellumFileMixin):
|
|
11
11
|
src: str = pydantic.Field()
|
|
12
12
|
"""
|
|
13
|
-
|
|
13
|
+
The reference to the source data. This can be one of the following formats:
|
|
14
|
+
1. A base64-encoded data URL (e.g., 'data:application/pdf;base64,JVBERi0xLjQKJcfs...').
|
|
15
|
+
2. A url pointing to a file accessible over HTTP or HTTPS.
|
|
16
|
+
3. A reference to a file that's been previously uploaded to Vellum, in the form of 'vellum:uploaded-file:{uploaded_file_id}'.
|
|
17
|
+
You can use the Uploaded Files API to retrieve the url of the uploaded file given its ID. See https://docs.vellum.ai/developers/client-sdk/uploaded-files/retrieve for details.
|
|
14
18
|
"""
|
|
15
19
|
|
|
16
20
|
metadata: typing.Optional[typing.Dict[str, typing.Optional[typing.Any]]] = None
|
|
@@ -9,7 +9,11 @@ from ..core.pydantic_utilities import IS_PYDANTIC_V2, UniversalBaseModel
|
|
|
9
9
|
class VellumAudioRequest(UniversalBaseModel):
|
|
10
10
|
src: str = pydantic.Field()
|
|
11
11
|
"""
|
|
12
|
-
|
|
12
|
+
The reference to the source data. This can be one of the following formats:
|
|
13
|
+
1. A base64-encoded data URL (e.g., 'data:application/pdf;base64,JVBERi0xLjQKJcfs...').
|
|
14
|
+
2. A url pointing to a file accessible over HTTP or HTTPS.
|
|
15
|
+
3. A reference to a file that's been previously uploaded to Vellum, in the form of 'vellum:uploaded-file:{uploaded_file_id}'.
|
|
16
|
+
You can use the Uploaded Files API to retrieve the url of the uploaded file given its ID. See https://docs.vellum.ai/developers/client-sdk/uploaded-files/retrieve for details.
|
|
13
17
|
"""
|
|
14
18
|
|
|
15
19
|
metadata: typing.Optional[typing.Dict[str, typing.Optional[typing.Any]]] = None
|
|
@@ -10,7 +10,11 @@ from ..core.pydantic_utilities import IS_PYDANTIC_V2, UniversalBaseModel
|
|
|
10
10
|
class VellumDocument(VellumFileMixin):
|
|
11
11
|
src: str = pydantic.Field()
|
|
12
12
|
"""
|
|
13
|
-
|
|
13
|
+
The reference to the source data. This can be one of the following formats:
|
|
14
|
+
1. A base64-encoded data URL (e.g., 'data:application/pdf;base64,JVBERi0xLjQKJcfs...').
|
|
15
|
+
2. A url pointing to a file accessible over HTTP or HTTPS.
|
|
16
|
+
3. A reference to a file that's been previously uploaded to Vellum, in the form of 'vellum:uploaded-file:{uploaded_file_id}'.
|
|
17
|
+
You can use the Uploaded Files API to retrieve the url of the uploaded file given its ID. See https://docs.vellum.ai/developers/client-sdk/uploaded-files/retrieve for details.
|
|
14
18
|
"""
|
|
15
19
|
|
|
16
20
|
metadata: typing.Optional[typing.Dict[str, typing.Optional[typing.Any]]] = None
|
|
@@ -9,7 +9,11 @@ from ..core.pydantic_utilities import IS_PYDANTIC_V2, UniversalBaseModel
|
|
|
9
9
|
class VellumDocumentRequest(UniversalBaseModel):
|
|
10
10
|
src: str = pydantic.Field()
|
|
11
11
|
"""
|
|
12
|
-
|
|
12
|
+
The reference to the source data. This can be one of the following formats:
|
|
13
|
+
1. A base64-encoded data URL (e.g., 'data:application/pdf;base64,JVBERi0xLjQKJcfs...').
|
|
14
|
+
2. A url pointing to a file accessible over HTTP or HTTPS.
|
|
15
|
+
3. A reference to a file that's been previously uploaded to Vellum, in the form of 'vellum:uploaded-file:{uploaded_file_id}'.
|
|
16
|
+
You can use the Uploaded Files API to retrieve the url of the uploaded file given its ID. See https://docs.vellum.ai/developers/client-sdk/uploaded-files/retrieve for details.
|
|
13
17
|
"""
|
|
14
18
|
|
|
15
19
|
metadata: typing.Optional[typing.Dict[str, typing.Optional[typing.Any]]] = None
|
|
@@ -10,7 +10,11 @@ from ..core.pydantic_utilities import IS_PYDANTIC_V2, UniversalBaseModel
|
|
|
10
10
|
class VellumImage(VellumFileMixin):
|
|
11
11
|
src: str = pydantic.Field()
|
|
12
12
|
"""
|
|
13
|
-
|
|
13
|
+
The reference to the source data. This can be one of the following formats:
|
|
14
|
+
1. A base64-encoded data URL (e.g., 'data:application/pdf;base64,JVBERi0xLjQKJcfs...').
|
|
15
|
+
2. A url pointing to a file accessible over HTTP or HTTPS.
|
|
16
|
+
3. A reference to a file that's been previously uploaded to Vellum, in the form of 'vellum:uploaded-file:{uploaded_file_id}'.
|
|
17
|
+
You can use the Uploaded Files API to retrieve the url of the uploaded file given its ID. See https://docs.vellum.ai/developers/client-sdk/uploaded-files/retrieve for details.
|
|
14
18
|
"""
|
|
15
19
|
|
|
16
20
|
metadata: typing.Optional[typing.Dict[str, typing.Optional[typing.Any]]] = None
|
|
@@ -9,7 +9,11 @@ from ..core.pydantic_utilities import IS_PYDANTIC_V2, UniversalBaseModel
|
|
|
9
9
|
class VellumImageRequest(UniversalBaseModel):
|
|
10
10
|
src: str = pydantic.Field()
|
|
11
11
|
"""
|
|
12
|
-
|
|
12
|
+
The reference to the source data. This can be one of the following formats:
|
|
13
|
+
1. A base64-encoded data URL (e.g., 'data:application/pdf;base64,JVBERi0xLjQKJcfs...').
|
|
14
|
+
2. A url pointing to a file accessible over HTTP or HTTPS.
|
|
15
|
+
3. A reference to a file that's been previously uploaded to Vellum, in the form of 'vellum:uploaded-file:{uploaded_file_id}'.
|
|
16
|
+
You can use the Uploaded Files API to retrieve the url of the uploaded file given its ID. See https://docs.vellum.ai/developers/client-sdk/uploaded-files/retrieve for details.
|
|
13
17
|
"""
|
|
14
18
|
|
|
15
19
|
metadata: typing.Optional[typing.Dict[str, typing.Optional[typing.Any]]] = None
|
|
@@ -4,6 +4,7 @@ import typing
|
|
|
4
4
|
|
|
5
5
|
from .node_execution_fulfilled_event import NodeExecutionFulfilledEvent
|
|
6
6
|
from .node_execution_initiated_event import NodeExecutionInitiatedEvent
|
|
7
|
+
from .node_execution_log_event import NodeExecutionLogEvent
|
|
7
8
|
from .node_execution_paused_event import NodeExecutionPausedEvent
|
|
8
9
|
from .node_execution_rejected_event import NodeExecutionRejectedEvent
|
|
9
10
|
from .node_execution_resumed_event import NodeExecutionResumedEvent
|
|
@@ -16,4 +17,5 @@ VellumNodeExecutionEvent = typing.Union[
|
|
|
16
17
|
NodeExecutionRejectedEvent,
|
|
17
18
|
NodeExecutionPausedEvent,
|
|
18
19
|
NodeExecutionResumedEvent,
|
|
20
|
+
NodeExecutionLogEvent,
|
|
19
21
|
]
|
|
@@ -5,7 +5,9 @@ from __future__ import annotations
|
|
|
5
5
|
import typing
|
|
6
6
|
|
|
7
7
|
import pydantic
|
|
8
|
+
import typing_extensions
|
|
8
9
|
from ..core.pydantic_utilities import IS_PYDANTIC_V2, UniversalBaseModel, update_forward_refs
|
|
10
|
+
from ..core.serialization import FieldMetadata
|
|
9
11
|
from .vellum_variable_extensions import VellumVariableExtensions
|
|
10
12
|
from .vellum_variable_type import VellumVariableType
|
|
11
13
|
|
|
@@ -17,6 +19,9 @@ class VellumVariable(UniversalBaseModel):
|
|
|
17
19
|
required: typing.Optional[bool] = None
|
|
18
20
|
default: typing.Optional["VellumValue"] = None
|
|
19
21
|
extensions: typing.Optional[VellumVariableExtensions] = None
|
|
22
|
+
schema_: typing_extensions.Annotated[
|
|
23
|
+
typing.Optional[typing.Dict[str, typing.Optional[typing.Any]]], FieldMetadata(alias="schema")
|
|
24
|
+
] = None
|
|
20
25
|
|
|
21
26
|
if IS_PYDANTIC_V2:
|
|
22
27
|
model_config: typing.ClassVar[pydantic.ConfigDict] = pydantic.ConfigDict(extra="allow", frozen=True) # type: ignore # Pydantic v2
|
|
@@ -13,6 +13,7 @@ class VellumVariableExtensions(UniversalBaseModel):
|
|
|
13
13
|
|
|
14
14
|
color: typing.Optional[str] = None
|
|
15
15
|
description: typing.Optional[str] = None
|
|
16
|
+
title: typing.Optional[str] = None
|
|
16
17
|
|
|
17
18
|
if IS_PYDANTIC_V2:
|
|
18
19
|
model_config: typing.ClassVar[pydantic.ConfigDict] = pydantic.ConfigDict(extra="allow", frozen=True) # type: ignore # Pydantic v2
|
|
@@ -10,7 +10,11 @@ from ..core.pydantic_utilities import IS_PYDANTIC_V2, UniversalBaseModel
|
|
|
10
10
|
class VellumVideo(VellumFileMixin):
|
|
11
11
|
src: str = pydantic.Field()
|
|
12
12
|
"""
|
|
13
|
-
|
|
13
|
+
The reference to the source data. This can be one of the following formats:
|
|
14
|
+
1. A base64-encoded data URL (e.g., 'data:application/pdf;base64,JVBERi0xLjQKJcfs...').
|
|
15
|
+
2. A url pointing to a file accessible over HTTP or HTTPS.
|
|
16
|
+
3. A reference to a file that's been previously uploaded to Vellum, in the form of 'vellum:uploaded-file:{uploaded_file_id}'.
|
|
17
|
+
You can use the Uploaded Files API to retrieve the url of the uploaded file given its ID. See https://docs.vellum.ai/developers/client-sdk/uploaded-files/retrieve for details.
|
|
14
18
|
"""
|
|
15
19
|
|
|
16
20
|
metadata: typing.Optional[typing.Dict[str, typing.Optional[typing.Any]]] = None
|
|
@@ -9,7 +9,11 @@ from ..core.pydantic_utilities import IS_PYDANTIC_V2, UniversalBaseModel
|
|
|
9
9
|
class VellumVideoRequest(UniversalBaseModel):
|
|
10
10
|
src: str = pydantic.Field()
|
|
11
11
|
"""
|
|
12
|
-
|
|
12
|
+
The reference to the source data. This can be one of the following formats:
|
|
13
|
+
1. A base64-encoded data URL (e.g., 'data:application/pdf;base64,JVBERi0xLjQKJcfs...').
|
|
14
|
+
2. A url pointing to a file accessible over HTTP or HTTPS.
|
|
15
|
+
3. A reference to a file that's been previously uploaded to Vellum, in the form of 'vellum:uploaded-file:{uploaded_file_id}'.
|
|
16
|
+
You can use the Uploaded Files API to retrieve the url of the uploaded file given its ID. See https://docs.vellum.ai/developers/client-sdk/uploaded-files/retrieve for details.
|
|
13
17
|
"""
|
|
14
18
|
|
|
15
19
|
metadata: typing.Optional[typing.Dict[str, typing.Optional[typing.Any]]] = None
|
|
@@ -5,6 +5,7 @@ from pydantic import Field
|
|
|
5
5
|
|
|
6
6
|
from .node_execution_fulfilled_event import NodeExecutionFulfilledEvent
|
|
7
7
|
from .node_execution_initiated_event import NodeExecutionInitiatedEvent
|
|
8
|
+
from .node_execution_log_event import NodeExecutionLogEvent
|
|
8
9
|
from .node_execution_paused_event import NodeExecutionPausedEvent
|
|
9
10
|
from .node_execution_rejected_event import NodeExecutionRejectedEvent
|
|
10
11
|
from .node_execution_resumed_event import NodeExecutionResumedEvent
|
|
@@ -25,6 +26,7 @@ WorkflowEvent = typing.Annotated[
|
|
|
25
26
|
NodeExecutionRejectedEvent,
|
|
26
27
|
NodeExecutionPausedEvent,
|
|
27
28
|
NodeExecutionResumedEvent,
|
|
29
|
+
NodeExecutionLogEvent,
|
|
28
30
|
WorkflowExecutionInitiatedEvent,
|
|
29
31
|
WorkflowExecutionStreamingEvent,
|
|
30
32
|
WorkflowExecutionRejectedEvent,
|
|
@@ -12,6 +12,7 @@ class WorkflowExecutionFulfilledBody(UniversalBaseModel):
|
|
|
12
12
|
outputs: typing.Dict[str, typing.Optional[typing.Any]]
|
|
13
13
|
final_state: typing.Optional[typing.Dict[str, typing.Optional[typing.Any]]] = None
|
|
14
14
|
server_metadata: typing.Optional[typing.Dict[str, typing.Optional[typing.Any]]] = None
|
|
15
|
+
redacted: typing.Optional[bool] = None
|
|
15
16
|
|
|
16
17
|
if IS_PYDANTIC_V2:
|
|
17
18
|
model_config: typing.ClassVar[pydantic.ConfigDict] = pydantic.ConfigDict(extra="allow", frozen=True) # type: ignore # Pydantic v2
|
|
@@ -17,7 +17,7 @@ class WorkflowResultEventOutputDataArray(UniversalBaseModel):
|
|
|
17
17
|
id: typing.Optional[str] = None
|
|
18
18
|
name: str
|
|
19
19
|
state: WorkflowNodeResultEventState
|
|
20
|
-
node_id: str
|
|
20
|
+
node_id: typing.Optional[str] = None
|
|
21
21
|
delta: typing.Optional[str] = pydantic.Field(default=None)
|
|
22
22
|
"""
|
|
23
23
|
The newly output string value. Only relevant for string outputs with a state of STREAMING.
|
|
@@ -16,7 +16,7 @@ class WorkflowResultEventOutputDataChatHistory(UniversalBaseModel):
|
|
|
16
16
|
id: typing.Optional[str] = None
|
|
17
17
|
name: str
|
|
18
18
|
state: WorkflowNodeResultEventState
|
|
19
|
-
node_id: str
|
|
19
|
+
node_id: typing.Optional[str] = None
|
|
20
20
|
delta: typing.Optional[str] = pydantic.Field(default=None)
|
|
21
21
|
"""
|
|
22
22
|
The newly output string value. Only relevant for string outputs with a state of STREAMING.
|
|
@@ -16,7 +16,7 @@ class WorkflowResultEventOutputDataError(UniversalBaseModel):
|
|
|
16
16
|
id: typing.Optional[str] = None
|
|
17
17
|
name: str
|
|
18
18
|
state: WorkflowNodeResultEventState
|
|
19
|
-
node_id: str
|
|
19
|
+
node_id: typing.Optional[str] = None
|
|
20
20
|
delta: typing.Optional[str] = pydantic.Field(default=None)
|
|
21
21
|
"""
|
|
22
22
|
The newly output string value. Only relevant for string outputs with a state of STREAMING.
|
|
@@ -16,7 +16,7 @@ class WorkflowResultEventOutputDataFunctionCall(UniversalBaseModel):
|
|
|
16
16
|
id: typing.Optional[str] = None
|
|
17
17
|
name: str
|
|
18
18
|
state: WorkflowNodeResultEventState
|
|
19
|
-
node_id: str
|
|
19
|
+
node_id: typing.Optional[str] = None
|
|
20
20
|
delta: typing.Optional[str] = pydantic.Field(default=None)
|
|
21
21
|
"""
|
|
22
22
|
The newly output string value. Only relevant for string outputs with a state of STREAMING.
|
|
@@ -15,7 +15,7 @@ class WorkflowResultEventOutputDataJson(UniversalBaseModel):
|
|
|
15
15
|
id: typing.Optional[str] = None
|
|
16
16
|
name: str
|
|
17
17
|
state: WorkflowNodeResultEventState
|
|
18
|
-
node_id: str
|
|
18
|
+
node_id: typing.Optional[str] = None
|
|
19
19
|
delta: typing.Optional[str] = pydantic.Field(default=None)
|
|
20
20
|
"""
|
|
21
21
|
The newly output string value. Only relevant for string outputs with a state of STREAMING.
|
|
@@ -15,7 +15,7 @@ class WorkflowResultEventOutputDataNumber(UniversalBaseModel):
|
|
|
15
15
|
id: typing.Optional[str] = None
|
|
16
16
|
name: str
|
|
17
17
|
state: WorkflowNodeResultEventState
|
|
18
|
-
node_id: str
|
|
18
|
+
node_id: typing.Optional[str] = None
|
|
19
19
|
delta: typing.Optional[str] = pydantic.Field(default=None)
|
|
20
20
|
"""
|
|
21
21
|
The newly output string value. Only relevant for string outputs with a state of STREAMING.
|
|
@@ -16,7 +16,7 @@ class WorkflowResultEventOutputDataSearchResults(UniversalBaseModel):
|
|
|
16
16
|
id: typing.Optional[str] = None
|
|
17
17
|
name: str
|
|
18
18
|
state: WorkflowNodeResultEventState
|
|
19
|
-
node_id: str
|
|
19
|
+
node_id: typing.Optional[str] = None
|
|
20
20
|
delta: typing.Optional[str] = pydantic.Field(default=None)
|
|
21
21
|
"""
|
|
22
22
|
The newly output string value. Only relevant for string outputs with a state of STREAMING.
|
|
@@ -15,7 +15,7 @@ class WorkflowResultEventOutputDataString(UniversalBaseModel):
|
|
|
15
15
|
id: typing.Optional[str] = None
|
|
16
16
|
name: str
|
|
17
17
|
state: WorkflowNodeResultEventState
|
|
18
|
-
node_id: str
|
|
18
|
+
node_id: typing.Optional[str] = None
|
|
19
19
|
delta: typing.Optional[str] = pydantic.Field(default=None)
|
|
20
20
|
"""
|
|
21
21
|
The newly output string value, meant to be concatenated with all previous. Will be non-null for events of state STREAMING.
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
# This file was auto-generated by Fern from our API Definition.
|
|
2
|
+
|
|
3
|
+
import typing
|
|
4
|
+
|
|
5
|
+
from .node_execution_fulfilled_event import NodeExecutionFulfilledEvent
|
|
6
|
+
from .node_execution_rejected_event import NodeExecutionRejectedEvent
|
|
7
|
+
|
|
8
|
+
WorkflowSandboxExecuteNodeResponse = typing.Union[NodeExecutionFulfilledEvent, NodeExecutionRejectedEvent]
|
vellum/plugins/vellum_mypy.py
CHANGED
|
@@ -27,6 +27,39 @@ NODE_ATTRIBUTE_PATTERN = re.compile(NODE_ATTRIBUTE_REGEX)
|
|
|
27
27
|
NON_UNDERSCORE_PATTERN = re.compile(r"^[^_].*$")
|
|
28
28
|
COUNT_PATTERN = re.compile(r"^count$")
|
|
29
29
|
|
|
30
|
+
# Check if mypy.nodes.TypeAlias supports the 'module' parameter (added in mypy 1.14+)
|
|
31
|
+
_MYPY_TYPE_ALIAS_HAS_MODULE = hasattr(MypyTypeAlias, "module")
|
|
32
|
+
|
|
33
|
+
|
|
34
|
+
def _create_type_alias(
|
|
35
|
+
target: MypyType,
|
|
36
|
+
fullname: str,
|
|
37
|
+
line: int,
|
|
38
|
+
column: int,
|
|
39
|
+
module: Optional[str] = None,
|
|
40
|
+
) -> MypyTypeAlias:
|
|
41
|
+
"""Create a TypeAlias with backward compatibility for different mypy versions.
|
|
42
|
+
|
|
43
|
+
In mypy 1.14+, the TypeAlias constructor requires a 'module' parameter.
|
|
44
|
+
This helper function handles both old and new mypy versions.
|
|
45
|
+
"""
|
|
46
|
+
if _MYPY_TYPE_ALIAS_HAS_MODULE:
|
|
47
|
+
return MypyTypeAlias( # type: ignore[call-arg]
|
|
48
|
+
target=target,
|
|
49
|
+
fullname=fullname,
|
|
50
|
+
module=module,
|
|
51
|
+
line=line,
|
|
52
|
+
column=column,
|
|
53
|
+
)
|
|
54
|
+
else:
|
|
55
|
+
return MypyTypeAlias(
|
|
56
|
+
target=target,
|
|
57
|
+
fullname=fullname,
|
|
58
|
+
line=line,
|
|
59
|
+
column=column,
|
|
60
|
+
)
|
|
61
|
+
|
|
62
|
+
|
|
30
63
|
DESCRIPTOR_PATHS: list[tuple[str, str, re.Pattern[str]]] = [
|
|
31
64
|
(
|
|
32
65
|
"vellum.workflows.outputs.base.BaseOutputs",
|
|
@@ -617,11 +650,11 @@ class VellumMypyPlugin(Plugin):
|
|
|
617
650
|
|
|
618
651
|
new_fulfilled_event = fulfilled_event.copy_modified(args=(Instance(outputs_node, []),))
|
|
619
652
|
return TypeAliasType(
|
|
620
|
-
alias=
|
|
653
|
+
alias=_create_type_alias(
|
|
621
654
|
target=alias_target.copy_modified(
|
|
622
655
|
args=[
|
|
623
656
|
TypeAliasType(
|
|
624
|
-
alias=
|
|
657
|
+
alias=_create_type_alias(
|
|
625
658
|
target=UnionType(
|
|
626
659
|
items=[
|
|
627
660
|
new_fulfilled_event if index == fulfilled_event_index else item
|
|
@@ -631,6 +664,7 @@ class VellumMypyPlugin(Plugin):
|
|
|
631
664
|
fullname=union_alias.alias.fullname,
|
|
632
665
|
line=union_alias.alias.line,
|
|
633
666
|
column=union_alias.alias.column,
|
|
667
|
+
module=getattr(union_alias.alias, "module", None),
|
|
634
668
|
),
|
|
635
669
|
args=union_alias.args,
|
|
636
670
|
line=union_alias.line,
|
|
@@ -642,6 +676,7 @@ class VellumMypyPlugin(Plugin):
|
|
|
642
676
|
fullname=alias.fullname,
|
|
643
677
|
line=alias.line,
|
|
644
678
|
column=alias.column,
|
|
679
|
+
module=getattr(alias, "module", None),
|
|
645
680
|
),
|
|
646
681
|
args=ctx.default_return_type.args,
|
|
647
682
|
line=ctx.default_return_type.line,
|