기능 카탈로그¶
사용자가 체험하는 8개 핵심 기능을 각 페이지에서 다룬다. 모든 페이지는 동일한 8섹션 구조(개요 / 사용자 여정 / 백엔드 구현 / 도메인 규칙 / API 엔드포인트 / 데이터 모델 / 설정 / 알려진 이슈 / 관련 문서)를 따른다.
8개 기능¶
| 페이지 | 핵심 내용 | 주요 컨트롤러 |
|---|---|---|
| 회원 / 인증 | 휴대폰 SMS 인증 + JWT(access/refresh) + 폰 번호 변경 | AuthController, AccountController |
| 멤버십 · 구독 | 3티어 (FREE/STANDARD/PREMIUM) + 30일 자동 갱신 (SubscriptionRenewalScheduler @09:00 KST) |
AccountController |
| 결제 (Toss V2) | Toss Payments V2 (단건 + billing key) + /webhooks/tosspayments |
TossWebhookController |
| 쿠폰 | 5자리 UUID hex PK + USED 거부 정책 + TOKEN_PACK 런타임 이슈 | AccountController, AdminController |
| 리포트 생성 | RAG 스트리밍 (SSE), HyDE + RRF, citation 정렬, threeway 보충, MAX_TOTAL_LAWS=8 | StreamingConversationController |
| 카테고리 / 게시판 | LawCategory 13개 + 추론, 공개 보드 (archive eligibility), 키워드 추출 |
StreamingConversationController |
| 관리자 콘솔 | /admin/** ROLE_ADMIN 게이트, 계정/결제/쿠폰/리포트/피드백/감사로그 |
AdminController, AdminElasticController, AdminAuditLogController |
| 팝업 / 공지 | 백엔드 미구현 (honest 표시) — 추후 추가 가능 항목 | (없음) |
권장 읽기 순서¶
- canonical 예시 먼저: 회원 / 인증 — 다른 7개 페이지의 구조 모델
- 사용자 흐름이 가장 큰 기능: 리포트 생성 — RAG 핵심 비즈니스 로직
- 결제 묶음: 멤버십 → 결제 → 쿠폰
- 관리자/운영자 시점: 관리자 콘솔
- 부가 기능: 카테고리/게시판, 팝업/공지
페이지 작성 컨벤션¶
각 기능 페이지는 다음 공통 구조를 사용한다 (자세한 규칙은 docs/wiki/CLAUDE.md 스타일 가이드):
- 개요 — 한 문단으로 기능 핵심 가치
- 사용자 여정 — 1-3개 mermaid sequenceDiagram (주요 시나리오)
- 백엔드 구현 — 표: 계층 / 클래스·파일 / 역할
- 도메인 규칙 — 표: 규칙 / 위치 / 값
- API 엔드포인트 — 표 + OpenAPI 스펙 링크
- 데이터 모델 — mermaid erDiagram
- 설정 — 환경변수 / 시크릿 / CORS 등
- 알려진 이슈 — 코드 TODO + 한계 + PR 참조
- 관련 문서 — 다른 기능 페이지 + API ref 링크