- monthlyVisitStatsProvider: visitRecordsProvider watch 추가
- monthlyCategoryVisitStatsProvider: visitRecordsProvider watch로 변경
- 방문 기록 추가/확인 시 통계가 실시간으로 갱신됨
- _generateCandidate(): currentLocationProvider → currentLocationWithFallbackProvider
- EnhancedRecommendationNotifier: 동일하게 수정
- 백그라운드 복귀 시 캐시된 위치 대신 실시간 위치 사용
## 성능 최적화
### main.dart
- 앱 초기화 병렬 처리 (Future.wait 활용)
- 광고 SDK, Hive 초기화 동시 실행
- Hive Box 오픈 병렬 처리
- 코드 구조화 (_initializeHive, _initializeNotifications)
### visit_provider.dart
- allLastVisitDatesProvider 추가
- 리스트 화면에서 N+1 쿼리 방지
- 모든 맛집의 마지막 방문일 일괄 조회
## UI 개선
### 각 화면 리팩토링
- AppDimensions 상수 적용
- 스켈레톤 로더 적용
- 코드 정리 및 일관성 개선
- 기록/통계 탭에 디버그 토글 배너 추가 및 테스트 데이터 주입 로직 상태화\n- 리스트 공유 화면에 디버그 프리뷰 토글, 광고 관문, 디버그 전송 흐름 반영\n- 모의 전면 광고는 대기 시간 종료 시 자동 완료되도록 변경\n- AGENTS.md에 코멘트는 한국어로 작성 규칙 명시\n\n테스트: flutter analyze; flutter test
- add AppLogger and replace scattered print logging\n- implement ad-gated recommendation flow with reminder handling and calendar link\n- complete Bluetooth share pipeline with ad gate and merge\n- integrate KMA weather API with caching and dart-define decoding\n- add NaverUrlProcessor refactor and restore restaurant repository tests
1. placeId 기반 중복 체크 제거
- 이전 대화에서 명확히 한 대로 placeId는 매칭에 사용하지 않음
2. 주소 기반 매칭 개선
- 주소가 있을 때만 주소 기반 중복 체크 수행
3. 위치 기반 매칭 추가
- 50m 이내 동일한 이름의 맛집 중복 체크 추가
4. 검색 결과 선택 로직 개선
- 주소가 없을 때 가장 가까운 거리의 업체 선택
5. 카테고리 필터 버그 수정
- 카테고리 표시명과 실제 값 불일치 문제 해결
- 부분 일치 및 정규화된 비교 지원
6. 빈 상태 메시지 개선
- 필터링 중일 때 적절한 안내 메시지 표시
- 필터 초기화 버튼 추가
🤖 Generated with Claude Code
Co-Authored-By: Claude <noreply@anthropic.com>
LunchPick(오늘 뭐 먹Z?) Flutter 앱의 초기 구현입니다.
주요 기능:
- 네이버 지도 연동 맛집 추가
- 랜덤 메뉴 추천 시스템
- 날씨 기반 거리 조정
- 방문 기록 관리
- Bluetooth 맛집 공유
- 다크모드 지원
기술 스택:
- Flutter 3.8.1+
- Riverpod 상태 관리
- Hive 로컬 DB
- Clean Architecture
🤖 Generated with Claude Code
Co-Authored-By: Claude <noreply@anthropic.com>