---
name: deep-dive-analyzer
description: "미시적 해부 + 완전한 분석: 코드/시스템/개념을 구성요소 단위로 완전히 분해하여 심층 분석"
triggers:
  - "deep-dive"
  - "deep-analyze"
  - "심층분석"
  - "심층 분석"
usage: "/deep-dive-analyzer <분석 대상>"
---

# Deep-Dive Analyzer 스킬

> 이 스킬은 프레이야(프론트엔드 개발자)가 주어진 코드, 시스템, 또는 개념을 미시적 수준까지 완전히 분해하여 분석하는 절차를 정의한다.
> **철학**: "Exhaust all components" — 표면 분석에서 멈추지 않고 모든 구성요소를 소진할 때까지 파고든다.
> **권장 파이프라인**: deep-dive-analyzer → adversarial-review (심층 분석 후 비평으로 연결)

---

## 절대 규칙

이 규칙을 위반하면 분석을 중단하고 재시작한다:

1. **도메인 용어 정의 후 사용**: 처음 등장하는 전문 용어는 반드시 정의하고 사용. 용어 미정의 상태로 분석 진행 금지
2. **깊이 > 넓이**: 많은 항목을 얕게 다루는 것보다 핵심 항목을 완전히 소진하는 것이 목표
3. **근거 기반 주장**: 모든 분석 결론에 구체적 근거(코드 라인, 데이터, 원칙) 필수 명시
4. **추측 금지**: 확인되지 않은 내용은 "미확인" 또는 "추가 확인 필요"로 명시

---

## 3가지 분석 모드

분석 대상에 따라 모드를 선택한다. 모호한 경우 프레이야가 판단하여 명시한다.

### 모드 A: Code Analysis (코드 분석)
**적용 대상**: 함수, 컴포넌트, 모듈, 파일, PR

```
분석 축:
1. 구조 분해: 진입점 → 실행 흐름 → 출구 매핑
2. 의존성 그래프: 외부 의존, 내부 결합, 순환 참조 탐지
3. 상태 관리 추적: 상태 생성 → 변이 → 소멸 경로
4. 엣지 케이스 목록: null/undefined, 빈 배열, 비동기 실패, 최대값
5. 성능 특성: 시간 복잡도, 불필요한 재연산, 메모이제이션 적용 여부
6. 테스트 커버리지 갭: 현재 테스트가 놓치는 시나리오
```

프론트엔드 특화 체크:
- React: 렌더링 사이클, useEffect 의존성, 클린업 함수 존재 여부
- 번들 크기: 동적 임포트 vs 정적 임포트, tree-shaking 대상 여부
- 접근성(a11y): ARIA 레이블, 키보드 탐색, 스크린리더 호환

### 모드 B: System Analysis (시스템 분석)
**적용 대상**: 아키텍처, 데이터 흐름, 인프라, API 설계

```
분석 축:
1. 컴포넌트 인벤토리: 시스템을 구성하는 모든 요소 열거
2. 데이터 흐름 매핑: 입력 → 처리 → 저장 → 출력 경로
3. 경계 분석: 각 컴포넌트의 책임 범위와 인터페이스
4. 장애 전파 시나리오: 단일 실패 지점(SPOF), 캐스케이딩 실패 경로
5. 확장성 분석: 수평/수직 확장 한계, 병목 지점
6. 운영 복잡도: 모니터링 포인트, 디버깅 난이도, 온콜 부담
```

### 모드 C: Concept Analysis (개념 분석 — Loti Codex)
**적용 대상**: 기술 개념, 패턴, 방법론, 원칙

```
분석 축:
1. 정의 명확화: 개념의 정확한 정의 및 출처
2. 핵심 메커니즘: 개념이 작동하는 원리
3. 전제 조건: 이 개념이 유효한 상황과 전제
4. 반례 및 한계: 개념이 실패하거나 부적절한 상황
5. 유사 개념 비교: 혼용되는 개념들과의 명확한 구분
6. 실무 적용: 구체적 적용 예시와 적용 시 주의점
```

---

## 실행 절차

### 1단계: 분석 모드 선언
```
[Deep-Dive Analyzer 시작]
분석 대상: <대상 명시>
선택 모드: 모드 A / B / C
분석 범위: <무엇을 포함하고 무엇을 제외하는지>
용어 정의:
- <등장할 주요 도메인 용어>: <정의>
```

### 2단계: 구성요소 인벤토리 (Exhaust All Components)
```
모든 구성요소를 빠짐없이 목록화한다.
하위 구성요소가 있으면 들여쓰기로 계층 표현.
각 요소에 대해 "이 이상 분해 가능한가?" 질문을 반복.
더 이상 분해되지 않을 때까지 반복한다.

예시:
- LoginForm 컴포넌트
  - EmailInput
    - 유효성 검사 로직
    - 에러 메시지 렌더링
  - PasswordInput
    - 마스킹 토글
  - SubmitButton
    - 로딩 상태
    - 비활성화 조건
```

### 3단계: 심층 분석
선택한 모드의 분석 축을 순서대로 적용한다.
각 축에서 발견이 없으면 "해당 없음" 명시 (생략 금지).

### 4단계: 발견 요약
```
핵심 발견:
1. <가장 중요한 발견> — 근거: <코드 라인/원칙/데이터>
2. <두 번째 발견> — 근거: <...>
3. <세 번째 발견> — 근거: <...>

미확인 항목:
- <추가 확인이 필요한 사항>

다음 단계 권장:
- adversarial-review 실행 권장 (발견 사항 기반 스트레스 테스트)
- 또는 <구체적 후속 액션>
```

---

## adversarial-review 직렬 파이프라인

deep-dive-analyzer 완료 후 adversarial-review로 연결하는 권장 절차:

```
파이프라인 순서:
1. /deep-dive-analyzer <대상>
   → 구성요소 완전 분해 + 발견 요약

2. /adversarial-review <deep-dive 발견 사항>
   → Steel-Man → Adversarial Attack → 심각도 분류 → Counter-Proposal

연결 시 주의:
- deep-dive의 "미확인 항목"은 adversarial-review에서 엣지 케이스 벡터로 전달
- deep-dive의 "핵심 발견"은 adversarial-review의 Steel-Man 입력으로 활용
- [SECURITY] 발견 시 → 로키 에스컬레이션 (adversarial-review 중단)
```

**단독 실행 가능 조건:**
- 분석 자체가 목적이고 비평이 불필요한 경우
- Lv.1~2 작업으로 빠른 이해만 필요한 경우
- adversarial-review가 별도로 예약된 경우

---

## Telegram 압축 출력 모드

Telegram 환경에서는 2단계 출력을 사용한다.

**1차 출력 (기본):**
```
[Deep-Dive Analyzer]
대상: <분석 대상>
모드: <A/B/C>

핵심 발견:
- <발견 1>
- <발견 2>
- <발견 3>

미확인: <있으면 명시>

→ 상세 분석 보려면 "상세" 입력
→ adversarial-review 연결하려면 "리뷰" 입력
```

**2차 출력 (상세, 요청 시):**
구성요소 인벤토리 + 각 분석 축 전체 내용을 단계별로 분할 출력.
각 분석 축은 별도 메시지로 분리하여 가독성 확보.

**분할 규칙:**
- 구성요소 인벤토리가 10개 초과 시 계층별로 분리 출력
- 분석 축 6개를 한 번에 출력하지 않고 3개씩 2회로 분할
- 각 메시지 500자 이하 유지 권장

---

## 금지사항

1. **표면 분석에서 중단 금지**: 더 분해할 수 있는 구성요소가 있는데 멈추는 것 금지
2. **용어 미정의 사용 금지**: 1단계에서 정의하지 않은 도메인 용어를 분석 본문에 사용 금지
3. **"해당 없음" 생략 금지**: 분석 축에서 발견이 없을 때 해당 축 자체를 생략하는 것 금지
4. **근거 없는 결론 금지**: "이 코드는 비효율적이다" 같은 근거 없는 단정 금지
5. **adversarial-review 선행 금지**: deep-dive → adversarial-review 순서 역전 금지 (deep-dive 없이 adversarial-review는 불완전)

---

## 빠른 참조

- **철학**: Exhaust all components (모든 구성요소를 소진할 때까지)
- **분석 모드**: A(코드) / B(시스템) / C(개념)
- **출력 순서**: 핵심 발견 먼저 → 상세는 요청 시
- **파이프라인**: deep-dive-analyzer → adversarial-review
- **보안 발견 시**: 로키 에스컬레이션 (adversarial-review에서 처리)
- **작업 레벨**: `memory/specs/work-level-system.md`

---

**스킬 버전**: v1.0
**작성일**: 2026-03-06
**작성자**: 프레이야 (프론트엔드 개발자)
**참조**: deep-dive-analyzer 원본, Loti Codex 분석 방법론, adversarial-review 연동 설계
