docs(product): alignment audit plan 추가

This commit is contained in:
2026-03-15 11:51:53 +09:00
parent 6bf3336aec
commit b3853c98d2
4 changed files with 652 additions and 82 deletions

View File

@@ -6,7 +6,8 @@
- 작업은 가능한 한 "주제별"로 분리해서 작성한다.
- 한 주제는 가능하면 한 커밋으로 끝낼 수 있게 범위를 좁힌다.
- "금지사항/제외 범위"를 명시해서 불필요한 변경을 막는다.
- `finding -> fix -> docs -> validation -> commit`까지 한 라운드에서 닫는다.
- browser QA가 필요한 작업은 반드시 완료 조건에 명시한다.
## 우선순위
@@ -17,104 +18,69 @@
## 작업 1
- 제목: `/space` Refocus polish 마무리
- 제목: `Product Alignment Audit` findings ledger 시작
- 목적:
- `10_refocus_system_spec.md` 기준으로 pause / refocus / next beat / goal complete를 premium recovery flow로 정리한다.
- recovery overlay가 planner/checklist처럼 보이지 않게 한다.
- `16_product_alignment_audit_plan.md` 기준으로 core loop 전반의 기획-구현 불일치를 하나의 ledger로 수집한다.
- 더 이상 발견 즉시 감으로 수정하지 않고, severity와 affected flow 기준으로 정리한다.
- 변경 범위:
- pause tray
- refocus tray
- next beat tray
- goal complete tray
- copy / hierarchy / material / motion polish
- `/app`
- `/space`
- `/stats`
- 관련 카피 / query handoff / plan tier
- 제외 범위:
- multi-goal / list affordance 추가 금지
- social/accountability 확장 금지
- review 통계 확장 금지
- visual redesign 직접 착수 금지
- 새로운 feature spec 확장 금지
- `/settings`, `/admin` 구현 변경 금지
- 완료 조건:
- refocus가 `편집 기능`이 아니라 `recovery ritual`처럼 읽힌다.
- pause / next beat / complete가 한 번에 하나만 보인다.
- bright/dark scene 모두에서 안정적으로 읽힌다.
- `17_product_alignment_findings.md`가 생성된다
- 최소한 P1 / P2 finding이 route, promise, actual behavior, affected file 기준으로 정리된다
- 이미 수정된 항목과 아직 열린 항목이 분리된다
- 검증:
- 브라우저 수동 확인
- 문서 self-review
- 커밋 힌트:
- feat(space): refocus-system polish
- docs(product): alignment findings ledger 시작
## 작업 2
- 제목: `Away / Return Recovery` 구현
- 제목: `Core Loop Alignment Audit` static slice
- 목적:
- `11_away_return_recovery_spec.md` 기준으로 pause 없이 떠난 사용자의 복귀 흐름을 구현한다.
- `pause`, `break`, `return`이 같은 멈춤 상태처럼 읽히지 않게 한다.
- `/app`, `/space`, `/stats`의 route-flow matrix와 state contract matrix를 만든다.
- primary/secondary entry, CTA promise, 실제 상태 전환이 맞는지 정리한다.
- 변경 범위:
- `visibilitychange`
- `pagehide`
- sleep/wake delta 감지
- return tray
- focus ended while away 처리
- route/flow inventory
- state contract matrix
- copy-behavior mismatch 정리
- 제외 범위:
- webcam / idle tracking / 감시성 기능 금지
- planner/list affordance 추가 금지
- break를 standard pause처럼 재사용 금지
- visual polish 직접 수정 금지
- recovery browser QA 금지
- 완료 조건:
- focus가 끝난 뒤 복귀하면 바로 standard break로 가지 않는다.
- return 상태에서 `이어가기 / 한 조각 다시 잡기 / 지금부터 쉬기` 중 적절한 제안이 나온다.
- `/app`, `/space`, `/stats`의 primary CTA와 secondary CTA가 표로 정리된다
- pause / return / complete / review handoff의 상태 의미가 문서화된다
- static mismatch가 severity와 함께 분류된다
- 검증:
- 브라우저 수동 확인 + 상태 전이 점검
- source-of-truth 문서 대조
- 커밋 힌트:
- feat(space): away-return-recovery
- docs(flow): core-loop alignment matrix 추가
## 작업 3
- 제목: `Pause / Break / Return` 분리 polish
- 제목: `Core Loop Alignment Audit` browser slice
- 목적:
- 세 상태가 감정적으로도 구조적으로도 다르게 읽히도록 정리한다.
- static audit에서 나온 핵심 흐름을 브라우저에서 실제로 검증한다.
- 문서와 코드가 맞더라도 실제 체감이 어긋나는지를 잡는다.
- 변경 범위:
- 카피
- material
- tray hierarchy
- timer/HUD와의 연결
- `/app` first entry
- `/app` resume
- `/app -> /stats -> /app`
- `/space` pause / return / next beat / complete
- `/space` complete -> setup -> weekly review teaser
- 제외 범위:
- review 통계 확장 금지
- social/accountability 확장 금지
- bulk visual redesign 금지
- new feature 추가 금지
- 완료 조건:
- pause는 recovery tone
- break는 release tone
- return은 re-entry tone으로 분리된다
- copy와 CTA hierarchy 2차 분리가 반영된다
- motion polish 1차가 반영된다
- browser QA findings가 ledger에 반영된다
- P1/P2 mismatch는 수정 대상 라운드로 분리된다
- 검증:
- 브라우저 수동 확인
- motion 미세 조정
- manual browser QA
- 커밋 힌트:
- feat(space): separate-pause-break-return
## 작업 4
- 제목: `Weekly Review Entry Flow` 구현
- 목적:
- `15_app_stats_entry_flow_spec.md` 기준으로 `/app -> /stats -> /app` loop를 실제 제품 루프에 연결한다.
- 변경 범위:
- `/app` weekly review teaser
- `/stats` 마지막 CTA의 `/app` return handoff
- `/app` review-aware return state
- 제외 범위:
- `/stats`에서 바로 `/space` auto-start 금지
- review teaser를 hero보다 강하게 노출하는 것 금지
- planner/todo 회고 흐름으로 확장 금지
- 완료 조건:
- `/app`에서 review로 들어가는 primary path가 생긴다.
- `/stats`를 보고 다시 `/app`으로 돌아와 다음 세션을 시작할 수 있다.
- review가 읽고 끝나는 페이지가 아니라 next-session ritual처럼 동작한다.
- 진행 상태:
- Slice 1 완료: `/app` hero 아래 low-emphasis weekly review teaser 추가
- Slice 2 완료: `/stats` 마지막 CTA가 `/app?review=weekly&carryHint=...` handoff로 연결
- `/app`은 query를 받아 review-aware return hint를 먼저 보여준다
- Slice 3 완료: Pro에서 추천 ritual과 더 구체적인 CTA / return hint가 연결된다
- Slice 4 완료: `/space` complete 이후 setup drawer 아래에 secondary review teaser가 노출된다
- 다음 작업: recovery browser QA 후 weekly review 실제 recovery 집계 연결
- 검증:
- `/app -> /stats -> /app` 실제 브라우저 플로우 확인
- hero와 teaser의 시각 우선순위 확인
- 커밋 힌트:
- feat(app): weekly-review-entry-flow
- docs(qa): core-loop browser audit 기록