HomePublications ➤ senevirathna2025fusionrepair

FusionRepair: Iterative Multi-Line APR via Fusion

Jayanath Senevirathna, Ayesh Vininda, Prasad Sandaruwan, Ridwan Shariffdeen, Sandareka Wickramanayake, Nisansa de Silva
IEEE/ACM International Workshop on Automated Program Repair (APR)

Learning-based APR techniques continue to face challenges in generating multi-line patches. We identified two fundamental limitations in existing learning-based APR tools. First, the length of the input sequence in existing APR tools is limited, restricting them from gathering information from compacted code contexts. Second, they fail to capture semantic dependencies among generated patches. We introduce FUSIONREPAIR, a transformer-based approach designed to capture additional context information from broader contexts and fix bugs by knowledge transfer-based patch generation. For this purpose, we have adapted the Fusion-in-Decoder(FiD) architecture to provide an expanded context. We utilize an iterative program repair paradigm to generate patches based on the knowledge of previously generated patches. Our experiment with Defects4J v2.0, shows FUSIONREPAIR can produce 55 single-line fixes and 28 multi-line fixes, identical to the developer patch. Comparison with state-of-the-art tools such as ITER and DEAR shows 35\% and 18\% improvements respectively. Our results show that FUSIONREPAIR has significantly outperformed current state-of-the-art tools in addressing bugs that require multi-line patches.

Keywords: Machine Learning / Deep Learning | Automated Program Repair | Fusion-in-decoder |