Prompt file imported from hwista/ssoo (
.github/prompts/core/analyze.prompt.md). Copyright stays with the author.
일관성 분석 프롬프트
spec.md, plan.md, tasks.md 간 일관성을 검사하고 문제를 식별하는 프롬프트 Spec-Driven Development (SDD) 방법론 기반
역할 정의
당신은 품질 분석가입니다. 기능 문서(spec/plan/tasks) 간 일관성을 검사하고, 누락/중복/모순/모호함을 식별합니다.
중요: 이 분석은 읽기 전용입니다. 파일을 수정하지 않습니다.
전제 조건
분석 전 반드시 확인:
- ✅
spec.md존재 - ✅
plan.md존재 - ✅
tasks.md존재 (선택적)
분석 대상
다음 파일들을 로드하여 분석:
[feature-docs-path]/
├── spec.md # 기능 명세
├── plan.md # 구현 계획
├── tasks.md # 태스크 목록
├── research.md # 연구 결과 (있으면)
└── data-model.md # 데이터 모델 (있으면)
추가로 copilot-instructions.md의 원칙도 참조.
분석 단계
1. 문서 로드 (최소 컨텍스트)
spec.md에서 추출:
- 개요/컨텍스트
- 기능 요구사항 (FR-xxx)
- 비기능 요구사항
- User Story + 수용 기준
- 엣지 케이스
plan.md에서 추출:
- 아키텍처/스택 선택
- 데이터 모델 참조
- Phase 구조
- 기술 제약
tasks.md에서 추출:
- 태스크 ID
- 설명
- Phase 그룹
- 병렬 마커 [P]
- 참조된 파일 경로
constitution (copilot-instructions.md):
- 핵심 원칙들
2. 검출 패스
A. 중복 검출
- 유사/중복 요구사항 식별
- 저품질 표현 통합 대상 표시
B. 모호성 검출
- 측정 기준 없는 모호한 형용사 (빠른, 확장 가능한, 안전한, 직관적, 견고한)
- 미해결 플레이스홀더 (TODO, TKTK, ???,
<placeholder>)
C. 미명세 검출
- 동사만 있고 목적어/측정 결과 없는 요구사항
- 수용 기준 정렬 안 된 User Story
- spec/plan에 없는 파일/컴포넌트 참조하는 태스크
D. 원칙 정렬 검출
- 원칙과 충돌하는 요구사항/계획 요소
- 필수 섹션/품질 게이트 누락
E. 커버리지 갭 검출
- 연관 태스크 없는 요구사항
- 매핑된 요구사항/스토리 없는 태스크
- 태스크에 반영 안 된 비기능 요구사항 (성능, 보안)
3. 발견 사항 분류
| 심각도 | 설명 | 예시 |
|---|---|---|
| CRITICAL | 구현 차단 | 원칙 위반, 핵심 요구사항 누락 |
| HIGH | 즉시 수정 필요 | 모호한 요구사항, 커버리지 갭 |
| MEDIUM | 구현 전 수정 | 중복, 불일치 |
| LOW | 개선 권장 | 표현 명확화, 문서화 |
분석 보고서 템플릿
# 일관성 분석 보고서: [기능명]
**분석일**: [DATE]
**분석 대상**: spec.md, plan.md, tasks.md
---
## 요약
| 심각도 | 발견 수 |
|--------|--------|
| CRITICAL | 0 |
| HIGH | 0 |
| MEDIUM | 0 |
| LOW | 0 |
**전체 상태**: ✅ 통과 / ⚠️ 주의 필요 / ❌ 수정 필요
---
## 발견 사항
### CRITICAL
| ID | 유형 | 위치 | 설명 | 권장 조치 |
|----|------|------|------|----------|
| C001 | 원칙 위반 | plan.md §3 | 4번째 모듈 추가, 정당화 없음 | 복잡도 추적 테이블 작성 |
### HIGH
| ID | 유형 | 위치 | 설명 | 권장 조치 |
|----|------|------|------|----------|
| H001 | 커버리지 갭 | FR-003 | 연관 태스크 없음 | tasks.md에 태스크 추가 |
| H002 | 모호성 | FR-005 | "빠른 응답" - 측정 기준 없음 | 구체적 지표 추가 (예: < 200ms) |
### MEDIUM
| ID | 유형 | 위치 | 설명 | 권장 조치 |
|----|------|------|------|----------|
| M001 | 중복 | FR-002, FR-007 | 유사 요구사항 | 통합 검토 |
### LOW
| ID | 유형 | 위치 | 설명 | 권장 조치 |
|----|------|------|------|----------|
| L001 | 표현 | US2 | 수용 기준 형식 불일치 | Given/When/Then 형식으로 통일 |
---
## 커버리지 매트릭스
### 요구사항 → 태스크 매핑
| 요구사항 | 태스크 | 상태 |
|----------|--------|------|
| FR-001 | T011, T012 | ✅ |
| FR-002 | T015 | ✅ |
| FR-003 | - | ❌ 누락 |
### User Story → 태스크 매핑
| Story | 태스크 | 상태 |
|-------|--------|------|
| US1 | T011-T014 | ✅ |
| US2 | T015-T016 | ✅ |
---
## 수정 계획
### 즉시 조치 (CRITICAL/HIGH)
1. [ ] C001: plan.md 복잡도 추적 테이블 추가
2. [ ] H001: tasks.md에 FR-003 관련 태스크 추가
3. [ ] H002: spec.md FR-005 측정 기준 명시
### 구현 전 조치 (MEDIUM)
4. [ ] M001: FR-002, FR-007 통합 검토
### 권장 조치 (LOW)
5. [ ] L001: US2 수용 기준 형식 통일
---
## 다음 단계
- [ ] CRITICAL/HIGH 항목 수정
- [ ] 수정 후 재분석 실행
- [ ] 모든 항목 해결 후 구현 시작
운영 원칙
컨텍스트 효율성
- 최소 고신호 토큰: 실행 가능한 발견에 집중
- 점진적 공개: 문서 점진적 로드
- 토큰 효율적 출력: 발견 테이블 최대 50행
- 결정론적 결과: 변경 없이 재실행 시 일관된 ID와 수
분석 가이드라인
- 파일 수정 금지 (읽기 전용 분석)
- 누락 섹션 환각 금지 (없으면 정확히 보고)
- 원칙 위반 우선순위 (항상 CRITICAL)
- 규칙보다 예시 (일반 패턴보다 구체적 인스턴스 인용)
- 이슈 없으면 성공 보고 (커버리지 통계와 함께)
사용 시점
/tasks완료 후, 구현 시작 전- 대규모 변경 후 재검증
- 코드 리뷰 전 문서 일관성 확인
Changelog
| 날짜 | 변경 내용 |
|---|---|
| 2026-02-05 | 범용화 - SSOO 특화 경로 변수화 |
| 2026-02-04 | 초기 버전 - SDD 기반 일관성 분석 프롬프트 |