论文
代理代码审查有帮助吗?挖掘开发者对 CodeRabbit 野外评论的反馈
Is Agentic Code Review Helpful? Mining Developers' Feedback to CodeRabbit Reviews in the Wild
摘要
代理代码审查(即自主代理对拉取请求提供代码审查评论)越来越多地集成到开发工作流程中,但关于开发人员在实践中如何响应此类评论的经验证据有限。在本文中,我们以 CodeRabbit 作为案例研究,对代理代码审查进行了实证研究。通过对 239 个 GitHub 存储库中 10,191 个拉取请求的 31,073 对代码审查和开发人员反馈进行实证研究,我们的结果表明,代理审查收到的评价褒贬不一:36.4% 被接受,7.3% 引发讨论,而 56.3% 被拒绝。拒绝主要与无效建议有关,这些建议是误报、冗余或超出范围,以及与开发人员意图和编码实践不一致。我们进一步发现,代理评论往往更关注功能问题,而不是与可进化性相关的评论,但它们更有可能是无效的。为了提高评审实践的有效性,我们探索了各种基于 LLM 的方法来预测评审拒绝。我们发现基于轻量级学习的方法的 F1 分数高达 76%,这表明代码审查及其相应反馈之间存在可学习的模式。我们的结果突出了 CodeRabbit 代理代码审查的现状,显示了改进的机会差距,以及阻碍其有效性的缺点。