LLM에게 레거시 PHP를 맡겼더니, 멀쩡하던 코드가 깨졌다
When Modernization Breaks Working Code: A Study of LLMs on Legacy PHP
WordPress 4.0 PHP 파일 100개를 PHP 8.3으로 현대화하도록 5개 LLM에 요청한 연구다. 프로젝트 맥락이나 실행 피드백 없이 630개의 숨은 동작 검사로 평가한 결과, 손대지 않은 원본은 83개 파일이 모든 검사를 통과했지만 최고 성능 모델은 59개만 통과했다. 각 모델은 32~51개의 정상 파일을 깨뜨리면서 고친 파일은 최대 10개에 그쳤고, 규칙 기반 도구 Rector는 7개를 깨고 6개를 고쳤다. PHP 8.3에서 변경이 필요한 항목은 7%뿐인데도 변경이 불필요한 호환 파일에서 LLM은 36~60%를 망가뜨렸다. 대부분의 회귀는 PHP가 거부하는 타입 선언 때문에 파일이 아예 로드되지 않아 발생했다.
가장 현대화 점수가 높은 모델도 가장 가까운 경쟁자들보다 호환성이 더 뛰어나지 않았다.