diff --git a/src/dstack/_internal/core/models/fleets.py b/src/dstack/_internal/core/models/fleets.py index 0bb3103b47..32a6761bb4 100644 --- a/src/dstack/_internal/core/models/fleets.py +++ b/src/dstack/_internal/core/models/fleets.py @@ -168,7 +168,7 @@ def dict(self, *args, **kwargs) -> Dict: res = CoreModel.dict(self, *args, **kwargs) # For backward compatibility with old clients # that do not ignore extra fields due to https://github.com/dstackai/dstack/issues/3066 - if hasattr(res, "target") and res["target"] == res["min"]: + if "target" in res and res["target"] == res["min"]: del res["target"] return res diff --git a/src/tests/_internal/server/routers/test_fleets.py b/src/tests/_internal/server/routers/test_fleets.py index e4b5192cf9..33fc73e019 100644 --- a/src/tests/_internal/server/routers/test_fleets.py +++ b/src/tests/_internal/server/routers/test_fleets.py @@ -336,7 +336,7 @@ async def test_creates_fleet(self, test_db, session: AsyncSession, client: Async "spec": { "configuration_path": spec.configuration_path, "configuration": { - "nodes": {"min": 1, "target": 1, "max": 1}, + "nodes": {"min": 1, "max": 1}, "placement": None, "env": {}, "ssh_config": None,