FixrLeak: Uber's GenAI framework for automated Java resource leak repair
Resource leaks in Java applications lead to performance degradation and system failures, and while SonarQube identifies them effectively, the fixing process remained manual, time-consuming, and error-prone at Uber's codebase scale.
Template-based tools like RLFixer struggled to scale in Uber's massive codebase and required extensive manual setup. GenAI predecessor InferFix achieved only 70% fix accuracy and relied on proprietary models that couldn't adapt to evolving technologies.
FixrLeak successfully automated fixes for 93 out of 102 eligible resource leaks in Uber's Java codebase, significantly reducing manual effort and improving developer productivity and code quality, and continues to run periodically.
Show all 6 reported metrics
Frequently asked questions
What did this team achieve with this AI workflow?
FixrLeak successfully automated fixes for 93 out of 102 eligible resource leaks in Uber's Java codebase, significantly reducing manual effort and improving developer productivity and code quality, and continues to run…
What tools did this team use?
SonarQube, Tree-sitter, ChatGPT-4O, FixrLeak.
What results were reported?
Resource leaks automatically fixed: 93; Eligible cases processed: 102; Total resource leaks scanned in test: 124; Manual effort reduction: significantly reduces manual effort (source-reported, not independently verified).
What failed first in this deployment?
Template-based tools like RLFixer struggled to scale in Uber's massive codebase and required extensive manual setup.
How is this quality assurance AI workflow structured?
SonarQube leak report scanning → Code parsing with Tree-sitter → AST-level safety validation → GenAI fix generation via ChatGPT-4O → Pull request generation → Automated PR verification → Developer one-click code review.