Task 9 of the slice plan. Computes the data behind the Inbox ContinuityBadge and recovery toast (Strategy §5): - KST Mon-Sun grouping via toKstDateKey/kstMondayOf helpers (UTC + 9h shift, then bucket to local Monday). - weekCount + weekTarget=7 + consecutiveCompleteWeeks (walk backward from current week, or previous if current incomplete, counting only weeks with >=7 notes). - showRecoveryToast=true when the latest note lands on today (KST) and the prior note is at least 7 days earlier — this is the "흐름을 다시 이어갑니다" trigger. - now() injected for deterministic tests. Verification: `npx vitest run tests/unit/ContinuityService.test.ts` 6 passed. All 24 unit tests across migrations / NoteRepository / MediaStore / ContinuityService green. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
3.4 KiB
3.4 KiB