the error raised from the base validate_step_execution shouldn't be handled to fail the task (#422)
This commit is contained in:
@@ -18,6 +18,7 @@ from skyvern.exceptions import (
|
||||
InvalidWorkflowTaskURLState,
|
||||
MissingBrowserStatePage,
|
||||
StepTerminationError,
|
||||
StepUnableToExecuteError,
|
||||
TaskNotFound,
|
||||
)
|
||||
from skyvern.forge import app
|
||||
@@ -328,9 +329,16 @@ class ForgeAgent:
|
||||
|
||||
return step, detailed_output, next_step
|
||||
# TODO (kerem): Let's add other exceptions that we know about here as custom exceptions as well
|
||||
except StepUnableToExecuteError:
|
||||
LOG.error(
|
||||
"Step cannot be executed. Task execution stopped",
|
||||
task_id=task.task_id,
|
||||
step_id=step.step_id,
|
||||
)
|
||||
raise
|
||||
except StepTerminationError as e:
|
||||
LOG.error(
|
||||
"Step cannot be executed. Task terminated",
|
||||
"Step cannot be executed. Task failed.",
|
||||
task_id=task.task_id,
|
||||
step_id=step.step_id,
|
||||
)
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
from playwright.async_api import Page
|
||||
|
||||
from skyvern.exceptions import StepTerminationError
|
||||
from skyvern.exceptions import StepUnableToExecuteError
|
||||
from skyvern.forge import app
|
||||
from skyvern.forge.async_operations import AsyncOperation
|
||||
from skyvern.forge.sdk.models import Organization, Step, StepStatus
|
||||
@@ -34,7 +34,7 @@ class AgentFunction:
|
||||
|
||||
can_execute = has_valid_task_status and has_valid_step_status and has_no_running_steps
|
||||
if not can_execute:
|
||||
raise StepTerminationError(step_id=step.step_id, reason="Cannot execute step. Reasons: {reasons}")
|
||||
raise StepUnableToExecuteError(step_id=step.step_id, reason=f"Cannot execute step. Reasons: {reasons}")
|
||||
|
||||
def generate_async_operations(
|
||||
self,
|
||||
|
||||
Reference in New Issue
Block a user