ScarfBench: Benchmarking AI Agents for Enterprise Java Framework Migration
Summary
IBM Research introduces ScarfBench, an open benchmark for evaluating AI agents on cross-framework Java migration tasks, focusing on Spring, Jakarta EE, and Quarkus. The benchmark assesses whether migrated applications build, deploy, and preserve behavior, unlike traditional code generation benchmarks.
View Cached Full Text
Cached at: 06/30/26, 11:28 PM
ScarfBench: Benchmarking AI Agents for Enterprise Java Framework Migration
Source: https://huggingface.co/blog/ibm-research/scarfbench Back to Articles
- Why Migration Is Hard
- Introducing ScarfBench
- How Do Frontier Agents Perform?
- What We Learned About AI Agents for Java Modernization- Can Agents Reliably Tell When a Migration Is Complete? - How Do Agents Navigate Application Dependencies? - Where Do Agents Spend Most of Their Effort? - What Challenges Are Not About Code Transformation?
- Key Takeaway
- Explore ScarfBench- Website - Dataset - Space - GitHub Repository - Leaderboard - Paper
Modernizing enterprise applications is one of the largest and most expensive software engineering activities organizations undertake. Teams migrate applications across frameworks to improve maintainability, cloud readiness, developer productivity, and access to modern capabilities.
Recent advances in coding agents have sparked excitement around AI-assisted modernization. But an important question remains:
Can AI agents reliably modernize real-world enterprise applications?
Existing software engineering benchmarks have demonstrated impressive progress in bug fixing and code generation, but framework migration presents a fundamentally different challenge. Success requires not only translating code, but also preserving behavior, adapting build systems, and navigating runtime dependencies.
To address this gap, we introduceScarfBench (Self-Contained Application Refactoring Benchmark), an open benchmark for evaluating AI agents on cross-framework migration tasks in Enterprise Java.
ScarfBench focuses on migrations across three major Java ecosystems:
- Spring
- Jakarta EE
- Quarkus
Unlike traditional benchmarks that compare generated code against reference implementations, ScarfBench evaluates whether migrated applications actually build, deploy, and preserve behavior.
https://huggingface.co/blog/ibm-research/scarfbench#why-migration-is-hardWhy Migration Is Hard
Framework migration is much more than replacing annotations.
A simple repository migration can require changes across dependency injection, persistence configuration, queries, and framework descriptors. Small mistakes in any of these pieces can prevent successful deployment.
Figure: Spring → Jakarta Migration Example
Framework migration requires translating framework semantics, not just source code.
https://huggingface.co/blog/ibm-research/scarfbench#introducing-scarfbenchIntroducing ScarfBench
ScarfBenchprovides a systematic way to evaluate AI agents on enterprise Java framework migration tasks.
Applications are required to:
- Build successfully.
- Deploy correctly.
- Pass behavioral validation.
This provides a much more realistic measure of modernization quality.
Benchmark at a Glance
MetricValueApplications34Framework implementations102Migration tasks204Lines of code~151KSource and test files~2,000Expert-written tests1,331ScarfBench includes both focused migration tasks and whole-application migrations.
Figure: ScarfBench Construction Pipeline
Starting from a JSR-based enterprise Java taxonomy, expert migrations create verified implementations across Spring, Jakarta EE, and Quarkus.
https://huggingface.co/blog/ibm-research/scarfbench#how-do-frontier-agents-performHow Do Frontier Agents Perform?
We evaluated several state-of-the-art coding agents on ScarfBench.
Despite strong performance on traditional software engineering benchmarks, framework migration remains difficult. Success rates vary considerably across framework pairs and whole-application migrations remain particularly challenging.
Figure: Current Leaderboard
Even the strongest current agents achieve less than 10% behavioral success, illustrating the gap between generating compilable code and preserving application behavior.
Figure: Compile → Deploy → Test Progression
Compile success consistently exceeds deploy success, which in turn exceeds behavioral success. Build success alone significantly overestimates migration quality.
Figure: Migration Outcomes by Target Framework
Migration difficulty depends strongly on the target framework, with Jakarta EE proving particularly challenging.
https://huggingface.co/blog/ibm-research/scarfbench#what-we-learned-about-ai-agents-for-java-modernizationWhat We Learned About AI Agents for Java Modernization
Beyond measuring success rates, ScarfBench helps us understand how agents behave during modernization.
https://huggingface.co/blog/ibm-research/scarfbench#can-agents-reliably-tell-when-a-migration-is-completeCan Agents Reliably Tell When a Migration Is Complete?
A migrated application is only useful if it actually builds and runs.
We therefore compared agent-reported outcomes against independent build verification.
https://huggingface.co/blog/ibm-research/scarfbench#finding-agents-are-overconfidentFinding: Agents Are Overconfident
Claude Code reported successful builds for 29 out of 30 whole applications.
Only 22 of those applications actually built successfully.
Meanwhile, the single application classified as failed by the agent ultimately built correctly.
This suggests that agent self-assessment should not be treated as a reliable signal of migration completion.
Independent build and test validation remains essential.
https://huggingface.co/blog/ibm-research/scarfbench#how-do-agents-navigate-application-dependenciesHow Do Agents Navigate Application Dependencies?
Framework migrations rarely affect a single file or layer.
Changes in configuration, services, databases, and web components often cascade across the application.
https://huggingface.co/blog/ibm-research/scarfbench#finding-migration-is-iterative-rather-than-linearFinding: Migration Is Iterative Rather Than Linear
The most frequently visited layers were:
- Configuration
- Web
- Database
- Service
Common transitions included:
- Configuration ↔ Web
- Service ↔ Database
This suggests that migration is an iterative dependency-resolution process rather than a simple source-to-source transformation.
https://huggingface.co/blog/ibm-research/scarfbench#where-do-agents-spend-most-of-their-effortWhere Do Agents Spend Most of Their Effort?
We used layer revisit frequency as a proxy for migration effort. Layers that required repeated visits typically involved debugging, dependency resolution, or framework adaptation.
https://huggingface.co/blog/ibm-research/scarfbench#finding-configuration-dominates-migration-effortFinding: Configuration Dominates Migration Effort
Rather than proceeding linearly, agents repeatedly returned to configuration-related artifacts while resolving framework differences and dependency issues.
https://huggingface.co/blog/ibm-research/scarfbench#what-challenges-are-not-about-code-transformationWhat Challenges Are Not About Code Transformation?
Not every migration issue originates from source code.
https://huggingface.co/blog/ibm-research/scarfbench#finding-environment-and-tooling-matterFinding: Environment and Tooling Matter
Agents frequently struggled with environmental issues, including:
- Docker cache inconsistencies
- Port connectivity problems
- Maven wrapper and build tooling issues
These operational concerns often delayed validation even when the source-code migration itself was largely complete.
Figure: Failure Mode Distribution
Modernization failures span build systems, deployment environments, dependency injection, databases, endpoints, assertions, and infrastructure.
https://huggingface.co/blog/ibm-research/scarfbench#key-takeawayKey Takeaway
The biggest challenge in framework modernization is not translating Java code.
It is managing the web of dependencies across configuration, infrastructure, and runtime environments.
While frontier agents can automate substantial portions of the migration process, reliable validation and architectural reasoning remain critical for achieving successful outcomes.
ScarfBench helps expose these challenges and provides a standardized way to measure progress toward truly autonomous application modernization.
https://huggingface.co/blog/ibm-research/scarfbench#explore-scarfbenchExplore ScarfBench
ScarfBench is designed as an open resource for researchers and practitioners.
Resources include:
- Benchmark dataset
- Evaluation infrastructure
- Public leaderboard
- Documentation
- Open-source code
Researchers can compare agent architectures and techniques. Practitioners can use ScarfBench to evaluate modernization solutions before deploying them in production environments.
https://huggingface.co/blog/ibm-research/scarfbench#websiteWebsite
https://huggingface.co/blog/ibm-research/scarfbench#datasetDataset
https://huggingface.co/datasets/ibm-research/ScarfBench
https://huggingface.co/blog/ibm-research/scarfbench#spaceSpace
https://huggingface.co/spaces/ibm-research/ScarfBench
https://huggingface.co/blog/ibm-research/scarfbench#github-repositoryGitHub Repository
https://github.com/scarfbench/scarfbench
https://huggingface.co/blog/ibm-research/scarfbench#leaderboardLeaderboard
https://scarfbench.info/leaderboard
https://huggingface.co/blog/ibm-research/scarfbench#paperPaper
https://arxiv.org/abs/2605.06754
Framework migration remains one of the largest unsolved problems in AI-assisted software engineering. We hope ScarfBench helps the community measure progress and accelerate the next generation of AI-assisted application modernization.
We invite researchers, practitioners, and framework communities to evaluate their agents, contribute new migration scenarios and help advance the state of the art.
Similar Articles
EnterpriseClawBench: Benchmarking Agents from Real Workplace Sessions
EnterpriseClawBench presents a benchmark for enterprise agents based on real-world workplace sessions, offering 852 reproducible tasks and comprehensive evaluation metrics beyond single performance scores.
SWE-WebDevBench: Evaluating Coding Agent Application Platforms as Virtual Software Agencies
This paper introduces SWE-WebDevBench, a comprehensive 68-metric framework for evaluating AI-powered application development platforms as virtual software agencies. The study highlights critical gaps in current platforms regarding specification understanding, backend reliability, production readiness, and security.
SaaSBench: Exploring the Boundaries of Coding Agents in Long-Horizon Enterprise SaaS Engineering
SaaSBench is a new benchmark for evaluating AI agents in enterprise SaaS development, involving multi-component system integration across 30 tasks, 6 domains, and 5,370 validation nodes. Experiments reveal that the main bottleneck for agents is system configuration and integration rather than isolated code generation.
WeaveBench: A Long-Horizon, Real-World Benchmark for Computer-Use Agents with Hybrid Interfaces
WeaveBench is a new benchmark for evaluating computer-use agents across multiple interfaces (GUI, CLI, code) in long-horizon real-world tasks. It reveals that current models achieve only 41.2% PassRate and that outcome-only grading overestimates performance, highlighting significant gaps in evaluation.
ProgramBench (5 minute read)
ProgramBench is a new benchmark that evaluates AI agents' ability to reconstruct complete software projects from compiled binaries and documentation without access to source code or decompilation tools.





