RefModel: Detecting Refactorings using Foundation Models

Fuente: arXiv
Saved in:
Bibliographic Details
Main Authors: Simões, Pedro, Gheyi, Rohit, Melo, Rian, Oliveira, Jonhnanthan, Ribeiro, Márcio, Assunção, Wesley K. G.
Format: Preprint
Published: 2025
Subjects:
Online Access:
Tags: Add Tag
No Tags, Be the first to tag this record!
_version_ 1866917091273080832
author Simões, Pedro
Gheyi, Rohit
Melo, Rian
Oliveira, Jonhnanthan
Ribeiro, Márcio
Assunção, Wesley K. G.
author_facet Simões, Pedro
Gheyi, Rohit
Melo, Rian
Oliveira, Jonhnanthan
Ribeiro, Márcio
Assunção, Wesley K. G.
contents Refactoring is a common software engineering practice that improves code quality without altering program behavior. Although tools like ReExtractor+, RefactoringMiner, and RefDiff have been developed to detect refactorings automatically, they rely on complex rule definitions and static analysis, making them difficult to extend and generalize to other programming languages. In this paper, we investigate the viability of using foundation models for refactoring detection, implemented in a tool named RefModel. We evaluate Phi4-14B, and Claude 3.5 Sonnet on a dataset of 858 single-operation transformations applied to artificially generated Java programs, covering widely-used refactoring types. We also extend our evaluation by including Gemini 2.5 Pro and o4-mini-high, assessing their performance on 44 real-world refactorings extracted from four open-source projects. These models are compared against RefactoringMiner, RefDiff, and ReExtractor+. RefModel is competitive with, and in some cases outperform, traditional tools. In real-world settings, Claude 3.5 Sonnet and Gemini 2.5 Pro jointly identified 97% of all refactorings, surpassing the best-performing static-analysis-based tools. The models showed encouraging generalization to Python and Golang. They provide natural language explanations and require only a single sentence to define each refactoring type.
format Preprint
id arxiv_https___arxiv_org_abs_2507_11346
institution arXiv
publishDate 2025
record_format arxiv
spellingShingle RefModel: Detecting Refactorings using Foundation Models
Simões, Pedro
Gheyi, Rohit
Melo, Rian
Oliveira, Jonhnanthan
Ribeiro, Márcio
Assunção, Wesley K. G.
Software Engineering
Refactoring is a common software engineering practice that improves code quality without altering program behavior. Although tools like ReExtractor+, RefactoringMiner, and RefDiff have been developed to detect refactorings automatically, they rely on complex rule definitions and static analysis, making them difficult to extend and generalize to other programming languages. In this paper, we investigate the viability of using foundation models for refactoring detection, implemented in a tool named RefModel. We evaluate Phi4-14B, and Claude 3.5 Sonnet on a dataset of 858 single-operation transformations applied to artificially generated Java programs, covering widely-used refactoring types. We also extend our evaluation by including Gemini 2.5 Pro and o4-mini-high, assessing their performance on 44 real-world refactorings extracted from four open-source projects. These models are compared against RefactoringMiner, RefDiff, and ReExtractor+. RefModel is competitive with, and in some cases outperform, traditional tools. In real-world settings, Claude 3.5 Sonnet and Gemini 2.5 Pro jointly identified 97% of all refactorings, surpassing the best-performing static-analysis-based tools. The models showed encouraging generalization to Python and Golang. They provide natural language explanations and require only a single sentence to define each refactoring type.
title RefModel: Detecting Refactorings using Foundation Models
topic Software Engineering
url https://arxiv.org/abs/2507.11346