### 목표 - 게시판 대분류(상위 카테고리) 도입: 스키마, API, UI 반영 ### 작업 목록 스키마/마이그레이션 - [x] 1.1 Prisma에 `BoardCategory` 모델 추가(id, name, slug, sortOrder, status) - [x] 1.2 `Board` 모델에 `categoryId` 필드와 relation 추가 - [x] 1.3 관련 인덱스/`@@map` 정의 업데이트 - [x] 1.4 마이그레이션 생성 및 적용(`npx prisma migrate dev`) - [x] 1.5 `prisma/seed.js`에 기본 카테고리와 매핑 데이터 추가 - [x] 1.6 ERD 재생성(`npx prisma generate`) API - [x] 2.1 Admin: 카테고리 CRUD 엔드포인트 추가(`src/app/api/admin/categories/route.ts`) - [x] 2.2 Admin: 게시판 생성/수정 요청에 `categoryId` 허용(`src/app/api/admin/boards/...`) - [x] 2.3 Public: 게시판 목록 조회에 `category` 포함 및 `?category` 필터 지원(`src/app/api/boards/route.ts`) - [ ] 2.4 RBAC 검토: `ADMIN` 또는 `BOARD` 권한으로 카테고리 관리 허용 프론트엔드 - [ ] 3.1 Admin 보드 관리 화면에 카테고리 선택(Select) 추가(`src/app/admin/boards/page.tsx`) - [ ] 3.2 Admin 카테고리 관리 페이지/리스트/생성·수정 UI 추가(`src/app/admin/page.tsx` 또는 신규 경로) - [ ] 3.3 메인/게시판 목록에 대분류 필터/탭 UI 추가(`src/app/boards/page.tsx` 등) - [ ] 3.4 라우팅/쿼리 파라미터 연동(`?category=slug` 또는 `id`) 클라이언트 라이브러리/검증 - [ ] 4.1 `src/lib/api.ts`에 카테고리 API 클라이언트 추가 - [ ] 4.2 `src/lib/queryKeys.ts`에 `categories` 키 추가 - [ ] 4.3 폼 검증 스키마 업데이트(게시판 생성/수정에 `categoryId` 처리) 데이터 마이그레이션/호환 - [ ] 5.1 기존 게시판에 기본 카테고리 자동 지정 스크립트 작성 - [ ] 5.2 배포 전 마이그레이션/시드 실행 체크리스트 작성 테스트/확인 - [ ] 6.1 API 엔드투엔드 확인(생성/수정/조회/필터) - [ ] 6.2 UI 스모크 테스트(카테고리 선택 및 필터 동작) - [ ] 6.3 권한별 접근 제어 확인 문서 - [ ] 7.1 `README.md`에 카테고리 모델/사용법/마이그레이션 절차 추가