Enhancing Automated Program Repair with Solution Design
Not on the map. Why?
Abstract (arXiv)
Automatic Program Repair (APR) endeavors to autonomously rectify issues within specific projects, which generally encompasses three categories of tasks: bug resolution, new feature development, and feature enhancement. Despite extensive research proposing various methodologies, their efficacy in addressing real issues remains unsatisfactory. It's worth noting that, typically, engineers have design rationales (DR) on solution-planed solutions and a set of underlying reasons-before they start patching code. In open-source projects, these DRs are frequently captured in issue logs through project management tools like Jira. This raises a compelling question: How can we leverage DR scattered across the issue logs to efficiently enhance APR? To investigate this premise, we introduce DRCodePilot, an approach designed to augment GPT-4-Turbo's APR capabilities by incorporating DR into the prompt instruction. Furthermore, given GPT-4's constraints in fully grasping the broader project context and occasional shortcomings in generating precise identifiers, we have devised a feedback-based self-reflective framework, in which we prompt GPT-4 to reconsider and refine its outputs by referencing a provided patch and suggested identifiers. We have established a benchmark comprising 938 issue-patch pairs sourced from two open-source repositories hosted on GitHub and Jira. Our experimental results are impressive: DRCodePilot achieves a full-match ratio that is a remarkable 4.7x higher than when GPT-4 is utilized directly. Additionally, the CodeBLEU scores also exhibit promising enhancements. Moreover, our findings reveal that the standalone application of DR can yield promising increase in the full-match ratio across CodeLlama, GPT-3.5, and GPT-4 within our benchmark suite. We believe that our DRCodePilot initiative heralds a novel human-in-the-loop avenue for advancing the field of APR.
Key facts. Cited by 8 papers in the map (data through 14 Oct 2026). Builds on 30 of its 72 references that are in the map. First posted on arXiv 22 Aug 2024.
Builds on
30 of 72 references.
References · 30
- 2023Reflexion: Language Agents with Verbal Reinforcement Learningcited by 4,276
- 2023Lost in the Middle: How Language Models Use Long Contextscited by 3,455
- 2023Code Llama: Open Foundation Models for Codecited by 2,139
- 2024StarCoder 2 and The Stack v2: The Next Generationcited by 502
- 2020CodeBLEU: a Method for Automatic Evaluation of Code Synthesiscited by 479
- 2023CodeT5+: Open Code Large Language Models for Code Understanding and Generationcited by 333
- 2024AutoCodeRover: Autonomous Program Improvementcited by 278
- 2023Better Zero-Shot Reasoning with Role-Play Promptingcited by 223
- 2023Keep the Conversation Going: Fixing 162 out of 337 bugs for 0.42 each using ChatGPTcited by 125
- 2023Impact of Code Language Models on Automated Program Repaircited by 85
- 2023Towards Mitigating Hallucination in Large Language Models via Self-Reflectioncited by 81
- 2019TBar: Revisiting Template-based Automated Program Repaircited by 65
18 more
- 2023RepairLLaMA: Efficient Representations and Fine-Tuned Adapters for Program Repaircited by 50
- 2024A Deep Dive into Large Language Models for Automated Bug Localization and Repaircited by 39
- 2018Nopol: Automatic Repair of Conditional Statement Bugs in Java Programscited by 32
- 2014Learning Natural Coding Conventionscited by 29
- 2020On the Efficiency of Test Suite based Program Repair: A Systematic Assessment of 16 Automated Repair Systems for Java Programscited by 16
- 2018Dissection of a Bug Dataset: Anatomy of 395 Patches from Defects4Jcited by 14
- 2023A Survey on Automated Program Repair Techniquescited by 13
- 2019iFixR: Bug Report driven Program Repaircited by 11
- 2019Analysis and Detection of Information Types of Open Source Software Issue Discussionscited by 9
- 2021Learning to Describe Solutions for Bug Reports Based on Developer Discussionscited by 5
- 2021ISPY: Automatic Issue-Solution Pair Extraction from Community Live Chatscited by 3
- 2022Using Developer Discussions to Guide Fixing Bugs in Softwarecited by 3
- 2023Argument Mining using BERT and Self-Attention based Embeddingscited by 3
- 2017Rationale in Development Chat Messages: An Exploratory Studycited by 2
- 2021Extracting Rationale for Open Source Software Development Decisions -- A Study of Python Email Archivescited by 2
- 2021A First Look at Developers' Live Chat on Gittercited by 2
- 2021Recommending Bug-fixing Comments from Issue Tracking Discussions in Support of Bug Repaircited by 1
- 2024A Novel Approach for Automated Design Information Mining from Issue Logscited by 1
Built on by
Citing papers per year: 2025: 5; 2026: 3.
8 papers.
- 2025Issue Localization via LLM-Driven Iterative Code Graph Searchingcited by 22
- 2025A Comprehensive Survey on Benchmarks and Solutions in Software Engineering of LLM-Empowered Agentic Systemcited by 15
- 2025How Safe Are AI-Generated Patches? A Large-scale Study on Security Risks in LLM and Agentic Automated Program Repair on SWE-benchcited by 5
- 2026SVRepair: Structured Visual Reasoning for Automated Program Repaircited by 2
- 2026FailureMem: A Failure-Aware Multimodal Framework for Autonomous Software Repaircited by 2
- 2025Automated detection of atomicity violations in large-scale systemscited by 1
- 2025Collaborative Agents for Automated Program Repair in Rubycited by 1
- 2026Improving MPI Error Detection and Repair with Large Language Models and Bug Referencescited by 0
- 2026Improving MPI Error Detection and Repair with Large Language Models and Bug References2 Apr 2026
- 2026FailureMem: A Failure-Aware Multimodal Framework for Autonomous Software Repair18 Mar 2026
- 2026SVRepair: Structured Visual Reasoning for Automated Program Repair5 Feb 2026
- 2025Collaborative Agents for Automated Program Repair in Ruby6 Nov 2025
- 2025A Comprehensive Survey on Benchmarks and Solutions in Software Engineering of LLM-Empowered Agentic System10 Oct 2025
- 2025How Safe Are AI-Generated Patches? A Large-scale Study on Security Risks in LLM and Agentic Automated Program Repair on SWE-bench30 Jun 2025
- 2025Automated detection of atomicity violations in large-scale systems1 Apr 2025
- 2025Issue Localization via LLM-Driven Iterative Code Graph Searching28 Mar 2025