Detecting Continuous Integration Skip : A Reinforcement Learning-based Approach
<|reference_start|>Detecting Continuous Integration Skip : A Reinforcement Learning-based Approach: The software industry is experiencing a surge in the adoption of Continuous Integration (CI) practices, both in commercial and open-source environments. CI practices facilitate the seamless integration of code changes by employing automated building and testing processes. Some frameworks, such as Travis CI and GitHub Actions have significantly contributed to simplifying and enhancing the CI process, rendering it more accessible and efficient for development teams. Despite the availability these CI tools , developers continue to encounter difficulties in accurately flagging commits as either suitable for CI execution or as candidates for skipping especially for large projects with many dependencies. Inaccurate flagging of commits can lead to resource-intensive test and build processes, as even minor commits may inadvertently trigger the Continuous Integration process. The problem of detecting CI-skip commits, can be modeled as binary classification task where we decide to either build a commit or to skip it. This study proposes a novel solution that leverages Deep Reinforcement Learning techniques to construct an optimal Decision Tree classifier that addresses the imbalanced nature of the data. We evaluate our solution by running a within and a cross project validation benchmark on diverse range of Open-Source projects hosted on GitHub which showcased superior results when compared with existing state-of-the-art methods.<|reference_end|>
@article{mhalla2024detecting,
    title={Detecting Continuous Integration Skip : A Reinforcement Learning-based
  Approach},
    author={Hajer Mhalla, Mohamed Aymen Saied},
    journal={arXiv preprint arXiv:2405.09657},
    year={2024},
    archivePrefix={arXiv},
    eprint={2405.09657},
    primaryClass={cs.SE cs.AI}
}