7.400 Bugs Repareren voor 1$: Goedkope Crash-Site Programmaherstel
Fixing 7,400 Bugs for 1$: Cheap Crash-Site Program Repair
May 19, 2025
Auteurs: Han Zheng, Ilia Shumailov, Tianqi Fan, Aiden Hall, Mathias Payer
cs.AI
Samenvatting
De snelle vooruitgang van technieken voor het vinden van bugs heeft geleid tot de ontdekking van meer kwetsbaarheden dan ontwikkelaars redelijkerwijs kunnen oplossen, wat een dringende behoefte creëert aan effectieve methoden voor Automatisch Programmaherstel (APR). De complexiteit van moderne bugs maakt echter vaak een precieze analyse van de oorzaak moeilijk en onbetrouwbaar. Om deze uitdaging aan te pakken, stellen we crash-site herstel voor om de hersteltaak te vereenvoudigen, terwijl het risico van exploitatie nog steeds wordt beperkt. Daarnaast introduceren we een sjabloongestuurde patchgeneratiebenadering die de tokenkosten van Large Language Models (LLMs) aanzienlijk vermindert, terwijl zowel efficiëntie als effectiviteit behouden blijven.
We implementeren ons prototypesysteem, WILLIAMT, en evalueren het tegen state-of-the-art APR-tools. Onze resultaten laten zien dat, wanneer gecombineerd met de best presterende agent CodeRover-S, WILLIAMT de tokenkosten met 45,9% vermindert en de bug-oplossingsratio verhoogt tot 73,5% (+29,6%) op ARVO, een benchmark voor open-source softwarekwetsbaarheden met grondwaarheid. Bovendien tonen we aan dat WILLIAMT effectief kan functioneren, zelfs zonder toegang tot geavanceerde LLMs: zelfs een lokaal model dat draait op een Mac M4 Mini behaalt een redelijk herstelpercentage. Deze bevindingen benadrukken de brede toepasbaarheid en schaalbaarheid van WILLIAMT.
English
The rapid advancement of bug-finding techniques has led to the discovery of
more vulnerabilities than developers can reasonably fix, creating an urgent
need for effective Automated Program Repair (APR) methods. However, the
complexity of modern bugs often makes precise root cause analysis difficult and
unreliable. To address this challenge, we propose crash-site repair to simplify
the repair task while still mitigating the risk of exploitation. In addition,
we introduce a template-guided patch generation approach that significantly
reduces the token cost of Large Language Models (LLMs) while maintaining both
efficiency and effectiveness.
We implement our prototype system, WILLIAMT, and evaluate it against
state-of-the-art APR tools. Our results show that, when combined with the
top-performing agent CodeRover-S, WILLIAMT reduces token cost by 45.9% and
increases the bug-fixing rate to 73.5% (+29.6%) on ARVO, a ground-truth open
source software vulnerabilities benchmark. Furthermore, we demonstrate that
WILLIAMT can function effectively even without access to frontier LLMs: even a
local model running on a Mac M4 Mini achieves a reasonable repair rate. These
findings highlight the broad applicability and scalability of WILLIAMT.Summary
AI-Generated Summary