diff --git a/app/harness/config.py b/app/harness/config.py index 8fdc065..d0ba2e3 100644 --- a/app/harness/config.py +++ b/app/harness/config.py @@ -20,8 +20,8 @@ _VALID_SKILL_MODES = {"auto", "manual", "none"} _VALID_SKILL_UPDATE_MODES = {"patch", "rewrite"} _PATH_FIELDS = {"workspace_dir", "store_dir"} -# Video-MME 的任务类型数量:验证池每类至少保底 eval_min_per_class 题,共 11 类。 -_VIDEO_MME_TASK_TYPE_COUNT = 11 +# Video-MME 的任务类型数量:验证池每类至少保底 eval_min_per_class 题,共 12 类。 +_VIDEO_MME_TASK_TYPE_COUNT = 12 # .env 工程配置字段映射(环境变量名 → RunConfig 字段名)。 # 仅路径类工程配置走 .env,科研实验参数走 YAML。 diff --git a/tests/unit/test_harness_config.py b/tests/unit/test_harness_config.py index 2d01d10..555cb79 100644 --- a/tests/unit/test_harness_config.py +++ b/tests/unit/test_harness_config.py @@ -568,28 +568,35 @@ class TestValSizeFloor: """val_size >= eval_min_per_class * 11 的下限校验。""" def test_val_size_below_floor_rejected(self) -> None: - """val_size < eval_min_per_class * 11 应抛出 ValueError。 + """val_size < eval_min_per_class * 12 应抛出 ValueError。 - eval_min_per_class=3 → 下限 = 3 * 11 = 33,val_size=30 不足。 + eval_min_per_class=3 → 下限 = 3 * 12 = 36,val_size=30 不足。 """ cfg = _make_config(eval_min_per_class=3, val_size=30) with pytest.raises(ValueError, match="val_size"): _validate(cfg) def test_val_size_at_floor_accepted(self) -> None: - """val_size == eval_min_per_class * 11 应通过。""" - cfg = _make_config(eval_min_per_class=3, val_size=33) + """val_size == eval_min_per_class * 12 应通过。""" + cfg = _make_config(eval_min_per_class=3, val_size=36) _validate(cfg) def test_val_size_above_floor_accepted(self) -> None: - """val_size > eval_min_per_class * 11 应通过。""" + """val_size > eval_min_per_class * 12 应通过。""" cfg = _make_config(eval_min_per_class=2, val_size=100) _validate(cfg) def test_default_yaml_values_satisfy_floor(self) -> None: """default.yaml 的默认值(val_size=30, eval_min_per_class=2)应满足下限。 - 下限 = 2 * 11 = 22,val_size=30 >= 22,通过。 + 下限 = 2 * 12 = 24,val_size=30 >= 24,通过。 """ cfg = _make_config() _validate(cfg) # 不应抛出异常 + + +def test_video_mme_task_type_count_is_12(): + """Video-MME 实际有 12 种题型,常量必须与之一致。""" + from app.harness.config import _VIDEO_MME_TASK_TYPE_COUNT + + assert _VIDEO_MME_TASK_TYPE_COUNT == 12