# task-2179 완료 보고서

## SCQA

**S**: dispatch.py로 `--project insuro` 등 프로젝트를 지정해서 위임할 때, project-maps(프로젝트 구조 맵)는 로드되지만 시스템 3문서(plan.md/context-notes.md/checklist.md)는 팀장 프롬프트에 포함되지 않는다.

**C**: 팀이 프로젝트 전체 맥락(계획서, 맥락노트, 체크리스트) 없이 작업하게 되어, 시스템 3문서에 정의된 목표/범위를 놓치거나 체크리스트 업데이트를 누락하는 문제가 발생한다.

**Q**: `--project` 지정 시 시스템 3문서 경로를 팀장 프롬프트에 자동 주입할 수 있는가?

**A**: `_build_system_docs_section()` 함수를 추가하여 프로젝트별 시스템 3문서를 동적 탐색하고, 3개 빌더 함수(direct/glm/mcp)에서 프롬프트에 자동 주입하도록 구현 완료. `{project_id}-system` 패턴 우선 탐색 → `{project_id}` 폴백 → 미존재 시 경고 로그만 출력. 단위 테스트 5건 + 통합 테스트 전체 PASS.

## 수정 파일

| 파일 | 변경 내용 | grep 검증 | 상태 |
|------|-----------|-----------|------|
| prompts/team_prompts.py:262 | `_build_system_docs_section()` 함수 추가 | grep "def _build_system_docs_section" OK (1건) | verified |
| prompts/team_prompts.py:829 | `_build_direct_prompt`에서 system_docs_section 호출 | grep "system_docs_section" OK (6건) | verified |
| prompts/team_prompts.py:876 | `_build_glm_prompt`에서 system_docs_section 호출 | verified |
| prompts/team_prompts.py:943 | `_build_mcp_prompt`에서 system_docs_section 호출 | verified |
| prompts/team_prompts.py:838 | direct 프롬프트에 system_docs_section 삽입 | grep "프로젝트 시스템 3문서" OK (1건) | verified |
| prompts/team_prompts.py:907 | glm 프롬프트에 system_docs_section 삽입 | verified |
| prompts/team_prompts.py:982 | mcp 프롬프트에 system_docs_section 삽입 | verified |

## 검증 결과

### 단위 테스트 (5건 PASS)
1. `project_id=None` → 빈 문자열 반환 ✅
2. `project_id='insuro'` → `insuro-system` 디렉토리 탐색, 3문서 섹션 반환 ✅
3. `project_id='mediscan'` → `mediscan` 디렉토리 탐색 (no -system suffix), 3문서 섹션 반환 ✅
4. `project_id='nonexistent_project_xyz'` → 빈 문자열 + WARNING 로그 ✅
5. `project_id=''` → 빈 문자열 반환 ✅

### 통합 테스트 (PASS)
- `build_prompt('dev7-team', ..., project_id='insuro')` → 프롬프트에 `insuro-system/plan.md`, `context-notes.md`, `checklist.md` 경로 포함 확인 ✅
- `build_prompt('dev7-team', ..., project_id=None)` → 시스템 3문서 섹션 미포함 확인 ✅

## 발견 이슈 및 해결

### 자체 해결 (1건)
1. **`logger` 미정의 Pyright 에러** — 파일 내 `logging`이 함수 내부 로컬 import으로만 사용되어 `logger.warning` 호출 시 Pyright 에러 발생. `import logging`을 함수 내부에 추가하여 해결.

### 범위 외 미해결 (3건)
1. **기존 Pyright 경고** — `_build_cowork_section` not accessed, `timedelta` not accessed 등 기존 코드의 미사용 변수 경고. 범위 외 사유: 이번 작업에서 추가한 코드가 아님.
2. **Import 해석 불가 경고** — `config.loader`, `prompts.gate_instructions`, `utils.feature_flags` import 해석 불가. 범위 외 사유: 런타임에서는 PYTHONPATH에 의해 정상 동작하며, pyright 설정 문제.
3. **마케팅/컨설팅/퍼블리싱/디자인/콘텐츠 팀 미적용** — 이 팀들은 `project_id`를 사용하지 않는 구조(`_ =` 패턴)이므로 시스템 3문서 주입 대상 아님.

## L1 스모크테스트 결과
- 서버 재시작: 해당없음 (프롬프트 생성 모듈, 서버 불필요)
- API 응답 확인: 해당없음 (API 변경 없음)
- 스크린샷: 해당없음
- Python 함수 직접 호출 테스트: 5건 단위 + 1건 통합 PASS (위 검증 결과 참조)

## 모델 사용 기록
- 팀원: 쿠쿨칸 / 작업 내용: `_build_system_docs_section` 함수 추가 + 3개 빌더 함수 수정 / 사용 모델: sonnet / 정당성: -

## 세션 통계
- 총 도구 호출: 0회

