add flag for forcing code_gen for v2 task block runs (#3576)

This commit is contained in:
Jonathan Dobson
2025-10-01 13:52:42 -04:00
committed by GitHub
parent e6e36f98de
commit 4d2ee0c665
7 changed files with 47 additions and 3 deletions

View File

@@ -238,6 +238,7 @@ class Block(BaseModel, abc.ABC):
workflow_run_block_id: str,
organization_id: str | None = None,
browser_session_id: str | None = None,
code_gen: bool | None = None,
**kwargs: dict,
) -> BlockResult:
pass
@@ -295,6 +296,7 @@ class Block(BaseModel, abc.ABC):
parent_workflow_run_block_id: str | None = None,
organization_id: str | None = None,
browser_session_id: str | None = None,
code_gen: bool | None = None,
**kwargs: dict,
) -> BlockResult:
workflow_run_block_id = None
@@ -344,6 +346,7 @@ class Block(BaseModel, abc.ABC):
workflow_run_block_id,
organization_id=organization_id,
browser_session_id=browser_session_id,
code_gen=code_gen,
**kwargs,
)
except Exception as e:
@@ -500,6 +503,7 @@ class BaseTaskBlock(Block):
workflow_run_block_id: str,
organization_id: str | None = None,
browser_session_id: str | None = None,
code_gen: bool | None = None,
**kwargs: dict,
) -> BlockResult:
workflow_run_context = self.get_workflow_run_context(workflow_run_id)
@@ -1307,6 +1311,7 @@ class ForLoopBlock(Block):
workflow_run_block_id: str,
organization_id: str | None = None,
browser_session_id: str | None = None,
code_gen: bool | None = None,
**kwargs: dict,
) -> BlockResult:
workflow_run_context = self.get_workflow_run_context(workflow_run_id)
@@ -1484,6 +1489,7 @@ async def wrapper():
workflow_run_block_id: str,
organization_id: str | None = None,
browser_session_id: str | None = None,
code_gen: bool | None = None,
**kwargs: dict,
) -> BlockResult:
await app.AGENT_FUNCTION.validate_code_block(organization_id=organization_id)
@@ -1650,6 +1656,7 @@ class TextPromptBlock(Block):
workflow_run_block_id: str,
organization_id: str | None = None,
browser_session_id: str | None = None,
code_gen: bool | None = None,
**kwargs: dict,
) -> BlockResult:
# Validate block execution
@@ -1734,6 +1741,7 @@ class DownloadToS3Block(Block):
workflow_run_block_id: str,
organization_id: str | None = None,
browser_session_id: str | None = None,
code_gen: bool | None = None,
**kwargs: dict,
) -> BlockResult:
# get workflow run context
@@ -1822,6 +1830,7 @@ class UploadToS3Block(Block):
workflow_run_block_id: str,
organization_id: str | None = None,
browser_session_id: str | None = None,
code_gen: bool | None = None,
**kwargs: dict,
) -> BlockResult:
# get workflow run context
@@ -1988,6 +1997,7 @@ class FileUploadBlock(Block):
workflow_run_block_id: str,
organization_id: str | None = None,
browser_session_id: str | None = None,
code_gen: bool | None = None,
**kwargs: dict,
) -> BlockResult:
# get workflow run context
@@ -2404,6 +2414,7 @@ class SendEmailBlock(Block):
workflow_run_block_id: str,
organization_id: str | None = None,
browser_session_id: str | None = None,
code_gen: bool | None = None,
**kwargs: dict,
) -> BlockResult:
workflow_run_context = self.get_workflow_run_context(workflow_run_id)
@@ -2639,6 +2650,7 @@ class FileParserBlock(Block):
workflow_run_block_id: str,
organization_id: str | None = None,
browser_session_id: str | None = None,
code_gen: bool | None = None,
**kwargs: dict,
) -> BlockResult:
workflow_run_context = self.get_workflow_run_context(workflow_run_id)
@@ -2778,6 +2790,7 @@ class PDFParserBlock(Block):
workflow_run_block_id: str,
organization_id: str | None = None,
browser_session_id: str | None = None,
code_gen: bool | None = None,
**kwargs: dict,
) -> BlockResult:
workflow_run_context = self.get_workflow_run_context(workflow_run_id)
@@ -2878,6 +2891,7 @@ class WaitBlock(Block):
workflow_run_block_id: str,
organization_id: str | None = None,
browser_session_id: str | None = None,
code_gen: bool | None = None,
**kwargs: dict,
) -> BlockResult:
# TODO: we need to support to interrupt the sleep when the workflow run failed/cancelled/terminated
@@ -2922,6 +2936,7 @@ class ValidationBlock(BaseTaskBlock):
workflow_run_block_id: str,
organization_id: str | None = None,
browser_session_id: str | None = None,
code_gen: bool | None = None,
**kwargs: dict,
) -> BlockResult:
task_order, _ = await self.get_task_order(workflow_run_id, 0)
@@ -3024,6 +3039,7 @@ class TaskV2Block(Block):
workflow_run_block_id: str,
organization_id: str | None = None,
browser_session_id: str | None = None,
code_gen: bool | None = None,
**kwargs: dict,
) -> BlockResult:
from skyvern.forge.sdk.workflow.models.workflow import WorkflowRunStatus # noqa: PLC0415
@@ -3095,6 +3111,7 @@ class TaskV2Block(Block):
request_id=None,
max_steps_override=self.max_steps,
browser_session_id=browser_session_id,
code_gen=code_gen,
)
finally:
context: skyvern_context.SkyvernContext | None = skyvern_context.current()
@@ -3212,6 +3229,7 @@ class HttpRequestBlock(Block):
workflow_run_block_id: str,
organization_id: str | None = None,
browser_session_id: str | None = None,
code_gen: bool | None = None,
**kwargs: dict,
) -> BlockResult:
"""Execute the HTTP request and return the response"""