diff --git a/skyvern/forge/sdk/workflow/service.py b/skyvern/forge/sdk/workflow/service.py index 5c65ba21..54813de5 100644 --- a/skyvern/forge/sdk/workflow/service.py +++ b/skyvern/forge/sdk/workflow/service.py @@ -1592,6 +1592,7 @@ class WorkflowService: totp_url=workflow_run.totp_verification_url or None, totp_identifier=workflow_run.totp_identifier, ), + errors=workflow_run_status_response.errors, ) payload_dict = json.loads(workflow_run_status_response.model_dump_json()) workflow_run_response_dict = json.loads(workflow_run_response.model_dump_json()) diff --git a/skyvern/schemas/runs.py b/skyvern/schemas/runs.py index ddba249a..0d21870a 100644 --- a/skyvern/schemas/runs.py +++ b/skyvern/schemas/runs.py @@ -427,6 +427,10 @@ class BaseRunResponse(BaseModel): default=None, description="The script run result", ) + errors: list[dict[str, Any]] | None = Field( + default=None, + description="The errors for the run", + ) class TaskRunResponse(BaseRunResponse): diff --git a/skyvern/services/run_service.py b/skyvern/services/run_service.py index dfa4e928..2e13e2b6 100644 --- a/skyvern/services/run_service.py +++ b/skyvern/services/run_service.py @@ -69,6 +69,7 @@ async def get_run_response(run_id: str, organization_id: str | None = None) -> R error_code_mapping=task_v1_response.request.error_code_mapping, max_screenshot_scrolls=task_v1_response.request.max_screenshot_scrolls, ), + errors=task_v1_response.errors, ) elif run.task_run_type == RunType.task_v2: task_v2 = await app.DATABASE.get_task_v2(run.run_id, organization_id=organization_id) diff --git a/skyvern/services/task_v2_service.py b/skyvern/services/task_v2_service.py index 881adb7b..2bfb6739 100644 --- a/skyvern/services/task_v2_service.py +++ b/skyvern/services/task_v2_service.py @@ -1711,6 +1711,7 @@ async def build_task_v2_run_response(task_v2: TaskV2) -> TaskRunResponse: data_extraction_schema=task_v2.extracted_information_schema, error_code_mapping=task_v2.error_code_mapping, ), + errors=workflow_run_resp.errors if workflow_run_resp else None, ) diff --git a/skyvern/services/workflow_service.py b/skyvern/services/workflow_service.py index a284fc78..a5cefb84 100644 --- a/skyvern/services/workflow_service.py +++ b/skyvern/services/workflow_service.py @@ -138,4 +138,5 @@ async def get_workflow_run_response( browser_address=workflow_run.browser_address, # TODO: add browser session id ), + errors=workflow_run_resp.errors, )