LLM 생성 코드에 더 높은 기준 적용하는 기여 규칙
Rust-lang/rust 모노레포의 기여 방식에 새로운 제약이 생겼다. 최근 Rust 프로젝트 내 5개 팀은 대규모 언어 모델(LLM)을 활용해 프로젝트에 기여하는 방식을 규정하는 정책을 도입했다. 이번 정책의 핵심은 LLM의 역할을 '생성'이 아닌 '보조'로 한정 짓는 것이다.
분석과 정제는 허용하되 생성은 제한하는 것이 이번 정책의 골자다. 질문에 답하거나, 내용을 분석·요약하고, 기존 코드를 검토하거나 제안하는 용도로 LLM을 쓰는 것은 허용된다. 반면, LLM이 직접 코드를 생성해 제출하는 행위는 엄격하게 제한된다. 특히 기계 번역, 단순 변경 사항 발견, 타인의 작업물 리뷰에 LLM을 사용했을 때는 반드시 그 사실을 공개해야 한다.
LLM이 생성한 코드 변경 사항에 대해서는 인간이 작성한 코드보다 더 높은 수준의 검증 기준을 요구한다. LLM 생성 PR(Pull Request)은 구현 난이도와 상관없이 반드시 테스트 코드를 포함해야 하며, 작성자가 해당 분야의 전문가가 아닌 한 안정성에 치명적인 영향을 줄 수 있는 변경(soundness-critical changes)은 원칙적으로 금지된다. 만약 기여자가 LLM 사용 여부를 숨기거나 정책을 준수하지 않은 것이 확인되면, 리뷰어는 별도의 질문 없이 즉시 해당 PR을 종료할 수 있는 권한을 가진다.
'코드 품질'보다 '작성자의 이해도'를 우선하는 흐름
1,281개에 달하는 오픈 PR 수치는 리뷰어들이 겪는 심리적 비용을 단적으로 보여준다. 과거에는 정교하고 테스트가 잘 된 PR이 작성자의 시간과 노력, 그리고 코드에 대한 깊은 이해도를 증명하는 신호였다. 하지만 LLM의 등장으로 '매끄러운 코드'가 더 이상 '작성자의 이해도'를 보장하지 않게 되었다. LLM이 짠 코드를 그대로 복사해 붙여넣는 이른바 '샷건(Shotgunning)' 식 기여가 늘어나면서, 리뷰어들은 코드 자체보다 작성자가 이 변경의 목적과 미래 방향성을 제대로 이해하고 있는지 확인하는 데 더 많은 에너지를 쓰게 됐다.
리뷰 과정에서 리뷰어의 코멘트를 다시 LLM에 입력해 답변을 생성하고 이를 그대로 제출하는 행위는 프로젝트 내에서 '신뢰 관계의 훼손'으로 정의된다. 리뷰어는 기계의 의견이 아니라 실제 사람의 생각을 듣기를 원하기 때문이다. 이번 정책은 단순히 AI를 배척하는 것이 아니라, 오픈소스 커뮤니티의 핵심인 '협업'과 '투명성'을 유지하려는 조치다. 특히 Rust는 독단적인 결정권자가 없는 합의제 거버넌스로 운영되기에, AI 사용에 대한 찬반 논쟁을 넘어 '최소한의 공통 규칙'을 명문화하는 방향을 택했다.
AI 시대의 오픈소스 기여자가 관찰해야 할 신호
한국의 AI 실무자와 개발자들은 이번 사례를 통해 오픈소스 생태계가 AI 생성 콘텐츠를 수용하는 방식의 변화를 읽어야 한다. 이제 단순히 '작동하는 코드'를 제출하는 것만으로는 기여자로 인정받기 어려워졌다. 오히려 AI를 활용해 효율적으로 작업하되, 그 과정과 도구 사용 여부를 투명하게 밝히는 '공개 의무'가 새로운 기여 에티켓으로 자리 잡고 있다.
특히 주목할 점은 AI 생성물에 대해 '더 낮은 기준'이 아닌 '더 높은 기준(Higher Bar)'을 적용한다는 점이다. AI가 코드를 빠르게 짤 수 있는 만큼, 그에 상응하는 철저한 테스트와 도메인 지식 증명을 요구하는 흐름이다. 향후 다른 주요 오픈소스 프로젝트에서도 유사한 정책이 확산될 가능성이 크다. 개발자는 AI를 사용해 생산성을 높이되, 최종 결과물에 대한 논리적 근거와 검증 책임을 온전히 인간이 지는 구조를 설계해야 한다.
앞으로 관찰해야 할 지점은 이러한 정책이 실제 기여자의 진입 장벽을 높이는지, 아니면 오히려 무분별한 AI PR을 걸러내어 리뷰 효율을 높이는지 여부다. Rust 프로젝트는 이번 정책을 통해 LLM 사용자가 실제로 학습하고 지속적으로 기여하는지에 대한 데이터를 수집하고, 이를 바탕으로 정책을 수정해 나갈 계획이다.


