Found by the planner while briefing #7. In frontend/src/components/MealList.jsx saveEdit, the per-component update only writes base_* and portion_size, so a component replaced via handleReplaceFood (new name / custom_food_id) keeps its OLD name and link after Save Changes.
Fix: include component_name, portion_unit and custom_food_id in the component update payload; add a test that replaces a component then saves and asserts the update payload carries the new name. Land after #7 (same file).
Found by the planner while briefing #7. In frontend/src/components/MealList.jsx saveEdit, the per-component update only writes base_* and portion_size, so a component replaced via handleReplaceFood (new name / custom_food_id) keeps its OLD name and link after Save Changes.
Fix: include component_name, portion_unit and custom_food_id in the component update payload; add a test that replaces a component then saves and asserts the update payload carries the new name. Land after #7 (same file).