diff --git a/journey/plans/251204_admin_dashboard_business_integration.md b/journey/plans/251204_admin_dashboard_business_integration.md new file mode 100644 index 0000000..727e9e2 --- /dev/null +++ b/journey/plans/251204_admin_dashboard_business_integration.md @@ -0,0 +1,71 @@ +# Admin Dashboard 비즈니스 통합 계획 + +**날짜**: 2025-12-04 +**작성자**: Auto +**관련 파일**: +- `admin-dashboard/backend/admin_routes.py` +- `admin-dashboard/frontend/index.html` + +--- + +## 목표 + +admin-dashboard를 인프라 모니터링 도구에서 **로빙 프로젝트 비즈니스 관리 도구**로 확장. + +## 현재 상태 + +### 기존 기능 (4개 탭) +- **대시보드**: 시스템 메트릭(CPU/메모리/디스크/업타임), Chart.js 그래프 +- **컨테이너**: Docker 컨테이너 목록, 로그 조회, 재시작 +- **서비스**: Nginx 상태, Git 활동 +- **로그**: 시스템 로그 + +### 한계 +- main_db 미연결: user/team/robeing 데이터 접근 불가 +- 비즈니스 운영 기능 전무: 사용자 관리, 로빙 현황, 스킬 통계 없음 +- DevOps 도구 수준, 로빙 프로젝트 관리자 용도 미흡 + +## 개선 계획 + +### 1. DB 연결 방식 +- **admin-dashboard/backend**: main_db PostgreSQL 직접 연결 (read-only) +- **이유**: 로컬 환경, 빠른 조회/통계, 복잡한 조인 가능 +- **관련**: `admin_routes.py` - SQLAlchemy 또는 asyncpg로 main_db 연결 추가 + +### 2. 신규 탭 3개 (UX 중심) + +#### 탭 1: 사용자/팀 +- **테이블 뷰**: user/team 목록, 검색/필터/정렬 +- **컬럼**: email, name, username, metadata(nickname/position), is_active, last_login_at +- **액션 버튼**: 편집(metadata 수정 모달), 상세보기(OAuth 연동 상태), 비활성화 +- **통계 카드**: 총 사용자 수, 활성 사용자, 팀별 사용자 분포 + +#### 탭 2: 로빙 +- **테이블 뷰**: robeing 목록(team_id, name, level) +- **시각화**: 레이더 차트(memory/compute/react/empathy/leadership), 레벨 분포 막대 그래프 +- **액션**: 로빙 상세(대화 빈도, 스킬 사용 이력), 팀별 비교 +- **통계 카드**: 총 로빙 수, 평균 레벨, 팀별 활동량(conversation_log 기반) + +#### 탭 3: 스킬/의도 +- **대시보드**: 의도 분류 통계(intents), 스킬 실행 횟수(뉴스/이메일/IR분석), LLM 호출 추이 +- **차트**: 히트맵(시간대별 스킬 사용), 파이 차트(의도 분포) +- **테이블**: rb_news(최근 발행), team_document(RAG 문서), ir_deck_evaluations(IR 평가 현황) + +### 3. 공통 UI 패턴 +- **우측 상단**: 새로고침/필터/CSV 다운로드 버튼 +- **테이블 행**: 편집/삭제/상세 아이콘 버튼 +- **모달**: metadata 편집, 상세 정보 표시 +- **차트**: Chart.js, 일/주/월 필터 + +## 구현 단계 + +1. **Backend**: `admin_routes.py`에 main_db 연결, `/admin/api/users`, `/admin/api/robeings`, `/admin/api/skills` 엔드포인트 추가 +2. **Frontend**: 3개 탭 추가, 테이블 컴포넌트, 차트 컴포넌트, 모달 구현 +3. **테스트**: 각 탭별 CRUD 동작, 차트 렌더링, 검색/필터 확인 +4. **문서화**: 완료 시 troubleshooting 문서로 이동 + +## 참고 + +- 문서 작성 원칙: `DOCS/book/300_architecture/312_문서_작성_원칙.md` +- 기존 admin 리팩토링: `DOCS/journey/troubleshooting/251117_admin_dashboard_standard_deployment_refactoring.md` +