auto-sync: 2026-06-05 18:41:47

This commit is contained in:
cfdaily
2026-06-05 18:41:47 +08:00
parent 3573a6db9c
commit 76945a47d6
+1 -45
View File
@@ -5,8 +5,7 @@
- T2: token 估算 + 预算告警
- T3: 缺失组件降级
- T4: build_for_task 便捷方法
- T5: _read_skill fallback (skipped — removed in API refactor)
- T6: ROLE_SKILL_MAP 覆盖 (skipped — removed in API refactor)
"""
import pytest
@@ -141,47 +140,4 @@ class TestBuildForTask:
assert "T" in b
# ---------------------------------------------------------------------------
# T5: _read_skill fallback (removed in API refactor)
# ---------------------------------------------------------------------------
@pytest.mark.skip(reason="_read_skill removed in API refactor")
class TestReadSkillFallback:
def test_missing_skill_file_returns_empty(self, builder):
"""Skill 文件不存在时返回空字符串,不抛异常"""
result = builder._read_skill("nonexistent-skill-xyz")
assert result == ""
def test_existing_skill_file_read(self, builder):
"""能读取实际存在的 Skill 文件"""
result = builder._read_skill("blackboard-executor")
assert "执行" in result or "executor" in result.lower()
# ---------------------------------------------------------------------------
# T6: ROLE_SKILL_MAP 覆盖 (removed in API refactor)
# ---------------------------------------------------------------------------
@pytest.mark.skip(reason="ROLE_SKILL_MAP removed in API refactor")
class TestRoleSkillMap:
def test_all_roles_mapped(self):
assert set(BootstrapBuilder.ROLE_SKILL_MAP.keys()) == {
"executor", "reviewer", "reviewer-simayi",
"reviewer-pangtong", "planner", "claim",
}
def test_unknown_role_warns(self, builder):
"""未映射的 role 输出 warning"""
import logging
with patch("src.daemon.bootstrap.logger") as mock_logger:
builder.build(task={"title": "T"}, role="unknown_role")
mock_logger.warning.assert_called_with(
"No skill mapping for role: %s", "unknown_role"
)
def test_discussion_role_no_warning(self, builder, caplog):
"""discussion 角色不应触发 warning"""
import logging
with caplog.at_level(logging.WARNING, logger="moziplus-v2.bootstrap"):
builder.build(task={"title": "T"}, role="discussion")
assert "No skill mapping" not in caplog.text