Zig 프로젝트의 anti-AI 기여 정책에 대한 근거

11 hours ago 4
  • Zig는 이슈, Pull Request, 버그 트래커 댓글, 번역에서 LLM 사용을 금지하는 강한 규칙을 운영함
  • 영어 사용은 권장 사항일 뿐 필수는 아니며, 기여자는 모국어 작성이 가능하고 다른 사람은 각자 선택한 번역 도구로 내용을 해석할 수 있음
  • Bun은 자체 Zig fork에서 LLVM backend에 parallel semantic analysis와 multiple codegen units를 추가해 Bun 컴파일에서 4배 성능 개선을 달성했지만, LLM 작성 기여 금지 때문에 현재 upstream 계획이 없음
  • Zig의 리뷰 방식은 불완전한 PR을 거부하기보다 새 기여자가 merge 가능한 작업까지 도달하도록 돕고, 개별 기여물보다 기여자 성장을 더 중시함
  • LLM이 대부분 작성한 PR은 리뷰 시간이 신뢰할 수 있는 새 기여자를 늘리는 데 쓰이지 않게 만들며, maintainer가 직접 LLM을 실행해 같은 문제를 해결하는 선택지도 생김

정책과 Bun fork의 충돌

  • ZigCode of Conduct에서 이슈, Pull Request, 버그 트래커 댓글, 번역에 LLM 사용 금지를 명시함
    • 영어 사용은 권장 사항이며, 기여자는 모국어로 작성할 수 있음
    • 다른 사람은 각자 선택한 번역 도구로 내용을 해석할 수 있음
  • Zig로 작성된 대표 프로젝트로 Bun JavaScript 런타임이 있으며, Bun은 2025년 12월 Anthropic에 인수됨
  • Bun은 자체 Zig fork를 운영하고, LLVM backend에 “parallel semantic analysis and multiple codegen units”를 추가해 Bun 컴파일에서 4배 성능 개선을 달성함
    • 관련 코드는 oven-sh/zig 비교 링크에 공개됨
    • Bun은 Zig가 LLM 작성 기여를 엄격히 금지하기 때문에 현재 upstream 계획이 없음
  • Zig core contributor 기준 해당 패치는 LLM 문제와 별개로도 받아들여지기 어려움
    • parallel semantic analysis는 오래 계획된 기능이지만, Zig 언어 자체에 영향을 줌

Contributor Poker와 기여자 중심 리뷰

  • Contributor Poker and Zig's AI Bancontributor poker는 Zig의 엄격한 금지 정책을 이해하는 핵심 비유임
    • 성공한 오픈소스 프로젝트는 처리 가능한 양보다 많은 PR을 받는 단계에 도달함
    • Zig는 ROI를 최대화하기 위해 불완전한 PR을 거부하기보다, 새 기여자가 작업을 merge할 수 있도록 돕는 방식을 택함
    • 이 방식은 “옳은 일”일 뿐 아니라 “똑똑한 일”로 취급됨
  • Zig는 개별 기여물보다 기여자를 더 중시함
    • PR 리뷰와 수락의 1차 목표는 새 코드를 넣는 것이 아니라, 시간이 지나며 신뢰할 수 있고 생산적인 기여자로 성장할 사람을 돕는 데 있음
    • 각 기여자는 Zig core team의 투자 대상이 됨
  • LLM 지원은 이 구조를 깨뜨림
    • LLM이 완벽한 PR 작성을 도와도, Zig 팀이 리뷰에 쓰는 시간은 새롭고 자신 있으며 신뢰할 수 있는 기여자를 늘리는 데 기여하지 않음
    • “contributor poker”는 카드가 아니라 사람을 보고 게임을 한다는 비유에서 나온 표현임
    • 첫 PR의 내용보다 기여자에게 베팅한다는 뜻에 가까움
  • LLM이 대부분 작성한 PR이라면, 프로젝트 maintainer가 그 PR을 리뷰하고 논의하는 대신 직접 LLM을 실행해 같은 문제를 해결하는 선택지가 생김
Read Entire Article