[Paper Review] How to Design a Program Repair Bot - Insights from the Repairnator Project
Short Introduction to This Paper
This paper investigates the concept of a "program repair bot" and present Repairnator. The Repairnator bot is an autonomous agent that constantly monitors test failures, reproduces bugs, and runs program repair tools against each reproduced bug. If a patch is found, Repairnator bot reports it to the developers. At the time of writing, Repairnator uses three different program repair systems and has been operating since February 2017. In total, it has studied 11 317 test failures over 1 609 open-source software projects hosted on GitHub, and has generated patches for 17 different bugs.
Highlights of This Paper
- A blueprint design of a program repair bot for continuous integration (CI) test failures
- A set of unique empirical facts about program repair and bug reproduction collected over 11 317 test failures across 1 609 software projects
- 7 recommendations to help future authors of program repair bots