48 lines
6.3 KiB
Markdown
48 lines
6.3 KiB
Markdown
---
|
|
name: short-video-review
|
|
description: 13-compose의 실제 완성본을 여섯 영역에서 검수해 14-review의 근거·수정할 단계와 컷·추천을 작성하고 사용자 final 검토를 준비한다.
|
|
---
|
|
|
|
# 최종 영상 검수
|
|
|
|
## 시작 조건
|
|
|
|
[공통 계약](../../../docs/workflow-contracts.md)의 저장·전달, 승인·수정, 검수 판정 규칙과 [제작 지침의 최종 영상 검토](../../../docs/short-video-guide.md#최종-영상-검토)를 읽는다. [14 양식](../../../templates/stages/14-review.json)과 [결과 스키마](../../../contracts/artifact.schema.json)의 `14-review` 정의를 사용하며 새로운 입력·필드·검토 지점을 만들지 않는다.
|
|
|
|
개별 호출에서도 같은 제작물의 유효한 `13-compose`와 검수에 직접 사용한 선행 결과를 확인하고 실제 사용한 `{stage_id, revision}`을 `inputs`에 기록한다. 대본·제목·근거, 실측 음성·컷, 장면·인물·배경·이미지·영상은 검수에 필요한 해당 결과와 그 선행 관계를 읽는다. 다른 제작물·오래된 버전·stale 결과를 섞지 않는다.
|
|
|
|
project.json에서 story·scenes가 사용 버전과 연결된 실제 사용자 승인인지 확인한다. pending·changes_requested·stale 승인을 우회하지 않으며 같은 승인 버전은 재승인을 요구하지 않는다. 선행 조건인 Qwen3-TTS 음성, `gpt-image-2.5-sunburst` 이미지, `references/1.png` 그림체를 유지한다. 이 스킬은 실제 모델 API·영상 생성·합성 실행이나 엔진 선택을 담당하지 않는다.
|
|
|
|
13의 실제 MP4·SRT를 열고 영상을 끝까지 시청·청취한다. `media.verified=true`만으로 검수자의 관찰을 대신하지 않는다. 실제 최종 영상이 없거나 재생해 볼 수 없으면 recommendation=incomplete이며 확인하지 못한 영역은 not_checked로 남긴다. 빠진 결과·파일·승인과 돌아갈 단계를 총괄에 보고한다. 선행 파일 미확인은 verified=false, 미확인 메타데이터는 null로 취급하며 부분 결과의 완료를 인정하지 않는다.
|
|
|
|
## 여섯 영역의 실제 근거
|
|
|
|
`payload.checks`에 아래 area를 각각 한 번 포함하고 기존 `{area, verdict, evidence}`를 사용한다. verdict는 pass/fail/not_checked이며 증거 없이 pass로 만들지 않는다. evidence에 실제 파일·관찰/청취 구간·관련 블록/주장/자막/컷 ID와 확인 결과를 적는다. 검수하지 못한 이유도 이 필드에 남긴다.
|
|
|
|
| area | 실제 완성본에서 확인할 내용 |
|
|
|---|---|
|
|
| story | 중심 질문에 답하고 쉬운 말·구체적 행동으로 이해와 재미를 주는가. 블록 연결·근거의 범위가 유지되고 도입과 선정 제목의 약속을 끝에서 회수하는가. 확인한 02 주장과 03 블록·04 제목, 실제 영상 구간을 연결한다. |
|
|
| visual | 설명에 필요한 상태 변화·동작·카메라가 보이고 시작/끝 상태가 맞는가. 구조·수치·주석이 조사 근거와 맞으며 장식적 움직임이 설명을 가리지 않는가. 실제 컷과 관찰 내용을 기록한다. |
|
|
| audio | 실제 청취에서 내레이션의 의미·발음·음량이 자연스럽고 누락·중복이 없는가. 배경음·효과음이 있다면 말을 가리는지도 듣는다. 텍스트·파일 존재만으로 통과시키지 않는다. |
|
|
| captions | 실제 SRT와 표시 자막이 입력 언어·원문 의미·표시 순서를 지키고 음성 시간에 맞는가. 자막과 도해 주석의 역할, 모바일에서 대비·글자 크기·줄바꿈·표시 시간·가림을 확인한다. |
|
|
| timing | MP4 실측 길이가 양수·180000ms 이하, width:height가 9:16인가. 모든 실제 컷이 양수·5000ms 이하이고 요청/클립 길이, 통합 음성·영상·자막 구간이 일치하며 빈 구간·겹침이 없는가. |
|
|
| consistency | 인접 컷의 끝/시작 상태, 인물·배경 고정 특징, 위치·방향·카메라·그림체가 일관되는가. continuous 연결과 cut 전환이 승인된 장면 이유를 지키는가. 연결 컷 쌍으로 기록한다. |
|
|
|
|
## 문제와 추천
|
|
|
|
`payload.findings`는 `{severity, description, stage_id, cut_id}`다. severity는 blocking/minor, stage_id는 실제 수정할 단계, cut_id는 해당 컷 ID이며 전체 문제는 null이다. description에 실제 증상·구간·기대 결과·수정 방향을 적고 evidence와 일치시킨다.
|
|
|
|
대본·제목·근거 문제는 03/04/02, 음성 누락·중복은 05/06, 컷·자막 시간은 07, 장면 연결·고정 특징은 08/09, 이미지 문제는 10/11, 동작·클립 길이는 12, 합성·배치·SRT 문제는 13으로 보고한다. 정확한 stage_id 값을 사용하며 원인에 맞춰 돌아갈 단계를 고른다. 실제 클립 길이가 요청과 다른 것을 요청값으로 덮거나 재생 속도로 감추지 않는다.
|
|
|
|
recommendation은 다음 기존 값만 사용한다.
|
|
|
|
- pass: 여섯 영역이 모두 실제 근거를 가진 pass이고 fail/not_checked와 blocking 발견이 없을 때만 사용한다.
|
|
- revise: 확인된 실패나 blocking 문제를 수정해야 할 때 사용하고 담당 단계·컷을 연결한다. minor 발견도 보존하고 수정 필요성을 설명한다.
|
|
- incomplete: 실제 최종 영상이 없거나 볼 수 없고, 필수 영역·선행 자료를 확인하지 못해 판정을 완료할 수 없을 때 사용한다. 이미 확인한 실패도 findings에 보존한다.
|
|
|
|
## 저장과 사용자 final 검토
|
|
|
|
담당은 `projects/<project_id>/stages/14-review/r<revision>/artifact.json`과 같은 버전 `review.md`만 작성하고 이전 버전을 보존한다. [검토 양식](../../../templates/review.md)에 여섯 영역의 checks.evidence·findings·추천을 같은 의미로 요약하고, 제작 지침을 적용한 실제 결과와 소재에 맞지 않아 적용하지 않은 구성의 이유를 적는다.
|
|
|
|
총괄만 project.json의 상태·현재 포인터·승인을 작성한다. 담당은 검수 준비 여부·미확인 내용·수정 단계/컷과 영향받는 후속 결과·승인을 총괄에 보고한다. 13 실제 완성본과 14 보고서를 사용자 final 검토에 제시하며 검수자의 pass는 사용자 승인이 아니다. 응답 없음이나 담당의 추천을 승인으로 기록하거나 사용자 final 승인 전 제작 완료를 선언하지 않는다.
|