Patch correctness assessment in automated program repair based on the impact of patches on production and test code
Ali Ghanbari, Andrian Marcus
Abstract
Test-based generate-and-validate automated program repair (APR) systems often generate many patches that pass the test suite without fixing the bug. The generated patches must be manually inspected by the developers, so previous research proposed various techniques for automatic correctness assessment of APR-generated patches. Among them, dynamic patch correctness assessment techniques rely on the assumption that, when running the originally passing test cases, the correct patches will not alter the program behavior in a significant way, e.g., removing the code implementing correct functionality of the program. In this paper, we propose and evaluate a novel technique, named Shibboleth, for automatic correctness assessment of the patches generated by test-based generate-andvalidate APR systems. Unlike existing works, the impact of the patches is captured along three complementary facets, allowing more effective patch correctness assessment. Specifically, we measure the impact of patches on both production code (via syntactic and semantic similarity) and test code (via code coverage of passing tests) to separate the patches that result in similar programs and that do not delete desired program elements. Shibboleth assesses the correctness of patches via both ranking and classification. We evaluated Shibboleth on 1,871 patches, generated by 29 Java-based APR systems for Defects4J programs. The technique outperforms state-of-the-art ranking and classification techniques. Specifically, in our ranking data set, in 43% (66%) of the cases, Shibboleth ranks the correct patch in top-1 (top-2) positions, and in classification mode applied on our classification data set, it achieves an accuracy and F1-score of 0.887 and 0.852, respectively. CCS CONCEPTS • Software and its engineering → Software testing and debugging.
Ask about this paper
Your agent reads all of it.
Lune indexed this paper to the last equation, along with the top-tier papers that cite it. Ask a question and the answer quotes them.
Cited by top-tier papers7
- Automated Program Repair from Fuzzing PerspectiveYoungjae Kim, Seungheon Han, Askar Yeltayuly Khamit, Jooyong YiISSTA 2023 · 6 citations
- Enhancing APR with PRISM: A Semantic-Based Approach to Overfitting Patch DetectionDowon Song, Hakjoo OhOOPSLA 2025 · 2 citations
- Revisiting Unnaturalness for Automated Program Repair in the Era of Large Language ModelsAidan Z. H. Yang, Sophia Kolak, Vincent J. Hellendoorn, Ruben Martins et al.ICSE 2025 · 2 citations
- Enhancing the Efficiency of Automated Program Repair via Greybox AnalysisYoungjae Kim, Yechan Park, Seungheon Han, Jooyong YiASE 2024 · 1 citation
- Show Me Why It's Correct: Saving 1/3 of Debugging Time in Program Repair with Interactive Runtime ComparisonRuixin Wang, Zhongkai Zhao, Le Fang, Nan Jiang et al.OOPSLA 2025
Builds on3
- Evaluating Representation Learning of Code Changes for Predicting Patch Correctness in Program RepairHaoye Tian, Kui Liu, Abdoul Kader Kaboré, Anil Koyuncu et al.ASE 2020 · 81 citations
- Automated Patch Correctness Assessment: How Far are We?Shangwen Wang, Ming Wen, Bo Lin, Hongjun Wu et al.ASE 2020 · 77 citations
- Fast and Precise On-the-fly Patch Validation for AllLingchao Chen, Yicheng Ouyang, Lingming ZhangICSE 2021 · 24 citations
Related papers
- On the Effectiveness of Unified Debugging: An Extensive Study on 16 Program Repair SystemsSamuel Benton, Xia Li, Yiling Lou, Lingming ZhangASE 2020 · 35 citations
- A Large-Scale Empirical Review of Patch Correctness Checking ApproachesJun Yang, Yuehan Wang, Yiling Lou, Ming Wen et al.FSE 2023 · 11 citations
- Benchmarking Automated Program Repair: An Extensive Study on Both Real-World and Artificial BugsYicheng Ouyang, Jun Yang, Lingming ZhangISSTA 2024 · 8 citations
- Is this Change the Answer to that Problem?: Correlating Descriptions of Bug and Code Changes for Evaluating Patch CorrectnessHaoye Tian, Xunzhu Tang, Andrew Habib, Shangwen Wang et al.ASE 2022 · 11 citations
- On the efficiency of test suite based program repair: A Systematic Assessment of 16 Automated Repair Systems for Java ProgramsKui Liu, Shangwen Wang, Anil Koyuncu, Kisub Kim et al.ICSE 2020 · 116 citations
