Files
HouseHoldKeaper/.planning/phases/04-notifications/04-03-PLAN.md

3.9 KiB

phase, plan, type, wave, depends_on, files_modified, autonomous, requirements, must_haves
phase plan type wave depends_on files_modified autonomous requirements must_haves
04-notifications 03 execute 3
04-02
true
NOTF-01
NOTF-02
truths artifacts key_links
dart analyze --fatal-infos passes with zero issues
All tests pass (72 existing + new notification tests)
NOTF-01 artifacts exist: NotificationService, DAO queries, AndroidManifest permissions, timezone init
NOTF-02 artifacts exist: NotificationSettingsNotifier, Settings UI section, toggle, time picker
Phase 4 requirements are fully addressed
Verify all Phase 4 notification work is complete, tests pass, and code is clean before marking the phase done.

Purpose: Quality gate ensuring NOTF-01 and NOTF-02 are fully implemented before phase completion. Output: Verification confirmation with test counts and analysis results.

<execution_context> @/home/jlmak/.claude/get-shit-done/workflows/execute-plan.md @/home/jlmak/.claude/get-shit-done/templates/summary.md </execution_context>

@.planning/PROJECT.md @.planning/ROADMAP.md @.planning/STATE.md @.planning/phases/04-notifications/04-CONTEXT.md @.planning/phases/04-notifications/04-01-SUMMARY.md @.planning/phases/04-notifications/04-02-SUMMARY.md Task 1: Run full verification suite 1. Run `dart analyze --fatal-infos` — must produce zero issues. 2. Run `flutter test` — must produce zero failures. Record total test count. 3. Verify NOTF-01 requirements by checking file existence and content: - `lib/core/notifications/notification_service.dart` exists with `scheduleDailyNotification`, `requestPermission`, `cancelAll` - `lib/features/home/data/daily_plan_dao.dart` has `getOverdueAndTodayTaskCount` and `getOverdueTaskCount` - `android/app/src/main/AndroidManifest.xml` has `POST_NOTIFICATIONS`, `RECEIVE_BOOT_COMPLETED`, `ScheduledNotificationBootReceiver` with `exported="true"` - `android/app/build.gradle.kts` has `isCoreLibraryDesugaringEnabled = true` and `compileSdk = 35` - `lib/main.dart` has timezone initialization and `NotificationService().initialize()` 4. Verify NOTF-02 requirements by checking: - `lib/core/notifications/notification_settings_notifier.dart` exists with `setEnabled`, `setTime` - `lib/features/settings/presentation/settings_screen.dart` has `SwitchListTile` and `AnimatedSize` for notification section - `lib/l10n/app_de.arb` has notification-related keys (`settingsSectionNotifications`, `notificationsEnabledLabel`, etc.) 5. Verify notification tap navigation: - `lib/core/notifications/notification_service.dart` `_onTap` references `router.go('/')` 6. If any issues found, fix them. If all checks pass, record results. cd /home/jlmak/Projects/jlmak/HouseHoldKeaper && dart analyze --fatal-infos && flutter test - dart analyze: zero issues - flutter test: all tests pass (72 existing + new notification/settings tests) - NOTF-01: NotificationService, DAO queries, Android config, timezone init all confirmed present and functional - NOTF-02: NotificationSettingsNotifier, Settings UI section, toggle, time picker all confirmed present and functional - Phase 4 verification gate passed - `dart analyze --fatal-infos` — zero issues - `flutter test` — all tests pass - All NOTF-01 and NOTF-02 artifacts exist and are correctly wired

<success_criteria>

  • Phase 4 code is clean (no analysis warnings)
  • All tests pass
  • Both requirements (NOTF-01, NOTF-02) have their artifacts present and correctly implemented </success_criteria>
After completion, create `.planning/phases/04-notifications/04-03-SUMMARY.md`