paperbot · PL 论文追踪

全部论文 待读 收藏

P2 Minecraft: Automated Mining of Software Bug Fixes with Precise Code Context

Minecraft:面向精确代码上下文的软件缺陷修复自动挖掘
ASE 2023 38th IEEE/ACM International Conference on Automated Software Engineering (ASE)2023匹配度 2/10 · 该论文提出一个缺陷修复数据集,属于软件工程中的缺陷挖掘与程序修复方向,与用户关注的静态分析、LLM/Agent 改进静态分析/形式化验证、浮点程序分析、贝叶斯程序分析等核心方向无直接关联;虽然数据集可能对代码修复任务有支撑作用,但并非用户研究重点。引用 3 inbox
Sai Krishna Avula, Venkatesh Vobbilisetti, Shouvick Mondal
crossref: 2026-09-12dblp: 2026-09-12

AI 速览

一句话:提出 Minecraft 数据集,从多语言项目自动挖掘带精确语句级上下文与修复类型的缺陷修复对,规模达现有数据集四倍。

从 GitHub 等版本控制系统挖掘缺陷修复时,修复位置的代码上下文(修复前后源码)精度难以保证,修复类型识别也很困难。现有数据集存在三点局限:未完整覆盖如今普遍的多语言开源项目;修复粒度仅停留在函数/方法级,缺少行/语句级信息;未考察位于源文件内但处于所有函数之外的修复。本文提出自动化挖掘方案并构建大规模数据集 Minecraft,覆盖 C、C++、Java、Python 等语言的 416 个 GitHub 项目,包含 220 万次提交与 329 万对缺陷修复,总体积 28.8GB,在数据可用性上比现有数据集扩大约四倍。该数据集可为缺陷检测、自动修复及软件质量改进等下游任务提供高质量资源。

问题
现有缺陷修复数据集上下文精度不足、粒度仅到函数/方法级、忽略函数外的文件级修复,且未完整覆盖多语言开源项目,导致数据质量受限。
方法
提出自动化的仓库挖掘方法,从 GitHub 多语言项目中提取修复前后精确的行/语句级代码上下文,并识别缺陷修复类型,据此构建 Minecraft 数据集。
评估
以 416 个 GitHub 项目、2.2M 次提交、3.29M 对缺陷修复、28.8GB 规模构建数据集,并与现有数据集对比,数据量约扩大 4 倍。
原文摘要(Abstract)

Repository mining of bug fixes from version control systems like GitHub is a challenging problem as far as the precision of the bug context is concerned, i.e., source codes immediately preceding and succeeding the fix location. Coupled with this, identification of the type of the bug fix goes a long way towards creating high quality datasets that can be used for several downstream tasks. However, existing bug fix datasets suffer from the following limitations that dilute the data quality. Firstly, they do not focus on multilingual projects in their entirety given that most open-source projects are now multilingual. Secondly, the granularity of the bug fixes are considered only at the function/method level without specifying line/statement level information. Thirdly, bug fixes lying within the scope of a source file but outside any of its constituent functions have not been examined. In this paper, we propose a solution to overcome the aforementioned limitations by introducing a novel and extensive dataset named Minecraft. With a size of 28.8GB (considering 416 GitHub projects encompassing programming languages such as C, C++, Java, and Python, 2.2M commits, 3.29M bug-fix pairs), Minecraft surpasses the existing datasets by 4-fold enlargement in terms of data availability. We believe Minecraft would serve as a valuable resource for various stakeholders in the software development and research communities, empowering them to improve software quality, develop innovative bug detection and auto-fix techniques, and advance the field of software engineering.

链接与引用

DOI 原文 · DBLP

BibTeX
@inproceedings{AvulaVM23,
  title = {Minecraft: Automated Mining of Software Bug Fixes with Precise Code Context},
  author = {Sai Krishna Avula and Venkatesh Vobbilisetti and Shouvick Mondal},
  booktitle = {ASE},
  year = {2023},
  doi = {10.1109/ase56229.2023.00116}
}