AI Slop Detector v2.6.2: 통합 테스트 증거 (“green CI”도 여전히 허구일 수 있기 때문에)
Source: Dev.to

“AI Slop”이란?
AI Slop은 겉보기에 정상적인 코드이지만 실제 인과 관계가 거의 없는 코드를 말합니다.
“깨졌다”는 아니고,
“악의적”인 것도 아니며,
그저 믿을 만큼 빈 코드일 뿐입니다.
전형적인 증상:
- 증거보다 앞서는 약속 (“production‑ready”, “scalable”)
- 테스트는 존재하지만 실제 의존성을 건드리지 않음
- 구현보다 문서와 구조가 더 빨리 성장
커뮤니티 피드백 (그리고 이 릴리즈가 존재하는 이유)
이 릴리즈는 OnlineProxy(https://onlineproxy.io/)의 사려 깊은 댓글 덕분에 만들어졌습니다.
그는 “완전해 보이는” 레포지토리와 녹색 CI가 여전히 허전하게 느껴진다고 지적했으며, 실제 레드 플래그를 제시했습니다:
CI는 녹색이지만, 실제 의존성을 건드리는 통합 테스트가 0개.
이는 사소한 지적이 아니라 실제 프로덕션 실패 모드입니다.
그 피드백을 버그 리포트처럼 다루면서 v2.6.2가 탄생했습니다.
v2.6.2의 새로운 점
1) 통합 테스트 증거 (명시적 구분)
“테스트가 존재한다”는 충분하지 않습니다. v2.6.2는 다음을 구분합니다:
tests_unit(빠르고 격리된 테스트)tests_integration(실제 의존성을 건드리거나 현실적인 경계를 테스트)
탐지는 네 가지 레이어를 사용합니다:
- 경로 기반 (
tests/integration/,e2e/,it/) - 파일명 패턴 (
test_integration_*.py,*_integration_test.py) - Pytest 마커 (
@pytest.mark.integration,@pytest.mark.e2e) - 런타임 신호 (
TestClient,testcontainers,docker‑compose)
2) 주장에 이제 통합 테스트 증거가 필요
강력한 주장은 이제 더 강력한 증거를 요구합니다:
- production‑ready →
tests_unit와tests_integration모두 필요 - scalable / fault‑tolerant →
tests_integration필요
이로써 코드가 완전해 보이지만 실제 의존성 하에서는 아무것도 증명하지 못하는 격차를 메웁니다.
3) 더 명확한 보고서와 질문
목표는 “숫자를 더 늘리는 것”이 아니라 검사 가능한 출력을 제공하는 것입니다. 보고서와 질문에 이제 다음이 표시됩니다:
- 단위 테스트와 통합 테스트 구분
- 생산성 주장이 있지만 통합 테스트가 없을 때 명시적인 경고
- 더 읽기 쉬운 증거 라벨 (예: “integration tests”)
빠른 시작
# 설치 / 업그레이드
pip install -U ai-slop-detector
# 프로젝트 스캔
slop-detector --project .
CI 예시
# Soft: 보고만 함 (절대 실패하지 않음)
slop-detector --project . --ci-mode soft --ci-report
# Hard: 임계값 초과 시 실패
slop-detector --project . --ci-mode hard --ci-report
# Claims strict: 생산성 주장이 통합 테스트 증거가 없을 때 실패
slop-detector --project . --ci-mode hard --ci-report --ci-claims-strict
왜 중요한가 (한 줄 요약)
AI 시대의 실패는 종종 구문 오류가 아닙니다. 깔끔한 구조와 녹색 CI 뒤에 숨은 검증 격차가 문제입니다. v2.6.2는 가장 흔한 격차 중 하나인 **“통합 테스트 0개”**를 측정·보고·게이트할 수 있게 합니다.
링크
- Repo:
- CI:
- Changelog: