# import_log

created_at: 2026-04-04 16:48:50.709565
status: success
provider: claude
filename: American/Breakfast/Muffins/BLUEBERRY MUFFINS.pdf
recipe_title: Blueberry Muffins
unmatched_items: []
unit_warnings: []
resolution_tiers: {"exact": 13, "common_name": 1}
raw_ai_response:
  {"title": "Blueberry Muffins", "description": "Easy blueberry muffins with a crunchy pecan and brown sugar streusel topping. Makes one dozen.", "servings": 12, "prep_time": 15, "cook_time": 25, "cuisine": "American", "tags": ["Baked", "Family Friendly", "Kid Friendly", "Comfort Food", "Quick", "Few Ingredients"], "culinary_type": "Bread & Pastry", "instructions": "Step 1: Preheat oven to 350\u00b0F. Line muffin tins.\nStep 2: Combine dry ingredients.\nStep 3: Make a well in the center and pour in egg, melted margarine, and milk.\nStep 4: Stir just until dry ingredients are wet. Don't overmix.\nStep 5: Fold in blueberries.\nStep 6: Fill tins 3/4 full.\nStep 7: Combine topping ingredients and sprinkle on top of each muffin.\nStep 8: Bake 20 to 25 minutes. Enjoy!", "has_ingredient_list": true, "extraction_confidence": "high", "ingredients": [{"name": "All-Purpose Flour", "quantity": "1", "unit": "cup", "modifiers": "", "package_qty": "", "package_unit": ""}, {"name": "Sugar", "quantity": "3", "unit": "tbsp", "modifiers": "", "package_qty": "", "package_unit": ""}, {"name": "Brown Sugar", "quantity": "3 1/2", "unit": "tbsp", "modifiers": "", "package_qty": "", "package_unit": ""}, {"name": "Baking Powder", "quantity": "2", "unit": "tsp", "modifiers": "", "package_qty": "", "package_unit": ""}, {"name": "Cinnamon", "quantity": "2", "unit": "tsp", "modifiers": "", "package_qty": "", "package_unit": ""}, {"name": "Salt", "quantity": "1/4", "unit": "tsp", "modifiers": "", "package_qty": "", "package_unit": ""}, {"name": "Egg", "quantity": "1", "unit": "whole", "modifiers": "", "package_qty": "", "package_unit": ""}, {"name": "Margarine", "quantity": "1/4", "unit": "cup", "modifiers": "melted", "package_qty": "", "package_unit": ""}, {"name": "Milk", "quantity": "1/2", "unit": "cup", "modifiers": "", "package_qty": "", "package_unit": ""}, {"name": "Blueberries", "quantity": "1", "unit": "cup", "modifiers": "", "package_qty": "", "package_unit": ""}, {"name": "Pecans", "quantity": "1/4", "unit": "cup", "modifiers": "chopped", "package_qty": "", "package_unit": ""}, {"name": "Brown Sugar", "quantity": "1/4", "unit": "cup", "modifiers": "", "package_qty": "", "package_unit": ""}, {"name": "All-Purpose Flour", "quantity": "2", "unit": "tbsp", "modifiers": "", "package_qty": "", "package_unit": ""}, {"name": "Margarine", "quantity": "1 1/2", "unit": "tbsp", "modifiers": "melted", "package_qty": "", "package_unit": ""}]}

matched_ingredients:
  [{"raw_name": "All-Purpose Flour", "ingredient_name": "All-Purpose Flour", "quantity": "1", "unit": "c"}, {"raw_name": "Sugar", "ingredient_name": "Sugar", "quantity": "3", "unit": "tbsp"}, {"raw_name": "Brown Sugar", "ingredient_name": "Brown Sugar", "quantity": "3 1/2", "unit": "tbsp"}, {"raw_name": "Baking Powder", "ingredient_name": "Baking Powder", "quantity": "2", "unit": "tsp"}, {"raw_name": "Cinnamon", "ingredient_name": "Cinnamon", "quantity": "2", "unit": "tsp"}, {"raw_name": "Salt", "ingredient_name": "Salt", "quantity": "1/4", "unit": "tsp"}, {"raw_name": "Egg", "ingredient_name": "Egg", "quantity": "1", "unit": "whole"}, {"raw_name": "Margarine", "ingredient_name": "Margarine", "quantity": "1/4", "unit": "c"}, {"raw_name": "Milk", "ingredient_name": "Milk", "quantity": "1/2", "unit": "c"}, {"raw_name": "Blueberry", "ingredient_name": "Blueberry", "quantity": "1", "unit": "c"}, {"raw_name": "Pecans", "ingredient_name": "Pecans", "quantity": "1/4", "unit": "c"}, {"raw_name": "Brown Sugar", "ingredient_name": "Brown Sugar", "quantity": "1/4", "unit": "c"}, {"raw_name": "All-Purpose Flour", "ingredient_name": "All-Purpose Flour", "quantity": "2", "unit": "tbsp"}, {"raw_name": "Margarine", "ingredient_name": "Margarine", "quantity": "1 1/2", "unit": "tbsp"}]


created_at: 2026-04-04 16:49:31.425563
status: success
provider: claude
filename: American/Breakfast/Muffins/Blueberry White Chip Muffins.pdf
recipe_title: Blueberry White Chip Muffins
unmatched_items: []
unit_warnings: []
resolution_tiers: {"exact": 14, "failed": 1, "product_off_fallback": 1}
raw_ai_response:
  {"title": "Blueberry White Chip Muffins", "description": "Fluffy blueberry muffins loaded with white chocolate morsels and topped with a buttery cinnamon streusel, finished with a white chocolate drizzle.", "servings": 18, "prep_time": 20, "cook_time": 25, "cuisine": "American", "tags": ["Baked", "Family Friendly", "Kid Friendly", "Sweet", "Freezer Friendly", "Weekend Project"], "culinary_type": "Bread & Pastry", "instructions": "Step 1: Preheat oven to 375\u00b0F.\nStep 2: Paper line 18 muffin cups.\nStep 3: Combine flour, granulated sugar, brown sugar, baking powder and salt in large bowl.\nStep 4: Stir in milk, egg, butter and lemon peel.\nStep 5: Stir in 1 1/2 cups morsels and blueberries.\nStep 6: Spoon into prepared muffin cups, filling almost full.\nStep 7: Sprinkle with Streusel Topping.\nStep 8: Bake for 22 to 25 minutes or until wooden pick inserted in center comes out clean.\nStep 9: Cool in pans for 5 minutes; remove to wire racks to cool slightly.\nStep 10: Place remaining morsels in small, heavy-duty plastic bag.\nStep 11: Microwave on MEDIUM-HIGH (70%) power for 30 seconds; knead.\nStep 12: Microwave at additional 10- to 20-second intervals, kneading until smooth.\nStep 13: Cut tiny corner from bag; squeeze to drizzle over muffins.\nStep 14: Serve warm.\nStep 15: For Streusel Topping: Combine 1/3 cup granulated sugar, 1/4 cup all-purpose flour and 1/4 teaspoon ground cinnamon in small bowl.\nStep 16: Cut in 3 tablespoons butter or margarine with pastry blender or two knives until mixture resembles coarse crumbs.", "has_ingredient_list": true, "extraction_confidence": "high", "ingredients": [{"name": "All-Purpose Flour", "quantity": "2", "unit": "cup", "modifiers": "", "package_qty": "", "package_unit": ""}, {"name": "Granulated Sugar", "quantity": "1/2", "unit": "cup", "modifiers": "", "package_qty": "", "package_unit": ""}, {"name": "Brown Sugar", "quantity": "1/4", "unit": "cup", "modifiers": "packed", "package_qty": "", "package_unit": ""}, {"name": "Baking Powder", "quantity": "2 1/2", "unit": "tsp", "modifiers": "", "package_qty": "", "package_unit": ""}, {"name": "Salt", "quantity": "1/2", "unit": "tsp", "modifiers": "", "package_qty": "", "package_unit": ""}, {"name": "Milk", "quantity": "3/4", "unit": "cup", "modifiers": "", "package_qty": "", "package_unit": ""}, {"name": "Egg", "quantity": "1", "unit": "whole", "modifiers": "large, lightly beaten", "package_qty": "", "package_unit": ""}, {"name": "Butter", "quantity": "1/4", "unit": "cup", "modifiers": "melted", "package_qty": "", "package_unit": ""}, {"name": "Lemon Zest", "quantity": "1/2", "unit": "tsp", "modifiers": "grated", "package_qty": "", "package_unit": ""}, {"name": "NESTL\u00c9 TOLL HOUSE Premier White Morsels", "quantity": "2", "unit": "cup", "modifiers": "divided", "package_qty": "12", "package_unit": "oz"}, {"name": "Blueberry", "quantity": "1 1/2", "unit": "cup", "modifiers": "fresh or frozen", "package_qty": "", "package_unit": ""}, {"name": "Granulated Sugar", "quantity": "1/3", "unit": "cup", "modifiers": "", "package_qty": "", "package_unit": ""}, {"name": "All-Purpose Flour", "quantity": "1/4", "unit": "cup", "modifiers": "", "package_qty": "", "package_unit": ""}, {"name": "Cinnamon", "quantity": "1/4", "unit": "tsp", "modifiers": "ground", "package_qty": "", "package_unit": ""}, {"name": "Butter", "quantity": "3", "unit": "tbsp", "modifiers": "", "package_qty": "", "package_unit": ""}]}

matched_ingredients:
  [{"raw_name": "All-Purpose Flour", "ingredient_name": "All-Purpose Flour", "quantity": "2", "unit": "c"}, {"raw_name": "Granulated Sugar", "ingredient_name": "Granulated Sugar", "quantity": "1/2", "unit": "c"}, {"raw_name": "Brown Sugar", "ingredient_name": "Brown Sugar", "quantity": "1/4", "unit": "c"}, {"raw_name": "Baking Powder", "ingredient_name": "Baking Powder", "quantity": "2 1/2", "unit": "tsp"}, {"raw_name": "Salt", "ingredient_name": "Salt", "quantity": "1/2", "unit": "tsp"}, {"raw_name": "Milk", "ingredient_name": "Milk", "quantity": "3/4", "unit": "c"}, {"raw_name": "Egg", "ingredient_name": "Egg", "quantity": "1", "unit": "whole"}, {"raw_name": "Butter", "ingredient_name": "Butter", "quantity": "1/4", "unit": "c"}, {"raw_name": "Lemon Zest", "ingredient_name": "Lemon Zest", "quantity": "1/2", "unit": "tsp"}, {"raw_name": "?", "ingredient_name": null, "quantity": "2", "unit": "c"}, {"raw_name": "Blueberry", "ingredient_name": "Blueberry", "quantity": "1 1/2", "unit": "c"}, {"raw_name": "Granulated Sugar", "ingredient_name": "Granulated Sugar", "quantity": "1/3", "unit": "c"}, {"raw_name": "All-Purpose Flour", "ingredient_name": "All-Purpose Flour", "quantity": "1/4", "unit": "c"}, {"raw_name": "Cinnamon", "ingredient_name": "Cinnamon", "quantity": "1/4", "unit": "tsp"}, {"raw_name": "Butter", "ingredient_name": "Butter", "quantity": "3", "unit": "tbsp"}]


created_at: 2026-04-04 16:49:46.764130
status: success
provider: claude
filename: American/Breakfast/Muffins/Blueberry-Yogurt muffins.pdf
recipe_title: Blueberry-Yogurt Muffins
unmatched_items: []
unit_warnings: []
resolution_tiers: {"exact": 12, "common_name": 1}
raw_ai_response:
  {"title": "Blueberry-Yogurt Muffins", "description": "Light and tender muffins made with whole-wheat flour, yogurt, and fresh or frozen blueberries, spiced with cinnamon and nutmeg.", "servings": 12, "prep_time": 15, "cook_time": 25, "cuisine": "American", "tags": ["Baked", "Family Friendly", "Kid Friendly", "Freezer Friendly", "Comfort Food", "Weekend Project"], "culinary_type": "Bread & Pastry", "instructions": "Step 1: Preheat oven to 350 degrees.\nStep 2: Line muffin tins with paper cups.\nStep 3: In a large bowl, cream butter and sugar. Add egg, cinnamon, nutmeg and vanilla.\nStep 4: Add flour, baking powder and salt alternately with milk and yogurt. Do not over mix.\nStep 5: Carefully fold in blueberries.\nStep 6: Spoon into paper-lined muffin tin. Bake in a 350-degree oven for 20 to 30 minutes.", "has_ingredient_list": true, "extraction_confidence": "high", "ingredients": [{"name": "Butter", "quantity": "1/4", "unit": "cup", "modifiers": "room temperature", "package_qty": "", "package_unit": ""}, {"name": "Granulated Sugar", "quantity": "1/2", "unit": "cup", "modifiers": "", "package_qty": "", "package_unit": ""}, {"name": "Egg", "quantity": "1", "unit": "whole", "modifiers": "", "package_qty": "", "package_unit": ""}, {"name": "Cinnamon", "quantity": "1/4", "unit": "tsp", "modifiers": "ground", "package_qty": "", "package_unit": ""}, {"name": "Nutmeg", "quantity": "1/8", "unit": "tsp", "modifiers": "ground", "package_qty": "", "package_unit": ""}, {"name": "Vanilla Extract", "quantity": "1/2", "unit": "tsp", "modifiers": "", "package_qty": "", "package_unit": ""}, {"name": "Whole Wheat Flour", "quantity": "2/3", "unit": "cup", "modifiers": "", "package_qty": "", "package_unit": ""}, {"name": "All-Purpose Flour", "quantity": "2/3", "unit": "cup", "modifiers": "", "package_qty": "", "package_unit": ""}, {"name": "Baking Powder", "quantity": "2", "unit": "tsp", "modifiers": "", "package_qty": "", "package_unit": ""}, {"name": "Salt", "quantity": "1/2", "unit": "tsp", "modifiers": "", "package_qty": "", "package_unit": ""}, {"name": "Milk", "quantity": "1/2", "unit": "cup", "modifiers": "", "package_qty": "", "package_unit": ""}, {"name": "Yogurt", "quantity": "1/2", "unit": "cup", "modifiers": "plain", "package_qty": "", "package_unit": ""}, {"name": "Blueberries", "quantity": "1", "unit": "cup", "modifiers": "fresh or frozen, thawed and drained", "package_qty": "", "package_unit": ""}]}

matched_ingredients:
  [{"raw_name": "Butter", "ingredient_name": "Butter", "quantity": "1/4", "unit": "c"}, {"raw_name": "Granulated Sugar", "ingredient_name": "Granulated Sugar", "quantity": "1/2", "unit": "c"}, {"raw_name": "Egg", "ingredient_name": "Egg", "quantity": "1", "unit": "whole"}, {"raw_name": "Cinnamon", "ingredient_name": "Cinnamon", "quantity": "1/4", "unit": "tsp"}, {"raw_name": "Nutmeg", "ingredient_name": "Nutmeg", "quantity": "1/8", "unit": "tsp"}, {"raw_name": "Vanilla Extract", "ingredient_name": "Vanilla Extract", "quantity": "1/2", "unit": "tsp"}, {"raw_name": "Whole Wheat Flour", "ingredient_name": "Whole Wheat Flour", "quantity": "2/3", "unit": "c"}, {"raw_name": "All-Purpose Flour", "ingredient_name": "All-Purpose Flour", "quantity": "2/3", "unit": "c"}, {"raw_name": "Baking Powder", "ingredient_name": "Baking Powder", "quantity": "2", "unit": "tsp"}, {"raw_name": "Salt", "ingredient_name": "Salt", "quantity": "1/2", "unit": "tsp"}, {"raw_name": "Milk", "ingredient_name": "Milk", "quantity": "1/2", "unit": "c"}, {"raw_name": "Yogurt", "ingredient_name": "Yogurt", "quantity": "1/2", "unit": "c"}, {"raw_name": "Blueberry", "ingredient_name": "Blueberry", "quantity": "1", "unit": "c"}]


created_at: 2026-04-04 16:50:25.551086
status: success
provider: claude
filename: American/Breakfast/Muffins/Crumble-Top Pumpkin Muffins_.pdf
recipe_title: Crumble-Top Pumpkin Muffins
unmatched_items: []
unit_warnings: []
resolution_tiers: {"exact": 9, "common_name": 1, "failed": 1, "product_off_fallback": 1}
raw_ai_response:
  {"title": "Crumble-Top Pumpkin Muffins", "description": "Moist pumpkin muffins made with buttermilk baking mix and pumpkin pie mix, topped with a sweet cinnamon streusel crumble. Makes 24 muffins.", "servings": 24, "prep_time": 15, "cook_time": 16, "cuisine": "American", "tags": ["Baked", "Family Friendly", "Holiday", "Make Ahead", "Sweet", "Comfort Food"], "culinary_type": "Bread & Pastry", "instructions": "Step 1: Preheat oven to 400\u00b0F. Grease or line 24 muffin cups with paper liners.\nStep 2: Combine baking mix, wheat germ, sugar, cinnamon, and raisins in a large bowl.\nStep 3: Combine pumpkin pie mix and eggs in a medium bowl.\nStep 4: Add liquid ingredients to dry ingredients and stir until just moistened.\nStep 5: Spoon batter into prepared muffin cups.\nStep 6: For Streusel Topping: Combine flour, granulated sugar, and cinnamon in a small bowl. Cut in butter or margarine until mixture is crumbly.\nStep 7: Sprinkle Streusel Topping over batter in muffin cups.\nStep 8: Bake in preheated 400\u00b0F oven for 14 to 16 minutes or until a wooden pick inserted in the center comes out clean.\nStep 9: Cool for 5 minutes in pan, then remove to a wire rack to cool completely.", "has_ingredient_list": true, "extraction_confidence": "high", "ingredients": [{"name": "Baking Mix", "quantity": "4", "unit": "cup", "modifiers": "buttermilk", "package_qty": "", "package_unit": ""}, {"name": "Crude Wheat Germ", "quantity": "2/3", "unit": "cup", "modifiers": "", "package_qty": "", "package_unit": ""}, {"name": "Granulated Sugar", "quantity": "2/3", "unit": "cup", "modifiers": "", "package_qty": "", "package_unit": ""}, {"name": "Cinnamon", "quantity": "1", "unit": "tsp", "modifiers": "ground", "package_qty": "", "package_unit": ""}, {"name": "Raisins", "quantity": "1", "unit": "cup", "modifiers": "optional", "package_qty": "", "package_unit": ""}, {"name": "LIBBY'S Pumpkin Pie Mix", "quantity": "3 1/4", "unit": "cup", "modifiers": "", "package_qty": "30", "package_unit": "oz"}, {"name": "Egg", "quantity": "2", "unit": "whole", "modifiers": "", "package_qty": "", "package_unit": ""}, {"name": "All-Purpose Flour", "quantity": "3", "unit": "tbsp", "modifiers": "", "package_qty": "", "package_unit": ""}, {"name": "Granulated Sugar", "quantity": "3", "unit": "tbsp", "modifiers": "", "package_qty": "", "package_unit": ""}, {"name": "Cinnamon", "quantity": "3/4", "unit": "tsp", "modifiers": "ground", "package_qty": "", "package_unit": ""}, {"name": "Butter", "quantity": "2", "unit": "tbsp", "modifiers": "", "package_qty": "", "package_unit": ""}]}

matched_ingredients:
  [{"raw_name": "Baking Mix", "ingredient_name": "Baking Mix", "quantity": "4", "unit": "c"}, {"raw_name": "Crude Wheat Germ", "ingredient_name": "Crude Wheat Germ", "quantity": "2/3", "unit": "c"}, {"raw_name": "Granulated Sugar", "ingredient_name": "Granulated Sugar", "quantity": "2/3", "unit": "c"}, {"raw_name": "Cinnamon", "ingredient_name": "Cinnamon", "quantity": "1", "unit": "tsp"}, {"raw_name": "Raisin", "ingredient_name": "Raisin", "quantity": "1", "unit": "c"}, {"raw_name": "?", "ingredient_name": null, "quantity": "3 1/4", "unit": "c"}, {"raw_name": "Egg", "ingredient_name": "Egg", "quantity": "2", "unit": "whole"}, {"raw_name": "All-Purpose Flour", "ingredient_name": "All-Purpose Flour", "quantity": "3", "unit": "tbsp"}, {"raw_name": "Granulated Sugar", "ingredient_name": "Granulated Sugar", "quantity": "3", "unit": "tbsp"}, {"raw_name": "Cinnamon", "ingredient_name": "Cinnamon", "quantity": "3/4", "unit": "tsp"}, {"raw_name": "Butter", "ingredient_name": "Butter", "quantity": "2", "unit": "tbsp"}]


created_at: 2026-04-04 16:50:55.874134
status: success
provider: claude
filename: American/Breakfast/Muffins/Raspberry Swirl Banana Muffins.pdf
recipe_title: Raspberry Swirl Banana Muffins
unmatched_items: []
unit_warnings: []
resolution_tiers: {"exact": 12}
raw_ai_response:
  {"title": "Raspberry Swirl Banana Muffins", "description": "Moist banana muffins swirled with raspberry jam for a beautiful marbled effect. A quick and easy baked treat that makes 12 muffins.", "servings": 12, "prep_time": 20, "cook_time": 15, "cuisine": "American", "tags": ["Quick", "Under 1 Hour", "Baked", "Family Friendly", "Kid Friendly", "Sweet"], "culinary_type": "Bread & Pastry", "instructions": "Step 1: Preheat oven to 375\u00b0F. Coat 12 muffin cups with nonstick cooking spray. In a large bowl combine flour, sugar, baking powder, salt and baking soda; mix well. Set aside.\nStep 2: In a medium bowl combine bananas, eggs, oil, honey and vanilla; mix well. Add to dry ingredients; stir just to combine (do not overmix).\nStep 3: Fill muffin cups two-thirds full. Spoon 1 teaspoon of the raspberry jam on top of each; gently swirl with a large skewer or a small knife to create a marbled effect.\nStep 4: Bake 15 minutes or until a wooden toothpick inserted into the center of a muffin comes out clean. Remove pan from oven, and let muffins cool in pan several minutes. Transfer muffins to a wire cooling rack; let cool completely.", "has_ingredient_list": true, "extraction_confidence": "high", "ingredients": [{"name": "All-Purpose Flour", "quantity": "2", "unit": "cup", "modifiers": "", "package_qty": "", "package_unit": ""}, {"name": "Sugar", "quantity": "1/4", "unit": "cup", "modifiers": "", "package_qty": "", "package_unit": ""}, {"name": "Baking Powder", "quantity": "2", "unit": "tsp", "modifiers": "", "package_qty": "", "package_unit": ""}, {"name": "Salt", "quantity": "1/2", "unit": "tsp", "modifiers": "", "package_qty": "", "package_unit": ""}, {"name": "Baking Soda", "quantity": "1/4", "unit": "tsp", "modifiers": "", "package_qty": "", "package_unit": ""}, {"name": "Banana", "quantity": "1", "unit": "cup", "modifiers": "mashed, ripe", "package_qty": "", "package_unit": ""}, {"name": "Egg", "quantity": "2", "unit": "whole", "modifiers": "beaten", "package_qty": "", "package_unit": ""}, {"name": "Canola Oil", "quantity": "1/3", "unit": "cup", "modifiers": "", "package_qty": "", "package_unit": ""}, {"name": "Honey", "quantity": "1/3", "unit": "cup", "modifiers": "", "package_qty": "", "package_unit": ""}, {"name": "Vanilla Extract", "quantity": "1", "unit": "tsp", "modifiers": "pure", "package_qty": "", "package_unit": ""}, {"name": "Jam", "quantity": "1/3", "unit": "cup", "modifiers": "raspberry", "package_qty": "", "package_unit": ""}, {"name": "Cooking Spray", "quantity": "1", "unit": "whole", "modifiers": "nonstick", "package_qty": "", "package_unit": ""}]}

matched_ingredients:
  [{"raw_name": "All-Purpose Flour", "ingredient_name": "All-Purpose Flour", "quantity": "2", "unit": "c"}, {"raw_name": "Sugar", "ingredient_name": "Sugar", "quantity": "1/4", "unit": "c"}, {"raw_name": "Baking Powder", "ingredient_name": "Baking Powder", "quantity": "2", "unit": "tsp"}, {"raw_name": "Salt", "ingredient_name": "Salt", "quantity": "1/2", "unit": "tsp"}, {"raw_name": "Baking Soda", "ingredient_name": "Baking Soda", "quantity": "1/4", "unit": "tsp"}, {"raw_name": "Banana", "ingredient_name": "Banana", "quantity": "1", "unit": "c"}, {"raw_name": "Egg", "ingredient_name": "Egg", "quantity": "2", "unit": "whole"}, {"raw_name": "Canola Oil", "ingredient_name": "Canola Oil", "quantity": "1/3", "unit": "c"}, {"raw_name": "Honey", "ingredient_name": "Honey", "quantity": "1/3", "unit": "c"}, {"raw_name": "Vanilla Extract", "ingredient_name": "Vanilla Extract", "quantity": "1", "unit": "tsp"}, {"raw_name": "Jam", "ingredient_name": "Jam", "quantity": "1/3", "unit": "c"}, {"raw_name": "Cooking Spray", "ingredient_name": "Cooking Spray", "quantity": "1", "unit": "whole"}]


created_at: 2026-04-04 16:51:26.010726
status: success
provider: claude
filename: American/Breakfast/Muffins/Spicy Pumpkin Muffins.pdf
recipe_title: Spicy Pumpkin Muffins
unmatched_items: []
unit_warnings: []
resolution_tiers: {"exact": 14}
raw_ai_response:
  {"title": "Spicy Pumpkin Muffins", "description": "Warmly spiced pumpkin muffins made with whole wheat flour, brown sugar, and chopped walnuts. A wholesome and flavorful treat perfect for fall.", "servings": 12, "prep_time": 15, "cook_time": 17, "cuisine": "American", "tags": ["Baked", "Family Friendly", "Make Ahead", "Freezer Friendly", "Comfort Food", "Holiday"], "culinary_type": "Bread & Pastry", "instructions": "Step 1: Preheat the oven to 400 degrees F. Butter the insides and top of a regular-sized (1/3-cup) muffin pan.\nStep 2: In a large bowl, thoroughly combine the first 8 ingredients.\nStep 3: In a medium bowl, beat the egg. Beat in the brown sugar, then stir in the pumpkin, oil, and milk until well mixed.\nStep 4: Mix the pumpkin mixture into the dry ingredients until just combined. Don't overmix. Stir in the raisins and all but 2 tablespoons of the walnuts.\nStep 5: Spoon the batter into the muffin cups, then sprinkle the remaining walnuts on top of the muffins. Bake 15 to 17 minutes, or until a knife inserted in the center of a muffin comes out clean. Let sit 2 minutes before removing from pan. Serve warm or at room temperature, not hot.", "has_ingredient_list": true, "extraction_confidence": "high", "ingredients": [{"name": "All-Purpose Flour", "quantity": "1", "unit": "cup", "modifiers": "unbleached", "package_qty": "", "package_unit": ""}, {"name": "Whole Wheat Flour", "quantity": "1/2", "unit": "cup", "modifiers": "", "package_qty": "", "package_unit": ""}, {"name": "Baking Powder", "quantity": "1", "unit": "tbsp", "modifiers": "", "package_qty": "", "package_unit": ""}, {"name": "Salt", "quantity": "1/2", "unit": "tsp", "modifiers": "", "package_qty": "", "package_unit": ""}, {"name": "Cinnamon", "quantity": "2", "unit": "tsp", "modifiers": "", "package_qty": "", "package_unit": ""}, {"name": "Ginger", "quantity": "1/2", "unit": "tsp", "modifiers": "ground", "package_qty": "", "package_unit": ""}, {"name": "Nutmeg", "quantity": "1/2", "unit": "tsp", "modifiers": "freshly grated", "package_qty": "", "package_unit": ""}, {"name": "Cloves", "quantity": "1/4", "unit": "tsp", "modifiers": "ground", "package_qty": "", "package_unit": ""}, {"name": "Egg", "quantity": "1", "unit": "whole", "modifiers": "large", "package_qty": "", "package_unit": ""}, {"name": "Brown Sugar", "quantity": "1/2", "unit": "cup", "modifiers": "light", "package_qty": "", "package_unit": ""}, {"name": "Pumpkin", "quantity": "1", "unit": "cup", "modifiers": "fresh or canned, pureed", "package_qty": "", "package_unit": ""}, {"name": "Applesauce", "quantity": "1/2", "unit": "cup", "modifiers": "", "package_qty": "", "package_unit": ""}, {"name": "Milk", "quantity": "1/2", "unit": "cup", "modifiers": "", "package_qty": "", "package_unit": ""}, {"name": "Walnuts", "quantity": "1/2", "unit": "cup", "modifiers": "finely chopped", "package_qty": "", "package_unit": ""}]}

matched_ingredients:
  [{"raw_name": "All-Purpose Flour", "ingredient_name": "All-Purpose Flour", "quantity": "1", "unit": "c"}, {"raw_name": "Whole Wheat Flour", "ingredient_name": "Whole Wheat Flour", "quantity": "1/2", "unit": "c"}, {"raw_name": "Baking Powder", "ingredient_name": "Baking Powder", "quantity": "1", "unit": "tbsp"}, {"raw_name": "Salt", "ingredient_name": "Salt", "quantity": "1/2", "unit": "tsp"}, {"raw_name": "Cinnamon", "ingredient_name": "Cinnamon", "quantity": "2", "unit": "tsp"}, {"raw_name": "Ginger", "ingredient_name": "Ginger", "quantity": "1/2", "unit": "tsp"}, {"raw_name": "Nutmeg", "ingredient_name": "Nutmeg", "quantity": "1/2", "unit": "tsp"}, {"raw_name": "Cloves", "ingredient_name": "Cloves", "quantity": "1/4", "unit": "tsp"}, {"raw_name": "Egg", "ingredient_name": "Egg", "quantity": "1", "unit": "whole"}, {"raw_name": "Brown Sugar", "ingredient_name": "Brown Sugar", "quantity": "1/2", "unit": "c"}, {"raw_name": "Pumpkin", "ingredient_name": "Pumpkin", "quantity": "1", "unit": "c"}, {"raw_name": "Applesauce", "ingredient_name": "Applesauce", "quantity": "1/2", "unit": "c"}, {"raw_name": "Milk", "ingredient_name": "Milk", "quantity": "1/2", "unit": "c"}, {"raw_name": "Walnuts", "ingredient_name": "Walnuts", "quantity": "1/2", "unit": "c"}]


created_at: 2026-04-04 16:51:46.709293
status: success
provider: claude
filename: American/Breakfast/Muffins/Zucchini Muffins.pdf
recipe_title: Zucchini Muffins
unmatched_items: []
unit_warnings: []
raw_ai_response:
  {"title": "Zucchini Muffins", "description": "Gluten-free zucchini muffins made with a homemade rice flour blend, studded with raisins and chopped nuts. A moist, lightly spiced treat that bakes up in just 20 minutes.", "servings": 10, "prep_time": 15, "cook_time": 20, "cuisine": "American", "tags": ["Baked", "Family Friendly", "Quick", "Under 30 Minutes", "Few Ingredients", "Dairy Free"], "culinary_type": "Bread & Pastry", "instructions": "Step 1: Preheat oven to 400\u00b0F. Grease muffin tins.\nStep 2: Beat together 1/3 cup sugar, 2 eggs, and 3 tablespoons vegetable oil.\nStep 3: Combine 1 cup gluten-free flour mixture, 1 teaspoon baking powder, 3/4 teaspoon salt, 1/2 teaspoon baking soda, 1/4 teaspoon cinnamon, and 1/4 teaspoon nutmeg.\nStep 4: Stir the dry ingredients into the sugar mixture. The batter will seem dry.\nStep 5: Stir in 1 cup grated zucchini, 1/4 cup raisins, and 1/4 cup chopped nuts.\nStep 6: Spoon batter into muffin tins to fill two-thirds full.\nStep 7: Bake for 20 minutes. Makes 10 to 12 muffins.\nGluten-Free Flour Mixture: Combine 6 parts white rice flour to 2 parts potato starch flour and 1 part tapioca flour.", "has_ingredient_list": false, "extraction_confidence": "high", "ingredients": [{"name": "Sugar", "quantity": "1/3", "unit": "cup", "modifiers": "", "package_qty": "", "package_unit": ""}, {"name": "Egg", "quantity": "2", "unit": "whole", "modifiers": "", "package_qty": "", "package_unit": ""}, {"name": "Vegetable Oil", "quantity": "3", "unit": "tbsp", "modifiers": "", "package_qty": "", "package_unit": ""}, {"name": "White Rice Flour", "quantity": "1", "unit": "cup", "modifiers": "gluten-free flour mixture", "package_qty": "", "package_unit": ""}, {"name": "Baking Powder", "quantity": "1", "unit": "tsp", "modifiers": "", "package_qty": "", "package_unit": ""}, {"name": "Salt", "quantity": "3/4", "unit": "tsp", "modifiers": "", "package_qty": "", "package_unit": ""}, {"name": "Baking Soda", "quantity": "1/2", "unit": "tsp", "modifiers": "", "package_qty": "", "package_unit": ""}, {"name": "Cinnamon", "quantity": "1/4", "unit": "tsp", "modifiers": "", "package_qty": "", "package_unit": ""}, {"name": "Nutmeg", "quantity": "1/4", "unit": "tsp", "modifiers": "", "package_qty": "", "package_unit": ""}, {"name": "Zucchini", "quantity": "1", "unit": "cup", "modifiers": "grated", "package_qty": "", "package_unit": ""}, {"name": "Raisins", "quantity": "1/4", "unit": "cup", "modifiers": "", "package_qty": "", "package_unit": ""}, {"name": "Mixed nuts", "quantity": "1/4", "unit": "cup", "modifiers": "chopped", "package_qty": "", "package_unit": ""}, {"name": "White Rice Flour", "quantity": "6", "unit": "piece", "modifiers": "parts", "package_qty": "", "package_unit": ""}, {"name": "Tapioca Starch", "quantity": "2", "unit": "piece", "modifiers": "parts, potato starch flour", "package_qty": "", "package_unit": ""}, {"name": "Tapioca", "quantity": "1", "unit": "piece", "modifiers": "part, tapioca flour", "package_qty": "", "package_unit": ""}]}

matched_ingredients:
  [{"raw_name": "Sugar", "ingredient_name": "Sugar", "quantity": "1/3", "unit": "c"}, {"raw_name": "Egg", "ingredient_name": "Egg", "quantity": "2", "unit": "whole"}, {"raw_name": "Vegetable Oil", "ingredient_name": "Vegetable Oil", "quantity": "3", "unit": "tbsp"}, {"raw_name": "?", "ingredient_name": null, "quantity": "1", "unit": "c"}, {"raw_name": "Baking Powder", "ingredient_name": "Baking Powder", "quantity": "1", "unit": "tsp"}, {"raw_name": "Salt", "ingredient_name": "Salt", "quantity": "3/4", "unit": "tsp"}, {"raw_name": "Baking Soda", "ingredient_name": "Baking Soda", "quantity": "1/2", "unit": "tsp"}, {"raw_name": "Cinnamon", "ingredient_name": "Cinnamon", "quantity": "1/4", "unit": "tsp"}, {"raw_name": "Nutmeg", "ingredient_name": "Nutmeg", "quantity": "1/4", "unit": "tsp"}, {"raw_name": "Zucchini", "ingredient_name": "Zucchini", "quantity": "1", "unit": "c"}, {"raw_name": "Raisin", "ingredient_name": "Raisin", "quantity": "1/4", "unit": "c"}, {"raw_name": "Mixed nuts", "ingredient_name": "Mixed nuts", "quantity": "1/4", "unit": "c"}, {"raw_name": "?", "ingredient_name": null, "quantity": "6", "unit": "pc"}, {"raw_name": "Tapioca Starch", "ingredient_name": "Tapioca Starch", "quantity": "2", "unit": "pc"}, {"raw_name": "Tapioca", "ingredient_name": "Tapioca", "quantity": "1", "unit": "pc"}]

resolution_tiers:
  {"exact": 12, "failed": 2, "compound_decompose": 2, "product_off_fallback": 1, "common_name": 1, "product_exact_fallback": 1}


created_at: 2026-04-04 16:52:23.555190
status: flagged
provider: claude
filename: American/Breakfast/Pancakes & Waffles/Blueberry Pancakes.pdf
recipe_title: Heart Happy Blueberry Pancakes
unmatched_items: [{"raw_name": "TJ's Heart Healthy Whole Grain Blueberry Instant Oatmeal"}]
unit_warnings: []
resolution_tiers: {"failed": 2, "product_off_fallback": 1, "exact": 4}
raw_ai_response:
  {"title": "Heart Happy Blueberry Pancakes", "description": "Hearty multigrain pancakes made with whole grain blueberry instant oatmeal and freeze dried blueberries for a wholesome, berry-packed breakfast.", "servings": 2, "prep_time": 0, "cook_time": 15, "cuisine": "American", "tags": ["Quick", "Under 30 Minutes", "Breakfast / Brunch", "Kid Friendly", "Few Ingredients", "Family Friendly"], "culinary_type": "Breakfast / Brunch", "instructions": "Step 1: Prepare the oatmeal according to the directions on the box and allow it to cool to room temperature.\nStep 2: Combine the pancake mix with the milk, egg and oil and mix together.\nStep 3: Stir in the prepared oatmeal, then carefully fold in the freeze dried berries.\nStep 4: Drop approximately 1/4 cup of batter onto a hot griddle (or more, or less, depending on preferred pancake diameter).\nStep 5: Cook on one side for two minutes or until bubbles form, then flip to the other side and cook for another 2-3 minutes.\nStep 6: Repeat until you have a stack. Optional: top with syrup, fresh blueberries or a dusting of powdered sugar.", "has_ingredient_list": true, "extraction_confidence": "high", "ingredients": [{"name": "TJ's Heart Healthy Whole Grain Blueberry Instant Oatmeal", "quantity": "1", "unit": "package", "modifiers": "", "package_qty": "", "package_unit": ""}, {"name": "TJ's Multigrain Pancake Mix", "quantity": "1", "unit": "cup", "modifiers": "", "package_qty": "", "package_unit": ""}, {"name": "Milk", "quantity": "1/2", "unit": "cup", "modifiers": "", "package_qty": "", "package_unit": ""}, {"name": "Egg", "quantity": "1", "unit": "whole", "modifiers": "cage free, large", "package_qty": "", "package_unit": ""}, {"name": "Canola Oil", "quantity": "1", "unit": "tbsp", "modifiers": "", "package_qty": "", "package_unit": ""}, {"name": "Blueberry", "quantity": "1/4", "unit": "cup", "modifiers": "freeze dried", "package_qty": "", "package_unit": ""}]}

matched_ingredients:
  [{"raw_name": "?", "ingredient_name": null, "quantity": "1", "unit": "c"}, {"raw_name": "Milk", "ingredient_name": "Milk", "quantity": "1/2", "unit": "c"}, {"raw_name": "Egg", "ingredient_name": "Egg", "quantity": "1", "unit": "whole"}, {"raw_name": "Canola Oil", "ingredient_name": "Canola Oil", "quantity": "1", "unit": "tbsp"}, {"raw_name": "Blueberry", "ingredient_name": "Blueberry", "quantity": "1/4", "unit": "c"}]


created_at: 2026-04-04 16:52:55.451624
status: success
provider: claude
filename: American/Breakfast/Pancakes & Waffles/Classic Waffles.pdf
recipe_title: Classic Waffles
unmatched_items: []
unit_warnings: []
resolution_tiers: {"exact": 8}
raw_ai_response:
  {"title": "Classic Waffles", "description": "A classic waffle recipe using basic ingredients you probably already have on hand, creating a perfectly crisp breakfast item.", "servings": 3, "prep_time": 10, "cook_time": 15, "cuisine": "American", "tags": ["Quick", "Under 30 Minutes", "Breakfast / Brunch", "Kid Friendly", "Few Ingredients", "Family Friendly"], "culinary_type": "Breakfast / Brunch", "instructions": "Step 1: In a large bowl, mix together flour, salt, baking powder and sugar; set aside. Preheat waffle iron to desired temperature.\nStep 2: In a separate bowl, beat the eggs. Stir in the milk, butter and vanilla. Pour the milk mixture into the flour mixture; beat until blended.\nStep 3: Ladle the batter into a preheated waffle iron. Cook the waffles until golden and crisp. Serve immediately.", "has_ingredient_list": true, "extraction_confidence": "high", "ingredients": [{"name": "All-Purpose Flour", "quantity": "1 3/16", "unit": "cup", "modifiers": "", "package_qty": "", "package_unit": ""}, {"name": "Salt", "quantity": "1/2", "unit": "tsp", "modifiers": "", "package_qty": "", "package_unit": ""}, {"name": "Baking Powder", "quantity": "2 1/2", "unit": "tsp", "modifiers": "", "package_qty": "", "package_unit": ""}, {"name": "Sugar", "quantity": "1 1/2", "unit": "tbsp", "modifiers": "white", "package_qty": "", "package_unit": ""}, {"name": "Egg", "quantity": "1 1/4", "unit": "whole", "modifiers": "", "package_qty": "", "package_unit": ""}, {"name": "Milk", "quantity": "3/4", "unit": "cup", "modifiers": "warm", "package_qty": "", "package_unit": ""}, {"name": "Butter", "quantity": "3 1/2", "unit": "tbsp", "modifiers": "melted", "package_qty": "", "package_unit": ""}, {"name": "Vanilla Extract", "quantity": "1/2", "unit": "tsp", "modifiers": "", "package_qty": "", "package_unit": ""}]}

matched_ingredients:
  [{"raw_name": "All-Purpose Flour", "ingredient_name": "All-Purpose Flour", "quantity": "1 3/16", "unit": "c"}, {"raw_name": "Salt", "ingredient_name": "Salt", "quantity": "1/2", "unit": "tsp"}, {"raw_name": "Baking Powder", "ingredient_name": "Baking Powder", "quantity": "2 1/2", "unit": "tsp"}, {"raw_name": "Sugar", "ingredient_name": "Sugar", "quantity": "1 1/2", "unit": "tbsp"}, {"raw_name": "Egg", "ingredient_name": "Egg", "quantity": "1 1/4", "unit": "whole"}, {"raw_name": "Milk", "ingredient_name": "Milk", "quantity": "3/4", "unit": "c"}, {"raw_name": "Butter", "ingredient_name": "Butter", "quantity": "3 1/2", "unit": "tbsp"}, {"raw_name": "Vanilla Extract", "ingredient_name": "Vanilla Extract", "quantity": "1/2", "unit": "tsp"}]


created_at: 2026-04-04 16:53:24.431662
status: success
provider: claude
filename: American/Breakfast/Pancakes & Waffles/Crêpes.pdf
recipe_title: Crepes
unmatched_items: []
unit_warnings: []
resolution_tiers: {"exact": 7}
raw_ai_response:
  {"title": "Crepes", "description": "A simple and delicious dessert made with flattened white bread filled with a cream cheese mixture, rolled in butter and cinnamon sugar, then baked until golden. Serve with fresh fruit and whipped cream.", "servings": 6, "prep_time": 20, "cook_time": 20, "cuisine": "American", "tags": ["Baked", "Sweet", "Family Friendly", "Kid Friendly", "Few Ingredients", "Make Ahead"], "culinary_type": "Dessert", "instructions": "Step 1: Mix together 1 pound softened cream cheese, 2 egg yolks, and 1/2 cup sugar until well combined.\nStep 2: Flatten 20-30 slices of white bread with crusts cut off using a rolling pin.\nStep 3: Melt 4 tablespoons of butter in a small frying pan (may need more).\nStep 4: Mix together 1/2 cup sugar and 1/2 tablespoon cinnamon in a shallow bowl.\nStep 5: Spread the cream cheese mixture onto each flattened bread slice and roll up.\nStep 6: Roll each bread roll in the melted butter (or brush the butter on, as the bread may soak up a lot).\nStep 7: Roll the buttered bread rolls in the cinnamon-sugar mixture.\nStep 8: Bake at 350\u00b0F for 15-20 minutes.\nStep 9: Serve with fresh fruit topping, whipped cream, or other desired toppings.", "has_ingredient_list": true, "extraction_confidence": "high", "ingredients": [{"name": "Cream Cheese", "quantity": "1", "unit": "lb", "modifiers": "softened", "package_qty": "", "package_unit": ""}, {"name": "Egg Yolk", "quantity": "2", "unit": "whole", "modifiers": "", "package_qty": "", "package_unit": ""}, {"name": "Sugar", "quantity": "1/2", "unit": "cup", "modifiers": "", "package_qty": "", "package_unit": ""}, {"name": "White Bread", "quantity": "25", "unit": "slice", "modifiers": "crusts removed, flattened", "package_qty": "", "package_unit": ""}, {"name": "Butter", "quantity": "4", "unit": "tbsp", "modifiers": "melted", "package_qty": "", "package_unit": ""}, {"name": "Sugar", "quantity": "1/2", "unit": "cup", "modifiers": "", "package_qty": "", "package_unit": ""}, {"name": "Cinnamon", "quantity": "1/2", "unit": "tbsp", "modifiers": "", "package_qty": "", "package_unit": ""}]}

matched_ingredients:
  [{"raw_name": "Cream Cheese", "ingredient_name": "Cream Cheese", "quantity": "1", "unit": "lb"}, {"raw_name": "Egg Yolk", "ingredient_name": "Egg Yolk", "quantity": "2", "unit": "whole"}, {"raw_name": "Sugar", "ingredient_name": "Sugar", "quantity": "1/2", "unit": "c"}, {"raw_name": "White Bread", "ingredient_name": "White Bread", "quantity": "25", "unit": "slice"}, {"raw_name": "Butter", "ingredient_name": "Butter", "quantity": "4", "unit": "tbsp"}, {"raw_name": "Sugar", "ingredient_name": "Sugar", "quantity": "1/2", "unit": "c"}, {"raw_name": "Cinnamon", "ingredient_name": "Cinnamon", "quantity": "1/2", "unit": "tbsp"}]


created_at: 2026-04-04 16:53:53.778814
status: success
provider: claude
filename: American/Breakfast/Pancakes & Waffles/Fluffy Pancakes.pdf
recipe_title: Fluffy Pancakes
unmatched_items: []
unit_warnings: []
resolution_tiers: {"exact": 10}
raw_ai_response:
  {"title": "Fluffy Pancakes", "description": "Tall, fluffy pancakes that are delicious served with butter and syrup or topped with strawberries and whipped cream.", "servings": 4, "prep_time": 10, "cook_time": 10, "cuisine": "American", "tags": ["Quick", "Under 30 Minutes", "Breakfast / Brunch", "Kid Friendly", "Comfort Food", "Family Friendly"], "culinary_type": "Breakfast / Brunch", "instructions": "Step 1: Combine milk with vinegar in a medium bowl and set aside for 5 minutes to sour.\nStep 2: Combine flour, sugar, baking powder, baking soda, and salt in a large mixing bowl. Whisk egg and butter into soured milk. Pour the flour mixture into the wet ingredients and whisk until lumps are gone.\nStep 3: Heat a large skillet over medium heat and coat with cooking spray. Pour 1/4 cupfuls of batter onto the skillet, and cook until bubbles appear on the surface. Flip with a spatula, and cook until browned on the other side.", "has_ingredient_list": true, "extraction_confidence": "high", "ingredients": [{"name": "Milk", "quantity": "3/4", "unit": "cup", "modifiers": "", "package_qty": "", "package_unit": ""}, {"name": "White Wine Vinegar", "quantity": "2", "unit": "tbsp", "modifiers": "", "package_qty": "", "package_unit": ""}, {"name": "All-Purpose Flour", "quantity": "1", "unit": "cup", "modifiers": "", "package_qty": "", "package_unit": ""}, {"name": "Sugar", "quantity": "2", "unit": "tbsp", "modifiers": "", "package_qty": "", "package_unit": ""}, {"name": "Baking Powder", "quantity": "1", "unit": "tsp", "modifiers": "", "package_qty": "", "package_unit": ""}, {"name": "Baking Soda", "quantity": "1/2", "unit": "tsp", "modifiers": "", "package_qty": "", "package_unit": ""}, {"name": "Salt", "quantity": "1/2", "unit": "tsp", "modifiers": "", "package_qty": "", "package_unit": ""}, {"name": "Egg", "quantity": "1", "unit": "whole", "modifiers": "", "package_qty": "", "package_unit": ""}, {"name": "Butter", "quantity": "2", "unit": "tbsp", "modifiers": "melted", "package_qty": "", "package_unit": ""}, {"name": "Cooking Spray", "quantity": "1", "unit": "whole", "modifiers": "", "package_qty": "", "package_unit": ""}]}

matched_ingredients:
  [{"raw_name": "Milk", "ingredient_name": "Milk", "quantity": "3/4", "unit": "c"}, {"raw_name": "White Wine Vinegar", "ingredient_name": "White Wine Vinegar", "quantity": "2", "unit": "tbsp"}, {"raw_name": "All-Purpose Flour", "ingredient_name": "All-Purpose Flour", "quantity": "1", "unit": "c"}, {"raw_name": "Sugar", "ingredient_name": "Sugar", "quantity": "2", "unit": "tbsp"}, {"raw_name": "Baking Powder", "ingredient_name": "Baking Powder", "quantity": "1", "unit": "tsp"}, {"raw_name": "Baking Soda", "ingredient_name": "Baking Soda", "quantity": "1/2", "unit": "tsp"}, {"raw_name": "Salt", "ingredient_name": "Salt", "quantity": "1/2", "unit": "tsp"}, {"raw_name": "Egg", "ingredient_name": "Egg", "quantity": "1", "unit": "whole"}, {"raw_name": "Butter", "ingredient_name": "Butter", "quantity": "2", "unit": "tbsp"}, {"raw_name": "Cooking Spray", "ingredient_name": "Cooking Spray", "quantity": "1", "unit": "whole"}]


created_at: 2026-04-04 16:54:27.591035
status: success
provider: claude
filename: American/Breakfast/Pancakes & Waffles/Fruit buttermilk oven pancakes.pdf
recipe_title: Fruited Buttermilk Oven Pancakes
unmatched_items: []
unit_warnings: []
resolution_tiers: {"exact": 14, "common_name": 1}
raw_ai_response:
  {"title": "Fruited Buttermilk Oven Pancakes", "description": "A baked oven pancake made with buttermilk and topped with fresh or frozen blueberries or pineapple, sprinkled with sugar and cinnamon. Served with optional Orange Butter and maple-flavored syrup.", "servings": 4, "prep_time": 15, "cook_time": 18, "cuisine": "American", "tags": ["Baked", "Breakfast / Brunch", "Family Friendly", "Kid Friendly", "Weekend Project", "Sweet"], "culinary_type": "Breakfast / Brunch", "instructions": "Step 1: In a mixing bowl combine flour, sugar, baking soda, baking powder, and salt.\nStep 2: In another mixing bowl combine egg, buttermilk, and cooking oil. Add all at once to dry ingredients. Stir just till mixed but still slightly lumpy.\nStep 3: Spread batter evenly in a greased and floured 13x10x1-inch baking pan. Sprinkle fruit over top of the batter. Combine sugar and cinnamon; sprinkle evenly over fruit.\nStep 4: Bake in a 350\u00b0F oven for 16 to 18 minutes or till top springs back when lightly touched and top is lightly brown around the edges.\nStep 5: Cut into 12 square pancakes. Serve with Orange Butter and maple-flavored syrup, if desired.", "has_ingredient_list": true, "extraction_confidence": "high", "ingredients": [{"name": "All-Purpose Flour", "quantity": "1 1/2", "unit": "cup", "modifiers": "", "package_qty": "", "package_unit": ""}, {"name": "Sugar", "quantity": "2", "unit": "tbsp", "modifiers": "", "package_qty": "", "package_unit": ""}, {"name": "Baking Soda", "quantity": "1", "unit": "tsp", "modifiers": "", "package_qty": "", "package_unit": ""}, {"name": "Baking Powder", "quantity": "1", "unit": "tsp", "modifiers": "", "package_qty": "", "package_unit": ""}, {"name": "Salt", "quantity": "1/4", "unit": "tsp", "modifiers": "", "package_qty": "", "package_unit": ""}, {"name": "Egg", "quantity": "1", "unit": "whole", "modifiers": "beaten", "package_qty": "", "package_unit": ""}, {"name": "Buttermilk", "quantity": "1 1/4", "unit": "cup", "modifiers": "", "package_qty": "", "package_unit": ""}, {"name": "Cooking oil", "quantity": "3", "unit": "tbsp", "modifiers": "", "package_qty": "", "package_unit": ""}, {"name": "Blueberries", "quantity": "3/4", "unit": "cup", "modifiers": "fresh or frozen, rinsed, drained", "package_qty": "", "package_unit": ""}, {"name": "Sugar", "quantity": "2", "unit": "tbsp", "modifiers": "", "package_qty": "", "package_unit": ""}, {"name": "Cinnamon", "quantity": "1/2", "unit": "tsp", "modifiers": "ground", "package_qty": "", "package_unit": ""}, {"name": "Butter", "quantity": "1/3", "unit": "cup", "modifiers": "softened, optional", "package_qty": "", "package_unit": ""}, {"name": "Orange Zest", "quantity": "1", "unit": "tsp", "modifiers": "finely shredded, optional", "package_qty": "", "package_unit": ""}, {"name": "Orange Juice", "quantity": "1", "unit": "tbsp", "modifiers": "optional", "package_qty": "", "package_unit": ""}, {"name": "Maple Syrup", "quantity": "1", "unit": "whole", "modifiers": "optional", "package_qty": "", "package_unit": ""}]}

matched_ingredients:
  [{"raw_name": "All-Purpose Flour", "ingredient_name": "All-Purpose Flour", "quantity": "1 1/2", "unit": "c"}, {"raw_name": "Sugar", "ingredient_name": "Sugar", "quantity": "2", "unit": "tbsp"}, {"raw_name": "Baking Soda", "ingredient_name": "Baking Soda", "quantity": "1", "unit": "tsp"}, {"raw_name": "Baking Powder", "ingredient_name": "Baking Powder", "quantity": "1", "unit": "tsp"}, {"raw_name": "Salt", "ingredient_name": "Salt", "quantity": "1/4", "unit": "tsp"}, {"raw_name": "Egg", "ingredient_name": "Egg", "quantity": "1", "unit": "whole"}, {"raw_name": "Buttermilk", "ingredient_name": "Buttermilk", "quantity": "1 1/4", "unit": "c"}, {"raw_name": "Cooking oil", "ingredient_name": "Cooking oil", "quantity": "3", "unit": "tbsp"}, {"raw_name": "Blueberry", "ingredient_name": "Blueberry", "quantity": "3/4", "unit": "c"}, {"raw_name": "Sugar", "ingredient_name": "Sugar", "quantity": "2", "unit": "tbsp"}, {"raw_name": "Cinnamon", "ingredient_name": "Cinnamon", "quantity": "1/2", "unit": "tsp"}, {"raw_name": "Butter", "ingredient_name": "Butter", "quantity": "1/3", "unit": "c"}, {"raw_name": "Orange Zest", "ingredient_name": "Orange Zest", "quantity": "1", "unit": "tsp"}, {"raw_name": "Orange Juice", "ingredient_name": "Orange Juice", "quantity": "1", "unit": "tbsp"}, {"raw_name": "Maple Syrup", "ingredient_name": "Maple Syrup", "quantity": "1", "unit": "whole"}]


created_at: 2026-04-04 16:55:21.881809
status: success
provider: claude
filename: American/Breakfast/Pancakes & Waffles/IHOP pancakes.pdf
recipe_title: IHOP Pancakes
unmatched_items: []
unit_warnings: []
resolution_tiers: {"exact": 8}
raw_ai_response:
  {"title": "IHOP Pancakes", "description": "A copycat recipe for IHOP's famous fluffy pancakes, made with buttermilk and simple pantry ingredients. Makes 8-10 light, golden pancakes.", "servings": 4, "prep_time": 0, "cook_time": 0, "cuisine": "American", "tags": ["Copycat", "Breakfast / Brunch", "Kid Friendly", "Family Friendly", "Few Ingredients", "Stovetop"], "culinary_type": "Breakfast / Brunch", "instructions": "Step 1: Preheat a skillet over medium heat. Use a pan with a nonstick surface, or use nonstick spray.\nStep 2: In a blender, or with a mixer, combine all of the remaining ingredients until smooth.\nStep 3: Pour the batter by spoonfuls into the hot pan, forming 5\" circles.\nStep 4: When the edges appear to harden, flip the pancakes; they should be light brown.\nStep 5: Cook on the other side for the same amount of time. They should be light brown.\nMakes 8-10 pancakes.", "has_ingredient_list": true, "extraction_confidence": "high", "ingredients": [{"name": "Cooking Spray", "quantity": "1", "unit": "whole", "modifiers": "", "package_qty": "", "package_unit": ""}, {"name": "All-Purpose Flour", "quantity": "1 1/4", "unit": "cup", "modifiers": "", "package_qty": "", "package_unit": ""}, {"name": "Egg", "quantity": "1", "unit": "whole", "modifiers": "", "package_qty": "", "package_unit": ""}, {"name": "Buttermilk", "quantity": "1", "unit": "cup", "modifiers": "", "package_qty": "", "package_unit": ""}, {"name": "Granulated Sugar", "quantity": "1/4", "unit": "cup", "modifiers": "", "package_qty": "", "package_unit": ""}, {"name": "Baking Powder", "quantity": "1", "unit": "tsp", "modifiers": "heaping", "package_qty": "", "package_unit": ""}, {"name": "Baking Soda", "quantity": "1", "unit": "tsp", "modifiers": "", "package_qty": "", "package_unit": ""}, {"name": "Cooking oil", "quantity": "1/4", "unit": "cup", "modifiers": "", "package_qty": "", "package_unit": ""}]}

matched_ingredients:
  [{"raw_name": "Cooking Spray", "ingredient_name": "Cooking Spray", "quantity": "1", "unit": "whole"}, {"raw_name": "All-Purpose Flour", "ingredient_name": "All-Purpose Flour", "quantity": "1 1/4", "unit": "c"}, {"raw_name": "Egg", "ingredient_name": "Egg", "quantity": "1", "unit": "whole"}, {"raw_name": "Buttermilk", "ingredient_name": "Buttermilk", "quantity": "1", "unit": "c"}, {"raw_name": "Granulated Sugar", "ingredient_name": "Granulated Sugar", "quantity": "1/4", "unit": "c"}, {"raw_name": "Baking Powder", "ingredient_name": "Baking Powder", "quantity": "1", "unit": "tsp"}, {"raw_name": "Baking Soda", "ingredient_name": "Baking Soda", "quantity": "1", "unit": "tsp"}, {"raw_name": "Cooking oil", "ingredient_name": "Cooking oil", "quantity": "1/4", "unit": "c"}]


created_at: 2026-04-04 16:55:53.338524
status: success
provider: claude
filename: American/Breakfast/Pancakes & Waffles/Pecan French Toast.pdf
recipe_title: McKay House Pecan French Toast
unmatched_items: []
unit_warnings: []
resolution_tiers: {"exact": 10}
raw_ai_response:
  {"title": "McKay House Pecan French Toast", "description": "A make-ahead baked French toast soaked overnight in a spiced egg and orange juice mixture, then baked with melted butter, pecans, and grated orange peel until golden.", "servings": 4, "prep_time": 15, "cook_time": 25, "cuisine": "American", "tags": ["Make Ahead", "Baked", "Breakfast / Brunch", "Sweet", "Family Friendly", "Holiday"], "culinary_type": "Breakfast / Brunch", "instructions": "Step 1: Using a wire whisk, beat together eggs, orange juice, milk, sugar, nutmeg, and vanilla.\nStep 2: Place bread slices with edges touching in a single layer in a large flat dish.\nStep 3: Pour milk mixture over bread, cover and refrigerate overnight, turning once.\nStep 4: When ready to cook, preheat oven to 400\u00b0F.\nStep 5: Pour melted butter on a jellyroll pan, spreading evenly.\nStep 6: Arrange soaked bread slices in a single layer on pan.\nStep 7: Sprinkle evenly with orange peel and pecans.\nStep 8: Bake until golden, 20 to 25 minutes. Check slices during last 10 minutes of baking time to avoid burning.\nStep 9: Serve with maple syrup and butter or fresh fruit.", "has_ingredient_list": true, "extraction_confidence": "high", "ingredients": [{"name": "Egg", "quantity": "4", "unit": "whole", "modifiers": "", "package_qty": "", "package_unit": ""}, {"name": "Orange Juice", "quantity": "2/3", "unit": "cup", "modifiers": "", "package_qty": "", "package_unit": ""}, {"name": "Milk", "quantity": "1/3", "unit": "cup", "modifiers": "", "package_qty": "", "package_unit": ""}, {"name": "Sugar", "quantity": "1/4", "unit": "cup", "modifiers": "", "package_qty": "", "package_unit": ""}, {"name": "Nutmeg", "quantity": "1/4", "unit": "tsp", "modifiers": "ground", "package_qty": "", "package_unit": ""}, {"name": "Vanilla Extract", "quantity": "1/4", "unit": "tsp", "modifiers": "", "package_qty": "", "package_unit": ""}, {"name": "Italian Bread", "quantity": "1/2", "unit": "whole", "modifiers": "cut in 1-inch slices", "package_qty": "8", "package_unit": "oz"}, {"name": "Butter", "quantity": "1/3", "unit": "cup", "modifiers": "melted", "package_qty": "", "package_unit": ""}, {"name": "Pecans", "quantity": "1/2", "unit": "cup", "modifiers": "pieces", "package_qty": "", "package_unit": ""}, {"name": "Orange Zest", "quantity": "2", "unit": "tbsp", "modifiers": "to taste", "package_qty": "", "package_unit": ""}]}

matched_ingredients:
  [{"raw_name": "Egg", "ingredient_name": "Egg", "quantity": "4", "unit": "whole"}, {"raw_name": "Orange Juice", "ingredient_name": "Orange Juice", "quantity": "2/3", "unit": "c"}, {"raw_name": "Milk", "ingredient_name": "Milk", "quantity": "1/3", "unit": "c"}, {"raw_name": "Sugar", "ingredient_name": "Sugar", "quantity": "1/4", "unit": "c"}, {"raw_name": "Nutmeg", "ingredient_name": "Nutmeg", "quantity": "1/4", "unit": "tsp"}, {"raw_name": "Vanilla Extract", "ingredient_name": "Vanilla Extract", "quantity": "1/4", "unit": "tsp"}, {"raw_name": "Italian Bread", "ingredient_name": "Italian Bread", "quantity": "1/2", "unit": "whole"}, {"raw_name": "Butter", "ingredient_name": "Butter", "quantity": "1/3", "unit": "c"}, {"raw_name": "Pecans", "ingredient_name": "Pecans", "quantity": "1/2", "unit": "c"}, {"raw_name": "Orange Zest", "ingredient_name": "Orange Zest", "quantity": "2", "unit": "tbsp"}]


created_at: 2026-04-04 16:56:28.269814
status: success
provider: claude
filename: American/Casseroles & Bakes/BUTTERNUT SQUASH CASSEROLE.pdf
recipe_title: Butternut Squash Casserole
unmatched_items: []
unit_warnings: []
resolution_tiers: {"exact": 10, "common_name": 1}
raw_ai_response:
  {"title": "Butternut Squash Casserole", "description": "A savory-sweet butternut squash casserole with saut\u00e9ed onion, garlic, and fresh cranberries, topped with buttered breadcrumbs and baked until golden.", "servings": 4, "prep_time": 10, "cook_time": 110, "cuisine": "American", "tags": ["Comfort Food", "Baked", "Holiday", "Potluck", "Family Friendly", "Make Ahead"], "culinary_type": "Side Dish", "instructions": "Step 1: Bring squash and water to cover to a boil; cook 30 minutes or until tender. Remove from heat; drain. Mash until smooth.\nStep 2: Melt 1 tablespoon butter in skillet. Add onion and garlic; saut\u00e9 5 minutes or until tender. Remove from heat.\nStep 3: Stir in squash, 2 tablespoons butter, eggs, sugar, salt, and pepper. Fold in cranberries.\nStep 4: Spoon mixture into a lightly greased 1-quart baking dish.\nStep 5: Combine breadcrumbs and remaining 1 tablespoon butter. Sprinkle over casserole.\nStep 6: Bake at 375\u00b0F for 1 hour and 15 minutes or until set and golden.", "has_ingredient_list": true, "extraction_confidence": "high", "ingredients": [{"name": "Butternut squash", "quantity": "1", "unit": "whole", "modifiers": "peeled, seeded, cut into 2-inch cubes", "package_qty": "", "package_unit": ""}, {"name": "Butter", "quantity": "1", "unit": "tbsp", "modifiers": "", "package_qty": "", "package_unit": ""}, {"name": "Onion", "quantity": "1", "unit": "whole", "modifiers": "small, minced", "package_qty": "", "package_unit": ""}, {"name": "Garlic", "quantity": "1", "unit": "clove", "modifiers": "minced", "package_qty": "", "package_unit": ""}, {"name": "Butter", "quantity": "3", "unit": "tbsp", "modifiers": "melted, divided", "package_qty": "", "package_unit": ""}, {"name": "Egg", "quantity": "2", "unit": "whole", "modifiers": "large, lightly beaten", "package_qty": "", "package_unit": ""}, {"name": "Sugar", "quantity": "1", "unit": "tbsp", "modifiers": "", "package_qty": "", "package_unit": ""}, {"name": "Salt", "quantity": "1", "unit": "tsp", "modifiers": "", "package_qty": "", "package_unit": ""}, {"name": "Black Pepper", "quantity": "1/4", "unit": "tsp", "modifiers": "", "package_qty": "", "package_unit": ""}, {"name": "Cranberries", "quantity": "1/4", "unit": "cup", "modifiers": "fresh, chopped", "package_qty": "", "package_unit": ""}, {"name": "Bread Crumbs", "quantity": "1", "unit": "cup", "modifiers": "fresh, soft", "package_qty": "", "package_unit": ""}]}

matched_ingredients:
  [{"raw_name": "Butternut squash", "ingredient_name": "Butternut squash", "quantity": "1", "unit": "whole"}, {"raw_name": "Butter", "ingredient_name": "Butter", "quantity": "1", "unit": "tbsp"}, {"raw_name": "Onion", "ingredient_name": "Onion", "quantity": "1", "unit": "whole"}, {"raw_name": "Garlic", "ingredient_name": "Garlic", "quantity": "1", "unit": "clove"}, {"raw_name": "Butter", "ingredient_name": "Butter", "quantity": "3", "unit": "tbsp"}, {"raw_name": "Egg", "ingredient_name": "Egg", "quantity": "2", "unit": "whole"}, {"raw_name": "Sugar", "ingredient_name": "Sugar", "quantity": "1", "unit": "tbsp"}, {"raw_name": "Salt", "ingredient_name": "Salt", "quantity": "1", "unit": "tsp"}, {"raw_name": "Black Pepper", "ingredient_name": "Black Pepper", "quantity": "1/4", "unit": "tsp"}, {"raw_name": "Cranberry", "ingredient_name": "Cranberry", "quantity": "1/4", "unit": "c"}, {"raw_name": "Bread Crumbs", "ingredient_name": "Bread Crumbs", "quantity": "1", "unit": "c"}]


created_at: 2026-04-04 16:56:40.774040
status: success
provider: claude
filename: American/Casseroles & Bakes/Baked honey mustard chicken.pdf
recipe_title: Baked Honey Mustard Chicken
unmatched_items: []
unit_warnings: []
resolution_tiers: {"exact": 8}
raw_ai_response:
  {"title": "Baked Honey Mustard Chicken", "description": "Tender skinless chicken breasts baked in a sweet and tangy honey mustard glaze with herbs. Simple to prepare and full of flavor.", "servings": 4, "prep_time": 15, "cook_time": 45, "cuisine": "American", "tags": ["Baked", "Weeknight", "Family Friendly", "High Protein", "Few Ingredients", "Savory"], "culinary_type": "Main Course", "instructions": "Step 1: Preheat oven to 350\u00b0F.\nStep 2: Sprinkle chicken breasts with salt and pepper to taste and place in a lightly greased 9x13 inch baking dish.\nStep 3: In a small bowl combine honey, mustard, basil, paprika, and parsley. Mix well. Pour half of the mixture on the chicken and brush on. Bake for 30 minutes. Turn over chicken and brush on the rest of the mixture and bake 10-15 minutes. Cool for 10 minutes.", "has_ingredient_list": true, "extraction_confidence": "high", "ingredients": [{"name": "Chicken Breast", "quantity": "6", "unit": "whole", "modifiers": "skinless, halved", "package_qty": "", "package_unit": ""}, {"name": "Salt", "quantity": "1", "unit": "pinch", "modifiers": "to taste", "package_qty": "", "package_unit": ""}, {"name": "Black Pepper", "quantity": "1", "unit": "pinch", "modifiers": "to taste", "package_qty": "", "package_unit": ""}, {"name": "Honey", "quantity": "1/2", "unit": "cup", "modifiers": "", "package_qty": "", "package_unit": ""}, {"name": "Mustard", "quantity": "1/2", "unit": "cup", "modifiers": "prepared", "package_qty": "", "package_unit": ""}, {"name": "Basil", "quantity": "1", "unit": "tsp", "modifiers": "dried", "package_qty": "", "package_unit": ""}, {"name": "Paprika", "quantity": "1", "unit": "tsp", "modifiers": "", "package_qty": "", "package_unit": ""}, {"name": "Parsley", "quantity": "1/2", "unit": "tsp", "modifiers": "dried", "package_qty": "", "package_unit": ""}]}

matched_ingredients:
  [{"raw_name": "Chicken Breast", "ingredient_name": "Chicken Breast", "quantity": "6", "unit": "whole"}, {"raw_name": "Salt", "ingredient_name": "Salt", "quantity": "1", "unit": "pinch"}, {"raw_name": "Black Pepper", "ingredient_name": "Black Pepper", "quantity": "1", "unit": "pinch"}, {"raw_name": "Honey", "ingredient_name": "Honey", "quantity": "1/2", "unit": "c"}, {"raw_name": "Mustard", "ingredient_name": "Mustard", "quantity": "1/2", "unit": "c"}, {"raw_name": "Basil", "ingredient_name": "Basil", "quantity": "1", "unit": "tsp"}, {"raw_name": "Paprika", "ingredient_name": "Paprika", "quantity": "1", "unit": "tsp"}, {"raw_name": "Parsley", "ingredient_name": "Parsley", "quantity": "1/2", "unit": "tsp"}]


created_at: 2026-04-04 16:57:24.893508
status: success
provider: claude
filename: American/Casseroles & Bakes/Bang Bang Chicken.pdf
recipe_title: Bang Bang Chicken
unmatched_items: []
unit_warnings: []
resolution_tiers: {"exact": 14}
raw_ai_response:
  {"title": "Bang Bang Chicken", "description": "Amazingly crisp chicken bites dredged in a buttermilk batter and Panko breadcrumbs, then pan-fried and drizzled with a sweet chili mayo sauce.", "servings": 4, "prep_time": 20, "cook_time": 10, "cuisine": "American", "tags": ["Quick", "Under 30 Minutes", "Crispy", "Fried", "Stovetop", "Family Friendly"], "culinary_type": "Main Course", "instructions": "Step 1: To make the sauce, whisk together mayonnaise, sweet chili sauce, honey and Frank's Hot Sauce in a small bowl; set aside.\nStep 2: Heat vegetable oil in a large skillet over medium high heat.\nStep 3: In a large bowl, whisk together buttermilk, flour, cornstarch, egg, hot sauce, salt and pepper, to taste.\nStep 4: Working one at a time, dip chicken into buttermilk mixture, then dredge in Panko, pressing to coat.\nStep 5: Working in batches, add chicken to the skillet and cook until evenly golden and crispy, about 2-3 minutes. Transfer to a paper towel-lined plate.\nStep 6: Serve immediately, drizzled with sweet chili sauce.", "has_ingredient_list": true, "extraction_confidence": "high", "ingredients": [{"name": "Vegetable Oil", "quantity": "1/2", "unit": "cup", "modifiers": "or more, as needed", "package_qty": "", "package_unit": ""}, {"name": "Buttermilk", "quantity": "1", "unit": "cup", "modifiers": "", "package_qty": "", "package_unit": ""}, {"name": "All-Purpose Flour", "quantity": "3/4", "unit": "cup", "modifiers": "", "package_qty": "", "package_unit": ""}, {"name": "Cornstarch", "quantity": "1/2", "unit": "cup", "modifiers": "", "package_qty": "", "package_unit": ""}, {"name": "Egg", "quantity": "1", "unit": "whole", "modifiers": "large", "package_qty": "", "package_unit": ""}, {"name": "Hot Sauce", "quantity": "1", "unit": "tbsp", "modifiers": "", "package_qty": "", "package_unit": ""}, {"name": "Salt", "quantity": "1", "unit": "pinch", "modifiers": "to taste, kosher", "package_qty": "", "package_unit": ""}, {"name": "Black Pepper", "quantity": "1", "unit": "pinch", "modifiers": "to taste, freshly ground", "package_qty": "", "package_unit": ""}, {"name": "Chicken Breast", "quantity": "1", "unit": "lb", "modifiers": "boneless, skinless, cut into 1-inch chunks", "package_qty": "", "package_unit": ""}, {"name": "Panko Bread Crumbs", "quantity": "1", "unit": "cup", "modifiers": "", "package_qty": "", "package_unit": ""}, {"name": "Mayonnaise", "quantity": "1/4", "unit": "cup", "modifiers": "", "package_qty": "", "package_unit": ""}, {"name": "Thai Sweet Chili Sauce", "quantity": "2", "unit": "tbsp", "modifiers": "", "package_qty": "", "package_unit": ""}, {"name": "Honey", "quantity": "1", "unit": "tbsp", "modifiers": "", "package_qty": "", "package_unit": ""}, {"name": "Hot Sauce", "quantity": "2", "unit": "tsp", "modifiers": "", "package_qty": "", "package_unit": ""}]}

matched_ingredients:
  [{"raw_name": "Vegetable Oil", "ingredient_name": "Vegetable Oil", "quantity": "1/2", "unit": "c"}, {"raw_name": "Buttermilk", "ingredient_name": "Buttermilk", "quantity": "1", "unit": "c"}, {"raw_name": "All-Purpose Flour", "ingredient_name": "All-Purpose Flour", "quantity": "3/4", "unit": "c"}, {"raw_name": "Cornstarch", "ingredient_name": "Cornstarch", "quantity": "1/2", "unit": "c"}, {"raw_name": "Egg", "ingredient_name": "Egg", "quantity": "1", "unit": "whole"}, {"raw_name": "Hot Sauce", "ingredient_name": "Hot Sauce", "quantity": "1", "unit": "tbsp"}, {"raw_name": "Salt", "ingredient_name": "Salt", "quantity": "1", "unit": "pinch"}, {"raw_name": "Black Pepper", "ingredient_name": "Black Pepper", "quantity": "1", "unit": "pinch"}, {"raw_name": "Chicken Breast", "ingredient_name": "Chicken Breast", "quantity": "1", "unit": "lb"}, {"raw_name": "Panko Bread Crumbs", "ingredient_name": "Panko Bread Crumbs", "quantity": "1", "unit": "c"}, {"raw_name": "Mayonnaise", "ingredient_name": "Mayonnaise", "quantity": "1/4", "unit": "c"}, {"raw_name": "Thai Sweet Chili Sauce", "ingredient_name": "Thai Sweet Chili Sauce", "quantity": "2", "unit": "tbsp"}, {"raw_name": "Honey", "ingredient_name": "Honey", "quantity": "1", "unit": "tbsp"}, {"raw_name": "Hot Sauce", "ingredient_name": "Hot Sauce", "quantity": "2", "unit": "tsp"}]


created_at: 2026-04-04 16:57:41.793483
status: success
provider: claude
filename: American/Casseroles & Bakes/Chicken & Broccoli Casserole.pdf
recipe_title: Stovetop Chicken and Broccoli Casserole
unmatched_items: []
unit_warnings: []
resolution_tiers: {"exact": 12}
raw_ai_response:
  {"title": "Stovetop Chicken and Broccoli Casserole", "description": "A lightened-up cheesy chicken and broccoli casserole made entirely on the stovetop. All raw ingredients are layered in a skillet and simmered for a quick weeknight dinner.", "servings": 6, "prep_time": 25, "cook_time": 21, "cuisine": "American", "tags": ["Comfort Food", "Stovetop", "Weeknight", "High Protein", "Family Friendly", "One Pan"], "culinary_type": "Main Course", "instructions": "Step 1: Place noodles in a large skillet. Pour broth over the noodles. Layer chicken, then broccoli over the noodles.\nStep 2: Whisk milk, mayonnaise, flour, dry mustard, garlic powder, salt, and pepper in a medium bowl. Pour over the broccoli.\nStep 3: Bring to a simmer over medium-high heat. Reduce heat to maintain a simmer, cover and cook, stirring once or twice, until the noodles and chicken are cooked through, 15 to 18 minutes.\nStep 4: Meanwhile, position rack in upper third of oven; preheat broiler.\nStep 5: When the casserole is done, sprinkle cheese on top and broil until lightly browned, about 3 minutes.", "has_ingredient_list": true, "extraction_confidence": "high", "ingredients": [{"name": "Egg Noodles", "quantity": "8", "unit": "oz", "modifiers": "whole wheat", "package_qty": "", "package_unit": ""}, {"name": "Chicken Broth", "quantity": "1", "unit": "can", "modifiers": "reduced-sodium", "package_qty": "14", "package_unit": "oz"}, {"name": "Chicken Breast", "quantity": "1", "unit": "lb", "modifiers": "boneless, skinless, trimmed, cut into 3/4-inch pieces", "package_qty": "", "package_unit": ""}, {"name": "Broccoli", "quantity": "1", "unit": "package", "modifiers": "frozen florets, thawed, chopped", "package_qty": "16", "package_unit": "oz"}, {"name": "Milk", "quantity": "1 1/2", "unit": "cup", "modifiers": "skim", "package_qty": "", "package_unit": ""}, {"name": "Mayonnaise", "quantity": "1/2", "unit": "cup", "modifiers": "reduced-fat", "package_qty": "", "package_unit": ""}, {"name": "All-Purpose Flour", "quantity": "3", "unit": "tbsp", "modifiers": "", "package_qty": "", "package_unit": ""}, {"name": "Mustard", "quantity": "1 1/2", "unit": "tsp", "modifiers": "dry", "package_qty": "", "package_unit": ""}, {"name": "Garlic Powder", "quantity": "1/2", "unit": "tsp", "modifiers": "", "package_qty": "", "package_unit": ""}, {"name": "Salt", "quantity": "1/4", "unit": "tsp", "modifiers": "", "package_qty": "", "package_unit": ""}, {"name": "Black Pepper", "quantity": "1/4", "unit": "tsp", "modifiers": "freshly ground", "package_qty": "", "package_unit": ""}, {"name": "Cheddar Cheese", "quantity": "1 1/2", "unit": "cup", "modifiers": "shredded", "package_qty": "", "package_unit": ""}]}

matched_ingredients:
  [{"raw_name": "Egg", "ingredient_name": "Egg", "quantity": "8", "unit": "oz"}, {"raw_name": "Chicken Broth", "ingredient_name": "Chicken Broth", "quantity": "1", "unit": "can"}, {"raw_name": "Chicken Breast", "ingredient_name": "Chicken Breast", "quantity": "1", "unit": "lb"}, {"raw_name": "Broccoli", "ingredient_name": "Broccoli", "quantity": "1", "unit": "pkg"}, {"raw_name": "Milk", "ingredient_name": "Milk", "quantity": "1 1/2", "unit": "c"}, {"raw_name": "Mayonnaise", "ingredient_name": "Mayonnaise", "quantity": "1/2", "unit": "c"}, {"raw_name": "All-Purpose Flour", "ingredient_name": "All-Purpose Flour", "quantity": "3", "unit": "tbsp"}, {"raw_name": "Mustard", "ingredient_name": "Mustard", "quantity": "1 1/2", "unit": "tsp"}, {"raw_name": "Garlic Powder", "ingredient_name": "Garlic Powder", "quantity": "1/2", "unit": "tsp"}, {"raw_name": "Salt", "ingredient_name": "Salt", "quantity": "1/4", "unit": "tsp"}, {"raw_name": "Black Pepper", "ingredient_name": "Black Pepper", "quantity": "1/4", "unit": "tsp"}, {"raw_name": "Cheddar Cheese", "ingredient_name": "Cheddar Cheese", "quantity": "1 1/2", "unit": "c"}]


created_at: 2026-04-04 16:58:31.580506
status: success
provider: claude
filename: American/Casseroles & Bakes/Chicken Pasta Bake.pdf
recipe_title: Chick-Chick Chicken Pasta Bake
unmatched_items: []
unit_warnings: []
resolution_tiers: {"exact": 9}
raw_ai_response:
  {"title": "Chick-Chick Chicken Pasta Bake", "description": "A comforting pasta bake inspired by the Dale family, featuring chicken, mushrooms, and butternut squash puree, topped with cheesy breadcrumbs.", "servings": 2, "prep_time": 20, "cook_time": 40, "cuisine": "British", "tags": ["Comfort Food", "Baked", "Family Friendly", "Kid Friendly", "Weeknight", "Hearty"], "culinary_type": "Main Course", "instructions": "Step 1: Preheat the oven to 400 degrees F. Steam the butternut squash and carrot pieces for 10 minutes until tender, then process them together with a handheld immersion blender until you have a soft puree.\nStep 2: Heat the oil in a medium saucepan and add the chicken pieces. Cook the chicken for 10 minutes, turning occasionally, until cooked through, then add the mushrooms and cook for a further 4-5 minutes. Stir in 1/2 cup of the butternut squash and carrot puree (freeze any you have left over), then add the milk, stir, and cook for a further 1 minute. Remove the mixture from the heat.\nStep 3: Meanwhile, cook the pasta according to the packet instructions until al dente. Drain, and then add the pasta to the chicken mixture and mix together thoroughly. Transfer everything to a small, shallow ovenproof dish.\nStep 4: Using a food processor, process the bread into breadcrumbs, then place them in a bowl and stir through the grated Cheddar. Spoon the cheesy breadcrumb mixture over the pasta bake and cook in the oven for 20 minutes until the top is golden and crispy.", "has_ingredient_list": true, "extraction_confidence": "high", "ingredients": [{"name": "Butternut squash", "quantity": "1/2", "unit": "whole", "modifiers": "peeled, seeded, diced", "package_qty": "", "package_unit": ""}, {"name": "Carrot", "quantity": "1", "unit": "whole", "modifiers": "diced", "package_qty": "", "package_unit": ""}, {"name": "Olive Oil", "quantity": "1", "unit": "tsp", "modifiers": "", "package_qty": "", "package_unit": ""}, {"name": "Chicken Breast", "quantity": "1", "unit": "whole", "modifiers": "skinless, boneless, diced", "package_qty": "", "package_unit": ""}, {"name": "Mushroom", "quantity": "1 1/2", "unit": "cup", "modifiers": "finely sliced", "package_qty": "", "package_unit": ""}, {"name": "Milk", "quantity": "1/3", "unit": "cup", "modifiers": "whole", "package_qty": "", "package_unit": ""}, {"name": "Pasta", "quantity": "4", "unit": "oz", "modifiers": "small shapes", "package_qty": "", "package_unit": ""}, {"name": "Bread", "quantity": "1", "unit": "slice", "modifiers": "thick, country-style", "package_qty": "", "package_unit": ""}, {"name": "Cheddar Cheese", "quantity": "1/4", "unit": "cup", "modifiers": "grated", "package_qty": "", "package_unit": ""}]}

matched_ingredients:
  [{"raw_name": "Butternut squash", "ingredient_name": "Butternut squash", "quantity": "1/2", "unit": "whole"}, {"raw_name": "Carrot", "ingredient_name": "Carrot", "quantity": "1", "unit": "whole"}, {"raw_name": "Olive Oil", "ingredient_name": "Olive Oil", "quantity": "1", "unit": "tsp"}, {"raw_name": "Chicken Breast", "ingredient_name": "Chicken Breast", "quantity": "1", "unit": "whole"}, {"raw_name": "Mushroom", "ingredient_name": "Mushroom", "quantity": "1 1/2", "unit": "c"}, {"raw_name": "Milk", "ingredient_name": "Milk", "quantity": "1/3", "unit": "c"}, {"raw_name": "Pasta", "ingredient_name": "Pasta", "quantity": "4", "unit": "oz"}, {"raw_name": "Bread", "ingredient_name": "Bread", "quantity": "1", "unit": "slice"}, {"raw_name": "Cheddar Cheese", "ingredient_name": "Cheddar Cheese", "quantity": "1/4", "unit": "c"}]


created_at: 2026-04-04 16:58:44.977771
status: success
provider: claude
filename: American/Casseroles & Bakes/Creamy Swiss Chicken Bake.pdf
recipe_title: Creamy Swiss Chicken Bake
unmatched_items: []
unit_warnings: []
resolution_tiers: {"exact": 9}
raw_ai_response:
  {"title": "Creamy Swiss Chicken Bake", "description": "A simple and comforting baked chicken dish topped with Swiss cheese and a creamy Parmesan sauce. Serve over rice for a complete meal.", "servings": 4, "prep_time": 10, "cook_time": 60, "cuisine": "American", "tags": ["Comfort Food", "Baked", "Family Friendly", "Weeknight", "Creamy", "High Protein"], "culinary_type": "Main Course", "instructions": "Step 1: Preheat oven to 375.\nStep 2: Pat chicken dry and place in a greased 9x13 pan.\nStep 3: Add sliced cheese on top of chicken breasts.\nStep 4: In a bowl mix mayonnaise, sour cream, 1/2 cup Parmesan cheese, salt, pepper and garlic powder. Spread this over chicken and sprinkle with remaining Parmesan cheese.\nStep 5: Bake for 1 hour. Serve over rice if desired or serve alone.", "has_ingredient_list": true, "extraction_confidence": "high", "ingredients": [{"name": "Chicken Breast", "quantity": "4", "unit": "whole", "modifiers": "boneless, skinless", "package_qty": "", "package_unit": ""}, {"name": "Swiss Cheese", "quantity": "6", "unit": "slice", "modifiers": "", "package_qty": "", "package_unit": ""}, {"name": "Mayonnaise", "quantity": "1/2", "unit": "cup", "modifiers": "", "package_qty": "", "package_unit": ""}, {"name": "Sour Cream", "quantity": "1/2", "unit": "cup", "modifiers": "", "package_qty": "", "package_unit": ""}, {"name": "Parmesan Cheese", "quantity": "3/4", "unit": "cup", "modifiers": "grated, divided", "package_qty": "", "package_unit": ""}, {"name": "Salt", "quantity": "1/2", "unit": "tsp", "modifiers": "", "package_qty": "", "package_unit": ""}, {"name": "Black Pepper", "quantity": "1/2", "unit": "tsp", "modifiers": "", "package_qty": "", "package_unit": ""}, {"name": "Garlic Powder", "quantity": "1", "unit": "tsp", "modifiers": "", "package_qty": "", "package_unit": ""}, {"name": "Rice", "quantity": "1", "unit": "cup", "modifiers": "cooked, optional", "package_qty": "", "package_unit": ""}]}

matched_ingredients:
  [{"raw_name": "Chicken Breast", "ingredient_name": "Chicken Breast", "quantity": "4", "unit": "whole"}, {"raw_name": "Swiss Cheese", "ingredient_name": "Swiss Cheese", "quantity": "6", "unit": "slice"}, {"raw_name": "Mayonnaise", "ingredient_name": "Mayonnaise", "quantity": "1/2", "unit": "c"}, {"raw_name": "Sour Cream", "ingredient_name": "Sour Cream", "quantity": "1/2", "unit": "c"}, {"raw_name": "Parmesan Cheese", "ingredient_name": "Parmesan Cheese", "quantity": "3/4", "unit": "c"}, {"raw_name": "Salt", "ingredient_name": "Salt", "quantity": "1/2", "unit": "tsp"}, {"raw_name": "Black Pepper", "ingredient_name": "Black Pepper", "quantity": "1/2", "unit": "tsp"}, {"raw_name": "Garlic Powder", "ingredient_name": "Garlic Powder", "quantity": "1", "unit": "tsp"}, {"raw_name": "Rice", "ingredient_name": "Rice", "quantity": "1", "unit": "c"}]


created_at: 2026-04-04 16:59:30.935617
status: success
provider: claude
filename: American/Casseroles & Bakes/Honey-mustard chicken.pdf
recipe_title: Honey-Mustard Chicken
unmatched_items: []
unit_warnings: []
resolution_tiers: {"exact": 5}
raw_ai_response:
  {"title": "Honey-Mustard Chicken", "description": "A simple and flavorful oven-baked chicken glazed with a honey-Dijon mustard sauce infused with fresh dill and orange peel. Ready in under 45 minutes with minimal prep.", "servings": 4, "prep_time": 10, "cook_time": 30, "cuisine": "American", "tags": ["Baked", "Family Friendly", "Weeknight", "Under 1 Hour", "Few Ingredients", "Make Ahead"], "culinary_type": "Main Course", "instructions": "Step 1: Preheat oven to 400\u00b0F. Combine mustard and honey in a small bowl. Stir in dill and orange peel.\nStep 2: Line a baking sheet with foil. Place chicken, skin-side down, on prepared pan. Brush sauce on top of chicken; coat well.\nStep 3: Turn chicken over. Gently pull back skin and brush meat with sauce. Gently pull skin back over sauce.\nStep 4: Brush skin with remaining sauce. Bake until juices run clear when thickest portion of meat is pierced with a knife, about 30 minutes.", "has_ingredient_list": true, "extraction_confidence": "high", "ingredients": [{"name": "Dijon Mustard", "quantity": "1/3", "unit": "cup", "modifiers": "", "package_qty": "", "package_unit": ""}, {"name": "Honey", "quantity": "1/3", "unit": "cup", "modifiers": "", "package_qty": "", "package_unit": ""}, {"name": "Dill", "quantity": "2", "unit": "tbsp", "modifiers": "fresh, chopped", "package_qty": "", "package_unit": ""}, {"name": "Orange Zest", "quantity": "1", "unit": "tsp", "modifiers": "freshly grated", "package_qty": "", "package_unit": ""}, {"name": "Chicken", "quantity": "1", "unit": "whole", "modifiers": "quartered, 2.5 lb", "package_qty": "", "package_unit": ""}]}

matched_ingredients:
  [{"raw_name": "Dijon Mustard", "ingredient_name": "Dijon Mustard", "quantity": "1/3", "unit": "c"}, {"raw_name": "Honey", "ingredient_name": "Honey", "quantity": "1/3", "unit": "c"}, {"raw_name": "Dill", "ingredient_name": "Dill", "quantity": "2", "unit": "tbsp"}, {"raw_name": "Orange Zest", "ingredient_name": "Orange Zest", "quantity": "1", "unit": "tsp"}, {"raw_name": "Chicken", "ingredient_name": "Chicken", "quantity": "1", "unit": "whole"}]


created_at: 2026-04-04 17:07:49.109230
status: success
provider: claude
filename: American/Casseroles & Bakes/Mac n Cheese with Chicken.pdf
recipe_title: Macaroni and Cheese with Chicken
unmatched_items: []
unit_warnings: []
resolution_tiers: {"exact": 12, "common_name": 1}
raw_ai_response:
  {"title": "Macaroni and Cheese with Chicken", "description": "A satisfying casserole made with smoked mozzarella and Parmigiano-Reggiano instead of the usual Cheddar, featuring a creamy rosemary b\u00e9chamel sauce.", "servings": 4, "prep_time": 25, "cook_time": 55, "cuisine": "American", "tags": ["Comfort Food", "Baked", "Family Friendly", "Hearty", "Creamy", "Weeknight"], "culinary_type": "Main Course", "instructions": "Step 1: Preheat oven to 450 degrees F. Butter a 1 1/2-quart gratin or baking dish.\nStep 2: In a large pot of boiling salted water, cook pasta until al dente, about 11 minutes. Drain, run under cold water, and drain again. Transfer to a large bowl.\nStep 3: In a medium skillet over medium heat, heat oil. Add onion and a pinch of salt, reduce heat to medium-low, and cook, stirring occasionally, until softened and lightly golden, about 10 minutes.\nStep 4: Add onion to pasta and stir to combine. Add mozzarella, chicken, 2/3 cup Parmesan, and rosemary; stir to combine.\nStep 5: In a medium heavy saucepan over medium-low heat, melt butter. Add flour and cook over low heat, whisking, for 3 minutes. Add hot milk, whisking vigorously, then add garlic and 1 1/2 teaspoons salt. Bring mixture to a simmer, whisking; then reduce heat and gently simmer, whisking occasionally, until b\u00e9chamel is thickened (the sauce should thickly coat the back of a spoon), about 10 minutes. Discard garlic before adding b\u00e9chamel to pasta, season with pepper, and stir.\nStep 6: Transfer into baking dish and smooth top. Sprinkle with remaining 1/3 cup Parmesan and more pepper. Bake until bubbling and golden, 12 to 15 minutes. Let sit for 15 minutes before serving.", "has_ingredient_list": true, "extraction_confidence": "high", "ingredients": [{"name": "Unsalted Butter", "quantity": "3", "unit": "tbsp", "modifiers": "plus more for baking dish", "package_qty": "", "package_unit": ""}, {"name": "Salt", "quantity": "1", "unit": "pinch", "modifiers": "fine sea salt", "package_qty": "", "package_unit": ""}, {"name": "Black Pepper", "quantity": "1", "unit": "pinch", "modifiers": "freshly ground", "package_qty": "", "package_unit": ""}, {"name": "Penne", "quantity": "1/2", "unit": "lb", "modifiers": "", "package_qty": "", "package_unit": ""}, {"name": "Olive Oil", "quantity": "1", "unit": "tbsp", "modifiers": "extra-virgin", "package_qty": "", "package_unit": ""}, {"name": "Onion", "quantity": "1", "unit": "whole", "modifiers": "small, thinly sliced", "package_qty": "", "package_unit": ""}, {"name": "Mozzarella Cheese", "quantity": "1 1/2", "unit": "cup", "modifiers": "smoked, coarsely grated", "package_qty": "", "package_unit": ""}, {"name": "Chicken", "quantity": "1 1/2", "unit": "cup", "modifiers": "roast, shredded", "package_qty": "", "package_unit": ""}, {"name": "Parmesan Cheese", "quantity": "1", "unit": "cup", "modifiers": "finely grated", "package_qty": "", "package_unit": ""}, {"name": "Rosemary", "quantity": "1", "unit": "tbsp", "modifiers": "fresh, finely chopped", "package_qty": "", "package_unit": ""}, {"name": "All-Purpose Flour", "quantity": "3", "unit": "tbsp", "modifiers": "", "package_qty": "", "package_unit": ""}, {"name": "Milk", "quantity": "2 1/2", "unit": "cup", "modifiers": "whole, heated to a simmer", "package_qty": "", "package_unit": ""}, {"name": "Garlic", "quantity": "2", "unit": "clove", "modifiers": "", "package_qty": "", "package_unit": ""}]}

matched_ingredients:
  [{"raw_name": "Butter", "ingredient_name": "Butter", "quantity": "3", "unit": "tbsp"}, {"raw_name": "Salt", "ingredient_name": "Salt", "quantity": "1", "unit": "pinch"}, {"raw_name": "Black Pepper", "ingredient_name": "Black Pepper", "quantity": "1", "unit": "pinch"}, {"raw_name": "Penne Pasta", "ingredient_name": "Penne Pasta", "quantity": "1/2", "unit": "lb"}, {"raw_name": "Olive Oil", "ingredient_name": "Olive Oil", "quantity": "1", "unit": "tbsp"}, {"raw_name": "Onion", "ingredient_name": "Onion", "quantity": "1", "unit": "whole"}, {"raw_name": "Mozzarella Cheese", "ingredient_name": "Mozzarella Cheese", "quantity": "1 1/2", "unit": "c"}, {"raw_name": "Chicken", "ingredient_name": "Chicken", "quantity": "1 1/2", "unit": "c"}, {"raw_name": "Parmesan Cheese", "ingredient_name": "Parmesan Cheese", "quantity": "1", "unit": "c"}, {"raw_name": "Rosemary", "ingredient_name": "Rosemary", "quantity": "1", "unit": "tbsp"}, {"raw_name": "All-Purpose Flour", "ingredient_name": "All-Purpose Flour", "quantity": "3", "unit": "tbsp"}, {"raw_name": "Milk", "ingredient_name": "Milk", "quantity": "2 1/2", "unit": "c"}, {"raw_name": "Garlic", "ingredient_name": "Garlic", "quantity": "2", "unit": "clove"}]


created_at: 2026-04-04 17:08:06.054002
status: success
provider: claude
filename: American/Casseroles & Bakes/SQUASH PUFF.pdf
recipe_title: Squash Puff
unmatched_items: []
unit_warnings: []
resolution_tiers: {"exact": 10}
raw_ai_response:
  {"title": "Squash Puff", "description": "A light and airy souffl\u00e9-style dish made with butternut squash, whipping cream, and maple syrup, topped with slivered almonds. Elegant enough for a dinner party yet simple to prepare.", "servings": 4, "prep_time": 45, "cook_time": 95, "cuisine": "American", "tags": ["Baked", "Comfort Food", "Holiday", "Dinner Party", "Sweet", "Savory"], "culinary_type": "Side Dish", "instructions": "Step 1: Cut squash in half lengthwise; remove and discard seeds and membranes. Place squash halves, cut side down, in a 13x9-inch baking dish. Add water to depth of 1 inch.\nStep 2: Bake, covered, at 375\u00b0F for 30 to 40 minutes. Let cool; scoop out pulp, and mash.\nStep 3: Beat pulp, egg yolks, whipping cream, and next 5 ingredients (butter, maple syrup, cornstarch, brown sugar, and salt) at medium speed with an electric mixer until blended. Set mixture aside.\nStep 4: Beat egg whites at high speed until stiff peaks form; gently fold into squash mixture. Spoon into a lightly greased 2-quart souffl\u00e9 dish. Sprinkle with almonds.\nStep 5: Bake at 350\u00b0F for 55 minutes or until puffed and golden. Serve immediately.", "has_ingredient_list": true, "extraction_confidence": "high", "ingredients": [{"name": "Butternut squash", "quantity": "1", "unit": "whole", "modifiers": "medium", "package_qty": "", "package_unit": ""}, {"name": "Egg Yolk", "quantity": "3", "unit": "whole", "modifiers": "large", "package_qty": "", "package_unit": ""}, {"name": "Egg White", "quantity": "3", "unit": "whole", "modifiers": "large", "package_qty": "", "package_unit": ""}, {"name": "Heavy Cream", "quantity": "1 1/4", "unit": "cup", "modifiers": "", "package_qty": "", "package_unit": ""}, {"name": "Butter", "quantity": "1/4", "unit": "cup", "modifiers": "melted", "package_qty": "", "package_unit": ""}, {"name": "Maple Syrup", "quantity": "1/4", "unit": "cup", "modifiers": "", "package_qty": "", "package_unit": ""}, {"name": "Cornstarch", "quantity": "3", "unit": "tbsp", "modifiers": "", "package_qty": "", "package_unit": ""}, {"name": "Brown Sugar", "quantity": "2", "unit": "tbsp", "modifiers": "", "package_qty": "", "package_unit": ""}, {"name": "Salt", "quantity": "1", "unit": "tsp", "modifiers": "", "package_qty": "", "package_unit": ""}, {"name": "Almonds", "quantity": "3", "unit": "tbsp", "modifiers": "slivered", "package_qty": "", "package_unit": ""}]}

matched_ingredients:
  [{"raw_name": "Butternut squash", "ingredient_name": "Butternut squash", "quantity": "1", "unit": "whole"}, {"raw_name": "Egg Yolk", "ingredient_name": "Egg Yolk", "quantity": "3", "unit": "whole"}, {"raw_name": "Egg White", "ingredient_name": "Egg White", "quantity": "3", "unit": "whole"}, {"raw_name": "Heavy Cream", "ingredient_name": "Heavy Cream", "quantity": "1 1/4", "unit": "c"}, {"raw_name": "Butter", "ingredient_name": "Butter", "quantity": "1/4", "unit": "c"}, {"raw_name": "Maple Syrup", "ingredient_name": "Maple Syrup", "quantity": "1/4", "unit": "c"}, {"raw_name": "Cornstarch", "ingredient_name": "Cornstarch", "quantity": "3", "unit": "tbsp"}, {"raw_name": "Brown Sugar", "ingredient_name": "Brown Sugar", "quantity": "2", "unit": "tbsp"}, {"raw_name": "Salt", "ingredient_name": "Salt", "quantity": "1", "unit": "tsp"}, {"raw_name": "Almonds", "ingredient_name": "Almonds", "quantity": "3", "unit": "tbsp"}]


created_at: 2026-04-04 17:08:18.955786
status: success
provider: claude
filename: American/Casseroles & Bakes/Savory crescent chicken squares.pdf
recipe_title: Savory Crescent Chicken Squares
unmatched_items: []
unit_warnings: []
resolution_tiers: {"exact": 7, "failed": 1, "product_off_fallback": 1}
raw_ai_response:
  {"title": "Savory Crescent Chicken Squares", "description": "Flaky crescent roll pastry pockets filled with a creamy chicken mixture. A great way to use leftover chicken.", "servings": 4, "prep_time": 10, "cook_time": 20, "cuisine": "American", "tags": ["Quick", "Under 30 Minutes", "Comfort Food", "Family Friendly", "Baked", "Weeknight"], "culinary_type": "Main Course", "instructions": "Step 1: Preheat oven to 350\u00b0F.\nStep 2: In a medium mixing bowl, combine cream cheese and 2 tablespoons butter. Add chicken, milk, green onion, pepper and salt; mix well.\nStep 3: Divide crescent rolls and form into 4 rectangles, pressing edges together to seal. Divide chicken mixture among the rectangles.\nStep 4: Fold dough over mixture and press edges to seal. Place on an ungreased baking sheet and brush each packet with remaining butter.\nStep 5: Bake for 20 to 25 minutes or until golden brown.", "has_ingredient_list": true, "extraction_confidence": "high", "ingredients": [{"name": "Cream Cheese", "quantity": "4", "unit": "oz", "modifiers": "softened", "package_qty": "", "package_unit": ""}, {"name": "Butter", "quantity": "3", "unit": "tbsp", "modifiers": "melted, divided", "package_qty": "", "package_unit": ""}, {"name": "Chicken", "quantity": "2", "unit": "cup", "modifiers": "chopped, cooked", "package_qty": "", "package_unit": ""}, {"name": "Milk", "quantity": "2", "unit": "tbsp", "modifiers": "", "package_qty": "", "package_unit": ""}, {"name": "Green Onion", "quantity": "1", "unit": "tbsp", "modifiers": "chopped", "package_qty": "", "package_unit": ""}, {"name": "Black Pepper", "quantity": "1/2", "unit": "tsp", "modifiers": "ground", "package_qty": "", "package_unit": ""}, {"name": "Salt", "quantity": "1/4", "unit": "tsp", "modifiers": "", "package_qty": "", "package_unit": ""}, {"name": "refrigerated crescent rolls", "quantity": "8", "unit": "oz", "modifiers": "", "package_qty": "8", "package_unit": "oz"}]}

matched_ingredients:
  [{"raw_name": "Cream Cheese", "ingredient_name": "Cream Cheese", "quantity": "4", "unit": "oz"}, {"raw_name": "Butter", "ingredient_name": "Butter", "quantity": "3", "unit": "tbsp"}, {"raw_name": "Chicken", "ingredient_name": "Chicken", "quantity": "2", "unit": "c"}, {"raw_name": "Milk", "ingredient_name": "Milk", "quantity": "2", "unit": "tbsp"}, {"raw_name": "Green Onion", "ingredient_name": "Green Onion", "quantity": "1", "unit": "tbsp"}, {"raw_name": "Black Pepper", "ingredient_name": "Black Pepper", "quantity": "1/2", "unit": "tsp"}, {"raw_name": "Salt", "ingredient_name": "Salt", "quantity": "1/4", "unit": "tsp"}, {"raw_name": "?", "ingredient_name": null, "quantity": "8", "unit": "oz"}]


created_at: 2026-04-04 17:08:31.463345
status: success
provider: claude
filename: American/Casseroles & Bakes/Sesame Seed Chicken.pdf
recipe_title: Sesame Seed Chicken
unmatched_items: []
unit_warnings: []
resolution_tiers: {"exact": 7, "failed": 1, "product_exact_fallback": 1}
raw_ai_response:
  {"title": "Sesame Seed Chicken", "description": "A comforting baked chicken and rice casserole with a creamy sauce base, topped with crushed Ritz crackers, melted butter, and sesame seeds.", "servings": 6, "prep_time": 15, "cook_time": 45, "cuisine": "American", "tags": ["Comfort Food", "Baked", "Family Friendly", "Weeknight", "Make Ahead", "Hearty"], "culinary_type": "Main Course", "instructions": "Step 1: Mix together chicken, sour cream, broth and soup. Mix well.\nStep 2: Pour cooked rice into a 13x9 inch baking pan.\nStep 3: Top rice with mixture.\nStep 4: Crush ritz crackers on top of mixture.\nStep 5: Pour melted butter evenly across the crackers.\nStep 6: Top with sesame seeds.\nStep 7: Bake at 350\u00b0F for 45 minutes.", "has_ingredient_list": true, "extraction_confidence": "high", "ingredients": [{"name": "Chicken Broth", "quantity": "3/4", "unit": "cup", "modifiers": "", "package_qty": "", "package_unit": ""}, {"name": "Ritz Crackers", "quantity": "1", "unit": "package", "modifiers": "", "package_qty": "", "package_unit": ""}, {"name": "Unsalted Butter", "quantity": "1", "unit": "stick", "modifiers": "melted", "package_qty": "", "package_unit": ""}, {"name": "Sesame Seeds", "quantity": "1", "unit": "pinch", "modifiers": "", "package_qty": "", "package_unit": ""}, {"name": "Chicken", "quantity": "3", "unit": "cup", "modifiers": "cooked, cubed", "package_qty": "", "package_unit": ""}, {"name": "Rice", "quantity": "3", "unit": "cup", "modifiers": "cooked", "package_qty": "", "package_unit": ""}, {"name": "Sour Cream", "quantity": "8", "unit": "oz", "modifiers": "", "package_qty": "", "package_unit": ""}, {"name": "Cream of Chicken Soup", "quantity": "8", "unit": "oz", "modifiers": "", "package_qty": "", "package_unit": ""}]}

matched_ingredients:
  [{"raw_name": "Chicken Broth", "ingredient_name": "Chicken Broth", "quantity": "3/4", "unit": "c"}, {"raw_name": "?", "ingredient_name": null, "quantity": "1", "unit": "pkg"}, {"raw_name": "Butter", "ingredient_name": "Butter", "quantity": "1", "unit": "stick"}, {"raw_name": "Sesame Seeds", "ingredient_name": "Sesame Seeds", "quantity": "1", "unit": "pinch"}, {"raw_name": "Chicken", "ingredient_name": "Chicken", "quantity": "3", "unit": "c"}, {"raw_name": "Rice", "ingredient_name": "Rice", "quantity": "3", "unit": "c"}, {"raw_name": "Sour Cream", "ingredient_name": "Sour Cream", "quantity": "8", "unit": "oz"}, {"raw_name": "Cream Of Chicken Soup", "ingredient_name": "Cream Of Chicken Soup", "quantity": "8", "unit": "oz"}]


created_at: 2026-04-04 17:09:09.285553
status: success
provider: claude
filename: American/Casseroles & Bakes/Spicy Chicken Casserole.pdf
recipe_title: Spicy Chicken Casserole
unmatched_items: []
unit_warnings: []
resolution_tiers: {"common_name": 1, "exact": 8}
raw_ai_response:
  {"title": "Spicy Chicken Casserole", "description": "A spicy, cheesy chicken casserole layered with tortillas, rotisserie chicken, pinto beans, and cheddar cheese. Quick to make and packed with bold flavors.", "servings": 6, "prep_time": 15, "cook_time": 20, "cuisine": "Mexican", "tags": ["Spicy", "Comfort Food", "Baked", "Family Friendly", "Weeknight", "Under 1 Hour"], "culinary_type": "Main Course", "instructions": "Step 1: Preheat oven to 425 degrees F. Grease shallow 2-quart baking dish.\nStep 2: Puree in blender salsa, tomato sauce, chipotle chile in adobo, and adobo sauce until smooth. Transfer to large bowl.\nStep 3: Stir in shredded rotisserie chicken and pinto beans.\nStep 4: Arrange 2 tortillas (tearing to fit) on bottom of baking dish. Top with half of chicken mixture, 1/2 cup shredded Cheddar cheese, and 1/2 cup cilantro. Repeat layering once with 2 tortillas, remaining chicken mixture, 1/2 cup Cheddar, and 1/2 cup cilantro.\nStep 5: Top with 1 tortilla and remaining 1/2 cup Cheddar. Bake 15 to 20 minutes or until bubbling.", "has_ingredient_list": true, "extraction_confidence": "high", "ingredients": [{"name": "Salsa Sauce", "quantity": "12", "unit": "oz", "modifiers": "", "package_qty": "", "package_unit": ""}, {"name": "Tomato Sauce", "quantity": "1", "unit": "can", "modifiers": "", "package_qty": "8", "package_unit": "oz"}, {"name": "Chipotle in Adobo", "quantity": "1", "unit": "whole", "modifiers": "", "package_qty": "", "package_unit": ""}, {"name": "Adobo Sauce", "quantity": "2", "unit": "tsp", "modifiers": "", "package_qty": "", "package_unit": ""}, {"name": "Chicken", "quantity": "2", "unit": "cup", "modifiers": "shredded, rotisserie", "package_qty": "", "package_unit": ""}, {"name": "Pinto Bean", "quantity": "1", "unit": "can", "modifiers": "no-salt added, rinsed, drained", "package_qty": "15", "package_unit": "oz"}, {"name": "Tortilla", "quantity": "5", "unit": "whole", "modifiers": "", "package_qty": "", "package_unit": ""}, {"name": "Cheddar Cheese", "quantity": "1 1/2", "unit": "cup", "modifiers": "shredded", "package_qty": "", "package_unit": ""}, {"name": "Coriander", "quantity": "1", "unit": "cup", "modifiers": "fresh", "package_qty": "", "package_unit": ""}]}

matched_ingredients:
  [{"raw_name": "Salsa", "ingredient_name": "Salsa", "quantity": "12", "unit": "oz"}, {"raw_name": "Tomato Sauce", "ingredient_name": "Tomato Sauce", "quantity": "1", "unit": "can"}, {"raw_name": "Chipotle in Adobo", "ingredient_name": "Chipotle in Adobo", "quantity": "1", "unit": "whole"}, {"raw_name": "Adobo Sauce", "ingredient_name": "Adobo Sauce", "quantity": "2", "unit": "tsp"}, {"raw_name": "Chicken", "ingredient_name": "Chicken", "quantity": "2", "unit": "c"}, {"raw_name": "Pinto Bean", "ingredient_name": "Pinto Bean", "quantity": "1", "unit": "can"}, {"raw_name": "Tortilla", "ingredient_name": "Tortilla", "quantity": "5", "unit": "whole"}, {"raw_name": "Cheddar Cheese", "ingredient_name": "Cheddar Cheese", "quantity": "1 1/2", "unit": "c"}, {"raw_name": "Coriander", "ingredient_name": "Coriander", "quantity": "1", "unit": "c"}]


created_at: 2026-04-04 17:09:24.449913
status: success
provider: claude
filename: American/Casseroles & Bakes/White Chicken Chili.pdf
recipe_title: White Chicken Chili
unmatched_items: []
unit_warnings: []
resolution_tiers: {"exact": 10, "common_name": 1}
raw_ai_response:
  {"title": "White Chicken Chili", "description": "A hearty white chicken chili made with Great Northern Beans, green chiles, and tender chicken breast. Perfect for tailgating or a quick weeknight meal.", "servings": 8, "prep_time": 10, "cook_time": 20, "cuisine": "American", "tags": ["Quick", "Under 30 Minutes", "Comfort Food", "Stovetop", "Game Day", "Family Friendly"], "culinary_type": "Soup", "instructions": "Step 1: In large skillet, cook onion in oil for 4 minutes or until transparent. Add chiles, flour and cumin; cook and stir for 2 minutes. Add beans and chicken broth; bring to a boil. Reduce heat; simmer for 10 minutes or until thickened. Add chicken; cook until hot.\nStep 2: Garnish with cheese, sour cream and salsa, if desired.", "has_ingredient_list": true, "extraction_confidence": "high", "ingredients": [{"name": "Olive Oil", "quantity": "1", "unit": "tbsp", "modifiers": "", "package_qty": "", "package_unit": ""}, {"name": "Onion", "quantity": "1", "unit": "whole", "modifiers": "medium, finely chopped", "package_qty": "", "package_unit": ""}, {"name": "Chili Pepper", "quantity": "1", "unit": "can", "modifiers": "chopped green, drained", "package_qty": "4", "package_unit": "oz"}, {"name": "All-Purpose Flour", "quantity": "3", "unit": "tbsp", "modifiers": "", "package_qty": "", "package_unit": ""}, {"name": "Cumin", "quantity": "2", "unit": "tsp", "modifiers": "ground", "package_qty": "", "package_unit": ""}, {"name": "Great Northern Beans", "quantity": "2", "unit": "can", "modifiers": "", "package_qty": "16", "package_unit": "oz"}, {"name": "Chicken Broth", "quantity": "1", "unit": "can", "modifiers": "", "package_qty": "14.5", "package_unit": "oz"}, {"name": "Chicken Breast", "quantity": "1 1/2", "unit": "cup", "modifiers": "cooked, finely chopped", "package_qty": "", "package_unit": ""}, {"name": "Monterey Cheese", "quantity": "1", "unit": "cup", "modifiers": "shredded, optional", "package_qty": "", "package_unit": ""}, {"name": "Sour Cream", "quantity": "1", "unit": "cup", "modifiers": "optional", "package_qty": "", "package_unit": ""}, {"name": "Salsa Sauce", "quantity": "1", "unit": "cup", "modifiers": "optional", "package_qty": "", "package_unit": ""}]}

matched_ingredients:
  [{"raw_name": "Olive Oil", "ingredient_name": "Olive Oil", "quantity": "1", "unit": "tbsp"}, {"raw_name": "Onion", "ingredient_name": "Onion", "quantity": "1", "unit": "whole"}, {"raw_name": "Chili Pepper", "ingredient_name": "Chili Pepper", "quantity": "1", "unit": "can"}, {"raw_name": "All-Purpose Flour", "ingredient_name": "All-Purpose Flour", "quantity": "3", "unit": "tbsp"}, {"raw_name": "Cumin", "ingredient_name": "Cumin", "quantity": "2", "unit": "tsp"}, {"raw_name": "Great Northern Beans", "ingredient_name": "Great Northern Beans", "quantity": "2", "unit": "can"}, {"raw_name": "Chicken Broth", "ingredient_name": "Chicken Broth", "quantity": "1", "unit": "can"}, {"raw_name": "Chicken Breast", "ingredient_name": "Chicken Breast", "quantity": "1 1/2", "unit": "c"}, {"raw_name": "Monterey Cheese", "ingredient_name": "Monterey Cheese", "quantity": "1", "unit": "c"}, {"raw_name": "Sour Cream", "ingredient_name": "Sour Cream", "quantity": "1", "unit": "c"}, {"raw_name": "Salsa", "ingredient_name": "Salsa", "quantity": "1", "unit": "c"}]


created_at: 2026-04-04 17:10:09.161511
status: success
provider: claude
filename: American/Roasts & Pot Pies/ARTICHOKE SAUSAGE VEGETABLE SKEWERS.pdf
recipe_title: Artichoke Sausage Vegetable Skewers
unmatched_items: []
unit_warnings: []
resolution_tiers: {"exact": 10, "failed": 1, "product_off_fallback": 1}
raw_ai_response:
  {"title": "Artichoke Sausage Vegetable Skewers", "description": "Marinated vegetables and Artichoke & Garlic Sausage threaded onto skewers and grilled until browned, served over rice or pasta.", "servings": 4, "prep_time": 240, "cook_time": 10, "cuisine": "American", "tags": ["Grilled", "Make Ahead", "Family Friendly", "Savory", "High Protein", "Weeknight"], "culinary_type": "Main Course", "instructions": "Step 1: In a bowl, combine the garlic, oregano, salt, pepper, vinegar and olive oil.\nStep 2: Toss the vegetables in the marinade and refrigerate 2-4 hours.\nStep 3: Set up your grill for medium high heat.\nStep 4: Thread the vegetables and sausage alternately onto skewers and grill 8-10 minutes, until the sausage is brown and heated through.\nStep 5: Serve over rice or small pasta tossed with herbs and butter.", "has_ingredient_list": true, "extraction_confidence": "high", "ingredients": [{"name": "Garlic", "quantity": "2", "unit": "clove", "modifiers": "chopped", "package_qty": "", "package_unit": ""}, {"name": "Oregano", "quantity": "2", "unit": "tbsp", "modifiers": "fresh, finely chopped", "package_qty": "", "package_unit": ""}, {"name": "Salt", "quantity": "1", "unit": "tsp", "modifiers": "", "package_qty": "", "package_unit": ""}, {"name": "Black Pepper", "quantity": "1/2", "unit": "tsp", "modifiers": "", "package_qty": "", "package_unit": ""}, {"name": "Balsamic Vinegar", "quantity": "2", "unit": "tbsp", "modifiers": "", "package_qty": "", "package_unit": ""}, {"name": "Olive Oil", "quantity": "1/4", "unit": "cup", "modifiers": "extra-virgin", "package_qty": "", "package_unit": ""}, {"name": "White Mushroom", "quantity": "4", "unit": "oz", "modifiers": "large button, cleaned", "package_qty": "", "package_unit": ""}, {"name": "Bell Pepper", "quantity": "1", "unit": "whole", "modifiers": "red, cut into 1 inch squares", "package_qty": "", "package_unit": ""}, {"name": "Zucchini", "quantity": "2", "unit": "whole", "modifiers": "medium, cut into 1/2 inch slices", "package_qty": "", "package_unit": ""}, {"name": "Artichoke", "quantity": "1", "unit": "can", "modifiers": "hearts, thawed if frozen", "package_qty": "15", "package_unit": "oz"}, {"name": "Aidells Artichoke & Garlic Sausage", "quantity": "4", "unit": "piece", "modifiers": "cut into 1/2 inch slices", "package_qty": "", "package_unit": ""}]}

matched_ingredients:
  [{"raw_name": "Garlic", "ingredient_name": "Garlic", "quantity": "2", "unit": "clove"}, {"raw_name": "Oregano", "ingredient_name": "Oregano", "quantity": "2", "unit": "tbsp"}, {"raw_name": "Salt", "ingredient_name": "Salt", "quantity": "1", "unit": "tsp"}, {"raw_name": "Black Pepper", "ingredient_name": "Black Pepper", "quantity": "1/2", "unit": "tsp"}, {"raw_name": "Balsamic Vinegar", "ingredient_name": "Balsamic Vinegar", "quantity": "2", "unit": "tbsp"}, {"raw_name": "Olive Oil", "ingredient_name": "Olive Oil", "quantity": "1/4", "unit": "c"}, {"raw_name": "Mushroom", "ingredient_name": "Mushroom", "quantity": "4", "unit": "oz"}, {"raw_name": "Bell Pepper", "ingredient_name": "Bell Pepper", "quantity": "1", "unit": "whole"}, {"raw_name": "Zucchini", "ingredient_name": "Zucchini", "quantity": "2", "unit": "whole"}, {"raw_name": "Artichoke", "ingredient_name": "Artichoke", "quantity": "1", "unit": "can"}, {"raw_name": "?", "ingredient_name": null, "quantity": "4", "unit": "pc"}]


created_at: 2026-04-04 17:10:26.560846
status: success
provider: claude
filename: American/Roasts & Pot Pies/Beef Tips.pdf
recipe_title: Beef Tips
unmatched_items: []
unit_warnings: []
resolution_tiers: {"exact": 13}
raw_ai_response:
  {"title": "Beef Tips", "description": "Tender beef or sirloin tips slow-cooked in a savory broth with mushrooms, shallots, and a rich red wine gravy, served over buttered noodles.", "servings": 6, "prep_time": 15, "cook_time": 480, "cuisine": "American", "tags": ["Slow Cook", "Comfort Food", "Hearty", "Family Friendly", "Weeknight", "Make Ahead"], "culinary_type": "Main Course", "instructions": "Step 1: Combine 1/2 cup flour with salt and pepper; toss with beef cubes to coat thoroughly.\nStep 2: Place coated beef in crock pot. Add shallots and mushrooms.\nStep 3: Combine beef broth, Worcestershire sauce, and tomato paste. Pour over beef and vegetables and stir well.\nStep 4: Cover and cook on low setting for 7-12 hours.\nStep 5: One hour before serving, turn to high setting. Make a smooth paste of red wine and 3 tablespoons flour, stir into crock pot, mixing well.\nStep 6: Cover and cook until thickened. Serve over hot buttered noodles.", "has_ingredient_list": true, "extraction_confidence": "high", "ingredients": [{"name": "All-Purpose Flour", "quantity": "1/2", "unit": "cup", "modifiers": "", "package_qty": "", "package_unit": ""}, {"name": "Salt", "quantity": "1", "unit": "tsp", "modifiers": "", "package_qty": "", "package_unit": ""}, {"name": "Black Pepper", "quantity": "1/8", "unit": "tsp", "modifiers": "", "package_qty": "", "package_unit": ""}, {"name": "Beef Sirloin", "quantity": "4", "unit": "lb", "modifiers": "cubed", "package_qty": "", "package_unit": ""}, {"name": "Shallot", "quantity": "1/2", "unit": "cup", "modifiers": "chopped", "package_qty": "", "package_unit": ""}, {"name": "Mushroom", "quantity": "2", "unit": "can", "modifiers": "sliced, drained", "package_qty": "", "package_unit": ""}, {"name": "Beef Broth", "quantity": "1", "unit": "can", "modifiers": "condensed", "package_qty": "", "package_unit": ""}, {"name": "Worcestershire Sauce", "quantity": "1", "unit": "tsp", "modifiers": "", "package_qty": "", "package_unit": ""}, {"name": "Tomato Paste", "quantity": "2", "unit": "tsp", "modifiers": "", "package_qty": "", "package_unit": ""}, {"name": "Red Wine", "quantity": "1/4", "unit": "cup", "modifiers": "dry", "package_qty": "", "package_unit": ""}, {"name": "All-Purpose Flour", "quantity": "3", "unit": "tbsp", "modifiers": "", "package_qty": "", "package_unit": ""}, {"name": "Egg Noodles", "quantity": "1", "unit": "package", "modifiers": "buttered, cooked", "package_qty": "", "package_unit": ""}, {"name": "Butter", "quantity": "1", "unit": "tbsp", "modifiers": "", "package_qty": "", "package_unit": ""}]}

matched_ingredients:
  [{"raw_name": "All-Purpose Flour", "ingredient_name": "All-Purpose Flour", "quantity": "1/2", "unit": "c"}, {"raw_name": "Salt", "ingredient_name": "Salt", "quantity": "1", "unit": "tsp"}, {"raw_name": "Black Pepper", "ingredient_name": "Black Pepper", "quantity": "1/8", "unit": "tsp"}, {"raw_name": "Beef Sirloin", "ingredient_name": "Beef Sirloin", "quantity": "4", "unit": "lb"}, {"raw_name": "Shallot", "ingredient_name": "Shallot", "quantity": "1/2", "unit": "c"}, {"raw_name": "Mushroom", "ingredient_name": "Mushroom", "quantity": "2", "unit": "can"}, {"raw_name": "Beef Broth", "ingredient_name": "Beef Broth", "quantity": "1", "unit": "can"}, {"raw_name": "Worcestershire Sauce", "ingredient_name": "Worcestershire Sauce", "quantity": "1", "unit": "tsp"}, {"raw_name": "Tomato Paste", "ingredient_name": "Tomato Paste", "quantity": "2", "unit": "tsp"}, {"raw_name": "Red Wine", "ingredient_name": "Red Wine", "quantity": "1/4", "unit": "c"}, {"raw_name": "All-Purpose Flour", "ingredient_name": "All-Purpose Flour", "quantity": "3", "unit": "tbsp"}, {"raw_name": "Egg", "ingredient_name": "Egg", "quantity": "1", "unit": "pkg"}, {"raw_name": "Butter", "ingredient_name": "Butter", "quantity": "1", "unit": "tbsp"}]


created_at: 2026-04-04 17:11:15.837376
status: success
provider: claude
filename: American/Roasts & Pot Pies/Classic Sunday Pot Roast.pdf
recipe_title: Classic Sunday Pot Roast
unmatched_items: []
unit_warnings: []
resolution_tiers: {"exact": 12}
raw_ai_response:
  {"title": "Classic Sunday Pot Roast", "description": "A hearty and filling comfort food classic made with beef chuck roast, vegetables, and savory broth. Works as an oven braise, slow cooker, or Instant Pot recipe.", "servings": 4, "prep_time": 15, "cook_time": 180, "cuisine": "American", "tags": ["Comfort Food", "Slow Cook", "Family Friendly", "Hearty", "Weekend Project", "Leftovers Well"], "culinary_type": "Main Course", "instructions": "Step 1: Preheat oven to 350 degrees F. Get a large oven safe dutch oven pot heating over high heat.\nStep 2: Season both sides of chuck roast with salt and pepper. Add vegetable oil to pot and sear roast until browned, about 3 to 4 minutes each side.\nStep 3: Remove roast from pan and set aside briefly on a plate or cutting board. Add garlic to pot and saute 60 seconds. Deglaze pan with red wine and beef broth. Add roast back to the pot.\nStep 4: Pour Worcestershire sauce over roast and place the onion chunks, carrots, and potatoes on top of and around the meat. Place rosemary sprig on top.\nStep 5: Place a lid on the pan and transfer it to the preheated 350 degree oven. Cook 3 hours, or until meat reaches an internal temperature of 202 degrees F and shreds easily with a fork. Season vegetables with additional salt and pepper to taste and serve hot.", "has_ingredient_list": true, "extraction_confidence": "high", "ingredients": [{"name": "Beef Chuck", "quantity": "3", "unit": "lb", "modifiers": "", "package_qty": "", "package_unit": ""}, {"name": "Salt", "quantity": "1", "unit": "tsp", "modifiers": "", "package_qty": "", "package_unit": ""}, {"name": "Black Pepper", "quantity": "1/2", "unit": "tsp", "modifiers": "", "package_qty": "", "package_unit": ""}, {"name": "Vegetable Oil", "quantity": "1", "unit": "tbsp", "modifiers": "", "package_qty": "", "package_unit": ""}, {"name": "Garlic", "quantity": "3", "unit": "clove", "modifiers": "minced", "package_qty": "", "package_unit": ""}, {"name": "Red Wine", "quantity": "1/2", "unit": "cup", "modifiers": "", "package_qty": "", "package_unit": ""}, {"name": "Beef Broth", "quantity": "1", "unit": "cup", "modifiers": "low sodium", "package_qty": "", "package_unit": ""}, {"name": "Worcestershire Sauce", "quantity": "1/8", "unit": "cup", "modifiers": "", "package_qty": "", "package_unit": ""}, {"name": "Onion", "quantity": "1", "unit": "whole", "modifiers": "large, cut into 2 inch chunks", "package_qty": "", "package_unit": ""}, {"name": "Baby Carrots", "quantity": "1/2", "unit": "lb", "modifiers": "", "package_qty": "", "package_unit": ""}, {"name": "Red Potato", "quantity": "1/2", "unit": "lb", "modifiers": "cut into bite-sized chunks", "package_qty": "", "package_unit": ""}, {"name": "Rosemary", "quantity": "1/2", "unit": "sprig", "modifiers": "fresh", "package_qty": "", "package_unit": ""}]}

matched_ingredients:
  [{"raw_name": "Beef Chuck", "ingredient_name": "Beef Chuck", "quantity": "3", "unit": "lb"}, {"raw_name": "Salt", "ingredient_name": "Salt", "quantity": "1", "unit": "tsp"}, {"raw_name": "Black Pepper", "ingredient_name": "Black Pepper", "quantity": "1/2", "unit": "tsp"}, {"raw_name": "Vegetable Oil", "ingredient_name": "Vegetable Oil", "quantity": "1", "unit": "tbsp"}, {"raw_name": "Garlic", "ingredient_name": "Garlic", "quantity": "3", "unit": "clove"}, {"raw_name": "Red Wine", "ingredient_name": "Red Wine", "quantity": "1/2", "unit": "c"}, {"raw_name": "Beef Broth", "ingredient_name": "Beef Broth", "quantity": "1", "unit": "c"}, {"raw_name": "Worcestershire Sauce", "ingredient_name": "Worcestershire Sauce", "quantity": "1/8", "unit": "c"}, {"raw_name": "Onion", "ingredient_name": "Onion", "quantity": "1", "unit": "whole"}, {"raw_name": "Baby Carrots", "ingredient_name": "Baby Carrots", "quantity": "1/2", "unit": "lb"}, {"raw_name": "Potato", "ingredient_name": "Potato", "quantity": "1/2", "unit": "lb"}, {"raw_name": "Rosemary", "ingredient_name": "Rosemary", "quantity": "1/2", "unit": "sprig"}]


created_at: 2026-04-04 17:11:45.222350
status: success
provider: claude
filename: American/Roasts & Pot Pies/Company Pot Roast.pdf
recipe_title: Company Pot Roast
unmatched_items: []
unit_warnings: []
resolution_tiers: {"exact": 17, "common_name": 1}
raw_ai_response:
  {"title": "Company Pot Roast", "description": "A classic braised beef chuck roast slow-cooked with vegetables, red wine, and herbs until fork tender, finished with a rich, velvety sauce. Recipe courtesy of Ina Garten from Barefoot Contessa: Modern Comfort Food.", "servings": 8, "prep_time": 20, "cook_time": 180, "cuisine": "American", "tags": ["Comfort Food", "Slow Cook", "Weekend Project", "Dinner Party", "Hearty", "Make Ahead"], "culinary_type": "Main Course", "instructions": "Step 1: Preheat the oven to 325 degrees F.\nStep 2: Pat the beef dry with a paper towel. Season the roast all over with 1 tablespoon salt and 1 1/2 teaspoons pepper. Dredge the whole roast in flour, including the ends. In a large Dutch oven, heat 2 tablespoons olive oil over medium heat. Add the roast and sear for 4 to 5 minutes, until nicely browned. Turn and sear the other side and then turn and sear the ends. This should take 4 to 5 minutes for each side. Remove the roast to a large plate.\nStep 3: Add 2 tablespoons olive oil to the Dutch oven. Add the carrots, onions, celery, leeks, garlic, 1 tablespoon salt, and 1 1/2 teaspoons pepper and cook over medium heat for 10 to 15 minutes, stirring occasionally, until tender but not browned. Add the wine and Cognac and bring to a boil. Add the tomatoes, chicken stock, bouillon cube, 2 teaspoons salt, and 1 teaspoon pepper. Tie the thyme and rosemary together with kitchen string and add to the pot. Put the roast back into the pot, bring to a boil, and cover. Place in the oven for 2 1/2 hours, until the meat is fork tender or about 160 degrees F internally. Turn the heat down to 250 degrees F after about an hour to keep the sauce at a simmer.\nStep 4: Remove the roast to a cutting board. Remove the herb bundle and discard. Skim off as much fat as possible from the sauce. Transfer half the sauce and vegetables to a blender or a food processor fitted with the steel blade and puree until smooth. Pour the puree back into the pot, place on the stovetop over low heat, and return the sauce to a simmer. Place 2 tablespoons flour and the butter in a small bowl and mash them together with a fork. Stir into the sauce and simmer for 2 minutes, stirring until thickened. Taste for seasonings. Remove the strings from the roast, and slice the meat. Serve warm with the sauce spooned over it.", "has_ingredient_list": true, "extraction_confidence": "high", "ingredients": [{"name": "Beef Chuck", "quantity": "1", "unit": "whole", "modifiers": "4 to 5 pound, prime boneless, tied", "package_qty": "", "package_unit": ""}, {"name": "Salt", "quantity": "1", "unit": "pinch", "modifiers": "kosher, to taste", "package_qty": "", "package_unit": ""}, {"name": "Black Pepper", "quantity": "1", "unit": "pinch", "modifiers": "freshly ground, to taste", "package_qty": "", "package_unit": ""}, {"name": "All-Purpose Flour", "quantity": "1", "unit": "cup", "modifiers": "", "package_qty": "", "package_unit": ""}, {"name": "Olive Oil", "quantity": "4", "unit": "tbsp", "modifiers": "good", "package_qty": "", "package_unit": ""}, {"name": "Carrot", "quantity": "2", "unit": "cup", "modifiers": "chopped", "package_qty": "", "package_unit": ""}, {"name": "Onion", "quantity": "2", "unit": "cup", "modifiers": "yellow, chopped", "package_qty": "", "package_unit": ""}, {"name": "Celery", "quantity": "2", "unit": "cup", "modifiers": "chopped", "package_qty": "", "package_unit": ""}, {"name": "Leek", "quantity": "2", "unit": "cup", "modifiers": "white and light green parts, chopped", "package_qty": "", "package_unit": ""}, {"name": "Garlic", "quantity": "5", "unit": "clove", "modifiers": "large, peeled, crushed", "package_qty": "", "package_unit": ""}, {"name": "Red Wine", "quantity": "2", "unit": "cup", "modifiers": "good, such as Burgundy", "package_qty": "", "package_unit": ""}, {"name": "Cognac Brandy", "quantity": "2", "unit": "tbsp", "modifiers": "", "package_qty": "", "package_unit": ""}, {"name": "Tomato", "quantity": "1", "unit": "can", "modifiers": "whole plum, in puree", "package_qty": "28", "package_unit": "oz"}, {"name": "Chicken Stock", "quantity": "1", "unit": "cup", "modifiers": "preferably homemade", "package_qty": "", "package_unit": ""}, {"name": "chicken bouillon cube", "quantity": "1", "unit": "whole", "modifiers": "", "package_qty": "", "package_unit": ""}, {"name": "Thyme", "quantity": "3", "unit": "sprig", "modifiers": "fresh", "package_qty": "", "package_unit": ""}, {"name": "Rosemary", "quantity": "2", "unit": "sprig", "modifiers": "fresh", "package_qty": "", "package_unit": ""}, {"name": "Unsalted Butter", "quantity": "1", "unit": "tbsp", "modifiers": "room temperature", "package_qty": "", "package_unit": ""}]}

matched_ingredients:
  [{"raw_name": "Beef Chuck", "ingredient_name": "Beef Chuck", "quantity": "1", "unit": "whole"}, {"raw_name": "Salt", "ingredient_name": "Salt", "quantity": "1", "unit": "pinch"}, {"raw_name": "Black Pepper", "ingredient_name": "Black Pepper", "quantity": "1", "unit": "pinch"}, {"raw_name": "All-Purpose Flour", "ingredient_name": "All-Purpose Flour", "quantity": "1", "unit": "c"}, {"raw_name": "Olive Oil", "ingredient_name": "Olive Oil", "quantity": "4", "unit": "tbsp"}, {"raw_name": "Carrot", "ingredient_name": "Carrot", "quantity": "2", "unit": "c"}, {"raw_name": "Onion", "ingredient_name": "Onion", "quantity": "2", "unit": "c"}, {"raw_name": "Celery", "ingredient_name": "Celery", "quantity": "2", "unit": "c"}, {"raw_name": "Leek", "ingredient_name": "Leek", "quantity": "2", "unit": "c"}, {"raw_name": "Garlic", "ingredient_name": "Garlic", "quantity": "5", "unit": "clove"}, {"raw_name": "Red Wine", "ingredient_name": "Red Wine", "quantity": "2", "unit": "c"}, {"raw_name": "Cognac Brandy", "ingredient_name": "Cognac Brandy", "quantity": "2", "unit": "tbsp"}, {"raw_name": "Tomato", "ingredient_name": "Tomato", "quantity": "1", "unit": "can"}, {"raw_name": "Chicken Stock", "ingredient_name": "Chicken Stock", "quantity": "1", "unit": "c"}, {"raw_name": "Chicken Bouillon", "ingredient_name": "Chicken Bouillon", "quantity": "1", "unit": "whole"}, {"raw_name": "Thyme", "ingredient_name": "Thyme", "quantity": "3", "unit": "sprig"}, {"raw_name": "Rosemary", "ingredient_name": "Rosemary", "quantity": "2", "unit": "sprig"}, {"raw_name": "Butter", "ingredient_name": "Butter", "quantity": "1", "unit": "tbsp"}]


created_at: 2026-04-04 17:12:46.430928
status: success
provider: claude
filename: American/Roasts & Pot Pies/Mini Shepherd's Pot Pies.pdf
recipe_title: Mini Shepherd's Pot Pies
unmatched_items: []
unit_warnings: []
resolution_tiers: {"exact": 10, "common_name": 1}
raw_ai_response:
  {"title": "Mini Shepherd's Pot Pies", "description": "Individual mini shepherd's pies baked in muffin tins with flaky pie crust shells, savory ground beef and vegetable filling, topped with cheddar cheese and mashed potatoes.", "servings": 12, "prep_time": 30, "cook_time": 55, "cuisine": "American", "tags": ["Comfort Food", "Baked", "Family Friendly", "Kid Friendly", "Hearty", "Weekend Project"], "culinary_type": "Main Course", "instructions": "Step 1: Prepare mashed potatoes and set aside.\nStep 2: Over medium high heat, brown beef until fully cooked. Drain off any excess fat. Remove and set aside.\nStep 3: Saute onions and garlic until translucent.\nStep 4: Add mixed vegetables, crumble the beef bouillon cube and simmer until vegetables are soft.\nStep 5: Add beef, Worcestershire sauce, tomato paste and season with pepper to taste. Reduce heat to medium and simmer for 15 minutes.\nStep 6: Meanwhile, unroll the pie crusts and roll each crust to 12\" in diameter. Cut six 4\" rounds from each crust.\nStep 7: Press each round on the bottom and sides of a muffin pan and bake at 350 degrees F for 7-10 minutes or until lightly browned. Remove from oven and set aside.\nStep 8: Divide beef mixture among all 12 cups.\nStep 9: Top with some cheddar cheese and finish with mashed potatoes.\nStep 10: Bake at 350 degrees F for 30 minutes or until crusts are golden brown and mashed potatoes have browned.\nStep 11: Broil at 450 degrees F for 5 minutes if needed to brown the potatoes some more.\nStep 12: Let it stand for 10 minutes and remove by running a knife outside each pie.\nStep 13: Dish and serve warm.", "has_ingredient_list": true, "extraction_confidence": "high", "ingredients": [{"name": "Pie crust", "quantity": "2", "unit": "whole", "modifiers": "refrigerated, 9 inch", "package_qty": "", "package_unit": ""}, {"name": "Ground Beef", "quantity": "1", "unit": "lb", "modifiers": "", "package_qty": "", "package_unit": ""}, {"name": "Onion", "quantity": "1/4", "unit": "whole", "modifiers": "yellow, diced", "package_qty": "", "package_unit": ""}, {"name": "Garlic", "quantity": "1/2", "unit": "tsp", "modifiers": "minced", "package_qty": "", "package_unit": ""}, {"name": "Mixed Vegetables", "quantity": "1", "unit": "cup", "modifiers": "frozen", "package_qty": "", "package_unit": ""}, {"name": "beef bouillon cube", "quantity": "1", "unit": "whole", "modifiers": "", "package_qty": "", "package_unit": ""}, {"name": "Worcestershire Sauce", "quantity": "1", "unit": "tbsp", "modifiers": "", "package_qty": "", "package_unit": ""}, {"name": "Tomato Paste", "quantity": "1", "unit": "tsp", "modifiers": "optional", "package_qty": "", "package_unit": ""}, {"name": "Pepper", "quantity": "1", "unit": "pinch", "modifiers": "to taste", "package_qty": "", "package_unit": ""}, {"name": "Cheddar Cheese", "quantity": "1/2", "unit": "cup", "modifiers": "shredded", "package_qty": "", "package_unit": ""}, {"name": "Potato", "quantity": "2", "unit": "cup", "modifiers": "mashed", "package_qty": "", "package_unit": ""}]}

matched_ingredients:
  [{"raw_name": "Pie crust", "ingredient_name": "Pie crust", "quantity": "2", "unit": "whole"}, {"raw_name": "Ground Beef", "ingredient_name": "Ground Beef", "quantity": "1", "unit": "lb"}, {"raw_name": "Onion", "ingredient_name": "Onion", "quantity": "1/4", "unit": "whole"}, {"raw_name": "Garlic", "ingredient_name": "Garlic", "quantity": "1/2", "unit": "tsp"}, {"raw_name": "Mixed Vegetables", "ingredient_name": "Mixed Vegetables", "quantity": "1", "unit": "c"}, {"raw_name": "Beef Bouillon", "ingredient_name": "Beef Bouillon", "quantity": "1", "unit": "whole"}, {"raw_name": "Worcestershire Sauce", "ingredient_name": "Worcestershire Sauce", "quantity": "1", "unit": "tbsp"}, {"raw_name": "Tomato Paste", "ingredient_name": "Tomato Paste", "quantity": "1", "unit": "tsp"}, {"raw_name": "Pepper", "ingredient_name": "Pepper", "quantity": "1", "unit": "pinch"}, {"raw_name": "Cheddar Cheese", "ingredient_name": "Cheddar Cheese", "quantity": "1/2", "unit": "c"}, {"raw_name": "Potato", "ingredient_name": "Potato", "quantity": "2", "unit": "c"}]


created_at: 2026-04-04 17:13:40.408735
status: success
provider: claude
filename: American/Roasts & Pot Pies/Pulled Pork.pdf
recipe_title: 3-Ingredient Pulled Pork
unmatched_items: []
unit_warnings: []
resolution_tiers: {"exact": 4}
raw_ai_response:
  {"title": "3-Ingredient Pulled Pork", "description": "A simple slow cooker pulled pork made with just three ingredients \u2014 pork tenderloin, root beer, and barbecue sauce. Served on hamburger buns for an easy and delicious meal.", "servings": 8, "prep_time": 5, "cook_time": 360, "cuisine": "American", "tags": ["Slow Cook", "Few Ingredients", "Comfort Food", "Family Friendly", "Make Ahead", "Weeknight"], "culinary_type": "Main Course", "instructions": "Step 1: Place the pork tenderloin in a slow cooker and pour the can of root beer over the meat. Cover and cook on low for 6 hours or until pork shreds easily with a fork.\nStep 2: After pork has cooked, drain and discard the root beer. Shred the pork and place it back in the slow cooker. Pour the barbecue sauce over the pork and stir to combine. Serve immediately or keep warm in slow cooker until ready to serve. Serve on hamburger buns.", "has_ingredient_list": true, "extraction_confidence": "high", "ingredients": [{"name": "Pork Tenderloin", "quantity": "1", "unit": "whole", "modifiers": "", "package_qty": "2", "package_unit": "lb"}, {"name": "Soft drink", "quantity": "1", "unit": "can", "modifiers": "root beer", "package_qty": "12", "package_unit": "oz"}, {"name": "Barbecue Sauce", "quantity": "1", "unit": "bottle", "modifiers": "", "package_qty": "18", "package_unit": "oz"}, {"name": "Hamburger Bun", "quantity": "8", "unit": "whole", "modifiers": "", "package_qty": "", "package_unit": ""}]}

matched_ingredients:
  [{"raw_name": "Pork Tenderloin", "ingredient_name": "Pork Tenderloin", "quantity": "1", "unit": "whole"}, {"raw_name": "Soft drink", "ingredient_name": "Soft drink", "quantity": "1", "unit": "can"}, {"raw_name": "Barbecue Sauce", "ingredient_name": "Barbecue Sauce", "quantity": "1", "unit": "btl"}, {"raw_name": "Hamburger Bun", "ingredient_name": "Hamburger Bun", "quantity": "8", "unit": "whole"}]


created_at: 2026-04-04 17:13:56.260100
status: success
provider: claude
filename: American/Sandwiches/Buffalo Chicken Panini.pdf
recipe_title: Buffalo Chicken Panini
unmatched_items: []
unit_warnings: []
resolution_tiers: {"failed": 1, "product_off_fallback": 1, "exact": 9}
raw_ai_response:
  {"title": "Buffalo Chicken Panini", "description": "A hearty panini featuring pulled chicken in BBQ sauce topped with a creamy blue cheese dressing made with mayonnaise, sour cream, celery, and green onions, pressed until golden and crispy.", "servings": 4, "prep_time": 0, "cook_time": 15, "cuisine": "American", "tags": ["Quick", "Under 30 Minutes", "Stovetop", "Comfort Food", "Game Day", "Family Friendly"], "culinary_type": "Sandwich", "instructions": "Step 1: Heat a heavy skillet over medium heat.\nStep 2: In a bowl, mix together the mayonnaise, sour cream, blue cheese, celery, and green onions.\nStep 3: Season the mixture with salt and pepper.\nStep 4: Slice the rolls in half and butter each slice on the outside.\nStep 5: Spread blue cheese dressing on the inside of each roll.\nStep 6: Pile the chicken on the bottom half of the roll and cover with the top half.\nStep 7: Place in the hot skillet and press down with a heavy spatula or small heavy pan for about 2 minutes.\nStep 8: Flip and press down for an additional 2 to 3 minutes.\nStep 9: Serve and enjoy!", "has_ingredient_list": true, "extraction_confidence": "high", "ingredients": [{"name": "Pulled Chicken in BBQ Sauce", "quantity": "1", "unit": "package", "modifiers": "", "package_qty": "", "package_unit": ""}, {"name": "Mayonnaise", "quantity": "1/4", "unit": "cup", "modifiers": "low fat", "package_qty": "", "package_unit": ""}, {"name": "Light Sour Cream", "quantity": "2", "unit": "tbsp", "modifiers": "", "package_qty": "", "package_unit": ""}, {"name": "Blue Cheese", "quantity": "1/4", "unit": "cup", "modifiers": "crumbled", "package_qty": "", "package_unit": ""}, {"name": "Green Onion", "quantity": "1", "unit": "whole", "modifiers": "white and light green parts, finely chopped", "package_qty": "", "package_unit": ""}, {"name": "Celery", "quantity": "1", "unit": "stalk", "modifiers": "trimmed, thinly chopped", "package_qty": "", "package_unit": ""}, {"name": "Salt", "quantity": "1", "unit": "pinch", "modifiers": "to taste", "package_qty": "", "package_unit": ""}, {"name": "Black Pepper", "quantity": "1", "unit": "pinch", "modifiers": "freshly ground, to taste", "package_qty": "", "package_unit": ""}, {"name": "Sandwich Roll", "quantity": "4", "unit": "whole", "modifiers": "panini", "package_qty": "", "package_unit": ""}, {"name": "Butter", "quantity": "1", "unit": "tbsp", "modifiers": "", "package_qty": "", "package_unit": ""}]}

matched_ingredients:
  [{"raw_name": "?", "ingredient_name": null, "quantity": "1", "unit": "pkg"}, {"raw_name": "Mayonnaise", "ingredient_name": "Mayonnaise", "quantity": "1/4", "unit": "c"}, {"raw_name": "Sour Cream", "ingredient_name": "Sour Cream", "quantity": "2", "unit": "tbsp"}, {"raw_name": "Blue Cheese", "ingredient_name": "Blue Cheese", "quantity": "1/4", "unit": "c"}, {"raw_name": "Green Onion", "ingredient_name": "Green Onion", "quantity": "1", "unit": "whole"}, {"raw_name": "Celery", "ingredient_name": "Celery", "quantity": "1", "unit": "stalk"}, {"raw_name": "Salt", "ingredient_name": "Salt", "quantity": "1", "unit": "pinch"}, {"raw_name": "Black Pepper", "ingredient_name": "Black Pepper", "quantity": "1", "unit": "pinch"}, {"raw_name": "Sandwich Roll", "ingredient_name": "Sandwich Roll", "quantity": "4", "unit": "whole"}, {"raw_name": "Butter", "ingredient_name": "Butter", "quantity": "1", "unit": "tbsp"}]


created_at: 2026-04-04 17:14:07.934277
status: success
provider: claude
filename: American/Sandwiches/Classic Meatball Sub.pdf
recipe_title: Classic Meatball Subs
unmatched_items: []
unit_warnings: []
resolution_tiers: {"exact": 6}
raw_ai_response:
  {"title": "Classic Meatball Subs", "description": "A hearty meatball sub made with toasted baguette, turkey or meatless meatballs, marinara sauce, saut\u00e9ed onions and peppers, and melted mozzarella cheese.", "servings": 4, "prep_time": 5, "cook_time": 20, "cuisine": "American", "tags": ["Comfort Food", "Weeknight", "Family Friendly", "Hearty", "Under 30 Minutes", "Baked"], "culinary_type": "Sandwich", "instructions": "Step 1: Prepare meatballs according to package directions.\nStep 2: Toast bread in oven at 300 degrees for about 5-8 minutes or until slightly golden and warm.\nStep 3: Remove from oven and add meatballs, onions, peppers, sauce, and cheese to bread.\nStep 4: Return to oven until cheese is melted.", "has_ingredient_list": true, "extraction_confidence": "high", "ingredients": [{"name": "Baguette", "quantity": "1", "unit": "whole", "modifiers": "cut into fours, sliced down the middle", "package_qty": "", "package_unit": ""}, {"name": "Meatballs", "quantity": "1", "unit": "package", "modifiers": "frozen, turkey", "package_qty": "", "package_unit": ""}, {"name": "Marinara Sauce", "quantity": "2", "unit": "cup", "modifiers": "organic", "package_qty": "", "package_unit": ""}, {"name": "Onion", "quantity": "1", "unit": "whole", "modifiers": "thinly sliced, saut\u00e9ed in olive oil", "package_qty": "", "package_unit": ""}, {"name": "Bell Pepper", "quantity": "1", "unit": "whole", "modifiers": "green, thinly sliced, saut\u00e9ed in olive oil", "package_qty": "", "package_unit": ""}, {"name": "Mozzarella Cheese", "quantity": "1", "unit": "package", "modifiers": "sliced", "package_qty": "", "package_unit": ""}]}

matched_ingredients:
  [{"raw_name": "Baguette", "ingredient_name": "Baguette", "quantity": "1", "unit": "whole"}, {"raw_name": "Meatballs", "ingredient_name": "Meatballs", "quantity": "1", "unit": "pkg"}, {"raw_name": "Marinara Sauce", "ingredient_name": "Marinara Sauce", "quantity": "2", "unit": "c"}, {"raw_name": "Onion", "ingredient_name": "Onion", "quantity": "1", "unit": "whole"}, {"raw_name": "Bell Pepper", "ingredient_name": "Bell Pepper", "quantity": "1", "unit": "whole"}, {"raw_name": "Mozzarella Cheese", "ingredient_name": "Mozzarella Cheese", "quantity": "1", "unit": "pkg"}]


created_at: 2026-04-04 17:14:18.107233
status: success
provider: claude
filename: American/Sandwiches/Mini Barbecue Meatball Sliders.pdf
recipe_title: Mini Barbecue Meatball Sliders
unmatched_items: []
unit_warnings: []
resolution_tiers: {"exact": 4}
raw_ai_response:
  {"title": "Mini Barbecue Meatball Sliders", "description": "Made with Light Turkey Meatballs, these little sliders are big on flavor and low on calories. A quick and easy recipe perfect for parties or weeknight meals.", "servings": 12, "prep_time": 0, "cook_time": 12, "cuisine": "American", "tags": ["Quick", "Under 30 Minutes", "Game Day", "Kid Friendly", "Few Ingredients", "Family Friendly"], "culinary_type": "Sandwich", "instructions": "Step 1: Preheat broiler, with rack set 4 inches from heat.\nStep 2: Lightly oil a rimmed baking sheet; place meatballs on sheet.\nStep 3: Broil, turning occasionally, until cooked through, 10 to 12 minutes.\nStep 4: Place meatballs inside rolls and top with barbecue sauce.", "has_ingredient_list": true, "extraction_confidence": "high", "ingredients": [{"name": "Safflower Oil", "quantity": "1", "unit": "tbsp", "modifiers": "for baking sheet", "package_qty": "", "package_unit": ""}, {"name": "Meatballs", "quantity": "12", "unit": "whole", "modifiers": "light turkey", "package_qty": "", "package_unit": ""}, {"name": "Dinner Roll", "quantity": "12", "unit": "whole", "modifiers": "party-size potato, split", "package_qty": "", "package_unit": ""}, {"name": "Barbecue Sauce", "quantity": "1/2", "unit": "cup", "modifiers": "best-quality, store-bought", "package_qty": "", "package_unit": ""}]}

matched_ingredients:
  [{"raw_name": "Safflower Oil", "ingredient_name": "Safflower Oil", "quantity": "1", "unit": "tbsp"}, {"raw_name": "Meatballs", "ingredient_name": "Meatballs", "quantity": "12", "unit": "whole"}, {"raw_name": "Dinner Roll", "ingredient_name": "Dinner Roll", "quantity": "12", "unit": "whole"}, {"raw_name": "Barbecue Sauce", "ingredient_name": "Barbecue Sauce", "quantity": "1/2", "unit": "c"}]


created_at: 2026-04-04 17:15:17.357837
status: success
provider: claude
filename: American/Sandwiches/Wendy’s chicken Caesar stuffed pita.pdf
recipe_title: Wendy's Chicken Caesar Fresh Stuffed Pita
unmatched_items: []
unit_warnings: []
resolution_tiers: {"exact": 23, "failed": 1, "product_off_fallback": 1}
raw_ai_response:
  {"title": "Wendy's Chicken Caesar Fresh Stuffed Pita", "description": "A copycat version of Wendy's Cold Fresh Stuffed Pita sandwich featuring grilled chicken breast, romaine salad, and homemade Caesar-style dressing wrapped in a warm pita bread.", "servings": 4, "prep_time": 20, "cook_time": 10, "cuisine": "American", "tags": ["Copycat", "Grilled", "Light", "High Protein", "Family Friendly", "Weeknight"], "culinary_type": "Sandwich", "instructions": "Step 1: Make the dressing by first dissolving the gelatin in the water. Heat the mixture in the microwave on high for two minutes or until it begins to rapidly boil.\nStep 2: Add the vinegar, then whisk while adding the oil. Add bell pepper, salt, garlic powder, worcestershire, black pepper, parsley, oregano, thyme and basil.\nStep 3: Let dressing cool for about 15 minutes before adding cheeses and egg substitute. Whisk until slightly thicker, then chill. Overnight refrigeration makes the dressing thicker.\nStep 4: Preheat a barbecue or indoor grill to medium heat. Salt and pepper the chicken, then grill it for 5 minutes per side, or until done. Remove chicken from the grill and dice it.\nStep 5: While chicken cooks, prepare the salad by combining the romaine lettuce, red cabbage and shredded carrot in a large bowl and toss.\nStep 6: Prepare the sandwiches by first microwaving each pita for 20 seconds.\nStep 7: Fold each pita in half like a taco, then add 1 to 1 1/2 cups of the romaine salad into the bread.\nStep 8: Add about 1/3 cup of diced chicken on top of the salad in the pita.\nStep 9: Pour about a tablespoon of dressing over each sandwich.\nStep 10: Sprinkle about a teaspoon of shredded fresh parmesan on top of each one and serve.", "has_ingredient_list": true, "extraction_confidence": "high", "ingredients": [{"name": "Water", "quantity": "1/2", "unit": "cup", "modifiers": "", "package_qty": "", "package_unit": ""}, {"name": "Gelatin", "quantity": "1/8", "unit": "tsp", "modifiers": "dry, unflavored", "package_qty": "", "package_unit": ""}, {"name": "White Wine Vinegar", "quantity": "1/3", "unit": "cup", "modifiers": "", "package_qty": "", "package_unit": ""}, {"name": "Olive Oil", "quantity": "1/2", "unit": "cup", "modifiers": "", "package_qty": "", "package_unit": ""}, {"name": "Bell Pepper", "quantity": "1/2", "unit": "tsp", "modifiers": "red, finely minced", "package_qty": "", "package_unit": ""}, {"name": "Salt", "quantity": "1/2", "unit": "tsp", "modifiers": "", "package_qty": "", "package_unit": ""}, {"name": "Garlic Powder", "quantity": "1/4", "unit": "tsp", "modifiers": "", "package_qty": "", "package_unit": ""}, {"name": "Worcestershire Sauce", "quantity": "1/4", "unit": "tsp", "modifiers": "", "package_qty": "", "package_unit": ""}, {"name": "Black Pepper", "quantity": "1/8", "unit": "tsp", "modifiers": "coarse ground", "package_qty": "", "package_unit": ""}, {"name": "Parsley", "quantity": "1", "unit": "dash", "modifiers": "", "package_qty": "", "package_unit": ""}, {"name": "Oregano", "quantity": "1", "unit": "dash", "modifiers": "", "package_qty": "", "package_unit": ""}, {"name": "Thyme", "quantity": "1", "unit": "dash", "modifiers": "", "package_qty": "", "package_unit": ""}, {"name": "Basil", "quantity": "1", "unit": "dash", "modifiers": "", "package_qty": "", "package_unit": ""}, {"name": "Romano Cheese", "quantity": "1", "unit": "tbsp", "modifiers": "grated", "package_qty": "", "package_unit": ""}, {"name": "Parmesan Cheese", "quantity": "1", "unit": "tbsp", "modifiers": "grated", "package_qty": "", "package_unit": ""}, {"name": "egg substitute", "quantity": "2", "unit": "tbsp", "modifiers": "", "package_qty": "", "package_unit": ""}, {"name": "Chicken Breast", "quantity": "2", "unit": "whole", "modifiers": "boneless, skinless", "package_qty": "", "package_unit": ""}, {"name": "Salt", "quantity": "1", "unit": "pinch", "modifiers": "to taste", "package_qty": "", "package_unit": ""}, {"name": "Black Pepper", "quantity": "1", "unit": "pinch", "modifiers": "to taste", "package_qty": "", "package_unit": ""}, {"name": "Romaine Lettuce", "quantity": "6", "unit": "cup", "modifiers": "chopped", "package_qty": "", "package_unit": ""}, {"name": "Red Cabbage", "quantity": "1/4", "unit": "cup", "modifiers": "shredded", "package_qty": "", "package_unit": ""}, {"name": "Carrot", "quantity": "1/4", "unit": "cup", "modifiers": "shredded", "package_qty": "", "package_unit": ""}, {"name": "Pita bread", "quantity": "4", "unit": "whole", "modifiers": "", "package_qty": "", "package_unit": ""}, {"name": "Parmesan Cheese", "quantity": "4", "unit": "tsp", "modifiers": "shredded, fresh", "package_qty": "", "package_unit": ""}]}

matched_ingredients:
  [{"raw_name": "Water", "ingredient_name": "Water", "quantity": "1/2", "unit": "c"}, {"raw_name": "Gelatin", "ingredient_name": "Gelatin", "quantity": "1/8", "unit": "tsp"}, {"raw_name": "White Wine Vinegar", "ingredient_name": "White Wine Vinegar", "quantity": "1/3", "unit": "c"}, {"raw_name": "Olive Oil", "ingredient_name": "Olive Oil", "quantity": "1/2", "unit": "c"}, {"raw_name": "Bell Pepper", "ingredient_name": "Bell Pepper", "quantity": "1/2", "unit": "tsp"}, {"raw_name": "Salt", "ingredient_name": "Salt", "quantity": "1/2", "unit": "tsp"}, {"raw_name": "Garlic Powder", "ingredient_name": "Garlic Powder", "quantity": "1/4", "unit": "tsp"}, {"raw_name": "Worcestershire Sauce", "ingredient_name": "Worcestershire Sauce", "quantity": "1/4", "unit": "tsp"}, {"raw_name": "Black Pepper", "ingredient_name": "Black Pepper", "quantity": "1/8", "unit": "tsp"}, {"raw_name": "Parsley", "ingredient_name": "Parsley", "quantity": "1", "unit": "dash"}, {"raw_name": "Oregano", "ingredient_name": "Oregano", "quantity": "1", "unit": "dash"}, {"raw_name": "Thyme", "ingredient_name": "Thyme", "quantity": "1", "unit": "dash"}, {"raw_name": "Basil", "ingredient_name": "Basil", "quantity": "1", "unit": "dash"}, {"raw_name": "Romano Cheese", "ingredient_name": "Romano Cheese", "quantity": "1", "unit": "tbsp"}, {"raw_name": "Parmesan Cheese", "ingredient_name": "Parmesan Cheese", "quantity": "1", "unit": "tbsp"}, {"raw_name": "?", "ingredient_name": null, "quantity": "2", "unit": "tbsp"}, {"raw_name": "Chicken Breast", "ingredient_name": "Chicken Breast", "quantity": "2", "unit": "whole"}, {"raw_name": "Salt", "ingredient_name": "Salt", "quantity": "1", "unit": "pinch"}, {"raw_name": "Black Pepper", "ingredient_name": "Black Pepper", "quantity": "1", "unit": "pinch"}, {"raw_name": "Romaine Lettuce", "ingredient_name": "Romaine Lettuce", "quantity": "6", "unit": "c"}, {"raw_name": "Cabbage", "ingredient_name": "Cabbage", "quantity": "1/4", "unit": "c"}, {"raw_name": "Carrot", "ingredient_name": "Carrot", "quantity": "1/4", "unit": "c"}, {"raw_name": "Pita bread", "ingredient_name": "Pita bread", "quantity": "4", "unit": "whole"}, {"raw_name": "Parmesan Cheese", "ingredient_name": "Parmesan Cheese", "quantity": "4", "unit": "tsp"}]


created_at: 2026-04-04 17:16:15.003318
status: success
provider: claude
filename: American/Seafood/Fried Garlic Lime Shrimp.pdf
recipe_title: Fried Garlic Lime Shrimp
unmatched_items: []
unit_warnings: []
resolution_tiers: {"exact": 10}
raw_ai_response:
  {"title": "Fried Garlic Lime Shrimp", "description": "Crispy panko-breaded shrimp marinated in garlic, lime, and lemon juice, then fried until golden brown. Served alongside a bean sprout slaw for a delicious crunchy meal.", "servings": 4, "prep_time": 15, "cook_time": 6, "cuisine": "American", "tags": ["Fried", "Crispy", "Quick", "Stovetop", "High Protein", "Under 30 Minutes"], "culinary_type": "Main Course", "instructions": "Step 1: Marinate the Shrimp: In a bowl, combine shrimp, garlic, lime juice, lemon juice, salt, and pepper. Let it marinate for 10-15 minutes. This step infuses the shrimp with flavor before breading.\nStep 2: Bread the Shrimp: Set up a breading station with three bowls: one with flour, one with beaten eggs, and one with panko breadcrumbs. Dip each marinated shrimp first in flour, then egg, and finally coat with panko breadcrumbs.\nStep 3: Fry the Shrimp: Heat oil in a large skillet over medium-high heat. Fry the breaded shrimp in batches, cooking until golden brown and crispy, about 2-3 minutes per side. Drain on a paper towel-lined plate.\nStep 4: Serve: Serve the crispy fried shrimp alongside the bean sprout slaw. You can even place the slaw on top of the shrimp for a delicious crunch with each bite.", "has_ingredient_list": true, "extraction_confidence": "high", "ingredients": [{"name": "Shrimp", "quantity": "1", "unit": "lb", "modifiers": "raw, peeled, deveined", "package_qty": "", "package_unit": ""}, {"name": "Garlic", "quantity": "2", "unit": "clove", "modifiers": "minced", "package_qty": "", "package_unit": ""}, {"name": "Lime", "quantity": "1", "unit": "whole", "modifiers": "juiced", "package_qty": "", "package_unit": ""}, {"name": "Lemon", "quantity": "1/2", "unit": "whole", "modifiers": "juiced", "package_qty": "", "package_unit": ""}, {"name": "Salt", "quantity": "1", "unit": "pinch", "modifiers": "to taste", "package_qty": "", "package_unit": ""}, {"name": "Black Pepper", "quantity": "1", "unit": "pinch", "modifiers": "to taste", "package_qty": "", "package_unit": ""}, {"name": "All-Purpose Flour", "quantity": "1", "unit": "cup", "modifiers": "", "package_qty": "", "package_unit": ""}, {"name": "Egg", "quantity": "2", "unit": "whole", "modifiers": "beaten", "package_qty": "", "package_unit": ""}, {"name": "Panko Bread Crumbs", "quantity": "1", "unit": "cup", "modifiers": "", "package_qty": "", "package_unit": ""}, {"name": "Cooking oil", "quantity": "1", "unit": "cup", "modifiers": "for frying", "package_qty": "", "package_unit": ""}]}

matched_ingredients:
  [{"raw_name": "Shrimp", "ingredient_name": "Shrimp", "quantity": "1", "unit": "lb"}, {"raw_name": "Garlic", "ingredient_name": "Garlic", "quantity": "2", "unit": "clove"}, {"raw_name": "Lime", "ingredient_name": "Lime", "quantity": "1", "unit": "whole"}, {"raw_name": "Lemon", "ingredient_name": "Lemon", "quantity": "1/2", "unit": "whole"}, {"raw_name": "Salt", "ingredient_name": "Salt", "quantity": "1", "unit": "pinch"}, {"raw_name": "Black Pepper", "ingredient_name": "Black Pepper", "quantity": "1", "unit": "pinch"}, {"raw_name": "All-Purpose Flour", "ingredient_name": "All-Purpose Flour", "quantity": "1", "unit": "c"}, {"raw_name": "Egg", "ingredient_name": "Egg", "quantity": "2", "unit": "whole"}, {"raw_name": "Panko Bread Crumbs", "ingredient_name": "Panko Bread Crumbs", "quantity": "1", "unit": "c"}, {"raw_name": "Cooking oil", "ingredient_name": "Cooking oil", "quantity": "1", "unit": "c"}]


created_at: 2026-04-04 17:27:20.274130
status: success
provider: claude
filename: Breads & Rolls/Bread/STRAWBERRY NUT BREAD.pdf
recipe_title: Strawberry Nut Bread
unmatched_items: []
unit_warnings: []
resolution_tiers: {"exact": 12}
raw_ai_response:
  {"title": "Strawberry Nut Bread", "description": "A moist and flavorful quick bread made with strawberry jam, sour cream, and walnuts, yielding five small loaves perfect for gifting or sharing.", "servings": 5, "prep_time": 20, "cook_time": 55, "cuisine": "American", "tags": ["Baked", "Make Ahead", "Freezer Friendly", "Potluck", "Sweet", "Holiday"], "culinary_type": "Bread & Pastry", "instructions": "Step 1: In a mixing bowl, cream butter, sugar, vanilla, and lemon extract until fluffy.\nStep 2: Add eggs one at a time, beating well after each addition.\nStep 3: Sift together flour, salt, cream of tartar, and baking soda.\nStep 4: Combine strawberry jam and sour cream.\nStep 5: Add jam mixture alternately with dry ingredients to the creamed mixture, beating until well combined.\nStep 6: Stir in walnuts.\nStep 7: Divide batter among 5 greased and floured 4 1/2 x 2 3/4 x 2 1/4-inch loaf pans.\nStep 8: Bake in a 350\u00b0F oven for 50-55 minutes or until done.\nStep 9: Cool 10 minutes in pans, then remove and cool completely on wire racks.", "has_ingredient_list": true, "extraction_confidence": "high", "ingredients": [{"name": "Butter", "quantity": "1", "unit": "cup", "modifiers": "", "package_qty": "", "package_unit": ""}, {"name": "Sugar", "quantity": "1 1/2", "unit": "cup", "modifiers": "", "package_qty": "", "package_unit": ""}, {"name": "Vanilla Extract", "quantity": "1", "unit": "tsp", "modifiers": "", "package_qty": "", "package_unit": ""}, {"name": "Vanilla Extract", "quantity": "1/2", "unit": "tsp", "modifiers": "lemon extract", "package_qty": "", "package_unit": ""}, {"name": "Egg", "quantity": "4", "unit": "whole", "modifiers": "", "package_qty": "", "package_unit": ""}, {"name": "All-Purpose Flour", "quantity": "3", "unit": "cup", "modifiers": "sifted", "package_qty": "", "package_unit": ""}, {"name": "Salt", "quantity": "1", "unit": "tsp", "modifiers": "", "package_qty": "", "package_unit": ""}, {"name": "Cream of Tartar", "quantity": "1", "unit": "tsp", "modifiers": "", "package_qty": "", "package_unit": ""}, {"name": "Baking Soda", "quantity": "1/2", "unit": "tsp", "modifiers": "", "package_qty": "", "package_unit": ""}, {"name": "Strawberry Jam", "quantity": "1", "unit": "cup", "modifiers": "", "package_qty": "", "package_unit": ""}, {"name": "Sour Cream", "quantity": "1/2", "unit": "cup", "modifiers": "", "package_qty": "", "package_unit": ""}, {"name": "Walnuts", "quantity": "1", "unit": "cup", "modifiers": "broken", "package_qty": "", "package_unit": ""}]}

matched_ingredients:
  [{"raw_name": "Butter", "ingredient_name": "Butter", "quantity": "1", "unit": "c"}, {"raw_name": "Sugar", "ingredient_name": "Sugar", "quantity": "1 1/2", "unit": "c"}, {"raw_name": "Vanilla Extract", "ingredient_name": "Vanilla Extract", "quantity": "1", "unit": "tsp"}, {"raw_name": "Vanilla Extract", "ingredient_name": "Vanilla Extract", "quantity": "1/2", "unit": "tsp"}, {"raw_name": "Egg", "ingredient_name": "Egg", "quantity": "4", "unit": "whole"}, {"raw_name": "All-Purpose Flour", "ingredient_name": "All-Purpose Flour", "quantity": "3", "unit": "c"}, {"raw_name": "Salt", "ingredient_name": "Salt", "quantity": "1", "unit": "tsp"}, {"raw_name": "Cream of Tartar", "ingredient_name": "Cream of Tartar", "quantity": "1", "unit": "tsp"}, {"raw_name": "Baking Soda", "ingredient_name": "Baking Soda", "quantity": "1/2", "unit": "tsp"}, {"raw_name": "Strawberry Jam", "ingredient_name": "Strawberry Jam", "quantity": "1", "unit": "c"}, {"raw_name": "Sour Cream", "ingredient_name": "Sour Cream", "quantity": "1/2", "unit": "c"}, {"raw_name": "Walnuts", "ingredient_name": "Walnuts", "quantity": "1", "unit": "c"}]


created_at: 2026-04-04 17:28:32.183123
status: success
provider: claude
filename: Breads & Rolls/Bread/Streusel Blueberry Buckle.pdf
recipe_title: Streusel Blueberry Buckle
unmatched_items: []
unit_warnings: []
resolution_tiers: {"exact": 14}
raw_ai_response:
  {"title": "Streusel Blueberry Buckle", "description": "A homespun blueberry coffee cake topped with a cinnamon-nutmeg streusel crumble. So good you'll bake it for breakfast, brunch, or picnics.", "servings": 9, "prep_time": 10, "cook_time": 35, "cuisine": "American", "tags": ["Baked", "Comfort Food", "Family Friendly", "Breakfast / Brunch", "Sweet", "Potluck"], "culinary_type": "Dessert", "instructions": "Step 1: Heat oven to 375\u00b0F.\nStep 2: In a large mixer bowl, combine all blueberry buckle ingredients except blueberries. Beat at low speed, scraping bowl often, until well mixed (1 to 2 minutes).\nStep 3: By hand, fold blueberries into batter.\nStep 4: Spread batter into a greased and floured 9-inch square baking pan.\nStep 5: In a small bowl, stir together all streusel ingredients except butter. Cut in butter until crumbly; sprinkle over batter.\nStep 6: Bake for 30 to 35 minutes or until a wooden pick inserted in the center comes out clean.", "has_ingredient_list": true, "extraction_confidence": "high", "ingredients": [{"name": "All-Purpose Flour", "quantity": "2", "unit": "cup", "modifiers": "", "package_qty": "", "package_unit": ""}, {"name": "Sugar", "quantity": "3/4", "unit": "cup", "modifiers": "", "package_qty": "", "package_unit": ""}, {"name": "Milk", "quantity": "1/2", "unit": "cup", "modifiers": "", "package_qty": "", "package_unit": ""}, {"name": "Butter", "quantity": "1/4", "unit": "cup", "modifiers": "softened", "package_qty": "", "package_unit": ""}, {"name": "Egg", "quantity": "1", "unit": "whole", "modifiers": "", "package_qty": "", "package_unit": ""}, {"name": "Baking Powder", "quantity": "2", "unit": "tsp", "modifiers": "", "package_qty": "", "package_unit": ""}, {"name": "Salt", "quantity": "1/2", "unit": "tsp", "modifiers": "", "package_qty": "", "package_unit": ""}, {"name": "Nutmeg", "quantity": "1/2", "unit": "tsp", "modifiers": "", "package_qty": "", "package_unit": ""}, {"name": "Blueberry", "quantity": "1", "unit": "cup", "modifiers": "fresh or frozen", "package_qty": "", "package_unit": ""}, {"name": "Sugar", "quantity": "1/2", "unit": "cup", "modifiers": "", "package_qty": "", "package_unit": ""}, {"name": "All-Purpose Flour", "quantity": "1/3", "unit": "cup", "modifiers": "", "package_qty": "", "package_unit": ""}, {"name": "Cinnamon", "quantity": "1/2", "unit": "tsp", "modifiers": "", "package_qty": "", "package_unit": ""}, {"name": "Nutmeg", "quantity": "1/2", "unit": "tsp", "modifiers": "", "package_qty": "", "package_unit": ""}, {"name": "Butter", "quantity": "1/4", "unit": "cup", "modifiers": "softened", "package_qty": "", "package_unit": ""}]}

matched_ingredients:
  [{"raw_name": "All-Purpose Flour", "ingredient_name": "All-Purpose Flour", "quantity": "2", "unit": "c"}, {"raw_name": "Sugar", "ingredient_name": "Sugar", "quantity": "3/4", "unit": "c"}, {"raw_name": "Milk", "ingredient_name": "Milk", "quantity": "1/2", "unit": "c"}, {"raw_name": "Butter", "ingredient_name": "Butter", "quantity": "1/4", "unit": "c"}, {"raw_name": "Egg", "ingredient_name": "Egg", "quantity": "1", "unit": "whole"}, {"raw_name": "Baking Powder", "ingredient_name": "Baking Powder", "quantity": "2", "unit": "tsp"}, {"raw_name": "Salt", "ingredient_name": "Salt", "quantity": "1/2", "unit": "tsp"}, {"raw_name": "Nutmeg", "ingredient_name": "Nutmeg", "quantity": "1/2", "unit": "tsp"}, {"raw_name": "Blueberry", "ingredient_name": "Blueberry", "quantity": "1", "unit": "c"}, {"raw_name": "Sugar", "ingredient_name": "Sugar", "quantity": "1/2", "unit": "c"}, {"raw_name": "All-Purpose Flour", "ingredient_name": "All-Purpose Flour", "quantity": "1/3", "unit": "c"}, {"raw_name": "Cinnamon", "ingredient_name": "Cinnamon", "quantity": "1/2", "unit": "tsp"}, {"raw_name": "Nutmeg", "ingredient_name": "Nutmeg", "quantity": "1/2", "unit": "tsp"}, {"raw_name": "Butter", "ingredient_name": "Butter", "quantity": "1/4", "unit": "c"}]


created_at: 2026-04-04 17:29:02.583234
status: success
provider: claude
filename: Breads & Rolls/Bread/Zucchini bread (handwritten).pdf
recipe_title: Zucchini Bread
unmatched_items: []
unit_warnings: []
resolution_tiers: {"exact": 11}
raw_ai_response:
  {"title": "Zucchini Bread", "description": "A classic moist zucchini bread with cinnamon, vanilla, and nuts. Baked at 350\u00b0F for one hour in greased and floured pans.", "servings": 2, "prep_time": 15, "cook_time": 60, "cuisine": "American", "tags": ["Baked", "Comfort Food", "Family Friendly", "Make Ahead", "Freezer Friendly", "Sweet"], "culinary_type": "Bread & Pastry", "instructions": "Step 1: Preheat oven to 350\u00b0F. Grease and flour loaf pans.\nStep 2: In a large bowl, mix together 3 beaten eggs, 1 cup oil, 2 1/4 cups sugar, and 2 cups shredded zucchini.\nStep 3: Sift together 2 1/2 cups flour, 1 tsp salt, 1 tsp baking soda, 1 tsp baking powder, and 3 tsp cinnamon. Add to the wet mixture.\nStep 4: Stir in 3 tsp vanilla and 1 cup nuts.\nStep 5: Pour batter into greased and floured pans. Bake at 350\u00b0F for 1 hour.", "has_ingredient_list": true, "extraction_confidence": "high", "ingredients": [{"name": "Egg", "quantity": "3", "unit": "whole", "modifiers": "beaten", "package_qty": "", "package_unit": ""}, {"name": "Cooking oil", "quantity": "1", "unit": "cup", "modifiers": "", "package_qty": "", "package_unit": ""}, {"name": "Sugar", "quantity": "2 1/4", "unit": "cup", "modifiers": "", "package_qty": "", "package_unit": ""}, {"name": "Zucchini", "quantity": "2", "unit": "cup", "modifiers": "shredded", "package_qty": "", "package_unit": ""}, {"name": "All-Purpose Flour", "quantity": "2 1/2", "unit": "cup", "modifiers": "sifted", "package_qty": "", "package_unit": ""}, {"name": "Salt", "quantity": "1", "unit": "tsp", "modifiers": "", "package_qty": "", "package_unit": ""}, {"name": "Baking Soda", "quantity": "1", "unit": "tsp", "modifiers": "", "package_qty": "", "package_unit": ""}, {"name": "Baking Powder", "quantity": "1", "unit": "tsp", "modifiers": "", "package_qty": "", "package_unit": ""}, {"name": "Cinnamon", "quantity": "3", "unit": "tsp", "modifiers": "", "package_qty": "", "package_unit": ""}, {"name": "Vanilla Extract", "quantity": "3", "unit": "tsp", "modifiers": "", "package_qty": "", "package_unit": ""}, {"name": "Mixed nuts", "quantity": "1", "unit": "cup", "modifiers": "", "package_qty": "", "package_unit": ""}]}

matched_ingredients:
  [{"raw_name": "Egg", "ingredient_name": "Egg", "quantity": "3", "unit": "whole"}, {"raw_name": "Cooking oil", "ingredient_name": "Cooking oil", "quantity": "1", "unit": "c"}, {"raw_name": "Sugar", "ingredient_name": "Sugar", "quantity": "2 1/4", "unit": "c"}, {"raw_name": "Zucchini", "ingredient_name": "Zucchini", "quantity": "2", "unit": "c"}, {"raw_name": "All-Purpose Flour", "ingredient_name": "All-Purpose Flour", "quantity": "2 1/2", "unit": "c"}, {"raw_name": "Salt", "ingredient_name": "Salt", "quantity": "1", "unit": "tsp"}, {"raw_name": "Baking Soda", "ingredient_name": "Baking Soda", "quantity": "1", "unit": "tsp"}, {"raw_name": "Baking Powder", "ingredient_name": "Baking Powder", "quantity": "1", "unit": "tsp"}, {"raw_name": "Cinnamon", "ingredient_name": "Cinnamon", "quantity": "3", "unit": "tsp"}, {"raw_name": "Vanilla Extract", "ingredient_name": "Vanilla Extract", "quantity": "3", "unit": "tsp"}, {"raw_name": "Mixed nuts", "ingredient_name": "Mixed nuts", "quantity": "1", "unit": "c"}]


created_at: 2026-04-04 17:30:03.465954
status: success
provider: claude
filename: Breads & Rolls/Cornbread/Cornbread.pdf
recipe_title: Corn Bread
unmatched_items: []
unit_warnings: []
resolution_tiers: {"exact": 9}
raw_ai_response:
  {"title": "Corn Bread", "description": "A classic Southern-style corn bread baked in a preheated cast iron skillet for a crispy crust. Simple and hearty, made with cornmeal, flour, and basic pantry staples.", "servings": 4, "prep_time": 10, "cook_time": 40, "cuisine": "Southern", "tags": ["Comfort Food", "Baked", "Family Friendly", "Few Ingredients", "Budget Friendly", "Kid Friendly"], "culinary_type": "Bread & Pastry", "instructions": "Step 1: Preheat oven to 450\u00b0F with your favorite 10-inch oven-proof skillet inside.\nStep 2: Combine all the dry ingredients (cornmeal, flour, baking powder, salt, and optional sugar), and add the 1/4 cup shortening. Hand blend until thoroughly mixed and crumbly.\nStep 3: Mix the egg and milk together first, then add to the dry ingredients.\nStep 4: When the oven is preheated, remove the skillet and add the remaining tablespoon of shortening, swirling to cover bottom and sides.\nStep 5: Once the shortening melts, add the batter. Bake for 35 to 40 minutes, until lightly browned and corn bread springs back when you touch it. Makes 4 to 6 servings.", "has_ingredient_list": true, "extraction_confidence": "high", "ingredients": [{"name": "Cornmeal", "quantity": "1 1/2", "unit": "cup", "modifiers": "", "package_qty": "", "package_unit": ""}, {"name": "Flour", "quantity": "1/2", "unit": "cup", "modifiers": "", "package_qty": "", "package_unit": ""}, {"name": "Baking Powder", "quantity": "2", "unit": "tsp", "modifiers": "", "package_qty": "", "package_unit": ""}, {"name": "Salt", "quantity": "3/4", "unit": "tsp", "modifiers": "", "package_qty": "", "package_unit": ""}, {"name": "Sugar", "quantity": "1", "unit": "tbsp", "modifiers": "optional", "package_qty": "", "package_unit": ""}, {"name": "Shortening", "quantity": "1/4", "unit": "cup", "modifiers": "divided", "package_qty": "", "package_unit": ""}, {"name": "Shortening", "quantity": "1", "unit": "tbsp", "modifiers": "divided", "package_qty": "", "package_unit": ""}, {"name": "Egg", "quantity": "1", "unit": "whole", "modifiers": "", "package_qty": "", "package_unit": ""}, {"name": "Milk", "quantity": "1", "unit": "cup", "modifiers": "", "package_qty": "", "package_unit": ""}]}

matched_ingredients:
  [{"raw_name": "Cornmeal", "ingredient_name": "Cornmeal", "quantity": "1 1/2", "unit": "c"}, {"raw_name": "Flour", "ingredient_name": "Flour", "quantity": "1/2", "unit": "c"}, {"raw_name": "Baking Powder", "ingredient_name": "Baking Powder", "quantity": "2", "unit": "tsp"}, {"raw_name": "Salt", "ingredient_name": "Salt", "quantity": "3/4", "unit": "tsp"}, {"raw_name": "Sugar", "ingredient_name": "Sugar", "quantity": "1", "unit": "tbsp"}, {"raw_name": "Shortening", "ingredient_name": "Shortening", "quantity": "1/4", "unit": "c"}, {"raw_name": "Shortening", "ingredient_name": "Shortening", "quantity": "1", "unit": "tbsp"}, {"raw_name": "Egg", "ingredient_name": "Egg", "quantity": "1", "unit": "whole"}, {"raw_name": "Milk", "ingredient_name": "Milk", "quantity": "1", "unit": "c"}]


created_at: 2026-04-04 17:30:17.662620
status: success
provider: claude
filename: Breads & Rolls/Cornbread/Honey-Moist Cornbread.pdf
recipe_title: Honey-Moist Cornbread
unmatched_items: []
unit_warnings: []
resolution_tiers: {"exact": 9}
raw_ai_response:
  {"title": "Honey-Moist Cornbread", "description": "Moist and tender cornbread sweetened with honey and whipping cream. Even better served with butter.", "servings": 6, "prep_time": 5, "cook_time": 25, "cuisine": "American", "tags": ["Quick", "Under 30 Minutes", "Baked", "Family Friendly", "Comfort Food", "Few Ingredients"], "culinary_type": "Bread & Pastry", "instructions": "Step 1: Heat oven to 400\u00b0F.\nStep 2: In a medium bowl, stir together flour, cornmeal, sugar, baking powder, and salt.\nStep 3: Stir in remaining ingredients (whipping cream, vegetable oil, honey, and eggs) just until moistened.\nStep 4: Pour into a greased 9-inch square baking pan.\nStep 5: Bake for 20 to 25 minutes or until a wooden pick inserted in the center comes out clean.\n\nMicrowave Directions:\nStep 1: Mix cornbread as directed above.\nStep 2: Pour into a greased 6-cup microwave ring mold.\nStep 3: Microwave on HIGH, turning dish every 3 minutes, until cornbread pulls away from sides of pan and is dry on top (7 to 9 minutes).\nStep 4: Let stand 3 minutes.", "has_ingredient_list": true, "extraction_confidence": "high", "ingredients": [{"name": "All-Purpose Flour", "quantity": "1", "unit": "cup", "modifiers": "", "package_qty": "", "package_unit": ""}, {"name": "Yellow Cornmeal", "quantity": "1", "unit": "cup", "modifiers": "", "package_qty": "", "package_unit": ""}, {"name": "Sugar", "quantity": "1/4", "unit": "cup", "modifiers": "", "package_qty": "", "package_unit": ""}, {"name": "Baking Powder", "quantity": "1", "unit": "tbsp", "modifiers": "", "package_qty": "", "package_unit": ""}, {"name": "Salt", "quantity": "1/2", "unit": "tsp", "modifiers": "", "package_qty": "", "package_unit": ""}, {"name": "Heavy Cream", "quantity": "1", "unit": "cup", "modifiers": "", "package_qty": "", "package_unit": ""}, {"name": "Vegetable Oil", "quantity": "1/4", "unit": "cup", "modifiers": "", "package_qty": "", "package_unit": ""}, {"name": "Honey", "quantity": "1/4", "unit": "cup", "modifiers": "", "package_qty": "", "package_unit": ""}, {"name": "Egg", "quantity": "2", "unit": "whole", "modifiers": "slightly beaten", "package_qty": "", "package_unit": ""}]}

matched_ingredients:
  [{"raw_name": "All-Purpose Flour", "ingredient_name": "All-Purpose Flour", "quantity": "1", "unit": "c"}, {"raw_name": "Cornmeal", "ingredient_name": "Cornmeal", "quantity": "1", "unit": "c"}, {"raw_name": "Sugar", "ingredient_name": "Sugar", "quantity": "1/4", "unit": "c"}, {"raw_name": "Baking Powder", "ingredient_name": "Baking Powder", "quantity": "1", "unit": "tbsp"}, {"raw_name": "Salt", "ingredient_name": "Salt", "quantity": "1/2", "unit": "tsp"}, {"raw_name": "Heavy Cream", "ingredient_name": "Heavy Cream", "quantity": "1", "unit": "c"}, {"raw_name": "Vegetable Oil", "ingredient_name": "Vegetable Oil", "quantity": "1/4", "unit": "c"}, {"raw_name": "Honey", "ingredient_name": "Honey", "quantity": "1/4", "unit": "c"}, {"raw_name": "Egg", "ingredient_name": "Egg", "quantity": "2", "unit": "whole"}]


created_at: 2026-04-04 17:30:49.130288
status: success
provider: claude
filename: Breads & Rolls/Cornbread/Marie Calendar’s Cornbread.pdf
recipe_title: Marie Calender's Cornbread
unmatched_items: []
unit_warnings: []
resolution_tiers: {"failed": 1, "product_exact_fallback": 1, "exact": 8}
raw_ai_response:
  {"title": "Marie Calender's Cornbread", "description": "A classic copycat cornbread recipe inspired by Marie Callender's, featuring a tender, slightly sweet crumb made with Bisquick and cornmeal. Served with a simple honey-butter spread.", "servings": 9, "prep_time": 10, "cook_time": 40, "cuisine": "American", "tags": ["Copycat", "Baked", "Comfort Food", "Family Friendly", "Few Ingredients", "Kid Friendly"], "culinary_type": "Bread & Pastry", "instructions": "Step 1: Mix dry ingredients (Bisquick, cornmeal, baking soda, and sugar) together in a bowl.\nStep 2: In a separate bowl, mix melted margarine, milk, and eggs together.\nStep 3: Add the wet mixture to the dry mixture.\nStep 4: Stir until mixed well. Batter will be lumpy.\nStep 5: Bake in an 8 or 9-inch square pan at 325\u00b0F for 40 minutes.\nStep 6: To make honey-butter: Mix 2 parts of soft spread margarine to one part honey. Mix thoroughly.", "has_ingredient_list": true, "extraction_confidence": "high", "ingredients": [{"name": "Bisquick", "quantity": "2", "unit": "cup", "modifiers": "", "package_qty": "", "package_unit": ""}, {"name": "Cornmeal", "quantity": "3", "unit": "tbsp", "modifiers": "", "package_qty": "", "package_unit": ""}, {"name": "Baking Soda", "quantity": "1", "unit": "tsp", "modifiers": "", "package_qty": "", "package_unit": ""}, {"name": "Margarine", "quantity": "1", "unit": "stick", "modifiers": "melted", "package_qty": "", "package_unit": ""}, {"name": "Milk", "quantity": "1", "unit": "cup", "modifiers": "", "package_qty": "", "package_unit": ""}, {"name": "Sugar", "quantity": "1/2", "unit": "cup", "modifiers": "", "package_qty": "", "package_unit": ""}, {"name": "Egg", "quantity": "2", "unit": "whole", "modifiers": "", "package_qty": "", "package_unit": ""}, {"name": "Margarine", "quantity": "2", "unit": "cup", "modifiers": "soft spread", "package_qty": "", "package_unit": ""}, {"name": "Honey", "quantity": "1", "unit": "cup", "modifiers": "", "package_qty": "", "package_unit": ""}]}

matched_ingredients:
  [{"raw_name": "?", "ingredient_name": null, "quantity": "2", "unit": "c"}, {"raw_name": "Cornmeal", "ingredient_name": "Cornmeal", "quantity": "3", "unit": "tbsp"}, {"raw_name": "Baking Soda", "ingredient_name": "Baking Soda", "quantity": "1", "unit": "tsp"}, {"raw_name": "Margarine", "ingredient_name": "Margarine", "quantity": "1", "unit": "stick"}, {"raw_name": "Milk", "ingredient_name": "Milk", "quantity": "1", "unit": "c"}, {"raw_name": "Sugar", "ingredient_name": "Sugar", "quantity": "1/2", "unit": "c"}, {"raw_name": "Egg", "ingredient_name": "Egg", "quantity": "2", "unit": "whole"}, {"raw_name": "Margarine", "ingredient_name": "Margarine", "quantity": "2", "unit": "c"}, {"raw_name": "Honey", "ingredient_name": "Honey", "quantity": "1", "unit": "c"}]


created_at: 2026-04-04 17:31:17.249348
status: success
provider: claude
filename: Breads & Rolls/Cornbread/Marie Callender cornbread.pdf
recipe_title: Marie Calendar's Corn Bread
unmatched_items: []
unit_warnings: []
resolution_tiers: {"failed": 1, "product_exact_fallback": 1, "exact": 6}
raw_ai_response:
  {"title": "Marie Calendar's Corn Bread", "description": "A classic homestyle corn bread made with Bisquick, yellow cornmeal, and butter, baked in a black iron skillet or square pan until golden.", "servings": 9, "prep_time": 10, "cook_time": 35, "cuisine": "American", "tags": ["Comfort Food", "Baked", "Family Friendly", "Few Ingredients", "Copycat", "Kid Friendly"], "culinary_type": "Bread & Pastry", "instructions": "Step 1: Preheat oven to 325-350 degrees F.\nStep 2: Melt butter in a black iron skillet in the oven.\nStep 3: Mix all ingredients together and add the melted butter.\nStep 4: Mix well.\nStep 5: Bake in a greased black iron skillet or 9x9 inch pan at 325-350 degrees for 30-35 minutes.", "has_ingredient_list": true, "extraction_confidence": "high", "ingredients": [{"name": "Bisquick", "quantity": "2", "unit": "cup", "modifiers": "", "package_qty": "", "package_unit": ""}, {"name": "Yellow Cornmeal", "quantity": "1/2", "unit": "cup", "modifiers": "", "package_qty": "", "package_unit": ""}, {"name": "Baking Powder", "quantity": "1", "unit": "tsp", "modifiers": "", "package_qty": "", "package_unit": ""}, {"name": "Sugar", "quantity": "1/2", "unit": "cup", "modifiers": "", "package_qty": "", "package_unit": ""}, {"name": "Butter", "quantity": "1", "unit": "stick", "modifiers": "melted", "package_qty": "", "package_unit": ""}, {"name": "Milk", "quantity": "1", "unit": "cup", "modifiers": "", "package_qty": "", "package_unit": ""}, {"name": "Egg", "quantity": "2", "unit": "whole", "modifiers": "", "package_qty": "", "package_unit": ""}]}

matched_ingredients:
  [{"raw_name": "?", "ingredient_name": null, "quantity": "2", "unit": "c"}, {"raw_name": "Cornmeal", "ingredient_name": "Cornmeal", "quantity": "1/2", "unit": "c"}, {"raw_name": "Baking Powder", "ingredient_name": "Baking Powder", "quantity": "1", "unit": "tsp"}, {"raw_name": "Sugar", "ingredient_name": "Sugar", "quantity": "1/2", "unit": "c"}, {"raw_name": "Butter", "ingredient_name": "Butter", "quantity": "1", "unit": "stick"}, {"raw_name": "Milk", "ingredient_name": "Milk", "quantity": "1", "unit": "c"}, {"raw_name": "Egg", "ingredient_name": "Egg", "quantity": "2", "unit": "whole"}]


created_at: 2026-04-04 17:31:49.263098
status: success
provider: claude
filename: Breads & Rolls/Sour Dough Starter Recipes/English Muffins.pdf
recipe_title: Sourdough English Muffins
unmatched_items: []
unit_warnings: []
resolution_tiers: {"exact": 7}
raw_ai_response:
  {"title": "Sourdough English Muffins", "description": "A simple stovetop sourdough English muffin recipe that uses an active sourdough starter and baking soda for lift, yielding two golden brown muffins.", "servings": 2, "prep_time": 240, "cook_time": 20, "cuisine": "American", "tags": ["Make Ahead", "Stovetop", "Breakfast / Brunch", "Few Ingredients", "Budget Friendly", "Savory"], "culinary_type": "Breakfast / Brunch", "instructions": "Step 1: Mix - Combine starter, milk, flour, salt, and sugar. Let sit for 2-4 hours.\nStep 2: Cook - Add baking soda and shape into 2 rounds. Cook on a greased skillet over medium heat for 7-10 minutes per side until golden brown.", "has_ingredient_list": true, "extraction_confidence": "high", "ingredients": [{"name": "Sourdough", "quantity": "2", "unit": "tbsp", "modifiers": "active", "package_qty": "", "package_unit": ""}, {"name": "Milk", "quantity": "1/4", "unit": "cup", "modifiers": "", "package_qty": "", "package_unit": ""}, {"name": "All-Purpose Flour", "quantity": "1/2", "unit": "cup", "modifiers": "", "package_qty": "", "package_unit": ""}, {"name": "Salt", "quantity": "1/4", "unit": "tsp", "modifiers": "", "package_qty": "", "package_unit": ""}, {"name": "Sugar", "quantity": "1/4", "unit": "tsp", "modifiers": "", "package_qty": "", "package_unit": ""}, {"name": "Baking Soda", "quantity": "1/2", "unit": "tsp", "modifiers": "", "package_qty": "", "package_unit": ""}, {"name": "Butter", "quantity": "1", "unit": "tbsp", "modifiers": "", "package_qty": "", "package_unit": ""}]}

matched_ingredients:
  [{"raw_name": "Sourdough", "ingredient_name": "Sourdough", "quantity": "2", "unit": "tbsp"}, {"raw_name": "Milk", "ingredient_name": "Milk", "quantity": "1/4", "unit": "c"}, {"raw_name": "All-Purpose Flour", "ingredient_name": "All-Purpose Flour", "quantity": "1/2", "unit": "c"}, {"raw_name": "Salt", "ingredient_name": "Salt", "quantity": "1/4", "unit": "tsp"}, {"raw_name": "Sugar", "ingredient_name": "Sugar", "quantity": "1/4", "unit": "tsp"}, {"raw_name": "Baking Soda", "ingredient_name": "Baking Soda", "quantity": "1/2", "unit": "tsp"}, {"raw_name": "Butter", "ingredient_name": "Butter", "quantity": "1", "unit": "tbsp"}]


created_at: 2026-04-04 17:32:13.838440
status: success
provider: claude
filename: Breads & Rolls/Sour Dough Starter Recipes/Garlic Bread.pdf
recipe_title: Sourdough Garlic Bread
unmatched_items: []
unit_warnings: []
resolution_tiers: {"exact": 6}
raw_ai_response:
  {"title": "Sourdough Garlic Bread", "description": "A quick and easy garlic bread made with a crusty baguette, slathered in a buttery garlic herb spread and baked until golden.", "servings": 2, "prep_time": 5, "cook_time": 12, "cuisine": "American", "tags": ["Quick", "Under 30 Minutes", "Baked", "Few Ingredients", "Savory", "Side Dish"], "culinary_type": "Side Dish", "instructions": "Step 1: Mix Garlic Butter: Mix butter, garlic, parsley, and salt.\nStep 2: Toast: Cut baguette in half lengthwise and spread the garlic butter over the bread.\nStep 3: Bake: Bake at 400\u00b0F (200\u00b0C) for 10-12 minutes until golden.", "has_ingredient_list": true, "extraction_confidence": "high", "ingredients": [{"name": "Sourdough", "quantity": "1/2", "unit": "cup", "modifiers": "discard", "package_qty": "", "package_unit": ""}, {"name": "Baguette", "quantity": "1", "unit": "whole", "modifiers": "small", "package_qty": "", "package_unit": ""}, {"name": "Butter", "quantity": "2", "unit": "tbsp", "modifiers": "softened", "package_qty": "", "package_unit": ""}, {"name": "Garlic", "quantity": "1", "unit": "clove", "modifiers": "minced", "package_qty": "", "package_unit": ""}, {"name": "Parsley", "quantity": "1", "unit": "tbsp", "modifiers": "chopped", "package_qty": "", "package_unit": ""}, {"name": "Salt", "quantity": "1", "unit": "pinch", "modifiers": "", "package_qty": "", "package_unit": ""}]}

matched_ingredients:
  [{"raw_name": "Sourdough", "ingredient_name": "Sourdough", "quantity": "1/2", "unit": "c"}, {"raw_name": "Baguette", "ingredient_name": "Baguette", "quantity": "1", "unit": "whole"}, {"raw_name": "Butter", "ingredient_name": "Butter", "quantity": "2", "unit": "tbsp"}, {"raw_name": "Garlic", "ingredient_name": "Garlic", "quantity": "1", "unit": "clove"}, {"raw_name": "Parsley", "ingredient_name": "Parsley", "quantity": "1", "unit": "tbsp"}, {"raw_name": "Salt", "ingredient_name": "Salt", "quantity": "1", "unit": "pinch"}]


created_at: 2026-04-04 17:32:46.715916
status: success
provider: claude
filename: Breads & Rolls/Sour Dough Starter Recipes/Pancakes.pdf
recipe_title: Sourdough Pancakes
unmatched_items: []
unit_warnings: []
resolution_tiers: {"exact": 8}
raw_ai_response:
  {"title": "Sourdough Pancakes", "description": "Fluffy sourdough pancakes made with an active starter for a subtle tangy flavor. Quick to prepare and cooked on a griddle until golden.", "servings": 4, "prep_time": 30, "cook_time": 15, "cuisine": "American", "tags": ["Quick", "Stovetop", "Breakfast / Brunch", "Few Ingredients", "Family Friendly", "Kid Friendly"], "culinary_type": "Breakfast / Brunch", "instructions": "Step 1: Mix Batter \u2014 Combine starter, milk, flour, sugar, and egg. Let rest for 15-30 minutes.\nStep 2: Cook \u2014 Add baking soda and mix gently. Cook on a greased griddle or pan on medium heat until bubbles form, then flip.", "has_ingredient_list": true, "extraction_confidence": "high", "ingredients": [{"name": "Sourdough", "quantity": "1/4", "unit": "cup", "modifiers": "active starter", "package_qty": "", "package_unit": ""}, {"name": "Milk", "quantity": "1/2", "unit": "cup", "modifiers": "", "package_qty": "", "package_unit": ""}, {"name": "All-Purpose Flour", "quantity": "1/2", "unit": "cup", "modifiers": "", "package_qty": "", "package_unit": ""}, {"name": "Sugar", "quantity": "1", "unit": "tbsp", "modifiers": "", "package_qty": "", "package_unit": ""}, {"name": "Salt", "quantity": "1/4", "unit": "tsp", "modifiers": "", "package_qty": "", "package_unit": ""}, {"name": "Egg", "quantity": "1", "unit": "whole", "modifiers": "", "package_qty": "", "package_unit": ""}, {"name": "Baking Soda", "quantity": "1/2", "unit": "tsp", "modifiers": "", "package_qty": "", "package_unit": ""}, {"name": "Butter", "quantity": "1", "unit": "tbsp", "modifiers": "melted", "package_qty": "", "package_unit": ""}]}

matched_ingredients:
  [{"raw_name": "Sourdough", "ingredient_name": "Sourdough", "quantity": "1/4", "unit": "c"}, {"raw_name": "Milk", "ingredient_name": "Milk", "quantity": "1/2", "unit": "c"}, {"raw_name": "All-Purpose Flour", "ingredient_name": "All-Purpose Flour", "quantity": "1/2", "unit": "c"}, {"raw_name": "Sugar", "ingredient_name": "Sugar", "quantity": "1", "unit": "tbsp"}, {"raw_name": "Salt", "ingredient_name": "Salt", "quantity": "1/4", "unit": "tsp"}, {"raw_name": "Egg", "ingredient_name": "Egg", "quantity": "1", "unit": "whole"}, {"raw_name": "Baking Soda", "ingredient_name": "Baking Soda", "quantity": "1/2", "unit": "tsp"}, {"raw_name": "Butter", "ingredient_name": "Butter", "quantity": "1", "unit": "tbsp"}]


created_at: 2026-04-04 17:33:15.087963
status: success
provider: claude
filename: Breads & Rolls/Sour Dough Starter Recipes/Pizza Dough (12 inch).pdf
recipe_title: Sourdough Pizza Dough (12" pizza)
unmatched_items: []
unit_warnings: []
resolution_tiers: {"exact": 5}
raw_ai_response:
  {"title": "Sourdough Pizza Dough (12\" pizza)", "description": "A simple sourdough pizza dough made with active sourdough starter that yields a flavorful 12-inch pizza crust. Requires a long fermentation time for optimal flavor and texture.", "servings": 1, "prep_time": 30, "cook_time": 15, "cuisine": "Italian", "tags": ["Make Ahead", "Weekend Project", "Baked", "Few Ingredients", "Savory"], "culinary_type": "Bread & Pastry", "instructions": "Step 1: Mix Dough: Combine starter, water, flour, salt, and olive oil until it forms a dough.\nStep 2: First Rise: Let the dough rise for 4-6 hours.\nStep 3: Shape: Stretch and shape into a 12\" circle.\nStep 4: Second Rise: Let rest for 1-2 hours.\nStep 5: Bake: Add toppings and bake at 475\u00b0F (245\u00b0C) for 12-15 minutes.", "has_ingredient_list": true, "extraction_confidence": "high", "ingredients": [{"name": "Sourdough", "quantity": "1/4", "unit": "cup", "modifiers": "active", "package_qty": "", "package_unit": ""}, {"name": "Water", "quantity": "1/2", "unit": "cup", "modifiers": "", "package_qty": "", "package_unit": ""}, {"name": "Bread Flour", "quantity": "1 1/4", "unit": "cup", "modifiers": "", "package_qty": "", "package_unit": ""}, {"name": "Salt", "quantity": "1/2", "unit": "tsp", "modifiers": "", "package_qty": "", "package_unit": ""}, {"name": "Olive Oil", "quantity": "1", "unit": "tbsp", "modifiers": "", "package_qty": "", "package_unit": ""}]}

matched_ingredients:
  [{"raw_name": "Sourdough", "ingredient_name": "Sourdough", "quantity": "1/4", "unit": "c"}, {"raw_name": "Water", "ingredient_name": "Water", "quantity": "1/2", "unit": "c"}, {"raw_name": "Bread Flour", "ingredient_name": "Bread Flour", "quantity": "1 1/4", "unit": "c"}, {"raw_name": "Salt", "ingredient_name": "Salt", "quantity": "1/2", "unit": "tsp"}, {"raw_name": "Olive Oil", "ingredient_name": "Olive Oil", "quantity": "1", "unit": "tbsp"}]


created_at: 2026-04-04 17:33:48.784298
status: success
provider: claude
filename: Breads & Rolls/Sour Dough Starter Recipes/Sour Dough Starter.pdf
recipe_title: Sourdough Starter
unmatched_items: []
unit_warnings: []
resolution_tiers: {"exact": 2}
raw_ai_response:
  {"title": "Sourdough Starter", "description": "A simple homemade sourdough starter made with whole wheat flour and water, developed over 5-7 days through regular feedings until active and ready for baking.", "servings": 1, "prep_time": 10, "cook_time": 0, "cuisine": "General", "tags": ["Make Ahead", "Weekend Project", "Few Ingredients", "Meal Prep", "Baked"], "culinary_type": "Bread & Pastry", "instructions": "Step 1 (Day 1): In a clean glass jar, mix 1/4 cup of whole wheat flour with 2 tablespoons of filtered water. Aim for a thick batter consistency, adjusting with a little more water or flour as needed.\nStep 2 (Day 1): Cover the jar loosely with a lid or cloth to allow airflow. Let it sit at room temperature (around 70\u00b0F) for 24 hours.\nStep 3 (Day 2): After 24 hours, check for bubbles. If none are present, don't worry \u2014 it might need more time.\nStep 4 (Day 2): Discard half of the mixture and add 1/4 cup flour and 2 tablespoons of water. Stir until smooth. Cover loosely again and leave at room temperature for another 24 hours.\nStep 5 (Day 3): By day 3, you should start seeing some bubbles. Discard half of the starter and feed it again with 1/4 cup of flour and 2 tablespoons of water.\nStep 6 (Day 3): From now on, feed the starter every 12 hours, discarding half and adding the same amounts of flour and water each time.\nStep 7 (Days 4-7): Continue discarding and feeding twice a day. By day 5-7, the starter should consistently rise and bubble. Once it reliably doubles in size within 4-6 hours after feeding, it is ready for baking.", "has_ingredient_list": true, "extraction_confidence": "high", "ingredients": [{"name": "Whole Wheat Flour", "quantity": "1/4", "unit": "cup", "modifiers": "", "package_qty": "", "package_unit": ""}, {"name": "Water", "quantity": "2", "unit": "tbsp", "modifiers": "filtered, room temperature", "package_qty": "", "package_unit": ""}]}

matched_ingredients:
  [{"raw_name": "Whole Wheat Flour", "ingredient_name": "Whole Wheat Flour", "quantity": "1/4", "unit": "c"}, {"raw_name": "Water", "ingredient_name": "Water", "quantity": "2", "unit": "tbsp"}]


created_at: 2026-04-04 17:34:19.102549
status: success
provider: claude
filename: Breads & Rolls/Sour Dough Starter Recipes/Sourdough Cinnamon Rolls.pdf
recipe_title: Sourdough Cinnamon Rolls
unmatched_items: []
unit_warnings: []
resolution_tiers: {"exact": 10}
raw_ai_response:
  {"title": "Sourdough Cinnamon Rolls", "description": "Soft and fluffy sourdough cinnamon rolls made with an active starter, filled with brown sugar and cinnamon, and naturally leavened for a rich, tangy flavor.", "servings": 6, "prep_time": 30, "cook_time": 25, "cuisine": "American", "tags": ["Baked", "Comfort Food", "Weekend Project", "Sweet", "Make Ahead", "Family Friendly"], "culinary_type": "Bread & Pastry", "instructions": "Step 1: Mix starter, warm milk, sugar, egg, and salt in a bowl. Gradually add flour and softened butter. Knead for about 5 minutes until smooth. Let rise for 4-6 hours until doubled in size.\nStep 2: Roll dough into a rectangle (about 6x12 inches). Spread softened butter on top, then sprinkle with brown sugar and cinnamon.\nStep 3: Roll up the dough and cut into 6 smaller rolls. Place in a greased baking dish.\nStep 4: Let them rise again for 2-4 hours.\nStep 5: Bake at 350\u00b0F (180\u00b0C) for 20-25 minutes until golden brown.", "has_ingredient_list": true, "extraction_confidence": "high", "ingredients": [{"name": "Sourdough", "quantity": "1/2", "unit": "cup", "modifiers": "active", "package_qty": "", "package_unit": ""}, {"name": "Milk", "quantity": "1/4", "unit": "cup", "modifiers": "warm", "package_qty": "", "package_unit": ""}, {"name": "Sugar", "quantity": "1", "unit": "tbsp", "modifiers": "", "package_qty": "", "package_unit": ""}, {"name": "Salt", "quantity": "1/4", "unit": "tsp", "modifiers": "", "package_qty": "", "package_unit": ""}, {"name": "Egg", "quantity": "1", "unit": "whole", "modifiers": "", "package_qty": "", "package_unit": ""}, {"name": "All-Purpose Flour", "quantity": "1 1/2", "unit": "cup", "modifiers": "", "package_qty": "", "package_unit": ""}, {"name": "Butter", "quantity": "2", "unit": "tbsp", "modifiers": "softened", "package_qty": "", "package_unit": ""}, {"name": "Butter", "quantity": "1", "unit": "tbsp", "modifiers": "softened", "package_qty": "", "package_unit": ""}, {"name": "Brown Sugar", "quantity": "2", "unit": "tbsp", "modifiers": "", "package_qty": "", "package_unit": ""}, {"name": "Cinnamon", "quantity": "1", "unit": "tsp", "modifiers": "", "package_qty": "", "package_unit": ""}]}

matched_ingredients:
  [{"raw_name": "Sourdough", "ingredient_name": "Sourdough", "quantity": "1/2", "unit": "c"}, {"raw_name": "Milk", "ingredient_name": "Milk", "quantity": "1/4", "unit": "c"}, {"raw_name": "Sugar", "ingredient_name": "Sugar", "quantity": "1", "unit": "tbsp"}, {"raw_name": "Salt", "ingredient_name": "Salt", "quantity": "1/4", "unit": "tsp"}, {"raw_name": "Egg", "ingredient_name": "Egg", "quantity": "1", "unit": "whole"}, {"raw_name": "All-Purpose Flour", "ingredient_name": "All-Purpose Flour", "quantity": "1 1/2", "unit": "c"}, {"raw_name": "Butter", "ingredient_name": "Butter", "quantity": "2", "unit": "tbsp"}, {"raw_name": "Butter", "ingredient_name": "Butter", "quantity": "1", "unit": "tbsp"}, {"raw_name": "Brown Sugar", "ingredient_name": "Brown Sugar", "quantity": "2", "unit": "tbsp"}, {"raw_name": "Cinnamon", "ingredient_name": "Cinnamon", "quantity": "1", "unit": "tsp"}]


created_at: 2026-04-04 17:34:48.386458
status: success
provider: claude
filename: Breads & Rolls/Sour Dough Starter Recipes/Sweet Bread.pdf
recipe_title: Sourdough Sweet Bread (Mini Loaf)
unmatched_items: []
unit_warnings: []
resolution_tiers: {"exact": 7}
raw_ai_response:
  {"title": "Sourdough Sweet Bread (Mini Loaf)", "description": "A lightly sweet mini sourdough loaf made with an active starter, enriched with butter, egg, and milk for a soft, tender crumb.", "servings": 1, "prep_time": 30, "cook_time": 30, "cuisine": "American", "tags": ["Baked", "Make Ahead", "Weekend Project", "Sweet", "Few Ingredients", "Comfort Food"], "culinary_type": "Bread & Pastry", "instructions": "Step 1: Mix - Combine starter, milk, sugar, and egg. Gradually add flour, salt, and butter. Mix until dough forms.\nStep 2: Rise - Cover and let it rise for 4-6 hours.\nStep 3: Shape - Shape into a small loaf and place in a loaf pan.\nStep 4: Second Rise - Let rise another 2-4 hours.\nStep 5: Bake - Bake at 350\u00b0F (180\u00b0C) for 25-30 minutes.", "has_ingredient_list": true, "extraction_confidence": "high", "ingredients": [{"name": "Sourdough", "quantity": "1/2", "unit": "cup", "modifiers": "active", "package_qty": "", "package_unit": ""}, {"name": "Milk", "quantity": "1/4", "unit": "cup", "modifiers": "", "package_qty": "", "package_unit": ""}, {"name": "Sugar", "quantity": "2", "unit": "tbsp", "modifiers": "", "package_qty": "", "package_unit": ""}, {"name": "Salt", "quantity": "1/4", "unit": "tsp", "modifiers": "", "package_qty": "", "package_unit": ""}, {"name": "Butter", "quantity": "2", "unit": "tbsp", "modifiers": "softened", "package_qty": "", "package_unit": ""}, {"name": "Egg", "quantity": "1", "unit": "whole", "modifiers": "", "package_qty": "", "package_unit": ""}, {"name": "All-Purpose Flour", "quantity": "1 1/4", "unit": "cup", "modifiers": "", "package_qty": "", "package_unit": ""}]}

matched_ingredients:
  [{"raw_name": "Sourdough", "ingredient_name": "Sourdough", "quantity": "1/2", "unit": "c"}, {"raw_name": "Milk", "ingredient_name": "Milk", "quantity": "1/4", "unit": "c"}, {"raw_name": "Sugar", "ingredient_name": "Sugar", "quantity": "2", "unit": "tbsp"}, {"raw_name": "Salt", "ingredient_name": "Salt", "quantity": "1/4", "unit": "tsp"}, {"raw_name": "Butter", "ingredient_name": "Butter", "quantity": "2", "unit": "tbsp"}, {"raw_name": "Egg", "ingredient_name": "Egg", "quantity": "1", "unit": "whole"}, {"raw_name": "All-Purpose Flour", "ingredient_name": "All-Purpose Flour", "quantity": "1 1/4", "unit": "c"}]


created_at: 2026-04-04 17:35:17.868134
status: success
provider: claude
filename: Breads & Rolls/Sour Dough Starter Recipes/Waffles.pdf
recipe_title: Sourdough Waffles
unmatched_items: []
unit_warnings: []
resolution_tiers: {"exact": 8}
raw_ai_response:
  {"title": "Sourdough Waffles", "description": "Light and tangy waffles made with active sourdough starter, perfect for a weekend breakfast. Makes 2-3 Belgian waffles or 4 classic waffles.", "servings": 2, "prep_time": 35, "cook_time": 15, "cuisine": "American", "tags": ["Breakfast / Brunch", "Quick", "Few Ingredients", "Family Friendly", "Comfort Food", "Stovetop"], "culinary_type": "Breakfast / Brunch", "instructions": "Step 1: Mix starter, milk, flour, sugar, and salt. Let rest for 30 minutes.\nStep 2: Add the baking soda and melted butter, then cook in a waffle iron according to manufacturer instructions.", "has_ingredient_list": true, "extraction_confidence": "high", "ingredients": [{"name": "Sourdough", "quantity": "1/4", "unit": "cup", "modifiers": "active", "package_qty": "", "package_unit": ""}, {"name": "Milk", "quantity": "1/2", "unit": "cup", "modifiers": "", "package_qty": "", "package_unit": ""}, {"name": "All-Purpose Flour", "quantity": "1/2", "unit": "cup", "modifiers": "", "package_qty": "", "package_unit": ""}, {"name": "Sugar", "quantity": "1", "unit": "tbsp", "modifiers": "", "package_qty": "", "package_unit": ""}, {"name": "Salt", "quantity": "1/4", "unit": "tsp", "modifiers": "", "package_qty": "", "package_unit": ""}, {"name": "Egg", "quantity": "1", "unit": "whole", "modifiers": "", "package_qty": "", "package_unit": ""}, {"name": "Baking Soda", "quantity": "1/2", "unit": "tsp", "modifiers": "", "package_qty": "", "package_unit": ""}, {"name": "Butter", "quantity": "1", "unit": "tbsp", "modifiers": "melted", "package_qty": "", "package_unit": ""}]}

matched_ingredients:
  [{"raw_name": "Sourdough", "ingredient_name": "Sourdough", "quantity": "1/4", "unit": "c"}, {"raw_name": "Milk", "ingredient_name": "Milk", "quantity": "1/2", "unit": "c"}, {"raw_name": "All-Purpose Flour", "ingredient_name": "All-Purpose Flour", "quantity": "1/2", "unit": "c"}, {"raw_name": "Sugar", "ingredient_name": "Sugar", "quantity": "1", "unit": "tbsp"}, {"raw_name": "Salt", "ingredient_name": "Salt", "quantity": "1/4", "unit": "tsp"}, {"raw_name": "Egg", "ingredient_name": "Egg", "quantity": "1", "unit": "whole"}, {"raw_name": "Baking Soda", "ingredient_name": "Baking Soda", "quantity": "1/2", "unit": "tsp"}, {"raw_name": "Butter", "ingredient_name": "Butter", "quantity": "1", "unit": "tbsp"}]


created_at: 2026-04-04 17:51:52.359458
status: flagged
provider: claude
filename: Asian/Asian pasta toss.pdf
recipe_title: Asian Pasta Toss
unmatched_items: [{"raw_name": "honey-mustard salad dressing"}]
unit_warnings: []
resolution_tiers: {"exact": 9, "common_name": 1, "failed": 1}
raw_ai_response:
  {"title": "Asian Pasta Toss", "description": "A refreshing cold pasta salad with chicken, crisp vegetables, and a tangy honey-mustard soy dressing. Perfect for make-ahead meals and entertaining.", "servings": 6, "prep_time": 20, "cook_time": 15, "cuisine": "General", "tags": ["Make Ahead", "High Protein", "Family Friendly", "Potluck", "Light", "Meal Prep"], "culinary_type": "Salad", "instructions": "Step 1: Prepare pasta according to package directions. Rinse in cold water; drain thoroughly.\nStep 2: In a large bowl, mix pasta with bean sprouts, chicken, carrots, celery, water chestnuts, and green pepper.\nStep 3: Mix remaining ingredients (honey-mustard salad dressing, Dijon-style mustard, pepper, and low-sodium soy sauce) together.\nStep 4: Stir dressing mixture into pasta mixture.\nStep 5: Cover and chill several hours before serving. Makes 6 to 8 servings.", "has_ingredient_list": true, "extraction_confidence": "high", "ingredients": [{"name": "Pasta", "quantity": "1", "unit": "lb", "modifiers": "rotini", "package_qty": "", "package_unit": ""}, {"name": "Bean Thread Noodles", "quantity": "1/2", "unit": "cup", "modifiers": "", "package_qty": "", "package_unit": ""}, {"name": "Chicken", "quantity": "2", "unit": "cup", "modifiers": "cooked, diced", "package_qty": "", "package_unit": ""}, {"name": "Carrot", "quantity": "1", "unit": "cup", "modifiers": "thinly sliced", "package_qty": "", "package_unit": ""}, {"name": "Celery", "quantity": "1", "unit": "cup", "modifiers": "diagonally sliced", "package_qty": "", "package_unit": ""}, {"name": "Water Chestnuts", "quantity": "1", "unit": "can", "modifiers": "sliced", "package_qty": "8", "package_unit": "oz"}, {"name": "Bell Pepper", "quantity": "1/2", "unit": "cup", "modifiers": "green, cut into matchstick strips", "package_qty": "", "package_unit": ""}, {"name": "honey-mustard salad dressing", "quantity": "1", "unit": "cup", "modifiers": "", "package_qty": "", "package_unit": ""}, {"name": "Dijon Mustard", "quantity": "1", "unit": "tbsp", "modifiers": "", "package_qty": "", "package_unit": ""}, {"name": "Pepper", "quantity": "1/4", "unit": "tsp", "modifiers": "", "package_qty": "", "package_unit": ""}, {"name": "Soy Sauce", "quantity": "3", "unit": "tbsp", "modifiers": "low-sodium", "package_qty": "", "package_unit": ""}]}

matched_ingredients:
  [{"raw_name": "Pasta", "ingredient_name": "Pasta", "quantity": "1", "unit": "lb"}, {"raw_name": "Bean Thread Noodles", "ingredient_name": "Bean Thread Noodles", "quantity": "1/2", "unit": "c"}, {"raw_name": "Chicken", "ingredient_name": "Chicken", "quantity": "2", "unit": "c"}, {"raw_name": "Carrot", "ingredient_name": "Carrot", "quantity": "1", "unit": "c"}, {"raw_name": "Celery", "ingredient_name": "Celery", "quantity": "1", "unit": "c"}, {"raw_name": "Water Chestnuts", "ingredient_name": "Water Chestnuts", "quantity": "1", "unit": "can"}, {"raw_name": "Bell Pepper", "ingredient_name": "Bell Pepper", "quantity": "1/2", "unit": "c"}, {"raw_name": "Dijon Mustard", "ingredient_name": "Dijon Mustard", "quantity": "1", "unit": "tbsp"}, {"raw_name": "Pepper", "ingredient_name": "Pepper", "quantity": "1/4", "unit": "tsp"}, {"raw_name": "Soy Sauce", "ingredient_name": "Soy Sauce", "quantity": "3", "unit": "tbsp"}]


created_at: 2026-04-04 17:52:09.107215
status: success
provider: claude
filename: Asian/Baked Teriyaki Chicken.pdf
recipe_title: Baked Teriyaki Chicken
unmatched_items: []
unit_warnings: []
resolution_tiers: {"exact": 9}
raw_ai_response:
  {"title": "Baked Teriyaki Chicken", "description": "A spicy, homemade teriyaki of soy sauce, cider vinegar, ginger and garlic enlivens your choice of chicken cuts. Easy to double for a large group.", "servings": 6, "prep_time": 30, "cook_time": 60, "cuisine": "Japanese", "tags": ["Baked", "Family Friendly", "Weeknight", "Make Ahead", "Savory", "High Protein"], "culinary_type": "Main Course", "instructions": "Step 1: In a small saucepan over low heat, combine the cornstarch, cold water, sugar, soy sauce, vinegar, garlic, ginger and ground black pepper. Let simmer, stirring frequently, until sauce thickens and bubbles.\nStep 2: Preheat oven to 425 degrees F (220 degrees C).\nStep 3: Place chicken pieces in a lightly greased 9x13 inch baking dish. Brush chicken with the sauce. Turn pieces over, and brush again.\nStep 4: Bake in the preheated oven for 30 minutes. Turn pieces over, and bake for another 30 minutes, until no longer pink and juices run clear. Brush with sauce every 10 minutes during cooking.", "has_ingredient_list": true, "extraction_confidence": "high", "ingredients": [{"name": "Cornstarch", "quantity": "1", "unit": "tbsp", "modifiers": "", "package_qty": "", "package_unit": ""}, {"name": "Water", "quantity": "1", "unit": "tbsp", "modifiers": "cold", "package_qty": "", "package_unit": ""}, {"name": "Sugar", "quantity": "1/2", "unit": "cup", "modifiers": "white", "package_qty": "", "package_unit": ""}, {"name": "Soy Sauce", "quantity": "1/2", "unit": "cup", "modifiers": "", "package_qty": "", "package_unit": ""}, {"name": "Apple Cider Vinegar", "quantity": "1/4", "unit": "cup", "modifiers": "", "package_qty": "", "package_unit": ""}, {"name": "Garlic", "quantity": "1", "unit": "clove", "modifiers": "minced", "package_qty": "", "package_unit": ""}, {"name": "Ginger", "quantity": "1/2", "unit": "tsp", "modifiers": "ground", "package_qty": "", "package_unit": ""}, {"name": "Black Pepper", "quantity": "1/4", "unit": "tsp", "modifiers": "ground", "package_qty": "", "package_unit": ""}, {"name": "Chicken Thigh", "quantity": "12", "unit": "whole", "modifiers": "skinless", "package_qty": "", "package_unit": ""}]}

matched_ingredients:
  [{"raw_name": "Cornstarch", "ingredient_name": "Cornstarch", "quantity": "1", "unit": "tbsp"}, {"raw_name": "Water", "ingredient_name": "Water", "quantity": "1", "unit": "tbsp"}, {"raw_name": "Sugar", "ingredient_name": "Sugar", "quantity": "1/2", "unit": "c"}, {"raw_name": "Soy Sauce", "ingredient_name": "Soy Sauce", "quantity": "1/2", "unit": "c"}, {"raw_name": "Apple Cider Vinegar", "ingredient_name": "Apple Cider Vinegar", "quantity": "1/4", "unit": "c"}, {"raw_name": "Garlic", "ingredient_name": "Garlic", "quantity": "1", "unit": "clove"}, {"raw_name": "Ginger", "ingredient_name": "Ginger", "quantity": "1/2", "unit": "tsp"}, {"raw_name": "Black Pepper", "ingredient_name": "Black Pepper", "quantity": "1/4", "unit": "tsp"}, {"raw_name": "Chicken Thigh", "ingredient_name": "Chicken Thigh", "quantity": "12", "unit": "whole"}]


created_at: 2026-04-04 17:52:53.376890
status: success
provider: claude
filename: Asian/Laksa.pdf
recipe_title: Laksa
unmatched_items: []
unit_warnings: []
resolution_tiers: {"exact": 32, "failed": 1, "product_off_fallback": 1}
raw_ai_response:
  {"title": "Laksa", "description": "A rich and spicy Malaysian noodle soup made with fish, prawns, coconut milk, and a fragrant blended spice paste, served with white noodles, bean sprouts, and sambal.", "servings": 15, "prep_time": 60, "cook_time": 45, "cuisine": "Malaysian", "tags": ["Spicy", "Hearty", "Dinner Party", "Stovetop", "Comfort Food", "Weekend Project"], "culinary_type": "Main Course", "instructions": "Step 1: Rub the fish (Ikan Selar/mackerel) with salt and turmeric. Fry the fish and debone it. Mash the fish with a potato masher or in a mortar and pestle.\nStep 2: Grate 1000g of coconut (approximately 2 coconuts). Add about 10 metric cups of water and blend in a blender. Strain out the milk and squeeze well to extract all milk from coconuts. You will need 10-12 cups of coconut milk.\nStep 3: Boil 500g of fresh prawns in 2 cups of water until prawns turn pink. Strain and keep the stock to add to the laksa gravy. Remove shells and slice the prawns lengthwise for garnish.\nStep 4: Place the following in a blender and grind into a paste with some water: 10 fresh red chillies, 10 shallots, 4 big onions, 10 cloves garlic, 25g langkuas (blue ginger), 25g kunyit (fresh turmeric), 30g serai (lemongrass), 100g dried prawns, 12 buah keras (candle nuts) soaked in water and strained for 20 minutes, 10 dried chillies soaked in water and strained for 20 minutes, 20g blachan (shrimp paste) mixed with a little water. Leave out the 2 tsp sugar \u2014 add when cooking, not when blending.\nStep 5: In a deep pot, add 3/4 cup of oil (the oil from the fried fish can be used). Add the paste from Step 4 and fry together with the mashed fish until well cooked, about 10 to 15 minutes or a little longer. Add 2 tsp sugar when cooking.\nStep 6: Add a handful of sea salt, 1 bruised piece of serai (lemongrass), 20 fish balls, a handful of daun kesum (Vietnamese coriander/flavouring leaf), and 1 piece of dried assam gelugo (dried lemon skin). Add all of this into the pot together with the coconut milk and prawn stock. Add a little water to the coconut if needed. Allow to boil, then lower the flame and simmer for at least 20 to 25 minutes.\nStep 7: For the Sambal: Grind 2 onions, 4 cloves garlic, 25g roasted blachan, and 10 dried chillies soaked in water into a paste. Add 3-6 tbsp oil and fry the above. Add salt and sugar to taste.\nStep 8: Prepare 2 kg of white noodles and 1/2 kg of bean sprouts blanched in boiling water.\nStep 9: Garnish with shredded cucumber, prawns, and sambal.", "has_ingredient_list": true, "extraction_confidence": "high", "ingredients": [{"name": "Mackerel", "quantity": "4", "unit": "whole", "modifiers": "", "package_qty": "", "package_unit": ""}, {"name": "Salt", "quantity": "1", "unit": "tsp", "modifiers": "for rubbing on fish", "package_qty": "", "package_unit": ""}, {"name": "Turmeric", "quantity": "1", "unit": "tsp", "modifiers": "for rubbing on fish", "package_qty": "", "package_unit": ""}, {"name": "Coconut", "quantity": "1000", "unit": "g", "modifiers": "grated, approximately 2 coconuts", "package_qty": "", "package_unit": ""}, {"name": "Prawn", "quantity": "500", "unit": "g", "modifiers": "fresh, shells removed, sliced lengthwise for garnish", "package_qty": "", "package_unit": ""}, {"name": "Chili Pepper", "quantity": "10", "unit": "whole", "modifiers": "fresh, red", "package_qty": "", "package_unit": ""}, {"name": "Shallot", "quantity": "10", "unit": "whole", "modifiers": "", "package_qty": "", "package_unit": ""}, {"name": "Onion", "quantity": "4", "unit": "whole", "modifiers": "big", "package_qty": "", "package_unit": ""}, {"name": "Garlic", "quantity": "10", "unit": "clove", "modifiers": "", "package_qty": "", "package_unit": ""}, {"name": "Galangal", "quantity": "25", "unit": "g", "modifiers": "blue ginger", "package_qty": "", "package_unit": ""}, {"name": "Turmeric", "quantity": "25", "unit": "g", "modifiers": "fresh", "package_qty": "", "package_unit": ""}, {"name": "Lemongrass", "quantity": "30", "unit": "g", "modifiers": "", "package_qty": "", "package_unit": ""}, {"name": "Dried Shrimp", "quantity": "100", "unit": "g", "modifiers": "", "package_qty": "", "package_unit": ""}, {"name": "Macadamia Nut", "quantity": "12", "unit": "whole", "modifiers": "soaked in water and strained, 20 minutes", "package_qty": "", "package_unit": ""}, {"name": "Chili Pepper", "quantity": "10", "unit": "whole", "modifiers": "dried, soaked in water and strained, 20 minutes", "package_qty": "", "package_unit": ""}, {"name": "Sugar", "quantity": "2", "unit": "tsp", "modifiers": "add when cooking not when blending", "package_qty": "", "package_unit": ""}, {"name": "Shrimp Paste", "quantity": "20", "unit": "g", "modifiers": "mixed with a little water", "package_qty": "", "package_unit": ""}, {"name": "Cooking oil", "quantity": "3/4", "unit": "cup", "modifiers": "oil from fried fish can be used", "package_qty": "", "package_unit": ""}, {"name": "Salt", "quantity": "1", "unit": "pinch", "modifiers": "sea salt, handful", "package_qty": "", "package_unit": ""}, {"name": "Lemongrass", "quantity": "1", "unit": "piece", "modifiers": "bruised", "package_qty": "", "package_unit": ""}, {"name": "fish balls", "quantity": "20", "unit": "whole", "modifiers": "", "package_qty": "", "package_unit": ""}, {"name": "Vietnamese Coriander", "quantity": "1", "unit": "bunch", "modifiers": "handful, daun kesum", "package_qty": "", "package_unit": ""}, {"name": "Tamarind", "quantity": "1", "unit": "piece", "modifiers": "dried, assam gelugo", "package_qty": "", "package_unit": ""}, {"name": "Onion", "quantity": "2", "unit": "whole", "modifiers": "", "package_qty": "", "package_unit": ""}, {"name": "Garlic", "quantity": "4", "unit": "clove", "modifiers": "", "package_qty": "", "package_unit": ""}, {"name": "Shrimp Paste", "quantity": "25", "unit": "g", "modifiers": "roasted", "package_qty": "", "package_unit": ""}, {"name": "Chili Pepper", "quantity": "10", "unit": "whole", "modifiers": "dried, soaked in water", "package_qty": "", "package_unit": ""}, {"name": "Cooking oil", "quantity": "4", "unit": "tbsp", "modifiers": "", "package_qty": "", "package_unit": ""}, {"name": "Salt", "quantity": "1", "unit": "pinch", "modifiers": "to taste", "package_qty": "", "package_unit": ""}, {"name": "Sugar", "quantity": "1", "unit": "pinch", "modifiers": "to taste", "package_qty": "", "package_unit": ""}, {"name": "Rice Noodles", "quantity": "2", "unit": "kg", "modifiers": "white noodles", "package_qty": "", "package_unit": ""}, {"name": "Mung bean", "quantity": "500", "unit": "g", "modifiers": "bean sprouts, blanched in boiling water", "package_qty": "", "package_unit": ""}, {"name": "Cucumber", "quantity": "1", "unit": "whole", "modifiers": "shredded, for garnish", "package_qty": "", "package_unit": ""}]}

matched_ingredients:
  [{"raw_name": "Mackerel", "ingredient_name": "Mackerel", "quantity": "4", "unit": "whole"}, {"raw_name": "Salt", "ingredient_name": "Salt", "quantity": "1", "unit": "tsp"}, {"raw_name": "Turmeric", "ingredient_name": "Turmeric", "quantity": "1", "unit": "tsp"}, {"raw_name": "Coconut", "ingredient_name": "Coconut", "quantity": "1000", "unit": "g"}, {"raw_name": "Prawn", "ingredient_name": "Prawn", "quantity": "500", "unit": "g"}, {"raw_name": "Chili Pepper", "ingredient_name": "Chili Pepper", "quantity": "10", "unit": "whole"}, {"raw_name": "Shallot", "ingredient_name": "Shallot", "quantity": "10", "unit": "whole"}, {"raw_name": "Onion", "ingredient_name": "Onion", "quantity": "4", "unit": "whole"}, {"raw_name": "Garlic", "ingredient_name": "Garlic", "quantity": "10", "unit": "clove"}, {"raw_name": "Galangal", "ingredient_name": "Galangal", "quantity": "25", "unit": "g"}, {"raw_name": "Turmeric", "ingredient_name": "Turmeric", "quantity": "25", "unit": "g"}, {"raw_name": "Lemongrass", "ingredient_name": "Lemongrass", "quantity": "30", "unit": "g"}, {"raw_name": "Dried Shrimp", "ingredient_name": "Dried Shrimp", "quantity": "100", "unit": "g"}, {"raw_name": "Macadamia Nut", "ingredient_name": "Macadamia Nut", "quantity": "12", "unit": "whole"}, {"raw_name": "Chili Pepper", "ingredient_name": "Chili Pepper", "quantity": "10", "unit": "whole"}, {"raw_name": "Sugar", "ingredient_name": "Sugar", "quantity": "2", "unit": "tsp"}, {"raw_name": "Shrimp Paste", "ingredient_name": "Shrimp Paste", "quantity": "20", "unit": "g"}, {"raw_name": "Cooking oil", "ingredient_name": "Cooking oil", "quantity": "3/4", "unit": "c"}, {"raw_name": "Salt", "ingredient_name": "Salt", "quantity": "1", "unit": "pinch"}, {"raw_name": "Lemongrass", "ingredient_name": "Lemongrass", "quantity": "1", "unit": "pc"}, {"raw_name": "?", "ingredient_name": null, "quantity": "20", "unit": "whole"}, {"raw_name": "Vietnamese Coriander", "ingredient_name": "Vietnamese Coriander", "quantity": "1", "unit": "bunch"}, {"raw_name": "Tamarind", "ingredient_name": "Tamarind", "quantity": "1", "unit": "pc"}, {"raw_name": "Onion", "ingredient_name": "Onion", "quantity": "2", "unit": "whole"}, {"raw_name": "Garlic", "ingredient_name": "Garlic", "quantity": "4", "unit": "clove"}, {"raw_name": "Shrimp Paste", "ingredient_name": "Shrimp Paste", "quantity": "25", "unit": "g"}, {"raw_name": "Chili Pepper", "ingredient_name": "Chili Pepper", "quantity": "10", "unit": "whole"}, {"raw_name": "Cooking oil", "ingredient_name": "Cooking oil", "quantity": "4", "unit": "tbsp"}, {"raw_name": "Salt", "ingredient_name": "Salt", "quantity": "1", "unit": "pinch"}, {"raw_name": "Sugar", "ingredient_name": "Sugar", "quantity": "1", "unit": "pinch"}, {"raw_name": "Rice", "ingredient_name": "Rice", "quantity": "2", "unit": "kg"}, {"raw_name": "Mung bean", "ingredient_name": "Mung bean", "quantity": "500", "unit": "g"}, {"raw_name": "Cucumber", "ingredient_name": "Cucumber", "quantity": "1", "unit": "whole"}]


created_at: 2026-04-04 17:53:07.524183
status: success
provider: claude
filename: Asian/Miniature Teriyaki Pork Kebabs.pdf
recipe_title: Miniature Teriyaki Pork Kabobs
unmatched_items: []
unit_warnings: []
resolution_tiers: {"exact": 7}
raw_ai_response:
  {"title": "Miniature Teriyaki Pork Kabobs", "description": "Tender pork loin strips threaded accordion-style with mandarin oranges and green pepper on bamboo skewers, brushed with a honey teriyaki sauce and broiled to perfection.", "servings": 24, "prep_time": 10, "cook_time": 5, "cuisine": "American", "tags": ["Quick", "Under 30 Minutes", "Grilled", "High Protein", "Game Day", "Appetizer"], "culinary_type": "Appetizer", "instructions": "Step 1: Soak bamboo skewers in cold water for 20-30 minutes.\nStep 2: On bamboo skewers, thread pork strips accordion-style with the mandarin oranges. Add a green pepper strip to the ends of each skewer.\nStep 3: For sauce, in a small bowl combine the teriyaki sauce, honey, vinegar, and garlic powder; mix well.\nStep 4: Brush sauce over kabobs. Broil 6 inches from heat 5-6 minutes, turning and brushing with sauce occasionally.", "has_ingredient_list": true, "extraction_confidence": "high", "ingredients": [{"name": "Pork Loin", "quantity": "1", "unit": "lb", "modifiers": "boneless, cut into 4x1x1/2-inch strips", "package_qty": "", "package_unit": ""}, {"name": "Mandarin Orange", "quantity": "1", "unit": "can", "modifiers": "drained", "package_qty": "11", "package_unit": "oz"}, {"name": "Bell Pepper", "quantity": "1", "unit": "whole", "modifiers": "small, green, cut into 1x1/4x1/4-inch strips", "package_qty": "", "package_unit": ""}, {"name": "Teriyaki Sauce", "quantity": "1/4", "unit": "cup", "modifiers": "", "package_qty": "", "package_unit": ""}, {"name": "Honey", "quantity": "1", "unit": "tbsp", "modifiers": "", "package_qty": "", "package_unit": ""}, {"name": "Vinegar", "quantity": "1", "unit": "tbsp", "modifiers": "", "package_qty": "", "package_unit": ""}, {"name": "Garlic Powder", "quantity": "1/8", "unit": "tsp", "modifiers": "", "package_qty": "", "package_unit": ""}]}

matched_ingredients:
  [{"raw_name": "Pork Loin", "ingredient_name": "Pork Loin", "quantity": "1", "unit": "lb"}, {"raw_name": "Mandarin Orange", "ingredient_name": "Mandarin Orange", "quantity": "1", "unit": "can"}, {"raw_name": "Bell Pepper", "ingredient_name": "Bell Pepper", "quantity": "1", "unit": "whole"}, {"raw_name": "Teriyaki Sauce", "ingredient_name": "Teriyaki Sauce", "quantity": "1/4", "unit": "c"}, {"raw_name": "Honey", "ingredient_name": "Honey", "quantity": "1", "unit": "tbsp"}, {"raw_name": "Vinegar", "ingredient_name": "Vinegar", "quantity": "1", "unit": "tbsp"}, {"raw_name": "Garlic Powder", "ingredient_name": "Garlic Powder", "quantity": "1/8", "unit": "tsp"}]


created_at: 2026-04-04 17:53:22.502498
status: success
provider: claude
filename: Asian/Quick and easy curry.pdf
recipe_title: Quick & Easy Curry
unmatched_items: []
unit_warnings: []
resolution_tiers: {"exact": 11}
raw_ai_response:
  {"title": "Quick & Easy Curry", "description": "A quick and easy chicken curry with a surprise ingredient \u2014 applesauce \u2014 that creates a smooth, flavorful sauce. Served over hot cooked rice and garnished with chopped green onions.", "servings": 4, "prep_time": 10, "cook_time": 50, "cuisine": "Indian", "tags": ["Quick", "Stovetop", "Comfort Food", "Weeknight", "Family Friendly", "Budget Friendly"], "culinary_type": "Main Course", "instructions": "Step 1: In a heavy 3-quart saucepan, heat oil over medium-high heat.\nStep 2: Add onions, garlic, carrots, celery, and curry powder; saut\u00e9 until onions are translucent, about 5 minutes.\nStep 3: Add chicken broth and applesauce. Bring to a boil, lower heat and simmer, uncovered, 40 to 45 minutes, stirring occasionally.\nStep 4: Pour into blender and pur\u00e9e until smooth.\nStep 5: Return pur\u00e9e to saucepan, add cooked chicken, and simmer over low heat just until heated through.\nStep 6: Serve curry over rice, garnished with chopped green onions.", "has_ingredient_list": true, "extraction_confidence": "high", "ingredients": [{"name": "Cooking oil", "quantity": "1", "unit": "tbsp", "modifiers": "", "package_qty": "", "package_unit": ""}, {"name": "Onion", "quantity": "1", "unit": "cup", "modifiers": "chopped", "package_qty": "", "package_unit": ""}, {"name": "Garlic", "quantity": "1", "unit": "clove", "modifiers": "bruised", "package_qty": "", "package_unit": ""}, {"name": "Carrot", "quantity": "1 1/2", "unit": "cup", "modifiers": "chopped", "package_qty": "", "package_unit": ""}, {"name": "Celery", "quantity": "1/2", "unit": "cup", "modifiers": "chopped", "package_qty": "", "package_unit": ""}, {"name": "Curry Powder", "quantity": "4", "unit": "tsp", "modifiers": "", "package_qty": "", "package_unit": ""}, {"name": "Chicken Broth", "quantity": "1 1/2", "unit": "cup", "modifiers": "", "package_qty": "", "package_unit": ""}, {"name": "Applesauce", "quantity": "1", "unit": "cup", "modifiers": "", "package_qty": "", "package_unit": ""}, {"name": "Chicken", "quantity": "2", "unit": "cup", "modifiers": "cooked", "package_qty": "", "package_unit": ""}, {"name": "Rice", "quantity": "3", "unit": "cup", "modifiers": "hot, cooked", "package_qty": "", "package_unit": ""}, {"name": "Green Onion", "quantity": "1/2", "unit": "cup", "modifiers": "chopped, for garnish", "package_qty": "", "package_unit": ""}]}

matched_ingredients:
  [{"raw_name": "Cooking oil", "ingredient_name": "Cooking oil", "quantity": "1", "unit": "tbsp"}, {"raw_name": "Onion", "ingredient_name": "Onion", "quantity": "1", "unit": "c"}, {"raw_name": "Garlic", "ingredient_name": "Garlic", "quantity": "1", "unit": "clove"}, {"raw_name": "Carrot", "ingredient_name": "Carrot", "quantity": "1 1/2", "unit": "c"}, {"raw_name": "Celery", "ingredient_name": "Celery", "quantity": "1/2", "unit": "c"}, {"raw_name": "Curry Powder", "ingredient_name": "Curry Powder", "quantity": "4", "unit": "tsp"}, {"raw_name": "Chicken Broth", "ingredient_name": "Chicken Broth", "quantity": "1 1/2", "unit": "c"}, {"raw_name": "Applesauce", "ingredient_name": "Applesauce", "quantity": "1", "unit": "c"}, {"raw_name": "Chicken", "ingredient_name": "Chicken", "quantity": "2", "unit": "c"}, {"raw_name": "Rice", "ingredient_name": "Rice", "quantity": "3", "unit": "c"}, {"raw_name": "Green Onion", "ingredient_name": "Green Onion", "quantity": "1/2", "unit": "c"}]


created_at: 2026-04-04 17:53:53.777900
status: success
provider: claude
filename: Asian/Chinese/Char Sui (Chinese BBQ Pork).pdf
recipe_title: Hong Kong Style Char Siu (Chinese BBQ Pork)
unmatched_items: []
unit_warnings: []
resolution_tiers: {"exact": 18}
raw_ai_response:
  {"title": "Hong Kong Style Char Siu (Chinese BBQ Pork)", "description": "A classic Hong Kong-style Chinese BBQ pork featuring tender pork marinated in a savory-sweet sauce with hoisin, oyster sauce, and five-spice, then roasted and finished with a honey glaze for a caramelized, slightly charred exterior.", "servings": 4, "prep_time": 240, "cook_time": 45, "cuisine": "Cantonese", "tags": ["Make Ahead", "Baked", "Savory", "Sweet", "High Protein", "Weekend Project"], "culinary_type": "Main Course", "instructions": "Step 1: Cut the pork into long strips about 2 inches thick. Pork shoulder offers a balance of meat and fat for juiciness; pork tenderloin is a leaner option that cooks faster. Pat the pork dry with paper towels to help the marinade adhere better.\nStep 2: Make the marinade. Option 1 (From Scratch): In a large bowl, combine all marinade ingredients and mix thoroughly until well combined. Option 2 (Store-Bought): In a large bowl, combine the store-bought Char Siu sauce, honey, Shaoxing wine, and red food coloring if using, and stir well.\nStep 3: Add the pork strips to your chosen marinade, ensuring each piece is fully coated. Cover with plastic wrap and refrigerate for at least 4 hours, preferably overnight.\nStep 4: Preheat your oven to 400\u00b0F (200\u00b0C). Line a baking tray with aluminum foil and place a wire rack on top.\nStep 5: Remove the pork from the marinade, letting excess drip off. Reserve the leftover marinade for basting. Place pork strips on the wire rack evenly spaced. Roast pork shoulder for 20 minutes or pork tenderloin for 15 minutes.\nStep 6: Remove pork from the oven. Baste generously with reserved marinade on all sides, then flip the pieces. Return to oven and roast an additional 15 minutes for pork shoulder or 10 minutes for pork tenderloin.\nStep 7: In a small bowl, mix 2 tablespoons of honey with 1 tablespoon of hot water until diluted and easy to brush.\nStep 8: Remove pork from the oven and brush the honey glaze generously over each piece. Return to oven and roast an additional 5 minutes for pork shoulder or 3-5 minutes for pork tenderloin. For a caramelized and slightly charred finish, broil on high for the last 2 minutes, watching carefully to prevent burning.\nStep 9: Use a meat thermometer to check doneness. Pork shoulder should reach 160\u00b0F (71\u00b0C); pork tenderloin should reach 145\u00b0F (63\u00b0C).\nStep 10: Remove from the oven and let rest for 10 minutes. Slice into thin, bite-sized pieces and serve hot with your choice of accompaniments.", "has_ingredient_list": true, "extraction_confidence": "high", "ingredients": [{"name": "Pork Shoulder", "quantity": "2", "unit": "lb", "modifiers": "cut into long strips about 2 inches thick", "package_qty": "", "package_unit": ""}, {"name": "Hoisin", "quantity": "3", "unit": "tbsp", "modifiers": "", "package_qty": "", "package_unit": ""}, {"name": "Honey", "quantity": "3", "unit": "tbsp", "modifiers": "", "package_qty": "", "package_unit": ""}, {"name": "Soy Sauce", "quantity": "3", "unit": "tbsp", "modifiers": "light", "package_qty": "", "package_unit": ""}, {"name": "Oyster Sauce", "quantity": "2", "unit": "tbsp", "modifiers": "", "package_qty": "", "package_unit": ""}, {"name": "Chinese Five Spice Powder", "quantity": "1", "unit": "tbsp", "modifiers": "", "package_qty": "", "package_unit": ""}, {"name": "Shaoxing Wine", "quantity": "1", "unit": "tbsp", "modifiers": "", "package_qty": "", "package_unit": ""}, {"name": "Sesame Oil", "quantity": "1", "unit": "tsp", "modifiers": "", "package_qty": "", "package_unit": ""}, {"name": "Garlic", "quantity": "3", "unit": "clove", "modifiers": "minced", "package_qty": "", "package_unit": ""}, {"name": "Brown Sugar", "quantity": "1", "unit": "tbsp", "modifiers": "", "package_qty": "", "package_unit": ""}, {"name": "White Pepper", "quantity": "1/4", "unit": "tsp", "modifiers": "", "package_qty": "", "package_unit": ""}, {"name": "Food Coloring", "quantity": "1", "unit": "dash", "modifiers": "red, optional", "package_qty": "", "package_unit": ""}, {"name": "Char Siu Sauce", "quantity": "1", "unit": "cup", "modifiers": "", "package_qty": "", "package_unit": ""}, {"name": "Honey", "quantity": "1", "unit": "tbsp", "modifiers": "optional", "package_qty": "", "package_unit": ""}, {"name": "Shaoxing Wine", "quantity": "1", "unit": "tbsp", "modifiers": "", "package_qty": "", "package_unit": ""}, {"name": "Food Coloring", "quantity": "1", "unit": "dash", "modifiers": "red, optional", "package_qty": "", "package_unit": ""}, {"name": "Honey", "quantity": "2", "unit": "tbsp", "modifiers": "", "package_qty": "", "package_unit": ""}, {"name": "Water", "quantity": "1", "unit": "tbsp", "modifiers": "hot", "package_qty": "", "package_unit": ""}]}

matched_ingredients:
  [{"raw_name": "Pork Shoulder", "ingredient_name": "Pork Shoulder", "quantity": "2", "unit": "lb"}, {"raw_name": "Hoisin", "ingredient_name": "Hoisin", "quantity": "3", "unit": "tbsp"}, {"raw_name": "Honey", "ingredient_name": "Honey", "quantity": "3", "unit": "tbsp"}, {"raw_name": "Soy Sauce", "ingredient_name": "Soy Sauce", "quantity": "3", "unit": "tbsp"}, {"raw_name": "Oyster Sauce", "ingredient_name": "Oyster Sauce", "quantity": "2", "unit": "tbsp"}, {"raw_name": "Five Spice Powder", "ingredient_name": "Five Spice Powder", "quantity": "1", "unit": "tbsp"}, {"raw_name": "Shaoxing Wine", "ingredient_name": "Shaoxing Wine", "quantity": "1", "unit": "tbsp"}, {"raw_name": "Sesame Oil", "ingredient_name": "Sesame Oil", "quantity": "1", "unit": "tsp"}, {"raw_name": "Garlic", "ingredient_name": "Garlic", "quantity": "3", "unit": "clove"}, {"raw_name": "Brown Sugar", "ingredient_name": "Brown Sugar", "quantity": "1", "unit": "tbsp"}, {"raw_name": "White Pepper", "ingredient_name": "White Pepper", "quantity": "1/4", "unit": "tsp"}, {"raw_name": "Food Coloring", "ingredient_name": "Food Coloring", "quantity": "1", "unit": "dash"}, {"raw_name": "Char Siu Sauce", "ingredient_name": "Char Siu Sauce", "quantity": "1", "unit": "c"}, {"raw_name": "Honey", "ingredient_name": "Honey", "quantity": "1", "unit": "tbsp"}, {"raw_name": "Shaoxing Wine", "ingredient_name": "Shaoxing Wine", "quantity": "1", "unit": "tbsp"}, {"raw_name": "Food Coloring", "ingredient_name": "Food Coloring", "quantity": "1", "unit": "dash"}, {"raw_name": "Honey", "ingredient_name": "Honey", "quantity": "2", "unit": "tbsp"}, {"raw_name": "Water", "ingredient_name": "Water", "quantity": "1", "unit": "tbsp"}]


created_at: 2026-04-04 17:54:11.843501
status: success
provider: claude
filename: Asian/Chinese/Fajita Beef Stir-Fry.pdf
recipe_title: Asian-Inspired Fajita Beef Stir-Fry
unmatched_items: []
unit_warnings: []
resolution_tiers: {"exact": 13}
raw_ai_response:
  {"title": "Asian-Inspired Fajita Beef Stir-Fry", "description": "A fusion stir-fry that uses seasoned fajita beef with classic Asian sauces like hoisin, soy, and oyster sauce, served over rice or noodles.", "servings": 4, "prep_time": 10, "cook_time": 15, "cuisine": "Chinese", "tags": ["Quick", "Under 30 Minutes", "Stovetop", "Weeknight", "High Protein", "Savory"], "culinary_type": "Main Course", "instructions": "Step 1: Prepare the Sauce: In a small bowl, mix the soy sauce, oyster sauce, hoisin sauce, rice cooking wine, and sesame oil. Set aside.\nStep 2: Cook the Beef: Heat a wok or large skillet over high heat. Add a bit of vegetable oil, then add the seasoned fajita beef. Stir-fry for 2-3 minutes until the beef is cooked through. Remove the beef from the wok and set aside.\nStep 3: Cook the Aromatics: Add a bit more vegetable oil if needed, then stir-fry the minced garlic, minced ginger, and sliced onion for 2-3 minutes until fragrant and the onion is slightly softened.\nStep 4: Combine Everything: Return the beef to the wok, add the sauce, and toss everything together. If the sauce needs thickening, add the cornstarch slurry and cook until the sauce coats the beef and onions evenly.\nStep 5: Serve: Serve hot over rice or noodles.", "has_ingredient_list": true, "extraction_confidence": "high", "ingredients": [{"name": "Beef", "quantity": "1", "unit": "lb", "modifiers": "fajita seasoned, sliced thinly", "package_qty": "", "package_unit": ""}, {"name": "Soy Sauce", "quantity": "2", "unit": "tbsp", "modifiers": "", "package_qty": "", "package_unit": ""}, {"name": "Oyster Sauce", "quantity": "1", "unit": "tbsp", "modifiers": "optional", "package_qty": "", "package_unit": ""}, {"name": "Hoisin", "quantity": "2", "unit": "tbsp", "modifiers": "", "package_qty": "", "package_unit": ""}, {"name": "Shaoxing Wine", "quantity": "1", "unit": "tbsp", "modifiers": "", "package_qty": "", "package_unit": ""}, {"name": "Sesame Oil", "quantity": "1", "unit": "tbsp", "modifiers": "", "package_qty": "", "package_unit": ""}, {"name": "Garlic", "quantity": "3", "unit": "clove", "modifiers": "minced", "package_qty": "", "package_unit": ""}, {"name": "Ginger", "quantity": "1", "unit": "tbsp", "modifiers": "minced, from jar", "package_qty": "", "package_unit": ""}, {"name": "Onion", "quantity": "1/2", "unit": "whole", "modifiers": "sliced", "package_qty": "", "package_unit": ""}, {"name": "Vegetable Oil", "quantity": "1", "unit": "tbsp", "modifiers": "for stir-frying", "package_qty": "", "package_unit": ""}, {"name": "Cornstarch", "quantity": "2", "unit": "tsp", "modifiers": "mixed with water for slurry", "package_qty": "", "package_unit": ""}, {"name": "Water", "quantity": "3", "unit": "tbsp", "modifiers": "for cornstarch slurry", "package_qty": "", "package_unit": ""}, {"name": "Rice", "quantity": "1", "unit": "cup", "modifiers": "cooked, for serving", "package_qty": "", "package_unit": ""}]}

matched_ingredients:
  [{"raw_name": "Beef", "ingredient_name": "Beef", "quantity": "1", "unit": "lb"}, {"raw_name": "Soy Sauce", "ingredient_name": "Soy Sauce", "quantity": "2", "unit": "tbsp"}, {"raw_name": "Oyster Sauce", "ingredient_name": "Oyster Sauce", "quantity": "1", "unit": "tbsp"}, {"raw_name": "Hoisin", "ingredient_name": "Hoisin", "quantity": "2", "unit": "tbsp"}, {"raw_name": "Shaoxing Wine", "ingredient_name": "Shaoxing Wine", "quantity": "1", "unit": "tbsp"}, {"raw_name": "Sesame Oil", "ingredient_name": "Sesame Oil", "quantity": "1", "unit": "tbsp"}, {"raw_name": "Garlic", "ingredient_name": "Garlic", "quantity": "3", "unit": "clove"}, {"raw_name": "Ginger", "ingredient_name": "Ginger", "quantity": "1", "unit": "tbsp"}, {"raw_name": "Onion", "ingredient_name": "Onion", "quantity": "1/2", "unit": "whole"}, {"raw_name": "Vegetable Oil", "ingredient_name": "Vegetable Oil", "quantity": "1", "unit": "tbsp"}, {"raw_name": "Cornstarch", "ingredient_name": "Cornstarch", "quantity": "2", "unit": "tsp"}, {"raw_name": "Water", "ingredient_name": "Water", "quantity": "3", "unit": "tbsp"}, {"raw_name": "Rice", "ingredient_name": "Rice", "quantity": "1", "unit": "c"}]


created_at: 2026-04-04 17:54:48.700112
status: success
provider: claude
filename: Asian/Chinese/Fried Rice (Cantonese Style).pdf
recipe_title: Fried Rice, Cantonese Style
unmatched_items: []
unit_warnings: []
resolution_tiers: {"exact": 8}
raw_ai_response:
  {"title": "Fried Rice, Cantonese Style", "description": "A classic Cantonese-style fried rice made with eggs, bean sprouts, and cooked rice, stir-fried together in a wok for a light and flavorful dish. Optional cooked meat can be added for extra heartiness.", "servings": 3, "prep_time": 10, "cook_time": 15, "cuisine": "Cantonese", "tags": ["Quick", "Stovetop", "Weeknight", "Budget Friendly", "Leftovers Well", "Family Friendly"], "culinary_type": "Main Course", "instructions": "Step 1: Beat eggs with salt and sherry.\nStep 2: Heat oil in a Stir-Fry Pan or Wok over medium high. Stir in minced onion and then the egg mixture. Scramble and break into small pieces until quite dry. Add rice, brown syrup, and bean sprouts. Stir constantly until the ingredients are well blended and thoroughly heated \u2014 about 8 to 10 minutes.\nStep 3: One-half cup diced or shredded cooked meat such as pork, ham, chicken, shrimp, or beef may be added with the rice, if desired.\nNote: For lighter, fluffier fried rice use day-old, cooked long grain white rice. Fried rice is the way Chinese use leftover rice. Never use soy sauce as it tends to make the rice too soft.", "has_ingredient_list": true, "extraction_confidence": "high", "ingredients": [{"name": "Egg", "quantity": "2", "unit": "whole", "modifiers": "", "package_qty": "", "package_unit": ""}, {"name": "Salt", "quantity": "2", "unit": "tsp", "modifiers": "", "package_qty": "", "package_unit": ""}, {"name": "Dry Sherry", "quantity": "1/2", "unit": "tsp", "modifiers": "", "package_qty": "", "package_unit": ""}, {"name": "Onion", "quantity": "2", "unit": "tbsp", "modifiers": "minced", "package_qty": "", "package_unit": ""}, {"name": "Cooking oil", "quantity": "5", "unit": "tbsp", "modifiers": "", "package_qty": "", "package_unit": ""}, {"name": "White Rice", "quantity": "4", "unit": "cup", "modifiers": "cooked", "package_qty": "", "package_unit": ""}, {"name": "Brown Gravy", "quantity": "1", "unit": "tsp", "modifiers": "Chinese brown gravy syrup", "package_qty": "", "package_unit": ""}, {"name": "Mung bean", "quantity": "1", "unit": "cup", "modifiers": "bean sprouts", "package_qty": "", "package_unit": ""}]}

matched_ingredients:
  [{"raw_name": "Egg", "ingredient_name": "Egg", "quantity": "2", "unit": "whole"}, {"raw_name": "Salt", "ingredient_name": "Salt", "quantity": "2", "unit": "tsp"}, {"raw_name": "Dry Sherry", "ingredient_name": "Dry Sherry", "quantity": "1/2", "unit": "tsp"}, {"raw_name": "Onion", "ingredient_name": "Onion", "quantity": "2", "unit": "tbsp"}, {"raw_name": "Cooking oil", "ingredient_name": "Cooking oil", "quantity": "5", "unit": "tbsp"}, {"raw_name": "White Rice", "ingredient_name": "White Rice", "quantity": "4", "unit": "c"}, {"raw_name": "Brown Gravy", "ingredient_name": "Brown Gravy", "quantity": "1", "unit": "tsp"}, {"raw_name": "Mung bean", "ingredient_name": "Mung bean", "quantity": "1", "unit": "c"}]


created_at: 2026-04-04 17:55:01.050188
status: success
provider: claude
filename: Asian/Chinese/Garlic Soy Grilled Spatchcocked Chicken.pdf
recipe_title: Garlic Soy Grilled Spatchcocked Chicken
unmatched_items: []
unit_warnings: []
resolution_tiers: {"failed": 1, "product_off_fallback": 1, "exact": 4}
raw_ai_response:
  {"title": "Garlic Soy Grilled Spatchcocked Chicken", "description": "Juicy spatchcocked Cornish hens marinated in a buttery garlic soy sauce and grilled to perfection. A simple yet flavorful recipe perfect for outdoor grilling.", "servings": 4, "prep_time": 70, "cook_time": 40, "cuisine": "American", "tags": ["Grilled", "Savory", "Weekend Project", "High Protein", "Family Friendly", "Few Ingredients"], "culinary_type": "Main Course", "instructions": "Step 1: In a large bowl, mix up the marinade by mixing together the butter, garlic, lemon juice and soy sauce.\nStep 2: Allow the cornish hens to sit in the large bowl of marinade for 1 hour. Flip them over at 30 minutes.\nStep 3: Once they have marinated, fire up the grill.\nStep 4: Place them flat on the surface of the hot grill. Cook for 20 minutes each side. Use a spatula to press them down and keep them flat while they are cooking. Alternatively, place a foil covered brick on top. Add more marinade as they are cooking.\nStep 5: Total cook time was about 40-45 minutes for juicy, delicious Cornish Hens.", "has_ingredient_list": true, "extraction_confidence": "high", "ingredients": [{"name": "Cornish Hen", "quantity": "2", "unit": "whole", "modifiers": "spatchcocked", "package_qty": "", "package_unit": ""}, {"name": "Butter", "quantity": "1/2", "unit": "cup", "modifiers": "melted", "package_qty": "", "package_unit": ""}, {"name": "Garlic", "quantity": "1/4", "unit": "cup", "modifiers": "minced", "package_qty": "", "package_unit": ""}, {"name": "Lemon Juice", "quantity": "2", "unit": "tbsp", "modifiers": "", "package_qty": "", "package_unit": ""}, {"name": "Soy Sauce", "quantity": "1/4", "unit": "cup", "modifiers": "", "package_qty": "", "package_unit": ""}]}

matched_ingredients:
  [{"raw_name": "?", "ingredient_name": null, "quantity": "2", "unit": "whole"}, {"raw_name": "Butter", "ingredient_name": "Butter", "quantity": "1/2", "unit": "c"}, {"raw_name": "Garlic", "ingredient_name": "Garlic", "quantity": "1/4", "unit": "c"}, {"raw_name": "Lemon Juice", "ingredient_name": "Lemon Juice", "quantity": "2", "unit": "tbsp"}, {"raw_name": "Soy Sauce", "ingredient_name": "Soy Sauce", "quantity": "1/4", "unit": "c"}]


created_at: 2026-04-04 17:56:06.128453
status: success
provider: claude
filename: Asian/Chinese/HK Style Sausage Rolls.pdf
recipe_title: Hong Kong Style Sausage Rolls
unmatched_items: []
unit_warnings: []
resolution_tiers: {"exact": 10}
raw_ai_response:
  {"title": "Hong Kong Style Sausage Rolls", "description": "Soft and fluffy Hong Kong-style bread rolls wrapped around sausages, made with a rich tangzhong dough for an extra tender crumb.", "servings": 4, "prep_time": 10, "cook_time": 120, "cuisine": "Cantonese", "tags": ["Baked", "Kid Friendly", "Family Friendly", "Weekend Project", "Snack", "Comfort Food"], "culinary_type": "Deli / Specialty", "instructions": "Step 1: Combine all dry ingredients: flour, salt, sugar and instant yeast in a bowl. Make a well in the center. Whisk and combine all wet ingredients: milk, egg and tangzhong, then add into the well of the dry ingredients. Knead until you get a dough shape and gluten has developed, then knead in the butter. Keep kneading until the dough is smooth, not sticky and elastic. To test if the dough is ready, stretch it with two hands \u2014 if it forms a thin elastic membrane and a poked hole stays circular (not an irregular tear), the dough is ready. Do not over-knead.\nStep 2: Knead the dough into a ball shape. Place in a greased bowl and cover with a wet towel or cling wrap. Let it proof until doubled in size, about 40 minutes. The best proofing temperature is 28\u00b0C.\nStep 3: Transfer to a clean floured surface. Deflate and divide the dough into 4 to 6 equal portions. Knead into ball shapes. Cover with cling wrap and let rest for 15 minutes.\nStep 4: Knead each portion into a long tube, about 41 cm in length. Roll each around a sausage to enclose it, with seals facing down. Place rolls on a tray lined with baking paper, cover with cling wrap or a wet towel, and leave for a second round of proofing, about 45 to 60 minutes, until doubled in size.\nStep 5: Brush whisked egg on the surface of the rolls. Bake in a preheated 180\u00b0C (356\u00b0F) oven for 35 minutes, or until golden brown. Transfer onto a wire rack and let cool completely.", "has_ingredient_list": true, "extraction_confidence": "high", "ingredients": [{"name": "Sausage", "quantity": "4", "unit": "whole", "modifiers": "", "package_qty": "", "package_unit": ""}, {"name": "Bread Flour", "quantity": "350", "unit": "g", "modifiers": "", "package_qty": "", "package_unit": ""}, {"name": "Caster Sugar", "quantity": "55", "unit": "g", "modifiers": "", "package_qty": "", "package_unit": ""}, {"name": "Salt", "quantity": "5", "unit": "g", "modifiers": "", "package_qty": "", "package_unit": ""}, {"name": "Egg", "quantity": "56", "unit": "g", "modifiers": "", "package_qty": "", "package_unit": ""}, {"name": "Milk Powder", "quantity": "7", "unit": "g", "modifiers": "optional", "package_qty": "", "package_unit": ""}, {"name": "Milk", "quantity": "125", "unit": "ml", "modifiers": "", "package_qty": "", "package_unit": ""}, {"name": "Instant Yeast", "quantity": "5", "unit": "g", "modifiers": "", "package_qty": "", "package_unit": ""}, {"name": "Butter", "quantity": "30", "unit": "g", "modifiers": "cut into small pieces, softened, room temperature", "package_qty": "", "package_unit": ""}, {"name": "Egg", "quantity": "1", "unit": "whole", "modifiers": "whisked, for brushing", "package_qty": "", "package_unit": ""}]}

matched_ingredients:
  [{"raw_name": "Sausage", "ingredient_name": "Sausage", "quantity": "4", "unit": "whole"}, {"raw_name": "Bread Flour", "ingredient_name": "Bread Flour", "quantity": "350", "unit": "g"}, {"raw_name": "Caster Sugar", "ingredient_name": "Caster Sugar", "quantity": "55", "unit": "g"}, {"raw_name": "Salt", "ingredient_name": "Salt", "quantity": "5", "unit": "g"}, {"raw_name": "Egg", "ingredient_name": "Egg", "quantity": "56", "unit": "g"}, {"raw_name": "Milk Powder", "ingredient_name": "Milk Powder", "quantity": "7", "unit": "g"}, {"raw_name": "Milk", "ingredient_name": "Milk", "quantity": "125", "unit": "ml"}, {"raw_name": "Instant Yeast", "ingredient_name": "Instant Yeast", "quantity": "5", "unit": "g"}, {"raw_name": "Butter", "ingredient_name": "Butter", "quantity": "30", "unit": "g"}, {"raw_name": "Egg", "ingredient_name": "Egg", "quantity": "1", "unit": "whole"}]


created_at: 2026-04-04 17:56:16.250326
status: success
provider: claude
filename: Asian/Chinese/Hakka Steamed Egg.pdf
recipe_title: Hakka Steamed Eggs
unmatched_items: []
unit_warnings: []
resolution_tiers: {"exact": 5}
raw_ai_response:
  {"title": "Hakka Steamed Eggs", "description": "A simple and comforting Hakka-style steamed egg dish seasoned with soy sauce and rice cooking wine, topped with fresh green onions. Great for children and older persons.", "servings": 4, "prep_time": 5, "cook_time": 25, "cuisine": "Chinese", "tags": ["Quick", "Under 30 Minutes", "Kid Friendly", "Family Friendly", "Few Ingredients", "Light"], "culinary_type": "Side Dish", "instructions": "Step 1: Whisk eggs lightly.\nStep 2: Add the seasoning mixture (salt, soy sauce, and rice cooking wine) and mix well.\nStep 3: Place in a rice cooker or steamer and steam over low heat for 25 minutes or until done.\nStep 4: Remove and sprinkle chopped green onions on top.\nStep 5: Serve while still hot.", "has_ingredient_list": true, "extraction_confidence": "high", "ingredients": [{"name": "Egg", "quantity": "4", "unit": "whole", "modifiers": "", "package_qty": "", "package_unit": ""}, {"name": "Green Onion", "quantity": "1", "unit": "stalk", "modifiers": "chopped", "package_qty": "", "package_unit": ""}, {"name": "Salt", "quantity": "1/2", "unit": "tsp", "modifiers": "", "package_qty": "", "package_unit": ""}, {"name": "Soy Sauce", "quantity": "1", "unit": "tbsp", "modifiers": "", "package_qty": "", "package_unit": ""}, {"name": "Shaoxing Wine", "quantity": "1", "unit": "tbsp", "modifiers": "", "package_qty": "", "package_unit": ""}]}

matched_ingredients:
  [{"raw_name": "Egg", "ingredient_name": "Egg", "quantity": "4", "unit": "whole"}, {"raw_name": "Green Onion", "ingredient_name": "Green Onion", "quantity": "1", "unit": "stalk"}, {"raw_name": "Salt", "ingredient_name": "Salt", "quantity": "1/2", "unit": "tsp"}, {"raw_name": "Soy Sauce", "ingredient_name": "Soy Sauce", "quantity": "1", "unit": "tbsp"}, {"raw_name": "Shaoxing Wine", "ingredient_name": "Shaoxing Wine", "quantity": "1", "unit": "tbsp"}]


created_at: 2026-04-04 17:57:01.718571
status: success
provider: claude
filename: Asian/Chinese/Honey Garlic Chicken.pdf
recipe_title: Honey Garlic Chicken
unmatched_items: []
unit_warnings: []
resolution_tiers: {"exact": 23}
raw_ai_response:
  {"title": "Honey Garlic Chicken", "description": "Crispy fried chicken chunks coated in a savory-sweet honey garlic sauce, served over hot rice. A flavorful and satisfying meal ready in just 30 minutes.", "servings": 4, "prep_time": 10, "cook_time": 20, "cuisine": "American", "tags": ["Quick", "Under 30 Minutes", "Weeknight", "Stovetop", "Family Friendly", "Crispy"], "culinary_type": "Main Course", "instructions": "Step 1: Rinse chicken and pat dry, then cut into 2 inch chunks.\nStep 2: Place chicken in a large bowl, coat with all the spices, mix well and set aside.\nStep 3: Add about 3 tablespoons of olive oil to a skillet over medium heat.\nStep 4: Coat chicken in cornstarch, shake off excess, place chicken in hot oil. Fry about 3 minutes per side in batches.\nStep 5: Drain chicken on paper napkin as you complete the frying process.\nStep 6: Repeat until all chicken is complete.\nStep 7: To Prepare the Honey Garlic Sauce: Mix all sauce ingredients together and set aside.\nStep 8: Once chicken is complete, add all the chicken back to the pan. You don't have to drain the excess oil from the pan.\nStep 9: Pour sauce over chicken, bring mixture to a boil, reduce heat and simmer for about 3 minutes.\nStep 10: Serve chicken over hot rice, garnished with green onions.", "has_ingredient_list": true, "extraction_confidence": "high", "ingredients": [{"name": "Chicken Breast", "quantity": "5", "unit": "whole", "modifiers": "boneless, skinless", "package_qty": "", "package_unit": ""}, {"name": "Cornstarch", "quantity": "1", "unit": "cup", "modifiers": "", "package_qty": "", "package_unit": ""}, {"name": "Creole Seasoning", "quantity": "1", "unit": "tbsp", "modifiers": "", "package_qty": "", "package_unit": ""}, {"name": "Black Pepper", "quantity": "1/2", "unit": "tbsp", "modifiers": "", "package_qty": "", "package_unit": ""}, {"name": "Garlic Powder", "quantity": "1/2", "unit": "tbsp", "modifiers": "", "package_qty": "", "package_unit": ""}, {"name": "Onion Powder", "quantity": "1/2", "unit": "tbsp", "modifiers": "", "package_qty": "", "package_unit": ""}, {"name": "Chili Powder", "quantity": "1/2", "unit": "tbsp", "modifiers": "", "package_qty": "", "package_unit": ""}, {"name": "Olive Oil", "quantity": "3", "unit": "tbsp", "modifiers": "extra-virgin", "package_qty": "", "package_unit": ""}, {"name": "Rice", "quantity": "1", "unit": "cup", "modifiers": "hot, cooked", "package_qty": "", "package_unit": ""}, {"name": "Green Onion", "quantity": "1", "unit": "bunch", "modifiers": "to garnish", "package_qty": "", "package_unit": ""}, {"name": "Chicken Broth", "quantity": "3/4", "unit": "cup", "modifiers": "low sodium", "package_qty": "", "package_unit": ""}, {"name": "Honey", "quantity": "1/2", "unit": "cup", "modifiers": "", "package_qty": "", "package_unit": ""}, {"name": "Soy Sauce", "quantity": "1/4", "unit": "cup", "modifiers": "low sodium", "package_qty": "", "package_unit": ""}, {"name": "Garlic", "quantity": "5", "unit": "clove", "modifiers": "minced", "package_qty": "", "package_unit": ""}, {"name": "Oyster Sauce", "quantity": "1", "unit": "tbsp", "modifiers": "", "package_qty": "", "package_unit": ""}, {"name": "Sriracha", "quantity": "1", "unit": "tbsp", "modifiers": "", "package_qty": "", "package_unit": ""}, {"name": "Cornstarch", "quantity": "1", "unit": "tbsp", "modifiers": "", "package_qty": "", "package_unit": ""}, {"name": "Rice Vinegar", "quantity": "1", "unit": "tbsp", "modifiers": "", "package_qty": "", "package_unit": ""}, {"name": "Black Pepper", "quantity": "1", "unit": "tsp", "modifiers": "", "package_qty": "", "package_unit": ""}, {"name": "Chili Powder", "quantity": "1", "unit": "tsp", "modifiers": "", "package_qty": "", "package_unit": ""}, {"name": "Garlic Powder", "quantity": "1", "unit": "tsp", "modifiers": "", "package_qty": "", "package_unit": ""}, {"name": "Onion Powder", "quantity": "1", "unit": "tsp", "modifiers": "", "package_qty": "", "package_unit": ""}, {"name": "Ginger", "quantity": "1", "unit": "tsp", "modifiers": "ground", "package_qty": "", "package_unit": ""}]}

matched_ingredients:
  [{"raw_name": "Chicken Breast", "ingredient_name": "Chicken Breast", "quantity": "5", "unit": "whole"}, {"raw_name": "Cornstarch", "ingredient_name": "Cornstarch", "quantity": "1", "unit": "c"}, {"raw_name": "Creole Seasoning", "ingredient_name": "Creole Seasoning", "quantity": "1", "unit": "tbsp"}, {"raw_name": "Black Pepper", "ingredient_name": "Black Pepper", "quantity": "1/2", "unit": "tbsp"}, {"raw_name": "Garlic Powder", "ingredient_name": "Garlic Powder", "quantity": "1/2", "unit": "tbsp"}, {"raw_name": "Onion Powder", "ingredient_name": "Onion Powder", "quantity": "1/2", "unit": "tbsp"}, {"raw_name": "Chili Powder", "ingredient_name": "Chili Powder", "quantity": "1/2", "unit": "tbsp"}, {"raw_name": "Olive Oil", "ingredient_name": "Olive Oil", "quantity": "3", "unit": "tbsp"}, {"raw_name": "Rice", "ingredient_name": "Rice", "quantity": "1", "unit": "c"}, {"raw_name": "Green Onion", "ingredient_name": "Green Onion", "quantity": "1", "unit": "bunch"}, {"raw_name": "Chicken Broth", "ingredient_name": "Chicken Broth", "quantity": "3/4", "unit": "c"}, {"raw_name": "Honey", "ingredient_name": "Honey", "quantity": "1/2", "unit": "c"}, {"raw_name": "Soy Sauce", "ingredient_name": "Soy Sauce", "quantity": "1/4", "unit": "c"}, {"raw_name": "Garlic", "ingredient_name": "Garlic", "quantity": "5", "unit": "clove"}, {"raw_name": "Oyster Sauce", "ingredient_name": "Oyster Sauce", "quantity": "1", "unit": "tbsp"}, {"raw_name": "Sriracha", "ingredient_name": "Sriracha", "quantity": "1", "unit": "tbsp"}, {"raw_name": "Cornstarch", "ingredient_name": "Cornstarch", "quantity": "1", "unit": "tbsp"}, {"raw_name": "Rice Vinegar", "ingredient_name": "Rice Vinegar", "quantity": "1", "unit": "tbsp"}, {"raw_name": "Black Pepper", "ingredient_name": "Black Pepper", "quantity": "1", "unit": "tsp"}, {"raw_name": "Chili Powder", "ingredient_name": "Chili Powder", "quantity": "1", "unit": "tsp"}, {"raw_name": "Garlic Powder", "ingredient_name": "Garlic Powder", "quantity": "1", "unit": "tsp"}, {"raw_name": "Onion Powder", "ingredient_name": "Onion Powder", "quantity": "1", "unit": "tsp"}, {"raw_name": "Ginger", "ingredient_name": "Ginger", "quantity": "1", "unit": "tsp"}]


created_at: 2026-04-04 17:57:24.235914
status: success
provider: claude
filename: Asian/Chinese/Moo Shu Omelets.pdf
recipe_title: Moo Shu Omelets
unmatched_items: []
unit_warnings: []
resolution_tiers: {"exact": 11, "failed": 1, "product_off_fallback": 1}
raw_ai_response:
  {"title": "Moo Shu Omelets", "description": "Meatless omelets filled with crisp-tender asparagus, carrots, and green onions, topped with a sweet-and-sour sauce and toasted nuts. Perfect for brunch, lunch, or dinner for two.", "servings": 2, "prep_time": 15, "cook_time": 20, "cuisine": "Chinese", "tags": ["Quick", "Stovetop", "Vegetarian", "Light", "Few Ingredients", "Weeknight"], "culinary_type": "Breakfast / Brunch", "instructions": "Step 1: In a large saucepan, cook asparagus, carrots, and green onions in a small amount of boiling, lightly salted water for 7 to 9 minutes or till crisp-tender. Drain.\nStep 2: Meanwhile, for sauce, stir together sweet-and-sour sauce, pineapple or orange juice, and gingerroot or ginger. Set aside.\nStep 3: For omelets, in a small mixing bowl combine eggs and water; using a fork, beat till combined but not frothy.\nStep 4: In an 8- or 10-inch skillet with flared sides, heat 1 teaspoon of the cooking oil till a drop of water sizzles. Lift and tilt pan to coat sides of skillet.\nStep 5: Add 1/2 cup of the egg mixture to skillet; cook over medium heat. As eggs set, run a spatula around the edge of the skillet, lifting eggs and letting the uncooked portion flow underneath.\nStep 6: When eggs are set but still shiny, transfer omelet to a warm plate; cover with plastic wrap. Repeat with remaining egg mixture and oil as needed, to make 2 omelets.\nStep 7: To assemble, spread some of the sauce onto each omelet. Arrange steamed vegetables on one quarter of each omelet, fanning vegetables at edge of omelets. Fold each omelet over vegetables; fold again.\nStep 8: Top with additional sauce; sprinkle with the walnuts or almonds. If desired, garnish with shredded radish and sliced cucumber. Makes 2 main-dish servings.\nMicrowave directions: Prepare as directed, except in a 1\u00bd-quart microwave-safe casserole combine asparagus, carrots, green onions, and 2 tablespoons water. Micro-cook, covered, on 100% power (high) for 5 to 7 minutes or till vegetables are crisp-tender. Drain. Continue as directed.", "has_ingredient_list": true, "extraction_confidence": "high", "ingredients": [{"name": "Asparagus", "quantity": "12", "unit": "whole", "modifiers": "cut into 3-inch lengths", "package_qty": "", "package_unit": ""}, {"name": "Carrot", "quantity": "2", "unit": "whole", "modifiers": "cut into 3-inch sticks", "package_qty": "", "package_unit": ""}, {"name": "Green Onion", "quantity": "2", "unit": "whole", "modifiers": "cut into 2-inch lengths", "package_qty": "", "package_unit": ""}, {"name": "Sweet And Sour Sauce", "quantity": "2", "unit": "tbsp", "modifiers": "", "package_qty": "", "package_unit": ""}, {"name": "Pineapple Juice", "quantity": "1", "unit": "tbsp", "modifiers": "", "package_qty": "", "package_unit": ""}, {"name": "Ginger", "quantity": "1/2", "unit": "tsp", "modifiers": "grated", "package_qty": "", "package_unit": ""}, {"name": "Egg", "quantity": "4", "unit": "whole", "modifiers": "", "package_qty": "", "package_unit": ""}, {"name": "Water", "quantity": "2", "unit": "tbsp", "modifiers": "", "package_qty": "", "package_unit": ""}, {"name": "Cooking oil", "quantity": "2", "unit": "tsp", "modifiers": "", "package_qty": "", "package_unit": ""}, {"name": "Walnuts", "quantity": "2", "unit": "tbsp", "modifiers": "toasted, chopped", "package_qty": "", "package_unit": ""}, {"name": "Radish", "quantity": "1", "unit": "whole", "modifiers": "shredded, optional", "package_qty": "", "package_unit": ""}, {"name": "Cucumber", "quantity": "1", "unit": "whole", "modifiers": "thinly sliced, optional", "package_qty": "", "package_unit": ""}]}

matched_ingredients:
  [{"raw_name": "Asparagus", "ingredient_name": "Asparagus", "quantity": "12", "unit": "whole"}, {"raw_name": "Carrot", "ingredient_name": "Carrot", "quantity": "2", "unit": "whole"}, {"raw_name": "Green Onion", "ingredient_name": "Green Onion", "quantity": "2", "unit": "whole"}, {"raw_name": "?", "ingredient_name": null, "quantity": "2", "unit": "tbsp"}, {"raw_name": "Pineapple Juice", "ingredient_name": "Pineapple Juice", "quantity": "1", "unit": "tbsp"}, {"raw_name": "Ginger", "ingredient_name": "Ginger", "quantity": "1/2", "unit": "tsp"}, {"raw_name": "Egg", "ingredient_name": "Egg", "quantity": "4", "unit": "whole"}, {"raw_name": "Water", "ingredient_name": "Water", "quantity": "2", "unit": "tbsp"}, {"raw_name": "Cooking oil", "ingredient_name": "Cooking oil", "quantity": "2", "unit": "tsp"}, {"raw_name": "Walnuts", "ingredient_name": "Walnuts", "quantity": "2", "unit": "tbsp"}, {"raw_name": "Radish", "ingredient_name": "Radish", "quantity": "1", "unit": "whole"}, {"raw_name": "Cucumber", "ingredient_name": "Cucumber", "quantity": "1", "unit": "whole"}]


created_at: 2026-04-04 17:57:35.133429
status: success
provider: claude
filename: Asian/Chinese/Plum Sweet + Sour Sauce (for egg rolls).pdf
recipe_title: Plum Sweet & Sour Sauce
unmatched_items: []
unit_warnings: []
resolution_tiers: {"exact": 8}
raw_ai_response:
  {"title": "Plum Sweet & Sour Sauce", "description": "A homemade sweet and sour dipping sauce made with crushed pineapple, plum sauce, and vinegar, perfect for serving alongside egg rolls.", "servings": 8, "prep_time": 5, "cook_time": 15, "cuisine": "Chinese", "tags": ["Quick", "Stovetop", "Make Ahead", "Few Ingredients", "Sweet", "Savory"], "culinary_type": "Sauce / Condiment", "instructions": "Step 1: Heat pineapple (with syrup), sugar, 1 cup water, vinegar, and soy sauce to boiling.\nStep 2: Mix cornstarch and 2 tbsp cold water; stir into pineapple mixture.\nStep 3: Heat to boiling, stirring constantly.\nStep 4: Cool to room temperature; stir in plum sauce.\nStep 5: Cover and refrigerate.", "has_ingredient_list": true, "extraction_confidence": "high", "ingredients": [{"name": "Pineapple", "quantity": "1", "unit": "can", "modifiers": "crushed", "package_qty": "20", "package_unit": "oz"}, {"name": "Sugar", "quantity": "1", "unit": "cup", "modifiers": "", "package_qty": "", "package_unit": ""}, {"name": "Water", "quantity": "1", "unit": "cup", "modifiers": "", "package_qty": "", "package_unit": ""}, {"name": "Vinegar", "quantity": "1", "unit": "cup", "modifiers": "", "package_qty": "", "package_unit": ""}, {"name": "Soy Sauce", "quantity": "1", "unit": "tbsp", "modifiers": "", "package_qty": "", "package_unit": ""}, {"name": "Cornstarch", "quantity": "2", "unit": "tbsp", "modifiers": "", "package_qty": "", "package_unit": ""}, {"name": "Water", "quantity": "2", "unit": "tbsp", "modifiers": "cold", "package_qty": "", "package_unit": ""}, {"name": "Plum Sauce", "quantity": "1", "unit": "cup", "modifiers": "", "package_qty": "", "package_unit": ""}]}

matched_ingredients:
  [{"raw_name": "Pineapple", "ingredient_name": "Pineapple", "quantity": "1", "unit": "can"}, {"raw_name": "Sugar", "ingredient_name": "Sugar", "quantity": "1", "unit": "c"}, {"raw_name": "Water", "ingredient_name": "Water", "quantity": "1", "unit": "c"}, {"raw_name": "Vinegar", "ingredient_name": "Vinegar", "quantity": "1", "unit": "c"}, {"raw_name": "Soy Sauce", "ingredient_name": "Soy Sauce", "quantity": "1", "unit": "tbsp"}, {"raw_name": "Cornstarch", "ingredient_name": "Cornstarch", "quantity": "2", "unit": "tbsp"}, {"raw_name": "Water", "ingredient_name": "Water", "quantity": "2", "unit": "tbsp"}, {"raw_name": "Plum Sauce", "ingredient_name": "Plum Sauce", "quantity": "1", "unit": "c"}]


created_at: 2026-04-04 17:58:14.881372
status: success
provider: claude
filename: Asian/Chinese/Shrimp balls.pdf
recipe_title: Shrimp Balls
unmatched_items: []
unit_warnings: []
resolution_tiers: {"exact": 2}
raw_ai_response:
  {"title": "Shrimp Balls", "description": "Simple shrimp balls made by wrapping shrimp and rice in plastic wrap, then squeezing into firm balls. A quick and elegant appetizer or snack.", "servings": 1, "prep_time": 10, "cook_time": 0, "cuisine": "General", "tags": ["Quick", "Few Ingredients", "No Cook", "Light", "Appetizer", "Family Friendly"], "culinary_type": "Appetizer", "instructions": "Step 1: Cut 1 piece of shrimp in half sideways.\nStep 2: Place plastic wrap on your hand, then place the shrimp on top.\nStep 3: Add one scoop of rice on top of the shrimp, then fold the wrap around and squeeze until firm.\nStep 4: Unwrap, place on a plate, and garnish.", "has_ingredient_list": false, "extraction_confidence": "low", "ingredients": [{"name": "Shrimp", "quantity": "1", "unit": "piece", "modifiers": "halved", "package_qty": "", "package_unit": ""}, {"name": "Rice", "quantity": "1", "unit": "whole", "modifiers": "cooked", "package_qty": "", "package_unit": ""}]}

matched_ingredients:
  [{"raw_name": "Shrimp", "ingredient_name": "Shrimp", "quantity": "1", "unit": "pc"}, {"raw_name": "Rice", "ingredient_name": "Rice", "quantity": "1", "unit": "whole"}]


created_at: 2026-04-04 17:59:06.542635
status: success
provider: claude
filename: Asian/Chinese/Steamed Sausage Bun.pdf
recipe_title: Chinese Sausage Buns (Lop Cheung Bao)
unmatched_items: []
unit_warnings: []
resolution_tiers: {"exact": 10}
raw_ai_response:
  {"title": "Chinese Sausage Buns (Lop Cheung Bao)", "description": "Chinese Sausage Buns (Lop Cheung Bao) are fluffy steamed mantou buns wrapped around sweet cured Chinese sausage. A tasty throwback treat perfect as an appetizer or snack.", "servings": 10, "prep_time": 105, "cook_time": 15, "cuisine": "Chinese", "tags": ["Make Ahead", "Freezer Friendly", "Family Friendly", "Stovetop", "Savory", "Weekend Project"], "culinary_type": "Appetizer", "instructions": "Step 1: In a small bowl, whisk together the water, yeast and sugar until the yeast dissolves. Let the mixture sit until the yeast blooms and foams (about 15 minutes). Stir in 1 tablespoon oil and set aside.\nStep 2: Whisk together the flour, cornstarch, salt, and baking soda in a medium-sized bowl, and stir in the yeast mixture using a spatula. After the dry and wet ingredients are incorporated, knead the dough with your hands (or in your mixer) until the dough becomes smooth and soft. If the dough looks sticky, add a bit more flour 1 tablespoon at a time, and continue kneading until the dough is smooth and soft. The dough should be soft, but not sticky.\nStep 3: Coat the dough with 1 teaspoon of oil and cover with plastic wrap. Let the dough proof at room temperature until it has doubled in size (about 1 hour).\nStep 4: While the dough is proofing, prepare your steaming device/setup of choice. Place the lop cheung (Chinese sausages) on a heatproof plate and steam for 10 minutes. Let cool.\nStep 5: For this recipe, we called for a whole lop cheung in each bun, but if you feel this is too much, just split them lengthwise after they've steamed and cooled and use half a Chinese sausage for each bun.\nStep 6: After the dough is finished proofing, punch the dough down and knead it for a few minutes to get rid of all the air bubbles. Portion the dough into 10 equal balls and shape each ball into a long strip, measuring 10 inches long. Wrap each length of dough around one lop cheung so the dough overlaps. Tuck in the loose ends.\nStep 7: Place each bun on one of your prepared rectangles of parchment paper, and place the buns into your steamer. Cover with a damp kitchen towel to keep the dough from drying out, and let rest for 20 minutes.\nStep 8: Place the buns in the steamer with 1\u00bd inches of cold water, and turn the heat on high. Once you can see steam coming out, turn the heat down to medium, and let the buns steam for another 10 minutes until they have expanded in size.\nStep 9: Remove the steamer from the stove. Let the buns rest inside the steamer for 5 minutes \u2014 do not remove the cover. This is an important step, because if you remove the cover too early, the buns will collapse and lose their fluffy shape.\nStep 10: After those five minutes have elapsed, transfer the buns to a plate and serve warm.\nStep 11: These Chinese sausage buns freeze and reheat really nicely. Make sure you steam the buns and let them cool completely before freezing. Reheat by placing the frozen buns into a steamer, and steaming for about 10 minutes.", "has_ingredient_list": true, "extraction_confidence": "high", "ingredients": [{"name": "Water", "quantity": "3/4", "unit": "cup", "modifiers": "warm", "package_qty": "", "package_unit": ""}, {"name": "Instant Yeast", "quantity": "1", "unit": "tsp", "modifiers": "", "package_qty": "", "package_unit": ""}, {"name": "Granulated Sugar", "quantity": "1", "unit": "tbsp", "modifiers": "", "package_qty": "", "package_unit": ""}, {"name": "Canola Oil", "quantity": "1", "unit": "tbsp", "modifiers": "", "package_qty": "", "package_unit": ""}, {"name": "Canola Oil", "quantity": "1", "unit": "tsp", "modifiers": "for coating dough", "package_qty": "", "package_unit": ""}, {"name": "All-Purpose Flour", "quantity": "2", "unit": "cup", "modifiers": "", "package_qty": "", "package_unit": ""}, {"name": "Cornstarch", "quantity": "2", "unit": "tbsp", "modifiers": "", "package_qty": "", "package_unit": ""}, {"name": "Salt", "quantity": "1/4", "unit": "tsp", "modifiers": "", "package_qty": "", "package_unit": ""}, {"name": "Baking Soda", "quantity": "1/8", "unit": "tsp", "modifiers": "", "package_qty": "", "package_unit": ""}, {"name": "Lap Cheong", "quantity": "10", "unit": "whole", "modifiers": "", "package_qty": "", "package_unit": ""}]}

matched_ingredients:
  [{"raw_name": "Water", "ingredient_name": "Water", "quantity": "3/4", "unit": "c"}, {"raw_name": "Instant Yeast", "ingredient_name": "Instant Yeast", "quantity": "1", "unit": "tsp"}, {"raw_name": "Granulated Sugar", "ingredient_name": "Granulated Sugar", "quantity": "1", "unit": "tbsp"}, {"raw_name": "Canola Oil", "ingredient_name": "Canola Oil", "quantity": "1", "unit": "tbsp"}, {"raw_name": "Canola Oil", "ingredient_name": "Canola Oil", "quantity": "1", "unit": "tsp"}, {"raw_name": "All-Purpose Flour", "ingredient_name": "All-Purpose Flour", "quantity": "2", "unit": "c"}, {"raw_name": "Cornstarch", "ingredient_name": "Cornstarch", "quantity": "2", "unit": "tbsp"}, {"raw_name": "Salt", "ingredient_name": "Salt", "quantity": "1/4", "unit": "tsp"}, {"raw_name": "Baking Soda", "ingredient_name": "Baking Soda", "quantity": "1/8", "unit": "tsp"}, {"raw_name": "Lap Cheong", "ingredient_name": "Lap Cheong", "quantity": "10", "unit": "whole"}]


created_at: 2026-04-04 17:59:27.856046
status: success
provider: claude
filename: Asian/Chinese/Stir-Fried Shrimp and Scallop Noodles.pdf
recipe_title: Stir-Fried Shrimp and Scallop Noodles
unmatched_items: []
unit_warnings: []
resolution_tiers: {"exact": 15}
raw_ai_response:
  {"title": "Stir-Fried Shrimp and Scallop Noodles", "description": "A quick and flavorful stir-fry combining tender shrimp and seared scallops with noodles, aromatics, and a savory sauce. Ready in minutes and perfect for a satisfying weeknight meal.", "servings": 2, "prep_time": 10, "cook_time": 15, "cuisine": "Chinese", "tags": ["Quick", "Under 30 Minutes", "Stovetop", "Weeknight", "High Protein", "Savory"], "culinary_type": "Main Course", "instructions": "Step 1: Thaw Shrimp and Scallops: If frozen, thaw them by running them under cold water or leaving them in the fridge ahead of time.\nStep 2: Prepare Noodles: Cook the noodles according to package instructions. Drain and set aside.\nStep 3: Cook Shrimp and Scallops: Heat 1 tbsp of vegetable oil in a skillet or wok over medium-high heat. Add the shrimp and cook until they turn pink, about 2-3 minutes. Add scallops and sear them for 1-2 minutes per side until golden and cooked through. Remove shrimp and scallops from the skillet and set aside.\nStep 4: Saut\u00e9 Aromatics: In the same pan, add the remaining oil. Saut\u00e9 minced garlic and ginger for about 30 seconds until fragrant.\nStep 5: Stir-Fry Vegetables: If using vegetables, add them now and stir-fry until they are tender but still crisp, about 2-3 minutes.\nStep 6: Combine Noodles and Sauce: Return the cooked shrimp and scallops to the pan. Add cooked noodles, scallions, soy sauce, oyster sauce, sesame oil, salt, and pepper. Toss everything together until well combined and heated through, about 2-3 minutes.\nStep 7: Optional Garnish: Squeeze lime juice over the dish for added freshness and sprinkle with red pepper flakes if you like a bit of heat.\nStep 8: Serve: Divide into two plates or bowls and enjoy!", "has_ingredient_list": true, "extraction_confidence": "high", "ingredients": [{"name": "Shrimp", "quantity": "11", "unit": "whole", "modifiers": "medium, peeled, deveined, thawed if frozen", "package_qty": "", "package_unit": ""}, {"name": "Scallop", "quantity": "5", "unit": "whole", "modifiers": "large, thawed if frozen", "package_qty": "", "package_unit": ""}, {"name": "Rice Noodles", "quantity": "2", "unit": "piece", "modifiers": "", "package_qty": "", "package_unit": ""}, {"name": "Vegetable Oil", "quantity": "2", "unit": "tbsp", "modifiers": "", "package_qty": "", "package_unit": ""}, {"name": "Garlic", "quantity": "3", "unit": "clove", "modifiers": "minced", "package_qty": "", "package_unit": ""}, {"name": "Ginger", "quantity": "1", "unit": "tbsp", "modifiers": "minced", "package_qty": "", "package_unit": ""}, {"name": "Green Onion", "quantity": "1/2", "unit": "cup", "modifiers": "sliced", "package_qty": "", "package_unit": ""}, {"name": "Mixed Vegetables", "quantity": "1/2", "unit": "cup", "modifiers": "optional", "package_qty": "", "package_unit": ""}, {"name": "Soy Sauce", "quantity": "2", "unit": "tbsp", "modifiers": "", "package_qty": "", "package_unit": ""}, {"name": "Oyster Sauce", "quantity": "1", "unit": "tbsp", "modifiers": "optional", "package_qty": "", "package_unit": ""}, {"name": "Sesame Oil", "quantity": "1", "unit": "tsp", "modifiers": "", "package_qty": "", "package_unit": ""}, {"name": "Salt", "quantity": "1", "unit": "pinch", "modifiers": "to taste", "package_qty": "", "package_unit": ""}, {"name": "Black Pepper", "quantity": "1", "unit": "pinch", "modifiers": "to taste", "package_qty": "", "package_unit": ""}, {"name": "Red Pepper Flakes", "quantity": "1", "unit": "pinch", "modifiers": "optional", "package_qty": "", "package_unit": ""}, {"name": "Lime Juice", "quantity": "1", "unit": "tbsp", "modifiers": "optional", "package_qty": "", "package_unit": ""}]}

matched_ingredients:
  [{"raw_name": "Shrimp", "ingredient_name": "Shrimp", "quantity": "11", "unit": "whole"}, {"raw_name": "Scallop", "ingredient_name": "Scallop", "quantity": "5", "unit": "whole"}, {"raw_name": "Rice", "ingredient_name": "Rice", "quantity": "2", "unit": "pc"}, {"raw_name": "Vegetable Oil", "ingredient_name": "Vegetable Oil", "quantity": "2", "unit": "tbsp"}, {"raw_name": "Garlic", "ingredient_name": "Garlic", "quantity": "3", "unit": "clove"}, {"raw_name": "Ginger", "ingredient_name": "Ginger", "quantity": "1", "unit": "tbsp"}, {"raw_name": "Green Onion", "ingredient_name": "Green Onion", "quantity": "1/2", "unit": "c"}, {"raw_name": "Mixed Vegetables", "ingredient_name": "Mixed Vegetables", "quantity": "1/2", "unit": "c"}, {"raw_name": "Soy Sauce", "ingredient_name": "Soy Sauce", "quantity": "2", "unit": "tbsp"}, {"raw_name": "Oyster Sauce", "ingredient_name": "Oyster Sauce", "quantity": "1", "unit": "tbsp"}, {"raw_name": "Sesame Oil", "ingredient_name": "Sesame Oil", "quantity": "1", "unit": "tsp"}, {"raw_name": "Salt", "ingredient_name": "Salt", "quantity": "1", "unit": "pinch"}, {"raw_name": "Black Pepper", "ingredient_name": "Black Pepper", "quantity": "1", "unit": "pinch"}, {"raw_name": "Red Pepper Flakes", "ingredient_name": "Red Pepper Flakes", "quantity": "1", "unit": "pinch"}, {"raw_name": "Lime Juice", "ingredient_name": "Lime Juice", "quantity": "1", "unit": "tbsp"}]


created_at: 2026-04-04 18:00:01.730852
status: success
provider: claude
filename: Asian/Chinese/Sweet & Sour Pork.pdf
recipe_title: Sweet and Sour Pork
unmatched_items: []
unit_warnings: []
resolution_tiers: {"exact": 9}
raw_ai_response:
  {"title": "Sweet and Sour Pork", "description": "A classic Chinese-style sweet and sour pork dish featuring tender stir-fried pork strips with green pepper, onion, and pineapple in a tangy sauce. Served over rice for a complete meal.", "servings": 4, "prep_time": 15, "cook_time": 20, "cuisine": "Chinese", "tags": ["Stovetop", "Family Friendly", "Weeknight", "Savory", "Sweet", "Under 1 Hour"], "culinary_type": "Main Course", "instructions": "Step 1: Partially freeze pork. Cut across the grain into 2 1/2 x 2 1/4-inch strips; set aside.\nStep 2: Preheat a wok or large skillet over high heat; add oil.\nStep 3: Stir-fry green pepper and onion in hot oil for 2-3 minutes or till crisp-tender.\nStep 4: Remove from wok. Add more oil, if necessary. Add half the pork to wok; stir-fry until browned. Remove pork; stir-fry the remaining pork. Return all pork to wok; keep warm.\nStep 5: Drain pineapple, reserving juice. In a small saucepan combine the juice, brown sugar, vinegar, cornstarch and soy sauce. Bring to a boil; cook about 1 minute or till thickened, stirring constantly.\nStep 6: Return green pepper and onion to wok. Stir in pineapple and the thickened pineapple juice mixture.\nStep 7: Cook and stir until heated through. Serve with rice, if desired.", "has_ingredient_list": true, "extraction_confidence": "high", "ingredients": [{"name": "Pork Loin", "quantity": "1", "unit": "lb", "modifiers": "boneless", "package_qty": "", "package_unit": ""}, {"name": "Vegetable Oil", "quantity": "1", "unit": "tbsp", "modifiers": "", "package_qty": "", "package_unit": ""}, {"name": "Bell Pepper", "quantity": "1", "unit": "whole", "modifiers": "medium, green, cut into 1 inch pieces", "package_qty": "", "package_unit": ""}, {"name": "Onion", "quantity": "1", "unit": "whole", "modifiers": "medium, cut into thin wedges", "package_qty": "", "package_unit": ""}, {"name": "Pineapple", "quantity": "1", "unit": "can", "modifiers": "chunks in juice", "package_qty": "15.25", "package_unit": "oz"}, {"name": "Brown Sugar", "quantity": "1/4", "unit": "cup", "modifiers": "firmly packed", "package_qty": "", "package_unit": ""}, {"name": "White Wine Vinegar", "quantity": "1/4", "unit": "cup", "modifiers": "", "package_qty": "", "package_unit": ""}, {"name": "Cornstarch", "quantity": "2", "unit": "tbsp", "modifiers": "", "package_qty": "", "package_unit": ""}, {"name": "Soy Sauce", "quantity": "2", "unit": "tbsp", "modifiers": "", "package_qty": "", "package_unit": ""}]}

matched_ingredients:
  [{"raw_name": "Pork Loin", "ingredient_name": "Pork Loin", "quantity": "1", "unit": "lb"}, {"raw_name": "Vegetable Oil", "ingredient_name": "Vegetable Oil", "quantity": "1", "unit": "tbsp"}, {"raw_name": "Bell Pepper", "ingredient_name": "Bell Pepper", "quantity": "1", "unit": "whole"}, {"raw_name": "Onion", "ingredient_name": "Onion", "quantity": "1", "unit": "whole"}, {"raw_name": "Pineapple", "ingredient_name": "Pineapple", "quantity": "1", "unit": "can"}, {"raw_name": "Brown Sugar", "ingredient_name": "Brown Sugar", "quantity": "1/4", "unit": "c"}, {"raw_name": "White Wine Vinegar", "ingredient_name": "White Wine Vinegar", "quantity": "1/4", "unit": "c"}, {"raw_name": "Cornstarch", "ingredient_name": "Cornstarch", "quantity": "2", "unit": "tbsp"}, {"raw_name": "Soy Sauce", "ingredient_name": "Soy Sauce", "quantity": "2", "unit": "tbsp"}]


created_at: 2026-04-04 18:00:19.881665
status: success
provider: claude
filename: Asian/Chinese/Sweet Sausage Buns (HK Style).pdf
recipe_title: Sweet Sausage Buns (Hong Kong Style)
unmatched_items: []
unit_warnings: []
resolution_tiers: {"exact": 10}
raw_ai_response:
  {"title": "Sweet Sausage Buns (Hong Kong Style)", "description": "Hong Kong-style sweet sausage buns made with a soft, pillowy tangzhong-based bread dough. The tangzhong method creates an exceptionally tender and fluffy texture.", "servings": 8, "prep_time": 120, "cook_time": 30, "cuisine": "Cantonese", "tags": ["Baked", "Weekend Project", "Kid Friendly", "Comfort Food", "Family Friendly"], "culinary_type": "Bread & Pastry", "instructions": "Step 1: Combine the bread flour, water, and milk for the tangzhong in a small saucepan. Whisk until no lumps remain.\nStep 2: Place the saucepan over medium heat, stirring constantly to avoid lumps. Cook until the mixture thickens and forms lines or streaks as you stir (about 65\u00b0C/149\u00b0F).\nStep 3: Remove from heat and let the tangzhong cool to room temperature before using it in your dough.\nStep 4: In a large mixing bowl, combine bread flour, sugar, salt, and instant yeast.\nStep 5: Add milk, egg, and the cooled tangzhong mixture. Mix until the dough comes together, then knead until smooth (about 5-7 minutes by hand or 3-5 minutes with a stand mixer).\nStep 6: Add the softened butter and continue kneading until fully incorporated and the dough is smooth, elastic, and slightly tacky (an additional 5-7 minutes).\nStep 7: Place the dough in a lightly greased bowl, cover, and let it rise in a warm place until doubled in size (about 1 hour).\nStep 8: Punch down the dough, shape it into your desired form (rolls, loaf, etc.), place in your baking pan, and let it rise again until doubled (30-45 minutes).\nStep 9: Preheat the oven to 180\u00b0C (350\u00b0F). Brush the top of the dough with milk or egg wash for a shiny finish, then bake for 25-30 minutes or until golden brown.\nStep 10: Let the bread cool slightly before serving.", "has_ingredient_list": true, "extraction_confidence": "high", "ingredients": [{"name": "Bread Flour", "quantity": "20", "unit": "g", "modifiers": "", "package_qty": "", "package_unit": ""}, {"name": "Water", "quantity": "60", "unit": "ml", "modifiers": "", "package_qty": "", "package_unit": ""}, {"name": "Milk", "quantity": "60", "unit": "ml", "modifiers": "", "package_qty": "", "package_unit": ""}, {"name": "Bread Flour", "quantity": "350", "unit": "g", "modifiers": "", "package_qty": "", "package_unit": ""}, {"name": "Sugar", "quantity": "55", "unit": "g", "modifiers": "", "package_qty": "", "package_unit": ""}, {"name": "Salt", "quantity": "5", "unit": "g", "modifiers": "", "package_qty": "", "package_unit": ""}, {"name": "Instant Yeast", "quantity": "7", "unit": "g", "modifiers": "", "package_qty": "", "package_unit": ""}, {"name": "Milk", "quantity": "120", "unit": "ml", "modifiers": "", "package_qty": "", "package_unit": ""}, {"name": "Egg", "quantity": "1", "unit": "whole", "modifiers": "", "package_qty": "", "package_unit": ""}, {"name": "Unsalted Butter", "quantity": "30", "unit": "g", "modifiers": "softened", "package_qty": "", "package_unit": ""}]}

matched_ingredients:
  [{"raw_name": "Bread Flour", "ingredient_name": "Bread Flour", "quantity": "20", "unit": "g"}, {"raw_name": "Water", "ingredient_name": "Water", "quantity": "60", "unit": "ml"}, {"raw_name": "Milk", "ingredient_name": "Milk", "quantity": "60", "unit": "ml"}, {"raw_name": "Bread Flour", "ingredient_name": "Bread Flour", "quantity": "350", "unit": "g"}, {"raw_name": "Sugar", "ingredient_name": "Sugar", "quantity": "55", "unit": "g"}, {"raw_name": "Salt", "ingredient_name": "Salt", "quantity": "5", "unit": "g"}, {"raw_name": "Instant Yeast", "ingredient_name": "Instant Yeast", "quantity": "7", "unit": "g"}, {"raw_name": "Milk", "ingredient_name": "Milk", "quantity": "120", "unit": "ml"}, {"raw_name": "Egg", "ingredient_name": "Egg", "quantity": "1", "unit": "whole"}, {"raw_name": "Butter", "ingredient_name": "Butter", "quantity": "30", "unit": "g"}]


created_at: 2026-04-04 18:00:54.235974
status: success
provider: claude
filename: Asian/Japanese/Blackout Shrimp Tempura.pdf
recipe_title: Blackout Shrimp Tempura
unmatched_items: []
unit_warnings: []
resolution_tiers: {"exact": 3}
raw_ai_response:
  {"title": "Blackout Shrimp Tempura", "description": "Lightly battered shrimp, briefly fried, and served with a soy-scallion dipping sauce. Made on the stovetop during a 4-day power blackout.", "servings": 2, "prep_time": 0, "cook_time": 35, "cuisine": "Japanese", "tags": ["Quick", "Fried", "Stovetop", "Light", "Under 30 Minutes", "Few Ingredients"], "culinary_type": "Appetizer", "instructions": "Step 1: Prepare shrimp by making two 1/4-inch slits on the underside of each shrimp to help straighten them.\nStep 2: Prepare tempura batter according to recipe.\nStep 3: Heat oil in a pot or deep pan on the stovetop to frying temperature.\nStep 4: Dip shrimp in batter and fry in batches for approximately 1 minute until cooked through and lightly golden.\nStep 5: Drain and serve with soy-scallion dipping sauce.", "has_ingredient_list": false, "extraction_confidence": "low", "ingredients": [{"name": "Shrimp", "quantity": "1", "unit": "lb", "modifiers": "thawed", "package_qty": "", "package_unit": ""}, {"name": "Soy Sauce", "quantity": "1", "unit": "tbsp", "modifiers": "", "package_qty": "", "package_unit": ""}, {"name": "Green Onion", "quantity": "1", "unit": "bunch", "modifiers": "", "package_qty": "", "package_unit": ""}]}

matched_ingredients:
  [{"raw_name": "Shrimp", "ingredient_name": "Shrimp", "quantity": "1", "unit": "lb"}, {"raw_name": "Soy Sauce", "ingredient_name": "Soy Sauce", "quantity": "1", "unit": "tbsp"}, {"raw_name": "Green Onion", "ingredient_name": "Green Onion", "quantity": "1", "unit": "bunch"}]


created_at: 2026-04-04 18:01:33.640793
status: success
provider: claude
filename: Asian/Japanese/How to Roll Sushi.pdf
recipe_title: How to Roll Sushi
unmatched_items: []
unit_warnings: []
resolution_tiers: {"exact": 6}
raw_ai_response:
  {"title": "How to Roll Sushi", "description": "A step-by-step guide to making homemade sushi rolls filled with rice, smoked salmon, and cucumber \u2014 a party-perfect finger food.", "servings": 4, "prep_time": 30, "cook_time": 0, "cuisine": "Japanese", "tags": ["Make Ahead", "Few Ingredients", "Light", "Dinner Party", "No Cook", "Family Friendly"], "culinary_type": "Appetizer", "instructions": "Step 1: Spread cooked rice in a shallow pan. Drizzle vinegar mixture over rice. Using a spatula, pull rice toward you, folding it over on itself while being careful not to cut rice grains. Repeat folding process until rice absorbs vinegar mixture.\nStep 2: Place a seaweed sheet on a bamboo mat lined with plastic wrap, or on other flexible material such as pastry cloth lined with plastic wrap. With moistened hands, spread about 1/2 cup prepared rice evenly over one side of each seaweed sheet, stopping 1 inch short of the longer edge.\nStep 3: Place cucumber and salmon strips on top of rice. Use finger to dot rice with a small amount of wasabi alongside salmon and cucumber strips. With finger, spread wasabi on rice to make a thin line.\nStep 4: Starting with the rice-covered edge, roll up each sheet jelly-roll style. Take care to roll sushi evenly. Moisten seaweed edge with water and press lightly to seal.\nStep 5: To cut sushi roll, dip a sharp, thin-bladed knife into hot water. Using a sawing (back-and-forth) motion and very light pressure, slice each sushi roll crosswise into eight or more pieces. For easier cutting, frequently dip knife blade into hot water.", "has_ingredient_list": false, "extraction_confidence": "low", "ingredients": [{"name": "Rice", "quantity": "1", "unit": "cup", "modifiers": "cooked, prepared", "package_qty": "", "package_unit": ""}, {"name": "Rice Vinegar", "quantity": "1", "unit": "tbsp", "modifiers": "", "package_qty": "", "package_unit": ""}, {"name": "Nori", "quantity": "1", "unit": "whole", "modifiers": "seaweed sheet", "package_qty": "", "package_unit": ""}, {"name": "Cucumber", "quantity": "1", "unit": "whole", "modifiers": "cut into strips", "package_qty": "", "package_unit": ""}, {"name": "Salmon", "quantity": "4", "unit": "oz", "modifiers": "smoked, cut into strips", "package_qty": "", "package_unit": ""}, {"name": "Wasabi", "quantity": "1", "unit": "tsp", "modifiers": "", "package_qty": "", "package_unit": ""}]}

matched_ingredients:
  [{"raw_name": "Rice", "ingredient_name": "Rice", "quantity": "1", "unit": "c"}, {"raw_name": "Rice Vinegar", "ingredient_name": "Rice Vinegar", "quantity": "1", "unit": "tbsp"}, {"raw_name": "Nori", "ingredient_name": "Nori", "quantity": "1", "unit": "whole"}, {"raw_name": "Cucumber", "ingredient_name": "Cucumber", "quantity": "1", "unit": "whole"}, {"raw_name": "Salmon", "ingredient_name": "Salmon", "quantity": "4", "unit": "oz"}, {"raw_name": "Wasabi", "ingredient_name": "Wasabi", "quantity": "1", "unit": "tsp"}]


created_at: 2026-04-04 18:02:02.362728
status: success
provider: claude
filename: Asian/Japanese/Inside out sushi roll.pdf
recipe_title: California Roll
unmatched_items: []
unit_warnings: []
resolution_tiers: {"exact": 7}
raw_ai_response:
  {"title": "California Roll", "description": "An inside-out sushi roll made with avocado, imitation crab, and sesame seeds. A popular sushi roll that is easy to bite due to its inside-out construction with rice on the outside.", "servings": 4, "prep_time": 30, "cook_time": 0, "cuisine": "Japanese", "tags": ["Family Friendly", "Few Ingredients", "No Cook", "Savory", "Kid Friendly"], "culinary_type": "Appetizer", "instructions": "Step 1: Peel an avocado and cut it into strips or mash it.\nStep 2: Put imitation crab in a bowl and mix with salt and mayonnaise.\nStep 3: Cover a bamboo mat with plastic wrap.\nStep 4: Put a sheet of dried seaweed on top of the mat.\nStep 5: Spread sushi rice on top of the seaweed and press firmly.\nStep 6: Sprinkle sesame seeds over the sushi rice.\nStep 7: Turn the sushi layer over so that the seaweed is on top.\nStep 8: Place avocado and crab lengthwise on the seaweed.\nStep 9: Roll the bamboo mat forward, pressing the ingredients inside the cylinder-shaped sushi.\nStep 10: Press firmly the bamboo mat with hands, then remove the rolled sushi.\nStep 11: Cut the sushi roll into bite-sized pieces. *Wipe the knife with a wet cloth before slicing sushi.", "has_ingredient_list": true, "extraction_confidence": "high", "ingredients": [{"name": "Nori", "quantity": "4", "unit": "whole", "modifiers": "dried", "package_qty": "", "package_unit": ""}, {"name": "White Rice", "quantity": "4", "unit": "cup", "modifiers": "sushi rice", "package_qty": "", "package_unit": ""}, {"name": "Avocado", "quantity": "1", "unit": "whole", "modifiers": "", "package_qty": "", "package_unit": ""}, {"name": "Surimi", "quantity": "1/2", "unit": "lb", "modifiers": "imitation crab", "package_qty": "", "package_unit": ""}, {"name": "Mayonnaise", "quantity": "1", "unit": "tbsp", "modifiers": "", "package_qty": "", "package_unit": ""}, {"name": "Salt", "quantity": "1/2", "unit": "tsp", "modifiers": "", "package_qty": "", "package_unit": ""}, {"name": "Sesame Seeds", "quantity": "2", "unit": "tsp", "modifiers": "", "package_qty": "", "package_unit": ""}]}

matched_ingredients:
  [{"raw_name": "Nori", "ingredient_name": "Nori", "quantity": "4", "unit": "whole"}, {"raw_name": "White Rice", "ingredient_name": "White Rice", "quantity": "4", "unit": "c"}, {"raw_name": "Avocado", "ingredient_name": "Avocado", "quantity": "1", "unit": "whole"}, {"raw_name": "Surimi", "ingredient_name": "Surimi", "quantity": "1/2", "unit": "lb"}, {"raw_name": "Mayonnaise", "ingredient_name": "Mayonnaise", "quantity": "1", "unit": "tbsp"}, {"raw_name": "Salt", "ingredient_name": "Salt", "quantity": "1/2", "unit": "tsp"}, {"raw_name": "Sesame Seeds", "ingredient_name": "Sesame Seeds", "quantity": "2", "unit": "tsp"}]


created_at: 2026-04-04 18:02:50.950004
status: success
provider: claude
filename: Asian/Japanese/Japanese Style Bacon + Cheese Bread (Tangzhong Method).pdf
recipe_title: Japanese Style Bacon and Cheese Bread (Tangzhong Method)
unmatched_items: []
unit_warnings: []
resolution_tiers: {"exact": 14}
raw_ai_response:
  {"title": "Japanese Style Bacon and Cheese Bread (Tangzhong Method)", "description": "A soft and fluffy Japanese-style bread made using the tangzhong method, filled with savory bacon and cheese. The tangzhong starter creates an exceptionally tender crumb.", "servings": 1, "prep_time": 10, "cook_time": 170, "cuisine": "Japanese", "tags": ["Baked", "Weekend Project", "Comfort Food", "Savory", "Make Ahead", "Family Friendly"], "culinary_type": "Bread & Pastry", "instructions": "Step 1: Make the tangzhong: Mix flour in water well without any lumps. Cook over medium-low heat, stirring consistently with a wooden spoon, whisk or spatula to prevent burning and sticking.\nStep 2: The mixture becomes thicker and thicker. Once you notice some lines appear in the mixture for every stir you make with the spoon, it is done. Remove from heat.\nStep 3: Transfer into a clean bowl. Cover with a cling wrap sticking onto the surface of tangzhong to prevent from drying up. Let cool. The tangzhong can be used straight away once it cools down to room temperature. Measure out 120g for this recipe. Store leftover tangzhong in fridge up to a few days as long as it doesn't turn grey. Chilled tangzhong should return to room temperature before use.\nStep 4: Make the bread: Combine all dry ingredients \u2014 flour, salt, sugar, and instant yeast in a bowl. Make a well in the center. Whisk and combine all wet ingredients \u2014 milk, egg, and tangzhong \u2014 then add into the well of the dry ingredients. Knead until you get a dough shape and gluten has developed, then knead in the butter. Keep kneading until the dough is smooth, not sticky, and elastic. To test if the dough is ready, stretch the dough \u2014 if it forms a thin membrane, it is done.\nStep 5: Knead the dough into a ball shape. Place in a greased bowl and cover with a wet towel or cling wrap. Let it proof until doubled in size, about 40 minutes. The best temperature for proofing is 28C.\nStep 6: Transfer to a clean floured surface. Deflate and divide the dough into four equal portions. Knead into ball shapes. Cover with cling wrap and let rest for 15 minutes.\nStep 7: Roll out each portion of the dough with a rolling pin into an oval shape. Sprinkle bacon and cheese evenly as much as you like. Roll from the upper, shorter end down to the bottom. Flatten the dough with your rolling pin, then roll once again. Place seals face down.\nStep 8: Arrange the rolled-up dough in a greased or non-stick loaf tin. Leave it for the 2nd round of proofing, about 40 minutes, or until the dough rises up to 3/4 of the height of the tin inside.\nStep 9: Brush whisked egg on surface. Bake in a pre-heated 180C (356F) oven for 35 to 40 minutes. Remove from the oven and tin. Transfer onto a wire rack and let cool completely. Slice to serve or place in an airtight plastic bag or container once thoroughly cooled.", "has_ingredient_list": true, "extraction_confidence": "high", "ingredients": [{"name": "Bread Flour", "quantity": "50", "unit": "g", "modifiers": "", "package_qty": "", "package_unit": ""}, {"name": "Water", "quantity": "250", "unit": "ml", "modifiers": "", "package_qty": "", "package_unit": ""}, {"name": "Bread Flour", "quantity": "350", "unit": "g", "modifiers": "", "package_qty": "", "package_unit": ""}, {"name": "Caster Sugar", "quantity": "55", "unit": "g", "modifiers": "", "package_qty": "", "package_unit": ""}, {"name": "Salt", "quantity": "5", "unit": "g", "modifiers": "", "package_qty": "", "package_unit": ""}, {"name": "Egg", "quantity": "1", "unit": "whole", "modifiers": "large", "package_qty": "", "package_unit": ""}, {"name": "Milk Powder", "quantity": "7", "unit": "g", "modifiers": "optional", "package_qty": "", "package_unit": ""}, {"name": "Milk", "quantity": "125", "unit": "ml", "modifiers": "", "package_qty": "", "package_unit": ""}, {"name": "Bread Flour", "quantity": "120", "unit": "g", "modifiers": "tangzhong, room temperature", "package_qty": "", "package_unit": ""}, {"name": "Instant Yeast", "quantity": "5", "unit": "g", "modifiers": "", "package_qty": "", "package_unit": ""}, {"name": "Butter", "quantity": "30", "unit": "g", "modifiers": "softened, room temperature, cut into small pieces", "package_qty": "", "package_unit": ""}, {"name": "Bacon", "quantity": "1", "unit": "piece", "modifiers": "to taste", "package_qty": "", "package_unit": ""}, {"name": "Cheese", "quantity": "1", "unit": "piece", "modifiers": "to taste", "package_qty": "", "package_unit": ""}, {"name": "Egg", "quantity": "1", "unit": "whole", "modifiers": "whisked, for brushing", "package_qty": "", "package_unit": ""}]}

matched_ingredients:
  [{"raw_name": "Bread Flour", "ingredient_name": "Bread Flour", "quantity": "50", "unit": "g"}, {"raw_name": "Water", "ingredient_name": "Water", "quantity": "250", "unit": "ml"}, {"raw_name": "Bread Flour", "ingredient_name": "Bread Flour", "quantity": "350", "unit": "g"}, {"raw_name": "Caster Sugar", "ingredient_name": "Caster Sugar", "quantity": "55", "unit": "g"}, {"raw_name": "Salt", "ingredient_name": "Salt", "quantity": "5", "unit": "g"}, {"raw_name": "Egg", "ingredient_name": "Egg", "quantity": "1", "unit": "whole"}, {"raw_name": "Milk Powder", "ingredient_name": "Milk Powder", "quantity": "7", "unit": "g"}, {"raw_name": "Milk", "ingredient_name": "Milk", "quantity": "125", "unit": "ml"}, {"raw_name": "Bread Flour", "ingredient_name": "Bread Flour", "quantity": "120", "unit": "g"}, {"raw_name": "Instant Yeast", "ingredient_name": "Instant Yeast", "quantity": "5", "unit": "g"}, {"raw_name": "Butter", "ingredient_name": "Butter", "quantity": "30", "unit": "g"}, {"raw_name": "Bacon", "ingredient_name": "Bacon", "quantity": "1", "unit": "pc"}, {"raw_name": "Cheese", "ingredient_name": "Cheese", "quantity": "1", "unit": "pc"}, {"raw_name": "Egg", "ingredient_name": "Egg", "quantity": "1", "unit": "whole"}]


created_at: 2026-04-04 18:03:07.346243
status: success
provider: claude
filename: Asian/Japanese/Japanese Style Pizza (Okonomiyaki).pdf
recipe_title: Okonomiyaki Recipe - Japanese Recipe
unmatched_items: []
unit_warnings: []
resolution_tiers: {"exact": 12}
raw_ai_response:
  {"title": "Okonomiyaki Recipe - Japanese Recipe", "description": "Okonomiyaki is a Japanese-style savory pancake made with flour, egg, cabbage, and dashi, topped with a variety of meats, seafood, and classic Japanese condiments.", "servings": 2, "prep_time": 0, "cook_time": 0, "cuisine": "Japanese", "tags": ["Stovetop", "Family Friendly", "Savory", "Few Ingredients", "Weeknight", "Comfort Food"], "culinary_type": "Main Course", "instructions": "Step 1: Cut the cabbage into very thin slices.\nStep 2: Beat an egg in a bowl and add dashi soup stock or water to it.\nStep 3: Add flour to the bowl and mix well.\nStep 4: Combine the sliced cabbage in the flour mixture.\nStep 5: Fry meat, squid, or shrimp (your choice of toppings) in an electric cooking pan or a frying pan.\nStep 6: Pour the flour mixture over the toppings in the pan to make a couple of pancakes.\nStep 7: Cook for a few minutes, then flip the pancakes and cook for a few more minutes.\nStep 8: Put okonomiyaki sauce and mayonnaise on top of the pan cakes.\nStep 9: Sprinkle katsuobushi flakes, aonori, and beni-shoga on top.", "has_ingredient_list": true, "extraction_confidence": "high", "ingredients": [{"name": "All-Purpose Flour", "quantity": "1", "unit": "cup", "modifiers": "", "package_qty": "", "package_unit": ""}, {"name": "Dashi", "quantity": "3/4", "unit": "cup", "modifiers": "", "package_qty": "", "package_unit": ""}, {"name": "Egg", "quantity": "1", "unit": "whole", "modifiers": "", "package_qty": "", "package_unit": ""}, {"name": "Cabbage", "quantity": "1/4", "unit": "whole", "modifiers": "small, thinly sliced", "package_qty": "", "package_unit": ""}, {"name": "Pork", "quantity": "1", "unit": "piece", "modifiers": "thinly sliced", "package_qty": "", "package_unit": ""}, {"name": "Squid", "quantity": "1", "unit": "piece", "modifiers": "", "package_qty": "", "package_unit": ""}, {"name": "Bonito Flakes", "quantity": "1", "unit": "piece", "modifiers": "dried", "package_qty": "", "package_unit": ""}, {"name": "Dried Shrimp", "quantity": "1", "unit": "piece", "modifiers": "", "package_qty": "", "package_unit": ""}, {"name": "Pickled Ginger", "quantity": "1", "unit": "piece", "modifiers": "red", "package_qty": "", "package_unit": ""}, {"name": "Nori", "quantity": "1", "unit": "piece", "modifiers": "green, dried", "package_qty": "", "package_unit": ""}, {"name": "Tonkatsu Sauce", "quantity": "1", "unit": "tbsp", "modifiers": "", "package_qty": "", "package_unit": ""}, {"name": "Mayonnaise", "quantity": "1", "unit": "tbsp", "modifiers": "", "package_qty": "", "package_unit": ""}]}

matched_ingredients:
  [{"raw_name": "All-Purpose Flour", "ingredient_name": "All-Purpose Flour", "quantity": "1", "unit": "c"}, {"raw_name": "Dashi", "ingredient_name": "Dashi", "quantity": "3/4", "unit": "c"}, {"raw_name": "Egg", "ingredient_name": "Egg", "quantity": "1", "unit": "whole"}, {"raw_name": "Cabbage", "ingredient_name": "Cabbage", "quantity": "1/4", "unit": "whole"}, {"raw_name": "Pork", "ingredient_name": "Pork", "quantity": "1", "unit": "pc"}, {"raw_name": "Squid", "ingredient_name": "Squid", "quantity": "1", "unit": "pc"}, {"raw_name": "Bonito Flakes", "ingredient_name": "Bonito Flakes", "quantity": "1", "unit": "pc"}, {"raw_name": "Dried Shrimp", "ingredient_name": "Dried Shrimp", "quantity": "1", "unit": "pc"}, {"raw_name": "Pickled Ginger", "ingredient_name": "Pickled Ginger", "quantity": "1", "unit": "pc"}, {"raw_name": "Nori", "ingredient_name": "Nori", "quantity": "1", "unit": "pc"}, {"raw_name": "Tonkatsu Sauce", "ingredient_name": "Tonkatsu Sauce", "quantity": "1", "unit": "tbsp"}, {"raw_name": "Mayonnaise", "ingredient_name": "Mayonnaise", "quantity": "1", "unit": "tbsp"}]


created_at: 2026-04-04 18:03:38.624285
status: success
provider: claude
filename: Asian/Japanese/MISO SOUP WITH TOFU CUBES.pdf
recipe_title: Miso Soup with Tofu Cubes
unmatched_items: []
unit_warnings: []
resolution_tiers: {"exact": 8}
raw_ai_response:
  {"title": "Miso Soup with Tofu Cubes", "description": "A simple and nourishing Japanese-style miso soup made with saut\u00e9ed vegetables, wakame seaweed, and tofu cubes, finished with miso paste dissolved in the broth.", "servings": 4, "prep_time": 15, "cook_time": 25, "cuisine": "Japanese", "tags": ["Comfort Food", "Stovetop", "Light", "Dairy Free", "Low Calorie", "Weeknight"], "culinary_type": "Soup", "instructions": "Step 1: Brush a little oil onto the base of a large pan and saut\u00e9 the onion for a couple of minutes.\nStep 2: Add the carrot and celery and saut\u00e9 them for a few more minutes.\nStep 3: Add the water and wakame, bring the soup to the boil and cook until the vegetables are done \u2014 about 20 minutes or so.\nStep 4: At the end of cooking, add the tofu cubes, bring the soup back to the boil briefly, then remove the pan from the heat and mix the miso with a small amount of soup stock to dissolve it.\nStep 5: Add this to the soup or put the miso into individual bowls and ladle the soup into the bowls; this way amounts of miso can be adjusted to each person's taste or needs.", "has_ingredient_list": true, "extraction_confidence": "high", "ingredients": [{"name": "Vegetable Oil", "quantity": "1", "unit": "dash", "modifiers": "", "package_qty": "", "package_unit": ""}, {"name": "Onion", "quantity": "1", "unit": "whole", "modifiers": "chopped", "package_qty": "", "package_unit": ""}, {"name": "Carrot", "quantity": "1", "unit": "whole", "modifiers": "sliced", "package_qty": "", "package_unit": ""}, {"name": "Celery", "quantity": "1", "unit": "stalk", "modifiers": "sliced", "package_qty": "", "package_unit": ""}, {"name": "Water", "quantity": "5", "unit": "cup", "modifiers": "", "package_qty": "", "package_unit": ""}, {"name": "Wakame", "quantity": "1", "unit": "piece", "modifiers": "rinsed, soaked for about 10 minutes, finely chopped", "package_qty": "", "package_unit": ""}, {"name": "Tofu", "quantity": "1", "unit": "cup", "modifiers": "pressed until firm, cut into cubes", "package_qty": "", "package_unit": ""}, {"name": "Miso", "quantity": "1", "unit": "tbsp", "modifiers": "to taste", "package_qty": "", "package_unit": ""}]}

matched_ingredients:
  [{"raw_name": "Vegetable Oil", "ingredient_name": "Vegetable Oil", "quantity": "1", "unit": "dash"}, {"raw_name": "Onion", "ingredient_name": "Onion", "quantity": "1", "unit": "whole"}, {"raw_name": "Carrot", "ingredient_name": "Carrot", "quantity": "1", "unit": "whole"}, {"raw_name": "Celery", "ingredient_name": "Celery", "quantity": "1", "unit": "stalk"}, {"raw_name": "Water", "ingredient_name": "Water", "quantity": "5", "unit": "c"}, {"raw_name": "Wakame", "ingredient_name": "Wakame", "quantity": "1", "unit": "pc"}, {"raw_name": "Tofu", "ingredient_name": "Tofu", "quantity": "1", "unit": "c"}, {"raw_name": "Miso", "ingredient_name": "Miso", "quantity": "1", "unit": "tbsp"}]


created_at: 2026-04-04 18:04:49.454161
status: success
provider: claude
filename: Asian/Thai/Peanut pork chops.pdf
recipe_title: Thai Peanut Pork Chops
unmatched_items: []
unit_warnings: []
resolution_tiers: {"exact": 11}
raw_ai_response:
  {"title": "Thai Peanut Pork Chops", "description": "Market Day boneless pork chops stir-fried with a creamy peanut sauce flavored with soy, garlic, ginger, and honey, finished with fresh green onion and cucumber.", "servings": 5, "prep_time": 30, "cook_time": 5, "cuisine": "Thai", "tags": ["Stovetop", "Quick", "High Protein", "Weeknight"], "culinary_type": "Main Course", "instructions": "Step 1: In a shallow glass baking dish combine soy sauce, sugar, garlic and ginger. Add pork; cover. Refrigerate 30 minutes.\nStep 2: Spray a large non-stick skillet with vegetable cooking spray.\nStep 3: Heat over medium heat until hot. Add pork; stir-fry 2-3 minutes or until cooked through.\nStep 4: Combine milk, peanut butter and honey. Add to pork mixture; heat until thickened.\nStep 5: Stir in green onion and cucumber.\nStep 6: Serve immediately.", "has_ingredient_list": true, "extraction_confidence": "high", "ingredients": [{"name": "Pork Chop", "quantity": "4", "unit": "whole", "modifiers": "boneless, thawed, cut into strips", "package_qty": "", "package_unit": ""}, {"name": "Soy Sauce", "quantity": "2", "unit": "tbsp", "modifiers": "", "package_qty": "", "package_unit": ""}, {"name": "Sugar", "quantity": "1", "unit": "tsp", "modifiers": "", "package_qty": "", "package_unit": ""}, {"name": "Garlic", "quantity": "1", "unit": "clove", "modifiers": "minced", "package_qty": "", "package_unit": ""}, {"name": "Ginger", "quantity": "1/4", "unit": "tsp", "modifiers": "ground", "package_qty": "", "package_unit": ""}, {"name": "Peanut Butter", "quantity": "2", "unit": "tbsp", "modifiers": "", "package_qty": "", "package_unit": ""}, {"name": "Evaporated milk", "quantity": "1/2", "unit": "cup", "modifiers": "skimmed", "package_qty": "", "package_unit": ""}, {"name": "Honey", "quantity": "1", "unit": "tbsp", "modifiers": "", "package_qty": "", "package_unit": ""}, {"name": "Red Pepper Flakes", "quantity": "1/4", "unit": "tsp", "modifiers": "crushed, optional", "package_qty": "", "package_unit": ""}, {"name": "Green Onion", "quantity": "1/4", "unit": "cup", "modifiers": "sliced", "package_qty": "", "package_unit": ""}, {"name": "Cucumber", "quantity": "1", "unit": "cup", "modifiers": "chopped, seeded", "package_qty": "", "package_unit": ""}]}

matched_ingredients:
  [{"raw_name": "Pork Chop", "ingredient_name": "Pork Chop", "quantity": "4", "unit": "whole"}, {"raw_name": "Soy Sauce", "ingredient_name": "Soy Sauce", "quantity": "2", "unit": "tbsp"}, {"raw_name": "Sugar", "ingredient_name": "Sugar", "quantity": "1", "unit": "tsp"}, {"raw_name": "Garlic", "ingredient_name": "Garlic", "quantity": "1", "unit": "clove"}, {"raw_name": "Ginger", "ingredient_name": "Ginger", "quantity": "1/4", "unit": "tsp"}, {"raw_name": "Peanut Butter", "ingredient_name": "Peanut Butter", "quantity": "2", "unit": "tbsp"}, {"raw_name": "Evaporated milk", "ingredient_name": "Evaporated milk", "quantity": "1/2", "unit": "c"}, {"raw_name": "Honey", "ingredient_name": "Honey", "quantity": "1", "unit": "tbsp"}, {"raw_name": "Red Pepper Flakes", "ingredient_name": "Red Pepper Flakes", "quantity": "1/4", "unit": "tsp"}, {"raw_name": "Green Onion", "ingredient_name": "Green Onion", "quantity": "1/4", "unit": "c"}, {"raw_name": "Cucumber", "ingredient_name": "Cucumber", "quantity": "1", "unit": "c"}]


created_at: 2026-04-04 18:07:54.160151
status: success
provider: claude
filename: Asian/Japanese/Miso soup with tofu.pdf
recipe_title: Miso Soup with Tofu Recipe
unmatched_items: []
unit_warnings: []
resolution_tiers: {"exact": 4}
raw_ai_response:
  {"title": "Miso Soup with Tofu Recipe", "description": "A traditional Japanese miso soup featuring silky tofu cubes in a delicate dashi broth, finished with fresh green onions. A light, authentic starter or light meal.", "servings": 4, "prep_time": 10, "cook_time": 10, "cuisine": "Japanese", "tags": ["Quick", "Under 30 Minutes", "Stovetop", "Comfort Food", "Few Ingredients"], "culinary_type": "Soup", "instructions": "Step 1: Put dashi soup stock in a pan and bring to a boil.\nStep 2: Cut tofu into small cubes and add them to the soup.\nStep 3: Scoop out some soup stock from the pan and dissolve miso paste in it.\nStep 4: Return the soup to the pan.\nStep 5: Stop the heat and add chopped green onion.\nStep 6: Remember not to boil the soup after you put miso in.", "has_ingredient_list": true, "extraction_confidence": "high", "ingredients": [{"name": "Dashi", "quantity": "4", "unit": "cup", "modifiers": "", "package_qty": "", "package_unit": ""}, {"name": "Tofu", "quantity": "1/2", "unit": "whole", "modifiers": "cubed", "package_qty": "", "package_unit": ""}, {"name": "Miso", "quantity": "3", "unit": "tbsp", "modifiers": "", "package_qty": "", "package_unit": ""}, {"name": "Green Onion", "quantity": "1/4", "unit": "cup", "modifiers": "chopped", "package_qty": "", "package_unit": ""}]}

matched_ingredients:
  [{"raw_name": "Dashi", "ingredient_name": "Dashi", "quantity": "4", "unit": "c"}, {"raw_name": "Tofu", "ingredient_name": "Tofu", "quantity": "1/2", "unit": "whole"}, {"raw_name": "Miso", "ingredient_name": "Miso", "quantity": "3", "unit": "tbsp"}, {"raw_name": "Green Onion", "ingredient_name": "Green Onion", "quantity": "1/4", "unit": "c"}]


created_at: 2026-04-04 18:08:08.564905
status: flagged
provider: claude
filename: Asian/Japanese/Pork Belly Ramen.pdf
recipe_title: Pork Belly Ramen Bowl with Soft Boiled Eggs
unmatched_items: [{"raw_name": "Ramen Noodles"}]
unit_warnings: []
resolution_tiers: {"exact": 16, "failed": 2, "product_off_fallback": 1}
raw_ai_response:
  {"title": "Pork Belly Ramen Bowl with Soft Boiled Eggs", "description": "An easy pork belly ramen bowl recipe with a delicious full-bodied broth, tender ramen noodles, and savory pork belly. The soy sauce and sesame give this Asian noodle bowl a rich, umami flavor with all your favorite ramen toppings.", "servings": 2, "prep_time": 5, "cook_time": 10, "cuisine": "Japanese", "tags": ["Quick", "Under 30 Minutes", "Stovetop", "Comfort Food", "High Protein", "Weeknight"], "culinary_type": "Main Course", "instructions": "Step 1: Melt the butter with sesame oil over medium heat in a large skillet until it just begins to bubble then add the pieces of cooked pork belly. Warm until lightly browned, about 2-3 minutes. Use tongs to transfer your pork belly to a plate. Set aside.\nStep 2: Saute ginger and garlic in the pork belly pan juices over medium heat for a minute. Then add the remaining liquid ingredients: chicken broth, soy sauce, hoisin sauce, and rice vinegar. Whisk the broth ingredients to combine, bring to a low boil, and reduce the heat to low to keep warm.\nStep 3: While you heat the broth bring a small saucepan of water to a rolling boil to cook the ramen noodles. Boil for 3 minutes then remove from heat once the noodles have reached your desired level of tenderness. Drain and rinse under cool running water.\nStep 4: Assemble your ramen bowls by portioning out the cooked noodles into bowls, and pouring the broth over them. Add any desired optional ingredients, or use the additional ingredients as toppings for garnish.", "has_ingredient_list": true, "extraction_confidence": "high", "ingredients": [{"name": "Butter", "quantity": "0.5", "unit": "tbsp", "modifiers": "", "package_qty": "", "package_unit": ""}, {"name": "Sesame Oil", "quantity": "0.5", "unit": "tsp", "modifiers": "", "package_qty": "", "package_unit": ""}, {"name": "Pork Belly", "quantity": "0.75", "unit": "lb", "modifiers": "cooked until crisped", "package_qty": "", "package_unit": ""}, {"name": "Ginger", "quantity": "0.5", "unit": "tbsp", "modifiers": "freshly grated, finely minced", "package_qty": "", "package_unit": ""}, {"name": "Garlic", "quantity": "1", "unit": "tsp", "modifiers": "minced", "package_qty": "", "package_unit": ""}, {"name": "Chicken Broth", "quantity": "2", "unit": "cup", "modifiers": "", "package_qty": "", "package_unit": ""}, {"name": "Soy Sauce", "quantity": "0.17", "unit": "cup", "modifiers": "to taste", "package_qty": "", "package_unit": ""}, {"name": "Hoisin Sauce", "quantity": "1", "unit": "tbsp", "modifiers": "", "package_qty": "", "package_unit": ""}, {"name": "Rice Vinegar", "quantity": "1", "unit": "tbsp", "modifiers": "", "package_qty": "", "package_unit": ""}, {"name": "Ramen Noodles", "quantity": "4.5", "unit": "oz", "modifiers": "", "package_qty": "", "package_unit": ""}, {"name": "Egg", "quantity": "1", "unit": "whole", "modifiers": "hard boiled, optional", "package_qty": "", "package_unit": ""}, {"name": "Chili Paste", "quantity": "1", "unit": "tbsp", "modifiers": "optional", "package_qty": "", "package_unit": ""}, {"name": "Sriracha", "quantity": "0.5", "unit": "tbsp", "modifiers": "optional", "package_qty": "", "package_unit": ""}, {"name": "Shiitake Mushrooms", "quantity": "0.13", "unit": "cup", "modifiers": "", "package_qty": "", "package_unit": ""}, {"name": "Carrot", "quantity": "0.25", "unit": "cup", "modifiers": "shredded", "package_qty": "", "package_unit": ""}, {"name": "Green Onion", "quantity": "0.25", "unit": "cup", "modifiers": "sliced", "package_qty": "", "package_unit": ""}, {"name": "Sesame Seeds", "quantity": "1", "unit": "whole", "modifiers": "", "package_qty": "", "package_unit": ""}, {"name": "Bok Choy", "quantity": "1", "unit": "whole", "modifiers": "to taste", "package_qty": "", "package_unit": ""}]}

matched_ingredients:
  [{"raw_name": "Butter", "ingredient_name": "Butter", "quantity": "0.5", "unit": "tbsp"}, {"raw_name": "Sesame Oil", "ingredient_name": "Sesame Oil", "quantity": "0.5", "unit": "tsp"}, {"raw_name": "Pork Belly", "ingredient_name": "Pork Belly", "quantity": "0.75", "unit": "lb"}, {"raw_name": "Ginger", "ingredient_name": "Ginger", "quantity": "0.5", "unit": "tbsp"}, {"raw_name": "Garlic", "ingredient_name": "Garlic", "quantity": "1", "unit": "tsp"}, {"raw_name": "Chicken Broth", "ingredient_name": "Chicken Broth", "quantity": "2", "unit": "c"}, {"raw_name": "Soy Sauce", "ingredient_name": "Soy Sauce", "quantity": "0.17", "unit": "c"}, {"raw_name": "Hoisin Sauce", "ingredient_name": "Hoisin Sauce", "quantity": "1", "unit": "tbsp"}, {"raw_name": "Rice Vinegar", "ingredient_name": "Rice Vinegar", "quantity": "1", "unit": "tbsp"}, {"raw_name": "Egg", "ingredient_name": "Egg", "quantity": "1", "unit": "whole"}, {"raw_name": "?", "ingredient_name": null, "quantity": "1", "unit": "tbsp"}, {"raw_name": "Sriracha", "ingredient_name": "Sriracha", "quantity": "0.5", "unit": "tbsp"}, {"raw_name": "Shiitake Mushrooms", "ingredient_name": "Shiitake Mushrooms", "quantity": "0.13", "unit": "c"}, {"raw_name": "Carrot", "ingredient_name": "Carrot", "quantity": "0.25", "unit": "c"}, {"raw_name": "Green Onion", "ingredient_name": "Green Onion", "quantity": "0.25", "unit": "c"}, {"raw_name": "Sesame Seeds", "ingredient_name": "Sesame Seeds", "quantity": "1", "unit": "whole"}, {"raw_name": "Bok Choy", "ingredient_name": "Bok Choy", "quantity": "1", "unit": "whole"}]


created_at: 2026-04-04 18:08:15.301802
status: success
provider: claude
filename: Asian/Japanese/Spicy tuna roll.pdf
recipe_title: Japanese Recipe - Spicy Tuna Roll
unmatched_items: []
unit_warnings: ["\"sheet\" for Nori"]
resolution_tiers: {"failed": 2, "compound_decompose": 1, "product_off_fallback": 2, "exact": 4}
raw_ai_response:
  {"title": "Japanese Recipe - Spicy Tuna Roll", "description": "A classic sushi roll featuring spicy tuna mixed with mayonnaise and togarashi, wrapped in nori and sushi rice. Makes 4 rolls.", "servings": 4, "prep_time": 20, "cook_time": 0, "cuisine": "Japanese", "tags": ["Seafood", "Spicy", "Sushi", "Few Ingredients", "Quick"], "culinary_type": "Appetizer", "instructions": "1. Chop tuna and mix with mayonnaise and togarashi.\n2. Put a nori sheet on top of a bamboo mat (makisu).\n3. Spread the sushi rice on top of the nori sheet.\n4. Sprinkle sesame seed on top of the sushi rice.\n5. Place the tuna mixture lengthwise on the rice.\n6. Roll up the bamboo mat, pressing forward to shape the sushi into a cylinder.\n7. Press the bamboo mat firmly and remove it from the sushi.\n8. Cut the rolled sushi into bite-sized pieces.", "has_ingredient_list": true, "extraction_confidence": "high", "ingredients": [{"name": "Sushi Rice", "quantity": "4", "unit": "cup", "modifiers": "rice and sweet vinegar mixture", "package_qty": "", "package_unit": ""}, {"name": "Nori", "quantity": "4", "unit": "sheet", "modifiers": "dried seaweed", "package_qty": "", "package_unit": ""}, {"name": "Sesame Seeds", "quantity": "1", "unit": "tbsp", "modifiers": "", "package_qty": "", "package_unit": ""}, {"name": "Tuna", "quantity": "1/2", "unit": "lb", "modifiers": "fresh, raw", "package_qty": "", "package_unit": ""}, {"name": "Japanese Mayonnaise", "quantity": "1", "unit": "tbsp", "modifiers": "", "package_qty": "", "package_unit": ""}, {"name": "Togarashi", "quantity": "1/2", "unit": "tsp", "modifiers": "Japanese hot pepper", "package_qty": "", "package_unit": ""}]}

matched_ingredients:
  [{"raw_name": "?", "ingredient_name": null, "quantity": "4", "unit": "c"}, {"raw_name": "Nori", "ingredient_name": "Nori", "quantity": "4", "unit": "sheet"}, {"raw_name": "Sesame Seeds", "ingredient_name": "Sesame Seeds", "quantity": "1", "unit": "tbsp"}, {"raw_name": "Tuna", "ingredient_name": "Tuna", "quantity": "1/2", "unit": "lb"}, {"raw_name": "Japanese Mayonnaise", "ingredient_name": "Japanese Mayonnaise", "quantity": "1", "unit": "tbsp"}, {"raw_name": "?", "ingredient_name": null, "quantity": "1/2", "unit": "tsp"}]


created_at: 2026-04-04 18:08:36.593043
status: success
provider: claude
filename: Asian/Japanese/Super Sushi (Chef Wah).pdf
recipe_title: Sushi Rice, California Roll, Una Kiyu Cone, and Tekka Maki
unmatched_items: []
unit_warnings: []
resolution_tiers: {"exact": 17, "failed": 2, "compound_decompose": 1, "product_off_fallback": 2}
raw_ai_response:
  {"title": "Sushi Rice, California Roll, Una Kiyu Cone, and Tekka Maki", "description": "A comprehensive sushi-making lesson from Chef Wah of Tokio Joe, covering the preparation of sushi rice and four signature sushi rolls including California Roll, Una Kiyu Cone, and Tekka Maki.", "servings": 4, "prep_time": 30, "cook_time": 30, "cuisine": "Japanese", "tags": ["Dinner Party", "Weekend Project", "Few Ingredients", "Stovetop"], "culinary_type": "Main Course", "instructions": "Step 1: Wash two cups of Japanese rice and drain once the rice is clean. Step 2: Add two cups of water and cook in an electric rice cooker. Step 3: Leave the rice uncovered for 15 minutes after turning off the heat. Step 4: Place the cooked rice in a flat-bottomed, wooden container. Step 5: While the rice is still hot, mix in the vinegar with a rice paddle and gently flip every four minutes. Step 6: Do this until the rice is light and fluffy, and the flavour of the vinegar is dispersed. Step 7: For California Roll: Mold the sushi rice into a ball and place in the centre of the nori, then spread evenly. Leave 2cm of the seaweed free at the edge. Step 8: Turn over the nori. Arrange the crab stick, cucumber, avocado and mayonnaise neatly along the centre of the nori. Step 9: Pick up one side and roll into a cylindrical shape with your hands. Step 10: Place a food wrap onto the roll and then press firmly together with a bamboo mat. Step 11: Press even the two ends of the sushi, and removed the bamboo mat. Step 12: Cut the sushi roll in half, and food wrap. Cut the sushi roll into six small pieces. Step 13: For Una Kiyu Cone: Cut the eel into a long, thin strip and then cook in oven with a little sauce. Step 14: Put on one side. Mold the sushi rice into a ball. Step 15: Place in one corner of the nori, at slight angle then spread it evenly across, leaving one corner showing. Step 16: Arrange the eel and cucumber over the rice. Step 17: Roll up into a cone shape. Step 18: For Tekka Maki: Place the nori on the bamboo mat. Mold the sushi rice into a ball. Step 19: Place in the centre of the nori, then spread evenly from left to right. Step 20: Leave 1cm of the seaweed free at the edge. Step 21: Arrange the tuna and wasabi neatly along the centre of the rice. Step 22: Pick up one side of the seaweed to roll the sushi into a cylindrical shape. Step 23: Press together firmly with the bamboo mat. Step 24: Press even the two ends of the sushi, and removed the bamboo mat. Step 25: Cut the sushi into six small pieces.", "has_ingredient_list": true, "extraction_confidence": "high", "ingredients": [{"name": "White Rice", "quantity": "16", "unit": "oz", "modifiers": "Japanese", "package_qty": "", "package_unit": ""}, {"name": "Water", "quantity": "16", "unit": "oz", "modifiers": "", "package_qty": "", "package_unit": ""}, {"name": "Rice Vinegar", "quantity": "150", "unit": "ml", "modifiers": "", "package_qty": "", "package_unit": ""}, {"name": "White Rice", "quantity": "100", "unit": "g", "modifiers": "", "package_qty": "", "package_unit": ""}, {"name": "Crab", "quantity": "1", "unit": "piece", "modifiers": "", "package_qty": "", "package_unit": ""}, {"name": "Cucumber", "quantity": "10", "unit": "g", "modifiers": "sliced", "package_qty": "", "package_unit": ""}, {"name": "Avocado", "quantity": "20", "unit": "g", "modifiers": "sliced", "package_qty": "", "package_unit": ""}, {"name": "Crab Roe", "quantity": "10", "unit": "g", "modifiers": "", "package_qty": "", "package_unit": ""}, {"name": "Nori", "quantity": "1", "unit": "half", "modifiers": "toasted seaweed", "package_qty": "", "package_unit": ""}, {"name": "Japanese Mayonnaise", "quantity": "1", "unit": "whole", "modifiers": "to taste", "package_qty": "", "package_unit": ""}, {"name": "White Rice", "quantity": "20", "unit": "g", "modifiers": "", "package_qty": "", "package_unit": ""}, {"name": "Eel", "quantity": "20", "unit": "g", "modifiers": "", "package_qty": "", "package_unit": ""}, {"name": "Cucumber", "quantity": "10", "unit": "g", "modifiers": "sliced", "package_qty": "", "package_unit": ""}, {"name": "Nori", "quantity": "1", "unit": "half", "modifiers": "toasted seaweed", "package_qty": "", "package_unit": ""}, {"name": "Eel Sauce", "quantity": "1", "unit": "whole", "modifiers": "to taste", "package_qty": "", "package_unit": ""}, {"name": "White Rice", "quantity": "70", "unit": "g", "modifiers": "", "package_qty": "", "package_unit": ""}, {"name": "Tuna", "quantity": "25", "unit": "g", "modifiers": "raw", "package_qty": "", "package_unit": ""}, {"name": "Nori", "quantity": "1", "unit": "half", "modifiers": "toasted seaweed", "package_qty": "", "package_unit": ""}, {"name": "Wasabi", "quantity": "1", "unit": "whole", "modifiers": "to taste", "package_qty": "", "package_unit": ""}]}

matched_ingredients:
  [{"raw_name": "White Rice", "ingredient_name": "White Rice", "quantity": "16", "unit": "oz"}, {"raw_name": "Water", "ingredient_name": "Water", "quantity": "16", "unit": "oz"}, {"raw_name": "Rice Vinegar", "ingredient_name": "Rice Vinegar", "quantity": "150", "unit": "ml"}, {"raw_name": "White Rice", "ingredient_name": "White Rice", "quantity": "100", "unit": "g"}, {"raw_name": "Crab", "ingredient_name": "Crab", "quantity": "1", "unit": "pc"}, {"raw_name": "Cucumber", "ingredient_name": "Cucumber", "quantity": "10", "unit": "g"}, {"raw_name": "Avocado", "ingredient_name": "Avocado", "quantity": "20", "unit": "g"}, {"raw_name": "?", "ingredient_name": null, "quantity": "10", "unit": "g"}, {"raw_name": "Nori", "ingredient_name": "Nori", "quantity": "1", "unit": "half"}, {"raw_name": "Japanese Mayonnaise", "ingredient_name": "Japanese Mayonnaise", "quantity": "1", "unit": "whole"}, {"raw_name": "White Rice", "ingredient_name": "White Rice", "quantity": "20", "unit": "g"}, {"raw_name": "Eel", "ingredient_name": "Eel", "quantity": "20", "unit": "g"}, {"raw_name": "Cucumber", "ingredient_name": "Cucumber", "quantity": "10", "unit": "g"}, {"raw_name": "Nori", "ingredient_name": "Nori", "quantity": "1", "unit": "half"}, {"raw_name": "?", "ingredient_name": null, "quantity": "1", "unit": "whole"}, {"raw_name": "White Rice", "ingredient_name": "White Rice", "quantity": "70", "unit": "g"}, {"raw_name": "Tuna", "ingredient_name": "Tuna", "quantity": "25", "unit": "g"}, {"raw_name": "Nori", "ingredient_name": "Nori", "quantity": "1", "unit": "half"}, {"raw_name": "Wasabi", "ingredient_name": "Wasabi", "quantity": "1", "unit": "whole"}]


created_at: 2026-04-04 18:08:45.020716
status: success
provider: claude
filename: Asian/Japanese/Teriyaki chicken wrap with ginger slaw.pdf
recipe_title: Teriyaki Chicken Wrap Wagner Slaw
unmatched_items: []
unit_warnings: []
resolution_tiers: {"exact": 12, "failed": 1, "product_off_fallback": 1}
raw_ai_response:
  {"title": "Teriyaki Chicken Wrap Wagner Slaw", "description": "Marinated chicken tenders served in warm flour tortillas with ginger slaw and teriyaki sauce, rolled like burritos.", "servings": 4, "prep_time": 30, "cook_time": 20, "cuisine": "Japanese", "tags": ["Stovetop", "Weeknight", "Quick"], "culinary_type": "Main Course", "instructions": "Step 1: Prepare the ginger slaw by combining white vinegar, oil, sugar, teriyaki sauce, grated ginger, and salt. Mix in coleslaw or shredded fresh cabbage and set aside.\nStep 2: Marinate chicken tenders in teriyaki sauce for at least 15 minutes.\nStep 3: Remove chicken from marinade and cook in oil until done.\nStep 4: Heat flour tortillas and spoon rice onto each tortilla.\nStep 5: Add cooked chicken to tortillas along with ginger slaw.\nStep 6: Fold tortillas and roll like burritos to serve.", "has_ingredient_list": true, "extraction_confidence": "high", "ingredients": [{"name": "Chicken Tenders", "quantity": "1", "unit": "lb", "modifiers": "", "package_qty": "", "package_unit": ""}, {"name": "Teriyaki Sauce", "quantity": "1/4", "unit": "cup", "modifiers": "", "package_qty": "", "package_unit": ""}, {"name": "Garlic", "quantity": "1", "unit": "tbsp", "modifiers": "chopped", "package_qty": "", "package_unit": ""}, {"name": "White Wine Vinegar", "quantity": "3", "unit": "tbsp", "modifiers": "", "package_qty": "", "package_unit": ""}, {"name": "Cooking Oil", "quantity": "2", "unit": "tbsp", "modifiers": "", "package_qty": "", "package_unit": ""}, {"name": "Sugar", "quantity": "1", "unit": "tbsp", "modifiers": "", "package_qty": "", "package_unit": ""}, {"name": "Teriyaki Sauce", "quantity": "2", "unit": "tbsp", "modifiers": "", "package_qty": "", "package_unit": ""}, {"name": "Ginger", "quantity": "1", "unit": "tbsp", "modifiers": "grated", "package_qty": "", "package_unit": ""}, {"name": "Salt", "quantity": "1", "unit": "tsp", "modifiers": "", "package_qty": "", "package_unit": ""}, {"name": "Coleslaw Mix", "quantity": "1", "unit": "bag", "modifiers": "", "package_qty": "16", "package_unit": "oz"}, {"name": "Tortilla", "quantity": "8", "unit": "whole", "modifiers": "flour", "package_qty": "", "package_unit": ""}, {"name": "Rice", "quantity": "2", "unit": "cup", "modifiers": "cooked", "package_qty": "", "package_unit": ""}, {"name": "Coriander", "quantity": "1", "unit": "cup", "modifiers": "fresh, chopped", "package_qty": "", "package_unit": ""}]}

matched_ingredients:
  [{"raw_name": "Chicken Tenders", "ingredient_name": "Chicken Tenders", "quantity": "1", "unit": "lb"}, {"raw_name": "Teriyaki Sauce", "ingredient_name": "Teriyaki Sauce", "quantity": "1/4", "unit": "c"}, {"raw_name": "Garlic", "ingredient_name": "Garlic", "quantity": "1", "unit": "tbsp"}, {"raw_name": "White Wine Vinegar", "ingredient_name": "White Wine Vinegar", "quantity": "3", "unit": "tbsp"}, {"raw_name": "Cooking oil", "ingredient_name": "Cooking oil", "quantity": "2", "unit": "tbsp"}, {"raw_name": "Sugar", "ingredient_name": "Sugar", "quantity": "1", "unit": "tbsp"}, {"raw_name": "Teriyaki Sauce", "ingredient_name": "Teriyaki Sauce", "quantity": "2", "unit": "tbsp"}, {"raw_name": "Ginger", "ingredient_name": "Ginger", "quantity": "1", "unit": "tbsp"}, {"raw_name": "Salt", "ingredient_name": "Salt", "quantity": "1", "unit": "tsp"}, {"raw_name": "?", "ingredient_name": null, "quantity": "1", "unit": "bag"}, {"raw_name": "Tortilla", "ingredient_name": "Tortilla", "quantity": "8", "unit": "whole"}, {"raw_name": "Rice", "ingredient_name": "Rice", "quantity": "2", "unit": "c"}, {"raw_name": "Coriander", "ingredient_name": "Coriander", "quantity": "1", "unit": "c"}]


created_at: 2026-04-04 18:08:52.121680
status: success
provider: claude
filename: Asian/Japanese/Teriyaki chicken.pdf
recipe_title: Japanese Recipe - Teriyaki Chicken
unmatched_items: []
unit_warnings: []
resolution_tiers: {"exact": 6}
raw_ai_response:
  {"title": "Japanese Recipe - Teriyaki Chicken", "description": "A classic Japanese teriyaki chicken dish with a glossy sauce made from sake, soy sauce, mirin, and sugar. The chicken is marinated and then pan-fried until golden, finished with a thick, caramelized glaze.", "servings": 2, "prep_time": 50, "cook_time": 15, "cuisine": "Japanese", "tags": ["Stovetop", "Comfort Food", "Quick", "Weeknight"], "culinary_type": "Main Course", "instructions": "Step 1: Cut chicken breasts into small chunks.\nStep 2: Mix other ingredients in a bowl.\nStep 3: Marinate the chicken chunks in the mixture for at least 50 minutes in the fridge.\nStep 4: Heat a pan and pour in vegetable oil (2-3 tsp).\nStep 5: Place the chicken chunks in the pan and fry them on low heat.\nStep 6: Turn the chicken chunks over to fry both sides.\nStep 7: Stop the heat and add in the sauce that the chicken was marinated in.\nStep 8: Start the heat again and simmer on low heat until the sauce becomes thick.\nNote: Marinate longer if you want a stronger taste. Add a little bit of grated ginger or chopped green onion after cooking, if you would like.", "has_ingredient_list": true, "extraction_confidence": "high", "ingredients": [{"name": "Chicken Breast", "quantity": "2", "unit": "whole", "modifiers": "", "package_qty": "", "package_unit": ""}, {"name": "Sake", "quantity": "2", "unit": "tbsp", "modifiers": "", "package_qty": "", "package_unit": ""}, {"name": "Soy Sauce", "quantity": "4", "unit": "tbsp", "modifiers": "", "package_qty": "", "package_unit": ""}, {"name": "Mirin", "quantity": "4", "unit": "tbsp", "modifiers": "", "package_qty": "", "package_unit": ""}, {"name": "Sugar", "quantity": "2", "unit": "tbsp", "modifiers": "", "package_qty": "", "package_unit": ""}, {"name": "Vegetable Oil", "quantity": "2", "unit": "tsp", "modifiers": "", "package_qty": "", "package_unit": ""}]}

matched_ingredients:
  [{"raw_name": "Chicken Breast", "ingredient_name": "Chicken Breast", "quantity": "2", "unit": "whole"}, {"raw_name": "Sake", "ingredient_name": "Sake", "quantity": "2", "unit": "tbsp"}, {"raw_name": "Soy Sauce", "ingredient_name": "Soy Sauce", "quantity": "4", "unit": "tbsp"}, {"raw_name": "Mirin", "ingredient_name": "Mirin", "quantity": "4", "unit": "tbsp"}, {"raw_name": "Sugar", "ingredient_name": "Sugar", "quantity": "2", "unit": "tbsp"}, {"raw_name": "Vegetable Oil", "ingredient_name": "Vegetable Oil", "quantity": "2", "unit": "tsp"}]


created_at: 2026-04-04 18:08:57.755374
status: success
provider: claude
filename: Asian/Japanese/norimaki sushi roll.pdf
recipe_title: Norimaki (Sushi Roll)
unmatched_items: []
unit_warnings: ["\"sheet\" for Nori"]
resolution_tiers: {"exact": 5}
raw_ai_response:
  {"title": "Norimaki (Sushi Roll)", "description": "A Japanese sushi roll made with smoked salmon, cucumber, and rice wrapped in nori seaweed, served with soy sauce.", "servings": 1, "prep_time": 15, "cook_time": 0, "cuisine": "Japanese", "tags": ["Quick", "No Cook", "Few Ingredients", "Kid Friendly"], "culinary_type": "Appetizer", "instructions": "Step 1: Cut cucumber into sticks.\nStep 2: Spread rice on 3/4 of a sheet of Nori on a sushi-roller (see figure).\nStep 3: Place a stick of cucumber and stripes of salmon on the rice.\nStep 4: Roll up first half firmly.\nStep 5: Roll up softly to the edge and shape roll.\nStep 6: Cut into serving size and serve with soy sauce.", "has_ingredient_list": true, "extraction_confidence": "high", "ingredients": [{"name": "Salmon", "quantity": "250", "unit": "g", "modifiers": "smoked", "package_qty": "", "package_unit": ""}, {"name": "Cucumber", "quantity": "1", "unit": "whole", "modifiers": "", "package_qty": "", "package_unit": ""}, {"name": "Nori", "quantity": "6", "unit": "sheet", "modifiers": "", "package_qty": "", "package_unit": ""}, {"name": "Rice", "quantity": "1", "unit": "whole", "modifiers": "", "package_qty": "", "package_unit": ""}, {"name": "Soy Sauce", "quantity": "1", "unit": "whole", "modifiers": "", "package_qty": "", "package_unit": ""}]}

matched_ingredients:
  [{"raw_name": "Salmon", "ingredient_name": "Salmon", "quantity": "250", "unit": "g"}, {"raw_name": "Cucumber", "ingredient_name": "Cucumber", "quantity": "1", "unit": "whole"}, {"raw_name": "Nori", "ingredient_name": "Nori", "quantity": "6", "unit": "sheet"}, {"raw_name": "Rice", "ingredient_name": "Rice", "quantity": "1", "unit": "whole"}, {"raw_name": "Soy Sauce", "ingredient_name": "Soy Sauce", "quantity": "1", "unit": "whole"}]


created_at: 2026-04-04 18:09:23.763362
status: success
provider: claude
filename: Asian/Korean/Baked Spareribs (Bulkalbee).pdf
recipe_title: Baked Spareribs—Bulkalbee
unmatched_items: []
unit_warnings: []
resolution_tiers: {"exact": 2}
raw_ai_response:
  {"title": "Baked Spareribs\u2014Bulkalbee", "description": "Korean-style beef spareribs marinated in barbecue sauce and baked in the oven until cooked through, served with red leaf lettuce and lemon wedges.", "servings": 4, "prep_time": 15, "cook_time": 30, "cuisine": "Korean", "tags": ["Baked", "Dinner Party", "Comfort Food", "Hearty"], "culinary_type": "Main Course", "instructions": "Step 1: Cut spareribs into serving pieces.\nStep 2: Remove film covering the meat carefully.\nStep 3: Remove excess fat and membrane from the bone side.\nStep 4: With meaty side down, insert kniejust under bone and slice, leaving the end uncut. Open out flat.\nStep 5: Then slice the meat into half thickness, leaving the end uncut and open out flat.\nStep 6: Make a slit along the center of each bone. This eases the membrane when grilled and makes the meat apart easily.\nStep 7: In a large bowl place spareribs and pour over marinade. Rub and turn with fingers; let stand 15 minutes. Bake both sides on preheated grill.\nFor Oven-barbecued Spareribs variation: Preheat oven to 425F(220C). Place spareribs on a wire rack. Cook until done turning and brushing with the marinade sauce occasionally. Serve on red leaf lettuce (bronze lettuce) and lemon wedges.", "has_ingredient_list": true, "extraction_confidence": "high", "ingredients": [{"name": "Beef Short Rib", "quantity": "4", "unit": "piece", "modifiers": "", "package_qty": "", "package_unit": ""}, {"name": "Barbecue Sauce", "quantity": "2", "unit": "cup", "modifiers": "", "package_qty": "", "package_unit": ""}]}

matched_ingredients:
  [{"raw_name": "Beef Short Rib", "ingredient_name": "Beef Short Rib", "quantity": "4", "unit": "pc"}, {"raw_name": "Barbecue Sauce", "ingredient_name": "Barbecue Sauce", "quantity": "2", "unit": "c"}]


created_at: 2026-04-04 18:09:45.513732
status: success
provider: claude
filename: Asian/Korean/Barbecued beef (Pulgoki).pdf
recipe_title: Barbequed Beef—Pulgoki
unmatched_items: []
unit_warnings: []
resolution_tiers: {"exact": 14, "common_name": 1}
raw_ai_response:
  {"title": "Barbequed Beef\u2014Pulgoki", "description": "A classic Korean grilled beef dish marinated in a sweet and savory soy-based sauce with ginger, garlic, and sesame seeds, traditionally cooked at the table over charcoal.", "servings": 4, "prep_time": 90, "cook_time": 30, "cuisine": "Korean", "tags": ["Grilled", "Date Night", "Dinner Party", "Savory", "Weeknight"], "culinary_type": "Main Course", "instructions": "Step 1: Make a sauce by mixing all ingredients of marinade. Cook over high heat. Bring to a boil and reduce heat then cook 15 minutes. Reduce heat again and simmer a further 15 minutes; let stand to cool overnight.\nStep 2: When ready to use, strain the mixture and add roasted sesame seeds and chopped green onion.\nStep 3: Mix roasted sesame seeds and finely chopped green onion, if desired. Cut beef into bite size pieces.\nStep 4: Rub sauce into beef with finger tips. Let the meat marinate for at least 1 hour.\nStep 5: Heat the pulgoki grill over a charcoal fire. Then barbeque the beef. Use frying pan or an oven broiler if you don't have a pulgoki grill. Serve immediately.", "has_ingredient_list": true, "extraction_confidence": "high", "ingredients": [{"name": "Beef Rib", "quantity": "1/2", "unit": "lb", "modifiers": "", "package_qty": "225", "package_unit": "g"}, {"name": "Sesame Seeds", "quantity": "1", "unit": "whole", "modifiers": "roasted", "package_qty": "", "package_unit": ""}, {"name": "Green Onion", "quantity": "1", "unit": "whole", "modifiers": "finely chopped", "package_qty": "", "package_unit": ""}, {"name": "Onion", "quantity": "1", "unit": "whole", "modifiers": "optional", "package_qty": "", "package_unit": ""}, {"name": "Green Pepper", "quantity": "1", "unit": "whole", "modifiers": "optional", "package_qty": "", "package_unit": ""}, {"name": "Eggplant", "quantity": "1", "unit": "whole", "modifiers": "optional", "package_qty": "", "package_unit": ""}, {"name": "Pumpkin", "quantity": "1", "unit": "whole", "modifiers": "optional", "package_qty": "", "package_unit": ""}, {"name": "Apple", "quantity": "1/2", "unit": "whole", "modifiers": "medium, quartered, sliced", "package_qty": "", "package_unit": ""}, {"name": "Ginger", "quantity": "1", "unit": "oz", "modifiers": "thinly sliced", "package_qty": "30", "package_unit": "g"}, {"name": "Garlic", "quantity": "1", "unit": "oz", "modifiers": "thinly sliced", "package_qty": "30", "package_unit": "g"}, {"name": "Soy Sauce", "quantity": "2", "unit": "cup", "modifiers": "", "package_qty": "", "package_unit": ""}, {"name": "Mirin", "quantity": "1/2", "unit": "cup", "modifiers": "", "package_qty": "", "package_unit": ""}, {"name": "Water", "quantity": "1/4", "unit": "cup", "modifiers": "", "package_qty": "", "package_unit": ""}, {"name": "Sugar", "quantity": "6", "unit": "oz", "modifiers": "", "package_qty": "170", "package_unit": "g"}, {"name": "Monosodium Glutamate", "quantity": "1/2", "unit": "tsp", "modifiers": "", "package_qty": "", "package_unit": ""}]}

matched_ingredients:
  [{"raw_name": "Beef Rib", "ingredient_name": "Beef Rib", "quantity": "1/2", "unit": "lb"}, {"raw_name": "Sesame Seeds", "ingredient_name": "Sesame Seeds", "quantity": "1", "unit": "whole"}, {"raw_name": "Green Onion", "ingredient_name": "Green Onion", "quantity": "1", "unit": "whole"}, {"raw_name": "Onion", "ingredient_name": "Onion", "quantity": "1", "unit": "whole"}, {"raw_name": "Bell Pepper", "ingredient_name": "Bell Pepper", "quantity": "1", "unit": "whole"}, {"raw_name": "Eggplant", "ingredient_name": "Eggplant", "quantity": "1", "unit": "whole"}, {"raw_name": "Pumpkin", "ingredient_name": "Pumpkin", "quantity": "1", "unit": "whole"}, {"raw_name": "Apple", "ingredient_name": "Apple", "quantity": "1/2", "unit": "whole"}, {"raw_name": "Ginger", "ingredient_name": "Ginger", "quantity": "1", "unit": "oz"}, {"raw_name": "Garlic", "ingredient_name": "Garlic", "quantity": "1", "unit": "oz"}, {"raw_name": "Soy Sauce", "ingredient_name": "Soy Sauce", "quantity": "2", "unit": "c"}, {"raw_name": "Mirin", "ingredient_name": "Mirin", "quantity": "1/2", "unit": "c"}, {"raw_name": "Water", "ingredient_name": "Water", "quantity": "1/4", "unit": "c"}, {"raw_name": "Sugar", "ingredient_name": "Sugar", "quantity": "6", "unit": "oz"}, {"raw_name": "Monosodium Glutamate", "ingredient_name": "Monosodium Glutamate", "quantity": "1/2", "unit": "tsp"}]


created_at: 2026-04-04 18:10:00.490166
status: success
provider: claude
filename: Asian/Korean/Chinese cabbage kimchee (Pechu Kimchee).pdf
recipe_title: Chinese Cabbage Kimchee (Pechu Kimchee)
unmatched_items: []
unit_warnings: []
resolution_tiers: {"exact": 15, "failed": 1, "product_off_fallback": 1}
raw_ai_response:
  {"title": "Chinese Cabbage Kimchee (Pechu Kimchee)", "description": "A traditional Korean fermented pickle made with Chinese cabbage, radish, and a spiced marinade of chili pepper, garlic, ginger, and anchovy sauce. This moist, colorful kimchee is a staple on the Korean dining table.", "servings": 4, "prep_time": 30, "cook_time": 0, "cuisine": "Korean", "tags": ["Make Ahead", "Fermented", "Spicy", "Savory", "Freezer Friendly"], "culinary_type": "Sauce / Condiment", "instructions": "1. Discard dead leaves. Cut in half.\n2. Make a slit at root end, pull apart each half. If using small Chinese cabbage, cut in half.\n3. Sprinkle salt between leaves, heavily over root side.\n4. In a large container, place cabbage, top with a light weight and let stand a whole day and night (in summertime, overnight), turning over several times for even salting. Rinse in water; drain and set aside 30 minutes. Peel radish, shred and sprinkle with salt; squeeze out water gently.\n5. Prepare marinade. In a small pan heat A ingredients to boiling, constantly stirring.\n6. Reduce heat to medium. Continue to cook stirring constantly to prevent burning. When forming a paste, remove from heat; cool. When completely cooled, add B and radish, mix.\n7. Between leaves, spread marinade paste. Grease your hand with sesame oil to prevent irritation caused by the chili pepper.\n8. Folding each section in two, pack in rectangular container. Cover with plastic wrap, keep in cold and dark place. Moisture comes out in 2-3 days, but do not take out at this point. Leave a further 4-5 days at least. Take out necessary amount, press down remainder to remove air.", "has_ingredient_list": true, "extraction_confidence": "high", "ingredients": [{"name": "Napa Cabbage", "quantity": "3", "unit": "head", "modifiers": "", "package_qty": "22.25", "package_unit": "lb"}, {"name": "Salt", "quantity": "14", "unit": "oz", "modifiers": "", "package_qty": "", "package_unit": ""}, {"name": "Radish", "quantity": "21", "unit": "oz", "modifiers": "", "package_qty": "", "package_unit": ""}, {"name": "Salt", "quantity": "0.167", "unit": "oz", "modifiers": "", "package_qty": "", "package_unit": ""}, {"name": "Water", "quantity": "1.33", "unit": "cup", "modifiers": "", "package_qty": "", "package_unit": ""}, {"name": "All-Purpose Flour", "quantity": "2", "unit": "tbsp", "modifiers": "", "package_qty": "", "package_unit": ""}, {"name": "Dried Shrimp", "quantity": "2", "unit": "tbsp", "modifiers": "salted", "package_qty": "", "package_unit": ""}, {"name": "Anchovy Sauce", "quantity": "2", "unit": "tbsp", "modifiers": "", "package_qty": "", "package_unit": ""}, {"name": "Chives", "quantity": "2", "unit": "bunch", "modifiers": "chopped, cut into 1.5 inch length", "package_qty": "1.75", "package_unit": "oz"}, {"name": "Green Onion", "quantity": "7", "unit": "oz", "modifiers": "finely chopped", "package_qty": "", "package_unit": ""}, {"name": "Gochugaru", "quantity": "5.25", "unit": "oz", "modifiers": "", "package_qty": "", "package_unit": ""}, {"name": "Sugar", "quantity": "3.5", "unit": "oz", "modifiers": "", "package_qty": "", "package_unit": ""}, {"name": "Ginger", "quantity": "1.75", "unit": "oz", "modifiers": "grated", "package_qty": "", "package_unit": ""}, {"name": "Garlic", "quantity": "2", "unit": "tbsp", "modifiers": "crushed", "package_qty": "", "package_unit": ""}, {"name": "Monosodium Glutamate", "quantity": "1", "unit": "pinch", "modifiers": "", "package_qty": "", "package_unit": ""}, {"name": "Sesame Oil", "quantity": "1", "unit": "tbsp", "modifiers": "", "package_qty": "", "package_unit": ""}]}

matched_ingredients:
  [{"raw_name": "Napa Cabbage", "ingredient_name": "Napa Cabbage", "quantity": "3", "unit": "head"}, {"raw_name": "Salt", "ingredient_name": "Salt", "quantity": "14", "unit": "oz"}, {"raw_name": "Radish", "ingredient_name": "Radish", "quantity": "21", "unit": "oz"}, {"raw_name": "Salt", "ingredient_name": "Salt", "quantity": "0.167", "unit": "oz"}, {"raw_name": "Water", "ingredient_name": "Water", "quantity": "1.33", "unit": "c"}, {"raw_name": "All-Purpose Flour", "ingredient_name": "All-Purpose Flour", "quantity": "2", "unit": "tbsp"}, {"raw_name": "Dried Shrimp", "ingredient_name": "Dried Shrimp", "quantity": "2", "unit": "tbsp"}, {"raw_name": "?", "ingredient_name": null, "quantity": "2", "unit": "tbsp"}, {"raw_name": "Chives", "ingredient_name": "Chives", "quantity": "2", "unit": "bunch"}, {"raw_name": "Green Onion", "ingredient_name": "Green Onion", "quantity": "7", "unit": "oz"}, {"raw_name": "Gochugaru", "ingredient_name": "Gochugaru", "quantity": "5.25", "unit": "oz"}, {"raw_name": "Sugar", "ingredient_name": "Sugar", "quantity": "3.5", "unit": "oz"}, {"raw_name": "Ginger", "ingredient_name": "Ginger", "quantity": "1.75", "unit": "oz"}, {"raw_name": "Garlic", "ingredient_name": "Garlic", "quantity": "2", "unit": "tbsp"}, {"raw_name": "Monosodium Glutamate", "ingredient_name": "Monosodium Glutamate", "quantity": "1", "unit": "pinch"}, {"raw_name": "Sesame Oil", "ingredient_name": "Sesame Oil", "quantity": "1", "unit": "tbsp"}]


created_at: 2026-04-04 18:10:25.329168
status: success
provider: claude
filename: Asian/Korean/JON (Korean Pancake).pdf
recipe_title: JON (Korean Pancake)
unmatched_items: []
unit_warnings: []
resolution_tiers: {"exact": 13}
raw_ai_response:
  {"title": "JON (Korean Pancake)", "description": "A popular Korean snack/entree pancake with variations from family to family, made with a savory shrimp and vegetable batter.", "servings": 2, "prep_time": 15, "cook_time": 15, "cuisine": "Korean", "tags": ["Stovetop", "Weeknight", "Fried", "Savory"], "culinary_type": "Snack", "instructions": "Step 1: Mix together the flour, salt, water and shrimp. Add the scallions and peppers and mix thoroughly but gently.\nStep 2: Heat an 8-inch skillet. Add the oil for pan-frying and warm up over moderate heat. Then add half the batter mixture which should make a pancake about 1/4 inch thick, and fry it on both sides for 3 or 4 minutes.\nStep 3: Slip pancake onto a cutting board and cut into 3-inch pieces. Then quickly reassemble the pieces into their original pancake shape. (Or you may present the uncut pancake, which is then divided at the table.)\nStep 4: Serve warm with traditional Korean dip made of 2 tablespoons of soy sauce, 1/4 teaspoon Korean sesame oil, 1/2 teaspoon toasted sesame seeds, 1 teaspoon thin-sliced scallion and 1/2 teaspoon dried hot red chili flakes. (For children, scallions and chili flakes are optional.)", "has_ingredient_list": true, "extraction_confidence": "high", "ingredients": [{"name": "All-Purpose Flour", "quantity": "1", "unit": "cup", "modifiers": "", "package_qty": "", "package_unit": ""}, {"name": "Salt", "quantity": "1", "unit": "tsp", "modifiers": "", "package_qty": "", "package_unit": ""}, {"name": "Sugar", "quantity": "1/2", "unit": "tsp", "modifiers": "optional", "package_qty": "", "package_unit": ""}, {"name": "Water", "quantity": "1 1/2", "unit": "cup", "modifiers": "cold", "package_qty": "", "package_unit": ""}, {"name": "Shrimp", "quantity": "3", "unit": "oz", "modifiers": "", "package_qty": "", "package_unit": ""}, {"name": "Spring Onion", "quantity": "4", "unit": "whole", "modifiers": "cut into 2-inch lengths", "package_qty": "", "package_unit": ""}, {"name": "Bell Pepper", "quantity": "2", "unit": "oz", "modifiers": "sweet red and/or green, cut into 2-inch julienne strips", "package_qty": "", "package_unit": ""}, {"name": "Corn Oil", "quantity": "1", "unit": "whole", "modifiers": "for pan-frying", "package_qty": "", "package_unit": ""}, {"name": "Soy Sauce", "quantity": "2", "unit": "tbsp", "modifiers": "", "package_qty": "", "package_unit": ""}, {"name": "Sesame Oil", "quantity": "1/4", "unit": "tsp", "modifiers": "Korean", "package_qty": "", "package_unit": ""}, {"name": "Sesame Seeds", "quantity": "1/2", "unit": "tsp", "modifiers": "toasted", "package_qty": "", "package_unit": ""}, {"name": "Spring Onion", "quantity": "1", "unit": "tsp", "modifiers": "thin-sliced", "package_qty": "", "package_unit": ""}, {"name": "Red Pepper Flakes", "quantity": "1/2", "unit": "tsp", "modifiers": "dried hot red chili, optional", "package_qty": "", "package_unit": ""}]}

matched_ingredients:
  [{"raw_name": "All-Purpose Flour", "ingredient_name": "All-Purpose Flour", "quantity": "1", "unit": "c"}, {"raw_name": "Salt", "ingredient_name": "Salt", "quantity": "1", "unit": "tsp"}, {"raw_name": "Sugar", "ingredient_name": "Sugar", "quantity": "1/2", "unit": "tsp"}, {"raw_name": "Water", "ingredient_name": "Water", "quantity": "1 1/2", "unit": "c"}, {"raw_name": "Shrimp", "ingredient_name": "Shrimp", "quantity": "3", "unit": "oz"}, {"raw_name": "Spring Onion", "ingredient_name": "Spring Onion", "quantity": "4", "unit": "whole"}, {"raw_name": "Bell Pepper", "ingredient_name": "Bell Pepper", "quantity": "2", "unit": "oz"}, {"raw_name": "Corn Oil", "ingredient_name": "Corn Oil", "quantity": "1", "unit": "whole"}, {"raw_name": "Soy Sauce", "ingredient_name": "Soy Sauce", "quantity": "2", "unit": "tbsp"}, {"raw_name": "Sesame Oil", "ingredient_name": "Sesame Oil", "quantity": "1/4", "unit": "tsp"}, {"raw_name": "Sesame Seeds", "ingredient_name": "Sesame Seeds", "quantity": "1/2", "unit": "tsp"}, {"raw_name": "Spring Onion", "ingredient_name": "Spring Onion", "quantity": "1", "unit": "tsp"}, {"raw_name": "Red Pepper Flakes", "ingredient_name": "Red Pepper Flakes", "quantity": "1/2", "unit": "tsp"}]


created_at: 2026-04-04 18:10:39.771232
status: success
provider: claude
filename: Asian/Korean/Mixed vegetables with beef (Chapche).pdf
recipe_title: Beef Bibimbap
unmatched_items: []
unit_warnings: []
resolution_tiers: {"exact": 21, "failed": 2, "compound_decompose": 1, "product_off_fallback": 2, "common_name": 1}
raw_ai_response:
  {"title": "Beef Bibimbap", "description": "A Korean mixed rice bowl featuring marinated beef strips, seasoned vegetables, bean threads, and a savory sauce, served with roasted sesame seeds.", "servings": 4, "prep_time": 30, "cook_time": 15, "cuisine": "Korean", "tags": ["Stovetop", "Weeknight", "High Protein"], "culinary_type": "Main Course", "instructions": "1. In salted boiling water, cook bean threads 3-4 minutes until transparent. Remove from heat.\n2. Drain and cut into 2 1/2 in (6.5cm) length.\n3. Cut beef into julienne strips.\n4. In a bowl combine A and add beef to marinate.\n5. Slice green onion diagonally.\n6. Remove stems of mushrooms and cut into julienne strips.\n7. Cut ear mushrooms into bite size pieces. Cut carrot and green pepper into julienne strips.\n8. Heat salad oil in a skillet, and add green onion. Cook briefly and season on with salt and pepper. In the same manner cook all vegetables.\n9. Heat salad oil in a skillet and cook beef strips.\n10. In a bowl combine B. Add bean threads and mix well.\n11. Add vegetables and beef. Mix lightly and transfer to serving bowl.", "has_ingredient_list": true, "extraction_confidence": "high", "ingredients": [{"name": "Beef", "quantity": "5", "unit": "oz", "modifiers": "lean", "package_qty": "150", "package_unit": "g"}, {"name": "Soy Sauce", "quantity": "2", "unit": "tbsp", "modifiers": "", "package_qty": "", "package_unit": ""}, {"name": "Sesame Oil", "quantity": "1", "unit": "tbsp", "modifiers": "", "package_qty": "", "package_unit": ""}, {"name": "Sugar", "quantity": "1", "unit": "tbsp", "modifiers": "", "package_qty": "", "package_unit": ""}, {"name": "Cooking wine", "quantity": "1/2", "unit": "tbsp", "modifiers": "", "package_qty": "", "package_unit": ""}, {"name": "Garlic", "quantity": "1", "unit": "tbsp", "modifiers": "crushed, minced", "package_qty": "", "package_unit": ""}, {"name": "Sesame Seeds", "quantity": "1", "unit": "tbsp", "modifiers": "roasted, crushed", "package_qty": "", "package_unit": ""}, {"name": "Green Onion", "quantity": "1", "unit": "tbsp", "modifiers": "finely chopped", "package_qty": "", "package_unit": ""}, {"name": "Bean Thread Noodles", "quantity": "1", "unit": "oz", "modifiers": "", "package_qty": "50", "package_unit": "g"}, {"name": "Green Onion", "quantity": "1", "unit": "whole", "modifiers": "", "package_qty": "", "package_unit": ""}, {"name": "Shiitake Mushrooms", "quantity": "4", "unit": "whole", "modifiers": "dried, soaked in water", "package_qty": "", "package_unit": ""}, {"name": "Carrot", "quantity": "1", "unit": "oz", "modifiers": "", "package_qty": "30", "package_unit": "g"}, {"name": "Wood Ear Mushrooms", "quantity": "1/3", "unit": "oz", "modifiers": "dried, soaked in water", "package_qty": "10", "package_unit": "g"}, {"name": "Bell Pepper", "quantity": "1", "unit": "whole", "modifiers": "green", "package_qty": "", "package_unit": ""}, {"name": "Salad Oil", "quantity": "2/3", "unit": "tbsp", "modifiers": "", "package_qty": "", "package_unit": ""}, {"name": "Salt", "quantity": "1", "unit": "pinch", "modifiers": "", "package_qty": "", "package_unit": ""}, {"name": "Black Pepper", "quantity": "1", "unit": "pinch", "modifiers": "", "package_qty": "", "package_unit": ""}, {"name": "Sesame Seeds", "quantity": "1", "unit": "tbsp", "modifiers": "roasted", "package_qty": "", "package_unit": ""}, {"name": "Soy Sauce", "quantity": "2/3", "unit": "tbsp", "modifiers": "", "package_qty": "", "package_unit": ""}, {"name": "Sugar", "quantity": "1/2", "unit": "tbsp", "modifiers": "", "package_qty": "", "package_unit": ""}, {"name": "Sesame Oil", "quantity": "1/3", "unit": "tbsp", "modifiers": "", "package_qty": "", "package_unit": ""}, {"name": "Garlic", "quantity": "1", "unit": "tbsp", "modifiers": "crushed", "package_qty": "", "package_unit": ""}, {"name": "Black Pepper", "quantity": "1", "unit": "pinch", "modifiers": "", "package_qty": "", "package_unit": ""}, {"name": "Monosodium Glutamate", "quantity": "1", "unit": "pinch", "modifiers": "", "package_qty": "", "package_unit": ""}]}

matched_ingredients:
  [{"raw_name": "Beef", "ingredient_name": "Beef", "quantity": "5", "unit": "oz"}, {"raw_name": "Soy Sauce", "ingredient_name": "Soy Sauce", "quantity": "2", "unit": "tbsp"}, {"raw_name": "Sesame Oil", "ingredient_name": "Sesame Oil", "quantity": "1", "unit": "tbsp"}, {"raw_name": "Sugar", "ingredient_name": "Sugar", "quantity": "1", "unit": "tbsp"}, {"raw_name": "?", "ingredient_name": null, "quantity": "1/2", "unit": "tbsp"}, {"raw_name": "Garlic", "ingredient_name": "Garlic", "quantity": "1", "unit": "tbsp"}, {"raw_name": "Sesame Seeds", "ingredient_name": "Sesame Seeds", "quantity": "1", "unit": "tbsp"}, {"raw_name": "Green Onion", "ingredient_name": "Green Onion", "quantity": "1", "unit": "tbsp"}, {"raw_name": "Bean Thread Noodles", "ingredient_name": "Bean Thread Noodles", "quantity": "1", "unit": "oz"}, {"raw_name": "Green Onion", "ingredient_name": "Green Onion", "quantity": "1", "unit": "whole"}, {"raw_name": "Shiitake Mushrooms", "ingredient_name": "Shiitake Mushrooms", "quantity": "4", "unit": "whole"}, {"raw_name": "Carrot", "ingredient_name": "Carrot", "quantity": "1", "unit": "oz"}, {"raw_name": "Wood Ear Mushrooms", "ingredient_name": "Wood Ear Mushrooms", "quantity": "1/3", "unit": "oz"}, {"raw_name": "Bell Pepper", "ingredient_name": "Bell Pepper", "quantity": "1", "unit": "whole"}, {"raw_name": "?", "ingredient_name": null, "quantity": "2/3", "unit": "tbsp"}, {"raw_name": "Salt", "ingredient_name": "Salt", "quantity": "1", "unit": "pinch"}, {"raw_name": "Black Pepper", "ingredient_name": "Black Pepper", "quantity": "1", "unit": "pinch"}, {"raw_name": "Sesame Seeds", "ingredient_name": "Sesame Seeds", "quantity": "1", "unit": "tbsp"}, {"raw_name": "Soy Sauce", "ingredient_name": "Soy Sauce", "quantity": "2/3", "unit": "tbsp"}, {"raw_name": "Sugar", "ingredient_name": "Sugar", "quantity": "1/2", "unit": "tbsp"}, {"raw_name": "Sesame Oil", "ingredient_name": "Sesame Oil", "quantity": "1/3", "unit": "tbsp"}, {"raw_name": "Garlic", "ingredient_name": "Garlic", "quantity": "1", "unit": "tbsp"}, {"raw_name": "Black Pepper", "ingredient_name": "Black Pepper", "quantity": "1", "unit": "pinch"}, {"raw_name": "Monosodium Glutamate", "ingredient_name": "Monosodium Glutamate", "quantity": "1", "unit": "pinch"}]


created_at: 2026-04-04 18:10:59.191818
status: success
provider: claude
filename: Asian/Korean/Pork and kimchee casserole (Kimchee Chighe).pdf
recipe_title: Pork and Kimchee Casserole (Kimchee Chighe)
unmatched_items: []
unit_warnings: []
resolution_tiers: {"exact": 6, "failed": 1, "product_exact_fallback": 1}
raw_ai_response:
  {"title": "Pork and Kimchee Casserole (Kimchee Chighe)", "description": "A Korean-inspired casserole combining tender pork with kimchee, tofu, and mushrooms in a savory broth, garnished with green onions.", "servings": 4, "prep_time": 15, "cook_time": 30, "cuisine": "Korean", "tags": ["Stovetop", "Comfort Food", "One Pot", "Weeknight"], "culinary_type": "Stew", "instructions": "Step 1: Slice pork into 3/16 in (0.5 cm). Cut Kimchee into 1/8 in (0.3 cm) length.\nStep 2: In a pan over medium heat, in hot oil, cook and stir pork.\nStep 3: When meat is nearly done, stir drained Kimchee. Reserve the Kimchee liquid.\nStep 4: Stir in the liquid and continue to cook. Add water, bring to a boil; remove from heat.\nStep 5: In a shallow saucepan, arrange cut-up tofu, mushrooms, and slivered green onion.\nStep 6: Add (4) and heat.", "has_ingredient_list": true, "extraction_confidence": "high", "ingredients": [{"name": "Pork Chop", "quantity": "1/2", "unit": "lb", "modifiers": "boneless", "package_qty": "225", "package_unit": "g"}, {"name": "Kimchi", "quantity": "14", "unit": "oz", "modifiers": "Chinese Cabbage", "package_qty": "400", "package_unit": "g"}, {"name": "Water", "quantity": "3", "unit": "cup", "modifiers": "", "package_qty": "", "package_unit": ""}, {"name": "Tofu", "quantity": "12", "unit": "oz", "modifiers": "", "package_qty": "340", "package_unit": "g"}, {"name": "Mushroom", "quantity": "4", "unit": "whole", "modifiers": "dried, soaked in water", "package_qty": "", "package_unit": ""}, {"name": "Green Onion", "quantity": "2", "unit": "whole", "modifiers": "", "package_qty": "", "package_unit": ""}, {"name": "Salad Oil", "quantity": "3", "unit": "tbsp", "modifiers": "", "package_qty": "", "package_unit": ""}]}

matched_ingredients:
  [{"raw_name": "Pork Chop", "ingredient_name": "Pork Chop", "quantity": "1/2", "unit": "lb"}, {"raw_name": "Kimchi", "ingredient_name": "Kimchi", "quantity": "14", "unit": "oz"}, {"raw_name": "Water", "ingredient_name": "Water", "quantity": "3", "unit": "c"}, {"raw_name": "Tofu", "ingredient_name": "Tofu", "quantity": "12", "unit": "oz"}, {"raw_name": "Mushroom", "ingredient_name": "Mushroom", "quantity": "4", "unit": "whole"}, {"raw_name": "Green Onion", "ingredient_name": "Green Onion", "quantity": "2", "unit": "whole"}, {"raw_name": "?", "ingredient_name": null, "quantity": "3", "unit": "tbsp"}]


created_at: 2026-04-04 18:11:25.595061
status: success
provider: claude
filename: Asian/Korean/Rolled rice with seaweed (Kimbap).pdf
recipe_title: Rolled Rice With Seaweed—Kimbap
unmatched_items: []
unit_warnings: []
resolution_tiers: {"exact": 20, "failed": 2, "compound_decompose": 1, "product_exact_fallback": 2}
raw_ai_response:
  {"title": "Rolled Rice With Seaweed\u2014Kimbap", "description": "Korean rolled rice with seaweed (nori) filled with marinated beef, vegetables, and egg. A popular Korean dish served in rolls and cut into bite-sized pieces.", "servings": 4, "prep_time": 45, "cook_time": 15, "cuisine": "Korean", "tags": ["Dinner Party", "Make Ahead", "Few Ingredients", "Stovetop"], "culinary_type": "Main Course", "instructions": "Step 1: Cut beef into strips.\nStep 2: Combine mixture A; add beef to marinate.\nStep 3: Halve cucumber lengthwise, then cut into thin diagonal slices. Sprinkle with salt, let stand until soft; squeeze out water.\nStep 4: Cut carrot into 2 in (5cm) long strips.\nStep 5: Soak dried mushrooms in lukewarm water until soft. Discard stems and slice thinly.\nStep 6: Heat salad oil in a skillet and cook beef over high heat; set aside. Likewise stir-fry each ingredient lightly and season with salt and pepper.\nStep 7: Mix egg and mixture B well. Pour over lightly greased square omelet pan thinly.\nStep 8: When half-set, roll from far aside tightly. When golden brown, remove from heat.\nStep 9: Cut lengthwise in three.\nStep 10: Lay seaweed over bamboo mat. Spoon over 1/3 amount (1 1/6 cups) evenly. Wet your fingers with vinegared water and press gently.\nStep 11: Leave 1/2 in (1.5 cm) on your side, 1 in (2.5 cm) on far side uncovered.\nStep 12: Arrange beef, cucumber, mushrooms, carrot and egg omelet in contrasting colors slightly below center.\nStep 13: Holding edges of fillings, roll in one motion so the uncovered seaweed meet each other.\nStep 14: Roll up and shape. Press ends.\nStep 15: Cut each roll into 8. Wipe the knife with wet cloth after each slice. Arrange on a plate cut side up.", "has_ingredient_list": true, "extraction_confidence": "high", "ingredients": [{"name": "White Rice", "quantity": "3.5", "unit": "cup", "modifiers": "cooked", "package_qty": "", "package_unit": ""}, {"name": "Nori", "quantity": "3", "unit": "whole", "modifiers": "roasted", "package_qty": "", "package_unit": ""}, {"name": "Beef", "quantity": "5", "unit": "oz", "modifiers": "lean", "package_qty": "140", "package_unit": "g"}, {"name": "Cucumber", "quantity": "1", "unit": "whole", "modifiers": "small", "package_qty": "", "package_unit": ""}, {"name": "Carrot", "quantity": "2", "unit": "oz", "modifiers": "", "package_qty": "60", "package_unit": "g"}, {"name": "Mushroom", "quantity": "7", "unit": "whole", "modifiers": "dried", "package_qty": "", "package_unit": ""}, {"name": "Egg", "quantity": "2", "unit": "whole", "modifiers": "beaten", "package_qty": "", "package_unit": ""}, {"name": "Soy Sauce", "quantity": "2", "unit": "tbsp", "modifiers": "", "package_qty": "", "package_unit": ""}, {"name": "Sesame Oil", "quantity": "1", "unit": "tbsp", "modifiers": "", "package_qty": "", "package_unit": ""}, {"name": "Sugar", "quantity": "1", "unit": "tbsp", "modifiers": "", "package_qty": "", "package_unit": ""}, {"name": "Cooking wine", "quantity": "1/2", "unit": "tbsp", "modifiers": "", "package_qty": "", "package_unit": ""}, {"name": "Garlic", "quantity": "1", "unit": "tbsp", "modifiers": "crushed, roasted", "package_qty": "", "package_unit": ""}, {"name": "Sesame Seeds", "quantity": "1", "unit": "tbsp", "modifiers": "roasted", "package_qty": "", "package_unit": ""}, {"name": "Green Onion", "quantity": "1", "unit": "tbsp", "modifiers": "finely chopped", "package_qty": "", "package_unit": ""}, {"name": "Sugar", "quantity": "1", "unit": "tbsp", "modifiers": "", "package_qty": "", "package_unit": ""}, {"name": "Salt", "quantity": "1/4", "unit": "tbsp", "modifiers": "", "package_qty": "", "package_unit": ""}, {"name": "Salad Oil", "quantity": "1", "unit": "tbsp", "modifiers": "", "package_qty": "", "package_unit": ""}, {"name": "Black Pepper", "quantity": "1", "unit": "pinch", "modifiers": "", "package_qty": "", "package_unit": ""}, {"name": "White Rice", "quantity": "3.5", "unit": "cup", "modifiers": "cooked", "package_qty": "", "package_unit": ""}, {"name": "Rice Vinegar", "quantity": "3", "unit": "tbsp", "modifiers": "", "package_qty": "", "package_unit": ""}, {"name": "Sugar", "quantity": "1", "unit": "tbsp", "modifiers": "", "package_qty": "", "package_unit": ""}, {"name": "Salt", "quantity": "1", "unit": "tbsp", "modifiers": "", "package_qty": "", "package_unit": ""}]}

matched_ingredients:
  [{"raw_name": "White Rice", "ingredient_name": "White Rice", "quantity": "3.5", "unit": "c"}, {"raw_name": "Nori", "ingredient_name": "Nori", "quantity": "3", "unit": "whole"}, {"raw_name": "Beef", "ingredient_name": "Beef", "quantity": "5", "unit": "oz"}, {"raw_name": "Cucumber", "ingredient_name": "Cucumber", "quantity": "1", "unit": "whole"}, {"raw_name": "Carrot", "ingredient_name": "Carrot", "quantity": "2", "unit": "oz"}, {"raw_name": "Mushroom", "ingredient_name": "Mushroom", "quantity": "7", "unit": "whole"}, {"raw_name": "Egg", "ingredient_name": "Egg", "quantity": "2", "unit": "whole"}, {"raw_name": "Soy Sauce", "ingredient_name": "Soy Sauce", "quantity": "2", "unit": "tbsp"}, {"raw_name": "Sesame Oil", "ingredient_name": "Sesame Oil", "quantity": "1", "unit": "tbsp"}, {"raw_name": "Sugar", "ingredient_name": "Sugar", "quantity": "1", "unit": "tbsp"}, {"raw_name": "?", "ingredient_name": null, "quantity": "1/2", "unit": "tbsp"}, {"raw_name": "Garlic", "ingredient_name": "Garlic", "quantity": "1", "unit": "tbsp"}, {"raw_name": "Sesame Seeds", "ingredient_name": "Sesame Seeds", "quantity": "1", "unit": "tbsp"}, {"raw_name": "Green Onion", "ingredient_name": "Green Onion", "quantity": "1", "unit": "tbsp"}, {"raw_name": "Sugar", "ingredient_name": "Sugar", "quantity": "1", "unit": "tbsp"}, {"raw_name": "Salt", "ingredient_name": "Salt", "quantity": "1/4", "unit": "tbsp"}, {"raw_name": "?", "ingredient_name": null, "quantity": "1", "unit": "tbsp"}, {"raw_name": "Black Pepper", "ingredient_name": "Black Pepper", "quantity": "1", "unit": "pinch"}, {"raw_name": "White Rice", "ingredient_name": "White Rice", "quantity": "3.5", "unit": "c"}, {"raw_name": "Rice Vinegar", "ingredient_name": "Rice Vinegar", "quantity": "3", "unit": "tbsp"}, {"raw_name": "Sugar", "ingredient_name": "Sugar", "quantity": "1", "unit": "tbsp"}, {"raw_name": "Salt", "ingredient_name": "Salt", "quantity": "1", "unit": "tbsp"}]


created_at: 2026-04-04 18:11:35.751772
status: success
provider: claude
filename: Asian/Korean/Spicy Cauliflower.pdf
recipe_title: Gochujang-Glazed Cauliflower
unmatched_items: []
unit_warnings: []
resolution_tiers: {"exact": 12, "common_name": 1}
raw_ai_response:
  {"title": "Gochujang-Glazed Cauliflower", "description": "Crispy battered cauliflower florets coated in a savory-sweet gochujang glaze with maple syrup, soy sauce, and mirin, served over steamed rice with sesame seeds and scallions.", "servings": 4, "prep_time": 20, "cook_time": 25, "cuisine": "Korean", "tags": ["Stovetop", "Vegetarian", "Spicy", "Savory"], "culinary_type": "Main Course", "instructions": "Step 1: Preheat oven to 400\u00b0F. Whisk flour, cornstarch, baking powder, and salt in a large bowl to combine. Whisk in 1 cup water to create a thin pancake-like batter (you may need to add more water to achieve the right consistency). Using your hand or 2 forks and working one at a time, dip cauliflower florets into batter, letting excess drip back into bowl, and divide between 2 parchment-lined rimmed baking sheets. Bake cauliflower until edges are just beginning to turn golden brown, 20-25 minutes.\nStep 2: Meanwhile, whisk gochujang, soy sauce, maple syrup, mirin, and 1 cup water in a medium bowl. Pour sauce into a skillet large enough to hold all of the cauliflower florets (a 12\" skillet should do it) and bring to a simmer over medium heat, whisking occasionally. Cook, whisking, until sauce is thick enough to coat a spoon, 8-10 minutes. Stir in vinegar and remove pan from heat.\nStep 3: Using tongs, transfer cauliflower to skillet with glaze and toss until florets are evenly coated in sauce.\nStep 4: Divide rice among shallow bowls and spoon cauliflower over. Top with sesame seeds and scallions.", "has_ingredient_list": true, "extraction_confidence": "high", "ingredients": [{"name": "All-Purpose Flour", "quantity": "1", "unit": "cup", "modifiers": "", "package_qty": "125", "package_unit": "g"}, {"name": "Cornstarch", "quantity": "1/2", "unit": "cup", "modifiers": "", "package_qty": "", "package_unit": ""}, {"name": "Baking Powder", "quantity": "2", "unit": "tsp", "modifiers": "", "package_qty": "", "package_unit": ""}, {"name": "Salt", "quantity": "1", "unit": "tsp", "modifiers": "", "package_qty": "", "package_unit": ""}, {"name": "Cauliflower", "quantity": "1", "unit": "head", "modifiers": "large, cut into large florets", "package_qty": "2.5", "package_unit": "lb"}, {"name": "Gochujang", "quantity": "1/4", "unit": "cup", "modifiers": "", "package_qty": "", "package_unit": ""}, {"name": "Soy Sauce", "quantity": "3", "unit": "tbsp", "modifiers": "", "package_qty": "", "package_unit": ""}, {"name": "Maple Syrup", "quantity": "2", "unit": "tbsp", "modifiers": "", "package_qty": "", "package_unit": ""}, {"name": "Mirin", "quantity": "2", "unit": "tbsp", "modifiers": "", "package_qty": "", "package_unit": ""}, {"name": "Rice Vinegar", "quantity": "2", "unit": "tsp", "modifiers": "unseasoned", "package_qty": "", "package_unit": ""}, {"name": "Rice", "quantity": "1", "unit": "whole", "modifiers": "steamed", "package_qty": "", "package_unit": ""}, {"name": "Sesame Seeds", "quantity": "1", "unit": "whole", "modifiers": "toasted", "package_qty": "", "package_unit": ""}, {"name": "Scallion", "quantity": "1", "unit": "whole", "modifiers": "thinly sliced", "package_qty": "", "package_unit": ""}]}

matched_ingredients:
  [{"raw_name": "All-Purpose Flour", "ingredient_name": "All-Purpose Flour", "quantity": "1", "unit": "c"}, {"raw_name": "Cornstarch", "ingredient_name": "Cornstarch", "quantity": "1/2", "unit": "c"}, {"raw_name": "Baking Powder", "ingredient_name": "Baking Powder", "quantity": "2", "unit": "tsp"}, {"raw_name": "Salt", "ingredient_name": "Salt", "quantity": "1", "unit": "tsp"}, {"raw_name": "Cauliflower", "ingredient_name": "Cauliflower", "quantity": "1", "unit": "head"}, {"raw_name": "Gochujang", "ingredient_name": "Gochujang", "quantity": "1/4", "unit": "c"}, {"raw_name": "Soy Sauce", "ingredient_name": "Soy Sauce", "quantity": "3", "unit": "tbsp"}, {"raw_name": "Maple Syrup", "ingredient_name": "Maple Syrup", "quantity": "2", "unit": "tbsp"}, {"raw_name": "Mirin", "ingredient_name": "Mirin", "quantity": "2", "unit": "tbsp"}, {"raw_name": "Rice Vinegar", "ingredient_name": "Rice Vinegar", "quantity": "2", "unit": "tsp"}, {"raw_name": "Rice", "ingredient_name": "Rice", "quantity": "1", "unit": "whole"}, {"raw_name": "Sesame Seeds", "ingredient_name": "Sesame Seeds", "quantity": "1", "unit": "whole"}, {"raw_name": "Green Onion", "ingredient_name": "Green Onion", "quantity": "1", "unit": "whole"}]


created_at: 2026-04-04 18:11:56.749664
status: flagged
provider: claude
filename: Asian/Korean/Vegetables and beef on rice (Bibimbap).pdf
recipe_title: Vegetables And Beef On Rice - Bibimbap
unmatched_items: [{"raw_name": "Fiddlehead"}]
unit_warnings: []
raw_ai_response:
  {"title": "Vegetables And Beef On Rice - Bibimbap", "description": "A Korean rice bowl topped with seasoned vegetables, beef, and a fried egg, served with Kochujang hot sauce and sesame oil. Ingredients are mixed together when eating.", "servings": 1, "prep_time": 15, "cook_time": 10, "cuisine": "Korean", "tags": ["Stovetop", "Quick", "One Pan", "Comfort Food"], "culinary_type": "Main Course", "instructions": "Step 1: Cut beef into strips and marinate 5 minutes. In hot oil cook briefly; set aside. Place hot cooked rice in serving bowl.\nStep 2: Arrange 4 kinds of seasoned vegetable on rice. Place beef in center.\nStep 3: Heat oil in a skillet. Drop egg and cook.\nStep 4: Place fried egg on top of beef. Serve with Kochujang (hot sauce) and sesame oil in small dish. Mix everything when eating.", "has_ingredient_list": true, "extraction_confidence": "high", "ingredients": [{"name": "Rice", "quantity": "1", "unit": "cup", "modifiers": "cooked", "package_qty": "", "package_unit": ""}, {"name": "Beef", "quantity": "1", "unit": "oz", "modifiers": "", "package_qty": "30", "package_unit": "g"}, {"name": "Radish", "quantity": "1", "unit": "oz", "modifiers": "seasoned", "package_qty": "30", "package_unit": "g"}, {"name": "Carrot", "quantity": "1", "unit": "oz", "modifiers": "seasoned", "package_qty": "30", "package_unit": "g"}, {"name": "Spinach", "quantity": "1", "unit": "oz", "modifiers": "seasoned", "package_qty": "30", "package_unit": "g"}, {"name": "Soybean Sprouts", "quantity": "1", "unit": "oz", "modifiers": "seasoned", "package_qty": "30", "package_unit": "g"}, {"name": "Fiddlehead", "quantity": "1", "unit": "oz", "modifiers": "seasoned", "package_qty": "30", "package_unit": "g"}, {"name": "Sesame Oil", "quantity": "1", "unit": "whole", "modifiers": "", "package_qty": "", "package_unit": ""}, {"name": "Soy Sauce", "quantity": "1/2", "unit": "tsp", "modifiers": "", "package_qty": "", "package_unit": ""}, {"name": "Sesame Oil", "quantity": "2/3", "unit": "tsp", "modifiers": "", "package_qty": "", "package_unit": ""}, {"name": "Sugar", "quantity": "1/4", "unit": "tsp", "modifiers": "", "package_qty": "", "package_unit": ""}, {"name": "Cooking Wine", "quantity": "1/4", "unit": "tsp", "modifiers": "", "package_qty": "", "package_unit": ""}, {"name": "Egg", "quantity": "1", "unit": "whole", "modifiers": "", "package_qty": "", "package_unit": ""}, {"name": "Gochujang", "quantity": "1", "unit": "whole", "modifiers": "", "package_qty": "", "package_unit": ""}]}

matched_ingredients:
  [{"raw_name": "Rice", "ingredient_name": "Rice", "quantity": "1", "unit": "c"}, {"raw_name": "Beef", "ingredient_name": "Beef", "quantity": "1", "unit": "oz"}, {"raw_name": "Radish", "ingredient_name": "Radish", "quantity": "1", "unit": "oz"}, {"raw_name": "Carrot", "ingredient_name": "Carrot", "quantity": "1", "unit": "oz"}, {"raw_name": "Spinach", "ingredient_name": "Spinach", "quantity": "1", "unit": "oz"}, {"raw_name": "?", "ingredient_name": null, "quantity": "1", "unit": "oz"}, {"raw_name": "Sesame Oil", "ingredient_name": "Sesame Oil", "quantity": "1", "unit": "whole"}, {"raw_name": "Soy Sauce", "ingredient_name": "Soy Sauce", "quantity": "1/2", "unit": "tsp"}, {"raw_name": "Sesame Oil", "ingredient_name": "Sesame Oil", "quantity": "2/3", "unit": "tsp"}, {"raw_name": "Sugar", "ingredient_name": "Sugar", "quantity": "1/4", "unit": "tsp"}, {"raw_name": "?", "ingredient_name": null, "quantity": "1/4", "unit": "tsp"}, {"raw_name": "Egg", "ingredient_name": "Egg", "quantity": "1", "unit": "whole"}, {"raw_name": "Gochujang", "ingredient_name": "Gochujang", "quantity": "1", "unit": "whole"}]

resolution_tiers:
  {"exact": 11, "failed": 3, "product_off_fallback": 1, "compound_decompose": 1, "product_exact_fallback": 1}


created_at: 2026-04-04 18:12:13.309280
status: success
provider: claude
filename: Asian/Thai/Chicken with cashews.pdf
recipe_title: Chicken with Cashews
unmatched_items: []
unit_warnings: []
raw_ai_response:
  {"title": "Chicken with Cashews", "description": "A quick stir-fry dish featuring tender chicken breast with cashews, green onions, garlic, and red Thai chilies in an oyster and soy sauce base.", "servings": 4, "prep_time": 15, "cook_time": 10, "cuisine": "Thai", "tags": ["Quick", "Stovetop", "Weeknight", "Nut Free Alternative Available", "Comfort Food", "High Protein"], "culinary_type": "Main Course", "instructions": "Step 1: Heat oil in wok and add garlic. Stir-fry adding chicken and stir until opaque.\nStep 2: Add onion and sauces. Stir. Add spring onion.\nStep 3: Add nuts and chilies mixing quickly to heat. Remove and place on platter.", "has_ingredient_list": true, "extraction_confidence": "high", "ingredients": [{"name": "Chicken Breast", "quantity": "3", "unit": "whole", "modifiers": "cut in large bite size pieces", "package_qty": "", "package_unit": ""}, {"name": "Green Onion", "quantity": "2", "unit": "whole", "modifiers": "chopped in 1-inch pieces", "package_qty": "", "package_unit": ""}, {"name": "White Onion", "quantity": "1", "unit": "whole", "modifiers": "quartered", "package_qty": "", "package_unit": ""}, {"name": "Vegetable Oil", "quantity": "5", "unit": "tbsp", "modifiers": "", "package_qty": "", "package_unit": ""}, {"name": "Garlic", "quantity": "3", "unit": "clove", "modifiers": "chopped small", "package_qty": "", "package_unit": ""}, {"name": "Oyster Sauce", "quantity": "1", "unit": "tbsp", "modifiers": "", "package_qty": "", "package_unit": ""}, {"name": "Soy Sauce", "quantity": "1/2", "unit": "tsp", "modifiers": "", "package_qty": "", "package_unit": ""}, {"name": "Sugar", "quantity": "1", "unit": "pinch", "modifiers": "brown", "package_qty": "", "package_unit": ""}, {"name": "Thai Bird Chili", "quantity": "1", "unit": "whole", "modifiers": "deep fried quickly", "package_qty": "", "package_unit": ""}, {"name": "Cashew", "quantity": "1", "unit": "whole", "modifiers": "", "package_qty": "", "package_unit": ""}]}

matched_ingredients:
  [{"raw_name": "Chicken Breast", "ingredient_name": "Chicken Breast", "quantity": "3", "unit": "whole"}, {"raw_name": "Green Onion", "ingredient_name": "Green Onion", "quantity": "2", "unit": "whole"}, {"raw_name": "?", "ingredient_name": null, "quantity": "1", "unit": "whole"}, {"raw_name": "Vegetable Oil", "ingredient_name": "Vegetable Oil", "quantity": "5", "unit": "tbsp"}, {"raw_name": "Garlic", "ingredient_name": "Garlic", "quantity": "3", "unit": "clove"}, {"raw_name": "Oyster Sauce", "ingredient_name": "Oyster Sauce", "quantity": "1", "unit": "tbsp"}, {"raw_name": "Soy Sauce", "ingredient_name": "Soy Sauce", "quantity": "1/2", "unit": "tsp"}, {"raw_name": "Brown Sugar", "ingredient_name": "Brown Sugar", "quantity": "1", "unit": "pinch"}, {"raw_name": "?", "ingredient_name": null, "quantity": "1", "unit": "whole"}, {"raw_name": "Cashew", "ingredient_name": "Cashew", "quantity": "1", "unit": "whole"}]

resolution_tiers:
  {"exact": 7, "failed": 2, "compound_decompose": 1, "product_off_fallback": 1, "unknown": 1, "product_exact_fallback": 1}


created_at: 2026-04-04 18:12:32.356616
status: success
provider: claude
filename: Asian/Thai/Chili and honey-cured dried beef.pdf
recipe_title: Chilli and Honey-Cured Dried Beef
unmatched_items: []
unit_warnings: ["\"serving\" for Dipping Sauce"]
resolution_tiers: {"exact": 8, "failed": 2, "product_off_fallback": 2}
raw_ai_response:
  {"title": "Chilli and Honey-Cured Dried Beef", "description": "A traditional South-East Asian dish where beef is cured with chilli, lemongrass, garlic, and honey, then dried and grilled. The drying process intensifies flavours while the honey adds subtle sweetness.", "servings": 6, "prep_time": 15, "cook_time": 120, "cuisine": "Vietnamese", "tags": ["Grilled", "Make Ahead", "Spicy", "Savory", "Smoky", "Hearty"], "culinary_type": "Main Course", "instructions": "Step 1: Trim the beef and cut it across the grain into thin, rectangular slices, then set aside.\nStep 2: Using a mortar and pestle, grind the chopped lemongrass, garlic and chillies to a paste. Stir in the honey, nuoc mam and soy sauce. Put the beef into a bowl, add the paste and rub it into the meat.\nStep 3: Spread out the meat on a wire rack and place it in the refrigerator, uncovered, for 2 days, or until dry and hard.\nStep 4: Cook the dried beef on the barbecue or under a conventional grill (broiler) until heated through, and serve it with rice wrappers, fresh herbs and a dipping sauce.", "has_ingredient_list": true, "extraction_confidence": "high", "ingredients": [{"name": "Beef Sirloin", "quantity": "450", "unit": "g", "modifiers": "lean", "package_qty": "", "package_unit": ""}, {"name": "Lemongrass", "quantity": "2", "unit": "stalk", "modifiers": "trimmed, chopped", "package_qty": "", "package_unit": ""}, {"name": "Garlic", "quantity": "2", "unit": "clove", "modifiers": "chopped", "package_qty": "", "package_unit": ""}, {"name": "Serrano Pepper", "quantity": "2", "unit": "whole", "modifiers": "seeded, chopped", "package_qty": "", "package_unit": ""}, {"name": "Honey", "quantity": "30", "unit": "ml", "modifiers": "", "package_qty": "", "package_unit": ""}, {"name": "Nuoc Cham", "quantity": "15", "unit": "ml", "modifiers": "", "package_qty": "", "package_unit": ""}, {"name": "Soy Sauce", "quantity": "1", "unit": "tbsp", "modifiers": "", "package_qty": "", "package_unit": ""}, {"name": "Rice Paper", "quantity": "1", "unit": "package", "modifiers": "", "package_qty": "", "package_unit": ""}, {"name": "Fresh Herbs", "quantity": "1", "unit": "bunch", "modifiers": "", "package_qty": "", "package_unit": ""}, {"name": "Dipping Sauce", "quantity": "1", "unit": "serving", "modifiers": "", "package_qty": "", "package_unit": ""}]}

matched_ingredients:
  [{"raw_name": "Beef Sirloin", "ingredient_name": "Beef Sirloin", "quantity": "450", "unit": "g"}, {"raw_name": "Lemongrass", "ingredient_name": "Lemongrass", "quantity": "2", "unit": "stalk"}, {"raw_name": "Garlic", "ingredient_name": "Garlic", "quantity": "2", "unit": "clove"}, {"raw_name": "Serrano Pepper", "ingredient_name": "Serrano Pepper", "quantity": "2", "unit": "whole"}, {"raw_name": "Honey", "ingredient_name": "Honey", "quantity": "30", "unit": "ml"}, {"raw_name": "Nuoc Cham", "ingredient_name": "Nuoc Cham", "quantity": "15", "unit": "ml"}, {"raw_name": "Soy Sauce", "ingredient_name": "Soy Sauce", "quantity": "1", "unit": "tbsp"}, {"raw_name": "Rice Paper", "ingredient_name": "Rice Paper", "quantity": "1", "unit": "pkg"}, {"raw_name": "?", "ingredient_name": null, "quantity": "1", "unit": "bunch"}, {"raw_name": "?", "ingredient_name": null, "quantity": "1", "unit": "serving"}]


created_at: 2026-04-04 18:12:56.537611
status: success
provider: claude
filename: Asian/Thai/Coconut-Curry Lentil Soup with Spicy Shrimp.pdf
recipe_title: Coconut-Curry Lentil Soup with Spicy Shrimp
unmatched_items: []
unit_warnings: []
resolution_tiers: {"exact": 27}
raw_ai_response:
  {"title": "Coconut-Curry Lentil Soup with Spicy Shrimp", "description": "A fragrant coconut and lentil soup infused with warm spices, topped with spicy pan-seared shrimp. This elegant dish combines earthy lentils with aromatic curry flavors and succulent seafood.", "servings": 4, "prep_time": 20, "cook_time": 35, "cuisine": "Thai", "tags": ["Stovetop", "Comfort Food", "Spicy", "Seafood", "Weeknight"], "culinary_type": "Soup", "instructions": "1. For spicy shrimp, peel and devein shrimp; rinse shrimp and pat dry with paper towels. In a bowl combine oil, Sriracha hot sauce, dash cumin, dash turmeric, dash curry powder, cayenne pepper, dash salt, and dash black pepper. Add shrimp and stir to coat with oil mixture. Cover and chill in the refrigerator while preparing soup.\n2. For soup, rinse and drain the red and green lentils; set aside. In a small skillet toast the 1 teaspoon cumin, the 1 teaspoon turmeric, the 1 teaspoon curry powder, and ginger over low heat for 30 seconds or until fragrant. Remove from heat.\n3. In a large skillet heat the butter over medium heat until melted. Add the carrots and onion and cook for 3 minutes or until onion is almost tender, stirring occasionally. Add the garlic and cook for 2 minutes longer. Add chicken stock, stirring to scrape up crusty browned bits. Stir in the lentils, toasted spices, coconut milk, tomato paste, and curry pastes. Bring to a boil over medium heat; reduce heat. Simmer for 15 to 20 minutes or until lentils are tender. Season with salt and black pepper.\n4. Heat an oiled large skillet over high heat. Add shrimp and cook for 3 minutes on each side or until shrimp are opaque.\n5. To serve, ladle soup into bowls; place 3 shrimp in the middle of each bowl. Scatter green onions around shrimp.", "has_ingredient_list": true, "extraction_confidence": "high", "ingredients": [{"name": "Shrimp", "quantity": "12", "unit": "whole", "modifiers": "fresh, in shells", "package_qty": "", "package_unit": ""}, {"name": "Olive Oil", "quantity": "1/4", "unit": "cup", "modifiers": "", "package_qty": "", "package_unit": ""}, {"name": "Sriracha", "quantity": "1", "unit": "tbsp", "modifiers": "", "package_qty": "", "package_unit": ""}, {"name": "Cumin", "quantity": "1", "unit": "dash", "modifiers": "ground", "package_qty": "", "package_unit": ""}, {"name": "Turmeric", "quantity": "1", "unit": "dash", "modifiers": "ground", "package_qty": "", "package_unit": ""}, {"name": "Curry Powder", "quantity": "1", "unit": "dash", "modifiers": "", "package_qty": "", "package_unit": ""}, {"name": "Cayenne Pepper", "quantity": "1", "unit": "dash", "modifiers": "", "package_qty": "", "package_unit": ""}, {"name": "Salt", "quantity": "1", "unit": "dash", "modifiers": "", "package_qty": "", "package_unit": ""}, {"name": "Black Pepper", "quantity": "1", "unit": "dash", "modifiers": "", "package_qty": "", "package_unit": ""}, {"name": "Red Lentils", "quantity": "1/2", "unit": "cup", "modifiers": "", "package_qty": "", "package_unit": ""}, {"name": "Lentils", "quantity": "1/2", "unit": "cup", "modifiers": "green", "package_qty": "", "package_unit": ""}, {"name": "Cumin", "quantity": "1", "unit": "tsp", "modifiers": "ground", "package_qty": "", "package_unit": ""}, {"name": "Turmeric", "quantity": "1", "unit": "tsp", "modifiers": "ground", "package_qty": "", "package_unit": ""}, {"name": "Curry Powder", "quantity": "1", "unit": "tsp", "modifiers": "", "package_qty": "", "package_unit": ""}, {"name": "Ginger", "quantity": "1", "unit": "tsp", "modifiers": "ground", "package_qty": "", "package_unit": ""}, {"name": "Butter", "quantity": "3", "unit": "tbsp", "modifiers": "unsalted", "package_qty": "", "package_unit": ""}, {"name": "Carrot", "quantity": "2", "unit": "whole", "modifiers": "diced, large", "package_qty": "", "package_unit": ""}, {"name": "Onion", "quantity": "1", "unit": "whole", "modifiers": "diced, medium white", "package_qty": "", "package_unit": ""}, {"name": "Garlic", "quantity": "2", "unit": "clove", "modifiers": "minced", "package_qty": "", "package_unit": ""}, {"name": "Chicken Stock", "quantity": "1", "unit": "cup", "modifiers": "", "package_qty": "", "package_unit": ""}, {"name": "Coconut Milk", "quantity": "1", "unit": "can", "modifiers": "unsweetened, 15 ounces", "package_qty": "15", "package_unit": "oz"}, {"name": "Tomato Paste", "quantity": "1.5", "unit": "tsp", "modifiers": "", "package_qty": "", "package_unit": ""}, {"name": "Red Curry Paste", "quantity": "1", "unit": "tsp", "modifiers": "", "package_qty": "", "package_unit": ""}, {"name": "Yellow Curry Paste", "quantity": "1", "unit": "tsp", "modifiers": "", "package_qty": "", "package_unit": ""}, {"name": "Salt", "quantity": "1", "unit": "pinch", "modifiers": "", "package_qty": "", "package_unit": ""}, {"name": "Black Pepper", "quantity": "1", "unit": "pinch", "modifiers": "", "package_qty": "", "package_unit": ""}, {"name": "Green Onion", "quantity": "1", "unit": "pinch", "modifiers": "sliced", "package_qty": "", "package_unit": ""}]}

matched_ingredients:
  [{"raw_name": "Shrimp", "ingredient_name": "Shrimp", "quantity": "12", "unit": "whole"}, {"raw_name": "Olive Oil", "ingredient_name": "Olive Oil", "quantity": "1/4", "unit": "c"}, {"raw_name": "Sriracha", "ingredient_name": "Sriracha", "quantity": "1", "unit": "tbsp"}, {"raw_name": "Cumin", "ingredient_name": "Cumin", "quantity": "1", "unit": "dash"}, {"raw_name": "Turmeric", "ingredient_name": "Turmeric", "quantity": "1", "unit": "dash"}, {"raw_name": "Curry Powder", "ingredient_name": "Curry Powder", "quantity": "1", "unit": "dash"}, {"raw_name": "Cayenne Pepper", "ingredient_name": "Cayenne Pepper", "quantity": "1", "unit": "dash"}, {"raw_name": "Salt", "ingredient_name": "Salt", "quantity": "1", "unit": "dash"}, {"raw_name": "Black Pepper", "ingredient_name": "Black Pepper", "quantity": "1", "unit": "dash"}, {"raw_name": "Red Lentils", "ingredient_name": "Red Lentils", "quantity": "1/2", "unit": "c"}, {"raw_name": "Lentils", "ingredient_name": "Lentils", "quantity": "1/2", "unit": "c"}, {"raw_name": "Cumin", "ingredient_name": "Cumin", "quantity": "1", "unit": "tsp"}, {"raw_name": "Turmeric", "ingredient_name": "Turmeric", "quantity": "1", "unit": "tsp"}, {"raw_name": "Curry Powder", "ingredient_name": "Curry Powder", "quantity": "1", "unit": "tsp"}, {"raw_name": "Ginger", "ingredient_name": "Ginger", "quantity": "1", "unit": "tsp"}, {"raw_name": "Butter", "ingredient_name": "Butter", "quantity": "3", "unit": "tbsp"}, {"raw_name": "Carrot", "ingredient_name": "Carrot", "quantity": "2", "unit": "whole"}, {"raw_name": "Onion", "ingredient_name": "Onion", "quantity": "1", "unit": "whole"}, {"raw_name": "Garlic", "ingredient_name": "Garlic", "quantity": "2", "unit": "clove"}, {"raw_name": "Chicken Stock", "ingredient_name": "Chicken Stock", "quantity": "1", "unit": "c"}, {"raw_name": "Coconut Milk", "ingredient_name": "Coconut Milk", "quantity": "1", "unit": "can"}, {"raw_name": "Tomato Paste", "ingredient_name": "Tomato Paste", "quantity": "1.5", "unit": "tsp"}, {"raw_name": "Red Curry Paste", "ingredient_name": "Red Curry Paste", "quantity": "1", "unit": "tsp"}, {"raw_name": "Yellow Curry Paste", "ingredient_name": "Yellow Curry Paste", "quantity": "1", "unit": "tsp"}, {"raw_name": "Salt", "ingredient_name": "Salt", "quantity": "1", "unit": "pinch"}, {"raw_name": "Black Pepper", "ingredient_name": "Black Pepper", "quantity": "1", "unit": "pinch"}, {"raw_name": "Green Onion", "ingredient_name": "Green Onion", "quantity": "1", "unit": "pinch"}]


created_at: 2026-04-04 18:13:32.854424
status: success
provider: claude
filename: Asian/Thai/Garlic ginger grilled tuna.pdf
recipe_title: Garlic Ginger Grilled Tuna
unmatched_items: []
unit_warnings: []
resolution_tiers: {"exact": 29}
raw_ai_response:
  {"title": "Garlic Ginger Grilled Tuna", "description": "Fresh tuna steaks grilled with a ginger-garlic marinade, served with your choice of Southeast Asian Pesto or Mango Chile Salsa. A light, flavorful seafood dish from Stop and Smell the Rosemary.", "servings": 4, "prep_time": 15, "cook_time": 10, "cuisine": "Thai", "tags": ["Grilled", "Quick", "High Protein", "Seafood"], "culinary_type": "Main Course", "instructions": "Step 1: Brush tuna steaks with olive oil and season with pepper. Refrigerate until ready to use. Step 2: Combine minced fresh ginger, minced garlic, salt, white pepper, lemon juice, and white wine vinegar in a saucepan. Boil 2 to 3 minutes. Step 3: Cool slightly and whisk in olive oil. Step 4: Prepare grill. Brush tuna with marinade, then grill quickly until it feels springy to the touch, about 5 minutes per side. Step 5: Serve with Southeast Asian Pesto or Mango Chile Salsa.", "has_ingredient_list": true, "extraction_confidence": "high", "ingredients": [{"name": "Tuna", "quantity": "4", "unit": "whole", "modifiers": "fresh, steaks (6 ounces each)", "package_qty": "", "package_unit": ""}, {"name": "Olive Oil", "quantity": "1", "unit": "", "modifiers": "extra virgin", "package_qty": "", "package_unit": ""}, {"name": "Black Pepper", "quantity": "1", "unit": "pinch", "modifiers": "freshly ground", "package_qty": "", "package_unit": ""}, {"name": "Ginger", "quantity": "1", "unit": "tbsp", "modifiers": "minced, fresh", "package_qty": "", "package_unit": ""}, {"name": "Garlic", "quantity": "1", "unit": "tbsp", "modifiers": "minced", "package_qty": "", "package_unit": ""}, {"name": "Salt", "quantity": "1", "unit": "tsp", "modifiers": "", "package_qty": "", "package_unit": ""}, {"name": "White Pepper", "quantity": "1/2", "unit": "tsp", "modifiers": "", "package_qty": "", "package_unit": ""}, {"name": "Lemon Juice", "quantity": "1/4", "unit": "cup", "modifiers": "fresh", "package_qty": "", "package_unit": ""}, {"name": "White Wine Vinegar", "quantity": "1/4", "unit": "cup", "modifiers": "", "package_qty": "", "package_unit": ""}, {"name": "Garlic", "quantity": "2", "unit": "clove", "modifiers": "large", "package_qty": "", "package_unit": ""}, {"name": "Ginger", "quantity": "1/2", "unit": "cup", "modifiers": "coarsely chopped, fresh", "package_qty": "", "package_unit": ""}, {"name": "Lemongrass", "quantity": "1/4", "unit": "cup", "modifiers": "sliced, fresh, fleshy part only", "package_qty": "", "package_unit": ""}, {"name": "Green Onion", "quantity": "1/2", "unit": "cup", "modifiers": "chopped", "package_qty": "", "package_unit": ""}, {"name": "Basil", "quantity": "1/2", "unit": "cup", "modifiers": "chopped, fresh", "package_qty": "", "package_unit": ""}, {"name": "Parsley", "quantity": "1/2", "unit": "cup", "modifiers": "chopped, fresh", "package_qty": "", "package_unit": ""}, {"name": "Coriander", "quantity": "1/2", "unit": "cup", "modifiers": "chopped, fresh", "package_qty": "", "package_unit": ""}, {"name": "Jalape\u00f1o", "quantity": "1/2", "unit": "tsp", "modifiers": "chopped, fresh", "package_qty": "", "package_unit": ""}, {"name": "Mixed nuts", "quantity": "1/2", "unit": "cup", "modifiers": "roasted", "package_qty": "", "package_unit": ""}, {"name": "Rice Vinegar", "quantity": "1/4", "unit": "cup", "modifiers": "", "package_qty": "", "package_unit": ""}, {"name": "Salt", "quantity": "1", "unit": "tsp", "modifiers": "", "package_qty": "", "package_unit": ""}, {"name": "Olive Oil", "quantity": "2/3", "unit": "cup", "modifiers": "", "package_qty": "", "package_unit": ""}, {"name": "Sesame Oil", "quantity": "2", "unit": "tsp", "modifiers": "", "package_qty": "", "package_unit": ""}, {"name": "Mango", "quantity": "3", "unit": "whole", "modifiers": "peeled, pitted, chopped", "package_qty": "", "package_unit": ""}, {"name": "Bell Pepper", "quantity": "1", "unit": "whole", "modifiers": "seeded, minced, red", "package_qty": "", "package_unit": ""}, {"name": "Red Onion", "quantity": "1/2", "unit": "whole", "modifiers": "minced, large", "package_qty": "", "package_unit": ""}, {"name": "Coriander", "quantity": "2", "unit": "tbsp", "modifiers": "minced, fresh", "package_qty": "", "package_unit": ""}, {"name": "Serrano Pepper", "quantity": "1", "unit": "whole", "modifiers": "seeded, minced", "package_qty": "", "package_unit": ""}, {"name": "Lime Juice", "quantity": "1/4", "unit": "cup", "modifiers": "fresh", "package_qty": "", "package_unit": ""}, {"name": "Pineapple Juice", "quantity": "1/4", "unit": "cup", "modifiers": "fresh", "package_qty": "", "package_unit": ""}]}

matched_ingredients:
  [{"raw_name": "Tuna", "ingredient_name": "Tuna", "quantity": "4", "unit": "whole"}, {"raw_name": "Olive Oil", "ingredient_name": "Olive Oil", "quantity": "1", "unit": ""}, {"raw_name": "Black Pepper", "ingredient_name": "Black Pepper", "quantity": "1", "unit": "pinch"}, {"raw_name": "Ginger", "ingredient_name": "Ginger", "quantity": "1", "unit": "tbsp"}, {"raw_name": "Garlic", "ingredient_name": "Garlic", "quantity": "1", "unit": "tbsp"}, {"raw_name": "Salt", "ingredient_name": "Salt", "quantity": "1", "unit": "tsp"}, {"raw_name": "White Pepper", "ingredient_name": "White Pepper", "quantity": "1/2", "unit": "tsp"}, {"raw_name": "Lemon Juice", "ingredient_name": "Lemon Juice", "quantity": "1/4", "unit": "c"}, {"raw_name": "White Wine Vinegar", "ingredient_name": "White Wine Vinegar", "quantity": "1/4", "unit": "c"}, {"raw_name": "Garlic", "ingredient_name": "Garlic", "quantity": "2", "unit": "clove"}, {"raw_name": "Ginger", "ingredient_name": "Ginger", "quantity": "1/2", "unit": "c"}, {"raw_name": "Lemongrass", "ingredient_name": "Lemongrass", "quantity": "1/4", "unit": "c"}, {"raw_name": "Green Onion", "ingredient_name": "Green Onion", "quantity": "1/2", "unit": "c"}, {"raw_name": "Basil", "ingredient_name": "Basil", "quantity": "1/2", "unit": "c"}, {"raw_name": "Parsley", "ingredient_name": "Parsley", "quantity": "1/2", "unit": "c"}, {"raw_name": "Coriander", "ingredient_name": "Coriander", "quantity": "1/2", "unit": "c"}, {"raw_name": "Jalape\u00f1o", "ingredient_name": "Jalape\u00f1o", "quantity": "1/2", "unit": "tsp"}, {"raw_name": "Mixed nuts", "ingredient_name": "Mixed nuts", "quantity": "1/2", "unit": "c"}, {"raw_name": "Rice Vinegar", "ingredient_name": "Rice Vinegar", "quantity": "1/4", "unit": "c"}, {"raw_name": "Salt", "ingredient_name": "Salt", "quantity": "1", "unit": "tsp"}, {"raw_name": "Olive Oil", "ingredient_name": "Olive Oil", "quantity": "2/3", "unit": "c"}, {"raw_name": "Sesame Oil", "ingredient_name": "Sesame Oil", "quantity": "2", "unit": "tsp"}, {"raw_name": "Mango", "ingredient_name": "Mango", "quantity": "3", "unit": "whole"}, {"raw_name": "Bell Pepper", "ingredient_name": "Bell Pepper", "quantity": "1", "unit": "whole"}, {"raw_name": "Red Onion", "ingredient_name": "Red Onion", "quantity": "1/2", "unit": "whole"}, {"raw_name": "Coriander", "ingredient_name": "Coriander", "quantity": "2", "unit": "tbsp"}, {"raw_name": "Serrano Pepper", "ingredient_name": "Serrano Pepper", "quantity": "1", "unit": "whole"}, {"raw_name": "Lime Juice", "ingredient_name": "Lime Juice", "quantity": "1/4", "unit": "c"}, {"raw_name": "Pineapple Juice", "ingredient_name": "Pineapple Juice", "quantity": "1/4", "unit": "c"}]


created_at: 2026-04-04 18:13:42.771329
status: success
provider: claude
filename: Asian/Thai/Lite pad Thai.pdf
recipe_title: An easy Thai stir-fry
unmatched_items: []
unit_warnings: []
resolution_tiers: {"common_name": 1, "exact": 12, "failed": 1, "product_off_fallback": 1}
raw_ai_response:
  {"title": "An easy Thai stir-fry", "description": "A healthful Thai stir-fry featuring boneless chicken strips, bean sprouts, noodles and shrimp with minimal sodium, seasoned with garlic and cilantro.", "servings": 4, "prep_time": 15, "cook_time": 10, "cuisine": "Thai", "tags": ["Quick", "Stovetop", "Low Sodium", "High Protein"], "culinary_type": "Main Course", "instructions": "Cook linguine according to package directions, omitting salt; drain. Combine tomato juice, soy sauce, vinegar, sugar and cornstarch; set aside. Heat 1 tablespoon oil in hot wok or large skillet over high heat. Add chicken and stir-fry 1 minute; remove. Heat remaining oil in same pan. Add garlic, bean sprouts and green onions; stir-fry 1 minute. Stir in linguine and cook 2 minutes, or until heated through. Return chicken with shrimp, cilantro and tomato juice mixture. Cook, stirring, until sauce boils and thickens. Serve with lime wedges. Makes 4 servings.", "has_ingredient_list": true, "extraction_confidence": "high", "ingredients": [{"name": "Linguine", "quantity": "1/2", "unit": "lb", "modifiers": "uncooked", "package_qty": "", "package_unit": ""}, {"name": "Tomato Juice", "quantity": "3/4", "unit": "cup", "modifiers": "no-salt added", "package_qty": "", "package_unit": ""}, {"name": "Soy Sauce", "quantity": "3", "unit": "tbsp", "modifiers": "low-sodium", "package_qty": "", "package_unit": ""}, {"name": "Vinegar", "quantity": "1", "unit": "tbsp", "modifiers": "", "package_qty": "", "package_unit": ""}, {"name": "Sugar", "quantity": "2", "unit": "tsp", "modifiers": "", "package_qty": "", "package_unit": ""}, {"name": "Cornstarch", "quantity": "3/4", "unit": "tsp", "modifiers": "", "package_qty": "", "package_unit": ""}, {"name": "Vegetable Oil", "quantity": "3", "unit": "tbsp", "modifiers": "divided use", "package_qty": "", "package_unit": ""}, {"name": "Chicken Breast", "quantity": "1/2", "unit": "lb", "modifiers": "boneless, skinless, cut into thin strips", "package_qty": "", "package_unit": ""}, {"name": "Garlic", "quantity": "2", "unit": "clove", "modifiers": "minced", "package_qty": "", "package_unit": ""}, {"name": "Bean Sprouts", "quantity": "1/2", "unit": "lb", "modifiers": "rinsed, drained", "package_qty": "", "package_unit": ""}, {"name": "Green Onion", "quantity": "1/3", "unit": "cup", "modifiers": "sliced", "package_qty": "", "package_unit": ""}, {"name": "Shrimp", "quantity": "1/2", "unit": "lb", "modifiers": "cooked baby, rinsed, drained", "package_qty": "", "package_unit": ""}, {"name": "Coriander", "quantity": "1", "unit": "tbsp", "modifiers": "minced", "package_qty": "", "package_unit": ""}, {"name": "Lime", "quantity": "1", "unit": "whole", "modifiers": "cut into wedges", "package_qty": "", "package_unit": ""}]}

matched_ingredients:
  [{"raw_name": "Linguine Pasta", "ingredient_name": "Linguine Pasta", "quantity": "1/2", "unit": "lb"}, {"raw_name": "Tomato Juice", "ingredient_name": "Tomato Juice", "quantity": "3/4", "unit": "c"}, {"raw_name": "Soy Sauce", "ingredient_name": "Soy Sauce", "quantity": "3", "unit": "tbsp"}, {"raw_name": "Vinegar", "ingredient_name": "Vinegar", "quantity": "1", "unit": "tbsp"}, {"raw_name": "Sugar", "ingredient_name": "Sugar", "quantity": "2", "unit": "tsp"}, {"raw_name": "Cornstarch", "ingredient_name": "Cornstarch", "quantity": "3/4", "unit": "tsp"}, {"raw_name": "Vegetable Oil", "ingredient_name": "Vegetable Oil", "quantity": "3", "unit": "tbsp"}, {"raw_name": "Chicken Breast", "ingredient_name": "Chicken Breast", "quantity": "1/2", "unit": "lb"}, {"raw_name": "Garlic", "ingredient_name": "Garlic", "quantity": "2", "unit": "clove"}, {"raw_name": "?", "ingredient_name": null, "quantity": "1/2", "unit": "lb"}, {"raw_name": "Green Onion", "ingredient_name": "Green Onion", "quantity": "1/3", "unit": "c"}, {"raw_name": "Shrimp", "ingredient_name": "Shrimp", "quantity": "1/2", "unit": "lb"}, {"raw_name": "Coriander", "ingredient_name": "Coriander", "quantity": "1", "unit": "tbsp"}, {"raw_name": "Lime", "ingredient_name": "Lime", "quantity": "1", "unit": "whole"}]


created_at: 2026-04-04 18:14:06.595933
status: success
provider: claude
filename: Asian/Thai/Noodles with snow peas and bok choy with soy-orange dressing.pdf
recipe_title: Noodles with Snow Peas and Bok Choy with Soy-Orange Dressing
unmatched_items: []
unit_warnings: []
resolution_tiers: {"exact": 16, "failed": 1, "product_exact_fallback": 1, "common_name": 1}
raw_ai_response:
  {"title": "Noodles with Snow Peas and Bok Choy with Soy-Orange Dressing", "description": "A light and refreshing Asian salad made with thin Chinese egg noodles, crisp snow peas, baby bok choy, and fresh vegetables tossed in a bright soy-orange dressing with sesame and ginger flavors.", "servings": 6, "prep_time": 30, "cook_time": 5, "cuisine": "Chinese", "tags": ["Stovetop", "Weeknight", "Light", "Quick"], "culinary_type": "Salad", "instructions": "Step 1: Soak dried shiitake mushrooms in boiling water until softened, about 30 minutes. Remove stems and cut caps into thin strips.\nStep 2: Cook snow peas, bok choy, and green onions in large pot of boiling water for 1 minute. Drain and cool under cold water.\nStep 3: If using fresh Chinese egg noodles, cook for 1 minute in another large pot of boiling water. If using dried vermicelli, cook as directed on the package.\nStep 4: Drain noodles and cool under cold running water.\nStep 5: Combine noodles, mushrooms, cooked vegetables, bean sprouts, and cilantro in a large bowl.\nStep 6: For dressing, whisk together garlic, ginger, sugar, orange juice, sherry vinegar, soy sauce, and sesame oil in another large bowl until blended. Gradually whisk in peanut oil until combined.\nStep 7: Toss salad with enough dressing to coat well. Sprinkle with sesame seeds and serve.\nStep 8: Can be made up to 1 day ahead. Cover and refrigerate.", "has_ingredient_list": true, "extraction_confidence": "high", "ingredients": [{"name": "Shiitake Mushrooms", "quantity": "8", "unit": "whole", "modifiers": "dried", "package_qty": "", "package_unit": ""}, {"name": "Snow Peas", "quantity": "4", "unit": "oz", "modifiers": "stringed", "package_qty": "", "package_unit": ""}, {"name": "Bok Choy", "quantity": "4", "unit": "whole", "modifiers": "baby, cut crosswise into 1/2-inch strips", "package_qty": "", "package_unit": ""}, {"name": "Green Onion", "quantity": "1", "unit": "bunch", "modifiers": "cut diagonally into 1-inch lengths", "package_qty": "", "package_unit": ""}, {"name": "Egg Noodles", "quantity": "3/4", "unit": "lb", "modifiers": "fresh, thin Chinese", "package_qty": "", "package_unit": ""}, {"name": "Rice Vermicelli", "quantity": "1/2", "unit": "lb", "modifiers": "dried", "package_qty": "", "package_unit": ""}, {"name": "Bean Sprouts", "quantity": "1", "unit": "cup", "modifiers": "", "package_qty": "", "package_unit": ""}, {"name": "Cilantro", "quantity": "1/2", "unit": "cup", "modifiers": "coarsely chopped", "package_qty": "", "package_unit": ""}, {"name": "Garlic", "quantity": "1", "unit": "tsp", "modifiers": "minced", "package_qty": "", "package_unit": ""}, {"name": "Ginger", "quantity": "2", "unit": "tsp", "modifiers": "minced, fresh", "package_qty": "", "package_unit": ""}, {"name": "Sugar", "quantity": "1", "unit": "tsp", "modifiers": "", "package_qty": "", "package_unit": ""}, {"name": "Orange Juice", "quantity": "1/4", "unit": "cup", "modifiers": "", "package_qty": "", "package_unit": ""}, {"name": "Sherry Vinegar", "quantity": "2", "unit": "tsp", "modifiers": "", "package_qty": "", "package_unit": ""}, {"name": "Rice Vinegar", "quantity": "2", "unit": "tsp", "modifiers": "", "package_qty": "", "package_unit": ""}, {"name": "Soy Sauce", "quantity": "2", "unit": "tbsp", "modifiers": "", "package_qty": "", "package_unit": ""}, {"name": "Sesame Oil", "quantity": "3", "unit": "tbsp", "modifiers": "", "package_qty": "", "package_unit": ""}, {"name": "Peanut Oil", "quantity": "1", "unit": "tbsp", "modifiers": "", "package_qty": "", "package_unit": ""}, {"name": "Sesame Seeds", "quantity": "2", "unit": "tbsp", "modifiers": "for garnish", "package_qty": "", "package_unit": ""}]}

matched_ingredients:
  [{"raw_name": "Shiitake Mushrooms", "ingredient_name": "Shiitake Mushrooms", "quantity": "8", "unit": "whole"}, {"raw_name": "Snow Peas", "ingredient_name": "Snow Peas", "quantity": "4", "unit": "oz"}, {"raw_name": "Bok Choy", "ingredient_name": "Bok Choy", "quantity": "4", "unit": "whole"}, {"raw_name": "Green Onion", "ingredient_name": "Green Onion", "quantity": "1", "unit": "bunch"}, {"raw_name": "Egg", "ingredient_name": "Egg", "quantity": "3/4", "unit": "lb"}, {"raw_name": "Rice Vermicelli", "ingredient_name": "Rice Vermicelli", "quantity": "1/2", "unit": "lb"}, {"raw_name": "?", "ingredient_name": null, "quantity": "1", "unit": "c"}, {"raw_name": "Coriander", "ingredient_name": "Coriander", "quantity": "1/2", "unit": "c"}, {"raw_name": "Garlic", "ingredient_name": "Garlic", "quantity": "1", "unit": "tsp"}, {"raw_name": "Ginger", "ingredient_name": "Ginger", "quantity": "2", "unit": "tsp"}, {"raw_name": "Sugar", "ingredient_name": "Sugar", "quantity": "1", "unit": "tsp"}, {"raw_name": "Orange Juice", "ingredient_name": "Orange Juice", "quantity": "1/4", "unit": "c"}, {"raw_name": "Sherry Vinegar", "ingredient_name": "Sherry Vinegar", "quantity": "2", "unit": "tsp"}, {"raw_name": "Rice Vinegar", "ingredient_name": "Rice Vinegar", "quantity": "2", "unit": "tsp"}, {"raw_name": "Soy Sauce", "ingredient_name": "Soy Sauce", "quantity": "2", "unit": "tbsp"}, {"raw_name": "Sesame Oil", "ingredient_name": "Sesame Oil", "quantity": "3", "unit": "tbsp"}, {"raw_name": "Peanut Oil", "ingredient_name": "Peanut Oil", "quantity": "1", "unit": "tbsp"}, {"raw_name": "Sesame Seeds", "ingredient_name": "Sesame Seeds", "quantity": "2", "unit": "tbsp"}]


created_at: 2026-04-04 18:14:15.906158
status: success
provider: claude
filename: Asian/Thai/Pad Thai.pdf
recipe_title: Pad Thai
unmatched_items: []
unit_warnings: []
resolution_tiers: {"exact": 12, "failed": 1, "product_off_fallback": 1}
raw_ai_response:
  {"title": "Pad Thai", "description": "A classic Thai stir-fried noodle dish with rice vermicelli, shrimp, tofu, and fresh vegetables, balanced with tangy lime juice and fish sauce.", "servings": 4, "prep_time": 15, "cook_time": 15, "cuisine": "Thai", "tags": ["Stovetop", "Quick", "Weeknight"], "culinary_type": "Main Course", "instructions": "Soak rice noodles in water for 2 hrs until soft\nDrain and set aside\nHeat skillet till hot and add oil\nAdd garlic and shrimp and stir fry\nAdd noodles; stir fry until clear; add fish sauce, sugar, paprika and stir until combined\nStir in tofu and egg and turn the heat on high until the egg sets, stirring gently; cook for 2 minutes until the liquid is reduced\nMix in chives, peanuts and beansprouts\nPlace on serving dish garnishing with lime", "has_ingredient_list": true, "extraction_confidence": "high", "ingredients": [{"name": "Rice Vermicelli", "quantity": "8", "unit": "oz", "modifiers": "", "package_qty": "", "package_unit": ""}, {"name": "Cooking Oil", "quantity": "3", "unit": "tbsp", "modifiers": "", "package_qty": "", "package_unit": ""}, {"name": "Garlic", "quantity": "3", "unit": "clove", "modifiers": "minced", "package_qty": "", "package_unit": ""}, {"name": "Dried Shrimp", "quantity": "1/4", "unit": "cup", "modifiers": "", "package_qty": "", "package_unit": ""}, {"name": "Fish Sauce", "quantity": "1/4", "unit": "cup", "modifiers": "", "package_qty": "", "package_unit": ""}, {"name": "Sugar", "quantity": "1/4", "unit": "cup", "modifiers": "", "package_qty": "", "package_unit": ""}, {"name": "Lime Juice", "quantity": "2", "unit": "tbsp", "modifiers": "", "package_qty": "", "package_unit": ""}, {"name": "Paprika", "quantity": "1", "unit": "tbsp", "modifiers": "", "package_qty": "", "package_unit": ""}, {"name": "Tofu", "quantity": "1/2", "unit": "cup", "modifiers": "fried", "package_qty": "", "package_unit": ""}, {"name": "Egg", "quantity": "1", "unit": "whole", "modifiers": "beaten", "package_qty": "", "package_unit": ""}, {"name": "Chives", "quantity": "1/4", "unit": "cup", "modifiers": "1 in lengths", "package_qty": "", "package_unit": ""}, {"name": "Peanut", "quantity": "1/4", "unit": "cup", "modifiers": "ground roasted", "package_qty": "", "package_unit": ""}, {"name": "Mung Bean Sprouts", "quantity": "1", "unit": "cup", "modifiers": "", "package_qty": "", "package_unit": ""}]}

matched_ingredients:
  [{"raw_name": "Rice Vermicelli", "ingredient_name": "Rice Vermicelli", "quantity": "8", "unit": "oz"}, {"raw_name": "Cooking oil", "ingredient_name": "Cooking oil", "quantity": "3", "unit": "tbsp"}, {"raw_name": "Garlic", "ingredient_name": "Garlic", "quantity": "3", "unit": "clove"}, {"raw_name": "Dried Shrimp", "ingredient_name": "Dried Shrimp", "quantity": "1/4", "unit": "c"}, {"raw_name": "Fish Sauce", "ingredient_name": "Fish Sauce", "quantity": "1/4", "unit": "c"}, {"raw_name": "Sugar", "ingredient_name": "Sugar", "quantity": "1/4", "unit": "c"}, {"raw_name": "Lime Juice", "ingredient_name": "Lime Juice", "quantity": "2", "unit": "tbsp"}, {"raw_name": "Paprika", "ingredient_name": "Paprika", "quantity": "1", "unit": "tbsp"}, {"raw_name": "Tofu", "ingredient_name": "Tofu", "quantity": "1/2", "unit": "c"}, {"raw_name": "Egg", "ingredient_name": "Egg", "quantity": "1", "unit": "whole"}, {"raw_name": "Chives", "ingredient_name": "Chives", "quantity": "1/4", "unit": "c"}, {"raw_name": "Peanut", "ingredient_name": "Peanut", "quantity": "1/4", "unit": "c"}, {"raw_name": "?", "ingredient_name": null, "quantity": "1", "unit": "c"}]


created_at: 2026-04-04 18:14:41.260715
status: success
provider: claude
filename: Asian/Thai/Pod Thai goong sod.pdf
recipe_title: Phad Thai Goong Sod
unmatched_items: []
unit_warnings: []
resolution_tiers: {"exact": 11, "failed": 4, "product_off_fallback": 2, "product_exact_fallback": 2}
raw_ai_response:
  {"title": "Phad Thai Goong Sod", "description": "A classic Thai fried rice noodle dish with prawns, featuring a perfect balance of sweet, sour, and savory flavors with ground roasted peanuts and fresh vegetables.", "servings": 4, "prep_time": 20, "cook_time": 15, "cuisine": "Thai", "tags": ["Stovetop", "Weeknight", "Spicy", "Quick"], "culinary_type": "Main Course", "instructions": "Step 1: Heat three tablespoons oil in a pan and saut\u00e9 garlic and shallots.\nStep 2: Add the noodles and fry, turning constantly to prevent sticking. Remove noodles and set aside.\nStep 3: Put three more tablespoons of oil into the pan, add the pickled white radish, beancurd and dried chillies. Stir fry for 2 to 3 minutes. Put the noodles back, add sugar, fish sauce and tamarind juice, mix thoroughly. Add half the bean sprouts and Chinese chives, mix together and set aside.\nStep 4: Put another two tablespoons of oil into heated pan. Break three eggs into the pan and scramble spreading egg in a thin layer. Put the mixed noodles in the middle and wrap the four sides of the egg round the noodles.\nStep 5: Serve with the bean sprouts, banana blossom and chives.", "has_ingredient_list": true, "extraction_confidence": "high", "ingredients": [{"name": "Cooking oil", "quantity": "1/2", "unit": "cup", "modifiers": "", "package_qty": "", "package_unit": ""}, {"name": "Garlic", "quantity": "1", "unit": "tbsp", "modifiers": "chopped", "package_qty": "", "package_unit": ""}, {"name": "Shallot", "quantity": "1", "unit": "tbsp", "modifiers": "chopped", "package_qty": "", "package_unit": ""}, {"name": "Rice Noodles", "quantity": "300", "unit": "g", "modifiers": "dried, soaked in warm water to soften", "package_qty": "", "package_unit": ""}, {"name": "Radish", "quantity": "1", "unit": "tbsp", "modifiers": "pickled, white, chopped", "package_qty": "", "package_unit": ""}, {"name": "Beancurd", "quantity": "1", "unit": "piece", "modifiers": "diced", "package_qty": "", "package_unit": ""}, {"name": "Chili", "quantity": "1", "unit": "tsp", "modifiers": "dried, ground", "package_qty": "", "package_unit": ""}, {"name": "Sugar", "quantity": "4", "unit": "tbsp", "modifiers": "", "package_qty": "", "package_unit": ""}, {"name": "Fish Sauce", "quantity": "3", "unit": "tbsp", "modifiers": "", "package_qty": "", "package_unit": ""}, {"name": "Tamarind Paste", "quantity": "4", "unit": "tbsp", "modifiers": "", "package_qty": "", "package_unit": ""}, {"name": "Egg", "quantity": "3", "unit": "whole", "modifiers": "", "package_qty": "", "package_unit": ""}, {"name": "Bean sprouts", "quantity": "500", "unit": "g", "modifiers": "", "package_qty": "", "package_unit": ""}, {"name": "Chives", "quantity": "1", "unit": "bunch", "modifiers": "Chinese", "package_qty": "", "package_unit": ""}, {"name": "Peanut", "quantity": "1/2", "unit": "cup", "modifiers": "ground, roasted", "package_qty": "", "package_unit": ""}, {"name": "Banana blossom", "quantity": "1/2", "unit": "whole", "modifiers": "simmered until tender, optional", "package_qty": "", "package_unit": ""}]}

matched_ingredients:
  [{"raw_name": "Cooking oil", "ingredient_name": "Cooking oil", "quantity": "1/2", "unit": "c"}, {"raw_name": "Garlic", "ingredient_name": "Garlic", "quantity": "1", "unit": "tbsp"}, {"raw_name": "Shallot", "ingredient_name": "Shallot", "quantity": "1", "unit": "tbsp"}, {"raw_name": "Rice", "ingredient_name": "Rice", "quantity": "300", "unit": "g"}, {"raw_name": "Radish", "ingredient_name": "Radish", "quantity": "1", "unit": "tbsp"}, {"raw_name": "?", "ingredient_name": null, "quantity": "1", "unit": "pc"}, {"raw_name": "?", "ingredient_name": null, "quantity": "1", "unit": "tsp"}, {"raw_name": "Sugar", "ingredient_name": "Sugar", "quantity": "4", "unit": "tbsp"}, {"raw_name": "Fish Sauce", "ingredient_name": "Fish Sauce", "quantity": "3", "unit": "tbsp"}, {"raw_name": "Tamarind Paste", "ingredient_name": "Tamarind Paste", "quantity": "4", "unit": "tbsp"}, {"raw_name": "Egg", "ingredient_name": "Egg", "quantity": "3", "unit": "whole"}, {"raw_name": "?", "ingredient_name": null, "quantity": "500", "unit": "g"}, {"raw_name": "Chives", "ingredient_name": "Chives", "quantity": "1", "unit": "bunch"}, {"raw_name": "Peanut", "ingredient_name": "Peanut", "quantity": "1/2", "unit": "c"}, {"raw_name": "?", "ingredient_name": null, "quantity": "1/2", "unit": "whole"}]


