From 31c19938ffd1f9ae087ff7b8af52a0e935bc2c38 Mon Sep 17 00:00:00 2001 From: LawyZheng Date: Fri, 13 Dec 2024 16:54:48 +0800 Subject: [PATCH] parse yaml criterion to block (#1383) --- skyvern/forge/sdk/workflow/models/yaml.py | 6 ++++++ skyvern/forge/sdk/workflow/service.py | 6 ++++++ 2 files changed, 12 insertions(+) diff --git a/skyvern/forge/sdk/workflow/models/yaml.py b/skyvern/forge/sdk/workflow/models/yaml.py index 453e950bb..365c3205f 100644 --- a/skyvern/forge/sdk/workflow/models/yaml.py +++ b/skyvern/forge/sdk/workflow/models/yaml.py @@ -131,6 +131,8 @@ class TaskBlockYAML(BlockYAML): totp_verification_url: str | None = None totp_identifier: str | None = None cache_actions: bool = False + complete_criterion: str | None = None + terminate_criterion: str | None = None class ForLoopBlockYAML(BlockYAML): @@ -253,6 +255,8 @@ class NavigationBlockYAML(BlockYAML): totp_verification_url: str | None = None totp_identifier: str | None = None cache_actions: bool = False + complete_criterion: str | None = None + terminate_criterion: str | None = None class ExtractionBlockYAML(BlockYAML): @@ -281,6 +285,8 @@ class LoginBlockYAML(BlockYAML): totp_verification_url: str | None = None totp_identifier: str | None = None cache_actions: bool = False + complete_criterion: str | None = None + terminate_criterion: str | None = None class WaitBlockYAML(BlockYAML): diff --git a/skyvern/forge/sdk/workflow/service.py b/skyvern/forge/sdk/workflow/service.py index 378d4beab..d8012d97b 100644 --- a/skyvern/forge/sdk/workflow/service.py +++ b/skyvern/forge/sdk/workflow/service.py @@ -1313,6 +1313,8 @@ async def block_yaml_to_block( totp_verification_url=block_yaml.totp_verification_url, totp_identifier=block_yaml.totp_identifier, cache_actions=block_yaml.cache_actions, + complete_criterion=block_yaml.complete_criterion, + terminate_criterion=block_yaml.terminate_criterion, ) elif block_yaml.block_type == BlockType.FOR_LOOP: loop_blocks = [ @@ -1481,6 +1483,8 @@ async def block_yaml_to_block( totp_verification_url=block_yaml.totp_verification_url, totp_identifier=block_yaml.totp_identifier, cache_actions=block_yaml.cache_actions, + complete_criterion=block_yaml.complete_criterion, + terminate_criterion=block_yaml.terminate_criterion, ) elif block_yaml.block_type == BlockType.EXTRACTION: @@ -1523,6 +1527,8 @@ async def block_yaml_to_block( totp_verification_url=block_yaml.totp_verification_url, totp_identifier=block_yaml.totp_identifier, cache_actions=block_yaml.cache_actions, + complete_criterion=block_yaml.complete_criterion, + terminate_criterion=block_yaml.terminate_criterion, ) elif block_yaml.block_type == BlockType.WAIT: