Elamur Research⌕
☰
home / papers / 2026 / CascadeFix: Multi-Location Program Repair via Cascading Planning and Generation

CascadeFix: Multi-Location Program Repair via Cascading Planning and Generation

Paper · 2026 · Huan Zhang, Li Kuang, Yang Yang et al.

Summary

Most LLM-based automated program repair (APR) tools handle bugs one location at a time, following line order. They struggle when a single bug must be fixed in several non-contiguous code hunks. On such multi-location bugs, success rates of state-of-the-art methods fall from about 52% to 13%.

CascadeFix addresses this in three steps:

  1. Bug graph. It builds a heterogeneous bug graph with File, Method and Location nodes. Besides standard structural edges, the graph adds three new relations between buggy locations: Use (data/control-flow dependency), Copy (near-identical code whose patch can be reused) and Nearby (neighbouring buggy lines that could mislead the model).
  2. Planning. A graph-driven planning algorithm groups strongly linked locations into clusters, orders the clusters by priority and assigns each a repair operation.
  3. Patch generation. Patches are then produced per cluster, with the LLM prompt enriched by intra-cluster dependencies and by fixes already made in earlier clusters.

On Defects4J (Java), CascadeFix repairs 84 multi-location bugs, 31% more than the best baselines. This shows that explicit dependency modelling and global ordering matter for realistic, multi-hunk repair.

Key points

  • Multi-location bugs make up 62% of Defects4J and 76% of Bugs.jar. Line-order repair can break code, for example by changing a call site before its definition (Closure-64), and can waste LLM calls on identical fixes (seven calls for Time-26).
  • The heterogeneous bug graph has seven edge types: Import, Include, Call, Same-Method, plus the new Use, Copy and Nearby. Copy edges are added when a weighted context and method similarity score exceeds a threshold.
  • Ablation shows planning is the most important component, adding 20 correct fixes with DeepSeek and 15 with GPT. History and dependency context add 8 and 14 more, and repair history helps more than dependency information.
  • The best iteration strategy, 8 patches followed by 2 refined ones, yields 46 correct fixes on Defects4J v1.2 with DeepSeek. This is 4 more than without iteration, at under 6,500 tokens per correct patch.
  • On the Math project, CascadeFix fixes 18 bugs versus 9 for GAMMA. Evaluation covers Java only, and graph construction adds overhead for large codebases.

Our summary of the paper, in our own words — not its text. The work belongs to its authors; read it at the links above.

 Institutions

 Fields, topics and concepts

📚 Shelves 3The field of science this work belongs to (OpenAlex fields).Computer Science · 18,614 worksInformation Systems · 1,730 worksSoftware · 119 works

🧭 Topics 1Research subjects and languages the work is about.Code & programming languages · 168 works

Cite

Cite as Huan Zhang, Li Kuang, Yang Yang, Yilei Fang and Yingjie Xia. 2026. CascadeFix: Multi-Location Program Repair via Cascading Planning and Generation. Findings of the Association for Computational Linguistics: ACL 2026.

The paper itself, not this page. BibTeX from the library's record of the work. DOI 10.18653/v1/2026.findings-acl.1962

@inproceedings{zhang2026cascadefix,
  title = {{CascadeFix: Multi-Location Program Repair via Cascading Planning and Generation}},
  author = {Huan Zhang, Li Kuang, Yang Yang, Yilei Fang and Yingjie Xia},
  booktitle = {Findings of the Association for Computational Linguistics: ACL 2026},
  year = {2026},
  doi = {10.18653/v1/2026.findings-acl.1962},
  url = {https://doi.org/10.18653/v1/2026.findings-acl.1962}
}

References

37 references, 1 of them with a card of ours. ↗ leads to the work, «find» searches for one we have no id for yet.

  1. Ishac Bouzenia, Premkumar Devanbu, and Michael Pradel. 2025. Repairagent: An autonomous, llm-based agent for program repair. In Proceedings of the 2025 IEEE/ACM 47th International Conference on Software Engineering (ICSE), pages 2188–2200. IEEE. find
  2. Aaron Hurst, Adam Lerer, Adam P Goucher, Adam Perelman, Aditya Ramesh, Aidan Clark, AJ Ostrow, Akila Welihinda, Alan Hayes, Alec Radford, and 1 others. 2024. Gpt-4o system card. arXiv preprint arXiv:2410.21276.
  3. Jiajun Jiang, Yingfei Xiong, Hongyu Zhang, and 1 others. 2018. Shaping program repair space with existing patches and similar code. In Proceedings of the 27th ACM SIGSOFT international symposium on software testing and analysis, pages 298–309. find
  4. Nan Jiang, Thibaud Lutellier, and Lin Tan. 2021a. Cure: Code-aware neural machine translation for automatic program repair. In Proceedings of the 2021 IEEE/ACM 43rd International Conference on Software Engineering (ICSE), pages 1161–1173. IEEE. find
  5. Nan Jiang, Thibaud Lutellier, and Lin Tan. 2021b. Cure: Code-aware neural machine translation for automatic program repair. In 2021 IEEE/ACM 43rd International Conference on Software Engineering (ICSE), pages 1161–1173. IEEE. find
  6. Rene Just, Darioush Jalali, and Michael D. Ernst. 2014. Defects4j: A database of existing faults to enable controlled testing studies for java programs. In Proceedings of the 2014 international symposium on software testing and analysis, pages 437–440. find
  7. Dongsun Kim, Jaechang Nam, Jaewoo Song, and 1 others. 2013. Automatic patch generation learned from human-written patches. In Proceedings of the 2013 35th international conference on software engineering (ICSE), pages 802–811. IEEE. find
  8. Jiaolong Kong, Xiaofei Xie, Mingfei Cheng, and 1 others. 2024. Contrastrepair: Enhancing conversation-based automated program repair via contrastive test case pairs. arXiv preprint arXiv:2403.01971. — [arXiv:2403.01971](https://arxiv.org/abs/2403.01971) find
  9. Xuan-Bach D. Le, Duc-Hiep Chu, David Lo, and 1 others. 2017. S3: Syntax-and semantic-guided repair synthesis via programming by examples. In Proceedings of the 2017 11th Joint Meeting on Foundations of Software Engineering, pages 593–604. find
  10. Fengjie Li, Jiajun Jiang, Jiajun Sun, and 1 others. 2025a. Hybrid automated program repair by combining large language models and program analysis. ACM Transactions on Software Engineering and Methodology, 34(7):1–28. find
  11. Yi Li, Shaohua Wang, and T. N. Nguyen. 2022. Dear: A novel deep learning-based approach for automated program repair. In Proceedings of the 44th international conference on software engineering, pages 511–523. find
  12. Yi Li, Shaohua Wang, and Tien N Nguyen. 2020. Dlfix: Context-based code transformation learning for automated program repair. In Proceedings of the ACM/IEEE 42nd international conference on software engineering, pages 602–614. find
  13. Yingling Li, Muxin slogans Cai, Junjie Chen, and 1 others. 2025b. Context-aware prompting for llm-based program repair. Automated Software Engineering, 32(2):42. find
  14. Aixin Liu, Bei Feng, Bing Xue, Bingxuan Wang, Bochao Wu, Chengda Lu, Chenggang Zhao, Chengqi Deng, Chenyu Zhang, Chong Ruan, and 1 others. 2024. Deepseek-v3 technical report. arXiv preprint arXiv:2412.19437. find
  15. Kui Liu, Anil Koyuncu, Dongsun Kim, and 1 others. 2019a. Avatar: Fixing semantic bugs with fix patterns of static analysis violations. In Proceedings of the 2019 IEEE 26th International Conference on Software Analysis, Evolution and Reengineering (SANER), pages 1–12. IEEE. find
  16. Kui Liu, Anil Koyuncu, Dongsun Kim, and 1 others. 2019b. Tbar: Revisiting template-based automated program repair. In Proceedings of the 28th ACM SIG-SOFT international symposium on software testing and analysis, pages 31–42. find
  17. Qi Xin, Haojun Wu, Jinran Tang, Xinyu Liu, Steven P Reiss, and Jifeng Xuan. 2024. Detecting, creating, repairing, and understanding indivisible multi-hunk bugs. Proceedings of the ACM on Software Engineering, 1(FSE):2747–2770. find
  18. Ripon K. Saha, Yingjun Lyu, Wing Lam, and 1 others. 2018. Bugs.jar: A large-scale, diverse dataset of real-world java bugs. In Proceedings of the 15th International Conference on Mining Software Repositories, pages 10–13. find
  19. Jifeng Xuan, Matias Martinez, Federico Demarco, and 1 others. 2016. Nopol: Automatic repair of conditional statement bugs in java programs. IEEE Transactions on Software Engineering, 43(1):34–55. find
  20. S. Saha. 2019. Harnessing evolution for multi-hunk program repair. In Proceedings of the 2019 IEEE/ACM 41st International Conference on Software Engineering (ICSE), pages 13–24. IEEE. find
  21. He Ye, Matias Martinez, Xiapu Luo, and 1 others. 2022. Selfapr: Self-supervised program repair with test execution diagnostics. In Proceedings of the 37th IEEE/ACM International Conference on Automated Software Engineering, pages 1–13. find
  22. Andre Silva, Sen Fang, and Martin Monperrus. 2025. Repairllama: Efficient representations and fine-tuned adapters for program repair. IEEE Transactions on Software Engineering, 51(8):2366–2380. find
  23. Xunzhu Tang, Jiechao Gao, Jin Xu, Tiezhu Sun, Yewei Song, Saad Ezzini, Wendkûuni C. Ouédraogo, Jacques Klein, and Tegawendé F. Bissyandé. 2025. SynFix: Dependency-aware program repair via Re-lationGraph analysis. In Findings of the Association for Computational Linguistics: ACL 2025, pages 4878–4894… find
  24. C. P. Wong, P. Santiesteban, C. Kästner, and 1 others. 2021. Varfix: Balancing edit expressiveness and search effectiveness in automated program repair. In Proceedings of the 29th ACM Joint Meeting on European Software Engineering Conference and Symposium on the Foundations of Software Engineering,… find
  25. Chunqiu Steven Xia, Yifeng Ding, and Lingming Zhang. 2023a. The plastic surgery hypothesis in the era of large language models. In Proceedings of the 2023 38th IEEE/ACM International Conference on Automated Software Engineering (ASE), pages 522– 534. IEEE. find
  26. Chunqiu Steven Xia, Yuxiang Wei, and Lingming Zhang. 2023b. Automated program repair in the era of large pre-trained language models. In 2023 IEEE/ACM 45th International Conference on Software Engineering (ICSE), pages 1482–1494. IEEE. find
  27. Chunqiu Steven Xia and Lingming Zhang. 2022. Less training, more repairing please: revisiting automated program repair via zero-shot learning. In Proceedings of the 30th ACM Joint European Software Engineering Conference and Symposium on the Foundations of Software Engineering, pages 959–971. find
  28. Chunqiu Steven Xia and Lingming Zhang. 2024. Automated program repair via conversation: Fixing 162 out of 337 bugs for $0.42 each using chatgpt. In Proceedings of the 33rd ACM SIGSOFT International Symposium on Software Testing and Analysis, pages 819–831. find
  29. He Ye and Martin Monperrus. 2024. Iter: Iterative neural repair for multi-location patches. In Proceedings of the 46th IEEE/ACM International Conference on Software Engineering, pages 1–13. find
  30. Xin Yin, Chao Ni, Shaohua Wang, and 1 others. 2024. Thinkrepair: Self-directed automated program repair. In Proceedings of the 33rd ACM SIGSOFT International Symposium on Software Testing and Analysis, pages 1274–1286. find
  31. Wei Yuan, Quanjun Zhang, Tieke He, and 1 others. 2022. Circle: Continual repair across programming languages. In Proceedings of the 31st ACM SIG-SOFT International Symposium on Software Testing and Analysis, pages 678–690. find
  32. Yuan Yuan and Wolfgang Banzhaf. 2018. Arja: Automated repair of java programs via multi-objective genetic programming. IEEE Transactions on Software Engineering, 46(10):1040–1067. find
  33. Yuan Yuan and Wolfgang Banzhaf. 2020. Arja: Automated repair of java programs via multi-objective genetic programming. IEEE Transactions on Software Engineering, 46(10):1040–1067. find
  34. Huan Zhang, Qingyang Yan, Weihuan Min, Chenyuan Zhang, Li Kuang, and Yingjie Xia. 2025. Evoapr: Enhancing large language models for automatic program repair with genetic algorithm and dynamic lora. In 2025 IEEE International Conference on Web Services (ICWS), pages 946–956. IEEE. find
  35. Quanjun Zhang, Chunrong Fang, Tongke Zhang, and 1 others. 2023. Gamma: Revisiting template-based automated program repair via mask prediction. In Proceedings of the 2023 38th IEEE/ACM International Conference on Automated Software Engineering (ASE), pages 535–547. IEEE. find
  36. Hao Zhong and Zhendong Su. 2015. An empirical study on real bug fixes. In Proceedings of the 2015 IEEE/ACM 37th IEEE International Conference on Software Engineering, volume 1, pages 913–923. IEEE. find
  37. Qihao Zhu, Zeyu Sun, Yuan-an Xiao, and 1 others. 2021. A syntax-guided edit decoder for neural program repair. In Proceedings of the 29th ACM joint meeting on European software engineering conference and symposium on the foundations of software engineering, pages 341–353. find

Updated

↑ back to top

This page in Markdown → https://md.research.elamur.ai/free/en/papers/zhang-2026-cascadefix-multi-location-program-repair/