Skip to content

Commit f03e33d

Browse files
committed
fix: sanitize compute default version ref
1 parent f8fff60 commit f03e33d

File tree

2 files changed

+15
-4
lines changed

2 files changed

+15
-4
lines changed

workflowai/core/client/_client.py

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -44,8 +44,10 @@ def _compute_default_version_reference() -> VersionReference:
4444
if version in {"dev", "staging", "production"}:
4545
return version # pyright: ignore [reportReturnType]
4646

47-
if isinstance(version, int):
48-
return version
47+
try:
48+
return int(version)
49+
except ValueError:
50+
pass
4951

5052
_logger.warning("Invalid default version: %s", version)
5153

workflowai/core/client/_client_test.py

Lines changed: 11 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
import importlib.metadata
22
import json
3-
from typing import AsyncIterator
3+
from typing import Any, AsyncIterator
44
from unittest.mock import AsyncMock, patch
55

66
import pytest
@@ -9,7 +9,7 @@
99
from tests.models.hello_task import HelloTask, HelloTaskInput, HelloTaskNotOptional, HelloTaskOutput
1010
from tests.utils import fixtures_json
1111
from workflowai.core.client import Client
12-
from workflowai.core.client._client import WorkflowAIClient
12+
from workflowai.core.client._client import WorkflowAIClient, _compute_default_version_reference
1313
from workflowai.core.domain.task_run import Run
1414

1515

@@ -261,3 +261,12 @@ def fn(task_input: HelloTaskInput) -> AsyncIterator[HelloTaskOutput]: ...
261261
HelloTaskOutput(message="hello"),
262262
HelloTaskOutput(message="hello"),
263263
]
264+
265+
266+
@pytest.mark.parametrize(
267+
("env_var", "expected"),
268+
[("p", "production"), ("production", "production"), ("dev", "dev"), ("staging", "staging"), ("1", 1)],
269+
)
270+
def test_compute_default_version_reference(env_var: str, expected: Any):
271+
with patch.dict("os.environ", {"WORKFLOWAI_DEFAULT_VERSION": env_var}):
272+
assert _compute_default_version_reference() == expected

0 commit comments

Comments
 (0)