kiwi/app/services/meal_plan
pyr0ball 482666907b fix(meal-planner): validate meal_type path param, enforce store whitelist safety, add week_start date validation, make PrepTask frozen
- upsert_slot: raise 422 immediately if meal_type not in VALID_MEAL_TYPES
- update_prep_task: assert whitelist safety contract after dict comprehension
- CreatePlanRequest: week_start typed as date with must_be_monday validator; str() cast at call site
- PrepTask: frozen=True; build_prep_tasks rewired to use (priority, kwargs) tuples so frozen instances are built with correct sequence_order in one pass (no post-construction mutation)
- Move deferred import json to file-level in meal_plans.py
- Fix test dates: "2026-04-14" was a Tuesday; updated request bodies to "2026-04-13" (Monday)
2026-04-12 13:51:50 -07:00
..
__init__.py feat(services): add shopping_list service with pantry diff 2026-04-12 13:14:08 -07:00
affiliates.py feat(affiliates): register Kiwi grocery retailer programs at startup 2026-04-12 13:15:28 -07:00
planner.py feat(services): add planner.py orchestration helpers 2026-04-12 13:44:27 -07:00
prep_scheduler.py fix(meal-planner): validate meal_type path param, enforce store whitelist safety, add week_start date validation, make PrepTask frozen 2026-04-12 13:51:50 -07:00
shopping_list.py feat(services): add shopping_list service with pantry diff 2026-04-12 13:14:08 -07:00