From ae95b8dd35552cd1ebbad812f5b9377394d51ede Mon Sep 17 00:00:00 2001 From: Stanislav Novosad Date: Tue, 2 Dec 2025 15:43:00 -0700 Subject: [PATCH] Complete/Fail SDK action tasks (#4172) --- skyvern/forge/sdk/routes/sdk.py | 20 ++++++++++++++++++++ 1 file changed, 20 insertions(+) diff --git a/skyvern/forge/sdk/routes/sdk.py b/skyvern/forge/sdk/routes/sdk.py index 91e18c9a..8e6f54db 100644 --- a/skyvern/forge/sdk/routes/sdk.py +++ b/skyvern/forge/sdk/routes/sdk.py @@ -15,6 +15,7 @@ from skyvern.forge.sdk.schemas.sdk_actions import ( RunSdkActionRequest, RunSdkActionResponse, ) +from skyvern.forge.sdk.schemas.tasks import TaskStatus from skyvern.forge.sdk.services import org_auth_service from skyvern.forge.sdk.workflow.models.workflow import ( WorkflowRequestBody, @@ -204,6 +205,25 @@ async def run_sdk_action( prompt=action.prompt, ) result = xpath_result + await app.DATABASE.update_task( + task_id=task.task_id, + organization_id=organization_id, + status=TaskStatus.completed, + ) + except Exception as e: + await app.DATABASE.update_task( + task_id=task.task_id, + organization_id=organization_id, + status=TaskStatus.failed, + failure_reason=str(e), + ) + LOG.error( + "SDK action failed", + action_type=action.type, + error=str(e), + exc_info=True, + ) + raise finally: skyvern_context.reset()