Abstract:In modern software development, frequent code commits and updates have become the norm, which accelerates feature implementation but may introduce new defects, thus threatening software stability and reliability. Once a defect causes program errors or failures, the development team should take quick action to isolate the defect to ensure the continuous operation of the system. Defect isolation is a key technique for rapidly locating the problem and restoring system stability. However, the traditional delta debugging (DD) methods rely on numerous testing attempts, resulting in significant performance bottlenecks under a large change set. Additionally, they fail to effectively utilize the semantics of code changes, making it difficult to accurately locate defect-related code changes. This study proposes a defect isolation method based on code change semantic decomposition—DISAC. The method decomposes composite commits introduced by the defect into atomic commits with single functional semantics. It then models the sequential dependency between commits to ensure that the dependency chain will not be broken during the isolation process. Compared to the traditional DD methods, DISAC not only returns the smallest functional semantic changes but also preserves necessary context and dependency information, thereby providing developers with more complete and accurate support for defect repair. Experimental results show that compared to the DD method, DISAC significantly improves defect isolation efficiency and accuracy. Specifically, the isolation efficiency is increased by 633.65% on the Defects4J dataset and by 733.75% on the regression defect set. Additionally, when DISAC is combined with DD, the isolation reduction rate improves by 2.36% and 8.66% respectively, significantly enhancing isolation effectiveness. User experiments show that DISAC increases root cause determination efficiency by approximately 59.90% and improves accuracy by 12%. These results demonstrate that DISAC not only improves defect isolation accuracy but also reduces unnecessary change combination attempts, thus showing higher efficiency and stability in defect isolation tasks committed by complex codes.