fix: pm/qc 角色技能加载归一化 role(agent.pm/agent.qc)

pm_review_run/qc_review_run 传裸名 'pm'/'qc' 给 _build_role_skills_block,
get_merged 按 role_key 精确匹配目录,裸名匹配不上 agent.pm/agent.qc 目录,
导致 pm/qc 角色技能永远不注入。改为 _normalize_role('pm'/'qc')。
This commit is contained in:
ymq 2026-08-22 00:12:41 +08:00
parent 8eedff7af9
commit b31cb6c816

View File

@ -1512,7 +1512,7 @@ async def pm_review_run(project_id, agent_id=None, model_name=None):
repo_state = await _get_repo_state(workspace_dir)
repos_str = ", ".join([r['name'] for r in repos]) if repos else ""
content_preview = deliverable_content[:6000]
role_skills = await _build_role_skills_block(sor, project_id, 'pm', org_id)
role_skills = await _build_role_skills_block(sor, project_id, _normalize_role('pm'), org_id)
pm_system = PM_SYSTEM_PROMPT.replace('__TITLE__', title)\
.replace('__ROLE__', task_role)\
@ -1747,7 +1747,7 @@ async def qc_review_run(project_id, agent_id=None, model_name=None):
return {"status": "rejected", "task_id": task_id, "reason": "没有交付件"}
content_preview = deliverable_content[:6000]
role_skills = await _build_role_skills_block(sor, project_id, 'qc', org_id)
role_skills = await _build_role_skills_block(sor, project_id, _normalize_role('qc'), org_id)
qc_system = QC_SYSTEM_PROMPT.replace('__TITLE__', title)\
.replace('__ROLE__', task_role)\