동작 방식

SlopGuard는 이렇게 동작합니다

웹훅이 들어오면 몇 초 안에 점수, 라벨, 리뷰 코멘트가 달립니다. 붙일 CI도, 돌릴 서버도 없습니다.

슬롭을 걸러내는 파이프라인fig.00
PR / ISSUE → SCORE
01파이프라인

PR 한 건이 처리되는 과정

1이벤트
GitHub이 이벤트를 보냄

PR이나 이슈가 열리거나, 수정되거나, 코멘트가 달립니다.

pull_requestissuesissue_comment
2탐지 에이전트
세 가지 신호, 하나의 점수
규칙 휴리스틱: 보일러플레이트, 이모지 마케팅 헤더, 빈 본문, 프롬프트 인젝션
출처 추적: 생성기 힌트, 프롬프트 지문, 누출된 어시스턴트 문구
LLM 판정(선택): 레이트리밋 시 휴리스틱으로 폴백
블렌딩 후 0~100으로 보정
3정책 게이트
임계값이 판단

점수를 레포의 .github/SLOP_POLICY.yml과 대조합니다.

미만: 아무 일 없음이상: 조치
4사람이 결정
라벨만, 절대 자동 닫지 않음

slop-quarantine 라벨과 근거가 담긴 리뷰 코멘트. 최종 결정은 언제나 당신 몫입니다.

/slop approverejectfalse-positive
02해 볼 수 있어요

임계값은 당신이 정합니다

라이브 데모: 슬롭 점수 게이트fig.02
임계값을 드래그해 보세요임계값 50 / 100
격리 2조용히 통과 3
  • PR #218의존성 최신 버전으로 올림16통과
  • PR #241인증 콜백 리팩터43통과
  • #312재현 명확한 기능 요청28통과
  • PR #233이모지 헤더 문서 12개 추가79격리됨
  • PR #239README 통째로 재작성 (기계 생성)93격리됨

임계값 이상이면 라벨과 리뷰 코멘트를 답니다. 아래면 조용히 둡니다. 기준은 당신이 정하고, 최종 결정은 늘 사람 몫입니다.

03단계별로

전체 흐름

  1. 1SlopGuard가 pull_request / issues / issue_comment 이벤트를 받습니다. 신뢰할 수 없는 텍스트는 요청별 nonce 마커로 격리됩니다.
  2. 2규칙 신호(보일러플레이트, 이모지 마케팅 헤더, 빈 본문, 거대한 diff, 프롬프트 인젝션)가 먼저 돌고, LLM 판정은 선택이며 레이트리밋 시 안전하게 폴백합니다.
  3. 3출처 추출은 생성기 힌트, 프롬프트 지문, 누출된 어시스턴트 문구를 찾습니다. 점수는 블렌딩 후 0-100으로 보정됩니다.
  4. 4임계값 아래면 아무 일도 없습니다. 이상이면 slop-quarantine 라벨과 근거가 담긴 리뷰 코멘트가 달립니다.
  5. 5슬래시 명령으로 답합니다. reject는 본인이 직접 닫는 동작이고, approve는 격리를 해제하며, false-positive는 튜닝 이슈를 엽니다.

공개 레포는 무료. 클릭 한 번, 설정 불필요.