# CodeGraph AST 통합 3건 수정

## 배경
task-1837_3.7 검증에서 발견된 미해결 이슈 3건.

## 수정 1: --json vs --pretty 플래그 불일치
dispatch.py, worktree_manager.py, codex_gate_check.py의 3개 통합 함수가 `--json` 플래그로 AST 스크립트를 호출하지만, ast_dependency_map.py는 `--pretty`만 지원하여 `--json`을 인식 못 함.
결과: 항상 fallback만 작동하여 AST 분석이 실질적으로 비활성.

**수정**: ast_dependency_map.py에 `--json` 플래그 추가 (argparse에 --json 옵션 등록, JSON 출력 모드)
또는 호출측 3곳에서 `--json` → `--pretty` 변경 (AST 스크립트 쪽이 더 간단)

파일: `/home/jay/workspace/scripts/ast_dependency_map.py` — argparse에 `--json` 옵션 추가
확인: 호출측 3곳에서 `--json` 사용하는 부분 grep으로 확인

## 수정 2: worktree 브랜치 머지
`task/task-1869_2.2+1-dev7` 브랜치가 main 대비 5커밋 ahead.
AST 통합 코드(dispatch.py _enrich_affected_files_with_ast, worktree_manager.py _get_blast_radius_summary, codex_gate_check.py _get_callers_context)가 이 브랜치에만 있고 main에 미반영.

**수정**: 
1. git diff main..task/task-1869_2.2+1-dev7 --stat 확인
2. 충돌 없으면 머지
3. 충돌 있으면 해결 후 머지
4. 머지 후 3개 함수 grep으로 main에 존재 확인

## 수정 3: AST self-reference 제거
AST 분석 시 direct_importers에 자기 자신(분석 대상 파일)이 포함됨.
예: server.py 분석 → direct_importers에 server.py 포함.

**수정**: ast_dependency_map.py의 출력에서 입력 파일 자체를 제외하는 필터 추가
또는 호출측(_enrich_affected_files_with_ast)에서 자기 자신 제외

## 영향 파일
- `/home/jay/workspace/scripts/ast_dependency_map.py` — 수정 (--json 추가 + self-reference 필터)
- `/home/jay/workspace/.worktrees/task-1869_2.2+1-dev7/` — 머지
- git 작업

## 검증 시나리오
1. `python3 scripts/ast_dependency_map.py --root dashboard/ --files data_loader.py --json` → JSON 정상 출력
2. main 브랜치에 `_enrich_affected_files_with_ast` grep → 존재 확인
3. main 브랜치에 `_get_blast_radius_summary` grep → 존재 확인
4. AST 분석 결과에 자기 자신 미포함 확인
5. 기존 AST 테스트 47건 회귀 없음

## 주의
- worktree 머지 시 충돌 가능 (dispatch.py 대용량)
- ast_dependency_map.py 47개 기존 테스트 보존
- 수정 후 즉시 커밋