{"status":"ok","message-type":"work","message-version":"1.0.0","message":{"indexed":{"date-parts":[[2025,8,2]],"date-time":"2025-08-02T14:33:20Z","timestamp":1754145200989,"version":"3.41.2"},"reference-count":37,"publisher":"Association for Computing Machinery (ACM)","issue":"ISSTA","funder":[{"DOI":"10.13039\/501100001665","name":"Agence Nationale de la Recherche","doi-asserted-by":"crossref","award":["ANR?21?CE25?0007"],"award-info":[{"award-number":["ANR?21?CE25?0007"]}],"id":[{"id":"10.13039\/501100001665","id-type":"DOI","asserted-by":"crossref"}]}],"content-domain":{"domain":[],"crossmark-restriction":false},"short-container-title":["Proc. ACM Softw. Eng."],"published-print":{"date-parts":[[2025,6,22]]},"abstract":"<jats:p>Continuous integration (CI) is widely used by developers to ensure the quality and reliability of their software projects. However, diagnosing a CI regression is a tedious process that involves the manual analysis of lengthy build logs. In this paper, we explore how textual differencing can support the debugging of CI regressions. As off-the-shelf diff algorithms produce suboptimal results, in this work we introduce a new diff algorithm specifically tailored to build logs called CiDiff. We evaluate CiDiff against several baselines on a novel dataset of 17 906 CI regressions, performing an accuracy study, a quantitative study and a user-study. Notably, our algorithm reduces the number of lines to inspect by about 60 % in the median case, with reasonable overhead compared to the state-of-practice LCS-diff. Finally, our algorithm is preferred by the majority of participants in 70 % of the regression cases, whereas LCS-diff is preferred in only 5 % of the cases<\/jats:p>","DOI":"10.1145\/3728966","type":"journal-article","created":{"date-parts":[[2025,6,22]],"date-time":"2025-06-22T10:52:56Z","timestamp":1750589576000},"page":"2023-2044","source":"Crossref","is-referenced-by-count":0,"title":["What Happened in This Pipeline? Diffing Build Logs with CiDiff"],"prefix":"10.1145","volume":"2","author":[{"ORCID":"https:\/\/orcid.org\/0009-0005-4681-0353","authenticated-orcid":false,"given":"Nicolas","family":"Hubner","sequence":"first","affiliation":[{"name":"University of Bordeaux - LaBRI - UMR 5800, Talence, France"}]},{"ORCID":"https:\/\/orcid.org\/0000-0002-8284-7218","authenticated-orcid":false,"given":"Jean-R\u00e9my","family":"Falleri","sequence":"additional","affiliation":[{"name":"University of Bordeaux - LaBRI - UMR 5800, Talence, France"}]},{"ORCID":"https:\/\/orcid.org\/0000-0002-5730-6428","authenticated-orcid":false,"given":"Raluca","family":"Uricaru","sequence":"additional","affiliation":[{"name":"University of Bordeaux - LaBRI - UMR 5800, Talence, France"}]},{"ORCID":"https:\/\/orcid.org\/0000-0002-5961-7940","authenticated-orcid":false,"given":"Thomas","family":"Degueule","sequence":"additional","affiliation":[{"name":"University of Bordeaux - Bordeaux INP - CNRS - LaBRI - UMR5800, Talence, France"}]},{"ORCID":"https:\/\/orcid.org\/0000-0002-1996-6134","authenticated-orcid":false,"given":"Thomas","family":"Durieux","sequence":"additional","affiliation":[{"name":"Delft University of Technology, Delft, Netherlands"}]}],"member":"320","published-online":{"date-parts":[[2025,6,22]]},"reference":[{"doi-asserted-by":"publisher","key":"e_1_2_1_1_1","DOI":"10.1145\/3236024.3236069"},{"doi-asserted-by":"publisher","key":"e_1_2_1_2_1","DOI":"10.1109\/ICSE48619.2023.00059"},{"doi-asserted-by":"publisher","key":"e_1_2_1_3_1","DOI":"10.1109\/ICSM.2013.34"},{"doi-asserted-by":"publisher","key":"e_1_2_1_4_1","DOI":"10.1109\/ASE.2019.00084"},{"doi-asserted-by":"publisher","key":"e_1_2_1_5_1","DOI":"10.1145\/3379597.3387485"},{"doi-asserted-by":"publisher","key":"e_1_2_1_6_1","DOI":"10.1093\/bioinformatics\/btg1005"},{"doi-asserted-by":"publisher","key":"e_1_2_1_7_1","DOI":"10.1109\/ICSE.2009.5070564"},{"doi-asserted-by":"publisher","key":"e_1_2_1_8_1","DOI":"10.1101\/gr.2289704"},{"doi-asserted-by":"publisher","key":"e_1_2_1_9_1","DOI":"10.1002\/smr.2226"},{"doi-asserted-by":"publisher","key":"e_1_2_1_10_1","DOI":"10.1093\/nar\/27.11.2369"},{"doi-asserted-by":"publisher","key":"e_1_2_1_11_1","DOI":"10.1145\/3379597.3387460"},{"doi-asserted-by":"publisher","key":"e_1_2_1_12_1","DOI":"10.1145\/3597503.3639148"},{"doi-asserted-by":"publisher","key":"e_1_2_1_13_1","DOI":"10.1145\/2642937.2642982"},{"doi-asserted-by":"publisher","key":"e_1_2_1_14_1","DOI":"10.1109\/TSE.2007.70731"},{"doi-asserted-by":"publisher","key":"e_1_2_1_15_1","DOI":"10.1109\/ICSME.2018.00036"},{"doi-asserted-by":"publisher","key":"e_1_2_1_16_1","DOI":"10.1109\/ICWS.2017.13"},{"doi-asserted-by":"publisher","key":"e_1_2_1_17_1","DOI":"10.1145\/3460345"},{"doi-asserted-by":"publisher","key":"e_1_2_1_18_1","DOI":"10.1145\/2970276.2970358"},{"doi-asserted-by":"publisher","unstructured":"Nicolas Hubner and Jean-R\u00e9my Falleri. 2024. CiDiff Artifact. https:\/\/doi.org\/10.5281\/zenodo.12794901 10.5281\/zenodo.12794901","key":"e_1_2_1_19_1","DOI":"10.5281\/zenodo.12794901"},{"doi-asserted-by":"publisher","key":"e_1_2_1_20_1","DOI":"10.1093\/bioinformatics\/18.suppl_1.S312"},{"doi-asserted-by":"publisher","key":"e_1_2_1_21_1","DOI":"10.1109\/ACCESS.2022.3152549"},{"doi-asserted-by":"publisher","key":"e_1_2_1_22_1","DOI":"10.1109\/ICSME.2018.00060"},{"doi-asserted-by":"publisher","key":"e_1_2_1_23_1","DOI":"10.1109\/TSE.2021.3083715"},{"doi-asserted-by":"publisher","key":"e_1_2_1_24_1","DOI":"10.1109\/TSE.2023.3315935"},{"unstructured":"Florent Moriconi. 2024. Improving software development life cycle using data-driven approaches. EURECOM.","key":"e_1_2_1_25_1"},{"doi-asserted-by":"publisher","key":"e_1_2_1_26_1","DOI":"10.1007\/BF01840446"},{"doi-asserted-by":"publisher","key":"e_1_2_1_27_1","DOI":"10.1109\/MSR.2017.54"},{"doi-asserted-by":"publisher","key":"e_1_2_1_28_1","DOI":"10.1145\/3239235.3239248"},{"doi-asserted-by":"publisher","key":"e_1_2_1_29_1","DOI":"10.1016\/j.jda.2005.01.010"},{"doi-asserted-by":"publisher","key":"e_1_2_1_30_1","DOI":"10.1080\/00031305.1987.10475440"},{"doi-asserted-by":"publisher","key":"e_1_2_1_31_1","DOI":"10.1007\/s10664-019-09765-y"},{"doi-asserted-by":"publisher","key":"e_1_2_1_32_1","DOI":"10.1109\/ICSME.2017.67"},{"doi-asserted-by":"publisher","key":"e_1_2_1_33_1","DOI":"10.1145\/3338906.3338962"},{"doi-asserted-by":"publisher","key":"e_1_2_1_34_1","DOI":"10.1109\/TSC.2023.3270566"},{"doi-asserted-by":"publisher","key":"e_1_2_1_35_1","DOI":"10.1145\/3510003.3510132"},{"doi-asserted-by":"publisher","key":"e_1_2_1_36_1","DOI":"10.1109\/TKDE.2022.3222417"},{"doi-asserted-by":"publisher","key":"e_1_2_1_37_1","DOI":"10.1109\/ICSE-SEIP.2019.00021"}],"container-title":["Proceedings of the ACM on Software Engineering"],"original-title":[],"language":"en","link":[{"URL":"https:\/\/dl.acm.org\/doi\/pdf\/10.1145\/3728966","content-type":"unspecified","content-version":"vor","intended-application":"similarity-checking"}],"deposited":{"date-parts":[[2025,7,16]],"date-time":"2025-07-16T16:47:35Z","timestamp":1752684455000},"score":1,"resource":{"primary":{"URL":"https:\/\/dl.acm.org\/doi\/10.1145\/3728966"}},"subtitle":[],"short-title":[],"issued":{"date-parts":[[2025,6,22]]},"references-count":37,"journal-issue":{"issue":"ISSTA","published-print":{"date-parts":[[2025,6,22]]}},"alternative-id":["10.1145\/3728966"],"URL":"https:\/\/doi.org\/10.1145\/3728966","relation":{},"ISSN":["2994-970X"],"issn-type":[{"type":"electronic","value":"2994-970X"}],"subject":[],"published":{"date-parts":[[2025,6,22]]}}}