From f22b8a04aa9cec0f6228b10578d05fa1dbb804da Mon Sep 17 00:00:00 2001 From: Kerem Yilmaz Date: Fri, 4 Oct 2024 13:15:49 -0700 Subject: [PATCH] Disable codeblock (#910) --- skyvern/exceptions.py | 5 +++++ skyvern/forge/sdk/workflow/models/block.py | 2 ++ 2 files changed, 7 insertions(+) diff --git a/skyvern/exceptions.py b/skyvern/exceptions.py index e7e4bd4c..7da9b3f1 100644 --- a/skyvern/exceptions.py +++ b/skyvern/exceptions.py @@ -13,6 +13,11 @@ class SkyvernHTTPException(SkyvernException): super().__init__(message) +class DisabledBlockExecutionError(SkyvernHTTPException): + def __init__(self, message: str | None = None): + super().__init__(message, status_code=status.HTTP_400_BAD_REQUEST) + + class InvalidOpenAIResponseFormat(SkyvernException): def __init__(self, message: str | None = None): super().__init__(f"Invalid response format: {message}") diff --git a/skyvern/forge/sdk/workflow/models/block.py b/skyvern/forge/sdk/workflow/models/block.py index d4a77dc4..038ac805 100644 --- a/skyvern/forge/sdk/workflow/models/block.py +++ b/skyvern/forge/sdk/workflow/models/block.py @@ -22,6 +22,7 @@ from pydantic import BaseModel, Field from skyvern.config import settings from skyvern.exceptions import ( ContextParameterValueNotFound, + DisabledBlockExecutionError, FailedToNavigateToUrl, MissingBrowserStatePage, TaskNotFound, @@ -534,6 +535,7 @@ class CodeBlock(Block): return self.parameters async def execute(self, workflow_run_id: str, **kwargs: dict) -> BlockResult: + raise DisabledBlockExecutionError("CodeBlock is disabled") # get workflow run context workflow_run_context = self.get_workflow_run_context(workflow_run_id)