vellum-workflow-server 1.11.0.post1__py3-none-any.whl → 1.11.15__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_workflow_server-1.11.0.post1.dist-info → vellum_workflow_server-1.11.15.dist-info}/METADATA +2 -2
- {vellum_workflow_server-1.11.0.post1.dist-info → vellum_workflow_server-1.11.15.dist-info}/RECORD +8 -8
- workflow_server/api/tests/test_workflow_view.py +9 -1
- workflow_server/api/tests/test_workflow_view_stream_workflow_route.py +4 -1
- workflow_server/api/workflow_view.py +8 -5
- workflow_server/core/executor.py +2 -0
- {vellum_workflow_server-1.11.0.post1.dist-info → vellum_workflow_server-1.11.15.dist-info}/WHEEL +0 -0
- {vellum_workflow_server-1.11.0.post1.dist-info → vellum_workflow_server-1.11.15.dist-info}/entry_points.txt +0 -0
{vellum_workflow_server-1.11.0.post1.dist-info → vellum_workflow_server-1.11.15.dist-info}/METADATA
RENAMED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.1
|
|
2
2
|
Name: vellum-workflow-server
|
|
3
|
-
Version: 1.11.
|
|
3
|
+
Version: 1.11.15
|
|
4
4
|
Summary:
|
|
5
5
|
License: AGPL
|
|
6
6
|
Requires-Python: >=3.9.0,<4
|
|
@@ -30,7 +30,7 @@ Requires-Dist: pyjwt (==2.10.0)
|
|
|
30
30
|
Requires-Dist: python-dotenv (==1.2.1)
|
|
31
31
|
Requires-Dist: retrying (==1.3.4)
|
|
32
32
|
Requires-Dist: sentry-sdk[flask] (==2.20.0)
|
|
33
|
-
Requires-Dist: vellum-ai (==1.11.
|
|
33
|
+
Requires-Dist: vellum-ai (==1.11.15)
|
|
34
34
|
Description-Content-Type: text/markdown
|
|
35
35
|
|
|
36
36
|
# Vellum Workflow Runner Server
|
{vellum_workflow_server-1.11.0.post1.dist-info → vellum_workflow_server-1.11.15.dist-info}/RECORD
RENAMED
|
@@ -5,16 +5,16 @@ workflow_server/api/healthz_view.py,sha256=itiRvBDBXncrw8Kbbc73UZLwqMAhgHOR3uSre
|
|
|
5
5
|
workflow_server/api/status_view.py,sha256=Jah8dBAVL4uOcRfsjKAOyfVONFyk9HQjXeRfjcIqhmA,514
|
|
6
6
|
workflow_server/api/tests/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
7
7
|
workflow_server/api/tests/test_input_display_mapping.py,sha256=drBZqMudFyB5wgiUOcMgRXz7E7ge-Qgxbstw4E4f0zE,2211
|
|
8
|
-
workflow_server/api/tests/test_workflow_view.py,sha256=
|
|
8
|
+
workflow_server/api/tests/test_workflow_view.py,sha256=I2sd11ptKDqbylzB9rKqkMXeZoh8ttad3zIhNus86vk,32491
|
|
9
9
|
workflow_server/api/tests/test_workflow_view_async_exec.py,sha256=eP_H2xI9SRfJdoJ6HPeynQecnxR50I_8aDCooF-YzIw,11952
|
|
10
|
-
workflow_server/api/tests/test_workflow_view_stream_workflow_route.py,sha256=
|
|
11
|
-
workflow_server/api/workflow_view.py,sha256=
|
|
10
|
+
workflow_server/api/tests/test_workflow_view_stream_workflow_route.py,sha256=QilhiYv3_iaF-xvbmqUqqQqqVIZC4KgBe1u8Ku1q52s,42511
|
|
11
|
+
workflow_server/api/workflow_view.py,sha256=60RWK2VFmmeLpHCGwf3DdBBx2_GP5KIRxE6rAEwG8Jw,24774
|
|
12
12
|
workflow_server/code_exec_runner.py,sha256=vJlCQ8FkcG8RfCZ34Ea2Xt6J7dNkU5EqA-KxRkbVOeo,2219
|
|
13
13
|
workflow_server/config.py,sha256=I4hfTsjIbHxoSKylPCjKnrysPV0jO5nfRKwpKvEcfAE,2193
|
|
14
14
|
workflow_server/core/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
15
15
|
workflow_server/core/cancel_workflow.py,sha256=QcEeYUIrxq4pub-z9BlGi5fLI3gVRml-56rMCW7j5Hc,2212
|
|
16
16
|
workflow_server/core/events.py,sha256=24MA66DVQuaLJJcZrS8IL1Zq4Ohi9CoouKZ5VgoH3Cs,1402
|
|
17
|
-
workflow_server/core/executor.py,sha256=
|
|
17
|
+
workflow_server/core/executor.py,sha256=7mJDuP8uedCAygNorp2Vscy6w7xHHqNZ_jxJXkJZzeY,17112
|
|
18
18
|
workflow_server/core/utils.py,sha256=mecVPqQkthrC4mpop3r8J3IWnBmKbDgqfCrSagyzVEg,2021
|
|
19
19
|
workflow_server/core/workflow_executor_context.py,sha256=8faOdpU4cBeIbmOvg9VzD3eS5i_PKcH7tyNGzx_rehg,3899
|
|
20
20
|
workflow_server/logging_config.py,sha256=Hvx1t8uhqMMinl-5qcef7ufUvzs6x14VRnCb7YZxEAg,1206
|
|
@@ -31,7 +31,7 @@ workflow_server/utils/tests/test_sentry_integration.py,sha256=14PfuW8AaQNNtqLmBs
|
|
|
31
31
|
workflow_server/utils/tests/test_system_utils.py,sha256=_4GwXvVvU5BrATxUEWwQIPg0bzQXMWBtiBmjP8MTxJM,4314
|
|
32
32
|
workflow_server/utils/tests/test_utils.py,sha256=0Nq6du8o-iBtTrip9_wgHES53JSiJbVdSXaBnPobw3s,6930
|
|
33
33
|
workflow_server/utils/utils.py,sha256=m7iMJtor5SQLWu7jlJw-X5Q3nmbq69BCxTMv6qnFYrA,4835
|
|
34
|
-
vellum_workflow_server-1.11.
|
|
35
|
-
vellum_workflow_server-1.11.
|
|
36
|
-
vellum_workflow_server-1.11.
|
|
37
|
-
vellum_workflow_server-1.11.
|
|
34
|
+
vellum_workflow_server-1.11.15.dist-info/METADATA,sha256=oIldsrXZvwKAboSlLYy1LRYuEir14fTww2xS7ii3I7I,2304
|
|
35
|
+
vellum_workflow_server-1.11.15.dist-info/WHEEL,sha256=sP946D7jFCHeNz5Iq4fL4Lu-PrWrFsgfLXbbkciIZwg,88
|
|
36
|
+
vellum_workflow_server-1.11.15.dist-info/entry_points.txt,sha256=uB_0yPkr7YV6RhEXzvFReUM8P4OQBlVXD6TN6eb9-oc,277
|
|
37
|
+
vellum_workflow_server-1.11.15.dist-info/RECORD,,
|
|
@@ -389,7 +389,15 @@ class MyAdditionNode(BaseNode):
|
|
|
389
389
|
},
|
|
390
390
|
"id": "2464b610-fb6d-495b-b17c-933ee147f19f",
|
|
391
391
|
"label": "My Addition Node",
|
|
392
|
-
"outputs": [
|
|
392
|
+
"outputs": [
|
|
393
|
+
{
|
|
394
|
+
"id": "f39d85c9-e7bf-45e1-bb67-f16225db0118",
|
|
395
|
+
"name": "result",
|
|
396
|
+
"type": "NUMBER",
|
|
397
|
+
"value": None,
|
|
398
|
+
"schema": {"type": "integer"},
|
|
399
|
+
}
|
|
400
|
+
],
|
|
393
401
|
"ports": [{"id": "bc489295-cd8a-4aa2-88bb-34446374100d", "name": "default", "type": "DEFAULT"}],
|
|
394
402
|
"trigger": {"id": "ff580cad-73d6-44fe-8f2c-4b8dc990ee70", "merge_behavior": "AWAIT_ATTRIBUTES"},
|
|
395
403
|
"type": "GENERIC",
|
|
@@ -549,7 +549,10 @@ class Inputs(BaseInputs):
|
|
|
549
549
|
# AND the third event should be workflow execution rejected
|
|
550
550
|
assert events[2]["name"] == "workflow.execution.rejected"
|
|
551
551
|
assert events[1]["span_id"] == events[2]["span_id"]
|
|
552
|
-
|
|
552
|
+
actual_error_message = events[2]["body"]["error"]["message"]
|
|
553
|
+
assert "Required input variables" in actual_error_message
|
|
554
|
+
assert "foo" in actual_error_message
|
|
555
|
+
assert "should have defined value" in actual_error_message
|
|
553
556
|
|
|
554
557
|
# AND the fourth event should be vembda execution fulfilled
|
|
555
558
|
assert events[3]["name"] == "vembda.execution.fulfilled"
|
|
@@ -531,11 +531,18 @@ def serialize_route() -> Response:
|
|
|
531
531
|
is_new_server = data.get("is_new_server", False)
|
|
532
532
|
module = data.get("module")
|
|
533
533
|
|
|
534
|
+
headers = {
|
|
535
|
+
"X-Vellum-Is-New-Server": str(is_new_server).lower(),
|
|
536
|
+
}
|
|
537
|
+
|
|
534
538
|
if not files:
|
|
539
|
+
error_message = "No files received"
|
|
540
|
+
logger.warning(error_message)
|
|
535
541
|
return Response(
|
|
536
|
-
json.dumps({"detail":
|
|
542
|
+
json.dumps({"detail": error_message}),
|
|
537
543
|
status=400,
|
|
538
544
|
content_type="application/json",
|
|
545
|
+
headers=headers,
|
|
539
546
|
)
|
|
540
547
|
|
|
541
548
|
client = create_vellum_client(api_key=workspace_api_key)
|
|
@@ -544,10 +551,6 @@ def serialize_route() -> Response:
|
|
|
544
551
|
namespace = get_random_namespace()
|
|
545
552
|
virtual_finder = VirtualFileFinder(files, namespace, source_module=module)
|
|
546
553
|
|
|
547
|
-
headers = {
|
|
548
|
-
"X-Vellum-Is-New-Server": str(is_new_server).lower(),
|
|
549
|
-
}
|
|
550
|
-
|
|
551
554
|
try:
|
|
552
555
|
sys.meta_path.append(virtual_finder)
|
|
553
556
|
result = BaseWorkflowDisplay.serialize_module(namespace, client=client, dry_run=True)
|
workflow_server/core/executor.py
CHANGED
|
@@ -14,6 +14,7 @@ from typing import Any, Callable, Generator, Iterator, Optional, Tuple
|
|
|
14
14
|
|
|
15
15
|
import orjson
|
|
16
16
|
from vellum_ee.workflows.display.utils.events import event_enricher
|
|
17
|
+
from vellum_ee.workflows.display.utils.expressions import base_descriptor_validator
|
|
17
18
|
from vellum_ee.workflows.server.virtual_file_loader import VirtualFileFinder
|
|
18
19
|
|
|
19
20
|
from vellum.workflows import BaseWorkflow
|
|
@@ -177,6 +178,7 @@ def stream_workflow(
|
|
|
177
178
|
node_output_mocks = MockNodeExecution.validate_all(
|
|
178
179
|
executor_context.node_output_mocks,
|
|
179
180
|
workflow.__class__,
|
|
181
|
+
descriptor_validator=base_descriptor_validator,
|
|
180
182
|
)
|
|
181
183
|
|
|
182
184
|
cancel_signal = cancel_signal or ThreadingEvent()
|
{vellum_workflow_server-1.11.0.post1.dist-info → vellum_workflow_server-1.11.15.dist-info}/WHEEL
RENAMED
|
File without changes
|
|
File without changes
|