# 구조화 데이터 QA 리포트 — {{프로젝트명}}

> 클라이언트 검토용. **원본 JSON이 아니라 결함 리포트를 검토합니다.**
> 이 리포트에 오른 엔트리는 모두 기계 검증(Layer 0–4)을 통과한 **P0 0건** 상태입니다.

| 항목 | 값 |
|---|---|
| 데이터셋 | `{{dataset_파일명}}` |
| 검증 일시 | {{YYYY-MM-DD HH:MM}} |
| 검증 모드 | A — Dataset QA (배포 전) / B — Live audit (배포 후) |
| 엔트리 수 | {{entries}} (파싱 성공 {{valid_entries}}, 노드 {{nodes}}) |
| **게이트** | **{{PASS / FAIL}}** (PASS = P0 0건) |
| 결함 | P0 {{n}} · P1 {{n}} · P2 {{n}} |
| Audit ID | SCHEMA-{{YYYYMMDD}}-{{NNN}} |

## 1. 한눈에 보기

- ✅ **검토 가능 엔트리**: P0 0건을 통과한 {{n}}개 — 아래 판단 항목만 확인해 주세요.
- ⛔ **보류 엔트리**(있다면): P0 {{n}}건으로 검토 대상에서 제외. 수정 후 재검증합니다.
- 이번 검토에서 **사람의 판단이 필요한 것**은 기계가 잡지 못하는 두 가지뿐입니다:
  1. 페이지에 맞는 스키마 **타입**이 선택되었는가
  2. 표시되는 **문구(설명·이름)**가 사실과 정확히 일치하는가

## 2. 결함 요약 (코드별)

| 심각도 | 코드 | 건수 | 의미 |
|---|---|---|---|
| P0 | {{CODE}} | {{n}} | {{한 줄 설명}} |
| P1 | {{CODE}} | {{n}} | {{한 줄 설명}} |
| P2 | {{CODE}} | {{n}} | {{한 줄 설명}} |

> 코드 정의: `references/defect-taxonomy.md`. 전체 목록: 첨부 `defect_log.csv`.

## 3. P0 블로커 (있을 경우 — 검토 전 수정 필수)

| 엔트리 | 타입 | 코드 | 내용 | 담당 | 상태 |
|---|---|---|---|---|---|
| {{entry_id}} | {{type}} | {{CODE}} | {{message}} | {{owner}} | open |

## 4. 클라이언트 확인 요청 (판단 항목)

기계가 통과시킨 엔트리 중, 사람의 확인이 필요한 항목입니다.

| # | URL / 페이지 | 확인 요청 | 비고 |
|---|---|---|---|
| 1 | {{url}} | 이 페이지에 `{{@type}}` 타입이 맞습니까? | |
| 2 | {{url}} | 설명/이름 문구가 정확합니까? | |

## 5. 다음 단계

- **PASS인 경우**: 위 4번 판단 항목 확정 → 배포 단계(G4 안정화)로 이동, 샘플을 Google
  Rich Results Test로 최종 확인.
- **FAIL인 경우**: P0 담당 배정 → 수정 → 재검증(`validate_schema.py`) → 본 리포트 갱신.
- P1 처리 방침(수정/수용)은 `decision-log.md`에 기록합니다.

---
*생성: 16-seo-schema-validator · 첨부: `report.md`, `defect_log.csv`, `results.json`*
