menu: 롤플레잉 > 히스토리 chrome: activeMain="roleplaying" · activeSub="history"
PRD — rp-history
updated: 2026-05-29 · status: draft (filter UX 개편 반영)
1. 목적
학습자가 자신이 지금까지 진행한 모든 롤플레잉 세션을 한 곳에서 다시 꺼내볼 수 있게 한다. "어떤 시나리오/캐릭터를 몇 번 해봤고, 결과는 어땠는지"를 빠르게 회고하고, 특정 세션의 산출물(영상/음성/보고서)로 바로 들어갈 수 있어야 한다.
2. 사용자
- 주 사용자: 롤플레잉을 1회 이상 완료한 학습자 본인
- 빈도: 주 1–2회 (재도전 직전, 코칭/리뷰 받기 전)
- 진입 맥락: 롤플레잉 메인에서 "히스토리" 서브탭 클릭 → 세션 선택 →
rp-scenario-detail또는 세션 상세 페이지로 이동
3. 핵심 사용 흐름
- 진입 시 최근 세션이 최상단에 보이는 시간 역순 목록 노출
- 시나리오/캐릭터/기간으로 좁힘 (필터)
- 카드에서 메타정보(날짜·시간·시나리오·캐릭터·난이도)와 점수·상태 한눈에 확인
- 영상/음성/보고서 중 원하는 산출물 1개 클릭으로 바로 열람
- 또는 "세션 상세 →"로 깊은 분석 페이지 진입
4. 주요 정보·액션
- 정보:
- 요약 헤더 — 총 세션 수, 누적 시간, 평균 점수 (카테고리 필터 적용 결과)
- 세션 카드(리스트 단위):
- 일시 (절대 + 상대, 예: "5/26 (월) 17:05 · 어제")
- 소요 시간
- 시나리오명 + 카테고리(리더십/영업/CS)
- 트랙 태그 (해당 시 — 예: "신임 팀장 교육 과정")
- 캐릭터명
- 난이도 (상/중/하)
- 점수 + 상태 배지 (합격 / 재도전 필요 / AI 분석 중)
- 산출물 가용성 (영상·음성·보고서) — 없음/준비 중도 명시
- 필터 facet — 메뉴 타이틀 하단, 요약 KPI 상단에 배치해 조회 조건이 요약 수치보다 먼저 보이게 함:
- [필수] 카테고리: 리더십/영업/CS/... 중 1개 (전체 옵션 없음, 기본값=가장 많이 진행한 카테고리)
- [선택] 시나리오: 검색형 콤보박스, 미선택 시 해당 카테고리 전체
- [선택] 캐릭터: 검색형 콤보박스, 시나리오 선택 시 자동 좁힘 (disable 안 함)
- 활성화된 선택 필터는 상단에 제거 가능한 chip으로 표시
- 정렬: 최신순(기본) / 점수순 / 소요시간순 — 우측 분리 배치
- 액션:
- 카드 내 산출물 칩 클릭 → dialog로 해당 매체 플레이어 또는 보고서 표시
- "세션 상세 →" → 깊은 분석/타임라인 페이지
- 필터/정렬 변경 → 목록 즉시 갱신
- 필터 초기화
- (분석 중 상태) "분석 알림 받기" 토글 — out of scope일 수 있음
수집할 사용자 액션 데이터
| trigger | 이벤트 | 프로퍼티 | 수집 사유 |
|---|---|---|---|
| 산출물 칩 클릭(dialog) | rp_history_artifact_open |
sessionId, mediaType(video/audio/report) | 어떤 산출물을 주로 다시 보는지 |
| "세션 상세 →" | rp_history_session_detail_click |
sessionId | 깊은 회고 진입 전환 |
| 필터 변경 | rp_history_filter_change |
category, hasScenario, hasCharacter | 회고 조회 조건 패턴 |
| 정렬 변경 | rp_history_sort_change |
sortKey(recent/score/duration) | 기본 정렬 적정성 |
| 필터 초기화 | rp_history_filter_reset |
— | 필터 막힘 신호 |
| "분석 알림 받기" 토글 | — (out of scope) |
기능 미확정 — §5 후속 결정 후 추가 |
- PII: 검색어 원문 미수집(콤보박스는 선택된 scenarioId/characterId만 기록). sessionId 등 식별자만.
5. 결정 항목 (확정)
- 필터 영역의 위치: 메뉴 타이틀 하단 / 요약 KPI 상단 필터바 (상단 배치 확정)
- "AI 분석 중"인 세션 표시: 상단 별도 섹션으로 띄움 (사용자가 결과를 기다리는 상태이므로)
- 산출물 칩 클릭 결과: dialog로 플레이어/보고서 표시 (인라인 미니 플레이어 형태)
- 페이지네이션: "더 보기" 버튼 (모바일 호환·필터 상태 보존 용이)
- 점수 없는 상태 표기: 점수 자리에 상태 배지 대체
- 카테고리 기본값: 가장 많이 진행한 카테고리 (회고 맥락에 더 적합)
- 기간 필터: 제거 — 전체 세션 조회 가능, 기간 cap 없음