fix: PM审核循环加auto-inject兜底,最后两轮强制review_*决策,防审核超时死循环
This commit is contained in:
parent
14a42aac7b
commit
099c283562
@ -840,6 +840,13 @@ async def pm_review_run(project_id, agent_id=None, model_name=None):
|
||||
"UPDATE pipeline_tasks SET updated_at=NOW() WHERE id=${tid}$ AND state='review'",
|
||||
{"tid": task_id})
|
||||
await sor.sqlExe("COMMIT", {})
|
||||
# auto-inject 兜底:最后两轮强制要求给出 review_* 决策,禁止再 tool_call,
|
||||
# 否则 deepseek 会一直读文件/git_status 耗尽 5 轮 → 审核超时 → 打回重跑 → 死循环
|
||||
if turn >= 3:
|
||||
msgs.append({"role": "user", "content":
|
||||
"已检查足够信息。现在必须立即输出最终决策 JSON,"
|
||||
"只能是 review_approve / review_reject / review_complete 三者之一,"
|
||||
"禁止再调用任何工具。"})
|
||||
try:
|
||||
raw = await llm_call_msgs(msgs, model=model_name, temperature=0.3)
|
||||
except Exception as e:
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user