diet-guard/app/lib
Krzysztof kuhy Rudnicki 372e8a19f6
Some checks are pending
pre-commit / pre-commit (push) Waiting to run
Tests / test (3.10) (push) Waiting to run
Tests / test (3.11) (push) Waiting to run
Tests / test (3.12) (push) Waiting to run
release-apk / release (APK) (push) Waiting to run
Remove the Snack chip from the phone's slot selector
The chip was the only control that logged a meal against no slot at all
(`slot: null`). Removing it leaves the row with just the four hour chips,
so every logged meal now satisfies a real slot.

Storage keeps its null-slot support on purpose. Entries already on disk
and arriving over sync carry no `slot` key, and the `slot != null` filters
in log_storage_service.loggedSlotsToday / _state.logged_slots_today are
what stop them from retroactively satisfying meal slots -- so both are
documented as load-bearing rather than deleted as dead code.

Also corrects the MCP tool's docstring, which claimed its slot argument
"may be None early in the day"; it falls back to slot_for_log, which
clamps to a real hour and never returns None.

Adds the widget test the chip row never had -- being untested is why the
chip read as unused.

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01MPheLM86xUN9TGf34Ygtfz
2026-08-14 22:31:09 +02:00
..
desktop Make the sync-account route testable, and cover every branch 2026-08-09 21:49:28 +02:00
models Remove the Snack chip from the phone's slot selector 2026-08-14 22:31:09 +02:00
screens Drop five redundant unawaited() wrappers around Navigator.push 2026-08-14 16:17:18 +02:00
services Add Google sign-in support for the Firebase sync account 2026-08-12 23:36:10 +02:00
ui Make the meal gate usable without a pointer on a 1366x768 screen 2026-07-30 16:21:27 +02:00
widgets Remove the Snack chip from the phone's slot selector 2026-08-14 22:31:09 +02:00
main.dart Push under a persisted per-install uuid, not a fixed role id 2026-08-09 17:18:42 +02:00