GraphLocator: Graf-gestuurd causaal redeneren voor probleemlokalisatie
GraphLocator: Graph-guided Causal Reasoning for Issue Localization
December 27, 2025
Auteurs: Wei Liu, Chao Peng, Pengfei Gao, Aofan Liu, Wei Zhang, Haiyan Zhao, Zhi Jin
cs.AI
Samenvatting
Het taak van issuelokalisatie heeft als doel de locaties in een softwarerepository te identificeren die wijziging vereisen op basis van een beschrijving van het probleem in natuurlijke taal. Deze taak is fundamenteel maar uitdagend binnen geautomatiseerde software-engineering vanwege de semantische kloof tussen probleembeschrijving en broncode-implementatie. Deze kloof manifesteert zich als twee mismatches: (1) symptoom-naar-oorzaak mismatches, waarbij beschrijvingen de onderliggende hoofdoorzaken niet expliciet onthullen; (2) één-op-veel mismatches, waarbij een enkel probleem correspondeert met meerdere onderling afhankelijke code-entiteiten. Om deze twee mismatches aan te pakken, stellen we GraphLocator voor, een benadering die symptoom-naar-oorzaak mismatches vermindert door causale structuurontdekking en één-op-veel mismatches oplost via dynamische probleemontrafeling. Het belangrijkste artefact is de causale probleemgraaf (CIG), waarin vertices de ontdekte subproblemen samen met hun bijbehorende code-entiteiten vertegenwoordigen, en edges de causale afhankelijkheden daartussen coderen. De workflow van GraphLocator bestaat uit twee fasen: lokalisatie van symptoomvertices en dynamische CIG-ontdekking; het identificeert eerst symptoomlocaties op de repositorygraaf, breidt vervolgens dynamisch de CIG uit door iteratief te redeneren over aangrenzende vertices. Experimenten op drie real-world datasets tonen de effectiviteit van GraphLocator aan: (1) Vergeleken met baseline-methoden behaalt GraphLocator nauwkeurigere lokalisatie met gemiddelde verbeteringen van +19,49% in recall op functieniveau en +11,89% in precisie. (2) GraphLocator overtreft de baseline-methoden in zowel symptoom-naar-oorzaak als één-op-veel mismatch-scenario's, met recallverbeteringen van respectievelijk +16,44% en +19,18%, en precisieverbeteringen van +7,78% en +13,23%. (3) De door GraphLocator gegenereerde CIG resulteert in de hoogste relatieve verbetering, wat leidt tot een prestatieverhoging van 28,74% bij de daaropvolgende oplossingstaak.
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.