테마
Story: 업무노트 기능 분기 (Basic vs Pro)
메타
| 항목 | 값 |
|---|---|
| Story ID | E-05-S-05 |
| Epic | E-05 요금제 정책 재설계 및 가드레일 |
| 상태 | draft |
| 우선순위 | P0 |
| 규모 | M |
| 담당 | 창훈님 (하록님, 수민님) |
사용자 스토리
As a 셀러, I want 요금제에 따라 업무노트 기능이 다르게 제공되길 원한다, So that Pro 업그레이드의 가치를 체감하고 결정할 수 있다.
수락 기준 (Acceptance Criteria)
AC-01: Starter - 업무노트 미제공
| 항목 | 내용 |
|---|---|
| Given | Starter 요금제 |
| When | Surface Layer 조언 카드 표시 |
| Then | "적용했어요" 버튼 없음, 업그레이드 안내 |
UI 스펙:
┌────────────────────────────────────────┐
│ 🟡 주의가 필요합니다 │
│ │
│ ROAS가 150%로 하락했어요. │
│ 입찰가를 15% 낮추면 순이익이 │
│ 개선될 수 있어요. │
│ │
│ ┌────────────────────────────────────┐ │
│ │ 📝 업무노트로 실행 기록하기 │ │
│ │ Basic 이상에서 사용 가능 │ │
│ │ [업그레이드] │ │
│ └────────────────────────────────────┘ │
└────────────────────────────────────────┘AC-02: Basic - 적용 기록만
| 항목 | 내용 |
|---|---|
| Given | Basic 요금제 |
| When | "적용했어요" 버튼 클릭 |
| Then | 적용/미적용만 기록, 커스텀 메모 입력 불가 |
UI 스펙:
┌────────────────────────────────────────┐
│ 🟡 주의가 필요합니다 │
│ ... │
│ │
│ [적용했어요 ✓] [나중에] │
│ │
│ ┌────────────────────────────────────┐ │
│ │ 💡 Pro에서는 상세 메모도 남길 수 │ │
│ │ 있어요 [자세히 보기] │ │
│ └────────────────────────────────────┘ │
└────────────────────────────────────────┘기록되는 데이터:
json
{
"type": "applied",
"suggestionId": "...",
"appliedAt": "2026-01-27T10:00:00Z",
"memo": null // Basic은 null
}AC-03: Pro - 커스텀 메모 + 효과 추적
| 항목 | 내용 |
|---|---|
| Given | Pro 요금제 |
| When | "적용했어요" 버튼 클릭 |
| Then | 모달 열림 - 커스텀 메모 입력 가능 |
UI 스펙:
┌────────────────────────────────────────┐
│ 📝 실행 기록 │
├────────────────────────────────────────┤
│ │
│ 조언: 입찰가 15% 인하 │
│ │
│ 메모 (선택): │
│ ┌────────────────────────────────────┐ │
│ │ 비검색 캠페인만 200원→170원으로 │ │
│ │ 조정함. 검색은 유지. │ │
│ └────────────────────────────────────┘ │
│ │
│ ☑ 7일 후 효과 추적 알림 받기 │
│ │
│ [취소] [기록하기] │
└────────────────────────────────────────┘기록되는 데이터:
json
{
"type": "applied",
"suggestionId": "...",
"appliedAt": "2026-01-27T10:00:00Z",
"memo": "비검색 캠페인만 200원→170원으로 조정함.",
"trackingEnabled": true
}AC-04: 효과 추적 결과 (Pro 전용)
| 항목 | 내용 |
|---|---|
| Given | Pro 요금제 + 7일 경과 |
| When | 효과 추적 완료 |
| Then | Before/After 비교 표시 |
UI 스펙:
┌────────────────────────────────────────┐
│ 📊 효과 추적 결과 │
├────────────────────────────────────────┤
│ 조언: 입찰가 15% 인하 (01/20 적용) │
│ │
│ ROAS: 150% → 185% (+35%) 🟢 │
│ 순이익: +42,000원 │
│ │
│ 결과: ✅ 긍정적 효과 │
└────────────────────────────────────────┘태스크 분해
Task 1: Starter 업무노트 차단 AC-01
- [ ] 1.1: 요금제 체크 로직
- [ ] 1.2: 업그레이드 안내 UI
- [ ] 1.3: 업그레이드 버튼 → 요금제 페이지
Task 2: Basic 적용 기록 AC-02
- [ ] 2.1: 간단 버튼 UI (적용/나중에)
- [ ] 2.2: 적용 API 호출 (memo: null)
- [ ] 2.3: Pro 업그레이드 유도 배너
Task 3: Pro 커스텀 메모 AC-03
- [ ] 3.1: 메모 입력 모달 컴포넌트
- [ ] 3.2: 효과 추적 체크박스
- [ ] 3.3: 적용 API 호출 (memo + tracking)
Task 4: 효과 추적 결과 AC-04
- [ ] 4.1: 효과 추적 결과 카드 컴포넌트
- [ ] 4.2: Before/After 비교 표시
- [ ] 4.3: 판정 결과 (긍정/중립/부정) 아이콘
Dev Notes (AI Agent 최적화)
영향 받는 소스 트리
src/
├── components/
│ ├── worknote/
│ │ ├── WorkNoteButton.tsx # 🔄 수정 (요금제 분기)
│ │ ├── WorkNoteMemoModal.tsx # 🆕 Pro 전용
│ │ ├── WorkNoteUpgradePrompt.tsx # 🆕 Starter용
│ │ └── EffectTrackingCard.tsx # 🆕 Pro 전용
└── hooks/
└── useWorkNote.ts # 🔄 수정요금제별 분기 로직
typescript
const { features } = usePlanGuard();
if (!features.worknote_record.enabled) {
return <WorkNoteUpgradePrompt targetTier="basic" />;
}
if (!features.worknote_memo.enabled) {
return <SimpleApplyButton />; // Basic
}
return <WorkNoteMemoModal />; // Pro+의존성
| 의존 | 설명 | 상태 |
|---|---|---|
| E-05-S-02 | PlanGuardService API | 선행 필수 |
| S52 E-10 | 업무노트 기본 구현 | 선행 필수 |
생성일: 2026-01-27
