Table of Contents
Fetching ...

RefFilter: Improving Semantic Conflict Detection via Refactoring-Aware Static Analysis

Victor Lira, Paulo Borba, Rodrigo Bonifácio, Galileu Santos e Matheus barbosa

TL;DR

RefFilter addresses noisy semantic interference reports in code merges by adding a refactoring-aware filtering stage that uses RefactoringMiner and ReExtractor+ to identify behavior-preserving changes. It operates as a post-processing layer on top of lightweight static detectors, aligning lines and filtering out interferences that arise solely from refactorings. Evaluations on a 99-scenario ground-truth dataset and a large 1,087-merge dataset show substantial false positive reductions (≈32%) with only minor, statistically insignificant recall loss, demonstrating practical benefits for merge tooling. The work contributes a practical tool, a large-scale dataset for evaluation, and an empirical framework for analyzing refactoring-induced false positives in semantic interference detection.

Abstract

Detecting semantic interference remains a challenge in collaborative software development. Recent lightweight static analysis techniques improve efficiency over SDG-based methods, but they still suffer from a high rate of false positives. A key cause of these false positives is the presence of behavior-preserving code refactorings, which current techniques cannot effectively distinguish from changes that impact behavior and can interfere with others. To handle this problem we present RefFilter, a refactoring-aware tool for semantic interference detection. It builds on existing static techniques by incorporating automated refactoring detection to improve precision. RefFilter discards behavior-preserving refactorings from reports, reducing false positives while preserving detection coverage. To evaluate effectiveness and scalability, use two datasets: a labeled dataset with 99 scenarios and ground truth, and a novel dataset of 1,087 diverse merge scenarios that we have built. Experimental results show that RefFilter reduces false positives by nearly 32% on the labeled dataset. While this reduction comes with a non significant increase in false negatives, the overall gain in precision significantly outweighs the minor trade-off in recall. These findings demonstrate that refactoring-aware interference detection is a practical and effective strategy for improving merge support in modern development workflows.

RefFilter: Improving Semantic Conflict Detection via Refactoring-Aware Static Analysis

TL;DR

RefFilter addresses noisy semantic interference reports in code merges by adding a refactoring-aware filtering stage that uses RefactoringMiner and ReExtractor+ to identify behavior-preserving changes. It operates as a post-processing layer on top of lightweight static detectors, aligning lines and filtering out interferences that arise solely from refactorings. Evaluations on a 99-scenario ground-truth dataset and a large 1,087-merge dataset show substantial false positive reductions (≈32%) with only minor, statistically insignificant recall loss, demonstrating practical benefits for merge tooling. The work contributes a practical tool, a large-scale dataset for evaluation, and an empirical framework for analyzing refactoring-induced false positives in semantic interference detection.

Abstract

Detecting semantic interference remains a challenge in collaborative software development. Recent lightweight static analysis techniques improve efficiency over SDG-based methods, but they still suffer from a high rate of false positives. A key cause of these false positives is the presence of behavior-preserving code refactorings, which current techniques cannot effectively distinguish from changes that impact behavior and can interfere with others. To handle this problem we present RefFilter, a refactoring-aware tool for semantic interference detection. It builds on existing static techniques by incorporating automated refactoring detection to improve precision. RefFilter discards behavior-preserving refactorings from reports, reducing false positives while preserving detection coverage. To evaluate effectiveness and scalability, use two datasets: a labeled dataset with 99 scenarios and ground truth, and a novel dataset of 1,087 diverse merge scenarios that we have built. Experimental results show that RefFilter reduces false positives by nearly 32% on the labeled dataset. While this reduction comes with a non significant increase in false negatives, the overall gain in precision significantly outweighs the minor trade-off in recall. These findings demonstrate that refactoring-aware interference detection is a practical and effective strategy for improving merge support in modern development workflows.

Paper Structure

This paper contains 19 sections, 3 equations, 5 figures, 3 tables, 3 algorithms.

Figures (5)

  • Figure 1: Merge scenario with refactoring (left) and business rule change (right).
  • Figure 2: Overview of RefFilter workflow.
  • Figure 3: Dataset construction workflow.
  • Figure 4: Execution time per scenario.
  • Figure 5: Scaling and diversity results.

Theorems & Definitions (1)

  • definition 1: False Positive of Interference due to Refactoring