Probe
Probe는 변이 테스트(Mutation Testing) 기반의 테스트 스위트 품질 검증 프레임워크입니다. 정적 코드 분석이나 LLM 기반 주관적 리뷰가 식별하기 어려운 테스트 행위 검증 공백을, 소스코드 구문을 체계적으로 변이시킨 후 기존 테스트 스위트가 이를 실패로 검출하는지 여부를 통해 결정론적으로 판정합니다. 테스트 스위트가 통과 상태를 유지하면서 생존한 변이체(Survivor Mutant)는 실제 비즈니스 로직의 검증 공백을 입증하는 객관적 데이터입니다.
단순 라인 커버리지는 코드의 실행 여부만을 나타내며, 실질적인 결함 검출 능력을 보장하지 않습니다. Probe는 **결정론적 변이 실행 엔진(Runner)**과 **공학적 판정 레이어(Test Quality Critic)**를 명확히 분리합니다. 러너는 AST 변이 후 생존한 변이체 목록을 산출하며, Critic 서브시스템은 해당 실측 데이터에 입각하여 각 변이체의 영향도를 체계적으로 분류(Triage)합니다.
핵심 개념
- 구문 변이 엔진 (
cosmic-ray) — 변경된 소스코드 모듈을 대상으로 연산자, 불리언 식, 경계 조건을 체계적으로 변이시키고 테스트를 실행합니다. - 생존 변이체 (Survivor Mutant) 추출 — 테스트 스위트가 통과함으로써 실패 검출에 실패한 변이체를 식별하여 유효 검증 결함으로 보고합니다.
- 테스트 품질 판정 (Test Quality Critic) — 생존 변이체를 정밀 분석하여
real-gap(실질 결함),equivalent(동치 변이),low-value(저가치)로 분류하고 구조화된 판정 결과(verdict,rationale,suggested_test_intent)를 산출합니다. - 판정 원장 영속화 (
probe-ledger.yaml) — 이미 심의 완료된 변이체 분류 이력을 기록하여 반복 실행 시 신규 변이체만을 증분 심의함으로써 검증 비용을 최소화합니다. - 미면제 실질 결함(Unwaived Real Gap) 지표화 — 단순 점수 수치가 아닌 미면제 실질 결함 건수를 핵심 품질 지표로 노출합니다.
- 권고 리포트 제공 — Probe는 현재 평가 리포트만 제공하며 빌드나 PR을 차단하지 않습니다. 차단 게이트 연동은 향후 로드맵 과제입니다.
- CLI 명령어 체계 —
probe survey(변이 수행 및 생존 변이체 목록 추출) 및probe absorb(판정 결과의 원장 반영) 명령어를 제공합니다.
설치 및 실행 파라미터는 영문 참조 페이지(Probe)를 참고하십시오.