diet-guard/app/test/services
Krzysztof kuhy Rudnicki f83938bfe3 app: minute-of-day slots (phase 2 of 3: every app consumer)
- FoodEntry.slot -> slotMinute: read via entrySlotMinute, written via
  slotFields (whole-hour stays byte-identical, else slot_min), kept by
  copyWithDeleted and the edit screen, so the phone never republishes a
  stripped copy of a PC entry. Out-of-range peer values echo, never throw.
- Satisfaction is nearest-slot snapping (satisfiedSlots) everywhere:
  loggedSlotsToday, due check, kuchnia occupancy, future-day logged set
  (that day's schedule), slot selector. Schedule edits no longer un-log.
- Future pre-log builds DateTime from slot ~/ 60, slot % 60.
- Schedule history + sync go through scheduleToWire/scheduleFromWire.
- Notifications: ids are slot minutes; syncToSlots cancels whatever the
  platform reports active (getActiveNotifications, reminder channel) that
  is not due, covering legacy hour ids; full 0..1439 sweep only if the
  lookup throws.
- Settings: 15-minute dropdowns + "Custom..." (24h showTimePicker), off-grid
  values always selectable, counts capped by grid capacity; editor moved
  to widgets/meal_schedule_editor.dart + meal_time_dropdown.dart.

Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_015npsYVB2PdtWkG7MPAi4tn
2026-10-10 19:55:26 +02:00
..
activity_kcal_share_test.dart Body tab: weight/body-fat logs, BMI, ideal weight, goal-based kcal target, workouts + Health Connect steps, week planner 2026-09-28 09:03:03 +02:00
app_settings_service_sync_test.dart Split the remaining seven Dart test files 2026-08-15 20:53:55 +02:00
app_settings_service_test.dart Split the remaining seven Dart test files 2026-08-15 20:53:55 +02:00
average_service_periods_test.dart Split the remaining seven Dart test files 2026-08-15 20:53:55 +02:00
average_service_test.dart Split the remaining seven Dart test files 2026-08-15 20:53:55 +02:00
background_sync_service_test.dart Body tab: weight/body-fat logs, BMI, ideal weight, goal-based kcal target, workouts + Health Connect steps, week planner 2026-09-28 09:03:03 +02:00
body_parity_test.dart Body tab: weight/body-fat logs, BMI, ideal weight, goal-based kcal target, workouts + Health Connect steps, week planner 2026-09-28 09:03:03 +02:00
body_prefs_test.dart Body tab: weight/body-fat logs, BMI, ideal weight, goal-based kcal target, workouts + Health Connect steps, week planner 2026-09-28 09:03:03 +02:00
body_service_test.dart Body tab: weight/body-fat logs, BMI, ideal weight, goal-based kcal target, workouts + Health Connect steps, week planner 2026-09-28 09:03:03 +02:00
body_test_support.dart Body tab: weight/body-fat logs, BMI, ideal weight, goal-based kcal target, workouts + Health Connect steps, week planner 2026-09-28 09:03:03 +02:00
budget_history_service_test.dart Remove unused features; fix reminder false alarms; share all state 2026-07-26 16:39:52 +02:00
budget_schedule_test.dart Remove unused features; fix reminder false alarms; share all state 2026-07-26 16:39:52 +02:00
day_status_service_streaks_test.dart Split the remaining seven Dart test files 2026-08-15 20:53:55 +02:00
day_status_service_test.dart Split the remaining seven Dart test files 2026-08-15 20:53:55 +02:00
due_slot_check_test.dart app: minute-of-day slots (phase 2 of 3: every app consumer) 2026-10-10 19:55:26 +02:00
foodbank_service_manual_test.dart Split six Dart test files; share the sync fixtures via a support sibling 2026-08-15 20:49:54 +02:00
foodbank_service_test.dart Split six Dart test files; share the sync fixtures via a support sibling 2026-08-15 20:49:54 +02:00
fuzzy_test.dart Add food bank, edit-entry, and app settings screens; history redesign 2026-07-04 05:18:32 +02:00
health_steps_test.dart Body tab: weight/body-fat logs, BMI, ideal weight, goal-based kcal target, workouts + Health Connect steps, week planner 2026-09-28 09:03:03 +02:00
indexeddb_stores_test.dart Remove unused features; fix reminder false alarms; share all state 2026-07-26 16:39:52 +02:00
kuchnia_bank_guard_test.dart feat: let the phone fetch and bank the catering delivery itself 2026-08-23 08:30:21 +02:00
kuchnia_client_test.dart kuchnia: walk every active order, not just the first 2026-10-10 12:32:17 +02:00
kuchnia_credential_service_test.dart feat: carry the catering credential to the phone 2026-08-23 08:25:27 +02:00
kuchnia_import_test.dart feat: let the phone fetch and bank the catering delivery itself 2026-08-23 08:30:21 +02:00
kuchnia_orders_test.dart kuchnia: walk every active order, not just the first 2026-10-10 12:32:17 +02:00
kuchnia_queue_refresh_test.dart kuchnia: walk every active order, not just the first 2026-10-10 12:32:17 +02:00
kuchnia_queue_test.dart feat: offer delivered dishes to the log form, one tap each 2026-08-23 09:07:17 +02:00
log_storage_service_edit_test.dart Split six Dart test files; share the sync fixtures via a support sibling 2026-08-15 20:49:54 +02:00
log_storage_service_test.dart app: minute-of-day slots (phase 2 of 3: every app consumer) 2026-10-10 19:55:26 +02:00
meal_schedule_history_test.dart app: minute-of-day slots (phase 2 of 3: every app consumer) 2026-10-10 19:55:26 +02:00
meal_schedule_service_test.dart app: minute-of-day slots (phase 2 of 3: every app consumer) 2026-10-10 19:55:26 +02:00
notification_service_test.dart app: minute-of-day slots (phase 2 of 3: every app consumer) 2026-10-10 19:55:26 +02:00
schedule_change_satisfaction_test.dart app: minute-of-day slots (phase 2 of 3: every app consumer) 2026-10-10 19:55:26 +02:00
sync_body_test.dart Body tab: weight/body-fat logs, BMI, ideal weight, goal-based kcal target, workouts + Health Connect steps, week planner 2026-09-28 09:03:03 +02:00
sync_device_id_test.dart Push under a persisted per-install uuid, not a fixed role id 2026-08-09 17:18:42 +02:00
sync_health_test.dart Make the phone publish on every tick, and fail closed on Firebase errors 2026-08-10 14:35:37 +02:00
sync_merge_banks_test.dart Split six Dart test files; share the sync fixtures via a support sibling 2026-08-15 20:49:54 +02:00
sync_merge_body_test.dart Body tab: weight/body-fat logs, BMI, ideal weight, goal-based kcal target, workouts + Health Connect steps, week planner 2026-09-28 09:03:03 +02:00
sync_merge_budget_test.dart Split six Dart test files; share the sync fixtures via a support sibling 2026-08-15 20:49:54 +02:00
sync_merge_curated_test.dart Split six Dart test files; share the sync fixtures via a support sibling 2026-08-15 20:49:54 +02:00
sync_merge_schedule_test.dart app: minute-of-day slots (phase 2 of 3: every app consumer) 2026-10-10 19:55:26 +02:00
sync_merge_test.dart Split six Dart test files; share the sync fixtures via a support sibling 2026-08-15 20:49:54 +02:00
sync_merge_wire_test.dart Split six Dart test files; share the sync fixtures via a support sibling 2026-08-15 20:49:54 +02:00
sync_service_budget_test.dart Split six Dart test files; share the sync fixtures via a support sibling 2026-08-15 20:49:54 +02:00
sync_service_test_support.dart Split six Dart test files; share the sync fixtures via a support sibling 2026-08-15 20:49:54 +02:00
sync_service_test.dart Split six Dart test files; share the sync fixtures via a support sibling 2026-08-15 20:49:54 +02:00
sync_settings_test.dart Point sync at the consolidated utils/syncs monorepos 2026-07-10 14:12:16 +02:00
sync_state_factory_test.dart Split the last four Dart lib files; file-length gate now reports zero 2026-08-15 21:07:24 +02:00
wake_alarm_weights_test.dart Body tab: weight/body-fat logs, BMI, ideal weight, goal-based kcal target, workouts + Health Connect steps, week planner 2026-09-28 09:03:03 +02:00