GraphLocator : Raisonnement causal guidé par les graphes pour la localisation des défauts
GraphLocator: Graph-guided Causal Reasoning for Issue Localization
December 27, 2025
papers.authors: Wei Liu, Chao Peng, Pengfei Gao, Aofan Liu, Wei Zhang, Haiyan Zhao, Zhi Jin
cs.AI
papers.abstract
La tâche de localisation des problèmes vise à identifier les emplacements d'un dépôt de logiciels nécessitant des modifications à partir d'une description en langage naturel d'un problème. Cette tâche est fondamentale mais difficile dans l'ingénierie logicielle automatisée en raison du fossé sémantique entre la description du problème et l'implémentation du code source. Ce fossé se manifeste par deux inadéquations : (1) les inadéquations symptôme-cause, où les descriptions ne révèlent pas explicitement les causes racines sous-jacentes ; (2) les inadéquations un-à-plusieurs, où un seul problème correspond à plusieurs entités de code interdépendantes. Pour résoudre ces deux inadéquations, nous proposons GraphLocator, une approche qui atténue les inadéquations symptôme-cause par la découverte de structure causale et résout les inadéquations un-à-plusieurs via un désentrelacement dynamique des problèmes. L'artefact clé est le graphe causal de problèmes (CIG), dans lequel les sommets représentent les sous-problèmes découverts ainsi que leurs entités de code associées, et les arêtes encodent les dépendances causales entre eux. Le flux de travail de GraphLocator se compose de deux phases : la localisation des sommets symptômes et la découverte dynamique du CIG ; il identifie d'abord les emplacements des symptômes sur le graphe du dépôt, puis étend dynamiquement le CIG en raisonnant itérativement sur les sommets voisins. Les expériences sur trois ensembles de données réels démontrent l'efficacité de GraphLocator : (1) Par rapport aux lignes de base, GraphLocator achieve une localisation plus précise avec des améliorations moyennes de +19,49% en rappel au niveau fonction et de +11,89% en précision. (2) GraphLocator surpasse les lignes de base à la fois dans les scénarios d'inadéquation symptôme-cause et un-à-plusieurs, obtenant une amélioration du rappel de +16,44% et +19,18%, et une amélioration de la précision de +7,78% et +13,23%, respectivement. (3) Le CIG généré par GraphLocator produit l'amélioration relative la plus élevée, entraînant une augmentation de 28,74% des performances sur la tâche de résolution en aval.
English
The issue localization task aims to identify the locations in a software repository that requires modification given a natural language issue description. This task is fundamental yet challenging in automated software engineering due to the semantic gap between issue description and source code implementation. This gap manifests as two mismatches:(1) symptom-to-cause mismatches, where descriptions do not explicitly reveal underlying root causes; (2) one-to-many mismatches, where a single issue corresponds to multiple interdependent code entities. To address these two mismatches, we propose GraphLocator, an approach that mitigates symptom-to-cause mismatches through causal structure discovering and resolves one-to-many mismatches via dynamic issue disentangling. The key artifact is the causal issue graph (CIG), in which vertices represent discovered sub-issues along with their associated code entities, and edges encode the causal dependencies between them. The workflow of GraphLocator consists of two phases: symptom vertices locating and dynamic CIG discovering; it first identifies symptom locations on the repository graph, then dynamically expands the CIG by iteratively reasoning over neighboring vertices. Experiments on three real-world datasets demonstrates the effectiveness of GraphLocator: (1) Compared with baselines, GraphLocator achieves more accurate localization with average improvements of +19.49% in function-level recall and +11.89% in precision. (2) GraphLocator outperforms baselines on both symptom-to-cause and one-to-many mismatch scenarios, achieving recall improvement of +16.44% and +19.18%, precision improvement of +7.78% and +13.23%, respectively. (3) The CIG generated by GraphLocator yields the highest relative improvement, resulting in a 28.74% increase in performance on downstream resolving task.