diff --git a/skyvern/config.py b/skyvern/config.py index c6bf36bc9b..d2235dd278 100644 --- a/skyvern/config.py +++ b/skyvern/config.py @@ -119,6 +119,7 @@ class Settings(BaseSettings): # TOTP Settings TOTP_LIFESPAN_MINUTES: int = 10 + VERIFICATION_CODE_POLLING_TIMEOUT_MINS: int = 5 def is_cloud_environment(self) -> bool: """ diff --git a/skyvern/constants.py b/skyvern/constants.py index 68e998edb0..1ae050dfed 100644 --- a/skyvern/constants.py +++ b/skyvern/constants.py @@ -13,8 +13,6 @@ # reserved fields for navigation payload SPECIAL_FIELD_VERIFICATION_CODE = "verification_code" -VERIFICATION_CODE_POLLING_TIMEOUT_MINS = 10 - class ScrapeType(StrEnum): NORMAL = "normal" diff --git a/skyvern/webeye/actions/handler.py b/skyvern/webeye/actions/handler.py index c95d5c87b2..f28d5c839d 100644 --- a/skyvern/webeye/actions/handler.py +++ b/skyvern/webeye/actions/handler.py @@ -12,7 +12,7 @@ from playwright.async_api import FileChooser, Locator, Page, TimeoutError from pydantic import BaseModel -from skyvern.constants import REPO_ROOT_DIR, SKYVERN_ID_ATTR, VERIFICATION_CODE_POLLING_TIMEOUT_MINS +from skyvern.constants import REPO_ROOT_DIR, SKYVERN_ID_ATTR from skyvern.exceptions import ( EmptySelect, ErrEmptyTweakValue, @@ -2099,7 +2099,7 @@ async def poll_verification_code( totp_verification_url: str | None = None, totp_identifier: str | None = None, ) -> str | None: - timeout = timedelta(minutes=VERIFICATION_CODE_POLLING_TIMEOUT_MINS) + timeout = timedelta(minutes=SettingsManager.get_settings().VERIFICATION_CODE_POLLING_TIMEOUT_MINS) start_datetime = datetime.utcnow() timeout_datetime = start_datetime + timeout org_token = await app.DATABASE.get_valid_org_auth_token(organization_id, OrganizationAuthTokenType.api)