-
Notifications
You must be signed in to change notification settings - Fork 0
05 Testing and Quality
hywznn edited this page Aug 16, 2026
·
1 revision
uv run pytest
uv run ruff check app tests변경 범위가 문서 엔진·스크립트·내장 프로젝트를 포함하면 해당 디렉터리의 별도 기준도 확인합니다.
전체 테스트 한 번의 성공/실패만으로 기능 상태를 판단하지 않습니다.
| 프로필 | 대상 | 외부 조건 |
|---|---|---|
| Core | Agent·API·문서 기본 계약 | 외부 Provider 없음 |
| Qdrant | Retrieval·Runtime composition |
language-retrieval, Qdrant |
| Windows OCR smoke | PowerShell smoke script | Windows/PowerShell |
| Model Provider | BERT·A.X·LLM 실제 추론 | HF Token, 모델 캐시, 장치 |
| Staging E2E | Server→AI→Provider→Server 저장 | 배포 환경과 Secret |
프로필 분리와 PR required check는 AI #34에서 추적합니다.
- PLAN에서 대표 Intent·Workflow 확정
- A.X confidence와 BERT routing score 분리
- evidence가 원문 exact substring인지 확인
- ANALYZE가 Intent 모델을 다시 호출하지 않음
- ANALYZE
providerAttemptCount=0 - Candidate workflow가 planned workflow와 일치
- OUT_OF_SCOPE에서 DB Context와 ANALYZE 생략
- ask_hr, ask_worker, generate, out_of_scope 분기
- 동일
taskId재개 시 승인된 Slot·OCR 결과 병합 - Worker 안내 생성 실패 시 발송 문자열 없음
- 내부 Slot key가 Worker 문구에 노출되지 않음
- 4개 문서 descriptor와 실제 생성 상태 검증
- MIME·파일 크기·Template allowlist
- request ID header/form 일치
- 허용 필드만 반환
- 신뢰도 미달은 REVIEW_REQUIRED
- 원본 bytes·민감 필드 로그 미출력
- Template ID allowlist
- 입력값과 실제 문서 필드 매핑
- 실패를 성공으로 표시하지 않음
- 변환 전후 형식·구조 검증
PR 본문에는 다음을 분리해 적습니다.
- 관련 테스트와 통과 개수
- 전체 테스트 결과
- 환경 의존 skip/failure
- Ruff 범위와 결과
- 실 Provider smoke 수행 여부
- 배포 smoke 수행 여부
테스트 통과와 실통신 통과를 같은 의미로 쓰지 않습니다.
- 실제 여권번호·외국인등록번호·전화번호를 fixture에 사용하지 않습니다.
- synthetic fixture도 실제 인물처럼 오인되지 않도록 명확히 표시합니다.
- 실패 로그 assertion은 민감 값의 미출력을 함께 검증합니다.
마지막 기준 점검: 2026-08-16 · Source of Truth: 대상 브랜치의 코드와 계약 테스트