论文
CheckerBench:长任务 Agent 能否合成静态分析检查器?
CheckerBench: Can Long-Horizon Agents Synthesize Static-Analysis Checkers?
摘要
静态分析检查器综合需要智能体来解释缺陷规范、检查存储库、实现分析器特定的逻辑,并通过重复编译和分析反馈来完善检查器。现有的编码-智能体基准测试侧重于补丁生成或漏洞检测等任务,很少评估智能体是否可以从头到尾在存储库中开发工作检查器。我们推出了 CheckerBench,这是一个包含 300 个任务的可执行基准测试,这些任务源自 167 个存储库、85 个 CWE 和 5 个语言生态系统的 297 个 CVE。每个任务都包括易受攻击和修复的修订、固定分析环境和检查器 脚手架。我们进一步介绍了 CheckerLab,这是一个通用的评估框架,可以独立重建提交的检查器并测量易受攻击的诊断对比度、补丁定位、误报和工具使用。在 21 个型号-Harness 配置和每个配置 3 个独立重复中,平均 Pass@1 为 32.30%,而最好的达到 45.33%。这些结果表明,对于当前的智能体编码来说,可靠、可重用的检查器开发仍然具有挑战性。
