vellum-workflow-server 1.3.0__tar.gz → 1.3.0.post2__tar.gz

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-workflow-server might be problematic. Click here for more details.

Files changed (33) hide show
  1. {vellum_workflow_server-1.3.0 → vellum_workflow_server-1.3.0.post2}/PKG-INFO +1 -1
  2. {vellum_workflow_server-1.3.0 → vellum_workflow_server-1.3.0.post2}/pyproject.toml +1 -1
  3. {vellum_workflow_server-1.3.0 → vellum_workflow_server-1.3.0.post2}/src/workflow_server/core/executor.py +14 -17
  4. {vellum_workflow_server-1.3.0 → vellum_workflow_server-1.3.0.post2}/README.md +0 -0
  5. {vellum_workflow_server-1.3.0 → vellum_workflow_server-1.3.0.post2}/src/workflow_server/__init__.py +0 -0
  6. {vellum_workflow_server-1.3.0 → vellum_workflow_server-1.3.0.post2}/src/workflow_server/api/__init__.py +0 -0
  7. {vellum_workflow_server-1.3.0 → vellum_workflow_server-1.3.0.post2}/src/workflow_server/api/auth_middleware.py +0 -0
  8. {vellum_workflow_server-1.3.0 → vellum_workflow_server-1.3.0.post2}/src/workflow_server/api/healthz_view.py +0 -0
  9. {vellum_workflow_server-1.3.0 → vellum_workflow_server-1.3.0.post2}/src/workflow_server/api/tests/__init__.py +0 -0
  10. {vellum_workflow_server-1.3.0 → vellum_workflow_server-1.3.0.post2}/src/workflow_server/api/tests/test_input_display_mapping.py +0 -0
  11. {vellum_workflow_server-1.3.0 → vellum_workflow_server-1.3.0.post2}/src/workflow_server/api/tests/test_workflow_view.py +0 -0
  12. {vellum_workflow_server-1.3.0 → vellum_workflow_server-1.3.0.post2}/src/workflow_server/api/tests/test_workflow_view_stream_workflow_route.py +0 -0
  13. {vellum_workflow_server-1.3.0 → vellum_workflow_server-1.3.0.post2}/src/workflow_server/api/workflow_view.py +0 -0
  14. {vellum_workflow_server-1.3.0 → vellum_workflow_server-1.3.0.post2}/src/workflow_server/code_exec_runner.py +0 -0
  15. {vellum_workflow_server-1.3.0 → vellum_workflow_server-1.3.0.post2}/src/workflow_server/config.py +0 -0
  16. {vellum_workflow_server-1.3.0 → vellum_workflow_server-1.3.0.post2}/src/workflow_server/core/__init__.py +0 -0
  17. {vellum_workflow_server-1.3.0 → vellum_workflow_server-1.3.0.post2}/src/workflow_server/core/cancel_workflow.py +0 -0
  18. {vellum_workflow_server-1.3.0 → vellum_workflow_server-1.3.0.post2}/src/workflow_server/core/events.py +0 -0
  19. {vellum_workflow_server-1.3.0 → vellum_workflow_server-1.3.0.post2}/src/workflow_server/core/utils.py +0 -0
  20. {vellum_workflow_server-1.3.0 → vellum_workflow_server-1.3.0.post2}/src/workflow_server/core/workflow_executor_context.py +0 -0
  21. {vellum_workflow_server-1.3.0 → vellum_workflow_server-1.3.0.post2}/src/workflow_server/server.py +0 -0
  22. {vellum_workflow_server-1.3.0 → vellum_workflow_server-1.3.0.post2}/src/workflow_server/start.py +0 -0
  23. {vellum_workflow_server-1.3.0 → vellum_workflow_server-1.3.0.post2}/src/workflow_server/utils/__init__.py +0 -0
  24. {vellum_workflow_server-1.3.0 → vellum_workflow_server-1.3.0.post2}/src/workflow_server/utils/exit_handler.py +0 -0
  25. {vellum_workflow_server-1.3.0 → vellum_workflow_server-1.3.0.post2}/src/workflow_server/utils/log_proxy.py +0 -0
  26. {vellum_workflow_server-1.3.0 → vellum_workflow_server-1.3.0.post2}/src/workflow_server/utils/oom_killer.py +0 -0
  27. {vellum_workflow_server-1.3.0 → vellum_workflow_server-1.3.0.post2}/src/workflow_server/utils/sentry.py +0 -0
  28. {vellum_workflow_server-1.3.0 → vellum_workflow_server-1.3.0.post2}/src/workflow_server/utils/system_utils.py +0 -0
  29. {vellum_workflow_server-1.3.0 → vellum_workflow_server-1.3.0.post2}/src/workflow_server/utils/tests/__init__.py +0 -0
  30. {vellum_workflow_server-1.3.0 → vellum_workflow_server-1.3.0.post2}/src/workflow_server/utils/tests/test_sentry_integration.py +0 -0
  31. {vellum_workflow_server-1.3.0 → vellum_workflow_server-1.3.0.post2}/src/workflow_server/utils/tests/test_system_utils.py +0 -0
  32. {vellum_workflow_server-1.3.0 → vellum_workflow_server-1.3.0.post2}/src/workflow_server/utils/tests/test_utils.py +0 -0
  33. {vellum_workflow_server-1.3.0 → vellum_workflow_server-1.3.0.post2}/src/workflow_server/utils/utils.py +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: vellum-workflow-server
3
- Version: 1.3.0
3
+ Version: 1.3.0.post2
4
4
  Summary:
5
5
  License: AGPL
6
6
  Requires-Python: >=3.9.0,<4
@@ -3,7 +3,7 @@ name = "vellum-workflow-server"
3
3
 
4
4
  [tool.poetry]
5
5
  name = "vellum-workflow-server"
6
- version = "1.3.0"
6
+ version = "1.3.0.post2"
7
7
  description = ""
8
8
  readme = "README.md"
9
9
  authors = []
@@ -12,20 +12,25 @@ from threading import Event as ThreadingEvent
12
12
  import time
13
13
  from traceback import format_exc
14
14
  from uuid import UUID, uuid4
15
- from typing import TYPE_CHECKING, Any, Callable, Generator, Iterator, Optional, Tuple, Type
15
+ from typing import Any, Callable, Generator, Iterator, Optional, Tuple, Type
16
16
 
17
17
  from pebble import concurrent
18
+ from vellum_ee.workflows.display.utils.events import event_enricher
18
19
  from vellum_ee.workflows.display.workflows import BaseWorkflowDisplay
19
20
  from vellum_ee.workflows.server.virtual_file_loader import VirtualFileFinder
20
21
 
21
22
  from vellum import Vellum, VellumEnvironment
22
23
  from vellum.workflows import BaseWorkflow
24
+ from vellum.workflows.emitters.base import BaseWorkflowEmitter
25
+ from vellum.workflows.emitters.vellum_emitter import VellumEmitter
23
26
  from vellum.workflows.events.types import BaseEvent
24
27
  from vellum.workflows.events.workflow import WorkflowEventDisplayContext
25
28
  from vellum.workflows.exceptions import WorkflowInitializationException
26
29
  from vellum.workflows.inputs import BaseInputs
27
30
  from vellum.workflows.nodes import BaseNode
28
31
  from vellum.workflows.nodes.mocks import MockNodeExecution
32
+ from vellum.workflows.resolvers.base import BaseWorkflowResolver
33
+ from vellum.workflows.resolvers.resolver import VellumResolver
29
34
  from vellum.workflows.state.base import BaseState, StateMeta
30
35
  from vellum.workflows.state.context import WorkflowContext
31
36
  from vellum.workflows.state.store import EmptyStore
@@ -47,10 +52,6 @@ from workflow_server.core.workflow_executor_context import (
47
52
  )
48
53
  from workflow_server.utils.log_proxy import redirect_log
49
54
 
50
- if TYPE_CHECKING:
51
- from vellum.workflows.emitters.base import BaseWorkflowEmitter
52
-
53
-
54
55
  logger = logging.getLogger(__name__)
55
56
 
56
57
 
@@ -344,25 +345,21 @@ def _create_workflow(executor_context: WorkflowExecutorContext, namespace: str)
344
345
 
345
346
  # Determine whether to enable the Vellum Emitter for event publishing
346
347
  use_vellum_emitter = bool((executor_context.feature_flags or {}).get("vembda-event-emitting-enabled"))
347
-
348
348
  emitters: list["BaseWorkflowEmitter"] = []
349
349
  if use_vellum_emitter:
350
- from vellum.workflows.emitters.vellum_emitter import VellumEmitter
350
+ emitters = [VellumEmitter()]
351
351
 
352
- if VellumEmitter is not None:
353
- try:
354
- emitters = [VellumEmitter()]
355
- except Exception:
356
- emitters = []
357
- else:
358
- # Emitter is not available at import time; continue without it
359
- logger.warning("VellumEmitter not available; continuing without it")
352
+ use_vellum_resolver = executor_context.previous_execution_id is not None
353
+ resolvers: list["BaseWorkflowResolver"] = []
354
+ if use_vellum_resolver:
355
+ resolvers = [VellumResolver()]
360
356
 
361
357
  # Explicit constructor call to satisfy typing
362
358
  workflow = Workflow(
363
359
  context=workflow_context,
364
360
  store=EmptyStore(),
365
- emitters=emitters or None,
361
+ emitters=emitters,
362
+ resolvers=resolvers,
366
363
  )
367
364
 
368
365
  return workflow
@@ -410,7 +407,7 @@ def _get_file_namespace(executor_context: BaseExecutorContext) -> str:
410
407
 
411
408
  def _dump_event(event: BaseEvent, executor_context: BaseExecutorContext) -> dict:
412
409
  module_base = executor_context.module.split(".")
413
- dump = event.model_dump(mode="json")
410
+ dump = event.model_dump(mode="json", context={"event_enricher": event_enricher})
414
411
  if dump["name"] in {
415
412
  "workflow.execution.initiated",
416
413
  "workflow.execution.fulfilled",