{
    "success": true,
    "ok": true,
    "mode": "PREVIEW",
    "inventory_changed": false,
    "message": "Inventory deduction preview completed. No stock was changed.",
    "database": "njhzw3mkypb4qc37_Sousvide",
    "run_key": "63964e818b53e4b63702ee59996cb6e025b1815b3e62a8da6f593ed5a1c3f497",
    "latest_created_at": "2026-10-05 01:08:53",
    "op_dates": [
        "2026-10-05"
    ],
    "services": [
        "lunch"
    ],
    "menu_types": [
        "special"
    ],
    "active_menu_rows": 5,
    "recipes_checked": 5,
    "recipes_with_ingredients": 5,
    "ingredient_count": 24,
    "deduction_rows_inserted": 24,
    "ready_to_deduct": 5,
    "unmatched_count": 13,
    "unit_warning_count": 0,
    "shortage_count": 6,
    "strict_mode": false,
    "request_source": "",
    "menu_builder_safe_mode": false,
    "allow_negative": false,
    "requested_date": null,
    "requested_service": "all",
    "requested_covers": 0,
    "active_menu_portions_authoritative": true,
    "authoritative_inventory_table": "inventory_items",
    "onhand_sync_enabled": false,
    "onhand_fk_references": "tc_inventory_items",
    "inventory_movement_audit_enabled": false,
    "inventory_movement_fk_table": "tc_inventory_items",
    "inventory_movement_fk_compatible": false,
    "total_required_qty_g": 37782,
    "deduction_preview": [
        {
            "inventory_item_id": 18,
            "ingredient_key": "tuscan_bread_cubed",
            "ingredient_name": "Tuscan Bread",
            "inventory_item_name": "Tuscan Bread",
            "requested_qty_g": 4540,
            "deducted_qty": 4540,
            "inventory_unit": "g",
            "conversion_method": "grams",
            "stock_before": 5000,
            "stock_after": 460,
            "stations": [
                "Pastry"
            ],
            "recipe_ids": [
                300
            ],
            "recipe_titles": [
                "Chocolate Bread Pudding | Tuscany Cuisine"
            ]
        },
        {
            "inventory_item_id": 47,
            "ingredient_key": "butter",
            "ingredient_name": "butter",
            "inventory_item_name": "Butter",
            "requested_qty_g": 580,
            "deducted_qty": 580,
            "inventory_unit": "g",
            "conversion_method": "grams",
            "stock_before": 1520,
            "stock_after": 940,
            "stations": [
                "Pastry",
                "Prep"
            ],
            "recipe_ids": [
                300,
                339
            ],
            "recipe_titles": [
                "Chocolate Bread Pudding | Tuscany Cuisine",
                "Roasted Lamb Shank in Carta Fata | Tuscany Cuisine"
            ]
        },
        {
            "inventory_item_id": 21,
            "ingredient_key": "olive_oil",
            "ingredient_name": "olive oil",
            "inventory_item_name": "Extra Virgin Olive Oil",
            "requested_qty_g": 100,
            "deducted_qty": 100,
            "inventory_unit": "ml",
            "conversion_method": "temporary_grams_to_ml_1_to_1",
            "stock_before": 8500,
            "stock_after": 8400,
            "stations": [
                "Prep",
                "Secondi"
            ],
            "recipe_ids": [
                339,
                447
            ],
            "recipe_titles": [
                "Roasted Lamb Shank in Carta Fata | Tuscany Cuisine",
                "Rack of Lamb | Tuscany Cuisine"
            ]
        },
        {
            "inventory_item_id": 158,
            "ingredient_key": "goat_cheese",
            "ingredient_name": "goat cheese",
            "inventory_item_name": "Goat Cheese",
            "requested_qty_g": 20,
            "deducted_qty": 20,
            "inventory_unit": "g",
            "conversion_method": "grams",
            "stock_before": 3880,
            "stock_after": 3860,
            "stations": [
                "Prep"
            ],
            "recipe_ids": [
                339
            ],
            "recipe_titles": [
                "Roasted Lamb Shank in Carta Fata | Tuscany Cuisine"
            ]
        },
        {
            "inventory_item_id": 47,
            "ingredient_key": "unsalted_butter",
            "ingredient_name": "Butter",
            "inventory_item_name": "Butter",
            "requested_qty_g": 168,
            "deducted_qty": 168,
            "inventory_unit": "g",
            "conversion_method": "grams",
            "stock_before": 1520,
            "stock_after": 1352,
            "stations": [
                "Secondi"
            ],
            "recipe_ids": [
                447
            ],
            "recipe_titles": [
                "Rack of Lamb | Tuscany Cuisine"
            ]
        }
    ],
    "unmatched_inventory_items": [
        {
            "ingredient_key": "batch_english_cream_view_recipe",
            "ingredient_name": "batch English cream — view recipe",
            "required_qty_g": 10,
            "stations": [
                "Pastry"
            ],
            "recipe_ids": [
                300
            ]
        },
        {
            "ingredient_key": "semi_sweet_chocolate",
            "ingredient_name": "semi-sweet chocolate",
            "required_qty_g": 1250,
            "stations": [
                "Pastry"
            ],
            "recipe_ids": [
                300
            ]
        },
        {
            "ingredient_key": "hazelnuts_toasted",
            "ingredient_name": "hazelnuts, toasted",
            "required_qty_g": 1130,
            "stations": [
                "Pastry"
            ],
            "recipe_ids": [
                300
            ]
        },
        {
            "ingredient_key": "lemon_zested",
            "ingredient_name": "lemon, zested",
            "required_qty_g": 10,
            "stations": [
                "Pastry"
            ],
            "recipe_ids": [
                277
            ]
        },
        {
            "ingredient_key": "sheets_gelatin_about_4_g",
            "ingredient_name": "sheets gelatin (about 4 g)",
            "required_qty_g": 20,
            "stations": [
                "Pastry"
            ],
            "recipe_ids": [
                277
            ]
        },
        {
            "ingredient_key": "lamb_shank",
            "ingredient_name": "lamb shank",
            "required_qty_g": 10,
            "stations": [
                "Prep"
            ],
            "recipe_ids": [
                339
            ]
        },
        {
            "ingredient_key": "idaho_potato_julienned",
            "ingredient_name": "Idaho potato, julienned",
            "required_qty_g": 10,
            "stations": [
                "Prep"
            ],
            "recipe_ids": [
                339
            ]
        },
        {
            "ingredient_key": "grated_grana_padano",
            "ingredient_name": "grated Grana Padano",
            "required_qty_g": 10,
            "stations": [
                "Prep"
            ],
            "recipe_ids": [
                339
            ]
        },
        {
            "ingredient_key": "sheet_carta_fata_magic_paper",
            "ingredient_name": "sheet Carta Fata magic paper",
            "required_qty_g": 10,
            "stations": [
                "Prep"
            ],
            "recipe_ids": [
                339
            ]
        },
        {
            "ingredient_key": "rack_of_lamb",
            "ingredient_name": "rack of lamb",
            "required_qty_g": 4800,
            "stations": [
                "Secondi"
            ],
            "recipe_ids": [
                447
            ]
        },
        {
            "ingredient_key": "rosemary",
            "ingredient_name": "rosemary",
            "required_qty_g": 12,
            "stations": [
                "Secondi"
            ],
            "recipe_ids": [
                447
            ]
        },
        {
            "ingredient_key": "lemon",
            "ingredient_name": "lemon",
            "required_qty_g": 720,
            "stations": [
                "Secondi"
            ],
            "recipe_ids": [
                447
            ]
        },
        {
            "ingredient_key": "lamb_demi_glace",
            "ingredient_name": "lamb demi-glace",
            "required_qty_g": 342,
            "stations": [
                "Secondi"
            ],
            "recipe_ids": [
                447
            ]
        }
    ],
    "unit_warnings": [],
    "shortages": [
        {
            "inventory_item_id": 134,
            "ingredient_name": "cocoa powder",
            "inventory_item_name": "Cocoa Powder",
            "required_quantity": 2270,
            "available_quantity": 0,
            "shortage_quantity": 2270,
            "unit": "g",
            "stations": [
                "Pastry"
            ],
            "recipe_ids": [
                300
            ]
        },
        {
            "inventory_item_id": 65,
            "ingredient_name": "heavy cream",
            "inventory_item_name": "Heavy Cream",
            "required_quantity": 10010,
            "available_quantity": 0,
            "shortage_quantity": 10010,
            "unit": "ml",
            "stations": [
                "Pastry",
                "Prep"
            ],
            "recipe_ids": [
                277,
                339
            ]
        },
        {
            "inventory_item_id": 64,
            "ingredient_name": "granulated sugar",
            "inventory_item_name": "Granulated Sugar",
            "required_quantity": 2830,
            "available_quantity": 0,
            "shortage_quantity": 2830,
            "unit": "g",
            "stations": [
                "Pastry"
            ],
            "recipe_ids": [
                277
            ]
        },
        {
            "inventory_item_id": 57,
            "ingredient_name": "espresso",
            "inventory_item_name": "Espresso",
            "required_quantity": 4800,
            "available_quantity": 0,
            "shortage_quantity": 4800,
            "unit": "ml",
            "stations": [
                "Pastry"
            ],
            "recipe_ids": [
                277
            ]
        },
        {
            "inventory_item_id": 98,
            "ingredient_name": "bittersweet chocolate",
            "inventory_item_name": "Bittersweet Chocolate",
            "required_quantity": 1130,
            "available_quantity": 0,
            "shortage_quantity": 1130,
            "unit": "g",
            "stations": [
                "Pastry"
            ],
            "recipe_ids": [
                277
            ]
        },
        {
            "inventory_item_id": 95,
            "ingredient_name": "seasonal vegetables",
            "inventory_item_name": "Seasonal Vegetables",
            "required_quantity": 3000,
            "available_quantity": 0,
            "shortage_quantity": 3000,
            "unit": "g",
            "stations": [
                "Secondi"
            ],
            "recipe_ids": [
                447
            ]
        }
    ],
    "missing_recipe_ingredients": [],
    "build": "2026-07-23-B18-MENU-CONTEXT-PARTIAL-SAFE"
}