feat(3d): meal-box merge, stored mutations, undo, mobile undo UI + i18n ×12
- Merge leftovers into existing meal_box when same recipeId + cookedAt date + frozen + available. - Store mealBoxMutations JSONB on cooking_sessions for deterministic undo. - Undo decrements portions/remaining, discards box at zero, appends correction ledger rows. - Mobile: undo button in cooking/[id].tsx after-flow and meal-boxes.tsx within 24h window. - i18n undo strings across all 12 locales; parity test green. - 6 new integration tests: merge, no cross-date merge, frozen split, undo restore, undo discard, ledger invariant. - Update FAS3 audit doc with 3d semantics. Closes Fas 3d
This commit is contained in:
@@ -41,6 +41,7 @@ export interface EventPayloadMap {
|
||||
SHOPPING_COMPLETED: { shoppingListId: string; itemsAdded: number };
|
||||
WEEK_PLAN_UPDATED: { weekPlanId: string; reason?: string | null };
|
||||
MEAL_BOX_CREATED: { mealBoxId: string; portions: number };
|
||||
MEAL_BOX_UPDATED: { mealBoxId: string; addedPortions: number; totalPortions: number };
|
||||
MEAL_BOX_CONSUMED: { mealBoxId: string; portions: number };
|
||||
MEAL_BOX_DISCARDED: { mealBoxId: string; portions: number; source: string };
|
||||
MEAL_REMOVED: { mealId: string; recipeId: string; source: string };
|
||||
|
||||
Reference in New Issue
Block a user