---
task_id: insuro-design-system
type: plan
scope: system
created: 2026-05-03
updated: 2026-05-03
status: in-progress
owner: design-team (아마테라스)
related_task: task-2421
---

# 계획서: InsuRo 디자인 시스템 — 가벼운 자동 평가 + retry-until-pass

**system**: InsuRo Design System (IDS) Phase 1 재작업 평가 레이어
**목표**: silent corruption 영구 차단 — 단조 그라데이션+박스 1종 패턴 자동 검출 + 5 hybrid 패턴 분화 보장 + 132 design-md 브랜드 적용 강제
**승인**: 제이회장 2026-05-03 "Phase 1 재작업 + 평가 시스템 — 더 가볍게 더 정확하게 더 퀄리티 높게"
**근거**: task-2421 본문 (회장 직접 5장 시각 확인 결과 = 5 패턴 분화 0)

---

## 목표 (회장 명시 3 원칙)

1. **더 가볍게**: BQ(5항목 10점) + PQ(7항목 14점) 인간 마아트/로키 3자 평가 사이클 → **단일 자동 코드 평가**. 인간 개입 0, 사이클 1.
2. **더 정확하게**: AI 주관 평가 X → **dq-rules.json 코드 수치 검증**. 결정론적, 재현 가능.
3. **더 퀄리티 높게**: **retry-until-pass 자동 워크플로우** (max 5 retry, 매번 다른 시드/패턴 hint).

성공 기준 (측정 가능):
- 단조 그라데이션+박스 PNG 입력 → quality_evaluator FAIL 100%
- 5 hybrid 패턴 (h1~h5) 분화 점수 측정 가능 (각 패턴별 특징 함수)
- 132 design-md 브랜드 색상 매칭 (Lab ΔE < 30)
- pytest 12+ 시나리오 PASS
- 25장 stratified 샘플 모두 평가 통과 후 회장 직접 시각 confirm

## 범위

### 포함 (Phase 0~1, 본 task에서 자동 진행)
- `skills/satori-cardnews/scripts/quality_evaluator.py` — 5+ 검증 함수 (시각 다양성/브랜드 색/패턴 분화/폰트/OCR)
- `skills/satori-cardnews/scripts/retry_loop.py` — retry-until-pass 워크플로우 (max 5 retry)
- `tests/skills/satori/test_quality_evaluator.py` — 12+ 시나리오 단위 테스트
- 3문서 (plan/context-notes/checklist) — 시스템 설계

### 회장 승인 게이트 후 (Phase 2~3, 자동 진행 보류)
- 25 stratified 샘플 실 렌더링 + 평가 통과
- 3 버전 비교 보고서 (v1 한글깨짐 / v2 단조 / v3 통과)
- 회장 직접 시각 confirm (25장 중 임의 5장 + supabase H4 + financial_h4)

### 제외 (영구)
- `dq-rules.json` 수정 — 단일 소스 보호 (참조만)
- `image-workflow-v2.5-final.md` 수정 — 영감용
- `resources/design-md/**` 수정 — 132 브랜드 라이브러리 무수정
- `skills/hybrid-image/**`, `skills/frontend-design/**`, `skills/insane-design/**` 등 타 IDS 영역 수정

## 위임 계획

- **Phase 0 (시스템 설계)**: **아마테라스** (직접) — 3문서 작성, dq-rules.json 통합 설계, retry 알고리즘 설계
- **Phase 0 코드 구현**: **벤자이텐 (sonnet)** — quality_evaluator.py + retry_loop.py 작성
- **Phase 1 단위 테스트**: **카구야 (sonnet)** — test_quality_evaluator.py 12+ 시나리오
- **G2 독립 검증**: **마아트 (cross)** — 코드 품질, 시나리오 누락 검증
- **G2 적대적 평가**: **로키 (cross)** — silent corruption 우회 시도, 평가 함수 약점 공격
- **Codex 사전 검증**: 외부 — affected_files 교차 분석 (PII sanitize 후)
- **Phase 2 재렌더링 (보류)**: 회장 승인 후 벤자이텐 위임
- **Phase 3 시각 confirm (보류)**: 회장 직접

## 검증 기준

- 빌드: `python3 -m py_compile skills/satori-cardnews/scripts/quality_evaluator.py skills/satori-cardnews/scripts/retry_loop.py` → returncode 0
- 단위 테스트: `pytest tests/skills/satori/test_quality_evaluator.py -v` → 12+ PASS
- silent corruption 검증: 단조 그라데이션+박스 더미 PNG 입력 → `passed: False` 반환
- 5 패턴 분화 검증: 각 패턴별 mock 이미지 → 패턴별 특징 함수 PASS
- design-md 색 매칭 검증: supabase 청록 PNG → `brand_color_match: True`, 다른 색 → `False`
- OCR 검증: 한글 헤드라인 PNG → confidence ≥ 70%
- 회장 승인 게이트 (Phase 0 → Phase 1 진입): 5+ 검증 항목 + retry 알고리즘 + dq-rules.json 정합성 회장 검토 OK
