diff --git a/skyvern/forge/sdk/routes/agent_protocol.py b/skyvern/forge/sdk/routes/agent_protocol.py index 6e211ffb..2639d362 100644 --- a/skyvern/forge/sdk/routes/agent_protocol.py +++ b/skyvern/forge/sdk/routes/agent_protocol.py @@ -72,6 +72,7 @@ from skyvern.forge.sdk.workflow.models.workflow import ( WorkflowStatus, ) from skyvern.forge.sdk.workflow.models.yaml import WorkflowCreateYAMLRequest +from skyvern.schemas.artifacts import EntityType, entity_type_to_param from skyvern.schemas.runs import ( CUA_ENGINES, RunEngine, @@ -89,23 +90,6 @@ from skyvern.webeye.actions.actions import Action LOG = structlog.get_logger() -class EntityType(str, Enum): - STEP = "step" - TASK = "task" - WORKFLOW_RUN = "workflow_run" - WORKFLOW_RUN_BLOCK = "workflow_run_block" - THOUGHT = "thought" - - -entity_type_to_param = { - EntityType.STEP: "step_id", - EntityType.TASK: "task_id", - EntityType.WORKFLOW_RUN: "workflow_run_id", - EntityType.WORKFLOW_RUN_BLOCK: "workflow_run_block_id", - EntityType.THOUGHT: "thought_id", -} - - class AISuggestionType(str, Enum): DATA_SCHEMA = "data_schema" diff --git a/skyvern/schemas/artifacts.py b/skyvern/schemas/artifacts.py new file mode 100644 index 00000000..ff5b7cf0 --- /dev/null +++ b/skyvern/schemas/artifacts.py @@ -0,0 +1,18 @@ +from enum import StrEnum + + +class EntityType(StrEnum): + STEP = "step" + TASK = "task" + WORKFLOW_RUN = "workflow_run" + WORKFLOW_RUN_BLOCK = "workflow_run_block" + THOUGHT = "thought" + + +entity_type_to_param = { + EntityType.STEP: "step_id", + EntityType.TASK: "task_id", + EntityType.WORKFLOW_RUN: "workflow_run_id", + EntityType.WORKFLOW_RUN_BLOCK: "workflow_run_block_id", + EntityType.THOUGHT: "thought_id", +} diff --git a/skyvern/services/task_v2_service.py b/skyvern/services/task_v2_service.py index bc77722b..a76a7022 100644 --- a/skyvern/services/task_v2_service.py +++ b/skyvern/services/task_v2_service.py @@ -60,7 +60,6 @@ from skyvern.forge.sdk.workflow.models.yaml import ( WorkflowDefinitionYAML, ) from skyvern.schemas.runs import ProxyLocation, RunEngine, RunType, TaskRunRequest, TaskRunResponse -from skyvern.services import workflow_service from skyvern.utils.prompt_engine import load_prompt_with_elements from skyvern.webeye.browser_factory import BrowserState from skyvern.webeye.scraper.scraper import ScrapedPage, scrape_website @@ -1582,6 +1581,8 @@ async def _summarize_task_v2( async def build_task_v2_run_response(task_v2: TaskV2) -> TaskRunResponse: """Build TaskRunResponse object for webhook backward compatibility.""" + from skyvern.services import workflow_service + workflow_run_resp = None if task_v2.workflow_run_id: try: