Phase 2: Expansion & Stabilization¶
MVP 출시 후 첫 운영 데이터를 바탕으로 복구 유연성 확장, UX 개선, 국제화, 외부 개발자 API 확보를 진행한다. "기능 양" 이 아니라 "MVP 경험의 깊이 확장" 이 목표다.
Phase¶
Phase 2 (MVP 안정화 후 ~ 6개월)
Why this phase¶
MVP 는 "세 기둥 + 유료 전환 가능" 을 목표로 한 최소 제품이었다. 출시 후 실제 사용자의 요구와 운영 데이터가 축적되면 다음 질문들이 명확해진다.
- 어떤 복구 옵션이 실제로 요청되는가
- Anti-Nuke 의 오탐/미탐 패턴은 무엇인가
- Pro vs Enterprise 전환율이 어떤가
- 어떤 UX 가 해지/이탈을 유발하는가
Phase 2 는 MVP 의 가정을 실데이터로 검증하고 조정 하는 단계다. 동시에 MVP 에서 의도적으로 제외한 고부가가치 기능을 선택적으로 추가한다.
Goals¶
Business goals¶
- Pro 구독자 50명 돌파
- 월 MRR ₩500,000 달성
- 첫 Enterprise 고객 확보 (커스텀 협의 모델 검증)
- 해지율 5% 이하 유지
Technical goals¶
- 복구 유연성 개선 (Partial Restore 세분화, 사용자 피드백 반영)
- Anti-Nuke 임계값 튜닝 (오탐률 ↓)
- 국제화 기반 (ko, en)
- 관측성 고도화 (알림 자동화, SLO 정의)
- 운영 안정화 (첫 incident 분석 및 반영)
In scope¶
Recovery expansion¶
- Partial Restore 세분화 — "역할 하나만 복구" 같은 단위 선택
- Scheduled Restore — 특정 시점에 자동 복구 예약
- Member 자동 복원 — 멤버 목록을 자동으로 복원 (opt-in, 대량 DM 주의)
- Snapshot Diff 시각화 — 두 스냅샷 간 변경사항 표시
- Pre-restore 스냅샷 복원 — 복구 직후 "이전으로 되돌리기" 기능
Anti-Nuke improvement¶
- 감지 패턴 추가 — Webhook hijacking, Spam message burst, Token reset 이상
- 길드별 임계값 커스터마이징 — Pro 에서도 옵션 제공
- 감지 이력 대시보드 — 오탐 피드백 수집
- Multi-admin 알림 — Owner 무응답 시 sub-admin 에게 fallback
Dashboard UX¶
- 모바일 반응형 강화 — 태블릿/스마트폰 레이아웃 개선
- Command Palette — 길드/기능 빠른 탐색
- 실시간 알림 — 웹 WebSocket 또는 SSE 로 이벤트 푸시
Internationalization (i18n)¶
- 영어 UI — 한국 외 사용자 접근성
- Discord DM 다국어 — 사용자 언어 설정 반영
- 문서 이중 언어 — docs/user 의 ko + en
Billing flexibility¶
- 연간 결제 옵션 — 월 vs 연 선택 (할인)
- 팀 결제 — 한 User 가 여러 빌링키 등록 (회사 카드 + 개인 카드)
- 결제 내역 PDF 출력 — 사업자 회계용
Observability & Reliability¶
- SLO 정의 — 복구 성공률, 결제 처리율, 이벤트 lag 목표치
- 자동 알림 규칙 — 임계값 기반 Slack/Discord 알림
- Incident playbook — 주요 장애 대응 절차 문서화
- 운영 대시보드 — 내부 팀 전용 Grafana 대시보드
Developer API (선택적)¶
- 외부 API 공개 검토 — 제3자가 Umbra 기능 활용 가능하게
- API Key 관리 — 외부 API 사용 시 인증
- API Rate limit — 공정 사용 정책
단 외부 API 는 수요 확인 후 진행.
Out of scope¶
Phase 2 에서도 하지 않는 항목:
- 메시지 본문 백업/복구 — ADR-0027 원칙 유지
- Discord 외 플랫폼 — Slack, Matrix, Revolt 등 미지원
- Rust 재작성 — Phase 3 로 별도 ADR (
roadmap/rust-rewrite.md) - 모바일 네이티브 앱 — 반응형 웹으로 충분
- AI/LLM 기반 기능 — Umbra 의 핵심 가치와 별개
- Merge mode 복구 — 사용자 요구가 압도적이지 않으면 유지 보류
Dependencies¶
- MVP 출시 완료 및 최소 2개월 운영 데이터
- 첫 incident 한 번 이상 경험 (운영 감각 확보)
- 한국 외 사용자 유입 신호 (i18n 착수 근거)
Success criteria¶
- Pro 구독자 50명 달성
- 월 MRR ₩500,000
- 복구 성공률 99% 이상
- Anti-Nuke 오탐률 1% 이하
- 해지율 5% 이하
- 한국 외 사용자 유입 10% 이상 (i18n 검증)
Risks¶
기능 확장으로 인한 복잡도 증가¶
- Likelihood — High
- Impact — Medium
- Mitigation — 매 기능 추가 전 ADR 작성, 필요 시 기능 제거도 검토
MVP 가정과 실사용 불일치¶
- Likelihood — Medium
- Impact — High
- Mitigation — 출시 초기 사용자 인터뷰 + 데이터 분석 집중
Enterprise 커스텀 협의의 운영 부담¶
- Likelihood — Medium
- Impact — Medium
- Mitigation — 첫 Enterprise 계약은 Pablo 가 직접 관리, 패턴화 후 템플릿화
글로벌 확장의 법적 부담 (GDPR 등)¶
- Likelihood — Medium
- Impact — High
- Mitigation — i18n 전 법률 검토 선행, 개인정보 처리 범위 재점검
외부 API 공개의 보안 리스크¶
- Likelihood — Low
- Impact — High
- Mitigation — API 공개 전 보안 감사, rate limit + scope 기반 권한
Timeline¶
MVP 출시 후 약 6개월에 걸쳐 진행. 우선순위에 따라 조정.
gantt
title Umbra Phase 2 Timeline
dateFormat YYYY-MM-DD
section Observation
Operation data 수집 :2026-08-01, 60d
First incident 대응 :2026-09-01, 30d
section Recovery Expansion
Partial Restore 세분화 :2026-09-15, 30d
Scheduled Restore :2026-10-15, 21d
Snapshot Diff UI :2026-10-20, 21d
section AntiNuke Improvement
추가 감지 패턴 :2026-09-20, 28d
감지 이력 대시보드 :2026-10-20, 14d
section Dashboard
모바일 반응형 :2026-10-01, 14d
Command Palette :2026-11-01, 14d
section i18n
영문 UI :2026-11-15, 28d
DM 다국어 :2026-12-01, 14d
section Reliability
SLO 정의 + 알림 :2026-09-15, 30d
Incident playbook :2026-10-01, 21d
section Optional
연간 결제 :2026-11-15, 14d
외부 API (if demand) :2027-01-01, 60d
Next phase¶
Phase 2 완료 후 고려할 방향:
- Phase 3 — Rust 재작성 (ADR-0031 trigger 조건 충족 시).
roadmap/rust-rewrite.md참조 - Phase 3 대안 — 기능 축적이 충분하면 Rust 재작성 대신 Go 스택에서 Scale 단계 진입
Rust 재작성은 MVP + Phase 2 경험이 언어 교체 비용을 정당화할 때만 진행.
See also¶
roadmap/mvp-scope.md— MVP 범위roadmap/rust-rewrite.md— 장기 언어 재작성overview/value-proposition.md— 세 기둥 가치adr/0031-future-rust-rewrite-nabi.md— Rust 재작성 조건