check-ui-kit:存量驳回的另三种原话都归成「人工审批驳回」、不给继续运行

为什么:lib/explain 的正则只留给存量 failed+驳回(新的驳回结束在 cancelled,界面按 end_reason 说),以前只认「人工驳回」一种,
动作确认、工具调用审批、代码执行审批的驳回原话落到兜底、给出注定再失败的「继续运行」(05-已知遗留 (a))。这三种要有检查守着。

做了什么:失败归类的样本加三对(「「付款」未确认(被驳回),没有发送:…」「工具 x 的调用已被驳回:…」「代码执行已被驳回:…」),
期望标题「人工审批驳回,运行终止」、continuable=false;「片段还在后端源码里」那一项加上 tools.py 里这三处原话。
验证:check-all --stacks 1 ui-kit 497 项通过。
This commit is contained in:
ThearchyHelios
2026-10-16 11:07:17 +08:00
parent 335dc99c3e
commit a56c405c9a
+10
View File
@@ -360,6 +360,10 @@ await section('按后端原文匹配的地方:失败归类认得新旧两种
['engine/nodes/multi.py', '协作团队用完 {max_rounds} 轮仍未完成:'],
['engine/nodes/human.py', '修复时出现了原文没有的值:'],
['engine/nodes/human.py', 'f"人工驳回:'],
// 存量 failed+驳回的另三种原话(05-已知遗留 (a):新的驳回结束在 cancelled,界面按 end_reason 说,这几条只留给老运行)
['engine/nodes/tools.py', '未确认(被驳回),没有发送'],
['engine/nodes/tools.py', '的调用已被驳回'],
['engine/nodes/tools.py', '"代码执行已被驳回"'],
['core/errors.py', '鉴权失败{code}:服务方拒绝了当前 API Key'],
['core/errors.py', '"请求过于频繁或额度已用完(429)"'],
['core/errors.py', '"无法连接服务:网络不通或服务未启动"'],
@@ -412,6 +416,12 @@ await section('按后端原文匹配的地方:失败归类认得新旧两种
'结构化校验未通过:修复时出现了原文没有的值:total_count=0', '结构化校验没通过:修复时出现了原文没有的值:total_count=0',
'校验修复未采用:修复结果中出现了原文没有的值', false, 'canvas'],
['人工驳回(整改前有一条路径写「人工拒绝」)', '人工驳回:数字对不上', '人工拒绝:数字对不上', '人工审批驳回,运行终止', false, undefined],
// 存量的另三种驳回原话:都不给「继续运行」(接着跑只会读到同一个驳回答复)
['动作确认被驳回(存量)', '「付款」未确认(被驳回),没有发送:金额不对', '「付款」未确认(被驳回),没有发送',
'人工审批驳回,运行终止', false, undefined],
['工具调用审批被驳回(存量)', '工具 calculator 的调用已被驳回:不能算', '工具 calculator 的调用已被驳回',
'人工审批驳回,运行终止', false, undefined],
['代码执行审批被驳回(存量)', '代码执行已被驳回:不安全', '代码执行已被驳回', '人工审批驳回,运行终止', false, undefined],
['模型鉴权失败', '鉴权失败(401):服务方拒绝了当前 API Key', '鉴权没通过(401):对方拒绝了这把密钥', '模型鉴权失败', true, 'settings'],
['限流或额度用完', '请求过于频繁或额度已用完(429)', '请求太频繁,或者额度用完了(429)', '请求过于频繁,或额度已用完', true, undefined],
['连不上外部服务', '无法连接服务:网络不通或服务未启动', '连不上对方的服务:网络不通,或者服务没有启动', '无法连接外部服务', true, undefined],