Known Gaps (현재 누락)
v1 베타 진행 중. 명시적으로 비대상 또는 미구현 항목.
Backend gaps
| Gap | 영향 |
|---|---|
Hq.status 전이 규칙 / 관리 UI | 컬럼은 SPEC #013 에서 도입됨 (HqStatus, 기본 ONBOARDING). 상태 전이 규칙과 변경 관리 UI 가 미구현 |
Hq.businessRegistrationNumber 컬럼 없음 → SPEC #013 에서 businessNumber 추가 (체크섬 X) | 사업자번호 중복 / 유효성 검증 미구현 |
| 매장 status 자동 전환 (90일 INACTIVE) | 스케줄러 없음 |
| AccountStatus.SUSPENDED 즉시 세션 무효화 | 정지 사용자도 access 만료까지 사용 가능 |
| 가맹 매장 등록 endpoint | DIRECT / FRANCHISE 매장 가입 흐름 미제공 |
| STORE_MANAGER 계정 발급 흐름 | 후속 SPEC |
| 대시보드 stats — 장애·CS·방송 지표 | SPEC #017 에서 계산 가능한 지표(본사 status별·신규·매장·임퍼소네이션)는 GET /api/v1/admin/stats 로 연동됨. 장애·CS·방송은 도메인 미존재라 “준비 중” placeholder. 도메인 도착 시 /admin/stats 확장 |
본사 상세 endpoint (GET /admin/hq/{id}) | 목록 admin-list 만 |
TenantAuditLog 자동 기록 | 임퍼소네이션 감사 데이터 미수집 |
| 음원 카탈로그 (Track · Library · Playlist) | 전부 미도입 |
정산 / 협약 (ContractPlan · BillingKey · Invoice) | 전부 미도입 |
| CS 티켓 entity | 미도입 |
환영 이메일 / 알림 인프라 (Mail / Notification) | 미도입 |
| 약관 재동의 INSERT API | flag 만 있고 INSERT endpoint 없음 |
Frontend gaps
| Gap | 영향 |
|---|---|
| 의도적 부재 — 일반 세션(운영사·본사·점장)은 idle 자동 로그아웃 안 함(refresh TTL 7일만·일반 서비스 관례). idle 강제는 임퍼소네이션(60분 sealed) 한정. 2026-06-17 정정 | |
| sessionStorage 임시 저장 (온보딩) | 새로고침 시 state 소실 |
passwordMustChange=true middleware 단계 가드 | server-side 강제 redirect 는 (protected)/layout.tsx 에 구현됨. middleware 단계의 사전 가드는 미구현 (현재 layout 진입 후 redirect). 단, BE 차단은 SPEC #022 로 구현됨 — PasswordChangeEnforcementFilter 가 보호 endpoint 를 403 PASSWORD_CHANGE_REQUIRED 로 막아 직접 API 우회까지 방어. FE middleware 가드는 UX 최적화 잔여 항목일 뿐 보안 공백 아님 |
| 임퍼소네이션 카운트다운 배너 [돌아가기] 흐름 | 일부 도입, 정밀화 후속 |
| 본사 일괄작업 (약관 재발송 · 공지 · 결제일 변경) | UI 진입점만 (announceWip() placeholder) |
| HQ 정렬 UI (컬럼 헤더 클릭) | 기본 정렬만 |
| HQ / 매장 페이지네이션 | 50+ 본사 시점에 필요 |
| 검색 활성화 (탑바) | placeholder |
| 알림 (탑바) | placeholder — 단, 앱-내 폴링 unread 배지(SPEC #119)로 사이드바 CS 카운트·본사 ack 카드·CS 새 답변 dot 은 표면화됨(탑바 종 아이콘 자체는 미구현). 풀 notification 도메인(이메일/푸시·per-item read)은 B 백로그. |
디자인 시스템
| Gap | 영향 |
|---|---|
Surface 11 layer (surface-store-hq.css) | 미작성 |
Surface 12 layer (surface-store.css) | 미작성 |
| Table primitive | PRD Page 2·5·10 공통, 수기 |
| 미리듣기 Player (Surface 11) | 미도입 |
Toast·DropdownMenu는 이미@linkmusic/ui에 존재하고 admin 에서 사용 중이라 gap 이 아니다.
인프라 / DevOps
| Gap | 영향 |
|---|---|
| Sentry / Vercel Analytics | 운영 측정 데이터 없음 |
| OpenAPI CI drift 검증 | 작성자 의무로만 |
| docs 자동 deploy (Vercel) | 신설 필요 (SPEC #014 §2-6) |
| e2e Playwright 커버리지 | login · hq-onboarding 외 부족 |
| staging 환경 분리 | develop = 통합, prod 직행 |
| Visual regression (Chromatic 등) | 미도입 |
Test coverage 측정
| Gap |
|---|
| backend line coverage 측정 X (target 70%) |
| frontend coverage 측정 X |
| mutation testing 미도입 |
References
- 각 SPEC
2-N 의도적 비포함섹션 - handoff
10/11/12-surface-*.md미구현 surface