# CBMC LINK 원고·이미지 디자인 전달 가이드

기준일: 2026-09-22  
대상: 편집자, 원고 작성자, 사진 담당자, 현업 디자이너, 개발자

## 1. 결론

디자이너에게 **텍스트 파일과 이미지 폴더만 전달하면 부족하다.**

각 콘텐츠는 아래 4가지를 하나의 패키지로 전달해야 한다.

1. **Placement** — Index/V3의 어느 슬롯에 들어가는지
2. **Manuscript** — 제목, 요약, 본문, 인용문, 메타데이터
3. **Media** — 원본 이미지, crop 기준, alt, caption, credit, 권리 상태
4. **Approval** — 원고·팩트·이미지 권리·최종 승인 상태

`content-inventory.csv`가 콘텐츠 배치와 준비 상태의 단일 현황판이며, 원고 문서와 이미지 파일은 이 표의 `content_id`로 연결한다.

---

## 2. 권장 운영 구조

CBMC 업무 환경에서는 다음 조합을 권장한다.

- **Notion 콘텐츠 인벤토리:** 상태, 담당자, 마감일, 부족 항목, 승인 기록
- **Google Drive:** 원고 원본과 고해상도 이미지 파일
- **Figma:** 확정된 콘텐츠를 실제 화면에 배치하고 디자인 검수
- **Payload CMS:** 최종 승인된 원문과 메타데이터를 입력하는 발행 원본

Notion이나 스프레드시트는 현황판이지 원고 자체의 유일한 저장소가 아니다. 원고 파일과 이미지 원본은 Drive에 보존하고 `content_id`로 연결한다.

---

## 3. 폴더와 파일명

```text
CBMC-LINK/
└── VOL01/
    ├── 00_inventory/
    │   ├── content-inventory.csv
    │   └── asset-manifest.csv
    ├── IDX-01_issue-masthead/
    │   ├── IDX-01_manuscript.docx
    │   └── IDX-01_notes.md
    ├── STORY-001_cover-story/
    │   ├── STORY-001_manuscript.docx
    │   └── images/
    │       ├── STORY-001_HERO_01_original.jpg
    │       ├── STORY-001_PORTRAIT_01_original.jpg
    │       └── STORY-001_DETAIL_01_original.jpg
    └── V3-P07_cover-person/
        ├── V3-P07_notes.md
        └── images/
            └── V3-P07_PORTRAIT_01_original.jpg
```

파일명에는 최소한 `content_id`, 이미지 역할, 순번을 포함한다.

```text
STORY-001_HERO_01_original.jpg
STORY-001_INLINE_01_original.jpg
STORY-001_PORTRAIT_01_original.jpg
```

`최종.jpg`, `진짜최종2.jpg`, `수정본.jpg` 같은 파일명은 사용하지 않는다.

---

## 4. Index 슬롯 단위로 전달하기

원고 작성자가 페이지 좌표나 디자인 위치를 직접 지시하기보다 **슬롯 ID와 콘텐츠 목적**을 지정한다.

| Slot | 역할 | 필수 전달물 |
|---|---|---|
| `IDX-01` | Issue Masthead | 호수, 발행일, Issue 제목·주제, Primary Story 링크, 선택 이미지 |
| `IDX-02` | Editor's Selection | 추천 기사 1–3개, 순서, 추천 이유, 링크 |
| `IDX-03` | Featured Story | 대표 기사 제목, dek, 메타, hero 이미지, canonical URL |
| `IDX-04` | Story Grid | 일반 기사 목록, 카드 이미지 선택, 카테고리, 링크 |
| `IDX-05` | Field/Community | 지회·행사·현장 콘텐츠와 날짜·장소·출처 |
| `IDX-06` | Resources | 선택 자료 콘텐츠, 파일/외부 링크, 파일 형식·크기 |
| `IDX-07` | Participation CTA | 제보·참여 목적, CTA 문구, 실제 목적지, 담당자 |
| `IDX-08` | Next Issue | 다음 호 주제, 모집 내용, 마감일, 접수 경로 |
| `IDX-09` | Footer | 발행 주체, 연락처, 정책·권리 문구 |

동일한 Story가 V2와 V3에 모두 쓰이면 원고를 복제하지 않는다. `STORY-001` 원문을 하나만 두고 V3는 `page_order`, `selected_quote`, `crop`, `spread_type`만 추가한다.

---

## 5. 원고 패키지 필드

### 기사 필수

```yaml
content_id: STORY-001
index_slot: IDX-03
content_type: cover_story
status: DRAFT
kicker_ko: 일터 이야기
kicker_en: COVER STORY # 선택
headline: 제목 전체
summary: 카드와 헤더용 요약
body: 전체 본문
primary_quote: 선택 인용문
category: 사람과 일터
author: 작성자
organization: 소속/지회
published_at: YYYY-MM-DD
canonical_slug: /stories/...
cta_label: 기사 전문 읽기
cta_url: /stories/...
```

### 이미지 필수

```yaml
asset_id: STORY-001-HERO-01
content_id: STORY-001
role: hero
file_name: STORY-001_HERO_01_original.jpg
subject_focus: 인물 얼굴 기준 중앙 상단
allowed_crop: 16:9, 3:2, 4:5
alt: 화면을 보지 못해도 의미를 이해할 수 있는 설명
caption: 사진 아래 표시할 설명
credit: 촬영자/제공처
consent_status: approved | pending | rejected
usage_scope: web-magazine | social | print
expires_at: YYYY-MM-DD | none
ai_generated: false
```

---

## 6. 상태 체계

| 상태 | 의미 |
|---|---|
| `NOT_STARTED` | 배정만 됨 |
| `DRAFT` | 원고·자료 작성 중 |
| `EDIT_REVIEW` | 편집 검토 중 |
| `FACT_CHECK` | 이름·직책·날짜·성경 구절·행사 정보 확인 중 |
| `RIGHTS_CHECK` | 사진 동의·출처·사용범위 확인 중 |
| `READY_FOR_DESIGN` | 디자이너가 추가 질문 없이 배치 가능 |
| `DESIGN_PLACED` | Figma/시안에 배치됨 |
| `FINAL_APPROVED` | 원고·이미지·디자인 최종 승인 |
| `BLOCKED` | 필수 자료 또는 결정 부족 |

`READY_FOR_DESIGN`은 단순히 원고가 작성됐다는 뜻이 아니다. 아래 게이트를 모두 통과해야 한다.

```text
Text final
+ Fact check complete
+ Required media delivered
+ Alt/caption/credit complete
+ Consent/rights approved
+ CTA destination confirmed
+ Editorial owner approved
= READY_FOR_DESIGN
```

---

## 7. 부족 여부를 바로 찾는 필드

`content-inventory.csv`의 다음 열은 반드시 분리해서 관리한다.

- `text_status`
- `fact_status`
- `media_status`
- `rights_status`
- `link_status`
- `editorial_approval`
- `design_readiness`
- `blocker`

예시:

```text
text_status=FINAL
media_status=MISSING
rights_status=PENDING
link_status=CONFIRMED
design_readiness=BLOCKED
blocker=실제 회원 인물사진 및 웹 공개 동의서 필요
```

이렇게 해야 “원고는 끝났는데 디자인을 시작할 수 없는 이유”를 바로 확인할 수 있다.

---

## 8. 디자이너 전달 단위

디자이너에게 한 번에 전달하는 최소 단위:

```text
[STORY-001]
1. content-inventory 행
2. 최종 원고 파일
3. asset-manifest 행
4. 이미지 원본 파일
5. crop/focal point 메모
6. 참고 화면 또는 편집 의도 1–3줄
7. 승인자와 승인일
```

PDF 스크린샷이나 메신저 대화만으로 원고를 전달하지 않는다. 수정사항은 원고 원본과 인벤토리에 반영하고 변경 이력을 남긴다.

---

## 9. 현재 코드 기준 발견 사항

2026-09-22 코드 점검 기준:

- 현재 `/`는 V2 Index가 아니라 V3 `BookExperience`를 직접 렌더링한다.
- V2 Index 슬롯은 디자인 계약만 있고 실제 페이지 구현은 아직 없다.
- V3의 텍스트는 대부분 샘플 원고 상태다.
- 실제 회원 인물사진은 누락되어 있다.
- 현장·챕터 이미지 3개는 데모 자산이며 출처·동의·사용범위 확인이 필요하다.
- 공개 Reader Header에 `/admin` 링크가 남아 있어 D12 결정과 충돌한다.
- 행사 날짜, 다음 호 마감일, 이메일 주소, 인물·지회 이야기는 팩트체크가 필요하다.

초기 상태는 `content-inventory.csv`에 기록했다.

---

## 10. 편집회의에서 확인할 화면

매주 인벤토리를 다음 순서로 본다.

1. `BLOCKED` — 누가 무엇을 해결해야 하는가
2. `RIGHTS_CHECK` — 사진을 써도 되는가
3. `FACT_CHECK` — 이름·직책·날짜가 맞는가
4. `READY_FOR_DESIGN` — 이번 주 디자이너 전달분
5. `DESIGN_PLACED` — 문맥·crop·텍스트 누락 검수
6. `FINAL_APPROVED` — 발행 가능분

완료율 하나만 표시하지 말고, **배치 슬롯별 필수 게이트**를 보여준다.
