Remove code cache deletion confirmation from backend (#SKY-7370) (#4726)

Co-authored-by: Suchintan Singh <suchintan@skyvern.com>
This commit is contained in:
Suchintan
2026-02-12 18:13:20 -05:00
committed by GitHub
parent 358a7c937c
commit 40b629eceb
3 changed files with 1 additions and 70 deletions

View File

@@ -25,7 +25,6 @@ from skyvern import analytics
from skyvern._version import __version__
from skyvern.config import settings
from skyvern.exceptions import (
CannotUpdateWorkflowDueToCodeCache,
MissingBrowserAddressError,
SkyvernHTTPException,
)
@@ -922,7 +921,6 @@ async def update_workflow_legacy(
..., description="The ID of the workflow to update. Workflow ID starts with `wpid_`.", examples=["wpid_123"]
),
current_org: Organization = Depends(org_auth_service.get_current_org),
delete_code_cache_is_ok: bool = Query(False),
) -> Workflow:
analytics.capture("skyvern-oss-agent-workflow-update")
# validate the workflow
@@ -938,13 +936,7 @@ async def update_workflow_legacy(
organization=current_org,
request=workflow_create_request,
workflow_permanent_id=workflow_id,
delete_code_cache_is_ok=delete_code_cache_is_ok,
)
except CannotUpdateWorkflowDueToCodeCache as e:
raise HTTPException(
status_code=422,
detail=str(e),
) from e
except WorkflowDefinitionValidationException as e:
raise e
except (SkyvernHTTPException, ValidationError) as e:

View File

@@ -35,7 +35,6 @@ from skyvern.exceptions import (
BlockNotFound,
BrowserProfileNotFound,
BrowserSessionNotFound,
CannotUpdateWorkflowDueToCodeCache,
FailedToSendWebhook,
InvalidCredentialId,
MissingValueForParameter,
@@ -2140,7 +2139,6 @@ class WorkflowService:
workflow_definition: WorkflowDefinition,
organization_id: str,
delete_script: bool = True,
delete_code_cache_is_ok: bool = False,
) -> None:
if workflow_definition:
workflow_definition.validate()
@@ -2216,27 +2214,6 @@ class WorkflowService:
)
return
if published_groups and not delete_code_cache_is_ok:
LOG.info(
"Workflow definition changed, asking user if clearing published cached blocks is ok",
workflow_id=workflow.workflow_id,
workflow_permanent_id=previous_valid_workflow.workflow_permanent_id,
organization_id=organization_id,
previous_version=previous_valid_workflow.version,
new_version=workflow.version,
invalidate_reason=plan.reason,
invalidate_label=plan.label,
invalidate_index_prev=plan.previous_index,
invalidate_index_new=plan.new_index,
block_labels_to_disable=plan.block_labels_to_disable,
to_clear_published_cnt=len(published_groups),
to_clear_non_published_cnt=len(cached_groups),
)
raise CannotUpdateWorkflowDueToCodeCache(
workflow_permanent_id=previous_valid_workflow.workflow_permanent_id,
)
try:
groups_to_clear = [*cached_groups, *published_groups]
await self._clear_cached_block_groups(
@@ -2278,38 +2255,7 @@ class WorkflowService:
)
return
to_delete_published = [script for script in candidates if script.status == ScriptStatus.published]
to_delete = [script for script in candidates if script.status != ScriptStatus.published]
if len(to_delete_published) > 0:
if not delete_code_cache_is_ok:
LOG.info(
"Workflow definition changed, asking user if deleting published code is ok",
workflow_id=workflow.workflow_id,
workflow_permanent_id=previous_valid_workflow.workflow_permanent_id,
organization_id=organization_id,
previous_version=previous_valid_workflow.version,
new_version=workflow.version,
to_delete_non_published_cnt=len(to_delete),
to_delete_published_cnt=len(to_delete_published),
)
raise CannotUpdateWorkflowDueToCodeCache(
workflow_permanent_id=previous_valid_workflow.workflow_permanent_id,
)
else:
LOG.info(
"Workflow definition changed, user answered yes to deleting published code",
workflow_id=workflow.workflow_id,
workflow_permanent_id=previous_valid_workflow.workflow_permanent_id,
organization_id=organization_id,
previous_version=previous_valid_workflow.version,
new_version=workflow.version,
to_delete_non_published_cnt=len(to_delete),
to_delete_published_cnt=len(to_delete_published),
)
to_delete.extend(to_delete_published)
to_delete = candidates
if len(to_delete) > 0:
try:
@@ -3339,7 +3285,6 @@ class WorkflowService:
request: WorkflowCreateYAMLRequest,
workflow_permanent_id: str | None = None,
delete_script: bool = True,
delete_code_cache_is_ok: bool = True,
) -> Workflow:
organization_id = organization.organization_id
@@ -3449,7 +3394,6 @@ class WorkflowService:
workflow_definition=workflow_definition,
organization_id=organization_id,
delete_script=delete_script,
delete_code_cache_is_ok=delete_code_cache_is_ok,
)
return updated_workflow