# CodeGraph 도입 Phase 1 — 2주 파일럿

## 배경
2026-04-16 Agent 미팅 전원합의(10/10). 함수 간 의존성 자동 추적으로 affected_files 자동 제안.
미팅 기록: `memory/meetings/2026-04-16-codegraph-adoption.md`

## 작업 A: code-review-graph 설치 + 벤치마크
- GitHub: `tirth8205/code-review-graph`
- 설치: README 따라 설치 (그래프 DB 필요 여부 확인)
- 대상 코드베이스: `/home/jay/workspace/dashboard/` (Python)
- 인덱싱 실행 + 소요 시간 측정
- 테스트: `data_loader.py` 변경 시 blast radius 출력 확인
- 증분 인덱싱 지원 여부 확인

## 작업 B: 자체 AST 스크립트 개발
- Python `ast` + `importlib` 기반 의존성 맵 생성
- 입력: 변경 파일 리스트
- 출력: 영향받는 파일 리스트 (caller, dependent, test)
- 대상: `/home/jay/workspace/dashboard/` (동일)
- 파일: `/home/jay/workspace/scripts/ast_dependency_map.py` 신규 생성

## 비교 벤치마크
동일한 변경 시나리오 5건으로 비교:
1. `data_loader.py:get_member_status()` 수정
2. `routes_post.py:handle_post_wiki_refine()` 수정
3. `server.py:app` 초기화 변경
4. `wiki_engine.py:sync_firestore()` 수정
5. `utils/sanitize_gate.py:sanitize_text()` 수정

**비교 지표**:
- 정확도: 실제 영향 파일 대비 맞춤 비율 (grep 수동 확인과 비교)
- 속도: 쿼리 응답 시간
- False negative: 놓친 영향 파일 수

## 워크플로우 통합 프로토타입
- dispatch.py에서 task 파일의 변경 대상 파일 → 도구 호출 → affected_files 자동 제안
- 프로토타입 수준 (dispatch.py에 직접 반영은 Phase 2)

## 산출물
1. `/home/jay/workspace/scripts/ast_dependency_map.py` (자체 스크립트)
2. `/home/jay/workspace/memory/reports/codegraph-benchmark.md` (비교 보고서)
3. code-review-graph 설치 성공/실패 기록

## 검증 시나리오
1. code-review-graph가 blast radius 출력 가능
2. 자체 AST 스크립트가 동일 입력에 대해 결과 출력
3. 5건 벤치마크 완료 + 비교 테이블 작성
4. 그래프 DB 불필요 확인 (필요 시 보고)