在当今的编程环境中,代码代理能够自动生成完整的拉取请求,导致实践者们对代码审查的作用产生了明显的分歧。争论的焦点包括代码审查是否成为瓶颈、人类审查是否仍然必要,以及这种变化是否悄然削弱了人类对代码的理解。现有的仓库挖掘研究主要测量表面趋势,但很少解释其背后的机制,且这些趋势本身往往不稳定。
通过观察公共 GitHub 活动,我们发现代理生成的拉取请求被审查的频率较低,合并速度更快,且讨论较少。然而,在不同的分析选择下,这些趋势的方向会发生翻转,表明虽然变化的痕迹清晰,但原因并不明确。
为了揭示这些机制,我们将实践者的话语大规模合成成一个解释性理论:我们收集了38,709份灰色文献(工程博客和 Reddit 讨论),筛选出与代码审查相关的文献,并利用 LLM 辅助管道对 3,100 个样本进行了编码,构建了一个包含26个构念和67个关系(64个有向,3个有争议)的因果模型。
该理论的核心观点是,审查过程是决定编码代理对软件影响的控制点,而人工智能并不能简单地改变这种影响的性质:影响的方向由团队通过其人类专家的知识和审查过程的结构来设定。该理论明确了不同的竞争立场,并将“人工智能正在改变代码审查”转化为可验证的命题,具有明确的构念和调节变量。
此外,我们还提供了底层的 LLM 辅助灰色文献理论构建方法,作为软件工程研究的可扩展模板,并进行了公开实现。
博主点评: 本文深刻探讨了人工智能在代码审查中的作用,特别是通过实践者的声音揭示了潜在的因果关系。尽管 AI 的引入可能简化了某些过程,但人类的经验和审查机制仍然至关重要,值得软件工程师认真思考其影响。