CatchBench: When Can an Agent Failure Be Caught? 精读
论文链接:arXiv:2608.22808 代码仓库:yzhao062/catchbench(复现全部数字无需 API key) 发表时间:2026年8月 机构:University of Southern California(单一高校;作者 Yue Zhao 为 PyOD/ADBench/BOND 等知名异常检测基准的作者) 领域标签:cs.AI / cs.LG(Agent 可靠性与审计评测)
一、论文背景
Agent 审计是什么? 随着 Agent 被赋予读取文件、调用 API、执行代码的权限,“谁能发现 Agent 出错了/越权了/被注入了"成为部署前的最后一道闸。审计方法分三类:PRE(运行前检查声明配置——如 crewai 的 YAML 里是否申请了过多权限)、LIVE(运行中看轨迹前缀——早期预警异常)、POST(运行后看完整轨迹——定位哪一步出错)。每类方法各自为战,从未在同一竞技场比较过。
评测的现状问题:异常检测/审计领域的基准存在系统性隐患——标签怎么来的往往不透明。一个检测器在某个语料上 F1 很高,可能是因为它真的会推理,也可能只是捕捉到了语料构造方式留下的捷径(如"注入样本都比正常样本长”)。此前的基准从不公开标签生成过程,这类捷径无从检验。
作者的可信度背景:一作是 PyOD(Python 异常检测库,学术界工业界标准工具)与 ADBench 的作者——在"基准该如何建"上踩过所有坑,这篇论文相当于把十年的基准方法论教训浓缩进 Agent 审计领域。
二、论文定位和关联工作
- 异常检测基准线(ADBench/BOND):确立了"多方法统一接口横评"的范式——CatchBench 继承并升级(同一 task 对象喂给板上每个方法)。
- Agent 安全评测线(AgentHarm/injecagent 等):提供攻击语料但各测各的防御——CatchBench 把六个来源的语料统一进 PRE/LIVE/POST 框架。
- 作者同期开源yzhao062/auditable:把 PRE/LIVE/POST 统一为一个类型化图——本基准的方法论延续。
- 差异化定位:不是"更大的基准",而是更诚实的基准——贡献集中于可采性方法学。
三、问题定义
具体场景:给定一个 Agent 系统(配置+轨迹),判断各种审计方法在各自可用信息状态下能否检出/定位故障。
抽象问题:审计能力由"证据预算"决定——同一运行经过 PRE/LIVE/POST 三种信息状态,一种状态下的方法原则上无法读取另一状态的证据。 由此基准必须分赛道(而非共享排行榜列)评分;且分数的可解释性以"标签生成过程公开并通过捷径检验"为前提。
四、问题解法
4.1 竞技场结构
9 个计分板 = 7 任务契约 × 6 审计场景。数据:1187 个声明配置(crewai/injecagent/mcp/n8n/sweagent/synthetic 六来源,每条公开标签制作过程)+1162 条运行轨迹(Who&When 126 失败 / SWE-Gym 376 / tau-bench 660)。72 个参赛方法横跨规则扫描器、结构/图检测器、监督参考、现成异常检测器(PyOD/PyGOD)、9 个模型家族 11 个 LLM judge(3 种诱导协议)。
4.2 CatchBench-Gold:带可采性门槛的注入故障
向真实运行注入已知故障(stale-state read / dropped grounding),设五项可采性门槛:故障真实性、无构造专用基线可平凡检测、分布可比、标签检测器无关、人工验证。两种注入基底(file-level 与 named-value Gold v2)均未全部通过门槛(file-level 注入被只读构造基线 188/188 完美检出——编辑边破坏了 clean-graph 不变量,留下了构造标记),故三个 Gold 板仅作机制诊断发布,不计入正式榜。
4.3 统计契约
16 个预声明对比族、Holm 步降多重校正;118 个对比全部可从发布的预测缓存再生(无需调用模型 API)——审稿人与后来者零成本复核。
五、评估指标与实验证据
诚实的主结果:47/118 个对比可分离,其余 71 个作为"未解决"如实发表——这在基准论文中极罕见。
| 赛道 | 代表结果 |
|---|---|
| PRE 过度授权检测 | combined scanner F1=0.654(floor 0.601);held-out judge 0.695 vs scanner 0.648 |
| POST 定位(Who&When Top-1) | GPT-5.5 0.452 vs 最强结构方法 exec-rank 0.211(随机 floor 0.119) |
| POST 检测(SWE-Gym ROC-AUC) | auditable 特征 0.804 vs size 基线 0.663(+0.141——全文唯一通过多重校正的效应) |
| LIVE 25% 前缀(SWE-Gym) | supervised auditable 0.742;无监督 ECOD 0.756;tau-bench 无方法达 0.70 警戒线 |
捷径暴露的活体演示:injecagent 源上,仅凭"声明顺序"规则(不看名称与权限,只标记第一个之后声明的 capability)拿到 F1=1.000——检出全部 510 个多余 capability、零误报。这意味着此前任何在该语料上的高分都可能在度量"语料怎么造的"而非"方法会不会推理"。
两个结构性发现:图检测器 20 种子标准差 0.091-0.164(监督模型的 13-41 倍)——不稳定性被此前文献低估;G-Safeguard 点估计最高(0.828)但与全特征模型不可排序——“榜一"可能是排序噪声。
六、效果优势的根源解释
本文的"效果"是一套方法学发现,根源在两个设计:
- 信息状态分赛道:PRE 扫描器不能上 POST 板不是规则僵化而是原理必然——证据不可得。混排三个状态的方法(如把 LLM judge 与 PRE 扫描器放一列)会产生系统性的虚假可比性。
- 标签过程公开:F1=1.000 的声明顺序规则证明,语料构造过程会泄漏到特征空间。这不是 injecagent 的独特缺陷而是所有合成语料的共性风险——file-level 注入基底同样在 Gold 阶段被门槛拦下。可解释性必须以"标签可审计"为前提,这是本文对评测科学的最大贡献。
因果链:公开标签制作 → 构造捷径可被探针检测 → 高分方法的证据地位被重新分级(judge 在 judge 标注源上 0.362-0.744 vs 在重标注源上 0.990/0.972——标注者与被评方法同源时分数虚高)。
七、必要知识反推
- 领域知识层:Agent 系统的配置格式(crewai/n8n/MCP 的声明结构)与轨迹格式(SWE-Gym/tau-bench)——没有六源语料的领域知识,无法设计跨源统一的任务契约。
- 方法论知识层:异常检测评测的陷阱学(floor/ceiling 分析、构造偏置、种子方差)——作者十年积累的直接复用;多重比较校正;标注者-被评者独立性原则(从众包标注质量研究迁移)。
- 工程知识层:预测缓存与零 API 复现协议;注入故障的图不变量分析(file-level 注入为何留下可检测标记)。
知识融合的关键节点:把"数据集去偏”(CV/NLP 数据质量研究)与"对抗性构造"(安全研究)融合成"可采性门槛"这个可操作的准入协议——失败基准不是丢弃而是降级为诊断工具,这个处理方式本身值得所有基准作者学习。
八、论文中可以提取的通用性灵感
分数在标签生成过程公开之前不可解释(方法论类)
- 证据:声明顺序规则 F1=1.000 揪出语料捷径;judge 在同源标注上分数虚高 30+ 点。
- 推广:任何基于标注数据的评测(招聘测评、内容审核、医学影像 AI)都应先问"标签谁打的、怎么打的、打标签的人/模型与被评系统是否同源"。
证据预算决定方法上限——先问赛道再比方法(机制类)
- 证据:PRE 扫描器原理上无法读 POST 证据;结构特征在 LIVE 可用而 judge 不可用。
- 推广:安全监控(事前策略检查 vs 事中检测 vs 事后取证是三场不同的比赛)、医疗诊断(体检/术中/尸检的信息状态不可互换)、任何"拿 A 阶段方法评 B 阶段能力"的岗位考核错位。
发表"未解决"比发表全部显著更可信(方法论类)
- 证据:71/118 对比如实标注 unresolved;G-Safeguard 的"榜一"被识别为排序噪声。
- 推广:实验报告、竞品分析、尽职调查——主动披露"我没能区分什么"的信息价值高于再堆十个显著结果;审稿人也应把"未解决清单"当作可信度信号。
合成数据要过"构造标记"安检(机制类)
- 证据:file-level 注入因破坏图不变量被只读基线完美检出,主动降级。
- 推广:任何合成训练/评测数据(对抗样本、增广数据、模拟用户)在投入使用前,先用"只看构造方式"的平凡基线测一遍——若平凡基线满分,数据没有测到目标能力。