DynaFix: Iterative Automated Program Repair Driven by Execution-Level Dynamic Information
Not on the map. Why?
Abstract (arXiv)
Automated Program Repair (APR) aims to automatically generate correct patches for buggy programs. Recent approaches leveraging large language models (LLMs) have shown promise but face limitations. Most rely solely on static analysis, ignoring runtime behaviors. Some attempt to incorporate dynamic signals, but these are often restricted to training or fine-tuning, or injected only once into the repair prompt, without iterative use. This fails to fully capture program execution. Current iterative repair frameworks typically rely on coarse-grained feedback, such as pass/fail results or exception types, and do not leverage fine-grained execution-level information effectively. As a result, models struggle to simulate human stepwise debugging, limiting their effectiveness in multi-step reasoning and complex bug repair. To address these challenges, we propose DynaFix, an execution-level dynamic information-driven APR method that iteratively leverages runtime information to refine the repair process. In each repair round, DynaFix captures execution-level dynamic information such as variable states, control-flow paths, and call stacks, transforming them into structured prompts to guide LLMs in generating candidate patches. If a patch fails validation, DynaFix re-executes the modified program to collect new execution information for the next attempt. This iterative loop incrementally improves patches based on updated feedback, similar to the stepwise debugging practices of human developers. We evaluate DynaFix on the Defects4J v1.2 and v2.0 benchmarks. DynaFix repairs 186 single-function bugs, a 10% improvement over state-of-the-art baselines, including 38 bugs previously unrepaired. It achieves correct patches within at most 35 attempts, reducing the patch search space by 70% compared with existing methods, thereby demonstrating both effectiveness and efficiency in repairing complex bugs.
Key facts. Cited by 3 papers in the map (data through 7 Oct 2026). Builds on 30 of its 69 references that are in the map. First posted on arXiv 31 Dec 2025.
Builds on
30 of 69 references.
References · 30
- 2023Lost in the Middle: How Language Models Use Long Contextscited by 3,383
- 2014Sequence to Sequence Learning with Neural Networkscited by 2,974
- 2023Teaching Large Language Models to Self-Debugcited by 963
- 2023RepoBench: Benchmarking Repository-Level Code Auto-Completion Systemscited by 346
- 2024RepairAgent: An Autonomous, LLM-Based Agent for Program Repaircited by 225
- 2018SequenceR: Sequence-to-Sequence Learning for End-to-End Program Repaircited by 144
- 2023Keep the Conversation Going: Fixing 162 out of 337 bugs for 0.42 each using ChatGPTcited by 125
- 2024Debug like a Human: A Large Language Model Debugger via Verifying Runtime Execution Step-by-stepcited by 123
- 2021CURE: Code-Aware Neural Machine Translation for Automatic Program Repaircited by 85
- 2019TBar: Revisiting Template-based Automated Program Repaircited by 64
- 2021A Syntax-Guided Edit Decoder for Neural Program Repaircited by 57
- 2021Neural Program Repair with Execution-based Backpropagationcited by 50
18 more
- 2023Explainable Automated Debugging via Large Language Model-driven Scientific Debuggingcited by 40
- 2022SelfAPR: Self-supervised Program Repair with Test Execution Diagnosticscited by 33
- 2018Nopol: Automatic Repair of Conditional Statement Bugs in Java Programscited by 32
- 2023TRACED: Execution-aware Pre-training for Source Codecited by 27
- 2018AVATAR : Fixing Semantic Bugs with Fix Patterns of Static Analysis Violationscited by 22
- 2023GAMMA: Revisiting Template-based Automated Program Repair via Mask Predictioncited by 22
- 2024Hybrid Automated Program Repair by Combining Large Language Models and Program Analysiscited by 22
- 2018Practical Program Repair via Bytecode Mutationcited by 19
- 2023ITER: Iterative Neural Repair for Multi-Location Patchescited by 16
- 2016Precise Condition Synthesis for Program Repaircited by 13
- 2024Aligning the Objective of LLM-based Program Repaircited by 12
- 2024Are Large Language Models Memorizing Bug Benchmarks?cited by 11
- 2025Towards Effectively Leveraging Execution Traces for Program Repair with Code LLMscited by 11
- 2023Enhancing Automated Program Repair through Fine-tuning and Prompt Engineeringcited by 10
- 2025Repair Ingredients Are All You Need: Improving Large Language Model-Based Program Repair via Repair Ingredients Searchcited by 8
- 2024Towards Reliable Evaluation of Neural Program Repair with Natural Robustness Testingcited by 5
- 2024Integrating Various Software Artifacts for Better LLM-based Bug Localization and Program Repaircited by 4
- 2021Efficient and Expressive Bytecode-Level Instrumentation for Java Programscited by 1
Built on by
Citing papers per year: 2026: 3.
3 papers.
- 2026RepoRescue: An Empirical Study of LLM Agents on Whole-Repository Compatibility Rescuecited by 1
- 2026Multi-Perspective Agentic Program Repair via Code Property Graphs and Temporal Execution Graphscited by 1
- 2026MultiFixer: A Coordinator-Proposer Based Multi-Agent Framework For Fixing Multi-Hunk Bugscited by 0
- 2026MultiFixer: A Coordinator-Proposer Based Multi-Agent Framework For Fixing Multi-Hunk Bugs29 Jul 2026
- 2026Multi-Perspective Agentic Program Repair via Code Property Graphs and Temporal Execution Graphs14 Jul 2026
- 2026RepoRescue: An Empirical Study of LLM Agents on Whole-Repository Compatibility Rescue1 Jul 2026