ChatPaper.aiChatPaper

GraphLocator: Ragionamento causale guidato da grafi per la localizzazione di problemi

GraphLocator: Graph-guided Causal Reasoning for Issue Localization

December 27, 2025
Autori: Wei Liu, Chao Peng, Pengfei Gao, Aofan Liu, Wei Zhang, Haiyan Zhao, Zhi Jin
cs.AI

Abstract

Il compito di localizzazione dei problemi mira a identificare le posizioni in un repository software che richiedono modifiche data una descrizione in linguaggio naturale del problema. Questo compito è fondamentale ma impegnativo nell'ingegneria del software automatizzata a causa del divario semantico tra la descrizione del problema e l'implementazione del codice sorgente. Questo divario si manifesta come due disallineamenti: (1) disallineamenti sintomo-causa, in cui le descrizioni non rivelano esplicitamente le cause profonde sottostanti; (2) disallineamenti uno-a-molti, in cui un singolo problema corrisponde a multiple entità di codice interdipendenti. Per affrontare questi due disallineamenti, proponiamo GraphLocator, un approccio che mitiga i disallineamenti sintomo-causa attraverso la scoperta di strutture causali e risolve i disallineamenti uno-a-molti mediante il disaccoppiamento dinamico dei problemi. L'artefatto chiave è il grafo causale dei problemi (CIG), in cui i vertici rappresentano i sotto-problemi scoperti insieme alle loro entità di codice associate, e gli archi codificano le dipendenze causali tra di essi. Il flusso di lavoro di GraphLocator consiste in due fasi: localizzazione dei vertici-sintomo e scoperta dinamica del CIG; esso identifica prima le posizioni dei sintomi sul grafo del repository, quindi espande dinamicamente il CIG ragionando iterativamente sui vertici adiacenti. Esperimenti su tre dataset del mondo reale dimostrano l'efficacia di GraphLocator: (1) Rispetto ai baseline, GraphLocator raggiunge una localizzazione più accurata con miglioramenti medi di +19.49% nella recall a livello di funzione e +11.89% nella precisione. (2) GraphLocator supera i baseline sia negli scenari di disallineamento sintomo-causa che uno-a-molti, ottenendo un miglioramento della recall di +16.44% e +19.18%, e un miglioramento della precisione di +7.78% e +13.23%, rispettivamente. (3) Il CIG generato da GraphLocator produce il miglioramento relativo più alto, risultando in un aumento del 28.74% delle prestazioni sul compito di risoluzione a valle.
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.
PDF43March 23, 2026