Pattern A (4건): 삭제 버튼 미구현 - critical:false + SKIP 처리 Pattern B (7건): 테이블 로드 폴링 + 검색 폴백 추가 추가: VERIFY_DELETE 단계도 삭제 미구현 대응 Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2.1 KiB
2.1 KiB
Phase 2: React 라우터 → 메뉴 추출
상태: ✅ 완료 완료일: 2025-12-20 병행 작업: Phase 3과 병행 가능
목표
React 라우트 기반으로 mng에 등록할 메뉴 목록 추출
체크리스트
- React 전체 라우트 목록 추출
- 메뉴 구조 정리 (계층, 이름, URL)
- 접근 권한 매핑
- mng 등록용 포맷 생성
- 메뉴 등록 (mng에서) → Phase 4에서 진행
React 라우트 구조
react/src/app/
├── [locale]/
│ ├── page.tsx # 루트 (→ dashboard 리다이렉트)
│ ├── login/page.tsx # 로그인
│ └── (protected)/ # 인증 필요
│ ├── dashboard/ # 대시보드
│ ├── items/ # 품목 관리
│ ├── accounting/ # 회계
│ ├── sales/ # 영업
│ ├── hr/ # 인사
│ ├── board/ # 게시판
│ ├── settings/ # 설정
│ └── ...
메뉴 추출 포맷
| 메뉴명 | URL | 부모 | 순서 | 아이콘 | 권한 |
|---|---|---|---|---|---|
| 대시보드 | /dashboard | - | 1 | dashboard | all |
| 품목관리 | /items | - | 2 | box | items.view |
| ... | ... | ... | ... | ... | ... |
산출물
react-routes-analysis.md- 라우트 상세 분석 (107개 페이지, 15개 도메인)menu-list.md- 최종 메뉴 리스트 (11개 대메뉴, 54개 중메뉴, 52개 권한)
작업 순서
- React 라우터 파일 전체 스캔
- 페이지별 메타 정보 수집
- 메뉴 계층 구조 설계
- 권한 매핑 정의
- mng 등록용 SQL/JSON 생성
참고: 현재 메뉴 로드 방식
// 로그인 시 API에서 메뉴 로드
POST /api/v1/login
Response: {
user: {...},
menus: [...], // 권한 기반 메뉴
roles: [...]
}
메뉴가 등록되지 않으면 해당 라우트 접근 불가.
Phase 2 작업 시작 시 이 체크리스트를 업데이트하세요.