# Feature Map This file maps product areas to code ownership and maintenance notes. ## App Shell Canonical files: - `lib/main.dart` - `lib/app/relationship_saver_app.dart` - `lib/app/presentation/app_shell.dart` - `lib/app/navigation/app_destination.dart` Responsibilities: - app initialization - auth gate - global listeners for share intake, notifications, and digest behavior - responsive navigation ## People Canonical files: - `lib/features/people/domain/person_models.dart` - `lib/features/people/presentation/people_view.dart` - `lib/features/people/presentation/people_view_detail.dart` - `lib/features/people/presentation/people_view_dialogs.dart` - `lib/features/people/presentation/people_view_list.dart` - `lib/app/data/relationship_repository_people.dart` Use this slice for profile CRUD, duplicate merge, facts/dates display, and profile-centered history. ## Share Intake Canonical files: - `lib/features/share_intake/domain/share_models.dart` - `lib/features/share_intake/domain/share_payload_parser.dart` - `lib/features/share_intake/domain/shared_message_datetime_extractor.dart` - `lib/features/share_intake/presentation/incoming_share_listener.dart` - `lib/features/share_intake/presentation/share_capture_review_sheet.dart` - `lib/features/share_intake/presentation/share_inbox_view.dart` - `lib/app/data/relationship_repository_share.dart` - `ios/Share Extension/` - `ios/Save Action/` Use this slice for incoming shared text, URLs, chat snippets, inbox triage, source matching, and structured capture drafts. ## AI Digest Canonical files: - `lib/core/llm/` - `lib/features/ai_digest/application/` - `lib/features/ai_digest/data/` - `lib/features/ai_digest/domain/ai_digest_models.dart` - `lib/features/ai_digest/presentation/ai_digest_review_view.dart` - `lib/app/data/relationship_repository_ai_digest.dart` Use this slice for private weekly suggestions, LLM setup, prompt payload construction, response parsing, diagnostics, and review workflows. ## Dashboard And Signals Canonical files: - `lib/features/dashboard/domain/dashboard_models.dart` - `lib/features/dashboard/presentation/dashboard_view.dart` - `lib/features/signals/domain/signals_feed_synthesizer.dart` - `lib/features/signals/presentation/signals_view.dart` Dashboard is a dense overview surface. Signals are derived local prompts and should not become another persistence source unless there is a clear product need. ## Moments, Ideas, Reminders Canonical files: - `lib/features/moments/domain/moment_models.dart` - `lib/features/ideas/domain/idea_models.dart` - `lib/features/reminders/domain/reminder_models.dart` - `lib/features/reminders/application/reminder_scheduler*.dart` - `lib/app/data/relationship_repository_activity.dart` Reminders are reconciled after local state writes. Scheduler failures should not block local data persistence. ## Sync Canonical files: - `lib/features/sync/data/sync_queue_repository.dart` - `lib/features/sync/application/sync_coordinator.dart` - `lib/features/sync/application/sync_auto_trigger_controller.dart` - `lib/features/sync/application/sync_background_runner.dart` - `lib/features/sync/presentation/sync_view.dart` - `lib/integrations/backend/` Sync is scaffolding, diagnostics, and repair flow. Do not assume every local entity maps to the backend contract yet. ## Settings Canonical files: - `lib/features/settings/presentation/settings_view.dart` Settings is the main debug and configuration surface. It includes: - gateway flags - LLM configuration - digest toggles - manual digest run - AI review entry - notification permission action - share simulation - share diagnostics Keep debug tools practical and explicit. Avoid hidden state changes.