마담 Semver가 지금 당신을 기다립니다

3 hours ago 2
  • 점술가 Madame Semver는 저장소 아카이브를 고민하는 오픈소스 관리자에게 ^1.0.0 카드를 내밀고, 아카이브하지 않은 대가로 겪을 미래를 펼쳐 보임
  • 테스트를 통과한 잘못된 PR부터 라이브러리를 오해한 이슈, 유사 이름 패키지, 실제 취약점 하나가 섞인 보안 스캔 보고서까지 차례로 관리자의 시간을 빼앗음
  • 사소한 문제와 반복 질문을 꾸준히 처리하던 기여자가 3년째에 저장소 권한을 요청하자, Madame Semver는 이 카드만 뒤집어 둠
  • 오래된 README를 학습한 무언가는 제거된 함수를 2년간 추천하고, 대문자 지침 파일과 자동화 봇은 문서 작성 방식과 저장소 운영을 예상치 못한 방향으로 바꿈
  • 훗날 모든 변경을 한 시간 안에 병합하는 포크가 일부 사용자의 선택을 받지만, 정작 원본 저장소를 캐럿 범위로 참조해 다음 메이저 버전이 누구에게 닥칠지는 알 수 없음

아카이브하지 않은 저장소의 가까운 미래

  • 첫 카드 ^1.0.0의 캐럿(caret) 은 이후에 오는 모든 것을 허용하며, 사람들은 자신이 그 범위를 직접 지정했다는 사실을 쉽게 잊음
  • Madame Semver는 관리자가 저장소를 아카이브하지 않을 것을 이미 알고 있으며, 그 선택 뒤에 이어질 사건들을 펼쳐 보임
  • 6월에는 예의 바르고 테스트까지 갖춘 PR이 도착함
    • 테스트는 통과하지만 코드는 잘못되어 관리자의 토요일 대부분을 소모함
    • 설명 하단에는 사진을 찾을 수 없는 공동 작성자가 있고, 관리자는 확인하는 습관을 들이기 전까지 그의 PR 두 개를 더 병합함
  • 8월에는 한 사람이 라이브러리의 기능을 잘못 이해한 채 확신에 차서 이슈를 열고, 반박하기 어려운 출처를 인용함
    • 다음 주에는 다른 누군가가 그가 묘사한 패키지를 기존 이름과 한 글자만 다르게 출시함
    • 9월이 되자 새 패키지가 다운로드 수를 가져감
  • Tower 카드에는 작은 기반 위의 높은 구조물과 Nebraska, 2003이 나타남
    • 관리자가 이미 머그잔으로 익숙한 대상이어서 별도 설명은 필요하지 않음
  • 10월의 보안 스캔은 요청하지 않은 심각도 점수와 경영진 요약을 갖춘 길고 정교한 보고서를 생성함
    • 발견 사항 12개 중 11개는 문서화된 동작을 결함처럼 다시 기술한 것임
    • 나머지 하나는 실제 문제여서 관리자는 앞선 11개까지 모두 읽어야 하며, 11월에도 같은 일을 반복함
  • 도구를 들고 찾아온 기여자는 작은 문제를 고치고 보상을 요구하지 않으며, 관리자가 지쳐 있던 반복 질문에도 답함
    • 처음에는 그의 인내심에 감탄하지만, 시간이 지나자 관리자는 신원을 찾아보기 시작함
    • 3년째에 그가 저장소 열쇠를 요청하자 Madame Semver는 유일하게 이 카드만 뒤집어 둠

더 먼 미래와 다음 메이저 버전

  • 긴 기억을 가진 무언가는 오래된 README를 읽고, 3월에 제거된 함수를 약 2년 동안 확신에 차서 추천함
    • 관리자는 결국 해당 함수를 다시 추가하고 폐기 예정(deprecated) 으로 표시함
    • 사용자는 폐기 예정 경고를 버그로 신고함
  • 저장소 루트에는 불특정 대상을 향한 지침을 담은 모두 대문자인 파일이 생김
    • 이 파일은 관리자가 작성한 어떤 문서보다도 주의 깊게 읽힘
    • 시간이 지나면서 관리자는 다른 문서까지 같은 어조로 쓰지만, 언제 그렇게 결정했는지는 기억하지 못함
  • 어느 화요일 오후, Virginia의 무언가가 tarball을 11,000번 가져감
    • 공격이 아니라 누군가의 열정이 반복문을 돌리고 있으며, 그 반복문에 해당 패키지 이름이 들어간 결과임
  • 같은 달 관리자는 자신이 닫지 못하는 문을 대신 닫아 줄 자동화 하인을 고용함
    • 고용하지 않은 또 다른 하인은 그 문을 계속 열어 둠
    • 두 자동화 사이에서 같은 문이 1년 동안 열리고 닫히기를 반복함
  • 먼 미래에는 새로운 포크가 등장함
    • 포크 관리자는 지치지 않고 즉각 응답하며 모든 변경을 한 시간 안에 병합함
    • 아바타를 보는 순간 어떤 존재인지 알아볼 수 있고, 여러 사람이 원본보다 그 포크를 선호함
    • 그러나 포크 역시 원본 저장소를 캐럿으로 고정해 이후에 오는 모든 것을 허용함
  • 점술 요금제는 $1, $5, 작은 에나멜 배지가 포함된 $25의 세 단계지만, 관리자는 모두가 내는 $1만 지불함
  • Madame Semver는 다음 메이저 버전이 찾아오면 다시 오라고 말하면서도, 그것이 누구의 메이저 버전인지는 밝히지 않음
Read Entire Article