# task-1270.1 완료 보고서

## SCQA

**S**: `image_workflow.py`는 이미지 제작 QC 게이트 워크플로우의 프롬프트 생성 모듈로, task-1269.1에서 에스컬레이션 섹션 인라인 호출 7곳을 외부 파일 참조로 교체했다.

**C**: 그러나 `_build_escalation_section` 함수 본체가 삭제되지 않고 잔존하여 미사용 코드(dead code)로 남아 있었고, `build_workflow_overview_prompt`의 `campaign_type` 파라미터도 `_ = campaign_type`으로 명시적 미사용 상태였다.

**Q**: 미사용 함수와 미사용 파라미터를 제거하여 코드를 정리하고, pyright 0 에러 + 기존 테스트 전체 통과를 유지할 수 있는가?

**A**: 미사용 함수 삭제, 미사용 파라미터 제거, 관련 테스트 3개 파일 동시 업데이트 완료. pyright 0 에러, pytest 41/41 전체 통과.

## 작업 내용

### 1. `_build_escalation_section` 미사용 함수 삭제
- grep 확인: 프로덕션 코드 호출 0건 (테스트에서만 import)
- `prompts/image_workflow.py`에서 함수 정의 삭제 (9줄)

### 2. `build_workflow_overview_prompt`의 `campaign_type` 미사용 파라미터 제거
- 함수 시그니처에서 `campaign_type: str = "conversion"` 제거
- 함수 본문의 `_ = campaign_type` 줄 + docstring Args 항목 삭제
- `dispatch.py` 호출부에서 `campaign_type="conversion"` 인자 제거
- 참고: `build_phase4_prompt`의 `campaign_type`은 6곳에서 실제 사용 중이므로 유지

### 3. 테스트 동시 수정
- `tests/test_token_optimization_green.py`: `_build_escalation_section` import 제거 + `test_escalation_function_still_exists` 메서드 삭제
- `tests/test_dispatch_workflow.py`: T2 클래스의 campaign_type 전달 테스트 업데이트, T6 클래스의 기존 실패 테스트 2건 수정

## 발견 이슈 및 해결

### 자체 해결 (3건)
1. **T6 `test_contains_category_a_code` 기존 실패** — task-1269.1에서 overview QC 상세 제거했으나 테스트 미갱신. `test_qc_details_not_inlined_in_overview`로 대체
2. **T6 `test_contains_glyph_overlap_text` 기존 실패** — 동일 원인. 위 테스트에 통합
3. **작업 지시 "Phase 4 build 함수의 campaign_type" 모호** — `build_phase4_prompt`의 campaign_type은 6곳에서 실제 사용 중(weight_key 계산, 프롬프트 출력). 진짜 미사용인 `build_workflow_overview_prompt`의 campaign_type을 제거

## 산출물

- `/home/jay/workspace/prompts/image_workflow.py` (수정: 함수 삭제 + 파라미터 제거)
- `/home/jay/workspace/dispatch.py` (수정: 호출 인자 제거)
- `/home/jay/workspace/tests/test_token_optimization_green.py` (수정: import + 테스트 메서드 삭제)
- `/home/jay/workspace/tests/test_dispatch_workflow.py` (수정: T2 + T6 테스트 업데이트)

## 검증 증거

- **pyright**: `prompts/image_workflow.py` + `dispatch.py` → 0 errors, 0 warnings, 0 informations
- **pytest**: `test_token_optimization_green.py` + `test_dispatch_workflow.py` → 41/41 passed (0.30s)
- **grep**: `_build_escalation_section` → image_workflow.py 내 0건 매치 확인
