Detecting and Characterizing Bots that Commit Code
arXiv:2003.03172 · doi:10.1145/3379597.3387478
Abstract
Background: Some developer activity traditionally performed manually, such as making code commits, opening, managing, or closing issues is increasingly subject to automation in many OSS projects. Specifically, such activity is often performed by tools that react to events or run at specific times. We refer to such automation tools as bots and, in many software mining scenarios related to developer productivity or code quality it is desirable to identify bots in order to separate their actions from actions of individuals. Aim: Find an automated way of identifying bots and code committed by these bots, and to characterize the types of bots based on their activity patterns. Method and Result: We propose BIMAN, a systematic approach to detect bots using author names, commit messages, files modified by the commit, and projects associated with the ommits. For our test data, the value for AUC-ROC was 0.9. We also characterized these bots based on the time patterns of their code commits and the types of files modified, and found that they primarily work with documentation files and web pages, and these files are most prevalent in HTML and JavaScript ecosystems. We have compiled a shareable dataset containing detailed information about 461 bots we found (all of whom have more than 1000 commits) and 13,762,430 commits they created.
Preprint of the paper accepted in MSR, 2020 conference
References in corpus (4)
Cited by in corpus (10)
- What Makes a Good Commit Message?
- GitHub Actions: The Impact on the Pull Request Process
- How Gamification Affects Software Developers: Cautionary Evidence from a Natural Experiment on GitHub
- Nudge: Accelerating Overdue Pull Requests Towards Completion
- Which contributions count? Analysis of attribution in open source
- Motivations, Challenges, Best Practices, and Benefits for Bots and Conversational Agents in Software Engineering: A Multivocal Literature Review
- World of Code: Enabling a Research Workflow for Mining and Analyzing the Universe of Open Source VCS data
- Ecosystem-wide influences on pull request decisions: insights from NPM
- The Secret Life of Hackathon Code
- The Sensitivity of Word Embeddings-based Author Detection Models to Semantic-preserving Adversarial Perturbations