From fe8cd8260414686a4a445a539a42a6ec069eeaef Mon Sep 17 00:00:00 2001 From: jariy17 Date: Thu, 30 Jul 2026 22:46:57 +0000 Subject: [PATCH] fix(ci): add pinned deepeval and autoevals to dev group The deepeval adapter imports deepeval at module scope (src/.../third_party/deepeval/adapter.py:6), but deepeval was absent from the dev dependency group. ci.yml runs 'uv sync --dev', so the deepeval unit tests could not be collected, exiting pytest with code 2 and cancelling the whole matrix. Both are pinned with an upper bound so major versions cannot drift in. The deepeval extra's >=2.0.0 floor was also unsatisfiable: the adapter imports deepeval.test_case.conversational_test_case.Turn, which does not exist before 3.0.8, and deepeval <3.5.0 pins rich <14, conflicting with strands-agents-evals (rich >=14). Corrected to >=3.5.0. --- pyproject.toml | 6 ++++-- uv.lock | 8 ++++++-- 2 files changed, 10 insertions(+), 4 deletions(-) diff --git a/pyproject.toml b/pyproject.toml index 1a700b76..d5782038 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -151,6 +151,8 @@ dev = [ "wheel>=0.45.1", "strands-agents>=1.20.0", "strands-agents-evals>=1.0.3,<2.0.0", + "deepeval>=3.5.0,<5.0.0", + "autoevals>=0.3.0,<1.0.0", "langchain>=1.0.0", "langgraph>=1.0.0", "langchain-mcp-adapters>=0.1.0", @@ -184,11 +186,11 @@ datasets = [ "requests>=2.31.0", ] deepeval = [ - "deepeval>=2.0.0", + "deepeval>=3.5.0,<5.0.0", "strands-agents-evals>=1.0.3,<2.0.0", ] autoevals = [ - "autoevals>=0.0.50", + "autoevals>=0.3.0,<1.0.0", "strands-agents-evals>=1.0.3,<2.0.0", ] diff --git a/uv.lock b/uv.lock index cb467767..4c579bf5 100644 --- a/uv.lock +++ b/uv.lock @@ -514,6 +514,8 @@ strands-agents-evals = [ dev = [ { name = "a2a-sdk", version = "1.1.2", source = { registry = "https://pypi.org/simple" }, extra = ["http-server"], marker = "extra == 'extra-17-bedrock-agentcore-a2a-v1' or extra == 'group-17-bedrock-agentcore-dev' or extra != 'extra-17-bedrock-agentcore-a2a'" }, { name = "ag-ui-protocol" }, + { name = "autoevals" }, + { name = "deepeval" }, { name = "httpx" }, { name = "langchain" }, { name = "langchain-mcp-adapters" }, @@ -539,10 +541,10 @@ requires-dist = [ { name = "a2a-sdk", extras = ["http-server"], marker = "extra == 'a2a'", specifier = ">=0.3,<0.4" }, { name = "a2a-sdk", extras = ["http-server"], marker = "extra == 'a2a-v1'", specifier = ">=1.0.1,<2.0" }, { name = "ag-ui-protocol", marker = "extra == 'ag-ui'", specifier = ">=0.1.10" }, - { name = "autoevals", marker = "extra == 'autoevals'", specifier = ">=0.0.50" }, + { name = "autoevals", marker = "extra == 'autoevals'", specifier = ">=0.3.0,<1.0.0" }, { name = "boto3", specifier = ">=1.43.31" }, { name = "botocore", specifier = ">=1.43.31" }, - { name = "deepeval", marker = "extra == 'deepeval'", specifier = ">=2.0.0" }, + { name = "deepeval", marker = "extra == 'deepeval'", specifier = ">=3.5.0,<5.0.0" }, { name = "httpx", marker = "extra == 'langgraph'", specifier = ">=0.27.0" }, { name = "jinja2", marker = "extra == 'simulation'", specifier = ">=3.1.0" }, { name = "langchain", marker = "extra == 'langgraph'", specifier = ">=1.0.0" }, @@ -568,6 +570,8 @@ provides-extras = ["a2a", "a2a-v1", "ag-ui", "strands-agents", "langgraph", "str dev = [ { name = "a2a-sdk", extras = ["http-server"], specifier = ">=1.0.1,<2.0" }, { name = "ag-ui-protocol", specifier = ">=0.1.10" }, + { name = "autoevals", specifier = ">=0.3.0,<1.0.0" }, + { name = "deepeval", specifier = ">=3.5.0,<5.0.0" }, { name = "httpx", specifier = ">=0.28.1" }, { name = "langchain", specifier = ">=1.0.0" }, { name = "langchain-mcp-adapters", specifier = ">=0.1.0" },