# InsuRo Phase 3: 메뉴 재구조화 + 코드 품질

## 작업 개요
사이드바 메뉴를 3허브 구조로 재구조화하고, 코드 품질 이슈를 정리한다.

## 작업 항목 (3개)

### 1. 사이드바 메뉴 3허브 재구조화
**현재 섹션 (7개)**:
- 내 계정, 안내, 구독, AI 마케팅, 고객관리, 보험 시장분석 AI, 유용한도구

**변경 → 3허브 + 보조**:
- **콘텐츠 생성 허브**: AI 콘텐츠 생성, 콘텐츠 관리, 콘텐츠 캘린더, AI 원스탑(잠금), AI 자동화(잠금)
- **고객 관리 허브**: CRM 대시보드, 고객 목록, 파이프라인, 메신저, 디지털 명함
- **분석·리포트 허브**: 실적 분석, 보험 시장분석, 보험료 비교, 소식지, 키워드 분석
- **보조**: 내 계정(마이페이지), 구독 관리, 유용한 도구(보험계산기 등)
- **관리자**: 기존 유지

**수정 파일**: `src/config/routes.ts` (menuSections 배열 재구성)
- routes.ts가 단일 소스이므로 이 파일만 수정하면 사이드바 자동 반영

### 2. 코드 품질 정리
**2-1. `any` 타입 제거** (13건)
- 프로젝트 전체에서 `any` 타입 사용 검색: `grep -rn ": any\|as any" src/`
- 적절한 타입으로 교체 (최소 unknown 또는 구체적 타입)
- 불가피한 경우 `// eslint-disable-next-line @typescript-eslint/no-explicit-any` 주석

**2-2. `console.log` 제거** (13건)
- 디버그용 console.log 검색: `grep -rn "console\.log" src/`
- 전부 제거 (필요한 경우 console.warn/error로 변경)
- 에러 핸들링의 console.error는 유지

### 3. AdminGuide sidebar_section 업데이트
**현재 DB 값**: 내 계정, 안내, AI 마케팅, 고객관리, 보험 시장분석 AI, 유용한도구
**변경**: 3허브 구조에 맞춰 guide_categories의 sidebar_section 값 업데이트

**수정 방법**: Supabase migration 작성
```sql
UPDATE guide_categories SET sidebar_section = '콘텐츠 생성' WHERE sidebar_section = 'AI 마케팅';
UPDATE guide_categories SET sidebar_section = '고객 관리' WHERE sidebar_section = '고객관리';
UPDATE guide_categories SET sidebar_section = '분석·리포트' WHERE sidebar_section = '보험 시장분석 AI';
-- 등 매핑
```

## 파일 영향 범위
- 수정: `src/config/routes.ts` (메뉴 재구조화), 다수 .tsx 파일 (any/console.log)
- 생성: Supabase migration (guide_categories 업데이트)
- 삭제: 없음

## 검증 기준
1. `npm run build` 성공 (에러 0건)
2. `npx tsc --noEmit` 에러 0건
3. `grep -rn "console\.log" src/` → 0건 (console.error 제외)
4. `grep -rn ": any" src/` → 최소화 (불가피한 건만)
5. 사이드바 메뉴가 3허브 구조로 표시

## 프로젝트 경로
- `/home/jay/projects/InsuRo/`