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.
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: vellum-workflow-server
3
- Version: 1.11.0.post1
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.0)
33
+ Requires-Dist: vellum-ai (==1.11.15)
34
34
  Description-Content-Type: text/markdown
35
35
 
36
36
  # Vellum Workflow Runner Server
@@ -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=B6B8mCirt3FvpPKRP_AyzPJ199k_gwLzAcQuWRkzEfA,32343
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=16ZxP_nuAIP1Cg4-4z6EQttn07SRY1GkVq2m53z6XaE,42389
11
- workflow_server/api/workflow_view.py,sha256=gYT1lWSYadiG5OLQpg09mJT4xz_foSmsIMvtO7GNbAo,24669
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=Drw6TcegjKFIoowDzeQzCf2QwblSa-stm70YBfFItRU,16968
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.0.post1.dist-info/METADATA,sha256=sU_57FzsmfgTgFLvjdhj_4qSa5hFOlBPrnTtRndDQnc,2308
35
- vellum_workflow_server-1.11.0.post1.dist-info/WHEEL,sha256=sP946D7jFCHeNz5Iq4fL4Lu-PrWrFsgfLXbbkciIZwg,88
36
- vellum_workflow_server-1.11.0.post1.dist-info/entry_points.txt,sha256=uB_0yPkr7YV6RhEXzvFReUM8P4OQBlVXD6TN6eb9-oc,277
37
- vellum_workflow_server-1.11.0.post1.dist-info/RECORD,,
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": [{"id": "f39d85c9-e7bf-45e1-bb67-f16225db0118", "name": "result", "type": "NUMBER", "value": None}],
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
- assert "Required input variables foo should have defined value" in events[2]["body"]["error"]["message"]
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": "No files received"}),
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)
@@ -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()