vellum-ai 1.8.5__py3-none-any.whl → 1.8.6__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 (51) hide show
  1. vellum/__init__.py +6 -0
  2. vellum/client/core/client_wrapper.py +2 -2
  3. vellum/client/types/__init__.py +6 -0
  4. vellum/client/types/api_actor_type_enum.py +7 -0
  5. vellum/client/types/api_request_parent_context.py +6 -0
  6. vellum/client/types/external_parent_context.py +2 -0
  7. vellum/client/types/integration_trigger_context.py +38 -0
  8. vellum/client/types/node_execution_fulfilled_event.py +2 -0
  9. vellum/client/types/node_execution_initiated_event.py +2 -0
  10. vellum/client/types/node_execution_paused_event.py +2 -0
  11. vellum/client/types/node_execution_rejected_event.py +2 -0
  12. vellum/client/types/node_execution_resumed_event.py +2 -0
  13. vellum/client/types/node_execution_span.py +2 -0
  14. vellum/client/types/node_execution_streaming_event.py +2 -0
  15. vellum/client/types/node_parent_context.py +2 -0
  16. vellum/client/types/parent_context.py +4 -0
  17. vellum/client/types/prompt_deployment_parent_context.py +2 -0
  18. vellum/client/types/scheduled_trigger_context.py +38 -0
  19. vellum/client/types/slim_workflow_execution_read.py +2 -0
  20. vellum/client/types/span_link.py +2 -0
  21. vellum/client/types/workflow_deployment_event_executions_response.py +2 -0
  22. vellum/client/types/workflow_deployment_parent_context.py +2 -0
  23. vellum/client/types/workflow_event_execution_read.py +2 -0
  24. vellum/client/types/workflow_execution_detail.py +2 -0
  25. vellum/client/types/workflow_execution_fulfilled_event.py +2 -0
  26. vellum/client/types/workflow_execution_initiated_event.py +2 -0
  27. vellum/client/types/workflow_execution_paused_event.py +2 -0
  28. vellum/client/types/workflow_execution_rejected_event.py +2 -0
  29. vellum/client/types/workflow_execution_resumed_event.py +2 -0
  30. vellum/client/types/workflow_execution_snapshotted_event.py +2 -0
  31. vellum/client/types/workflow_execution_span.py +2 -0
  32. vellum/client/types/workflow_execution_streaming_event.py +2 -0
  33. vellum/client/types/workflow_parent_context.py +2 -0
  34. vellum/client/types/workflow_sandbox_parent_context.py +2 -0
  35. vellum/types/api_actor_type_enum.py +3 -0
  36. vellum/types/integration_trigger_context.py +3 -0
  37. vellum/types/scheduled_trigger_context.py +3 -0
  38. vellum/workflows/triggers/__init__.py +2 -1
  39. vellum/workflows/triggers/base.py +12 -4
  40. vellum/workflows/triggers/schedule.py +18 -0
  41. vellum/workflows/utils/uuids.py +1 -15
  42. {vellum_ai-1.8.5.dist-info → vellum_ai-1.8.6.dist-info}/METADATA +1 -1
  43. {vellum_ai-1.8.5.dist-info → vellum_ai-1.8.6.dist-info}/RECORD +51 -44
  44. vellum_ee/workflows/display/utils/expressions.py +2 -3
  45. vellum_ee/workflows/display/workflows/base_workflow_display.py +4 -4
  46. vellum_ee/workflows/server/virtual_file_loader.py +45 -1
  47. vellum_ee/workflows/tests/test_server.py +0 -64
  48. vellum_ee/workflows/tests/test_virtual_files.py +51 -0
  49. {vellum_ai-1.8.5.dist-info → vellum_ai-1.8.6.dist-info}/LICENSE +0 -0
  50. {vellum_ai-1.8.5.dist-info → vellum_ai-1.8.6.dist-info}/WHEEL +0 -0
  51. {vellum_ai-1.8.5.dist-info → vellum_ai-1.8.6.dist-info}/entry_points.txt +0 -0
@@ -80,3 +80,54 @@ def test_base_class_dynamic_import(files):
80
80
  assert instance.id
81
81
  except Exception as e:
82
82
  pytest.fail(f"Failed to create an instance of BaseClass: {e}")
83
+
84
+
85
+ def test_display_directory_not_auto_generated():
86
+ """
87
+ Test that the top-level display directory is NOT auto-generated with empty __init__.py.
88
+ Display directories typically have specific __init__.py content (e.g., "from .workflow import *")
89
+ that should not be replaced with empty auto-generated files.
90
+ """
91
+ # GIVEN a workflow with display/workflow.py but NO display/__init__.py
92
+ files = {
93
+ "__init__.py": "",
94
+ "workflow.py": """\
95
+ from vellum.workflows import BaseWorkflow
96
+ from vellum.workflows.nodes.bases import BaseNode
97
+
98
+ class StartNode(BaseNode):
99
+ pass
100
+
101
+ class Workflow(BaseWorkflow):
102
+ graph = StartNode
103
+ """,
104
+ "display/workflow.py": """\
105
+ from vellum_ee.workflows.display.workflows import BaseWorkflowDisplay
106
+
107
+ class WorkflowDisplay(BaseWorkflowDisplay):
108
+ pass
109
+ """,
110
+ # Note: NO "display/__init__.py" in files dict
111
+ }
112
+
113
+ namespace = str(uuid4())
114
+
115
+ # AND the virtual file loader is registered
116
+ sys.meta_path.append(VirtualFileFinder(files, namespace))
117
+
118
+ try:
119
+ # WHEN we try to resolve display/__init__.py
120
+ import importlib.util
121
+
122
+ spec = importlib.util.find_spec(f"{namespace}.display")
123
+
124
+ # THEN the spec should be None because we don't want to auto-generate display/__init__.py
125
+ # If the spec exists, it means an empty __init__.py was auto-generated (BAD)
126
+ assert spec is None, (
127
+ "display directory should NOT have auto-generated __init__.py. "
128
+ "Display directories require specific __init__.py content that shouldn't be empty."
129
+ )
130
+
131
+ finally:
132
+ # Clean up
133
+ sys.meta_path = [finder for finder in sys.meta_path if not isinstance(finder, VirtualFileFinder)]