diff --git a/docs/90_current_state.md b/docs/90_current_state.md index d6b3cd6..7c353bb 100644 --- a/docs/90_current_state.md +++ b/docs/90_current_state.md @@ -210,11 +210,11 @@ Last Updated: 2026-03-15 - `이어서 시작`: 저장 목표로 즉시 Focus 진입 - `새로 시작`: 목표를 비워 새 세션 입력 흐름으로 전환 - 세션 복구 운영 문서 추가: - - `docs/06_commit_convention.md` - - `docs/07_session_recovery.md` + - `docs/foundation/06_commit_convention.md` + - `docs/ops/07_session_recovery.md` - 워크플로우 토큰 절약 모드 추가: - `docs/context_core.md` 신설 - - `docs/workFlow.md`를 기본 3문서 + 조건부 로드로 변경 + - `docs/ops/workFlow.md`를 기본 3문서 + 조건부 로드로 변경 - 워크플로우 기본 로드를 2파일로 축소: - `docs/work.md` - `docs/session_brief.md` @@ -356,7 +356,7 @@ Last Updated: 2026-03-15 - `src/entities/auth/model/useAuthStore.ts` - `src/features/auth/hooks/useSocialLogin.ts` - `src/features/auth/components/AuthRedirectButton.tsx` - - `docs/02_arch_fsd_rules.md` + - `docs/foundation/02_arch_fsd_rules.md` - `docs/work.md` - `docs/90_current_state.md` - `docs/session_brief.md` @@ -399,11 +399,11 @@ Last Updated: 2026-03-15 - `src/entities/room/model/types.ts` - `src/entities/room/model/rooms.ts` - `src/widgets/space-tools-dock/model/applyQuickPack.ts` (삭제) -- `docs/06_commit_convention.md` -- `docs/07_session_recovery.md` +- `docs/foundation/06_commit_convention.md` +- `docs/ops/07_session_recovery.md` - `docs/context_core.md` - `docs/session_brief.md` -- `docs/workFlow.md` +- `docs/ops/workFlow.md` - `docs/README.md` - `.gitmessage-session.txt` - `scripts/session/recover-context.sh` diff --git a/docs/README.md b/docs/README.md index 3ea4f7a..91b562c 100644 --- a/docs/README.md +++ b/docs/README.md @@ -23,15 +23,15 @@ 화면 하나가 아니라 제품 전체 방향을 볼 때 읽는다. -- [00_project_brief.md](./00_project_brief.md) `source-of-truth` +- [00_project_brief.md](./foundation/00_project_brief.md) `source-of-truth` - 프로젝트 목적, 범위, 현재 제품 성격 -- [12_core_loop_execution_roadmap.md](./12_core_loop_execution_roadmap.md) `source-of-truth` +- [12_core_loop_execution_roadmap.md](./product/12_core_loop_execution_roadmap.md) `source-of-truth` - 어떤 순서로 구현할지 정리한 로드맵 -- [16_product_alignment_audit_plan.md](./16_product_alignment_audit_plan.md) `source-of-truth` +- [16_product_alignment_audit_plan.md](./product/16_product_alignment_audit_plan.md) `source-of-truth` - 기획-구현 불일치 점검 계획 -- [17_product_alignment_findings.md](./17_product_alignment_findings.md) `source-of-truth` +- [17_product_alignment_findings.md](./product/17_product_alignment_findings.md) `source-of-truth` - 실제 불일치 ledger -- [08_app_reframe_strategy.md](./08_app_reframe_strategy.md) `legacy` +- [08_app_reframe_strategy.md](./screens/app/08_app_reframe_strategy.md) `legacy` - 초반 `/app` 방향 논의용 아이디어 문서 ## 화면별 기획 문서 @@ -40,56 +40,56 @@ `/app` 진입 경험, paused gate, review entry를 볼 때 읽는다. -- [19_app_atmosphere_entry_spec.md](./19_app_atmosphere_entry_spec.md) `source-of-truth` +- [19_app_atmosphere_entry_spec.md](./screens/app/19_app_atmosphere_entry_spec.md) `source-of-truth` - `goal + duration + atmosphere` 중심의 새 `/app` 설계 -- [18_paused_session_reentry_spec.md](./18_paused_session_reentry_spec.md) `source-of-truth` +- [18_paused_session_reentry_spec.md](./screens/app/18_paused_session_reentry_spec.md) `source-of-truth` - paused/running 상태에 따른 `/app <-> /space` 재진입 정책 -- [15_app_stats_entry_flow_spec.md](./15_app_stats_entry_flow_spec.md) `source-of-truth` +- [15_app_stats_entry_flow_spec.md](./screens/app/15_app_stats_entry_flow_spec.md) `source-of-truth` - `/app -> /stats -> /app` review 진입/복귀 플로우 ### `/space` `/space` HUD, refocus, break/return, goal card를 볼 때 읽는다. -- [10_refocus_system_spec.md](./10_refocus_system_spec.md) `source-of-truth` +- [10_refocus_system_spec.md](./screens/space/10_refocus_system_spec.md) `source-of-truth` - pause/refocus/next-beat/goal-complete 구조 -- [11_away_return_recovery_spec.md](./11_away_return_recovery_spec.md) `source-of-truth` +- [11_away_return_recovery_spec.md](./screens/space/11_away_return_recovery_spec.md) `source-of-truth` - away/return 감지와 복귀 UX -- [13_space_intent_card_collapsed_expanded_spec.md](./13_space_intent_card_collapsed_expanded_spec.md) `source-of-truth` +- [13_space_intent_card_collapsed_expanded_spec.md](./screens/space/13_space_intent_card_collapsed_expanded_spec.md) `source-of-truth` - 좌상단 목표 카드 구조 ### `/stats` review 구조와 BM 연결을 볼 때 읽는다. -- [14_weekly_review_reframe_spec.md](./14_weekly_review_reframe_spec.md) `source-of-truth` +- [14_weekly_review_reframe_spec.md](./screens/stats/14_weekly_review_reframe_spec.md) `source-of-truth` - weekly review를 행동 시스템으로 재정의한 문서 -- [15_app_stats_entry_flow_spec.md](./15_app_stats_entry_flow_spec.md) `source-of-truth` +- [15_app_stats_entry_flow_spec.md](./screens/app/15_app_stats_entry_flow_spec.md) `source-of-truth` - `/stats` 진입/복귀 플로우 ## 개발 시 참고 문서 구현 규칙이나 구조를 볼 때 읽는다. -- [01_ui_guidelines.md](./01_ui_guidelines.md) `source-of-truth` +- [01_ui_guidelines.md](./foundation/01_ui_guidelines.md) `source-of-truth` - UI 톤, CTA 위계, premium 품질 기준 -- [02_arch_fsd_rules.md](./02_arch_fsd_rules.md) `source-of-truth` +- [02_arch_fsd_rules.md](./foundation/02_arch_fsd_rules.md) `source-of-truth` - FSD/레이어 구조 규칙 -- [03_routes_map.md](./03_routes_map.md) `source-of-truth` +- [03_routes_map.md](./foundation/03_routes_map.md) `source-of-truth` - 라우트와 주요 화면 진입점 -- [04_coding_rules.md](./04_coding_rules.md) `source-of-truth` +- [04_coding_rules.md](./foundation/04_coding_rules.md) `source-of-truth` - 코드 작성 규칙 -- [06_commit_convention.md](./06_commit_convention.md) `source-of-truth` +- [06_commit_convention.md](./foundation/06_commit_convention.md) `source-of-truth` - 커밋 규칙 ## 운영 / 핸드오프 문서 작업 재개, 세션 복구, handoff용 문서다. -- [05_handoff_checklist.md](./05_handoff_checklist.md) `ops` -- [07_session_recovery.md](./07_session_recovery.md) `ops` +- [05_handoff_checklist.md](./ops/05_handoff_checklist.md) `ops` +- [07_session_recovery.md](./ops/07_session_recovery.md) `ops` - [context_core.md](./context_core.md) `ops` -- [workFlow.md](./workFlow.md) `ops` +- [workFlow.md](./ops/workFlow.md) `ops` - [work.template.md](./work.template.md) `ops` ## 실시간 상태 문서 @@ -103,16 +103,16 @@ review 구조와 BM 연결을 볼 때 읽는다. ## 빠른 선택 가이드 - `/app`을 수정한다: - - [19_app_atmosphere_entry_spec.md](./19_app_atmosphere_entry_spec.md) - - [18_paused_session_reentry_spec.md](./18_paused_session_reentry_spec.md) - - [15_app_stats_entry_flow_spec.md](./15_app_stats_entry_flow_spec.md) + - [19_app_atmosphere_entry_spec.md](./screens/app/19_app_atmosphere_entry_spec.md) + - [18_paused_session_reentry_spec.md](./screens/app/18_paused_session_reentry_spec.md) + - [15_app_stats_entry_flow_spec.md](./screens/app/15_app_stats_entry_flow_spec.md) - `/space` recovery를 수정한다: - - [10_refocus_system_spec.md](./10_refocus_system_spec.md) - - [11_away_return_recovery_spec.md](./11_away_return_recovery_spec.md) - - [13_space_intent_card_collapsed_expanded_spec.md](./13_space_intent_card_collapsed_expanded_spec.md) + - [10_refocus_system_spec.md](./screens/space/10_refocus_system_spec.md) + - [11_away_return_recovery_spec.md](./screens/space/11_away_return_recovery_spec.md) + - [13_space_intent_card_collapsed_expanded_spec.md](./screens/space/13_space_intent_card_collapsed_expanded_spec.md) - `/stats`를 수정한다: - - [14_weekly_review_reframe_spec.md](./14_weekly_review_reframe_spec.md) - - [15_app_stats_entry_flow_spec.md](./15_app_stats_entry_flow_spec.md) + - [14_weekly_review_reframe_spec.md](./screens/stats/14_weekly_review_reframe_spec.md) + - [15_app_stats_entry_flow_spec.md](./screens/app/15_app_stats_entry_flow_spec.md) - 지금 다음 작업이 뭔지 본다: - [work.md](./work.md) - [session_brief.md](./session_brief.md) diff --git a/docs/00_project_brief.md b/docs/foundation/00_project_brief.md similarity index 100% rename from docs/00_project_brief.md rename to docs/foundation/00_project_brief.md diff --git a/docs/01_ui_guidelines.md b/docs/foundation/01_ui_guidelines.md similarity index 100% rename from docs/01_ui_guidelines.md rename to docs/foundation/01_ui_guidelines.md diff --git a/docs/02_arch_fsd_rules.md b/docs/foundation/02_arch_fsd_rules.md similarity index 100% rename from docs/02_arch_fsd_rules.md rename to docs/foundation/02_arch_fsd_rules.md diff --git a/docs/03_routes_map.md b/docs/foundation/03_routes_map.md similarity index 100% rename from docs/03_routes_map.md rename to docs/foundation/03_routes_map.md diff --git a/docs/04_coding_rules.md b/docs/foundation/04_coding_rules.md similarity index 100% rename from docs/04_coding_rules.md rename to docs/foundation/04_coding_rules.md diff --git a/docs/06_commit_convention.md b/docs/foundation/06_commit_convention.md similarity index 100% rename from docs/06_commit_convention.md rename to docs/foundation/06_commit_convention.md diff --git a/docs/05_handoff_checklist.md b/docs/ops/05_handoff_checklist.md similarity index 100% rename from docs/05_handoff_checklist.md rename to docs/ops/05_handoff_checklist.md diff --git a/docs/07_session_recovery.md b/docs/ops/07_session_recovery.md similarity index 92% rename from docs/07_session_recovery.md rename to docs/ops/07_session_recovery.md index 37f4079..0ed3f7a 100644 --- a/docs/07_session_recovery.md +++ b/docs/ops/07_session_recovery.md @@ -28,8 +28,8 @@ docs(session): 세션 복구 워크플로우와 커밋 템플릿 추가 - codex cli 중단 시 작업 맥락 손실을 줄이기 위해 변경사항: -- docs/06_commit_convention.md 추가 -- docs/07_session_recovery.md 추가 +- docs/foundation/06_commit_convention.md 추가 +- docs/ops/07_session_recovery.md 추가 - scripts/session/recover-context.sh 추가 검증: diff --git a/docs/workFlow.md b/docs/ops/workFlow.md similarity index 87% rename from docs/workFlow.md rename to docs/ops/workFlow.md index ec81a0b..78236bb 100644 --- a/docs/workFlow.md +++ b/docs/ops/workFlow.md @@ -19,12 +19,12 @@ ### 조건부 로드 (필요할 때만) -- UI/카피/CTA 변경이 있으면 `docs/01_ui_guidelines.md` -- 구조/FSD/레이어 변경이 있으면 `docs/02_arch_fsd_rules.md` -- 커밋 직전에 `docs/06_commit_convention.md` +- UI/카피/CTA 변경이 있으면 `docs/foundation/01_ui_guidelines.md` +- 구조/FSD/레이어 변경이 있으면 `docs/foundation/02_arch_fsd_rules.md` +- 커밋 직전에 `docs/foundation/06_commit_convention.md` - 현재 상태 상세가 필요하면 `docs/90_current_state.md` - 핵심 규칙 상세가 필요하면 `docs/context_core.md` -- 규칙 충돌/모호함이 있으면 `docs/00_project_brief.md`, `docs/04_coding_rules.md` +- 규칙 충돌/모호함이 있으면 `docs/foundation/00_project_brief.md`, `docs/foundation/04_coding_rules.md` ## 2) 구현 원칙 (강제) diff --git a/docs/12_core_loop_execution_roadmap.md b/docs/product/12_core_loop_execution_roadmap.md similarity index 93% rename from docs/12_core_loop_execution_roadmap.md rename to docs/product/12_core_loop_execution_roadmap.md index c96dfbb..a87ba6d 100644 --- a/docs/12_core_loop_execution_roadmap.md +++ b/docs/product/12_core_loop_execution_roadmap.md @@ -13,12 +13,12 @@ Last Updated: 2026-03-15 - `../../product_principles.md` - `../../current_context.md` -- `19_app_atmosphere_entry_spec.md` -- `10_refocus_system_spec.md` -- `11_away_return_recovery_spec.md` -- `15_app_stats_entry_flow_spec.md` -- `18_paused_session_reentry_spec.md` -- `16_product_alignment_audit_plan.md` +- `../screens/app/19_app_atmosphere_entry_spec.md` +- `../screens/space/10_refocus_system_spec.md` +- `../screens/space/11_away_return_recovery_spec.md` +- `../screens/app/15_app_stats_entry_flow_spec.md` +- `../screens/app/18_paused_session_reentry_spec.md` +- `./16_product_alignment_audit_plan.md` --- @@ -49,7 +49,7 @@ VibeRoom은 아래 방식으로 진행한다. ### 완료 2. `/app` Entry Reframe (Legacy) -- 문서: historical, superseded by `19_app_atmosphere_entry_spec.md` +- 문서: historical, superseded by `../screens/app/19_app_atmosphere_entry_spec.md` - 구현 상태: - `/app`은 한때 single-goal commitment gate로 정리됐음 - planner/list-first 구조 제거 @@ -57,7 +57,7 @@ VibeRoom은 아래 방식으로 진행한다. ### 다음 Phase A. `/app` Atmosphere Entry Redesign -- 문서: `19_app_atmosphere_entry_spec.md` +- 문서: `../screens/app/19_app_atmosphere_entry_spec.md` - 목적: - `/app` no-session 상태를 `goal + duration + atmosphere` 중심의 premium entry stage로 재설계 - scene/sound를 다시 entry 가치로 끌어올리되 planner/dashboard처럼 보이지 않게 유지 @@ -72,14 +72,14 @@ VibeRoom은 아래 방식으로 진행한다. ### 완료 3. Refocus System 기본 구조 -- 문서: `10_refocus_system_spec.md` +- 문서: `../screens/space/10_refocus_system_spec.md` - 구현 상태: - pause -> refocus 흐름의 기본 skeleton 존재 - next beat / goal complete의 상태 분리 시작 ### 완료 4. Away / Return Recovery 기본 구현 -- 문서: `11_away_return_recovery_spec.md` +- 문서: `../screens/space/11_away_return_recovery_spec.md` - 구현 상태: - `visibilitychange`, `pagehide`, sleep/wake gap 기반 detection 연결 - focus running 복귀 시 `Return` tray 노출 @@ -98,7 +98,7 @@ VibeRoom은 아래 방식으로 진행한다. ### 끼어든 기획 -- `11_away_return_recovery_spec.md` +- `../screens/space/11_away_return_recovery_spec.md` 이 기획은 원래 흐름을 덮어쓴 것이 아니다. 이 문서는 **Refocus System을 실제 사용자 행동에 맞게 완성하기 위해 중간에 추가된 필수 slice**다. @@ -134,7 +134,7 @@ VibeRoom은 아래 방식으로 진행한다. 문서: -- `10_refocus_system_spec.md` +- `../screens/space/10_refocus_system_spec.md` 목적: @@ -152,7 +152,7 @@ VibeRoom은 아래 방식으로 진행한다. 문서: -- `11_away_return_recovery_spec.md` +- `../screens/space/11_away_return_recovery_spec.md` 목적: @@ -201,14 +201,14 @@ VibeRoom은 아래 방식으로 진행한다. 문서: -- `14_weekly_review_reframe_spec.md` -- `15_app_stats_entry_flow_spec.md` +- `../screens/stats/14_weekly_review_reframe_spec.md` +- `../screens/app/15_app_stats_entry_flow_spec.md` ### Phase 5.5. Session Routing / Paused Re-entry Alignment 문서: -- `18_paused_session_reentry_spec.md` +- `../screens/app/18_paused_session_reentry_spec.md` 목적: diff --git a/docs/16_product_alignment_audit_plan.md b/docs/product/16_product_alignment_audit_plan.md similarity index 95% rename from docs/16_product_alignment_audit_plan.md rename to docs/product/16_product_alignment_audit_plan.md index 7408c70..a2e83bc 100644 --- a/docs/16_product_alignment_audit_plan.md +++ b/docs/product/16_product_alignment_audit_plan.md @@ -69,12 +69,12 @@ Audit 중 충돌이 생기면 아래 순서로 판단한다. 1. `product_principles.md` 2. `/Users/ijeongmin/Desktop/corpi/viberoom/current_context.md` 3. route/flow 관련 상세 spec - - `19_app_atmosphere_entry_spec.md` - - `10_refocus_system_spec.md` - - `11_away_return_recovery_spec.md` - - `13_space_intent_card_collapsed_expanded_spec.md` - - `14_weekly_review_reframe_spec.md` - - `15_app_stats_entry_flow_spec.md` + - `../screens/app/19_app_atmosphere_entry_spec.md` + - `../screens/space/10_refocus_system_spec.md` + - `../screens/space/11_away_return_recovery_spec.md` + - `../screens/space/13_space_intent_card_collapsed_expanded_spec.md` + - `../screens/stats/14_weekly_review_reframe_spec.md` + - `../screens/app/15_app_stats_entry_flow_spec.md` 4. `90_current_state.md` 5. 실제 코드 @@ -212,7 +212,7 @@ Audit은 아래 6단계로 진행한다. - `current_context.md` - `90_current_state.md` -- `12_core_loop_execution_roadmap.md` +- `./12_core_loop_execution_roadmap.md` - route map / session brief 확인 목적: @@ -451,13 +451,13 @@ Free / Pro를 아래 기준으로 본다. ### 1. 기준 문서 -- 이 문서 `16_product_alignment_audit_plan.md` +- 이 문서 `./16_product_alignment_audit_plan.md` ### 2. 실제 finding ledger 추천 파일: -- `17_product_alignment_findings.md` +- `./17_product_alignment_findings.md` 형식: @@ -519,7 +519,7 @@ Free / Pro를 아래 기준으로 본다. ## 11. 바로 다음 실행 계획 -### 실행 1. `17_product_alignment_findings.md` 생성 +### 실행 1. `./17_product_alignment_findings.md` 생성 범위: diff --git a/docs/17_product_alignment_findings.md b/docs/product/17_product_alignment_findings.md similarity index 78% rename from docs/17_product_alignment_findings.md rename to docs/product/17_product_alignment_findings.md index 552bac6..7e39932 100644 --- a/docs/17_product_alignment_findings.md +++ b/docs/product/17_product_alignment_findings.md @@ -2,7 +2,7 @@ Last Updated: 2026-03-15 -이 문서는 `16_product_alignment_audit_plan.md`를 실제로 운영하기 위한 **findings ledger**다. +이 문서는 `./16_product_alignment_audit_plan.md`를 실제로 운영하기 위한 **findings ledger**다. 목표는 단순하다. @@ -59,15 +59,15 @@ Last Updated: 2026-03-15 | ID | Severity | Area | Product Promise | Actual Behavior | Affected Files | Status | Next Action | | --- | --- | --- | --- | --- | --- | --- | --- | | ALN-001 | P1 | `/space` Goal Complete / Break semantics | `잠깐 쉬기`는 블록을 닫고 break로 넘어가는 것처럼 읽힘 | 실제로는 overlay만 닫고 reminder만 예약되어 break 의미가 깨졌음 | `src/widgets/space-focus-hud/ui/SpaceFocusHudWidget.tsx`, `src/shared/i18n/messages/space.ts` | fixed-awaiting-browser | `잠시 비우기 -> pause + reminder`가 실제 체감상도 맞는지 브라우저 확인 | -| ALN-002 | P1 | `/app` Weekly Review primary entry | `/app`이 Weekly Review의 primary entry라고 정의됨 | current session이 있으면 review entry가 완전히 사라져 primary entry가 끊겼음 | `src/widgets/focus-dashboard/ui/FocusDashboardWidget.tsx`, `docs/15_app_stats_entry_flow_spec.md` | fixed-awaiting-browser | resume 상태에서 review entry 발견성과 우선순위 확인 | +| ALN-002 | P1 | `/app` Weekly Review primary entry | `/app`이 Weekly Review의 primary entry라고 정의됨 | current session이 있으면 review entry가 완전히 사라져 primary entry가 끊겼음 | `src/widgets/focus-dashboard/ui/FocusDashboardWidget.tsx`, `docs/screens/app/15_app_stats_entry_flow_spec.md` | fixed-awaiting-browser | resume 상태에서 review entry 발견성과 우선순위 확인 | | ALN-003 | P2 | `/space` secondary review teaser | `방금 끝낸 흐름까지 review에 담아둘까요?`처럼 read-after-write를 약속했음 | 실제로는 generic `/stats`만 열고, 방금 끝낸 흐름을 별도 handoff하지 않았음 | `src/shared/i18n/messages/space.ts`, `src/widgets/space-workspace/ui/SpaceWorkspaceWidget.tsx` | fixed-awaiting-browser | setup drawer teaser가 과장 없이 자연스럽게 읽히는지 확인 | | ALN-004 | P1 | Pro personalized handoff | `/stats`에서 추천 ritual로 돌아간다고 말했음 | 실제로는 `/app` 문구만 바뀌고 start behavior는 기본 ritual 그대로였음 | `src/widgets/focus-dashboard/ui/FocusDashboardWidget.tsx`, `src/shared/i18n/messages/app.ts` | fixed-awaiting-browser | `entryPreset`이 실제 scene/sound/timer 시작값으로 적용되는지 검증 | -| ALN-005 | P2 | `/space` intent card interaction | rail, edit, expand/collapse의 역할이 분리돼야 함 | goal 클릭과 edit 진입이 섞여 예측 가능성이 낮았음 | `src/widgets/space-focus-hud/ui/IntentCapsule.tsx`, `docs/13_space_intent_card_collapsed_expanded_spec.md` | fixed-awaiting-browser | desktop/mobile에서 expand와 edit 구분이 분명한지 확인 | +| ALN-005 | P2 | `/space` intent card interaction | rail, edit, expand/collapse의 역할이 분리돼야 함 | goal 클릭과 edit 진입이 섞여 예측 가능성이 낮았음 | `src/widgets/space-focus-hud/ui/IntentCapsule.tsx`, `docs/screens/space/13_space_intent_card_collapsed_expanded_spec.md` | fixed-awaiting-browser | desktop/mobile에서 expand와 edit 구분이 분명한지 확인 | | ALN-006 | P2 | `/space` Goal Complete 2단계 인지 | 1단계 choice와 2단계 next 입력이 명확히 구분돼야 함 | 사용자 입장에서는 `돌아가기 / 다음 목표로 바로 시작` 화면이 top-level 분기처럼 읽히기 쉬움 | `src/widgets/space-focus-hud/ui/GoalCompleteSheet.tsx`, `src/shared/i18n/messages/space.ts` | open | choice view와 next view의 제목, 구조, motion, context label을 더 분리하는 기획 필요 | -| ALN-007 | P2 | Weekly Review discoverability | review는 `/app`의 primary ritual이어야 함 | 데이터 gate와 currentSession 조건에 따라 사용자에게 “아예 없는 기능”처럼 느껴질 수 있음 | `src/widgets/focus-dashboard/ui/FocusDashboardWidget.tsx`, `docs/15_app_stats_entry_flow_spec.md` | open | low-data 상태와 resume 상태를 포함한 discoverability 정책 재정의 | -| ALN-008 | P1 | `잠시 비우기`와 `Break`의 제품 의미 | break는 reward/reset, pause는 recovery로 분리돼야 함 | 현재는 카피와 트레이는 개선됐지만, 제품 차원의 최종 정의와 시각 분리까지 완전히 닫히진 않았음 | `docs/10_refocus_system_spec.md`, `docs/11_away_return_recovery_spec.md`, `src/widgets/space-focus-hud/ui/GoalCompleteSheet.tsx`, `src/widgets/space-focus-hud/ui/ReturnPrompt.tsx` | open | `잠시 비우기`, active break, return(break)를 하나의 최종 state model로 재정의 | -| ALN-009 | P3 | Spec / current-state drift | 다음 세션 문서가 실제 구현과 맞아야 함 | intent card, goal complete, review entry 관련 오래된 표현이 여러 spec에 남아 있었음 | `docs/10_refocus_system_spec.md`, `docs/13_space_intent_card_collapsed_expanded_spec.md`, `docs/90_current_state.md`, `docs/session_brief.md`, `../../current_context.md` | fixed-awaiting-browser | 이후 라운드부터는 fix와 문서 갱신을 같은 커밋에서 닫는지 점검 | -| ALN-010 | P1 | paused session 재진입 정책 | running은 바로 `/space`, paused는 `/app` resume gate, explicit continue 이후에는 자동 resume이어야 함 | Session Routing Contract, paused resume gate, auto-resume handoff, takeover flow까지 구현됐다. 남은 것은 browser QA와 takeover wording polish이다 | `docs/18_paused_session_reentry_spec.md`, `src/widgets/focus-dashboard/ui/FocusDashboardWidget.tsx`, `src/widgets/space-workspace/ui/SpaceWorkspaceWidget.tsx`, `src/features/focus-session/model/useFocusSessionEngine.ts` | fixed-awaiting-browser | paused resume / refocus / takeover 3경로를 브라우저에서 확인 | +| ALN-007 | P2 | Weekly Review discoverability | review는 `/app`의 primary ritual이어야 함 | 데이터 gate와 currentSession 조건에 따라 사용자에게 “아예 없는 기능”처럼 느껴질 수 있음 | `src/widgets/focus-dashboard/ui/FocusDashboardWidget.tsx`, `docs/screens/app/15_app_stats_entry_flow_spec.md` | open | low-data 상태와 resume 상태를 포함한 discoverability 정책 재정의 | +| ALN-008 | P1 | `잠시 비우기`와 `Break`의 제품 의미 | break는 reward/reset, pause는 recovery로 분리돼야 함 | 현재는 카피와 트레이는 개선됐지만, 제품 차원의 최종 정의와 시각 분리까지 완전히 닫히진 않았음 | `docs/screens/space/10_refocus_system_spec.md`, `docs/screens/space/11_away_return_recovery_spec.md`, `src/widgets/space-focus-hud/ui/GoalCompleteSheet.tsx`, `src/widgets/space-focus-hud/ui/ReturnPrompt.tsx` | open | `잠시 비우기`, active break, return(break)를 하나의 최종 state model로 재정의 | +| ALN-009 | P3 | Spec / current-state drift | 다음 세션 문서가 실제 구현과 맞아야 함 | intent card, goal complete, review entry 관련 오래된 표현이 여러 spec에 남아 있었음 | `docs/screens/space/10_refocus_system_spec.md`, `docs/screens/space/13_space_intent_card_collapsed_expanded_spec.md`, `docs/90_current_state.md`, `docs/session_brief.md`, `../../current_context.md` | fixed-awaiting-browser | 이후 라운드부터는 fix와 문서 갱신을 같은 커밋에서 닫는지 점검 | +| ALN-010 | P1 | paused session 재진입 정책 | running은 바로 `/space`, paused는 `/app` resume gate, explicit continue 이후에는 자동 resume이어야 함 | Session Routing Contract, paused resume gate, auto-resume handoff, takeover flow까지 구현됐다. 남은 것은 browser QA와 takeover wording polish이다 | `docs/screens/app/18_paused_session_reentry_spec.md`, `src/widgets/focus-dashboard/ui/FocusDashboardWidget.tsx`, `src/widgets/space-workspace/ui/SpaceWorkspaceWidget.tsx`, `src/features/focus-session/model/useFocusSessionEngine.ts` | fixed-awaiting-browser | paused resume / refocus / takeover 3경로를 브라우저에서 확인 | --- diff --git a/docs/08_app_reframe_strategy.md b/docs/screens/app/08_app_reframe_strategy.md similarity index 100% rename from docs/08_app_reframe_strategy.md rename to docs/screens/app/08_app_reframe_strategy.md diff --git a/docs/15_app_stats_entry_flow_spec.md b/docs/screens/app/15_app_stats_entry_flow_spec.md similarity index 98% rename from docs/15_app_stats_entry_flow_spec.md rename to docs/screens/app/15_app_stats_entry_flow_spec.md index 5ced828..b70ad9b 100644 --- a/docs/15_app_stats_entry_flow_spec.md +++ b/docs/screens/app/15_app_stats_entry_flow_spec.md @@ -10,9 +10,9 @@ Last Updated: 2026-03-15 관련 문서: -- `19_app_atmosphere_entry_spec.md` -- `12_core_loop_execution_roadmap.md` -- `14_weekly_review_reframe_spec.md` +- `./19_app_atmosphere_entry_spec.md` +- `../../product/12_core_loop_execution_roadmap.md` +- `../stats/14_weekly_review_reframe_spec.md` - `../../product_principles.md` - `../../current_context.md` diff --git a/docs/18_paused_session_reentry_spec.md b/docs/screens/app/18_paused_session_reentry_spec.md similarity index 97% rename from docs/18_paused_session_reentry_spec.md rename to docs/screens/app/18_paused_session_reentry_spec.md index 03869b2..eeff9dd 100644 --- a/docs/18_paused_session_reentry_spec.md +++ b/docs/screens/app/18_paused_session_reentry_spec.md @@ -12,12 +12,12 @@ Last Updated: 2026-03-15 관련 문서: -- `19_app_atmosphere_entry_spec.md` -- `10_refocus_system_spec.md` -- `11_away_return_recovery_spec.md` -- `15_app_stats_entry_flow_spec.md` -- `16_product_alignment_audit_plan.md` -- `17_product_alignment_findings.md` +- `./19_app_atmosphere_entry_spec.md` +- `../space/10_refocus_system_spec.md` +- `../space/11_away_return_recovery_spec.md` +- `./15_app_stats_entry_flow_spec.md` +- `../../product/16_product_alignment_audit_plan.md` +- `../../product/17_product_alignment_findings.md` - `../../product_principles.md` - `../../current_context.md` diff --git a/docs/19_app_atmosphere_entry_spec.md b/docs/screens/app/19_app_atmosphere_entry_spec.md similarity index 98% rename from docs/19_app_atmosphere_entry_spec.md rename to docs/screens/app/19_app_atmosphere_entry_spec.md index 5fc0202..35426ec 100644 --- a/docs/19_app_atmosphere_entry_spec.md +++ b/docs/screens/app/19_app_atmosphere_entry_spec.md @@ -8,9 +8,9 @@ Last Updated: 2026-03-16 - `../../product_principles.md` - `../../current_context.md` -- `14_weekly_review_reframe_spec.md` -- `15_app_stats_entry_flow_spec.md` -- `18_paused_session_reentry_spec.md` +- `../stats/14_weekly_review_reframe_spec.md` +- `./15_app_stats_entry_flow_spec.md` +- `./18_paused_session_reentry_spec.md` --- diff --git a/docs/10_refocus_system_spec.md b/docs/screens/space/10_refocus_system_spec.md similarity index 99% rename from docs/10_refocus_system_spec.md rename to docs/screens/space/10_refocus_system_spec.md index 60dffb4..3fd14e8 100644 --- a/docs/10_refocus_system_spec.md +++ b/docs/screens/space/10_refocus_system_spec.md @@ -8,7 +8,7 @@ Last Updated: 2026-03-15 - `../../product_principles.md` - `../../current_context.md` -- `19_app_atmosphere_entry_spec.md` +- `../app/19_app_atmosphere_entry_spec.md` --- diff --git a/docs/11_away_return_recovery_spec.md b/docs/screens/space/11_away_return_recovery_spec.md similarity index 99% rename from docs/11_away_return_recovery_spec.md rename to docs/screens/space/11_away_return_recovery_spec.md index 79ae892..bda007c 100644 --- a/docs/11_away_return_recovery_spec.md +++ b/docs/screens/space/11_away_return_recovery_spec.md @@ -8,7 +8,7 @@ Last Updated: 2026-03-14 - `../../product_principles.md` - `../../current_context.md` -- `10_refocus_system_spec.md` +- `./10_refocus_system_spec.md` --- diff --git a/docs/13_space_intent_card_collapsed_expanded_spec.md b/docs/screens/space/13_space_intent_card_collapsed_expanded_spec.md similarity index 98% rename from docs/13_space_intent_card_collapsed_expanded_spec.md rename to docs/screens/space/13_space_intent_card_collapsed_expanded_spec.md index 0f5aa71..25df14d 100644 --- a/docs/13_space_intent_card_collapsed_expanded_spec.md +++ b/docs/screens/space/13_space_intent_card_collapsed_expanded_spec.md @@ -12,9 +12,9 @@ Last Updated: 2026-03-15 관련 문서: -- `10_refocus_system_spec.md` -- `11_away_return_recovery_spec.md` -- `12_core_loop_execution_roadmap.md` +- `./10_refocus_system_spec.md` +- `./11_away_return_recovery_spec.md` +- `../../product/12_core_loop_execution_roadmap.md` - `../../current_context.md` --- diff --git a/docs/14_weekly_review_reframe_spec.md b/docs/screens/stats/14_weekly_review_reframe_spec.md similarity index 98% rename from docs/14_weekly_review_reframe_spec.md rename to docs/screens/stats/14_weekly_review_reframe_spec.md index 60b74c6..919f831 100644 --- a/docs/14_weekly_review_reframe_spec.md +++ b/docs/screens/stats/14_weekly_review_reframe_spec.md @@ -7,11 +7,11 @@ Last Updated: 2026-03-14 관련 문서: -- `19_app_atmosphere_entry_spec.md` -- `10_refocus_system_spec.md` -- `11_away_return_recovery_spec.md` -- `12_core_loop_execution_roadmap.md` -- `13_space_intent_card_collapsed_expanded_spec.md` +- `../app/19_app_atmosphere_entry_spec.md` +- `../space/10_refocus_system_spec.md` +- `../space/11_away_return_recovery_spec.md` +- `../../product/12_core_loop_execution_roadmap.md` +- `../space/13_space_intent_card_collapsed_expanded_spec.md` - `../../product_principles.md` - `../../current_context.md` diff --git a/docs/session_brief.md b/docs/session_brief.md index 8054976..4ccee6e 100644 --- a/docs/session_brief.md +++ b/docs/session_brief.md @@ -133,8 +133,8 @@ Last Updated: 2026-03-15 - `이어서 몰입하기`는 `/space?resume=continue`로 들어간 뒤 자동 resume된다. - `한 조각 다시 잡기`는 `/space?resume=refocus`로 들어간 뒤 refocus tray를 바로 연다. - `Product Alignment Audit` 운영을 시작했다. - - `16_product_alignment_audit_plan.md`를 기준 문서로 추가했다. - - `17_product_alignment_findings.md`에 core loop의 P1/P2 mismatch를 수집하기 시작했다. + - `docs/product/16_product_alignment_audit_plan.md`를 기준 문서로 추가했다. + - `docs/product/17_product_alignment_findings.md`에 core loop의 P1/P2 mismatch를 수집하기 시작했다. - 다음 라운드는 route-flow matrix와 state contract matrix를 만드는 static audit이다. - 유료화 포지셔닝을 `Calm Session OS`로 재정의했다. - Free는 기본 집중 시작, Pro는 더 잘 이어가기라는 메시지로 정리했다. @@ -197,7 +197,7 @@ Last Updated: 2026-03-15 - 저장된 목표가 있고 쿼리 오버라이드가 없으면 `지난 한 조각 이어서`를 1회 노출 - `이어서 시작`은 즉시 Focus 진입, `새로 시작`은 목표를 비운 새 세션으로 전환 - 세션 복구용 문서/템플릿/스크립트가 준비되어 있다. -- `workFlow.md`는 토큰 절약 모드를 사용한다. +- `ops/workFlow.md`는 토큰 절약 모드를 사용한다. - `/space` 하단 사운드 바를 제거하고 오른쪽 `🎧 Sound` 시트로 이동했다. - `/space` 헤더 프레임을 축소하고 HUD를 하단 safe-area 기준으로 더 밀착시켰다. - 상단 우측 나가기 액션을 클릭형에서 1초 롱프레스형으로 전환했다. @@ -284,5 +284,5 @@ Last Updated: 2026-03-15 ## 상세 원문 위치 - 장문 상세 상태: `docs/90_current_state.md` -- 구조 규칙 상세: `docs/02_arch_fsd_rules.md` -- 커밋 규칙 상세: `docs/06_commit_convention.md` +- 구조 규칙 상세: `docs/foundation/02_arch_fsd_rules.md` +- 커밋 규칙 상세: `docs/foundation/06_commit_convention.md` diff --git a/docs/skills/continue.md b/docs/skills/continue.md index 203fd20..56e5c73 100644 --- a/docs/skills/continue.md +++ b/docs/skills/continue.md @@ -3,14 +3,14 @@ [Step 0: 컨텍스트 로드] 아래 파일을 먼저 읽고, 핵심 규칙/현재 상태/다음 작업을 10줄 내로 요약해라. -- docs/00_project_brief.md -- docs/01_ui_guidelines.md -- docs/02_arch_fsd_rules.md -- docs/03_routes_map.md -- docs/04_coding_rules.md -- docs/05_handoff_checklist.md -- docs/06_commit_convention.md -- docs/07_session_recovery.md +- docs/foundation/00_project_brief.md +- docs/foundation/01_ui_guidelines.md +- docs/foundation/02_arch_fsd_rules.md +- docs/foundation/03_routes_map.md +- docs/foundation/04_coding_rules.md +- docs/ops/05_handoff_checklist.md +- docs/foundation/06_commit_convention.md +- docs/ops/07_session_recovery.md - docs/90_current_state.md [Step 1: 현재 상태 점검] @@ -30,5 +30,5 @@ docs/90_current_state.md의 “NEXT” 섹션에 적힌 우선순위 1번 작업 - docs/90_current_state.md를 업데이트해라: - DONE / NEXT / RISKS / CHANGED FILES -- 필요하면 docs/01_ui_guidelines.md 또는 docs/02_arch_fsd_rules.md에 결정사항을 추가해라 +- 필요하면 docs/foundation/01_ui_guidelines.md 또는 docs/foundation/02_arch_fsd_rules.md에 결정사항을 추가해라 - 변경사항이 합리적인 단위로 커밋될 수 있도록 커밋 메시지 초안을 제안해라 diff --git a/docs/work.md b/docs/work.md index 738d4ef..d5ae741 100644 --- a/docs/work.md +++ b/docs/work.md @@ -20,7 +20,7 @@ - 제목: `/app` Atmosphere Entry Shell - 목적: - - `19_app_atmosphere_entry_spec.md` 기준으로 `/app` no-session 상태를 `goal + duration + atmosphere` 중심의 premium entry screen으로 재설계한다. + - `docs/screens/app/19_app_atmosphere_entry_spec.md` 기준으로 `/app` no-session 상태를 `goal + duration + atmosphere` 중심의 premium entry screen으로 재설계한다. - entry에서 scene/sound의 감각 품질을 다시 살리되 planner/dashboard 톤으로 흐르지 않게 만든다. - 변경 범위: - no-session `/app` shell