'점수도 순위도 매기지 않는다'를 구현에서 어떻게 지킬 것인가. Grift CLI가 다음 버전에서 정한 5가지 조건
Grift CLI는 점수나 순위를 매기지 않겠다고 약속하고 있습니다. 2026년 10월 대조 작업에서, 주석에는 순위가 아니라고 적혀 있으면서도 표는 커밋 수가 많은 순서대로 정렬되어 있었던 점이 발견되었습니다. 다음 버전(0.8)에 부여할 5가지 인수 조건을 발주사·SES 영업·엔지니어 분들을 위해 알기 쉽게 작성합니다.
“점수나 순위를 매기지 않습니다.” Grift는 griftai.org에서도 cor-jp.com에서도 그렇게 약속하고 있습니다.
하지만 약속을 글로 쓰는 것과 소프트웨어가 그 약속을 지키는 것은 다른 문제입니다. 이 글에서는 2026년 10월 25일에 Grift CLI 내부에서 발견한 어긋남과, 다음 버전(0.8)에 부여하기로 한 5가지 조건을 적습니다. 발주자분들, 소개 회사·SES 영업 담당자분들, 추천받는 엔지니어분들을 위해 가능한 한 알기 쉽게 썼습니다.
현장에서 일어난 일
Grift CLI에는 하나의 리포지토리에 기여한 사람들을 목록으로 표시하는 출력이 있습니다(actor-index). 공개 중인 v0.7.2에서는 이 목록에 “커밋 수로 추출했을 뿐이며, 품질 순위가 아닙니다”라는 주석이 달려 있습니다.
그런데 표의 행은 커밋 수가 많은 순서대로 정렬되어 있었습니다.
주석은 “순위가 아니다”라고 말하지만, 표의 정렬은 커밋 수로 결정되어 있습니다. 읽는 사람의 눈에 먼저 들어오는 것은 주석이 아니라 표입니다. 맨 윗줄에 있는 사람을 “가장 잘한 사람”으로 읽어버리는 것은 읽는 이의 책임이 아니라, 정렬 방식의 책임이라고 생각했습니다.
같은 날 대조 작업에서 또 하나의 결손을 발견했습니다. grift align은 안건 측이 선언한 요구와 후보자의 관측을 나란히 놓는 방향만 가지고 있었고, 엔지니어 측이 안건에 요구하는 사항을 선언하는 진입로가 없었습니다. “추천하는 사람에게도, 추천받는 사람에게도”라고 적어 온 약속의 절반이 구현에는 없었던 셈입니다.
두 가지 모두 Cor.가 자사 사이트의 문구와 CLI 출력을 한 줄씩 대조하며 찾아낸 것입니다. 이용자로부터 지적받은 것이 아닙니다. 발견한 당일에 설계 판단 기록(ADR)으로 남겨 두었습니다.
왜 정렬 순서만 먼저 고치는가
커밋 수를 표시하는 것 자체를 중단하면 된다는 생각도 있을 수 있습니다. Grift는 그렇게 하지 않았습니다.
커밋 수는 분모가 있는 사실입니다. griftai.org의 데모에 있는 “274건 중 73건”도 모수가 없으면 읽을 수 없습니다. 지워버리면 이용 규범 제1조 “부재를 부정적으로 읽지 않는다”와도 충돌합니다. 지우는 것은 값이 아니라 정렬 순서입니다.
정렬 순서는 사실이 아니라 보여주는 방식의 선택입니다. 누가 많은지를 맨 앞에 두는 것은 받아보는 쪽에서 순위로 읽게 만드는 연출 방식입니다. 다음 버전에서는 목록의 기본 정렬을 ID의 사전순으로 바꿉니다. 커밋 수의 수치는 남습니다. 커밋을 늘려도 표의 위쪽으로 올라오지 않게 됩니다.
다음 버전(0.8)에 부여하는 5가지 조건
0.8 계열의 모든 변경 사항에 다음 5가지 인수 조건을 부여하기로 했습니다.
1. 관측한 양으로 사람을 정렬하지 않는다
사람을 나열하는 출력의 기본 정렬은 ID의 사전순으로 설정하며, 커밋 수·줄 수·일수 등의 관측량에 의존하지 않도록 합니다. 수치 자체는 분모가 있는 사실로서 남깁니다.
2. 양으로 선택할 때는 양이라는 점을 이름과 주석으로 명시한다
--top N라는 옵션은 관측한 커밋 수가 많은 N명을 추출합니다. 이는 양에 따른 선별입니다. 다음 버전에서도 유지하겠지만, 도움말과 출력 주석에 “선별 기준은 커밋 수이며, 품질이나 순위가 아니다”라고 계속 기재합니다. 이름을 바꿀지 혹은 폐지할지는 기존의 사용 방식을 깨뜨리는 변경이 되므로 그 이후 버전에서 판단합니다. 새로운 선별 메커니즘을 관측량으로 만드는 일은 하지 않습니다.
3. 참조 분포상의 위치는 요청받았을 때만 표시한다
Grift에는 공개 리포지토리의 참조 분포 중에서 해당 리포지토리의 수치가 어느 구간에 있는지를 표시하는 기능이 있습니다. 사람이 아니라 리포지토리의 위치이지만, 직접 실행한 본인은 “내 리포지토리는 상위 N%“라고 읽을 수 있습니다. 비율을 높이면 구간도 올라갑니다. 다음 버전 이후로는 참조 분포의 버전을 명시하여 요청했을 때만 표시하며, 기본적으로는 “참조 분포가 요구되지 않음”이라는 사유가 첨부된 미관측 상태로 처리합니다.
4. 수치를 “부풀리는 방법”을 공개하고, 보정은 하지 않는다
테스트 병행 수정률은 테스트 파일에 대한 형식적인 한 줄 변경으로도 올라갑니다. 변경된 줄 수는 보지 않습니다. 최근 180일간의 변경 일수는 매일 1건의 작은 커밋으로 채워집니다.
이러한 경로는 수치 곁에 고정된 문장으로 함께 적습니다. 가중치 부여나 보정은 하지 않습니다. 이용 규범 제7조가 맥락이나 난이도에 따른 수치 보정을 금지하고 있기 때문입니다. 공개는 읽는 이가 수치의 한계를 알 수 있도록 하기 위한 것입니다. 수치 부풀리기를 적발하기 위한 기능이 아닙니다.
5. 선언과 관측을 섞지 않는다. 양방향 모두
안건 측의 요구는 “선언”, 후보자의 git 이력은 “관측”입니다. grift align은 이 두 가지를 축별로 나란히 놓고 일치·범위 외·0건·미관측·요구 없음의 5가지 방식으로 출력합니다. 종합 점수도 순위도 합격/불합격 판정도 만들지 않습니다.
엔지니어 측이 안건에 요구하는 사항을 선언하는 진입로를 만드는 경우에도 동일한 5가지 단어와 동일한 금지 사항을 적용합니다. 어느 방향이든 선언과 관측은 서로 다른 칸에 둡니다.
읽는 입장별 안내
발주자분들께. 목록 위쪽에 있는 사람이 좋은 사람이라는 방식의 해석은 다음 버전부터는 불가능해집니다. 정렬은 ID 순입니다. 수치는 면담에서 질문할 내용을 구체화하기 위한 재료로 활용해 주십시오.
소개 회사·SES 영업 담당자분들께. 후보자 본인이 공유한 기록을 순위표로 재구성하여 사용하는 것은 이용 규범에 어긋나는 사용 방식입니다. 추천 사유는 값과 분모, 그리고 관측할 수 없었던 사유를 덧붙여 전달해 주십시오.
엔지니어분들께. 커밋을 늘려도 목록 위쪽으로 올라오지 않습니다. 제출할 리포지토리를 선택했다는 사실 자체는 받아보는 쪽이 알 수 있는 형태로 남습니다. 선택하는 것을 금지하지는 않습니다. 숨기지 않을 것을 요구하고 있습니다.
정리
약속은 글에 적는 것만으로는 지킬 수 없습니다. 글과 구현이 어긋나 있다면 구현을 고치고, 고친 경위를 공개합니다.
0.8은 아직 릴리스하지 않았습니다. 정렬 순서를 바꾸면 이전 버전에서 저장한 목록의 검산 결과가 일치하지 않게 되므로, 정의의 버전 번호를 올리는 작업과 함께 내놓을 예정입니다.
참고 자료
- Grift - 제품 사이트. 3가지 약속과 관측하는 항목
- grift-cli(GitHub, MIT) - CLI 소스 코드
- TEP 이용 규범(norms) - 제1조 “부재를 부정적으로 읽지 않는다”, 제7조 “가중치 부여·환산 금지”,
--top N및grift align취급 방식 - grift 보고서 읽는 법(metrics-guide) - 지표별 알기 쉬운 해설과 십분위수 표기 규칙
- Grift 사례 페이지 - cor-jp.com의 실적 소개
이 글의 내용을 회사에서 진행하고 싶다면
인재 소개 회사・SES 기업을 위한 Grift 시범 도입(PoC) 상담은 AI 접수 「Cloudia」에서 받고 있습니다.
Support this article
If this article was helpful, please support us with a tip. You can choose any amount.
관련 글
이력서의 연차로는 일하는 방식을 알 수 없다. 점수를 매기지 않는 Grift로 실제 OSS 4개를 측정해 보았다
이력서의 연차나 공수(맨먼스)만으로는 그 사람이 어떤 방식으로 일해 왔는지 알 수 없습니다. Cor.이 점수도 순위도 매기지 않는 Grift를 만든 이유와 MBTI와의 차이점, 실제 OSS 4개를 측정하여 보인 것과 보이지 않았던 점을 소개 회사·SES 영업 담당자 및 엔지니어 여러분을 위해 전합니다.
AI 개발·수탁 개발 견적이 개인 역량에 의존하게 되는 이유 ~ 근거를 회사의 자산으로 바꾸는 방법
수탁 개발 견적이 사람마다 달라지는 이유와 GitHub 실적, 시장 시세, 공수 내역을 활용하여 설명 가능한 견적 근거를 구축하는 방법을 설명합니다. Grift 활용에 대한 접근법도 소개합니다.
AI 기반 개발(AI 주도 개발)이란? 속도뿐만 아니라 프로덕션 품질을 높이는 개발 체제 구축 방법
AI 기반 개발을 단순한 코드 생성에 그치지 않고, 요구사항 정의, 리뷰, 테스트, 운영에 이르기까지 프로덕션 품질로 내재화하는 접근 방식을 설명합니다. AI 개발을 내재화하고자 하는 기업을 위한 글입니다.