vellum-ai 1.8.3__py3-none-any.whl → 1.8.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.
- vellum/__init__.py +4 -0
- vellum/client/core/client_wrapper.py +2 -2
- vellum/client/types/__init__.py +4 -0
- vellum/client/types/workflow_deployment_display_data.py +27 -0
- vellum/client/types/workflow_deployment_read.py +6 -0
- vellum/client/types/workflow_display_icon.py +24 -0
- vellum/types/workflow_deployment_display_data.py +3 -0
- vellum/types/workflow_display_icon.py +3 -0
- vellum/workflows/descriptors/base.py +11 -0
- vellum/workflows/descriptors/tests/test_utils.py +7 -0
- vellum/workflows/events/types.py +10 -0
- vellum/workflows/nodes/core/map_node/node.py +1 -0
- vellum/workflows/nodes/displayable/tool_calling_node/node.py +15 -1
- vellum/workflows/state/context.py +17 -2
- vellum/workflows/utils/uuids.py +7 -6
- vellum/workflows/workflows/base.py +3 -1
- {vellum_ai-1.8.3.dist-info → vellum_ai-1.8.5.dist-info}/METADATA +1 -1
- {vellum_ai-1.8.3.dist-info → vellum_ai-1.8.5.dist-info}/RECORD +23 -19
- vellum_ee/workflows/display/tests/workflow_serialization/test_manual_trigger_serialization.py +3 -3
- vellum_ee/workflows/display/utils/expressions.py +3 -3
- {vellum_ai-1.8.3.dist-info → vellum_ai-1.8.5.dist-info}/LICENSE +0 -0
- {vellum_ai-1.8.3.dist-info → vellum_ai-1.8.5.dist-info}/WHEEL +0 -0
- {vellum_ai-1.8.3.dist-info → vellum_ai-1.8.5.dist-info}/entry_points.txt +0 -0
vellum/__init__.py
CHANGED
|
@@ -612,6 +612,7 @@ from .client.types import (
|
|
|
612
612
|
VideoPromptBlock,
|
|
613
613
|
VideoVellumValue,
|
|
614
614
|
VideoVellumValueRequest,
|
|
615
|
+
WorkflowDeploymentDisplayData,
|
|
615
616
|
WorkflowDeploymentEventExecutionsResponse,
|
|
616
617
|
WorkflowDeploymentHistoryItem,
|
|
617
618
|
WorkflowDeploymentParentContext,
|
|
@@ -619,6 +620,7 @@ from .client.types import (
|
|
|
619
620
|
WorkflowDeploymentRelease,
|
|
620
621
|
WorkflowDeploymentReleaseWorkflowDeployment,
|
|
621
622
|
WorkflowDeploymentReleaseWorkflowVersion,
|
|
623
|
+
WorkflowDisplayIcon,
|
|
622
624
|
WorkflowError,
|
|
623
625
|
WorkflowEvent,
|
|
624
626
|
WorkflowEventError,
|
|
@@ -1368,6 +1370,7 @@ __all__ = [
|
|
|
1368
1370
|
"VideoPromptBlock",
|
|
1369
1371
|
"VideoVellumValue",
|
|
1370
1372
|
"VideoVellumValueRequest",
|
|
1373
|
+
"WorkflowDeploymentDisplayData",
|
|
1371
1374
|
"WorkflowDeploymentEventExecutionsResponse",
|
|
1372
1375
|
"WorkflowDeploymentHistoryItem",
|
|
1373
1376
|
"WorkflowDeploymentParentContext",
|
|
@@ -1376,6 +1379,7 @@ __all__ = [
|
|
|
1376
1379
|
"WorkflowDeploymentReleaseWorkflowDeployment",
|
|
1377
1380
|
"WorkflowDeploymentReleaseWorkflowVersion",
|
|
1378
1381
|
"WorkflowDeploymentsListRequestStatus",
|
|
1382
|
+
"WorkflowDisplayIcon",
|
|
1379
1383
|
"WorkflowError",
|
|
1380
1384
|
"WorkflowEvent",
|
|
1381
1385
|
"WorkflowEventError",
|
|
@@ -27,10 +27,10 @@ class BaseClientWrapper:
|
|
|
27
27
|
|
|
28
28
|
def get_headers(self) -> typing.Dict[str, str]:
|
|
29
29
|
headers: typing.Dict[str, str] = {
|
|
30
|
-
"User-Agent": "vellum-ai/1.8.
|
|
30
|
+
"User-Agent": "vellum-ai/1.8.5",
|
|
31
31
|
"X-Fern-Language": "Python",
|
|
32
32
|
"X-Fern-SDK-Name": "vellum-ai",
|
|
33
|
-
"X-Fern-SDK-Version": "1.8.
|
|
33
|
+
"X-Fern-SDK-Version": "1.8.5",
|
|
34
34
|
**(self.get_custom_headers() or {}),
|
|
35
35
|
}
|
|
36
36
|
if self._api_version is not None:
|
vellum/client/types/__init__.py
CHANGED
|
@@ -636,6 +636,7 @@ from .video_input_request import VideoInputRequest
|
|
|
636
636
|
from .video_prompt_block import VideoPromptBlock
|
|
637
637
|
from .video_vellum_value import VideoVellumValue
|
|
638
638
|
from .video_vellum_value_request import VideoVellumValueRequest
|
|
639
|
+
from .workflow_deployment_display_data import WorkflowDeploymentDisplayData
|
|
639
640
|
from .workflow_deployment_event_executions_response import WorkflowDeploymentEventExecutionsResponse
|
|
640
641
|
from .workflow_deployment_history_item import WorkflowDeploymentHistoryItem
|
|
641
642
|
from .workflow_deployment_parent_context import WorkflowDeploymentParentContext
|
|
@@ -643,6 +644,7 @@ from .workflow_deployment_read import WorkflowDeploymentRead
|
|
|
643
644
|
from .workflow_deployment_release import WorkflowDeploymentRelease
|
|
644
645
|
from .workflow_deployment_release_workflow_deployment import WorkflowDeploymentReleaseWorkflowDeployment
|
|
645
646
|
from .workflow_deployment_release_workflow_version import WorkflowDeploymentReleaseWorkflowVersion
|
|
647
|
+
from .workflow_display_icon import WorkflowDisplayIcon
|
|
646
648
|
from .workflow_error import WorkflowError
|
|
647
649
|
from .workflow_event import WorkflowEvent
|
|
648
650
|
from .workflow_event_error import WorkflowEventError
|
|
@@ -1332,6 +1334,7 @@ __all__ = [
|
|
|
1332
1334
|
"VideoPromptBlock",
|
|
1333
1335
|
"VideoVellumValue",
|
|
1334
1336
|
"VideoVellumValueRequest",
|
|
1337
|
+
"WorkflowDeploymentDisplayData",
|
|
1335
1338
|
"WorkflowDeploymentEventExecutionsResponse",
|
|
1336
1339
|
"WorkflowDeploymentHistoryItem",
|
|
1337
1340
|
"WorkflowDeploymentParentContext",
|
|
@@ -1339,6 +1342,7 @@ __all__ = [
|
|
|
1339
1342
|
"WorkflowDeploymentRelease",
|
|
1340
1343
|
"WorkflowDeploymentReleaseWorkflowDeployment",
|
|
1341
1344
|
"WorkflowDeploymentReleaseWorkflowVersion",
|
|
1345
|
+
"WorkflowDisplayIcon",
|
|
1342
1346
|
"WorkflowError",
|
|
1343
1347
|
"WorkflowEvent",
|
|
1344
1348
|
"WorkflowEventError",
|
|
@@ -0,0 +1,27 @@
|
|
|
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 .workflow_display_icon import WorkflowDisplayIcon
|
|
8
|
+
|
|
9
|
+
|
|
10
|
+
class WorkflowDeploymentDisplayData(UniversalBaseModel):
|
|
11
|
+
"""
|
|
12
|
+
Workflow Deployment display data
|
|
13
|
+
"""
|
|
14
|
+
|
|
15
|
+
icon: typing.Optional[WorkflowDisplayIcon] = pydantic.Field(default=None)
|
|
16
|
+
"""
|
|
17
|
+
The icon associated with this Workflow Deployment.
|
|
18
|
+
"""
|
|
19
|
+
|
|
20
|
+
if IS_PYDANTIC_V2:
|
|
21
|
+
model_config: typing.ClassVar[pydantic.ConfigDict] = pydantic.ConfigDict(extra="allow", frozen=True) # type: ignore # Pydantic v2
|
|
22
|
+
else:
|
|
23
|
+
|
|
24
|
+
class Config:
|
|
25
|
+
frozen = True
|
|
26
|
+
smart_union = True
|
|
27
|
+
extra = pydantic.Extra.allow
|
|
@@ -10,6 +10,7 @@ from ..core.pydantic_utilities import IS_PYDANTIC_V2, UniversalBaseModel, update
|
|
|
10
10
|
from .entity_status import EntityStatus
|
|
11
11
|
from .environment_enum import EnvironmentEnum
|
|
12
12
|
from .vellum_variable import VellumVariable
|
|
13
|
+
from .workflow_deployment_display_data import WorkflowDeploymentDisplayData
|
|
13
14
|
|
|
14
15
|
|
|
15
16
|
class WorkflowDeploymentRead(UniversalBaseModel):
|
|
@@ -63,6 +64,11 @@ class WorkflowDeploymentRead(UniversalBaseModel):
|
|
|
63
64
|
A human-readable description of the workflow deployment
|
|
64
65
|
"""
|
|
65
66
|
|
|
67
|
+
display_data: typing.Optional[WorkflowDeploymentDisplayData] = pydantic.Field(default=None)
|
|
68
|
+
"""
|
|
69
|
+
Information used to display this Workflow Deployment.
|
|
70
|
+
"""
|
|
71
|
+
|
|
66
72
|
if IS_PYDANTIC_V2:
|
|
67
73
|
model_config: typing.ClassVar[pydantic.ConfigDict] = pydantic.ConfigDict(extra="allow", frozen=True) # type: ignore # Pydantic v2
|
|
68
74
|
else:
|
|
@@ -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 WorkflowDisplayIcon(UniversalBaseModel):
|
|
10
|
+
"""
|
|
11
|
+
Icon to be used alongside a Workflow
|
|
12
|
+
"""
|
|
13
|
+
|
|
14
|
+
src: typing.Optional[str] = None
|
|
15
|
+
color: 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
|
|
@@ -399,6 +399,17 @@ class BaseDescriptor(Generic[_T]):
|
|
|
399
399
|
|
|
400
400
|
return AddExpression(lhs=self, rhs=other)
|
|
401
401
|
|
|
402
|
+
@overload
|
|
403
|
+
def __add__(self, other: "BaseDescriptor[_O]") -> "AddExpression[_T, _O]": ...
|
|
404
|
+
|
|
405
|
+
@overload
|
|
406
|
+
def __add__(self, other: _O) -> "AddExpression[_T, _O]": ...
|
|
407
|
+
|
|
408
|
+
def __add__(self, other: "Union[BaseDescriptor[_O], _O]") -> "AddExpression[_T, _O]":
|
|
409
|
+
from vellum.workflows.expressions.add import AddExpression
|
|
410
|
+
|
|
411
|
+
return AddExpression(lhs=self, rhs=other)
|
|
412
|
+
|
|
402
413
|
@overload
|
|
403
414
|
def minus(self, other: "BaseDescriptor[_O]") -> "MinusExpression[_T, _O]": ...
|
|
404
415
|
|
|
@@ -125,6 +125,10 @@ class DummyNode(BaseNode[FixtureState]):
|
|
|
125
125
|
(ConstantValueReference(b'{"foo": "bar"}').parse_json(), {"foo": "bar"}),
|
|
126
126
|
(ConstantValueReference(bytearray(b'{"foo": "bar"}')).parse_json(), {"foo": "bar"}),
|
|
127
127
|
(ConstantValueReference(b'{"key": "\xf0\x9f\x8c\x9f"}').parse_json(), {"key": "🌟"}),
|
|
128
|
+
# Test + operator
|
|
129
|
+
(FixtureState.alpha + FixtureState.beta, 3),
|
|
130
|
+
(FixtureState.gamma + FixtureState.delta, "helloel"),
|
|
131
|
+
(FixtureState.theta + FixtureState.theta, ["baz", "baz"]),
|
|
128
132
|
],
|
|
129
133
|
ids=[
|
|
130
134
|
"or",
|
|
@@ -184,6 +188,9 @@ class DummyNode(BaseNode[FixtureState]):
|
|
|
184
188
|
"parse_json_bytes",
|
|
185
189
|
"parse_json_bytearray",
|
|
186
190
|
"parse_json_bytes_with_utf8_chars",
|
|
191
|
+
"add_integers",
|
|
192
|
+
"add_strings",
|
|
193
|
+
"add_lists",
|
|
187
194
|
],
|
|
188
195
|
)
|
|
189
196
|
def test_resolve_value__happy_path(descriptor, expected_value):
|
vellum/workflows/events/types.py
CHANGED
|
@@ -85,6 +85,14 @@ class ExternalParentContext(BaseParentContext):
|
|
|
85
85
|
type: Literal["EXTERNAL"] = "EXTERNAL"
|
|
86
86
|
|
|
87
87
|
|
|
88
|
+
class WorkflowDeploymentScheduledTriggerContext(BaseParentContext):
|
|
89
|
+
type: Literal["SCHEDULED"] = "SCHEDULED"
|
|
90
|
+
|
|
91
|
+
|
|
92
|
+
class WorkflowDeploymentIntegrationTriggerContext(BaseParentContext):
|
|
93
|
+
type: Literal["INTEGRATION"] = "INTEGRATION"
|
|
94
|
+
|
|
95
|
+
|
|
88
96
|
class SpanLink(UniversalBaseModel):
|
|
89
97
|
trace_id: str
|
|
90
98
|
type: Literal["TRIGGERED_BY", "PREVIOUS_SPAN", "ROOT_SPAN"]
|
|
@@ -150,6 +158,8 @@ ParentContext = Annotated[
|
|
|
150
158
|
WorkflowSandboxParentContext,
|
|
151
159
|
APIRequestParentContext,
|
|
152
160
|
ExternalParentContext,
|
|
161
|
+
WorkflowDeploymentScheduledTriggerContext,
|
|
162
|
+
WorkflowDeploymentIntegrationTriggerContext,
|
|
153
163
|
UnknownParentContext,
|
|
154
164
|
],
|
|
155
165
|
ParentContextDiscriminator(),
|
|
@@ -99,6 +99,7 @@ class MapNode(BaseAdornmentNode[StateType], Generic[StateType, MapNodeItemType])
|
|
|
99
99
|
map_node_event = self._event_queue.get(block=False)
|
|
100
100
|
index = map_node_event[0]
|
|
101
101
|
subworkflow_event = map_node_event[1]
|
|
102
|
+
|
|
102
103
|
self._context._emit_subworkflow_event(subworkflow_event)
|
|
103
104
|
|
|
104
105
|
if not is_workflow_event(subworkflow_event):
|
|
@@ -3,6 +3,7 @@ from typing import Any, ClassVar, Dict, Generic, Iterator, List, Optional, Set,
|
|
|
3
3
|
from vellum import ChatMessage, PromptBlock, PromptOutput
|
|
4
4
|
from vellum.client.types.prompt_parameters import PromptParameters
|
|
5
5
|
from vellum.client.types.prompt_settings import PromptSettings
|
|
6
|
+
from vellum.client.types.string_chat_message_content import StringChatMessageContent
|
|
6
7
|
from vellum.prompts.constants import DEFAULT_PROMPT_PARAMETERS
|
|
7
8
|
from vellum.workflows.context import execution_context, get_parent_context
|
|
8
9
|
from vellum.workflows.errors.types import WorkflowErrorCode
|
|
@@ -107,7 +108,20 @@ class ToolCallingNode(BaseNode[StateType], Generic[StateType]):
|
|
|
107
108
|
continue
|
|
108
109
|
|
|
109
110
|
if event.name == "workflow.execution.streaming":
|
|
110
|
-
if event.output.name == "
|
|
111
|
+
if event.output.name == "results":
|
|
112
|
+
if event.output.is_streaming:
|
|
113
|
+
if isinstance(event.output.delta, str):
|
|
114
|
+
text_message = ChatMessage(
|
|
115
|
+
text=event.output.delta,
|
|
116
|
+
role="ASSISTANT",
|
|
117
|
+
content=StringChatMessageContent(type="STRING", value=event.output.delta),
|
|
118
|
+
source=None,
|
|
119
|
+
)
|
|
120
|
+
yield BaseOutput(
|
|
121
|
+
name="chat_history",
|
|
122
|
+
delta=[text_message],
|
|
123
|
+
)
|
|
124
|
+
elif event.output.name == "chat_history":
|
|
111
125
|
if event.output.is_fulfilled:
|
|
112
126
|
fulfilled_output_names.add(event.output.name)
|
|
113
127
|
yield event.output
|
|
@@ -10,6 +10,7 @@ from vellum.workflows.events.types import ExternalParentContext
|
|
|
10
10
|
from vellum.workflows.nodes.mocks import MockNodeExecution, MockNodeExecutionArg
|
|
11
11
|
from vellum.workflows.outputs.base import BaseOutputs
|
|
12
12
|
from vellum.workflows.references.constant import ConstantValueReference
|
|
13
|
+
from vellum.workflows.state.store import Store
|
|
13
14
|
from vellum.workflows.utils.uuids import generate_workflow_deployment_prefix
|
|
14
15
|
from vellum.workflows.utils.zip import extract_zip_files
|
|
15
16
|
from vellum.workflows.vellum_client import create_vellum_client
|
|
@@ -40,12 +41,14 @@ class WorkflowContext:
|
|
|
40
41
|
execution_context: Optional[ExecutionContext] = None,
|
|
41
42
|
generated_files: Optional[dict[str, str]] = None,
|
|
42
43
|
namespace: Optional[str] = None,
|
|
44
|
+
store_class: Optional[Type[Store]] = None,
|
|
43
45
|
):
|
|
44
46
|
self._vellum_client = vellum_client
|
|
45
47
|
self._event_queue: Optional[Queue["WorkflowEvent"]] = None
|
|
46
48
|
self._node_output_mocks_map: Dict[Type[BaseOutputs], List[MockNodeExecution]] = {}
|
|
47
49
|
self._execution_context = get_execution_context()
|
|
48
50
|
self._namespace = namespace
|
|
51
|
+
self._store_class = store_class if store_class is not None else Store
|
|
49
52
|
|
|
50
53
|
if execution_context is not None:
|
|
51
54
|
self._execution_context.trace_id = execution_context.trace_id
|
|
@@ -85,6 +88,10 @@ class WorkflowContext:
|
|
|
85
88
|
def node_output_mocks_map(self) -> Dict[Type[BaseOutputs], List[MockNodeExecution]]:
|
|
86
89
|
return self._node_output_mocks_map
|
|
87
90
|
|
|
91
|
+
@property
|
|
92
|
+
def store_class(self) -> Type[Store]:
|
|
93
|
+
return self._store_class
|
|
94
|
+
|
|
88
95
|
@property
|
|
89
96
|
def monitoring_url(self) -> Optional[str]:
|
|
90
97
|
"""
|
|
@@ -247,13 +254,18 @@ class WorkflowContext:
|
|
|
247
254
|
deployment.id, release_tag
|
|
248
255
|
)
|
|
249
256
|
|
|
257
|
+
# Fetch workflow version
|
|
258
|
+
release = self.vellum_client.workflow_deployments.retrieve_workflow_deployment_release(
|
|
259
|
+
str(deployment_id), release_tag
|
|
260
|
+
)
|
|
261
|
+
|
|
250
262
|
return WorkflowDeploymentMetadata(
|
|
251
263
|
deployment_id=deployment_id,
|
|
252
264
|
deployment_name=deployment.name,
|
|
253
265
|
deployment_history_item_id=UUID(deployment.last_deployed_history_item_id),
|
|
254
266
|
release_tag_id=UUID(release_tag_info.release.id),
|
|
255
267
|
release_tag_name=release_tag_info.name,
|
|
256
|
-
workflow_version_id=
|
|
268
|
+
workflow_version_id=UUID(release.workflow_version.id),
|
|
257
269
|
)
|
|
258
270
|
except Exception:
|
|
259
271
|
# If we fail to fetch metadata, return None - the workflow can still run
|
|
@@ -263,5 +275,8 @@ class WorkflowContext:
|
|
|
263
275
|
@classmethod
|
|
264
276
|
def create_from(cls, context):
|
|
265
277
|
return cls(
|
|
266
|
-
vellum_client=context.vellum_client,
|
|
278
|
+
vellum_client=context.vellum_client,
|
|
279
|
+
generated_files=context.generated_files,
|
|
280
|
+
namespace=context.namespace,
|
|
281
|
+
store_class=context.store_class,
|
|
267
282
|
)
|
vellum/workflows/utils/uuids.py
CHANGED
|
@@ -46,27 +46,28 @@ def uuid4_from_hash(input_str: str) -> UUID:
|
|
|
46
46
|
def get_trigger_id(trigger_class: "type[BaseTrigger]") -> UUID:
|
|
47
47
|
"""
|
|
48
48
|
Generate a deterministic trigger ID from a trigger class using
|
|
49
|
-
the class's __qualname__ to ensure stability
|
|
49
|
+
the class's module name and __qualname__ to ensure stability and uniqueness.
|
|
50
50
|
|
|
51
51
|
Args:
|
|
52
52
|
trigger_class: The trigger class to generate an ID for
|
|
53
53
|
|
|
54
54
|
Returns:
|
|
55
|
-
A deterministic UUID based on the trigger class qualname
|
|
55
|
+
A deterministic UUID based on the trigger class module and qualname
|
|
56
56
|
"""
|
|
57
|
-
return uuid4_from_hash(trigger_class.__qualname__)
|
|
57
|
+
return uuid4_from_hash(f"{trigger_class.__module__}.{trigger_class.__qualname__}")
|
|
58
58
|
|
|
59
59
|
|
|
60
60
|
def get_trigger_attribute_id(trigger_class: "type[BaseTrigger]", attribute_name: str) -> UUID:
|
|
61
61
|
"""
|
|
62
62
|
Generate a deterministic trigger attribute ID from a trigger class and attribute name
|
|
63
|
-
using the class's __qualname__ and attribute name to ensure stability.
|
|
63
|
+
using the class's module name, __qualname__, and attribute name to ensure stability and uniqueness.
|
|
64
64
|
|
|
65
65
|
Args:
|
|
66
66
|
trigger_class: The trigger class containing the attribute
|
|
67
67
|
attribute_name: The name of the attribute
|
|
68
68
|
|
|
69
69
|
Returns:
|
|
70
|
-
A deterministic UUID based on the trigger class qualname and attribute name
|
|
70
|
+
A deterministic UUID based on the trigger class module, qualname, and attribute name
|
|
71
71
|
"""
|
|
72
|
-
|
|
72
|
+
trigger_id = get_trigger_id(trigger_class)
|
|
73
|
+
return uuid4_from_hash(f"{trigger_id}|{attribute_name}")
|
|
@@ -257,7 +257,9 @@ class BaseWorkflow(Generic[InputsType, StateType], BaseExecutable, metaclass=_Ba
|
|
|
257
257
|
self._context = context or WorkflowContext()
|
|
258
258
|
self.emitters = emitters or (self.emitters if hasattr(self, "emitters") else [])
|
|
259
259
|
self.resolvers = resolvers or (self.resolvers if hasattr(self, "resolvers") else [])
|
|
260
|
-
|
|
260
|
+
# Prioritize store type from WorkflowContext to allow subworkflows to inherit EmptyStore
|
|
261
|
+
# TODO(v2.0.0): Remove the concept of an internal store altogether (important-comment)
|
|
262
|
+
self._store = store or self._context.store_class()
|
|
261
263
|
self._execution_context = self._context.execution_context
|
|
262
264
|
self._current_runner: Optional[WorkflowRunner] = None
|
|
263
265
|
|
|
@@ -111,7 +111,7 @@ vellum_ee/workflows/display/tests/workflow_serialization/test_basic_try_node_ser
|
|
|
111
111
|
vellum_ee/workflows/display/tests/workflow_serialization/test_complex_terminal_node_serialization.py,sha256=exT7U-axwtYgFylagScflSQLJEND51qIAx2UATju6JM,6023
|
|
112
112
|
vellum_ee/workflows/display/tests/workflow_serialization/test_final_output_node_map_reference_serialization.py,sha256=vl3pxUJlrYRA8zzFJ-gRm7fe-5fviLNSIsUC7imnMqk,3502
|
|
113
113
|
vellum_ee/workflows/display/tests/workflow_serialization/test_list_vellum_document_serialization.py,sha256=ZRcDhOSVKFHvt_rBkNSL7j3VLeWKQbH-KRoJWrtWD2s,2193
|
|
114
|
-
vellum_ee/workflows/display/tests/workflow_serialization/test_manual_trigger_serialization.py,sha256=
|
|
114
|
+
vellum_ee/workflows/display/tests/workflow_serialization/test_manual_trigger_serialization.py,sha256=QjyxK94uPWaBmCmCWxQwuW0OopR06mVcsIjmsnr8UwE,3743
|
|
115
115
|
vellum_ee/workflows/display/tests/workflow_serialization/test_terminal_node_any_serialization.py,sha256=4WAmSEJZlDBLPhsD1f4GwY9ahB9F6qJKGnL6j7ZYlzQ,1740
|
|
116
116
|
vellum_ee/workflows/display/tests/workflow_serialization/test_vellum_integration_trigger_serialization.py,sha256=eG7_D76ErR7IrCpWRG4gLKoKGV7VfBL1buezNJ_wkZc,9038
|
|
117
117
|
vellum_ee/workflows/display/tests/workflow_serialization/test_web_search_node_serialization.py,sha256=vbDFBrWUPeeW7cxjNA6SXrsHlYcbOAhlQ4C45Vdnr1c,3428
|
|
@@ -121,7 +121,7 @@ vellum_ee/workflows/display/utils/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeR
|
|
|
121
121
|
vellum_ee/workflows/display/utils/auto_layout.py,sha256=f4GiLn_LazweupfqTpubcdtdfE_vrOcmZudSsnYIY9E,3906
|
|
122
122
|
vellum_ee/workflows/display/utils/events.py,sha256=XcaQSfmk2s9ZNiU8__ZqH_zfp6KUVACczz9TBWVy7Jc,2208
|
|
123
123
|
vellum_ee/workflows/display/utils/exceptions.py,sha256=E8Lvo7LY1BoZ54M_NR_opDjJsAAiCUfow1HgoHcTHmg,989
|
|
124
|
-
vellum_ee/workflows/display/utils/expressions.py,sha256=
|
|
124
|
+
vellum_ee/workflows/display/utils/expressions.py,sha256=Phzemb0kFysV8uqAoLyGBfVRcP4mvnMcizNX2LZgPQ4,21356
|
|
125
125
|
vellum_ee/workflows/display/utils/registry.py,sha256=1qXiBTdsnro6FeCX0FGBEK7CIf6wa--Jt50iZ_nEp_M,3460
|
|
126
126
|
vellum_ee/workflows/display/utils/tests/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
127
127
|
vellum_ee/workflows/display/utils/tests/test_auto_layout.py,sha256=vfXI769418s9vda5Gb5NFBH747WMOwSgHRXeLCTLVm8,2356
|
|
@@ -159,12 +159,12 @@ vellum_ee/workflows/tests/test_registry.py,sha256=B8xRIuEyLWfSqrYoPldNQXhKPfe50P
|
|
|
159
159
|
vellum_ee/workflows/tests/test_serialize_module.py,sha256=thzGsNzYCRXXdaC5yk1ZjtXrIO6uPdSnzdapKLCOsC8,6241
|
|
160
160
|
vellum_ee/workflows/tests/test_server.py,sha256=2_n84q_QZN_zW2rZgDenQUXM3x43TcPsRs1fDA6BK1U,29805
|
|
161
161
|
vellum_ee/workflows/tests/test_virtual_files.py,sha256=TJEcMR0v2S8CkloXNmCHA0QW0K6pYNGaIjraJz7sFvY,2762
|
|
162
|
-
vellum/__init__.py,sha256=
|
|
162
|
+
vellum/__init__.py,sha256=E_FsKfOkXg7KvOiBjE0vTWn34tAnYQvijb5FAHcsLDE,49836
|
|
163
163
|
vellum/client/README.md,sha256=flqu57ubZNTfpq60CdLtJC9gp4WEkyjb_n_eZ4OYf9w,6497
|
|
164
164
|
vellum/client/__init__.py,sha256=-nugZzQKoUJsStXe6PnOD__8kbDLKKokceDgpGxQ_q0,74576
|
|
165
165
|
vellum/client/core/__init__.py,sha256=lTcqUPXcx4112yLDd70RAPeqq6tu3eFMe1pKOqkW9JQ,1562
|
|
166
166
|
vellum/client/core/api_error.py,sha256=44vPoTyWN59gonCIZMdzw7M1uspygiLnr3GNFOoVL2Q,614
|
|
167
|
-
vellum/client/core/client_wrapper.py,sha256=
|
|
167
|
+
vellum/client/core/client_wrapper.py,sha256=TaM0xsyTfopC31l4utYPlm7CxH7dKJRjM80HmFHbX1s,2840
|
|
168
168
|
vellum/client/core/datetime_utils.py,sha256=nBys2IsYrhPdszxGKCNRPSOCwa-5DWOHG95FB8G9PKo,1047
|
|
169
169
|
vellum/client/core/file.py,sha256=d4NNbX8XvXP32z8KpK2Xovv33nFfruIrpz0QWxlgpZk,2663
|
|
170
170
|
vellum/client/core/force_multipart.py,sha256=awxh5MtcRYe74ehY8U76jzv6fYM_w_D3Rur7KQQzSDk,429
|
|
@@ -273,7 +273,7 @@ vellum/client/resources/workspaces/client.py,sha256=36KYa2FDu6h65q2GscUFOJs4qKei
|
|
|
273
273
|
vellum/client/resources/workspaces/raw_client.py,sha256=M3Ewk1ZfEZ44EeTvBtBNoNKi5whwfLY-1GR07SyfDTI,3517
|
|
274
274
|
vellum/client/tests/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
275
275
|
vellum/client/tests/test_utils.py,sha256=zk8z45-2xrm9sZ2hq8PTqY8MXmXtPqMqYK0VBBX0GHg,1176
|
|
276
|
-
vellum/client/types/__init__.py,sha256=
|
|
276
|
+
vellum/client/types/__init__.py,sha256=4x0VD1hiSDruxauc6TI6yO9u9buX0C0RXKGwbUQrB6o,75393
|
|
277
277
|
vellum/client/types/ad_hoc_execute_prompt_event.py,sha256=B69EesIH6fpNsdoiJaSG9zF1Sl17FnjoTu4CBkUSoHk,608
|
|
278
278
|
vellum/client/types/ad_hoc_expand_meta.py,sha256=Kajcj3dKKed5e7uZibRnE3ZonK_bB2JPM-3aLjLfUp4,1295
|
|
279
279
|
vellum/client/types/ad_hoc_fulfilled_prompt_execution_meta.py,sha256=5kD6ZcbU8P8ynK0lMD8Mh7vHzvQt06ziMyphvWYg6FU,968
|
|
@@ -880,13 +880,15 @@ vellum/client/types/video_input_request.py,sha256=wNQwncQsbEez5UR7wI_Erg__6V_WDM
|
|
|
880
880
|
vellum/client/types/video_prompt_block.py,sha256=8uyJRzNnoV6vB4sVPxtxx9gsVkLsfHaobLcQM4CdWTY,977
|
|
881
881
|
vellum/client/types/video_vellum_value.py,sha256=8KfVyPZ0b3nv0wuo-p88yE9jc5VyYXk0HPnesgiYGjY,711
|
|
882
882
|
vellum/client/types/video_vellum_value_request.py,sha256=q6dptI5XdJNFwtTRlNyPqU0EUlRDFlhH8GjJgMzY2c8,740
|
|
883
|
+
vellum/client/types/workflow_deployment_display_data.py,sha256=6D2CqxfJLFZPpmjYZ5FNOPMLPvvcAlYz7Y23_CmzJqA,780
|
|
883
884
|
vellum/client/types/workflow_deployment_event_executions_response.py,sha256=KXzRC0iaXsBu9ezA4p7PIHL4-IWIQ-lX6NW6noTHtZ4,1570
|
|
884
885
|
vellum/client/types/workflow_deployment_history_item.py,sha256=RF_ByBLXRo47MhAuyUV4FkxmN_j879-UylfRyZaYAm0,1327
|
|
885
886
|
vellum/client/types/workflow_deployment_parent_context.py,sha256=1JdTw3LL6tgCgiMVrX35SZVu7mZcxz6SbxWPCUBZ09s,1796
|
|
886
|
-
vellum/client/types/workflow_deployment_read.py,sha256=
|
|
887
|
+
vellum/client/types/workflow_deployment_read.py,sha256=bSdmiGtOUdZoNRH14PtmoLsSGACh0xwUXG6Fqr5a30I,2494
|
|
887
888
|
vellum/client/types/workflow_deployment_release.py,sha256=yd9Okgpdm8Oob9VmIKaksZjmRv2uLHGJtc-H5sO10F8,1520
|
|
888
889
|
vellum/client/types/workflow_deployment_release_workflow_deployment.py,sha256=ZmQhemAQEqARhkSvc9DFdgfTKQfSHvRTS9reW1Wx9dI,550
|
|
889
890
|
vellum/client/types/workflow_deployment_release_workflow_version.py,sha256=VbVrwsDHapwPSsGEt8OM9Gjs31esIqkp8ta5zrZvPTw,885
|
|
891
|
+
vellum/client/types/workflow_display_icon.py,sha256=SmjaK8yazBntU1Nh57bVz_sYf59DwaKvamUzea0wEdo,646
|
|
890
892
|
vellum/client/types/workflow_error.py,sha256=iDMQ3Wx7E8lf6BYtBTGpeIxG46iF9mjzTpjxyJVTXgM,283
|
|
891
893
|
vellum/client/types/workflow_event.py,sha256=M_ra0CjUffCPqPRFJM_oR1IY4egHDGa0tY1HAoA8j5k,1532
|
|
892
894
|
vellum/client/types/workflow_event_error.py,sha256=qNqSGvPOLODPTiaWmsUKyTx9W91JDIm9r9s05zsTsfg,779
|
|
@@ -1708,6 +1710,7 @@ vellum/types/video_input_request.py,sha256=6pDU5OXPS8AxJGlM9KoaQiVAl7UthQsr0aTCM
|
|
|
1708
1710
|
vellum/types/video_prompt_block.py,sha256=hraiqOCqrjZ6g5b7sH_oUCqitstkKJphuz2-uzmXEkk,156
|
|
1709
1711
|
vellum/types/video_vellum_value.py,sha256=h7AtjZ4YA7BJpTsB78nJ01c6oKjk4ZNfxRQxjevZEwQ,156
|
|
1710
1712
|
vellum/types/video_vellum_value_request.py,sha256=-8swaAzFnM-xGSxXpIoxgZSy9lDqDVfjtooHnQcr9D4,164
|
|
1713
|
+
vellum/types/workflow_deployment_display_data.py,sha256=l4T7o25fcFHa-qZ22b3OgjHY68o_N93upeVCwOtVRV4,170
|
|
1711
1714
|
vellum/types/workflow_deployment_event_executions_response.py,sha256=375mHiA7sucHeFSr0LlaLcVgV7F2QicMZaQiOrC5yOg,183
|
|
1712
1715
|
vellum/types/workflow_deployment_history_item.py,sha256=dp5pwzOVO83KPwAbYeO3NXlKKHswGa0MTGX82nIhAIg,170
|
|
1713
1716
|
vellum/types/workflow_deployment_parent_context.py,sha256=kB0eeRXagHqRnuDVA9B8aDlvBZVOmQ702JYXD8evh24,172
|
|
@@ -1715,6 +1718,7 @@ vellum/types/workflow_deployment_read.py,sha256=dDGG27VP0bvC565JzeSOHJ-5Pvs7eCF4
|
|
|
1715
1718
|
vellum/types/workflow_deployment_release.py,sha256=lBnOc5Tw2-jLGWmthzkwdaLGvylcDiarO-maZSote0A,165
|
|
1716
1719
|
vellum/types/workflow_deployment_release_workflow_deployment.py,sha256=8qT32r--NyJppqBizD9QP6jvM5YdcsdpGEtaKMG1RbE,185
|
|
1717
1720
|
vellum/types/workflow_deployment_release_workflow_version.py,sha256=l5SJrY9z3lG5K82V2wY2sY50V40CQWKl95nDjnHu4Dc,182
|
|
1721
|
+
vellum/types/workflow_display_icon.py,sha256=MpD5VTDMjMluWbBECGWbBRjOZdy9NFcbYVjw4hbmGy8,159
|
|
1718
1722
|
vellum/types/workflow_error.py,sha256=7rZcYJG5jYr4IbEvgv57G6Lxutrdg43SD8mUerd58_A,152
|
|
1719
1723
|
vellum/types/workflow_event.py,sha256=PNvXXtxFyPeIhdcZITMbTj0f0ZGOsaBKhOaR0eQ9aOI,152
|
|
1720
1724
|
vellum/types/workflow_event_error.py,sha256=n8yzIuTmfxKyGBKellmMhnCgi1d4fPkr0MvjR3sKOAI,158
|
|
@@ -1812,9 +1816,9 @@ vellum/workflows/__init__.py,sha256=gd5AiZqVTcvqelhysG0jOWYfC6pJKRAVhS7qwf0bHU4,
|
|
|
1812
1816
|
vellum/workflows/constants.py,sha256=ApFp3fm_DOuakvZV-c0ybieyVp-wELgHk-GTzDJoDCg,1429
|
|
1813
1817
|
vellum/workflows/context.py,sha256=ViyIeMDhUv-MhnynLaXPlvlbYxRU45ySvYidCNSbFZU,2458
|
|
1814
1818
|
vellum/workflows/descriptors/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
1815
|
-
vellum/workflows/descriptors/base.py,sha256=
|
|
1819
|
+
vellum/workflows/descriptors/base.py,sha256=GAAk11R8Vg2kysh_MV9pBVrvYRnRiWDvap2znLf48Kw,17053
|
|
1816
1820
|
vellum/workflows/descriptors/exceptions.py,sha256=Rv2uMiaO2a2SADhJzl_VHhV6dqwAhZAzaJPoThP7SZc,653
|
|
1817
|
-
vellum/workflows/descriptors/tests/test_utils.py,sha256=
|
|
1821
|
+
vellum/workflows/descriptors/tests/test_utils.py,sha256=Ymw8YKYeooiXcg64-tQ9_-PPJGzyGDWuG60RIG2tqPQ,7204
|
|
1818
1822
|
vellum/workflows/descriptors/utils.py,sha256=Z7kuhwb_D_kfcwKIAr1xI_AqYH6WFoZBYuslKQWZBFU,4399
|
|
1819
1823
|
vellum/workflows/edges/__init__.py,sha256=auViJbvYiR1gzgGlhMv1fPDMvgXGOwa5g-YZn97fvUo,107
|
|
1820
1824
|
vellum/workflows/edges/edge.py,sha256=N0SnY3gKVuxImPAdCbPMPlHJIXbkQ3fwq_LbJRvVMFc,677
|
|
@@ -1835,7 +1839,7 @@ vellum/workflows/events/stream.py,sha256=xhXJTZirFi0xad5neAQNogrIQ4h47fpnKbVC3vC
|
|
|
1835
1839
|
vellum/workflows/events/tests/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
1836
1840
|
vellum/workflows/events/tests/test_basic_workflow.py,sha256=Pj6orHsXz37jWC5FARi0Sx2Gjf99Owri2Cvr6Chb79k,1765
|
|
1837
1841
|
vellum/workflows/events/tests/test_event.py,sha256=5rzsQdXksVZIapFSdKQlQGsLPJY2esAwsh_JOtKH_rM,21566
|
|
1838
|
-
vellum/workflows/events/types.py,sha256=
|
|
1842
|
+
vellum/workflows/events/types.py,sha256=P5Xq0ObthcHBaJItQ9AFz8Afk_mebmdWE8DEOZROh7U,5383
|
|
1839
1843
|
vellum/workflows/events/workflow.py,sha256=1BdrBdlDpTvsiHcm5KaFA7q6veauQaYlNVUMN8QG0gA,11495
|
|
1840
1844
|
vellum/workflows/exceptions.py,sha256=l_ZklQQVvbsIdbmbn89aEeTL7x6x08m5kCwKXXPnTDc,2277
|
|
1841
1845
|
vellum/workflows/executable.py,sha256=um-gLJMVYfGJwGJfZIPlCRHhHIYm6pn8PUEfeqrNx5k,218
|
|
@@ -1918,7 +1922,7 @@ vellum/workflows/nodes/core/inline_subworkflow_node/node.py,sha256=N6Yh1z_xlZif9
|
|
|
1918
1922
|
vellum/workflows/nodes/core/inline_subworkflow_node/tests/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
1919
1923
|
vellum/workflows/nodes/core/inline_subworkflow_node/tests/test_node.py,sha256=RK2g1h2ib-ruQZ9A2_2L-B9WBdHV44WZj75rkDNL0cE,5766
|
|
1920
1924
|
vellum/workflows/nodes/core/map_node/__init__.py,sha256=MXpZYmGfhsMJHqqlpd64WiJRtbAtAMQz-_3fCU_cLV0,56
|
|
1921
|
-
vellum/workflows/nodes/core/map_node/node.py,sha256=
|
|
1925
|
+
vellum/workflows/nodes/core/map_node/node.py,sha256=kb2-uuf_WuFskIuqw1mxmC7-pE4zKGa8s9m03TSe-kY,10474
|
|
1922
1926
|
vellum/workflows/nodes/core/map_node/tests/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
1923
1927
|
vellum/workflows/nodes/core/map_node/tests/test_node.py,sha256=Xc2xZY5ShSy-bsIQe41JbvIjq3TE95duS-ygaELRVkk,9320
|
|
1924
1928
|
vellum/workflows/nodes/core/retry_node/__init__.py,sha256=lN2bIy5a3Uzhs_FYCrooADyYU6ZGShtvLKFWpelwPvo,60
|
|
@@ -2000,7 +2004,7 @@ vellum/workflows/nodes/displayable/tests/test_search_node_error_handling.py,sha2
|
|
|
2000
2004
|
vellum/workflows/nodes/displayable/tests/test_search_node_wth_text_output.py,sha256=VepO5z1277c1y5N6LLIC31nnWD1aak2m5oPFplfJHHs,6935
|
|
2001
2005
|
vellum/workflows/nodes/displayable/tests/test_text_prompt_deployment_node.py,sha256=Bjv-wZyFgNaVZb9KEMMZd9lFoLzbPEPjEMpANizMZw4,2413
|
|
2002
2006
|
vellum/workflows/nodes/displayable/tool_calling_node/__init__.py,sha256=3n0-ysmFKsr40CVxPthc0rfJgqVJeZuUEsCmYudLVRg,117
|
|
2003
|
-
vellum/workflows/nodes/displayable/tool_calling_node/node.py,sha256=
|
|
2007
|
+
vellum/workflows/nodes/displayable/tool_calling_node/node.py,sha256=p9O9x7-YPeSaPLUFevr-DzRFA5CzNPsDuJWArkD9hE0,9909
|
|
2004
2008
|
vellum/workflows/nodes/displayable/tool_calling_node/state.py,sha256=CcBVb_YtwfSSka4ze678k6-qwmzMSfjfVP8_Y95feSo,302
|
|
2005
2009
|
vellum/workflows/nodes/displayable/tool_calling_node/tests/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
2006
2010
|
vellum/workflows/nodes/displayable/tool_calling_node/tests/test_composio_service.py,sha256=in1fbEz5x1tx3uKv9YXdvOncsHucNL8Ro6Go7lBuuOQ,8962
|
|
@@ -2049,7 +2053,7 @@ vellum/workflows/runner/runner.py,sha256=mMJzRT1iMsJ8YLYcbTsrKH8l2VDxqlC-sD8xY7p
|
|
|
2049
2053
|
vellum/workflows/sandbox.py,sha256=mezSZmilR_fwR8164n8CEfzlMeQ55IqfapHp4ftImvQ,3212
|
|
2050
2054
|
vellum/workflows/state/__init__.py,sha256=yUUdR-_Vl7UiixNDYQZ-GEM_kJI9dnOia75TtuNEsnE,60
|
|
2051
2055
|
vellum/workflows/state/base.py,sha256=8Zr7UIM_eC0O2N6w_1gYqyrjgJ9D9z-VqLFnBETEF7Q,26753
|
|
2052
|
-
vellum/workflows/state/context.py,sha256=
|
|
2056
|
+
vellum/workflows/state/context.py,sha256=L2Xqt8jL1RJCCuSVyKakuZQdgb_YBVKSW6n_3nSAcLE,10974
|
|
2053
2057
|
vellum/workflows/state/delta.py,sha256=7h8wR10lRCm15SykaPj-gSEvvsMjCwYLPsOx3nsvBQg,440
|
|
2054
2058
|
vellum/workflows/state/encoder.py,sha256=elZ70SEUTxhGa3vpxdrfjUotDT6NvhDCPWtP-VSjCH0,2029
|
|
2055
2059
|
vellum/workflows/state/store.py,sha256=uVe-oN73KwGV6M6YLhwZMMUQhzTQomsVfVnb8V91gVo,1147
|
|
@@ -2087,19 +2091,19 @@ vellum/workflows/utils/tests/test_functions.py,sha256=J_WEyVX1yE3lUhoX8etgkbPuwQ
|
|
|
2087
2091
|
vellum/workflows/utils/tests/test_names.py,sha256=DnRRnuORxQXx9ESegCzkxiWcHy2_bBi7lXgbFi3FZK8,757
|
|
2088
2092
|
vellum/workflows/utils/tests/test_uuids.py,sha256=i77ABQ0M3S-aFLzDXHJq_yr5FPkJEWCMBn1HJ3DObrE,437
|
|
2089
2093
|
vellum/workflows/utils/tests/test_vellum_variables.py,sha256=X7b-bbN3bFRx0WG31bowcaOgsXxEPYnh2sgpsqgKIsQ,2096
|
|
2090
|
-
vellum/workflows/utils/uuids.py,sha256=
|
|
2094
|
+
vellum/workflows/utils/uuids.py,sha256=rP3OHTgvyAiZjlMwYicxmX39JpH1FUYK8SWluh22wqg,2525
|
|
2091
2095
|
vellum/workflows/utils/vellum_variables.py,sha256=X3lZn-EoWengRWBWRhTNW7hqbj7LkV-6NSMwCskWEbg,7203
|
|
2092
2096
|
vellum/workflows/utils/zip.py,sha256=HVg_YZLmBOTXKaDV3Xhaf3V6sYnfqqZXQ8CpuafkbPY,1181
|
|
2093
2097
|
vellum/workflows/vellum_client.py,sha256=3iDR7VV_NgLSm1iZQCKDvrmfEaX1bOJiU15QrxyHpv0,1237
|
|
2094
2098
|
vellum/workflows/workflows/__init__.py,sha256=KY45TqvavCCvXIkyCFMEc0dc6jTMOUci93U2DUrlZYc,66
|
|
2095
|
-
vellum/workflows/workflows/base.py,sha256=
|
|
2099
|
+
vellum/workflows/workflows/base.py,sha256=sxtMwfE1kYgdvZkxcFO8eM86Cw3Wp8ONdnOuDjI8PzQ,33573
|
|
2096
2100
|
vellum/workflows/workflows/event_filters.py,sha256=OzaS1y_z1f7H4f4M914HttAfAuTiN0jXUmo1TUQagCY,2504
|
|
2097
2101
|
vellum/workflows/workflows/tests/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
2098
2102
|
vellum/workflows/workflows/tests/test_base_workflow.py,sha256=Boa-_m9ii2Qsa1RvVM-VYniF7zCpzGgEGy-OnPZkrHg,23941
|
|
2099
2103
|
vellum/workflows/workflows/tests/test_context.py,sha256=VJBUcyWVtMa_lE5KxdhgMu0WYNYnUQUDvTF7qm89hJ0,2333
|
|
2100
2104
|
vellum/workflows/workflows/tests/test_event_filters.py,sha256=CPsgtn2F8QMuNMxN5MB6IwTY0y_8JWBCZsio75vxp6c,3638
|
|
2101
|
-
vellum_ai-1.8.
|
|
2102
|
-
vellum_ai-1.8.
|
|
2103
|
-
vellum_ai-1.8.
|
|
2104
|
-
vellum_ai-1.8.
|
|
2105
|
-
vellum_ai-1.8.
|
|
2105
|
+
vellum_ai-1.8.5.dist-info/LICENSE,sha256=hOypcdt481qGNISA784bnAGWAE6tyIf9gc2E78mYC3E,1574
|
|
2106
|
+
vellum_ai-1.8.5.dist-info/METADATA,sha256=R9SUjnVuVt7u0ikizlEiD0BcHXfsTFqYW5V4BjpRO24,5547
|
|
2107
|
+
vellum_ai-1.8.5.dist-info/WHEEL,sha256=sP946D7jFCHeNz5Iq4fL4Lu-PrWrFsgfLXbbkciIZwg,88
|
|
2108
|
+
vellum_ai-1.8.5.dist-info/entry_points.txt,sha256=xVavzAKN4iF_NbmhWOlOkHluka0YLkbN_pFQ9pW3gLI,117
|
|
2109
|
+
vellum_ai-1.8.5.dist-info/RECORD,,
|
vellum_ee/workflows/display/tests/workflow_serialization/test_manual_trigger_serialization.py
CHANGED
|
@@ -24,7 +24,7 @@ def test_manual_trigger_serialization():
|
|
|
24
24
|
assert isinstance(triggers, list)
|
|
25
25
|
|
|
26
26
|
assert len(triggers) == 1
|
|
27
|
-
assert triggers[0] == {"id": "
|
|
27
|
+
assert triggers[0] == {"id": "b3c8ab56-001f-4157-bbc2-4a7fe5ebf8c6", "type": "MANUAL", "attributes": []}
|
|
28
28
|
|
|
29
29
|
|
|
30
30
|
def test_manual_trigger_multiple_entrypoints():
|
|
@@ -54,7 +54,7 @@ def test_manual_trigger_multiple_entrypoints():
|
|
|
54
54
|
assert isinstance(triggers, list)
|
|
55
55
|
|
|
56
56
|
assert len(triggers) == 1
|
|
57
|
-
assert triggers[0] == {"id": "
|
|
57
|
+
assert triggers[0] == {"id": "b3c8ab56-001f-4157-bbc2-4a7fe5ebf8c6", "type": "MANUAL", "attributes": []}
|
|
58
58
|
|
|
59
59
|
|
|
60
60
|
def test_unknown_trigger_type():
|
|
@@ -107,4 +107,4 @@ def test_manual_trigger_entrypoint_id_consistency():
|
|
|
107
107
|
"to maintain trigger-entrypoint linkage"
|
|
108
108
|
)
|
|
109
109
|
# Also verify the expected UUID
|
|
110
|
-
assert trigger_id == "
|
|
110
|
+
assert trigger_id == "b3c8ab56-001f-4157-bbc2-4a7fe5ebf8c6"
|
|
@@ -57,7 +57,7 @@ from vellum.workflows.references.workflow_input import WorkflowInputReference
|
|
|
57
57
|
from vellum.workflows.types.core import JsonArray, JsonObject
|
|
58
58
|
from vellum.workflows.types.generics import is_workflow_class
|
|
59
59
|
from vellum.workflows.utils.functions import compile_function_definition
|
|
60
|
-
from vellum.workflows.utils.uuids import uuid4_from_hash
|
|
60
|
+
from vellum.workflows.utils.uuids import get_trigger_id, uuid4_from_hash
|
|
61
61
|
from vellum_ee.workflows.display.utils.exceptions import InvalidInputReferenceError, UnsupportedSerializationException
|
|
62
62
|
from vellum_ee.workflows.server.virtual_file_loader import VirtualFileLoader
|
|
63
63
|
|
|
@@ -353,9 +353,9 @@ def serialize_value(executable_id: UUID, display_context: "WorkflowDisplayContex
|
|
|
353
353
|
}
|
|
354
354
|
|
|
355
355
|
if isinstance(value, TriggerAttributeReference):
|
|
356
|
-
# Generate trigger ID using
|
|
356
|
+
# Generate trigger ID using get_trigger_id to ensure consistency with trigger definitions
|
|
357
357
|
trigger_class = value.trigger_class
|
|
358
|
-
trigger_id =
|
|
358
|
+
trigger_id = get_trigger_id(trigger_class)
|
|
359
359
|
|
|
360
360
|
return {
|
|
361
361
|
"type": "TRIGGER_ATTRIBUTE",
|
|
File without changes
|
|
File without changes
|
|
File without changes
|