{
  "generated_at": "2026-10-13",
  "total_recipes": 148,
  "images_retained": 0,
  "images_replaced": 148,
  "ai_generated_images": 148,
  "licensed_primary_images": 0,
  "duplicate_primary_image_assignments_remaining": 0,
  "mismatched_or_missing_images_remaining": 0,
  "records": [
    {
      "recipe_title": "Creamy spinach & mushroom pasta",
      "recipe_url": "/recipes/spinach-mushroom-pasta/",
      "old_image": "/assets/pasta.jpg",
      "new_image": "/assets/spinach-mushroom-pasta.webp",
      "status": "AI-generated",
      "source_page": null,
      "download_url": null,
      "creator": null,
      "license": null,
      "license_link": null,
      "commercial_use_note": "Generated specifically for The Kitchen Table; no third-party stock photograph is assigned as this recipe primary image.",
      "generation_prompt": "Use case: photorealistic-natural\nAsset type: primary recipe image for The Kitchen Table website\nPrimary request: Create one realistic, appetizing finished serving of \u201cCreamy spinach & mushroom pasta.\u201d\nScene/backdrop: warm neutral ceramic bowl on a simple home kitchen table, subtle linen, no unrelated side dishes\nExact listed ingredients: 200 g dried pasta; 200 g sliced mushrooms; 80 g baby spinach; 1 minced garlic clove; 1 tbsp olive oil; 100 ml heavy cream; 30 g finely grated Parmesan; salt; black pepper\nPreparation and texture: al dente pasta tossed with well-browned mushroom slices, wilted spinach, garlic, a light Parmesan cream sauce, and enough pasta water to look glossy rather than heavy\nSubject: a plausible two-serving home-cooked pasta, with visible golden mushrooms and tender green spinach distributed through the noodles\nStyle/medium: realistic editorial food photography with believable home-cooked texture\nComposition/framing: landscape 3:2, close three-quarter view, main dish centered with safe crop area for responsive cards\nLighting/mood: soft natural window light, warm and inviting, gentle shadows\nConstraints: no basil pesto, pine nuts, tomato sauce, meat, seafood, unrelated vegetables, text, logo, watermark, collage, hands, or impossible food shapes",
      "output_filename": "spinach-mushroom-pasta.webp",
      "creation_date": "2026-10-13",
      "visual_match_review_status": "Passed labeled contact-sheet review against recipe title, ingredients, and method on 2026-10-13.",
      "duplicate_check_status": "Passed exact SHA-256 and 256-bit perceptual difference-hash checks; no exact or near duplicate primary image detected.",
      "sha256": "41d4a8418a802848003826a38a32b3da651ec462b7393fc1992bd638d3feda0a",
      "width": 1200,
      "height": 800,
      "format": "WebP",
      "responsive_crop_review_status": "Passed 3:2 card and full-width recipe-cover crop review."
    },
    {
      "recipe_title": "Lemon & herb salmon",
      "recipe_url": "/recipes/lemon-herb-salmon/",
      "old_image": "/assets/salmon.jpg",
      "new_image": "/assets/lemon-herb-salmon.webp",
      "status": "AI-generated",
      "source_page": null,
      "download_url": null,
      "creator": null,
      "license": null,
      "license_link": null,
      "commercial_use_note": "Generated specifically for The Kitchen Table; no third-party stock photograph is assigned as this recipe primary image.",
      "generation_prompt": "Use case: photorealistic-natural\nAsset type: primary recipe image for The Kitchen Table website\nPrimary request: Create one realistic, appetizing finished serving of the recipe \u201cLemon & herb salmon.\u201d\nRecipe description: Oven-roasted salmon with lemon, garlic, and tender green vegetables. One tray keeps cleanup refreshingly simple.\nExact listed ingredients: 2  salmon fillets, about 150 g each; 250 g asparagus, woody ends trimmed; 1 tbsp olive oil; 1  lemon; 1  garlic clove, minced; 0.5 tsp dried oregano; 0.25 tsp salt; 0.25 tsp black pepper\nComplete preparation method: Heat the oven: Set the oven to 400\u00b0F / 200\u00b0C. Line a rimmed baking sheet with parchment suitable for the oven temperature. Season the vegetables: Toss the asparagus with half the oil, half the salt, and a little pepper. Spread it on one side of the tray. Thick spears may need a 5-minute head start. Prepare the fish: Pat the salmon dry and place skin-side down on the tray. Rub with the remaining oil, garlic, oregano, remaining salt, and pepper. Add thin lemon slices on top. Roast and check: Roast for about 12\u201318 minutes, depending on thickness. Insert a thermometer into the thickest part of the fish; cook to 145\u00b0F / 63\u00b0C. Remove vegetables when tender if they finish first. Serve with a squeeze of the remaining lemon.\nScene/backdrop: light oak kitchen table, simple home-kitchen setting, no unrelated side dishes\nSubject: the plausible finished dish exactly as produced by the recipe, with the correct protein or plant-based base, cooking method, shape, texture, sauce, topping, and garnish\nStyle/medium: realistic editorial food photography with believable home-cooked texture\nComposition/framing: landscape 3:2, slightly overhead view, full main dish visible with safe crop area for responsive cards\nLighting/mood: soft natural window light, appetizing but honest, gentle shadows\nConstraints: include only ingredients and garnishes supported by the recipe; no substitutions, no extra protein, no text, logos, watermark, collage, hands, packaging, impossible shapes, or misleading restaurant-perfect styling",
      "output_filename": "lemon-herb-salmon.webp",
      "creation_date": "2026-10-13",
      "visual_match_review_status": "Passed labeled contact-sheet review against recipe title, ingredients, and method on 2026-10-13.",
      "duplicate_check_status": "Passed exact SHA-256 and 256-bit perceptual difference-hash checks; no exact or near duplicate primary image detected.",
      "sha256": "a17b0abd3a2b449c2531acad160b49fa3f9dc1eae12c31eefb53ce1b31a415d5",
      "width": 1200,
      "height": 800,
      "format": "WebP",
      "responsive_crop_review_status": "Passed 3:2 card and full-width recipe-cover crop review."
    },
    {
      "recipe_title": "Fluffy weekend pancakes",
      "recipe_url": "/recipes/fluffy-weekend-pancakes/",
      "old_image": "/assets/pancakes.jpg",
      "new_image": "/assets/fluffy-weekend-pancakes.webp",
      "status": "AI-generated",
      "source_page": null,
      "download_url": null,
      "creator": null,
      "license": null,
      "license_link": null,
      "commercial_use_note": "Generated specifically for The Kitchen Table; no third-party stock photograph is assigned as this recipe primary image.",
      "generation_prompt": "Use case: photorealistic-natural\nAsset type: primary recipe image for The Kitchen Table website\nPrimary request: Create one realistic, appetizing finished serving of the recipe \u201cFluffy weekend pancakes.\u201d\nRecipe description: Golden edges, tender centers, and no special equipment. A dependable small batch for a leisurely breakfast.\nExact listed ingredients: 125 g all-purpose flour; 1 tbsp sugar; 1.5 tsp baking powder; 0.25 tsp salt; 180 ml milk; 1  large egg; 1 tbsp melted butter, plus a little for the pan; 0.5 tsp vanilla extract\nComplete preparation method: Mix the dry ingredients: Whisk flour, sugar, baking powder, and salt in a bowl. Break up any obvious lumps. Add the wet ingredients: In a second bowl, whisk milk, egg, melted butter, and vanilla. Fold into the flour just until no dry patches remain. Small lumps are fine. Rest the batter for 5 minutes. Cook gently: Warm a nonstick skillet over medium-low heat and lightly butter it. Pour about \u00bc cup batter per pancake. Cook 2\u20133 minutes, until the edges look set and bubbles appear and begin to pop. Flip once: Turn with a broad spatula. Cook another 1\u20132 minutes until golden and the middle is fully set, with no wet batter. Reduce the heat if the outsides brown too quickly. Serve warm with fruit and syrup.\nScene/backdrop: soft gray stone counter, simple home-kitchen setting, no unrelated side dishes\nSubject: the plausible finished dish exactly as produced by the recipe, with the correct protein or plant-based base, cooking method, shape, texture, sauce, topping, and garnish\nStyle/medium: realistic editorial food photography with believable home-cooked texture\nComposition/framing: landscape 3:2, natural eye-level table view, full main dish visible with safe crop area for responsive cards\nLighting/mood: soft natural window light, appetizing but honest, gentle shadows\nConstraints: include only ingredients and garnishes supported by the recipe; no substitutions, no extra protein, no text, logos, watermark, collage, hands, packaging, impossible shapes, or misleading restaurant-perfect styling",
      "output_filename": "fluffy-weekend-pancakes.webp",
      "creation_date": "2026-10-13",
      "visual_match_review_status": "Passed labeled contact-sheet review against recipe title, ingredients, and method on 2026-10-13.",
      "duplicate_check_status": "Passed exact SHA-256 and 256-bit perceptual difference-hash checks; no exact or near duplicate primary image detected.",
      "sha256": "99bc5415b6f0d9f27963c1807cce09ac18333fac6cf553d0cb95144b0150f7bc",
      "width": 1200,
      "height": 800,
      "format": "WebP",
      "responsive_crop_review_status": "Passed 3:2 card and full-width recipe-cover crop review."
    },
    {
      "recipe_title": "Crispy chickpea harvest bowl",
      "recipe_url": "/recipes/crispy-chickpea-bowl/",
      "old_image": "/assets/salad.jpg",
      "new_image": "/assets/crispy-chickpea-bowl.webp",
      "status": "AI-generated",
      "source_page": null,
      "download_url": null,
      "creator": null,
      "license": null,
      "license_link": null,
      "commercial_use_note": "Generated specifically for The Kitchen Table; no third-party stock photograph is assigned as this recipe primary image.",
      "generation_prompt": "Use case: photorealistic-natural\nAsset type: primary recipe image for The Kitchen Table website\nPrimary request: Create one realistic, appetizing finished serving of the recipe \u201cCrispy chickpea harvest bowl.\u201d\nRecipe description: Warm spiced chickpeas, crisp vegetables, and a lemon-tahini dressing make a flexible plant-based lunch.\nExact listed ingredients: 1  400 g can chickpeas, drained and rinsed; 1 tbsp olive oil; 0.5 tsp smoked paprika; 0.25 tsp salt; 100 g salad greens; 0.5  cucumber, diced; 150 g cherry tomatoes, halved; 2 tbsp tahini; 1 tbsp lemon juice; 2 tbsp water, plus more as needed\nComplete preparation method: Dry and season: Heat the oven to 425\u00b0F / 220\u00b0C. Thoroughly pat the chickpeas dry with a clean towel. Toss with oil, paprika, and salt. Roast until crisp: Spread on a baking sheet in a single layer. Roast 20\u201325 minutes, shaking halfway through, until lightly crisp on the outside. Whisk the dressing: Stir the tahini and lemon juice together, then whisk in water a little at a time. It may thicken before it loosens. Add enough water for a pourable dressing and season to taste. Build your bowls: Divide the greens, cucumber, and tomatoes between bowls. Add the warm chickpeas and drizzle with dressing just before eating. For a heartier bowl, add cooked rice or quinoa.\nScene/backdrop: cream linen over a wood table, simple home-kitchen setting, no unrelated side dishes\nSubject: the plausible finished dish exactly as produced by the recipe, with the correct protein or plant-based base, cooking method, shape, texture, sauce, topping, and garnish\nStyle/medium: realistic editorial food photography with believable home-cooked texture\nComposition/framing: landscape 3:2, 45-degree editorial view, full main dish visible with safe crop area for responsive cards\nLighting/mood: soft natural window light, appetizing but honest, gentle shadows\nConstraints: include only ingredients and garnishes supported by the recipe; no substitutions, no extra protein, no text, logos, watermark, collage, hands, packaging, impossible shapes, or misleading restaurant-perfect styling",
      "output_filename": "crispy-chickpea-bowl.webp",
      "creation_date": "2026-10-13",
      "visual_match_review_status": "Passed labeled contact-sheet review against recipe title, ingredients, and method on 2026-10-13.",
      "duplicate_check_status": "Passed exact SHA-256 and 256-bit perceptual difference-hash checks; no exact or near duplicate primary image detected.",
      "sha256": "29771cbdb387019d54b847cce06a879a2b2496df115b55f9fd1c70bfe687ad17",
      "width": 1200,
      "height": 800,
      "format": "WebP",
      "responsive_crop_review_status": "Passed 3:2 card and full-width recipe-cover crop review."
    },
    {
      "recipe_title": "Cozy tomato & basil soup",
      "recipe_url": "/recipes/tomato-basil-soup/",
      "old_image": "/assets/soup.jpg",
      "new_image": "/assets/tomato-basil-soup.webp",
      "status": "AI-generated",
      "source_page": null,
      "download_url": null,
      "creator": null,
      "license": null,
      "license_link": null,
      "commercial_use_note": "Generated specifically for The Kitchen Table; no third-party stock photograph is assigned as this recipe primary image.",
      "generation_prompt": "Use case: photorealistic-natural\nAsset type: primary recipe image for The Kitchen Table website\nPrimary request: Create one realistic, appetizing finished serving of the recipe \u201cCozy tomato & basil soup.\u201d\nRecipe description: Canned tomatoes, a softened onion, and a little patience deliver a smooth soup with deep flavor.\nExact listed ingredients: 1 tbsp olive oil; 1  medium onion, diced; 2  garlic cloves, minced; 2 tbsp tomato paste; 800 g canned whole tomatoes with their juices; 500 ml vegetable stock; 0.5 tsp dried oregano; 10 g fresh basil; 0.25 tsp salt, or to taste\nComplete preparation method: Soften the onion: Heat the oil in a saucepan over medium-low heat. Add onion and a pinch of the measured salt. Cook 8\u201310 minutes, stirring, until soft but not deeply browned. Build the base: Add garlic and cook for 30 seconds. Stir in tomato paste and cook for 1 minute, taking care not to scorch it. Simmer: Add tomatoes, stock, and oregano. Break up the tomatoes with a spoon. Bring to a gentle simmer and cook uncovered for 20 minutes, stirring occasionally. Blend and finish: Remove from heat. Use an immersion blender with its blade fully submerged to blend until smooth. Stir in torn basil and taste before adding the remaining salt. If using a jug blender, cool the soup first and follow the manufacturer\u2019s hot-liquid instructions.\nScene/backdrop: dark walnut table, simple home-kitchen setting, no unrelated side dishes\nSubject: the plausible finished dish exactly as produced by the recipe, with the correct protein or plant-based base, cooking method, shape, texture, sauce, topping, and garnish\nStyle/medium: realistic editorial food photography with believable home-cooked texture\nComposition/framing: landscape 3:2, top-down view, full main dish visible with safe crop area for responsive cards\nLighting/mood: soft natural window light, appetizing but honest, gentle shadows\nConstraints: include only ingredients and garnishes supported by the recipe; no substitutions, no extra protein, no text, logos, watermark, collage, hands, packaging, impossible shapes, or misleading restaurant-perfect styling",
      "output_filename": "tomato-basil-soup.webp",
      "creation_date": "2026-10-13",
      "visual_match_review_status": "Passed labeled contact-sheet review against recipe title, ingredients, and method on 2026-10-13.",
      "duplicate_check_status": "Passed exact SHA-256 and 256-bit perceptual difference-hash checks; no exact or near duplicate primary image detected.",
      "sha256": "9966ad0c8e671cb0f0b7660fd8754e4120fff1734151bf83479d28324a1a1c14",
      "width": 1200,
      "height": 800,
      "format": "WebP",
      "responsive_crop_review_status": "Passed 3:2 card and full-width recipe-cover crop review."
    },
    {
      "recipe_title": "Garlic butter skillet chicken",
      "recipe_url": "/recipes/garlic-skillet-chicken/",
      "old_image": "/assets/chicken.jpg",
      "new_image": "/assets/garlic-skillet-chicken.webp",
      "status": "AI-generated",
      "source_page": null,
      "download_url": null,
      "creator": null,
      "license": null,
      "license_link": null,
      "commercial_use_note": "Generated specifically for The Kitchen Table; no third-party stock photograph is assigned as this recipe primary image.",
      "generation_prompt": "Use case: photorealistic-natural\nAsset type: primary recipe image for The Kitchen Table website\nPrimary request: Create one realistic, appetizing finished serving of the recipe \u201cGarlic butter skillet chicken.\u201d\nRecipe description: A simple skillet dinner with garlic, lemon, and a buttery sauce. Pair with rice, potatoes, or a green salad.\nExact listed ingredients: 2  boneless chicken breasts, about 150 g each; 0.5 tsp salt; 0.25 tsp black pepper; 1 tbsp olive oil; 20 g butter; 3  garlic cloves, finely chopped; 100 ml chicken stock; 1 tbsp lemon juice\nComplete preparation method: Prepare the chicken: Use a separate board for raw chicken. Pat dry with paper towels and flatten thick sections to roughly 2 cm for even cooking. Season with salt and pepper. Wash hands and clean surfaces after handling raw poultry. Sear: Heat oil in a skillet over medium heat. Add chicken and cook without moving for about 5\u20136 minutes, until golden and it releases from the pan. Finish cooking: Turn and cook another 5\u20138 minutes, adjusting heat as needed. Check the thickest part with a thermometer and continue cooking until 165\u00b0F / 74\u00b0C. Transfer to a clean plate. Make the sauce: Lower the heat. Add butter and garlic; stir 30 seconds. Add stock and lemon juice, scraping up browned bits. Simmer 2\u20133 minutes, return the cooked chicken and any juices, and spoon sauce over it.\nScene/backdrop: warm pale stone table, simple home-kitchen setting, no unrelated side dishes\nSubject: the plausible finished dish exactly as produced by the recipe, with the correct protein or plant-based base, cooking method, shape, texture, sauce, topping, and garnish\nStyle/medium: realistic editorial food photography with believable home-cooked texture\nComposition/framing: landscape 3:2, three-quarter close view, full main dish visible with safe crop area for responsive cards\nLighting/mood: soft natural window light, appetizing but honest, gentle shadows\nConstraints: include only ingredients and garnishes supported by the recipe; no substitutions, no extra protein, no text, logos, watermark, collage, hands, packaging, impossible shapes, or misleading restaurant-perfect styling",
      "output_filename": "garlic-skillet-chicken.webp",
      "creation_date": "2026-10-13",
      "visual_match_review_status": "Passed labeled contact-sheet review against recipe title, ingredients, and method on 2026-10-13.",
      "duplicate_check_status": "Passed exact SHA-256 and 256-bit perceptual difference-hash checks; no exact or near duplicate primary image detected.",
      "sha256": "f397ccf16e82b1162fe9d6e0e372e225405bf873f7958cfb922f9030985d9899",
      "width": 1200,
      "height": 800,
      "format": "WebP",
      "responsive_crop_review_status": "Passed 3:2 card and full-width recipe-cover crop review."
    },
    {
      "recipe_title": "One-bowl cocoa brownies",
      "recipe_url": "/recipes/fudgy-cocoa-brownies/",
      "old_image": "/assets/brownies.jpg",
      "new_image": "/assets/fudgy-cocoa-brownies.webp",
      "status": "AI-generated",
      "source_page": null,
      "download_url": null,
      "creator": null,
      "license": null,
      "license_link": null,
      "commercial_use_note": "Generated specifically for The Kitchen Table; no third-party stock photograph is assigned as this recipe primary image.",
      "generation_prompt": "Use case: photorealistic-natural\nAsset type: primary recipe image for The Kitchen Table website\nPrimary request: Create one realistic, appetizing finished serving of the recipe \u201cOne-bowl cocoa brownies.\u201d\nRecipe description: A glossy top and a rich chocolate center, made with cocoa powder and everyday baking staples.\nExact listed ingredients: 115 g unsalted butter; 180 g sugar; 2  large eggs; 1 tsp vanilla extract; 45 g unsweetened cocoa powder; 65 g all-purpose flour; 0.25 tsp salt\nComplete preparation method: Prepare the pan: Heat the oven to 350\u00b0F / 175\u00b0C. Line an 8-inch / 20 cm square baking pan with parchment, leaving a little overhang. Mix the base: Melt the butter and let it cool until warm, not hot. Whisk in sugar, then eggs and vanilla until well combined. Do not taste batter containing raw flour and egg. Fold gently: Sift in cocoa, flour, and salt. Fold just until no dry flour remains. Spread evenly into the pan. Bake and cool: Bake 22\u201328 minutes, until the edges are set and a toothpick near the center has moist crumbs but no liquid batter. Cool completely in the pan before lifting out and cutting into 9 squares.\nScene/backdrop: light oak kitchen table, simple home-kitchen setting, no unrelated side dishes\nSubject: the plausible finished dish exactly as produced by the recipe, with the correct protein or plant-based base, cooking method, shape, texture, sauce, topping, and garnish\nStyle/medium: realistic editorial food photography with believable home-cooked texture\nComposition/framing: landscape 3:2, slightly overhead view, full main dish visible with safe crop area for responsive cards\nLighting/mood: soft natural window light, appetizing but honest, gentle shadows\nConstraints: include only ingredients and garnishes supported by the recipe; no substitutions, no extra protein, no text, logos, watermark, collage, hands, packaging, impossible shapes, or misleading restaurant-perfect styling",
      "output_filename": "fudgy-cocoa-brownies.webp",
      "creation_date": "2026-10-13",
      "visual_match_review_status": "Passed labeled contact-sheet review against recipe title, ingredients, and method on 2026-10-13.",
      "duplicate_check_status": "Passed exact SHA-256 and 256-bit perceptual difference-hash checks; no exact or near duplicate primary image detected.",
      "sha256": "08be5cdced58d746e5ea6fcdae3e1027cc4dcfdb5c613d2b8bed71b1b45ad594",
      "width": 1200,
      "height": 800,
      "format": "WebP",
      "responsive_crop_review_status": "Passed 3:2 card and full-width recipe-cover crop review."
    },
    {
      "recipe_title": "Weeknight flatbread pizza",
      "recipe_url": "/recipes/easy-flatbread-pizza/",
      "old_image": "/assets/pizza.jpg",
      "new_image": "/assets/easy-flatbread-pizza.webp",
      "status": "AI-generated",
      "source_page": null,
      "download_url": null,
      "creator": null,
      "license": null,
      "license_link": null,
      "commercial_use_note": "Generated specifically for The Kitchen Table; no third-party stock photograph is assigned as this recipe primary image.",
      "generation_prompt": "Use case: photorealistic-natural\nAsset type: primary recipe image for The Kitchen Table website\nPrimary request: Create one realistic, appetizing finished serving of the recipe \u201cWeeknight flatbread pizza.\u201d\nRecipe description: Crisp flatbreads, bubbling cheese, and your favorite vegetables bring pizza night within easy reach.\nExact listed ingredients: 2  large flatbreads or naan; 100 g thick tomato passata; 0.5 tsp dried oregano; 125 g mozzarella, drained and torn; 0.5  bell pepper, thinly sliced; 1 tbsp olive oil; 6  basil leaves\nComplete preparation method: Heat the oven: Heat to 425\u00b0F / 220\u00b0C. Put the flatbreads on a large baking sheet. If they are very soft, bake them plain for 3 minutes first. Add the sauce: Mix passata with oregano and a pinch of salt if needed. Spread a thin layer over each base, leaving a small border. Top lightly: Scatter over the drained mozzarella and thinly sliced pepper. Drizzle with oil. Avoid piling on wet toppings, which can make the base soggy. Bake: Bake for 8\u201312 minutes, until the cheese bubbles and the edges are crisp. Let stand for 2 minutes, then add basil and slice. Use fully cooked meat if adding meat toppings.\nScene/backdrop: soft gray stone counter, simple home-kitchen setting, no unrelated side dishes\nSubject: the plausible finished dish exactly as produced by the recipe, with the correct protein or plant-based base, cooking method, shape, texture, sauce, topping, and garnish\nStyle/medium: realistic editorial food photography with believable home-cooked texture\nComposition/framing: landscape 3:2, natural eye-level table view, full main dish visible with safe crop area for responsive cards\nLighting/mood: soft natural window light, appetizing but honest, gentle shadows\nConstraints: include only ingredients and garnishes supported by the recipe; no substitutions, no extra protein, no text, logos, watermark, collage, hands, packaging, impossible shapes, or misleading restaurant-perfect styling",
      "output_filename": "easy-flatbread-pizza.webp",
      "creation_date": "2026-10-13",
      "visual_match_review_status": "Passed labeled contact-sheet review against recipe title, ingredients, and method on 2026-10-13.",
      "duplicate_check_status": "Passed exact SHA-256 and 256-bit perceptual difference-hash checks; no exact or near duplicate primary image detected.",
      "sha256": "0f197fbb05b0299e16771c88b25e3195bccbffef7098b427bc8d74f950e2d575",
      "width": 1200,
      "height": 800,
      "format": "WebP",
      "responsive_crop_review_status": "Passed 3:2 card and full-width recipe-cover crop review."
    },
    {
      "recipe_title": "Soft scrambled eggs on toast",
      "recipe_url": "/recipes/soft-scrambled-eggs/",
      "old_image": "/assets/eggs.jpg",
      "new_image": "/assets/soft-scrambled-eggs.webp",
      "status": "AI-generated",
      "source_page": null,
      "download_url": null,
      "creator": null,
      "license": null,
      "license_link": null,
      "commercial_use_note": "Generated specifically for The Kitchen Table; no third-party stock photograph is assigned as this recipe primary image.",
      "generation_prompt": "Use case: photorealistic-natural\nAsset type: primary recipe image for The Kitchen Table website\nPrimary request: Create one realistic, appetizing finished serving of the recipe \u201cSoft scrambled eggs on toast.\u201d\nRecipe description: Low heat gives you more control over the size and tenderness of the curds.\nExact listed ingredients: 4  large eggs; 15 g butter; 2 tbsp milk; 0.25 tsp salt; 2  slices bread; 1 tbsp chopped chives\nComplete preparation method: Whisk gently: Crack the eggs into a bowl. Add milk and salt and whisk until the whites and yolks are evenly combined. Toast the bread while the pan heats. Keep the heat low: Melt butter in a nonstick skillet over low heat. When it coats the pan, pour in the eggs. Wait a few seconds for a thin layer to set. Fold into curds: Use a flexible spatula to push the set egg from the edges toward the center. Pause between strokes so soft curds form. If the eggs set too fast, lift the pan off the heat briefly. Finish and serve: Cook gently until fully set with no visible liquid egg. Egg dishes should reach 160\u00b0F / 71\u00b0C. Divide onto toast and scatter over chives. Serve immediately.\nScene/backdrop: cream linen over a wood table, simple home-kitchen setting, no unrelated side dishes\nSubject: the plausible finished dish exactly as produced by the recipe, with the correct protein or plant-based base, cooking method, shape, texture, sauce, topping, and garnish\nStyle/medium: realistic editorial food photography with believable home-cooked texture\nComposition/framing: landscape 3:2, 45-degree editorial view, full main dish visible with safe crop area for responsive cards\nLighting/mood: soft natural window light, appetizing but honest, gentle shadows\nConstraints: include only ingredients and garnishes supported by the recipe; no substitutions, no extra protein, no text, logos, watermark, collage, hands, packaging, impossible shapes, or misleading restaurant-perfect styling",
      "output_filename": "soft-scrambled-eggs.webp",
      "creation_date": "2026-10-13",
      "visual_match_review_status": "Passed labeled contact-sheet review against recipe title, ingredients, and method on 2026-10-13.",
      "duplicate_check_status": "Passed exact SHA-256 and 256-bit perceptual difference-hash checks; no exact or near duplicate primary image detected.",
      "sha256": "3a11b91020f91b092cb9e745a6f085ead146fa02e2246fcb9f8f820577049b00",
      "width": 1200,
      "height": 800,
      "format": "WebP",
      "responsive_crop_review_status": "Passed 3:2 card and full-width recipe-cover crop review."
    },
    {
      "recipe_title": "Cinnamon French toast",
      "recipe_url": "/recipes/cinnamon-french-toast/",
      "old_image": "/assets/pancakes.jpg",
      "new_image": "/assets/cinnamon-french-toast.webp",
      "status": "AI-generated",
      "source_page": null,
      "download_url": null,
      "creator": null,
      "license": null,
      "license_link": null,
      "commercial_use_note": "Generated specifically for The Kitchen Table; no third-party stock photograph is assigned as this recipe primary image.",
      "generation_prompt": "Use case: photorealistic-natural\nAsset type: primary recipe image for The Kitchen Table website\nPrimary request: Create one realistic, appetizing finished serving of the recipe \u201cCinnamon French toast.\u201d\nRecipe description: Day-old bread absorbs custard while keeping its shape.\nExact listed ingredients: 4  thick slices day-old bread; 2  large eggs; 100 ml milk; 0.5 tsp ground cinnamon; 1 tsp vanilla extract; 15 g butter; 1 tbsp maple syrup, for serving\nComplete preparation method: Mix the custard: Whisk eggs, milk, cinnamon, and vanilla in a shallow dish until completely combined. Use a dish wide enough to hold a slice of bread. Soak briefly: Dip each bread slice for about 15 seconds per side. Very sturdy bread can soak longer; soft bread needs only a quick dip. The center should absorb custard without falling apart. Cook in batches: Melt half the butter in a skillet over medium-low heat. Add two slices and cook about 3\u20134 minutes per side, adjusting the heat so the custard cooks through before the surface burns. Repeat with remaining butter and bread. Check and serve: The center should be fully set, not wet with egg. Check for 160\u00b0F / 71\u00b0C in the custard-soaked center. Serve warm with a little maple syrup and fruit if desired.\nScene/backdrop: dark walnut table, simple home-kitchen setting, no unrelated side dishes\nSubject: the plausible finished dish exactly as produced by the recipe, with the correct protein or plant-based base, cooking method, shape, texture, sauce, topping, and garnish\nStyle/medium: realistic editorial food photography with believable home-cooked texture\nComposition/framing: landscape 3:2, top-down view, full main dish visible with safe crop area for responsive cards\nLighting/mood: soft natural window light, appetizing but honest, gentle shadows\nConstraints: include only ingredients and garnishes supported by the recipe; no substitutions, no extra protein, no text, logos, watermark, collage, hands, packaging, impossible shapes, or misleading restaurant-perfect styling",
      "output_filename": "cinnamon-french-toast.webp",
      "creation_date": "2026-10-13",
      "visual_match_review_status": "Passed labeled contact-sheet review against recipe title, ingredients, and method on 2026-10-13.",
      "duplicate_check_status": "Passed exact SHA-256 and 256-bit perceptual difference-hash checks; no exact or near duplicate primary image detected.",
      "sha256": "d01e0232ff672a6d9b1a2e4075bb1209a28e2f114c0dd0d5f778a18f236c9991",
      "width": 1200,
      "height": 800,
      "format": "WebP",
      "responsive_crop_review_status": "Passed 3:2 card and full-width recipe-cover crop review."
    },
    {
      "recipe_title": "Apple & cinnamon baked oats",
      "recipe_url": "/recipes/apple-cinnamon-baked-oats/",
      "old_image": "/assets/pancakes.jpg",
      "new_image": "/assets/apple-cinnamon-baked-oats.webp",
      "status": "AI-generated",
      "source_page": null,
      "download_url": null,
      "creator": null,
      "license": null,
      "license_link": null,
      "commercial_use_note": "Generated specifically for The Kitchen Table; no third-party stock photograph is assigned as this recipe primary image.",
      "generation_prompt": "Use case: photorealistic-natural\nAsset type: primary recipe image for The Kitchen Table website\nPrimary request: Create one realistic, appetizing finished serving of the recipe \u201cApple & cinnamon baked oats.\u201d\nRecipe description: Rolled oats hold their texture better than instant oats in this simple breakfast bake.\nExact listed ingredients: 160 g rolled oats; 1  large apple, diced small; 1 tsp baking powder; 1 tsp ground cinnamon; 300 ml milk; 1  large egg; 2 tbsp maple syrup; 1 tbsp neutral oil; 0.25 tsp salt\nComplete preparation method: Prepare the oven: Heat to 350\u00b0F / 175\u00b0C. Lightly grease a small baking dish, about 20 cm square. Combine the ingredients: Mix oats, baking powder, cinnamon, and salt in a bowl. Whisk milk, egg, syrup, and oil separately, then stir into the dry ingredients with the diced apple. Bake: Pour into the dish and spread evenly. Bake 30\u201335 minutes, until the center is set and the top is lightly golden. An egg-containing dish should reach 160\u00b0F / 71\u00b0C. Rest briefly: Let stand 5 minutes to firm slightly. Spoon into bowls. Refrigerate leftover portions promptly and reheat to 165\u00b0F / 74\u00b0C before serving hot.\nScene/backdrop: warm pale stone table, simple home-kitchen setting, no unrelated side dishes\nSubject: the plausible finished dish exactly as produced by the recipe, with the correct protein or plant-based base, cooking method, shape, texture, sauce, topping, and garnish\nStyle/medium: realistic editorial food photography with believable home-cooked texture\nComposition/framing: landscape 3:2, three-quarter close view, full main dish visible with safe crop area for responsive cards\nLighting/mood: soft natural window light, appetizing but honest, gentle shadows\nConstraints: include only ingredients and garnishes supported by the recipe; no substitutions, no extra protein, no text, logos, watermark, collage, hands, packaging, impossible shapes, or misleading restaurant-perfect styling",
      "output_filename": "apple-cinnamon-baked-oats.webp",
      "creation_date": "2026-10-13",
      "visual_match_review_status": "Passed labeled contact-sheet review against recipe title, ingredients, and method on 2026-10-13.",
      "duplicate_check_status": "Passed exact SHA-256 and 256-bit perceptual difference-hash checks; no exact or near duplicate primary image detected.",
      "sha256": "dd98005adb6eea64fc259ea813cb555399942abb5671eeb89cf695474446534a",
      "width": 1200,
      "height": 800,
      "format": "WebP",
      "responsive_crop_review_status": "Passed 3:2 card and full-width recipe-cover crop review."
    },
    {
      "recipe_title": "Tomato & pepper shakshuka",
      "recipe_url": "/recipes/tomato-pepper-shakshuka/",
      "old_image": "/assets/eggs.jpg",
      "new_image": "/assets/tomato-pepper-shakshuka.webp",
      "status": "AI-generated",
      "source_page": null,
      "download_url": null,
      "creator": null,
      "license": null,
      "license_link": null,
      "commercial_use_note": "Generated specifically for The Kitchen Table; no third-party stock photograph is assigned as this recipe primary image.",
      "generation_prompt": "Use case: photorealistic-natural\nAsset type: primary recipe image for The Kitchen Table website\nPrimary request: Create one realistic, appetizing finished serving of the recipe \u201cTomato & pepper shakshuka.\u201d\nRecipe description: A thick tomato base keeps the eggs nestled in place.\nExact listed ingredients: 1 tbsp olive oil; 1  small onion, finely sliced; 1  bell pepper, diced; 2  garlic cloves, minced; 1 tsp ground cumin; 0.5 tsp smoked paprika; 400 g canned chopped tomatoes; 4  large eggs; 0.25 tsp salt\nComplete preparation method: Soften the vegetables: Heat oil in a lidded skillet over medium heat. Cook onion and pepper for 8\u201310 minutes until soft. Add garlic, cumin, and paprika and stir for 30 seconds. Reduce the tomatoes: Add tomatoes and salt. Simmer uncovered for 12\u201315 minutes, stirring, until thick enough to make little wells with a spoon. Add the eggs: Make four wells. Crack each egg into a small bowl first, then slide into a well. Cover and cook on low for 6\u201310 minutes, checking regularly. Check doneness: Cook until whites and yolks are firm; the egg portion should reach 160\u00b0F / 71\u00b0C. Add a little water around the edges if the sauce dries out before the eggs finish. Serve with bread.\nScene/backdrop: light oak kitchen table, simple home-kitchen setting, no unrelated side dishes\nSubject: the plausible finished dish exactly as produced by the recipe, with the correct protein or plant-based base, cooking method, shape, texture, sauce, topping, and garnish\nStyle/medium: realistic editorial food photography with believable home-cooked texture\nComposition/framing: landscape 3:2, slightly overhead view, full main dish visible with safe crop area for responsive cards\nLighting/mood: soft natural window light, appetizing but honest, gentle shadows\nConstraints: include only ingredients and garnishes supported by the recipe; no substitutions, no extra protein, no text, logos, watermark, collage, hands, packaging, impossible shapes, or misleading restaurant-perfect styling",
      "output_filename": "tomato-pepper-shakshuka.webp",
      "creation_date": "2026-10-13",
      "visual_match_review_status": "Passed labeled contact-sheet review against recipe title, ingredients, and method on 2026-10-13.",
      "duplicate_check_status": "Passed exact SHA-256 and 256-bit perceptual difference-hash checks; no exact or near duplicate primary image detected.",
      "sha256": "06fe8e5875e7de38115e1daa188697752fc5accafe785c19bd11e6c54982c64b",
      "width": 1200,
      "height": 800,
      "format": "WebP",
      "responsive_crop_review_status": "Passed 3:2 card and full-width recipe-cover crop review."
    },
    {
      "recipe_title": "Vegetable & egg fried rice",
      "recipe_url": "/recipes/vegetable-egg-fried-rice/",
      "old_image": "/assets/rice.jpg",
      "new_image": "/assets/vegetable-egg-fried-rice.webp",
      "status": "AI-generated",
      "source_page": null,
      "download_url": null,
      "creator": null,
      "license": null,
      "license_link": null,
      "commercial_use_note": "Generated specifically for The Kitchen Table; no third-party stock photograph is assigned as this recipe primary image.",
      "generation_prompt": "Use case: photorealistic-natural\nAsset type: primary recipe image for The Kitchen Table website\nPrimary request: Create one realistic, appetizing finished serving of the recipe \u201cVegetable & egg fried rice.\u201d\nRecipe description: Cold rice separates easily in the pan.\nExact listed ingredients: 400 g cooked rice, promptly cooled and refrigerated; 2  large eggs; 2 tbsp neutral oil; 1  carrot, finely diced; 100 g frozen peas; 2  spring onions, sliced; 1 tbsp soy sauce; 1 tsp toasted sesame oil\nComplete preparation method: Get everything ready: Break up any rice clumps. Beat the eggs in a small bowl. Place all ingredients near the stove; this dish moves quickly. Cook the eggs: Heat 1 teaspoon of the oil in a wide skillet. Scramble the eggs until set, then move to a clean plate. Stir-fry the vegetables: Add the remaining neutral oil. Cook carrot for 3\u20134 minutes, then add peas and spring onions for 2 minutes. Use medium-high heat and stir frequently. Add rice and finish: Add rice, breaking it up with the spatula. Stir-fry 4\u20135 minutes. Return eggs, add soy sauce and sesame oil, and toss. Heat throughout to 165\u00b0F / 74\u00b0C. Do not use rice that has been left at room temperature for a prolonged period.\nScene/backdrop: soft gray stone counter, simple home-kitchen setting, no unrelated side dishes\nSubject: the plausible finished dish exactly as produced by the recipe, with the correct protein or plant-based base, cooking method, shape, texture, sauce, topping, and garnish\nStyle/medium: realistic editorial food photography with believable home-cooked texture\nComposition/framing: landscape 3:2, natural eye-level table view, full main dish visible with safe crop area for responsive cards\nLighting/mood: soft natural window light, appetizing but honest, gentle shadows\nConstraints: include only ingredients and garnishes supported by the recipe; no substitutions, no extra protein, no text, logos, watermark, collage, hands, packaging, impossible shapes, or misleading restaurant-perfect styling",
      "output_filename": "vegetable-egg-fried-rice.webp",
      "creation_date": "2026-10-13",
      "visual_match_review_status": "Passed labeled contact-sheet review against recipe title, ingredients, and method on 2026-10-13.",
      "duplicate_check_status": "Passed exact SHA-256 and 256-bit perceptual difference-hash checks; no exact or near duplicate primary image detected.",
      "sha256": "9c8a0466ef929600458d5c49b57d590dea2c36312fd89634a3d31e219b87038a",
      "width": 1200,
      "height": 800,
      "format": "WebP",
      "responsive_crop_review_status": "Passed 3:2 card and full-width recipe-cover crop review."
    },
    {
      "recipe_title": "Teriyaki-style chicken rice bowls",
      "recipe_url": "/recipes/teriyaki-chicken-rice-bowls/",
      "old_image": "/assets/rice.jpg",
      "new_image": "/assets/teriyaki-chicken-rice-bowls.webp",
      "status": "AI-generated",
      "source_page": null,
      "download_url": null,
      "creator": null,
      "license": null,
      "license_link": null,
      "commercial_use_note": "Generated specifically for The Kitchen Table; no third-party stock photograph is assigned as this recipe primary image.",
      "generation_prompt": "Use case: photorealistic-natural\nAsset type: primary recipe image for The Kitchen Table website\nPrimary request: Create one realistic, appetizing finished serving of the recipe \u201cTeriyaki-style chicken rice bowls.\u201d\nRecipe description: A quick glaze clings best when it is added after the chicken has browned.\nExact listed ingredients: 300 g boneless chicken thighs, cut into 3 cm pieces; 1 tbsp neutral oil; 2 tbsp soy sauce; 1 tbsp honey; 1 tbsp rice vinegar; 3 tbsp water; 1 tsp grated ginger; 1 tsp cornstarch; 300 g hot cooked rice; 200 g broccoli florets\nComplete preparation method: Prepare the sauce: Whisk soy sauce, honey, vinegar, water, ginger, and cornstarch in a bowl. Keep a separate board for raw chicken and wash hands and surfaces after preparation. Steam the broccoli: Steam broccoli over simmering water for about 5\u20137 minutes until tender. Keep warm while cooking the chicken. Brown the chicken: Heat oil in a skillet over medium-high heat. Add chicken in a single layer and cook about 8\u201310 minutes, turning to brown all sides. Cook the thickest pieces to 165\u00b0F / 74\u00b0C. Glaze and serve: Stir the sauce again to lift settled starch, then pour into the skillet. Simmer 1\u20132 minutes until bubbling and glossy, thinning with water if needed. Spoon over hot rice with broccoli.\nScene/backdrop: cream linen over a wood table, simple home-kitchen setting, no unrelated side dishes\nSubject: the plausible finished dish exactly as produced by the recipe, with the correct protein or plant-based base, cooking method, shape, texture, sauce, topping, and garnish\nStyle/medium: realistic editorial food photography with believable home-cooked texture\nComposition/framing: landscape 3:2, 45-degree editorial view, full main dish visible with safe crop area for responsive cards\nLighting/mood: soft natural window light, appetizing but honest, gentle shadows\nConstraints: include only ingredients and garnishes supported by the recipe; no substitutions, no extra protein, no text, logos, watermark, collage, hands, packaging, impossible shapes, or misleading restaurant-perfect styling",
      "output_filename": "teriyaki-chicken-rice-bowls.webp",
      "creation_date": "2026-10-13",
      "visual_match_review_status": "Passed labeled contact-sheet review against recipe title, ingredients, and method on 2026-10-13.",
      "duplicate_check_status": "Passed exact SHA-256 and 256-bit perceptual difference-hash checks; no exact or near duplicate primary image detected.",
      "sha256": "d602a94524fb5e53530527f205d5293d0d9e48909d900d951de416f14069bff4",
      "width": 1200,
      "height": 800,
      "format": "WebP",
      "responsive_crop_review_status": "Passed 3:2 card and full-width recipe-cover crop review."
    },
    {
      "recipe_title": "Sesame peanut noodles",
      "recipe_url": "/recipes/sesame-peanut-noodles/",
      "old_image": "/assets/noodles.jpg",
      "new_image": "/assets/sesame-peanut-noodles.webp",
      "status": "AI-generated",
      "source_page": null,
      "download_url": null,
      "creator": null,
      "license": null,
      "license_link": null,
      "commercial_use_note": "Generated specifically for The Kitchen Table; no third-party stock photograph is assigned as this recipe primary image.",
      "generation_prompt": "Use case: photorealistic-natural\nAsset type: primary recipe image for The Kitchen Table website\nPrimary request: Create one realistic, appetizing finished serving of the recipe \u201cSesame peanut noodles.\u201d\nRecipe description: A little warm water transforms peanut butter into a creamy noodle sauce.\nExact listed ingredients: 180 g wheat noodles without egg; 3 tbsp smooth peanut butter; 1 tbsp soy sauce; 1 tbsp rice vinegar; 1 tsp maple syrup; 1 tsp toasted sesame oil; 3 tbsp warm water; 1  carrot, cut into thin matchsticks; 0.5  cucumber, thinly sliced; 2  spring onions, sliced\nComplete preparation method: Cook the noodles: Cook noodles according to the package. Drain and rinse briefly if serving cool, then drain thoroughly so the dressing is not diluted. Make the dressing: Whisk peanut butter, soy sauce, vinegar, maple syrup, sesame oil, and warm water. Add more water a teaspoon at a time until pourable. Prepare the crunch: Cut carrot and cucumber thinly so they distribute through the noodles. Slice spring onions and keep a small handful for the top. Toss and serve: Toss noodles with dressing and vegetables. Add a splash of water if they tighten up while standing. Serve promptly, or refrigerate in a covered container. Stir before eating.\nScene/backdrop: dark walnut table, simple home-kitchen setting, no unrelated side dishes\nSubject: the plausible finished dish exactly as produced by the recipe, with the correct protein or plant-based base, cooking method, shape, texture, sauce, topping, and garnish\nStyle/medium: realistic editorial food photography with believable home-cooked texture\nComposition/framing: landscape 3:2, top-down view, full main dish visible with safe crop area for responsive cards\nLighting/mood: soft natural window light, appetizing but honest, gentle shadows\nConstraints: include only ingredients and garnishes supported by the recipe; no substitutions, no extra protein, no text, logos, watermark, collage, hands, packaging, impossible shapes, or misleading restaurant-perfect styling",
      "output_filename": "sesame-peanut-noodles.webp",
      "creation_date": "2026-10-13",
      "visual_match_review_status": "Passed labeled contact-sheet review against recipe title, ingredients, and method on 2026-10-13.",
      "duplicate_check_status": "Passed exact SHA-256 and 256-bit perceptual difference-hash checks; no exact or near duplicate primary image detected.",
      "sha256": "eb750642eaf9a1331f31b71031050f227103ff2af4f9f6f2c1a4499c7542327f",
      "width": 1200,
      "height": 800,
      "format": "WebP",
      "responsive_crop_review_status": "Passed 3:2 card and full-width recipe-cover crop review."
    },
    {
      "recipe_title": "Coconut chickpea curry",
      "recipe_url": "/recipes/coconut-chickpea-curry/",
      "old_image": "/assets/curry.jpg",
      "new_image": "/assets/coconut-chickpea-curry.webp",
      "status": "AI-generated",
      "source_page": null,
      "download_url": null,
      "creator": null,
      "license": null,
      "license_link": null,
      "commercial_use_note": "Generated specifically for The Kitchen Table; no third-party stock photograph is assigned as this recipe primary image.",
      "generation_prompt": "Use case: photorealistic-natural\nAsset type: primary recipe image for The Kitchen Table website\nPrimary request: Create one realistic, appetizing finished serving of the recipe \u201cCoconut chickpea curry.\u201d\nRecipe description: Canned chickpeas make a satisfying curry without a long simmer.\nExact listed ingredients: 1 tbsp neutral oil; 1  onion, diced; 2  garlic cloves, minced; 1 tbsp grated ginger; 2 tsp mild curry powder; 400 g canned chopped tomatoes; 400 ml coconut milk; 2  400 g cans chickpeas, drained; 100 g spinach; 0.5 tsp salt; 1 tbsp lime juice\nComplete preparation method: Soften the onion: Heat oil in a saucepan over medium heat. Cook onion for 7\u20138 minutes until soft. Stir in garlic and ginger for 30 seconds. Bloom the spices: Add curry powder and stir for 20\u201330 seconds, taking care not to burn it. Add tomatoes immediately and simmer for 5 minutes. Simmer: Add coconut milk, chickpeas, and salt. Simmer gently uncovered for 12\u201315 minutes, stirring occasionally, until the sauce coats a spoon. Finish fresh: Stir in spinach until wilted. Add lime juice and taste. Serve with cooked rice or flatbread. For a thicker sauce, mash a spoonful of chickpeas against the side of the pan.\nScene/backdrop: warm pale stone table, simple home-kitchen setting, no unrelated side dishes\nSubject: the plausible finished dish exactly as produced by the recipe, with the correct protein or plant-based base, cooking method, shape, texture, sauce, topping, and garnish\nStyle/medium: realistic editorial food photography with believable home-cooked texture\nComposition/framing: landscape 3:2, three-quarter close view, full main dish visible with safe crop area for responsive cards\nLighting/mood: soft natural window light, appetizing but honest, gentle shadows\nConstraints: include only ingredients and garnishes supported by the recipe; no substitutions, no extra protein, no text, logos, watermark, collage, hands, packaging, impossible shapes, or misleading restaurant-perfect styling",
      "output_filename": "coconut-chickpea-curry.webp",
      "creation_date": "2026-10-13",
      "visual_match_review_status": "Passed labeled contact-sheet review against recipe title, ingredients, and method on 2026-10-13.",
      "duplicate_check_status": "Passed exact SHA-256 and 256-bit perceptual difference-hash checks; no exact or near duplicate primary image detected.",
      "sha256": "9044a31455e9eeb67da31b9374c592f7ff6ae9f7c6152562b7519b4c0996c93b",
      "width": 1200,
      "height": 800,
      "format": "WebP",
      "responsive_crop_review_status": "Passed 3:2 card and full-width recipe-cover crop review."
    },
    {
      "recipe_title": "Weeknight red lentil dal",
      "recipe_url": "/recipes/red-lentil-dal/",
      "old_image": "/assets/curry.jpg",
      "new_image": "/assets/red-lentil-dal.webp",
      "status": "AI-generated",
      "source_page": null,
      "download_url": null,
      "creator": null,
      "license": null,
      "license_link": null,
      "commercial_use_note": "Generated specifically for The Kitchen Table; no third-party stock photograph is assigned as this recipe primary image.",
      "generation_prompt": "Use case: photorealistic-natural\nAsset type: primary recipe image for The Kitchen Table website\nPrimary request: Create one realistic, appetizing finished serving of the recipe \u201cWeeknight red lentil dal.\u201d\nRecipe description: Split red lentils break down into a creamy texture as they cook.\nExact listed ingredients: 200 g split red lentils, rinsed; 1  onion, finely diced; 2  garlic cloves, minced; 1 tbsp grated ginger; 1 tbsp neutral oil; 1 tsp ground cumin; 0.5 tsp turmeric; 400 g canned chopped tomatoes; 700 ml water; 0.5 tsp salt; 1 tbsp lemon juice\nComplete preparation method: Start the aromatics: Heat oil in a saucepan. Cook onion over medium-low heat for 7 minutes until softened. Add garlic and ginger for 30 seconds. Add spices and lentils: Stir in cumin and turmeric for 20 seconds, then add tomatoes, rinsed lentils, and water. Bring to a gentle simmer. Cook until soft: Simmer partially covered for 20\u201325 minutes, stirring often toward the end. Add water if the lentils catch on the bottom. They should collapse into a thick, spoonable texture. Season at the end: Stir in salt and lemon juice. Taste and adjust. Rest a few minutes; lentils thicken as they cool. Serve with rice and vegetables.\nScene/backdrop: light oak kitchen table, simple home-kitchen setting, no unrelated side dishes\nSubject: the plausible finished dish exactly as produced by the recipe, with the correct protein or plant-based base, cooking method, shape, texture, sauce, topping, and garnish\nStyle/medium: realistic editorial food photography with believable home-cooked texture\nComposition/framing: landscape 3:2, slightly overhead view, full main dish visible with safe crop area for responsive cards\nLighting/mood: soft natural window light, appetizing but honest, gentle shadows\nConstraints: include only ingredients and garnishes supported by the recipe; no substitutions, no extra protein, no text, logos, watermark, collage, hands, packaging, impossible shapes, or misleading restaurant-perfect styling",
      "output_filename": "red-lentil-dal.webp",
      "creation_date": "2026-10-13",
      "visual_match_review_status": "Passed labeled contact-sheet review against recipe title, ingredients, and method on 2026-10-13.",
      "duplicate_check_status": "Passed exact SHA-256 and 256-bit perceptual difference-hash checks; no exact or near duplicate primary image detected.",
      "sha256": "ae9e568017093ddc052bbf65314a74c889a99472130e2f224ac611cf18717e4b",
      "width": 1200,
      "height": 800,
      "format": "WebP",
      "responsive_crop_review_status": "Passed 3:2 card and full-width recipe-cover crop review."
    },
    {
      "recipe_title": "Spiced beef tacos",
      "recipe_url": "/recipes/spiced-beef-tacos/",
      "old_image": "/assets/tacos.jpg",
      "new_image": "/assets/spiced-beef-tacos.webp",
      "status": "AI-generated",
      "source_page": null,
      "download_url": null,
      "creator": null,
      "license": null,
      "license_link": null,
      "commercial_use_note": "Generated specifically for The Kitchen Table; no third-party stock photograph is assigned as this recipe primary image.",
      "generation_prompt": "Use case: photorealistic-natural\nAsset type: primary recipe image for The Kitchen Table website\nPrimary request: Create one realistic, appetizing finished serving of the recipe \u201cSpiced beef tacos.\u201d\nRecipe description: A little tomato paste and water keep taco filling juicy instead of dry and crumbly.\nExact listed ingredients: 500 g ground beef; 1  small onion, diced; 1 tsp ground cumin; 1 tsp smoked paprika; 0.5 tsp dried oregano; 2 tbsp tomato paste; 100 ml water; 0.5 tsp salt; 8  small tortillas; 100 g shredded lettuce; 2  tomatoes, diced; 1  lime, cut into wedges\nComplete preparation method: Prepare toppings: Wash and dry lettuce, dice tomatoes, and cut lime. Keep these away from raw-meat preparation tools. Brown the beef: Place beef and onion in a skillet over medium-high heat. Break up with a spoon and cook for about 8\u201310 minutes. Spoon off excess fat carefully if necessary. Season and simmer: Stir in cumin, paprika, oregano, tomato paste, water, and salt. Simmer 5 minutes until saucy but not watery. Confirm ground beef reaches 160\u00b0F / 71\u00b0C. Build the tacos: Warm tortillas according to their package. Fill with beef, lettuce, and tomato. Squeeze lime over just before eating. Add other toppings you enjoy.\nScene/backdrop: soft gray stone counter, simple home-kitchen setting, no unrelated side dishes\nSubject: the plausible finished dish exactly as produced by the recipe, with the correct protein or plant-based base, cooking method, shape, texture, sauce, topping, and garnish\nStyle/medium: realistic editorial food photography with believable home-cooked texture\nComposition/framing: landscape 3:2, natural eye-level table view, full main dish visible with safe crop area for responsive cards\nLighting/mood: soft natural window light, appetizing but honest, gentle shadows\nConstraints: include only ingredients and garnishes supported by the recipe; no substitutions, no extra protein, no text, logos, watermark, collage, hands, packaging, impossible shapes, or misleading restaurant-perfect styling",
      "output_filename": "spiced-beef-tacos.webp",
      "creation_date": "2026-10-13",
      "visual_match_review_status": "Passed labeled contact-sheet review against recipe title, ingredients, and method on 2026-10-13.",
      "duplicate_check_status": "Passed exact SHA-256 and 256-bit perceptual difference-hash checks; no exact or near duplicate primary image detected.",
      "sha256": "979ced73e6906ab1cf5fa17c0a5d38101a65c710507ba441921c2a0908f68c37",
      "width": 1200,
      "height": 800,
      "format": "WebP",
      "responsive_crop_review_status": "Passed 3:2 card and full-width recipe-cover crop review."
    },
    {
      "recipe_title": "Black bean & cheese quesadillas",
      "recipe_url": "/recipes/black-bean-quesadillas/",
      "old_image": "/assets/tacos.jpg",
      "new_image": "/assets/black-bean-quesadillas.webp",
      "status": "AI-generated",
      "source_page": null,
      "download_url": null,
      "creator": null,
      "license": null,
      "license_link": null,
      "commercial_use_note": "Generated specifically for The Kitchen Table; no third-party stock photograph is assigned as this recipe primary image.",
      "generation_prompt": "Use case: photorealistic-natural\nAsset type: primary recipe image for The Kitchen Table website\nPrimary request: Create one realistic, appetizing finished serving of the recipe \u201cBlack bean & cheese quesadillas.\u201d\nRecipe description: A thick filling and moderate heat give you crisp tortillas and melted cheese at the same time.\nExact listed ingredients: 4  medium flour tortillas; 1  400 g can black beans, drained and rinsed; 100 g vegetarian cheddar, grated; 0.5 tsp ground cumin; 2 tbsp tomato salsa; 1 tbsp neutral oil; 1  spring onion, finely sliced\nComplete preparation method: Make the filling: Mash half the beans with cumin and salsa. Stir in the remaining whole beans and spring onion. Keep the mixture thick rather than runny. Fill the tortillas: Divide beans over two tortillas, leaving a border. Sprinkle with cheese and cover with the remaining tortillas. Press gently. Cook gently: Warm half the oil in a skillet over medium-low heat. Add one quesadilla and cook 3\u20134 minutes until golden. Flip carefully with a wide turner and cook the second side until the cheese melts. Slice and serve: Repeat with remaining oil and quesadilla. Let each stand for a minute before slicing into wedges. Serve with extra salsa on the side.\nScene/backdrop: cream linen over a wood table, simple home-kitchen setting, no unrelated side dishes\nSubject: the plausible finished dish exactly as produced by the recipe, with the correct protein or plant-based base, cooking method, shape, texture, sauce, topping, and garnish\nStyle/medium: realistic editorial food photography with believable home-cooked texture\nComposition/framing: landscape 3:2, 45-degree editorial view, full main dish visible with safe crop area for responsive cards\nLighting/mood: soft natural window light, appetizing but honest, gentle shadows\nConstraints: include only ingredients and garnishes supported by the recipe; no substitutions, no extra protein, no text, logos, watermark, collage, hands, packaging, impossible shapes, or misleading restaurant-perfect styling",
      "output_filename": "black-bean-quesadillas.webp",
      "creation_date": "2026-10-13",
      "visual_match_review_status": "Passed labeled contact-sheet review against recipe title, ingredients, and method on 2026-10-13.",
      "duplicate_check_status": "Passed exact SHA-256 and 256-bit perceptual difference-hash checks; no exact or near duplicate primary image detected.",
      "sha256": "9e07b99ad0738fb0bd52e2f659460799fc61a015fdc2b8e2b2c40b34db9f45f1",
      "width": 1200,
      "height": 800,
      "format": "WebP",
      "responsive_crop_review_status": "Passed 3:2 card and full-width recipe-cover crop review."
    },
    {
      "recipe_title": "Beef & bean chili",
      "recipe_url": "/recipes/classic-beef-bean-chili/",
      "old_image": "/assets/stew.jpg",
      "new_image": "/assets/classic-beef-bean-chili.webp",
      "status": "AI-generated",
      "source_page": null,
      "download_url": null,
      "creator": null,
      "license": null,
      "license_link": null,
      "commercial_use_note": "Generated specifically for The Kitchen Table; no third-party stock photograph is assigned as this recipe primary image.",
      "generation_prompt": "Use case: photorealistic-natural\nAsset type: primary recipe image for The Kitchen Table website\nPrimary request: Create one realistic, appetizing finished serving of the recipe \u201cBeef & bean chili.\u201d\nRecipe description: A gentle simmer gives the vegetables time to soften and the sauce time to thicken.\nExact listed ingredients: 500 g ground beef; 1  onion, diced; 1  bell pepper, diced; 2  garlic cloves, minced; 2 tsp ground cumin; 2 tsp mild chili powder blend; 400 g canned chopped tomatoes; 1  400 g can kidney beans, drained and rinsed; 250 ml beef stock; 1 tbsp tomato paste; 0.5 tsp salt\nComplete preparation method: Brown the beef: Cook beef in a heavy saucepan over medium-high heat, breaking it up, for 8\u201310 minutes. Check it reaches 160\u00b0F / 71\u00b0C. Drain excessive fat if necessary. Build the base: Add onion and pepper and cook for 6\u20138 minutes. Stir in garlic, cumin, chili powder, and tomato paste for 30 seconds. Simmer slowly: Add tomatoes, canned beans, stock, and salt. Bring to a simmer, then reduce heat and cook partly covered for 30\u201335 minutes. Stir occasionally and add water if it becomes too thick. Taste and serve: Taste and adjust salt or spice gradually. Serve in bowls with bread or rice. Portion leftovers into shallow containers and refrigerate promptly.\nScene/backdrop: dark walnut table, simple home-kitchen setting, no unrelated side dishes\nSubject: the plausible finished dish exactly as produced by the recipe, with the correct protein or plant-based base, cooking method, shape, texture, sauce, topping, and garnish\nStyle/medium: realistic editorial food photography with believable home-cooked texture\nComposition/framing: landscape 3:2, top-down view, full main dish visible with safe crop area for responsive cards\nLighting/mood: soft natural window light, appetizing but honest, gentle shadows\nConstraints: include only ingredients and garnishes supported by the recipe; no substitutions, no extra protein, no text, logos, watermark, collage, hands, packaging, impossible shapes, or misleading restaurant-perfect styling",
      "output_filename": "classic-beef-bean-chili.webp",
      "creation_date": "2026-10-13",
      "visual_match_review_status": "Passed labeled contact-sheet review against recipe title, ingredients, and method on 2026-10-13.",
      "duplicate_check_status": "Passed exact SHA-256 and 256-bit perceptual difference-hash checks; no exact or near duplicate primary image detected.",
      "sha256": "494d1101b4f82f081f3c04a6b5ef256f232abc2a6615b5f6fde128281b926377",
      "width": 1200,
      "height": 800,
      "format": "WebP",
      "responsive_crop_review_status": "Passed 3:2 card and full-width recipe-cover crop review."
    },
    {
      "recipe_title": "Vegetable enchilada bake",
      "recipe_url": "/recipes/vegetable-enchilada-bake/",
      "old_image": "/assets/tacos.jpg",
      "new_image": "/assets/vegetable-enchilada-bake.webp",
      "status": "AI-generated",
      "source_page": null,
      "download_url": null,
      "creator": null,
      "license": null,
      "license_link": null,
      "commercial_use_note": "Generated specifically for The Kitchen Table; no third-party stock photograph is assigned as this recipe primary image.",
      "generation_prompt": "Use case: photorealistic-natural\nAsset type: primary recipe image for The Kitchen Table website\nPrimary request: Create one realistic, appetizing finished serving of the recipe \u201cVegetable enchilada bake.\u201d\nRecipe description: Softened tortillas are easier to roll without splitting.\nExact listed ingredients: 8  small corn tortillas; 1  400 g can black beans, drained; 1  bell pepper, diced; 1  courgette or zucchini, diced; 1 tbsp olive oil; 1 tsp ground cumin; 400 g canned crushed tomatoes; 1 tsp smoked paprika; 120 g vegetarian cheddar, grated; 0.5 tsp salt\nComplete preparation method: Cook the vegetables: Heat oven to 375\u00b0F / 190\u00b0C. Warm oil in a skillet and cook pepper and zucchini for 8\u201310 minutes. Stir in beans, cumin, and half the salt. Make a simple sauce: Mix tomatoes, paprika, and remaining salt in a bowl. Spread a thin layer in a medium baking dish. Warm tortillas briefly so they bend without cracking. Fill and arrange: Divide the vegetable filling among tortillas, roll gently, and place seam-side down in the dish. Spoon over remaining sauce and sprinkle with cheese. Bake: Cover loosely with foil and bake 20 minutes. Uncover for 10\u201315 minutes until bubbling and heated through to 165\u00b0F / 74\u00b0C. Rest 5 minutes before serving.\nScene/backdrop: warm pale stone table, simple home-kitchen setting, no unrelated side dishes\nSubject: the plausible finished dish exactly as produced by the recipe, with the correct protein or plant-based base, cooking method, shape, texture, sauce, topping, and garnish\nStyle/medium: realistic editorial food photography with believable home-cooked texture\nComposition/framing: landscape 3:2, three-quarter close view, full main dish visible with safe crop area for responsive cards\nLighting/mood: soft natural window light, appetizing but honest, gentle shadows\nConstraints: include only ingredients and garnishes supported by the recipe; no substitutions, no extra protein, no text, logos, watermark, collage, hands, packaging, impossible shapes, or misleading restaurant-perfect styling",
      "output_filename": "vegetable-enchilada-bake.webp",
      "creation_date": "2026-10-13",
      "visual_match_review_status": "Passed labeled contact-sheet review against recipe title, ingredients, and method on 2026-10-13.",
      "duplicate_check_status": "Passed exact SHA-256 and 256-bit perceptual difference-hash checks; no exact or near duplicate primary image detected.",
      "sha256": "8fb2fbc7cb38aebb12f2d0c0d5dd745202dfdb7d1f282f44ea1d2eadeaa3b3c3",
      "width": 1200,
      "height": 800,
      "format": "WebP",
      "responsive_crop_review_status": "Passed 3:2 card and full-width recipe-cover crop review."
    },
    {
      "recipe_title": "Garlic lemon shrimp",
      "recipe_url": "/recipes/garlic-lemon-shrimp/",
      "old_image": "/assets/shrimp.jpg",
      "new_image": "/assets/garlic-lemon-shrimp.webp",
      "status": "AI-generated",
      "source_page": null,
      "download_url": null,
      "creator": null,
      "license": null,
      "license_link": null,
      "commercial_use_note": "Generated specifically for The Kitchen Table; no third-party stock photograph is assigned as this recipe primary image.",
      "generation_prompt": "Use case: photorealistic-natural\nAsset type: primary recipe image for The Kitchen Table website\nPrimary request: Create one realistic, appetizing finished serving of the recipe \u201cGarlic lemon shrimp.\u201d\nRecipe description: Shrimp cook quickly, so have the garlic and lemon ready before they hit the pan.\nExact listed ingredients: 300 g raw peeled shrimp, thawed safely and deveined; 1 tbsp olive oil; 20 g butter; 3  garlic cloves, minced; 1 tbsp lemon juice; 1 tbsp chopped parsley; 0.25 tsp salt; 0.25 tsp black pepper\nComplete preparation method: Dry the shrimp: Pat thawed shrimp dry with paper towels. Season with salt and pepper. Keep raw-seafood tools separate from ready-to-eat food. Sear in one layer: Heat oil in a skillet over medium-high heat. Add shrimp in one layer and cook about 2 minutes, until the underside turns pink and opaque. Add garlic butter: Turn shrimp and reduce heat to medium-low. Add butter and garlic and cook another 1\u20133 minutes, depending on size. Stir the garlic so it does not burn. Check and finish: Cook shrimp until the flesh is pearly and opaque; check 145\u00b0F / 63\u00b0C in the thickest part where measurable. Remove from heat, add lemon juice and parsley, and serve with rice or bread.\nScene/backdrop: light oak kitchen table, simple home-kitchen setting, no unrelated side dishes\nSubject: the plausible finished dish exactly as produced by the recipe, with the correct protein or plant-based base, cooking method, shape, texture, sauce, topping, and garnish\nStyle/medium: realistic editorial food photography with believable home-cooked texture\nComposition/framing: landscape 3:2, slightly overhead view, full main dish visible with safe crop area for responsive cards\nLighting/mood: soft natural window light, appetizing but honest, gentle shadows\nConstraints: include only ingredients and garnishes supported by the recipe; no substitutions, no extra protein, no text, logos, watermark, collage, hands, packaging, impossible shapes, or misleading restaurant-perfect styling",
      "output_filename": "garlic-lemon-shrimp.webp",
      "creation_date": "2026-10-13",
      "visual_match_review_status": "Passed labeled contact-sheet review against recipe title, ingredients, and method on 2026-10-13.",
      "duplicate_check_status": "Passed exact SHA-256 and 256-bit perceptual difference-hash checks; no exact or near duplicate primary image detected.",
      "sha256": "87e3adef99e814c84710a5ed1b11029b4aaf3cc767bfdf7df1cf6b67357791c3",
      "width": 1200,
      "height": 800,
      "format": "WebP",
      "responsive_crop_review_status": "Passed 3:2 card and full-width recipe-cover crop review."
    },
    {
      "recipe_title": "Tomato & olive baked cod",
      "recipe_url": "/recipes/tomato-olive-baked-cod/",
      "old_image": "/assets/salmon.jpg",
      "new_image": "/assets/tomato-olive-baked-cod.webp",
      "status": "AI-generated",
      "source_page": null,
      "download_url": null,
      "creator": null,
      "license": null,
      "license_link": null,
      "commercial_use_note": "Generated specifically for The Kitchen Table; no third-party stock photograph is assigned as this recipe primary image.",
      "generation_prompt": "Use case: photorealistic-natural\nAsset type: primary recipe image for The Kitchen Table website\nPrimary request: Create one realistic, appetizing finished serving of the recipe \u201cTomato & olive baked cod.\u201d\nRecipe description: Roasting the tomatoes first gives them time to soften before the fish goes in.\nExact listed ingredients: 2  cod fillets, about 150 g each; 250 g cherry tomatoes, halved; 40 g pitted olives; 1 tbsp olive oil; 1  garlic clove, sliced; 0.5 tsp dried oregano; 0.25 tsp salt; 1 tbsp lemon juice\nComplete preparation method: Roast the tomatoes: Heat oven to 400\u00b0F / 200\u00b0C. Toss tomatoes, olives, oil, garlic, and oregano in a baking dish. Roast for 10 minutes. Add the fish: Pat cod dry and season lightly with salt. Nestle into the tomatoes and spoon a little of the warm oil over the fish. Bake through: Return to the oven for 12\u201318 minutes, depending on thickness. Cook until the thickest part reaches 145\u00b0F / 63\u00b0C and the fish flakes easily. Finish: Squeeze over lemon juice. Spoon tomatoes and pan juices onto plates with the fish. Serve with cooked grains or bread to catch the sauce.\nScene/backdrop: soft gray stone counter, simple home-kitchen setting, no unrelated side dishes\nSubject: the plausible finished dish exactly as produced by the recipe, with the correct protein or plant-based base, cooking method, shape, texture, sauce, topping, and garnish\nStyle/medium: realistic editorial food photography with believable home-cooked texture\nComposition/framing: landscape 3:2, natural eye-level table view, full main dish visible with safe crop area for responsive cards\nLighting/mood: soft natural window light, appetizing but honest, gentle shadows\nConstraints: include only ingredients and garnishes supported by the recipe; no substitutions, no extra protein, no text, logos, watermark, collage, hands, packaging, impossible shapes, or misleading restaurant-perfect styling",
      "output_filename": "tomato-olive-baked-cod.webp",
      "creation_date": "2026-10-13",
      "visual_match_review_status": "Passed labeled contact-sheet review against recipe title, ingredients, and method on 2026-10-13.",
      "duplicate_check_status": "Passed exact SHA-256 and 256-bit perceptual difference-hash checks; no exact or near duplicate primary image detected.",
      "sha256": "e3db15a9b2bdbf82fd3f2cadc3142142bf71bda90aba49b5f046018672956496",
      "width": 1200,
      "height": 800,
      "format": "WebP",
      "responsive_crop_review_status": "Passed 3:2 card and full-width recipe-cover crop review."
    },
    {
      "recipe_title": "Mushroom risotto",
      "recipe_url": "/recipes/mushroom-risotto/",
      "old_image": "/assets/rice.jpg",
      "new_image": "/assets/mushroom-risotto.webp",
      "status": "AI-generated",
      "source_page": null,
      "download_url": null,
      "creator": null,
      "license": null,
      "license_link": null,
      "commercial_use_note": "Generated specifically for The Kitchen Table; no third-party stock photograph is assigned as this recipe primary image.",
      "generation_prompt": "Use case: photorealistic-natural\nAsset type: primary recipe image for The Kitchen Table website\nPrimary request: Create one realistic, appetizing finished serving of the recipe \u201cMushroom risotto.\u201d\nRecipe description: Risotto should flow gently on the plate instead of standing in a stiff mound.\nExact listed ingredients: 300 g arborio rice; 250 g mushrooms, sliced; 1  onion, finely diced; 2 tbsp olive oil; 1100 ml hot vegetable stock, approximately; 40 g vegetarian Parmesan-style hard cheese, grated; 20 g butter; 0.25 tsp black pepper\nComplete preparation method: Brown the mushrooms: Warm half the oil in a wide saucepan. Cook mushrooms over medium-high heat for 6\u20138 minutes, until their moisture cooks off. Transfer to a plate. Keep the stock hot in a second pan. Start the rice: Add remaining oil and onion to the saucepan. Cook gently for 5 minutes. Add rice and stir for 1\u20132 minutes until the grains are coated and warm. Add stock gradually: Add a ladle of hot stock and stir frequently. When mostly absorbed, add another. Continue for about 18\u201325 minutes, until rice is tender with a slight bite. You may need more or less stock; add water if you run out. Finish off heat: Stir in mushrooms, butter, cheese, and pepper off the heat. Add enough stock for a loose, flowing consistency. Rest 1 minute and serve; risotto thickens quickly as it stands.\nScene/backdrop: cream linen over a wood table, simple home-kitchen setting, no unrelated side dishes\nSubject: the plausible finished dish exactly as produced by the recipe, with the correct protein or plant-based base, cooking method, shape, texture, sauce, topping, and garnish\nStyle/medium: realistic editorial food photography with believable home-cooked texture\nComposition/framing: landscape 3:2, 45-degree editorial view, full main dish visible with safe crop area for responsive cards\nLighting/mood: soft natural window light, appetizing but honest, gentle shadows\nConstraints: include only ingredients and garnishes supported by the recipe; no substitutions, no extra protein, no text, logos, watermark, collage, hands, packaging, impossible shapes, or misleading restaurant-perfect styling",
      "output_filename": "mushroom-risotto.webp",
      "creation_date": "2026-10-13",
      "visual_match_review_status": "Passed labeled contact-sheet review against recipe title, ingredients, and method on 2026-10-13.",
      "duplicate_check_status": "Passed exact SHA-256 and 256-bit perceptual difference-hash checks; no exact or near duplicate primary image detected.",
      "sha256": "6871cd16ddc9ca73c4b4fde550c293496008b116dd4d17a7f56b6bdf0c1a4c33",
      "width": 1200,
      "height": 800,
      "format": "WebP",
      "responsive_crop_review_status": "Passed 3:2 card and full-width recipe-cover crop review."
    },
    {
      "recipe_title": "Spicy tomato pasta",
      "recipe_url": "/recipes/spicy-tomato-pasta/",
      "old_image": "/assets/pasta.jpg",
      "new_image": "/assets/spicy-tomato-pasta.webp",
      "status": "AI-generated",
      "source_page": null,
      "download_url": null,
      "creator": null,
      "license": null,
      "license_link": null,
      "commercial_use_note": "Generated specifically for The Kitchen Table; no third-party stock photograph is assigned as this recipe primary image.",
      "generation_prompt": "Use case: photorealistic-natural\nAsset type: primary recipe image for The Kitchen Table website\nPrimary request: Create one realistic, appetizing finished serving of the recipe \u201cSpicy tomato pasta.\u201d\nRecipe description: Tomatoes, garlic, and a little chili make a full-flavored sauce without a long ingredient list.\nExact listed ingredients: 200 g dried egg-free pasta; 1 tbsp olive oil; 3  garlic cloves, thinly sliced; 0.25 tsp chili flakes, or to taste; 400 g canned crushed tomatoes; 0.25 tsp salt; 1 tbsp chopped parsley\nComplete preparation method: Start the sauce: Warm oil in a saucepan over medium-low heat. Add garlic and chili flakes and cook gently for 30\u201360 seconds, just until fragrant. Do not let the garlic brown deeply. Simmer: Add tomatoes and salt. Simmer uncovered for 15\u201320 minutes, stirring occasionally, until the sauce thickens. Cook the pasta: Meanwhile, boil pasta in salted water according to the package. Reserve \u00bd cup cooking water before draining. Toss together: Add pasta to the sauce and toss over low heat for a minute. Loosen with a splash of pasta water as needed. Add parsley and taste before adding more salt or chili.\nScene/backdrop: dark walnut table, simple home-kitchen setting, no unrelated side dishes\nSubject: the plausible finished dish exactly as produced by the recipe, with the correct protein or plant-based base, cooking method, shape, texture, sauce, topping, and garnish\nStyle/medium: realistic editorial food photography with believable home-cooked texture\nComposition/framing: landscape 3:2, top-down view, full main dish visible with safe crop area for responsive cards\nLighting/mood: soft natural window light, appetizing but honest, gentle shadows\nConstraints: include only ingredients and garnishes supported by the recipe; no substitutions, no extra protein, no text, logos, watermark, collage, hands, packaging, impossible shapes, or misleading restaurant-perfect styling",
      "output_filename": "spicy-tomato-pasta.webp",
      "creation_date": "2026-10-13",
      "visual_match_review_status": "Passed labeled contact-sheet review against recipe title, ingredients, and method on 2026-10-13.",
      "duplicate_check_status": "Passed exact SHA-256 and 256-bit perceptual difference-hash checks; no exact or near duplicate primary image detected.",
      "sha256": "2384adb4a9e0b3d10f5ebae8e6d6e27af83853ad0b17dcd0fcba6df6b888c1ce",
      "width": 1200,
      "height": 800,
      "format": "WebP",
      "responsive_crop_review_status": "Passed 3:2 card and full-width recipe-cover crop review."
    },
    {
      "recipe_title": "Baked turkey meatballs in tomato sauce",
      "recipe_url": "/recipes/baked-turkey-meatballs/",
      "old_image": "/assets/stew.jpg",
      "new_image": "/assets/baked-turkey-meatballs.webp",
      "status": "AI-generated",
      "source_page": null,
      "download_url": null,
      "creator": null,
      "license": null,
      "license_link": null,
      "commercial_use_note": "Generated specifically for The Kitchen Table; no third-party stock photograph is assigned as this recipe primary image.",
      "generation_prompt": "Use case: photorealistic-natural\nAsset type: primary recipe image for The Kitchen Table website\nPrimary request: Create one realistic, appetizing finished serving of the recipe \u201cBaked turkey meatballs in tomato sauce.\u201d\nRecipe description: Evenly sized meatballs cook more consistently.\nExact listed ingredients: 500 g ground turkey; 1  large egg; 50 g breadcrumbs; 2 tbsp milk; 1  garlic clove, minced; 1 tsp dried oregano; 0.5 tsp salt; 0.25 tsp black pepper; 500 g tomato passata; 1 tbsp olive oil\nComplete preparation method: Make the mixture: Heat oven to 400\u00b0F / 200\u00b0C. Stir breadcrumbs and milk in a bowl; rest 2 minutes. Add turkey, egg, garlic, half the oregano, salt, and pepper. Mix gently until combined. Shape: With clean lightly damp hands, shape into 16 evenly sized balls. Place on an oiled baking sheet with space between. Wash hands and raw-meat surfaces afterward. Bake and simmer sauce: Bake 18\u201322 minutes, until the center of several meatballs reaches 165\u00b0F / 74\u00b0C. Meanwhile, simmer passata, oil, and remaining oregano in a saucepan for 15 minutes. Combine: Transfer fully cooked meatballs to the sauce and simmer gently for 3\u20135 minutes. Taste the sauce and adjust seasoning. Serve with pasta, rice, or vegetables.\nScene/backdrop: warm pale stone table, simple home-kitchen setting, no unrelated side dishes\nSubject: the plausible finished dish exactly as produced by the recipe, with the correct protein or plant-based base, cooking method, shape, texture, sauce, topping, and garnish\nStyle/medium: realistic editorial food photography with believable home-cooked texture\nComposition/framing: landscape 3:2, three-quarter close view, full main dish visible with safe crop area for responsive cards\nLighting/mood: soft natural window light, appetizing but honest, gentle shadows\nConstraints: include only ingredients and garnishes supported by the recipe; no substitutions, no extra protein, no text, logos, watermark, collage, hands, packaging, impossible shapes, or misleading restaurant-perfect styling",
      "output_filename": "baked-turkey-meatballs.webp",
      "creation_date": "2026-10-13",
      "visual_match_review_status": "Passed labeled contact-sheet review against recipe title, ingredients, and method on 2026-10-13.",
      "duplicate_check_status": "Passed exact SHA-256 and 256-bit perceptual difference-hash checks; no exact or near duplicate primary image detected.",
      "sha256": "66026a7cad6445da6389fefe1e0de8a91afc24eabfc527bf4e041ee5e38f56fa",
      "width": 1200,
      "height": 800,
      "format": "WebP",
      "responsive_crop_review_status": "Passed 3:2 card and full-width recipe-cover crop review."
    },
    {
      "recipe_title": "Slow-braised beef stew",
      "recipe_url": "/recipes/slow-braised-beef-stew/",
      "old_image": "/assets/stew.jpg",
      "new_image": "/assets/slow-braised-beef-stew.webp",
      "status": "AI-generated",
      "source_page": null,
      "download_url": null,
      "creator": null,
      "license": null,
      "license_link": null,
      "commercial_use_note": "Generated specifically for The Kitchen Table; no third-party stock photograph is assigned as this recipe primary image.",
      "generation_prompt": "Use case: photorealistic-natural\nAsset type: primary recipe image for The Kitchen Table website\nPrimary request: Create one realistic, appetizing finished serving of the recipe \u201cSlow-braised beef stew.\u201d\nRecipe description: Braising makes collagen-rich beef tender with time and gentle moist heat.\nExact listed ingredients: 700 g beef chuck, cut into 4 cm pieces; 2 tbsp neutral oil; 1  onion, diced; 2  carrots, cut into chunks; 2  celery stalks, sliced; 2  garlic cloves, minced; 1 tbsp tomato paste; 700 ml beef stock; 1 tsp dried thyme; 400 g potatoes, cut into chunks; 0.5 tsp salt\nComplete preparation method: Brown in batches: Pat beef dry and season with salt. Heat oil in a heavy lidded pot over medium-high heat. Brown in two or three batches, turning to color several sides. Transfer to a plate. Build the base: Lower heat to medium. Cook onion, carrot, and celery for 6\u20138 minutes. Stir in garlic and tomato paste for 30 seconds. Add stock and scrape up browned bits. Braise gently: Return beef and its juices, add thyme, and bring to a simmer. Cover and cook on very low heat for about 1\u00bd\u20132 hours, stirring occasionally. The liquid should barely bubble; add water if it reduces excessively. Add potatoes and finish: Add potatoes and simmer another 30\u201340 minutes until potatoes and beef are tender. Beef should yield easily to a fork; this is beyond merely reaching a safe temperature. Taste and season. Divide leftovers into shallow containers to chill promptly.\nScene/backdrop: light oak kitchen table, simple home-kitchen setting, no unrelated side dishes\nSubject: the plausible finished dish exactly as produced by the recipe, with the correct protein or plant-based base, cooking method, shape, texture, sauce, topping, and garnish\nStyle/medium: realistic editorial food photography with believable home-cooked texture\nComposition/framing: landscape 3:2, slightly overhead view, full main dish visible with safe crop area for responsive cards\nLighting/mood: soft natural window light, appetizing but honest, gentle shadows\nConstraints: include only ingredients and garnishes supported by the recipe; no substitutions, no extra protein, no text, logos, watermark, collage, hands, packaging, impossible shapes, or misleading restaurant-perfect styling",
      "output_filename": "slow-braised-beef-stew.webp",
      "creation_date": "2026-10-13",
      "visual_match_review_status": "Passed labeled contact-sheet review against recipe title, ingredients, and method on 2026-10-13.",
      "duplicate_check_status": "Passed exact SHA-256 and 256-bit perceptual difference-hash checks; no exact or near duplicate primary image detected.",
      "sha256": "29eb0e671fa92b2059dc140400c9c1d67a870a182c0a8a4fed40b4c4993580cb",
      "width": 1200,
      "height": 800,
      "format": "WebP",
      "responsive_crop_review_status": "Passed 3:2 card and full-width recipe-cover crop review."
    },
    {
      "recipe_title": "Lentil & mushroom bolognese",
      "recipe_url": "/recipes/lentil-bolognese/",
      "old_image": "/assets/pasta.jpg",
      "new_image": "/assets/lentil-bolognese.webp",
      "status": "AI-generated",
      "source_page": null,
      "download_url": null,
      "creator": null,
      "license": null,
      "license_link": null,
      "commercial_use_note": "Generated specifically for The Kitchen Table; no third-party stock photograph is assigned as this recipe primary image.",
      "generation_prompt": "Use case: photorealistic-natural\nAsset type: primary recipe image for The Kitchen Table website\nPrimary request: Create one realistic, appetizing finished serving of the recipe \u201cLentil & mushroom bolognese.\u201d\nRecipe description: Finely chopped mushrooms add texture and savory depth to this lentil-based pasta sauce.\nExact listed ingredients: 1 tbsp olive oil; 1  onion, finely diced; 1  carrot, finely diced; 200 g mushrooms, finely chopped; 2  garlic cloves, minced; 2 tbsp tomato paste; 400 g canned chopped tomatoes; 1  400 g can lentils, drained and rinsed; 200 ml vegetable stock; 1 tsp dried oregano; 300 g egg-free pasta; 0.5 tsp salt\nComplete preparation method: Soften the base: Heat oil in a saucepan. Cook onion and carrot over medium heat for 8 minutes. Add mushrooms and cook another 6\u20138 minutes until the moisture evaporates. Add flavor: Stir in garlic and tomato paste for 30 seconds. Add tomatoes, lentils, stock, oregano, and salt. Simmer: Cook uncovered on low for 20\u201325 minutes, stirring occasionally, until thick. Add a little water if it catches on the bottom. Mash a few lentils with the spoon for body. Serve with pasta: Cook pasta in salted water according to the package. Drain, reserving a little water. Toss with the sauce, adding pasta water only if needed to loosen.\nScene/backdrop: soft gray stone counter, simple home-kitchen setting, no unrelated side dishes\nSubject: the plausible finished dish exactly as produced by the recipe, with the correct protein or plant-based base, cooking method, shape, texture, sauce, topping, and garnish\nStyle/medium: realistic editorial food photography with believable home-cooked texture\nComposition/framing: landscape 3:2, natural eye-level table view, full main dish visible with safe crop area for responsive cards\nLighting/mood: soft natural window light, appetizing but honest, gentle shadows\nConstraints: include only ingredients and garnishes supported by the recipe; no substitutions, no extra protein, no text, logos, watermark, collage, hands, packaging, impossible shapes, or misleading restaurant-perfect styling",
      "output_filename": "lentil-bolognese.webp",
      "creation_date": "2026-10-13",
      "visual_match_review_status": "Passed labeled contact-sheet review against recipe title, ingredients, and method on 2026-10-13.",
      "duplicate_check_status": "Passed exact SHA-256 and 256-bit perceptual difference-hash checks; no exact or near duplicate primary image detected.",
      "sha256": "86e91f1cd24b6e32a75a6ee017d285b8254655ec294d8e6c368d0eabe2064b23",
      "width": 1200,
      "height": 800,
      "format": "WebP",
      "responsive_crop_review_status": "Passed 3:2 card and full-width recipe-cover crop review."
    },
    {
      "recipe_title": "Potato & leek soup",
      "recipe_url": "/recipes/potato-leek-soup/",
      "old_image": "/assets/soup.jpg",
      "new_image": "/assets/potato-leek-soup.webp",
      "status": "AI-generated",
      "source_page": null,
      "download_url": null,
      "creator": null,
      "license": null,
      "license_link": null,
      "commercial_use_note": "Generated specifically for The Kitchen Table; no third-party stock photograph is assigned as this recipe primary image.",
      "generation_prompt": "Use case: photorealistic-natural\nAsset type: primary recipe image for The Kitchen Table website\nPrimary request: Create one realistic, appetizing finished serving of the recipe \u201cPotato & leek soup.\u201d\nRecipe description: Leeks often hide grit between their layers, so washing them carefully makes a real difference.\nExact listed ingredients: 2  large leeks, white and light-green parts; 500 g potatoes, peeled and diced; 25 g butter; 900 ml vegetable stock; 100 ml milk; 0.5 tsp salt; 0.25 tsp black pepper\nComplete preparation method: Clean the leeks: Split leeks lengthwise and rinse between the layers to remove trapped grit. Slice thinly, keeping any dark tough tops for another use. Soften slowly: Melt butter in a saucepan over medium-low heat. Add leeks and cook 8\u201310 minutes, stirring often, until soft but not brown. Simmer: Add potatoes and stock. Bring to a gentle simmer and cook 15\u201320 minutes, until the potatoes crush easily against the side of the pot. Blend and finish: Remove from heat and blend with a submerged immersion blender. Stir in milk, salt, and pepper and warm gently. Do not overblend once smooth; potatoes can become gluey.\nScene/backdrop: cream linen over a wood table, simple home-kitchen setting, no unrelated side dishes\nSubject: the plausible finished dish exactly as produced by the recipe, with the correct protein or plant-based base, cooking method, shape, texture, sauce, topping, and garnish\nStyle/medium: realistic editorial food photography with believable home-cooked texture\nComposition/framing: landscape 3:2, 45-degree editorial view, full main dish visible with safe crop area for responsive cards\nLighting/mood: soft natural window light, appetizing but honest, gentle shadows\nConstraints: include only ingredients and garnishes supported by the recipe; no substitutions, no extra protein, no text, logos, watermark, collage, hands, packaging, impossible shapes, or misleading restaurant-perfect styling",
      "output_filename": "potato-leek-soup.webp",
      "creation_date": "2026-10-13",
      "visual_match_review_status": "Passed labeled contact-sheet review against recipe title, ingredients, and method on 2026-10-13.",
      "duplicate_check_status": "Passed exact SHA-256 and 256-bit perceptual difference-hash checks; no exact or near duplicate primary image detected.",
      "sha256": "3746bb0e26bb7b4d3683072ec56734ef4a66a8a422cc68aa84bd433dba96ba1d",
      "width": 1200,
      "height": 800,
      "format": "WebP",
      "responsive_crop_review_status": "Passed 3:2 card and full-width recipe-cover crop review."
    },
    {
      "recipe_title": "Vegetable & white bean minestrone",
      "recipe_url": "/recipes/vegetable-minestrone/",
      "old_image": "/assets/stew.jpg",
      "new_image": "/assets/vegetable-minestrone.webp",
      "status": "AI-generated",
      "source_page": null,
      "download_url": null,
      "creator": null,
      "license": null,
      "license_link": null,
      "commercial_use_note": "Generated specifically for The Kitchen Table; no third-party stock photograph is assigned as this recipe primary image.",
      "generation_prompt": "Use case: photorealistic-natural\nAsset type: primary recipe image for The Kitchen Table website\nPrimary request: Create one realistic, appetizing finished serving of the recipe \u201cVegetable & white bean minestrone.\u201d\nRecipe description: Small pasta makes minestrone hearty, but it keeps absorbing broth as it sits.\nExact listed ingredients: 1 tbsp olive oil; 1  onion, diced; 2  carrots, diced; 2  celery stalks, diced; 2  garlic cloves, minced; 400 g canned chopped tomatoes; 1  400 g can white beans, drained; 900 ml vegetable stock; 80 g small egg-free pasta; 100 g spinach; 1 tsp dried oregano; 0.5 tsp salt\nComplete preparation method: Soften the vegetables: Heat oil in a large saucepan. Cook onion, carrot, and celery for 8\u201310 minutes. Add garlic and stir for 30 seconds. Build the broth: Add tomatoes, beans, stock, oregano, and salt. Bring to a simmer and cook for 15 minutes, until carrots are nearly tender. Cook the pasta: Add the small pasta and simmer for its package cooking time, stirring to prevent sticking. Add water if the soup becomes too thick. Finish: Stir in spinach until wilted. Taste and season. Serve promptly. Pasta absorbs broth during storage; add a little water when reheating leftovers to 165\u00b0F / 74\u00b0C.\nScene/backdrop: dark walnut table, simple home-kitchen setting, no unrelated side dishes\nSubject: the plausible finished dish exactly as produced by the recipe, with the correct protein or plant-based base, cooking method, shape, texture, sauce, topping, and garnish\nStyle/medium: realistic editorial food photography with believable home-cooked texture\nComposition/framing: landscape 3:2, top-down view, full main dish visible with safe crop area for responsive cards\nLighting/mood: soft natural window light, appetizing but honest, gentle shadows\nConstraints: include only ingredients and garnishes supported by the recipe; no substitutions, no extra protein, no text, logos, watermark, collage, hands, packaging, impossible shapes, or misleading restaurant-perfect styling",
      "output_filename": "vegetable-minestrone.webp",
      "creation_date": "2026-10-13",
      "visual_match_review_status": "Passed labeled contact-sheet review against recipe title, ingredients, and method on 2026-10-13.",
      "duplicate_check_status": "Passed exact SHA-256 and 256-bit perceptual difference-hash checks; no exact or near duplicate primary image detected.",
      "sha256": "efaac9f92c05cabfb5b5f10bdc2e94bcc0d6864068e27f0e2611efc36a0c95c1",
      "width": 1200,
      "height": 800,
      "format": "WebP",
      "responsive_crop_review_status": "Passed 3:2 card and full-width recipe-cover crop review."
    },
    {
      "recipe_title": "Chicken noodle soup",
      "recipe_url": "/recipes/chicken-noodle-soup/",
      "old_image": "/assets/noodles.jpg",
      "new_image": "/assets/chicken-noodle-soup.webp",
      "status": "AI-generated",
      "source_page": null,
      "download_url": null,
      "creator": null,
      "license": null,
      "license_link": null,
      "commercial_use_note": "Generated specifically for The Kitchen Table; no third-party stock photograph is assigned as this recipe primary image.",
      "generation_prompt": "Use case: photorealistic-natural\nAsset type: primary recipe image for The Kitchen Table website\nPrimary request: Create one realistic, appetizing finished serving of the recipe \u201cChicken noodle soup.\u201d\nRecipe description: A gentle simmer keeps poached chicken tender.\nExact listed ingredients: 1 tbsp olive oil; 1  onion, diced; 2  carrots, sliced; 2  celery stalks, sliced; 1200 ml chicken stock; 300 g boneless chicken breast; 100 g dried egg noodles; 0.5 tsp dried thyme; 0.25 tsp salt; 1 tbsp lemon juice\nComplete preparation method: Start the soup base: Warm oil in a saucepan. Cook onion, carrots, and celery over medium heat for 7\u20138 minutes until starting to soften. Poach the chicken: Add stock and thyme and bring to a gentle simmer. Add chicken and poach for about 12\u201318 minutes, depending on thickness, until its thickest part reaches 165\u00b0F / 74\u00b0C. Cook the noodles: Transfer the cooked chicken to a clean board. Add noodles to the simmering stock and cook according to the package. Shred the chicken with two forks. Finish the soup: Return chicken to the pot and heat through. Taste before adding the measured salt, since stocks differ. Add lemon juice and serve.\nScene/backdrop: warm pale stone table, simple home-kitchen setting, no unrelated side dishes\nSubject: the plausible finished dish exactly as produced by the recipe, with the correct protein or plant-based base, cooking method, shape, texture, sauce, topping, and garnish\nStyle/medium: realistic editorial food photography with believable home-cooked texture\nComposition/framing: landscape 3:2, three-quarter close view, full main dish visible with safe crop area for responsive cards\nLighting/mood: soft natural window light, appetizing but honest, gentle shadows\nConstraints: include only ingredients and garnishes supported by the recipe; no substitutions, no extra protein, no text, logos, watermark, collage, hands, packaging, impossible shapes, or misleading restaurant-perfect styling",
      "output_filename": "chicken-noodle-soup.webp",
      "creation_date": "2026-10-13",
      "visual_match_review_status": "Passed labeled contact-sheet review against recipe title, ingredients, and method on 2026-10-13.",
      "duplicate_check_status": "Passed exact SHA-256 and 256-bit perceptual difference-hash checks; no exact or near duplicate primary image detected.",
      "sha256": "954bac11f0d2b1906030bee0ac6b3509fb043f6cda0d352ff989d178a21d5aee",
      "width": 1200,
      "height": 800,
      "format": "WebP",
      "responsive_crop_review_status": "Passed 3:2 card and full-width recipe-cover crop review."
    },
    {
      "recipe_title": "Crispy roasted broccoli",
      "recipe_url": "/recipes/crispy-roasted-broccoli/",
      "old_image": "/assets/root-vegetables.jpg",
      "new_image": "/assets/crispy-roasted-broccoli.webp",
      "status": "AI-generated",
      "source_page": null,
      "download_url": null,
      "creator": null,
      "license": null,
      "license_link": null,
      "commercial_use_note": "Generated specifically for The Kitchen Table; no third-party stock photograph is assigned as this recipe primary image.",
      "generation_prompt": "Use case: photorealistic-natural\nAsset type: primary recipe image for The Kitchen Table website\nPrimary request: Create one realistic, appetizing finished serving of the recipe \u201cCrispy roasted broccoli.\u201d\nRecipe description: Dry broccoli and an uncrowded tray create browned edges.\nExact listed ingredients: 500 g broccoli florets; 2 tbsp olive oil; 0.5 tsp salt; 0.25 tsp black pepper; 1 tbsp lemon juice; 1  garlic clove, finely grated\nComplete preparation method: Heat and dry: Heat oven to 425\u00b0F / 220\u00b0C. Wash broccoli and dry thoroughly with a clean towel. Cut large florets into evenly sized pieces. Season: Toss with oil, salt, and pepper. Spread over a large rimmed tray in one layer, with cut sides touching the pan where possible. Roast: Roast 18\u201322 minutes, turning once, until stems are tender and edges are browned. Use a second tray if the florets are crowded. Finish: Mix lemon juice and garlic, then toss lightly with the hot broccoli. Start with a little dressing and add more to taste. Serve immediately for the crispest edges.\nScene/backdrop: light oak kitchen table, simple home-kitchen setting, no unrelated side dishes\nSubject: the plausible finished dish exactly as produced by the recipe, with the correct protein or plant-based base, cooking method, shape, texture, sauce, topping, and garnish\nStyle/medium: realistic editorial food photography with believable home-cooked texture\nComposition/framing: landscape 3:2, slightly overhead view, full main dish visible with safe crop area for responsive cards\nLighting/mood: soft natural window light, appetizing but honest, gentle shadows\nConstraints: include only ingredients and garnishes supported by the recipe; no substitutions, no extra protein, no text, logos, watermark, collage, hands, packaging, impossible shapes, or misleading restaurant-perfect styling",
      "output_filename": "crispy-roasted-broccoli.webp",
      "creation_date": "2026-10-13",
      "visual_match_review_status": "Passed labeled contact-sheet review against recipe title, ingredients, and method on 2026-10-13.",
      "duplicate_check_status": "Passed exact SHA-256 and 256-bit perceptual difference-hash checks; no exact or near duplicate primary image detected.",
      "sha256": "e8ebd144ab6434a80057ae0a70cb5b156993dcb2134419234c9511496548514e",
      "width": 1200,
      "height": 800,
      "format": "WebP",
      "responsive_crop_review_status": "Passed 3:2 card and full-width recipe-cover crop review."
    },
    {
      "recipe_title": "Crispy roast potatoes",
      "recipe_url": "/recipes/crispy-roast-potatoes/",
      "old_image": "/assets/potatoes.jpg",
      "new_image": "/assets/crispy-roast-potatoes.webp",
      "status": "AI-generated",
      "source_page": null,
      "download_url": null,
      "creator": null,
      "license": null,
      "license_link": null,
      "commercial_use_note": "Generated specifically for The Kitchen Table; no third-party stock photograph is assigned as this recipe primary image.",
      "generation_prompt": "Use case: photorealistic-natural\nAsset type: primary recipe image for The Kitchen Table website\nPrimary request: Create one realistic, appetizing finished serving of the recipe \u201cCrispy roast potatoes.\u201d\nRecipe description: Roughened, parboiled edges give roast potatoes their crisp crust.\nExact listed ingredients: 800 g floury potatoes, peeled and cut into 4 cm chunks; 3 tbsp neutral oil; 0.75 tsp salt; 0.5 tsp dried rosemary; 0.25 tsp black pepper\nComplete preparation method: Parboil: Heat oven to 425\u00b0F / 220\u00b0C. Put potatoes in a saucepan, cover with cold water, and bring to a boil. Simmer for 8\u201310 minutes until outer edges soften but centers still hold together. Drain and roughen: Drain well, then let steam escape for 3 minutes. Shake gently in the colander to roughen the softened edges; these will become crisp. Roast: Toss with oil, salt, rosemary, and pepper. Spread on a rimmed baking sheet with space between. Roast 40\u201345 minutes, turning once or twice, until deep golden. Serve hot: Check that the centers are fully tender. Let stand a minute, then serve. If some pieces brown faster, move them toward a cooler part of the tray.\nScene/backdrop: soft gray stone counter, simple home-kitchen setting, no unrelated side dishes\nSubject: the plausible finished dish exactly as produced by the recipe, with the correct protein or plant-based base, cooking method, shape, texture, sauce, topping, and garnish\nStyle/medium: realistic editorial food photography with believable home-cooked texture\nComposition/framing: landscape 3:2, natural eye-level table view, full main dish visible with safe crop area for responsive cards\nLighting/mood: soft natural window light, appetizing but honest, gentle shadows\nConstraints: include only ingredients and garnishes supported by the recipe; no substitutions, no extra protein, no text, logos, watermark, collage, hands, packaging, impossible shapes, or misleading restaurant-perfect styling",
      "output_filename": "crispy-roast-potatoes.webp",
      "creation_date": "2026-10-13",
      "visual_match_review_status": "Passed labeled contact-sheet review against recipe title, ingredients, and method on 2026-10-13.",
      "duplicate_check_status": "Passed exact SHA-256 and 256-bit perceptual difference-hash checks; no exact or near duplicate primary image detected.",
      "sha256": "38e13fa0b78b13bf6b68b7428cdc1c2a3dab89f5364b7d6b5d30fcf2faffebda",
      "width": 1200,
      "height": 800,
      "format": "WebP",
      "responsive_crop_review_status": "Passed 3:2 card and full-width recipe-cover crop review."
    },
    {
      "recipe_title": "Creamy mashed potatoes",
      "recipe_url": "/recipes/creamy-mashed-potatoes/",
      "old_image": "/assets/potatoes.jpg",
      "new_image": "/assets/creamy-mashed-potatoes.webp",
      "status": "AI-generated",
      "source_page": null,
      "download_url": null,
      "creator": null,
      "license": null,
      "license_link": null,
      "commercial_use_note": "Generated specifically for The Kitchen Table; no third-party stock photograph is assigned as this recipe primary image.",
      "generation_prompt": "Use case: photorealistic-natural\nAsset type: primary recipe image for The Kitchen Table website\nPrimary request: Create one realistic, appetizing finished serving of the recipe \u201cCreamy mashed potatoes.\u201d\nRecipe description: A masher or ricer keeps mashed potatoes fluffy.\nExact listed ingredients: 800 g potatoes, peeled and cut into even chunks; 50 g butter; 150 ml milk, warmed; 0.5 tsp salt; 0.25 tsp black pepper\nComplete preparation method: Start cold: Put potatoes in a saucepan and cover with cold water. Bring to a boil, then simmer for 15\u201320 minutes until a knife slides through easily. Drain thoroughly: Drain and return potatoes to the warm empty pan. Let steam escape for 1\u20132 minutes over very low heat, shaking gently to avoid sticking. Mash by hand: Mash with a potato masher or pass through a ricer. Fold in butter, then add warm milk gradually until the texture suits you. Season: Add salt and pepper to taste. Serve warm. Avoid a food processor or blender; aggressive mixing can make the potatoes sticky and gluey.\nScene/backdrop: cream linen over a wood table, simple home-kitchen setting, no unrelated side dishes\nSubject: the plausible finished dish exactly as produced by the recipe, with the correct protein or plant-based base, cooking method, shape, texture, sauce, topping, and garnish\nStyle/medium: realistic editorial food photography with believable home-cooked texture\nComposition/framing: landscape 3:2, 45-degree editorial view, full main dish visible with safe crop area for responsive cards\nLighting/mood: soft natural window light, appetizing but honest, gentle shadows\nConstraints: include only ingredients and garnishes supported by the recipe; no substitutions, no extra protein, no text, logos, watermark, collage, hands, packaging, impossible shapes, or misleading restaurant-perfect styling",
      "output_filename": "creamy-mashed-potatoes.webp",
      "creation_date": "2026-10-13",
      "visual_match_review_status": "Passed labeled contact-sheet review against recipe title, ingredients, and method on 2026-10-13.",
      "duplicate_check_status": "Passed exact SHA-256 and 256-bit perceptual difference-hash checks; no exact or near duplicate primary image detected.",
      "sha256": "1c93bc5765d366a5355fa79ba6f35e57ad82be6c1dba1463c1038ba4f0656367",
      "width": 1200,
      "height": 800,
      "format": "WebP",
      "responsive_crop_review_status": "Passed 3:2 card and full-width recipe-cover crop review."
    },
    {
      "recipe_title": "Lemon & herb couscous",
      "recipe_url": "/recipes/lemon-herb-couscous/",
      "old_image": "/assets/rice.jpg",
      "new_image": "/assets/lemon-herb-couscous.webp",
      "status": "AI-generated",
      "source_page": null,
      "download_url": null,
      "creator": null,
      "license": null,
      "license_link": null,
      "commercial_use_note": "Generated specifically for The Kitchen Table; no third-party stock photograph is assigned as this recipe primary image.",
      "generation_prompt": "Use case: photorealistic-natural\nAsset type: primary recipe image for The Kitchen Table website\nPrimary request: Create one realistic, appetizing finished serving of the recipe \u201cLemon & herb couscous.\u201d\nRecipe description: Quick-cooking couscous needs hydration rather than a long boil.\nExact listed ingredients: 200 g quick-cooking couscous; 250 ml boiling vegetable stock, or package amount; 1 tbsp olive oil; 1 tbsp lemon juice; 0.5  cucumber, diced; 150 g cherry tomatoes, quartered; 2 tbsp chopped parsley; 0.25 tsp salt\nComplete preparation method: Hydrate: Put couscous in a heatproof bowl. Add boiling stock using the package ratio, then cover and leave for 5\u201310 minutes as directed. Fluff: Uncover and fluff with a fork to separate the grains. Stir in oil and allow to cool slightly before adding vegetables. Add freshness: Fold in lemon juice, cucumber, tomatoes, and parsley. Taste before adding salt because stock varies. Serve or chill: Serve as a side, or add chickpeas for a fuller lunch. If saving for later, refrigerate promptly in a covered shallow container.\nScene/backdrop: dark walnut table, simple home-kitchen setting, no unrelated side dishes\nSubject: the plausible finished dish exactly as produced by the recipe, with the correct protein or plant-based base, cooking method, shape, texture, sauce, topping, and garnish\nStyle/medium: realistic editorial food photography with believable home-cooked texture\nComposition/framing: landscape 3:2, top-down view, full main dish visible with safe crop area for responsive cards\nLighting/mood: soft natural window light, appetizing but honest, gentle shadows\nConstraints: include only ingredients and garnishes supported by the recipe; no substitutions, no extra protein, no text, logos, watermark, collage, hands, packaging, impossible shapes, or misleading restaurant-perfect styling",
      "output_filename": "lemon-herb-couscous.webp",
      "creation_date": "2026-10-13",
      "visual_match_review_status": "Passed labeled contact-sheet review against recipe title, ingredients, and method on 2026-10-13.",
      "duplicate_check_status": "Passed exact SHA-256 and 256-bit perceptual difference-hash checks; no exact or near duplicate primary image detected.",
      "sha256": "41602fc7d752bf51afe509f8b82d311435194e8e58183a221bbf2c0dac3dae45",
      "width": 1200,
      "height": 800,
      "format": "WebP",
      "responsive_crop_review_status": "Passed 3:2 card and full-width recipe-cover crop review."
    },
    {
      "recipe_title": "Garlic green beans",
      "recipe_url": "/recipes/garlic-green-beans/",
      "old_image": "/assets/root-vegetables.jpg",
      "new_image": "/assets/garlic-green-beans.webp",
      "status": "AI-generated",
      "source_page": null,
      "download_url": null,
      "creator": null,
      "license": null,
      "license_link": null,
      "commercial_use_note": "Generated specifically for The Kitchen Table; no third-party stock photograph is assigned as this recipe primary image.",
      "generation_prompt": "Use case: photorealistic-natural\nAsset type: primary recipe image for The Kitchen Table website\nPrimary request: Create one realistic, appetizing finished serving of the recipe \u201cGarlic green beans.\u201d\nRecipe description: A short steam followed by saut\u00e9ing cooks beans evenly without needing a separate pot of water.\nExact listed ingredients: 400 g green beans, trimmed; 1 tbsp olive oil; 2  garlic cloves, thinly sliced; 3 tbsp water; 0.25 tsp salt; 1 tsp lemon juice\nComplete preparation method: Prepare: Trim the tough stem ends from the beans. Wash and drain them. Steam briefly: Put beans and water in a lidded skillet over medium heat. Cover and cook for 4\u20136 minutes until nearly tender. Saut\u00e9: Uncover and let remaining water evaporate. Add oil and garlic, then cook for 2\u20133 minutes, stirring so the garlic becomes fragrant without burning. Season: Add salt and lemon juice. Taste one bean and cook a little longer if you prefer a softer texture. Serve warm.\nScene/backdrop: warm pale stone table, simple home-kitchen setting, no unrelated side dishes\nSubject: the plausible finished dish exactly as produced by the recipe, with the correct protein or plant-based base, cooking method, shape, texture, sauce, topping, and garnish\nStyle/medium: realistic editorial food photography with believable home-cooked texture\nComposition/framing: landscape 3:2, three-quarter close view, full main dish visible with safe crop area for responsive cards\nLighting/mood: soft natural window light, appetizing but honest, gentle shadows\nConstraints: include only ingredients and garnishes supported by the recipe; no substitutions, no extra protein, no text, logos, watermark, collage, hands, packaging, impossible shapes, or misleading restaurant-perfect styling",
      "output_filename": "garlic-green-beans.webp",
      "creation_date": "2026-10-13",
      "visual_match_review_status": "Passed labeled contact-sheet review against recipe title, ingredients, and method on 2026-10-13.",
      "duplicate_check_status": "Passed exact SHA-256 and 256-bit perceptual difference-hash checks; no exact or near duplicate primary image detected.",
      "sha256": "d985564b79fb2f7455b4f633fbb242ae5037cffd00a1345b49486e11a42e15fd",
      "width": 1200,
      "height": 800,
      "format": "WebP",
      "responsive_crop_review_status": "Passed 3:2 card and full-width recipe-cover crop review."
    },
    {
      "recipe_title": "Lemon tahini hummus",
      "recipe_url": "/recipes/lemon-tahini-hummus/",
      "old_image": "/assets/hummus.jpg",
      "new_image": "/assets/lemon-tahini-hummus.webp",
      "status": "AI-generated",
      "source_page": null,
      "download_url": null,
      "creator": null,
      "license": null,
      "license_link": null,
      "commercial_use_note": "Generated specifically for The Kitchen Table; no third-party stock photograph is assigned as this recipe primary image.",
      "generation_prompt": "Use case: photorealistic-natural\nAsset type: primary recipe image for The Kitchen Table website\nPrimary request: Create one realistic, appetizing finished serving of the recipe \u201cLemon tahini hummus.\u201d\nRecipe description: Tahini thickens when lemon first hits it, then loosens as water is added.\nExact listed ingredients: 1  400 g can chickpeas, drained and rinsed; 3 tbsp tahini; 2 tbsp lemon juice; 1  small garlic clove; 2 tbsp olive oil; 3 tbsp cold water, plus more as needed; 0.25 tsp salt; 0.25 tsp ground cumin\nComplete preparation method: Blend the base: Put tahini, lemon juice, garlic, salt, and cumin in a food processor. Blend for 30 seconds, scraping the sides. Add chickpeas: Add chickpeas and oil and process for 1\u20132 minutes, stopping to scrape the bowl as necessary. Adjust texture: With the machine running, add cold water gradually. Blend until as smooth as your machine allows. Add more water a tablespoon at a time for a lighter texture. Taste and serve: Taste for lemon and salt. Spoon into a bowl and serve with vegetables or bread. Refrigerate leftovers promptly; use clean utensils when serving.\nScene/backdrop: light oak kitchen table, simple home-kitchen setting, no unrelated side dishes\nSubject: the plausible finished dish exactly as produced by the recipe, with the correct protein or plant-based base, cooking method, shape, texture, sauce, topping, and garnish\nStyle/medium: realistic editorial food photography with believable home-cooked texture\nComposition/framing: landscape 3:2, slightly overhead view, full main dish visible with safe crop area for responsive cards\nLighting/mood: soft natural window light, appetizing but honest, gentle shadows\nConstraints: include only ingredients and garnishes supported by the recipe; no substitutions, no extra protein, no text, logos, watermark, collage, hands, packaging, impossible shapes, or misleading restaurant-perfect styling",
      "output_filename": "lemon-tahini-hummus.webp",
      "creation_date": "2026-10-13",
      "visual_match_review_status": "Passed labeled contact-sheet review against recipe title, ingredients, and method on 2026-10-13.",
      "duplicate_check_status": "Passed exact SHA-256 and 256-bit perceptual difference-hash checks; no exact or near duplicate primary image detected.",
      "sha256": "d01dcdfc9dbb82742a6a2e9d842bc5ea972a8ec1fe8586cd7b8ebee6ae26afeb",
      "width": 1200,
      "height": 800,
      "format": "WebP",
      "responsive_crop_review_status": "Passed 3:2 card and full-width recipe-cover crop review."
    },
    {
      "recipe_title": "Chunky lime guacamole",
      "recipe_url": "/recipes/chunky-guacamole/",
      "old_image": "/assets/salad.jpg",
      "new_image": "/assets/chunky-guacamole.webp",
      "status": "AI-generated",
      "source_page": null,
      "download_url": null,
      "creator": null,
      "license": null,
      "license_link": null,
      "commercial_use_note": "Generated specifically for The Kitchen Table; no third-party stock photograph is assigned as this recipe primary image.",
      "generation_prompt": "Use case: photorealistic-natural\nAsset type: primary recipe image for The Kitchen Table website\nPrimary request: Create one realistic, appetizing finished serving of the recipe \u201cChunky lime guacamole.\u201d\nRecipe description: Ripe avocados should yield gently to pressure without feeling hollow or mushy.\nExact listed ingredients: 2  ripe avocados; 1 tbsp lime juice; 2 tbsp finely diced red onion; 1  small tomato, seeded and diced; 1 tbsp chopped cilantro; 0.25 tsp salt\nComplete preparation method: Prepare the vegetables: Dice onion and tomato finely. Remove the watery tomato seed pockets to keep the dip from becoming loose. Open the avocados: Cut around each avocado, twist apart, and remove the pit with a spoon. Scoop flesh into a bowl. Avoid striking the pit with a knife held toward your hand. Mash gently: Add lime juice and salt and mash with a fork, leaving some small pieces for texture. Fold and serve: Fold in onion, tomato, and cilantro. Taste and adjust lime or salt. Serve soon; for short storage, press a cover directly onto the surface and refrigerate.\nScene/backdrop: soft gray stone counter, simple home-kitchen setting, no unrelated side dishes\nSubject: the plausible finished dish exactly as produced by the recipe, with the correct protein or plant-based base, cooking method, shape, texture, sauce, topping, and garnish\nStyle/medium: realistic editorial food photography with believable home-cooked texture\nComposition/framing: landscape 3:2, natural eye-level table view, full main dish visible with safe crop area for responsive cards\nLighting/mood: soft natural window light, appetizing but honest, gentle shadows\nConstraints: include only ingredients and garnishes supported by the recipe; no substitutions, no extra protein, no text, logos, watermark, collage, hands, packaging, impossible shapes, or misleading restaurant-perfect styling",
      "output_filename": "chunky-guacamole.webp",
      "creation_date": "2026-10-13",
      "visual_match_review_status": "Passed labeled contact-sheet review against recipe title, ingredients, and method on 2026-10-13.",
      "duplicate_check_status": "Passed exact SHA-256 and 256-bit perceptual difference-hash checks; no exact or near duplicate primary image detected.",
      "sha256": "41f2e21bd12d614042f68d466a517f7dbb0bfd91e525954272536446b3fa037f",
      "width": 1200,
      "height": 800,
      "format": "WebP",
      "responsive_crop_review_status": "Passed 3:2 card and full-width recipe-cover crop review."
    },
    {
      "recipe_title": "Everyday Dijon vinaigrette",
      "recipe_url": "/recipes/everyday-dijon-vinaigrette/",
      "old_image": "/assets/salad.jpg",
      "new_image": "/assets/everyday-dijon-vinaigrette.webp",
      "status": "AI-generated",
      "source_page": null,
      "download_url": null,
      "creator": null,
      "license": null,
      "license_link": null,
      "commercial_use_note": "Generated specifically for The Kitchen Table; no third-party stock photograph is assigned as this recipe primary image.",
      "generation_prompt": "Use case: photorealistic-natural\nAsset type: primary recipe image for The Kitchen Table website\nPrimary request: Create a realistic image specifically representing \u201cEveryday Dijon vinaigrette.\u201d\nScene/backdrop: warm pale stone kitchen counter, clean minimal setting\nSubject: golden emulsified vinaigrette in a small clear glass jar and a shallow ceramic spoon or ramekin, visibly speckled with Dijon mustard and black pepper\nRecipe facts: extra-virgin olive oil, wine vinegar, Dijon mustard, maple syrup, salt, and black pepper; natural glossy emulsified texture\nStyle/medium: realistic editorial food photography with believable homemade texture\nComposition/framing: landscape 3:2, close three-quarter view, jar and dressing centered with safe responsive crop\nLighting/mood: soft natural window light\nConstraints: focus on the dressing itself; no salad bowl, leafy greens, unrelated ingredients, text, logo, watermark, collage, hands, or packaging",
      "output_filename": "everyday-dijon-vinaigrette.webp",
      "creation_date": "2026-10-13",
      "visual_match_review_status": "Passed labeled contact-sheet review against recipe title, ingredients, and method on 2026-10-13.",
      "duplicate_check_status": "Passed exact SHA-256 and 256-bit perceptual difference-hash checks; no exact or near duplicate primary image detected.",
      "sha256": "e1c886a233a7fe98274ba3fe8d7769ef47e083f5649ec87081ded46c940e839f",
      "width": 1200,
      "height": 800,
      "format": "WebP",
      "responsive_crop_review_status": "Passed 3:2 card and full-width recipe-cover crop review."
    },
    {
      "recipe_title": "Cucumber & herb yogurt dip",
      "recipe_url": "/recipes/cucumber-yogurt-dip/",
      "old_image": "/assets/hummus.jpg",
      "new_image": "/assets/cucumber-yogurt-dip.webp",
      "status": "AI-generated",
      "source_page": null,
      "download_url": null,
      "creator": null,
      "license": null,
      "license_link": null,
      "commercial_use_note": "Generated specifically for The Kitchen Table; no third-party stock photograph is assigned as this recipe primary image.",
      "generation_prompt": "Use case: photorealistic-natural\nAsset type: primary recipe image for The Kitchen Table website\nPrimary request: Create one realistic, appetizing finished serving of the recipe \u201cCucumber & herb yogurt dip.\u201d\nRecipe description: Squeezing water from the cucumber keeps a yogurt dip thick.\nExact listed ingredients: 200 g plain thick Greek yogurt; 0.5  cucumber; 1  small garlic clove, finely grated; 1 tbsp lemon juice; 1 tbsp chopped dill; 1 tsp olive oil; 0.25 tsp salt\nComplete preparation method: Grate the cucumber: Coarsely grate cucumber. Put in a clean towel or sieve and squeeze gently to remove excess water. Mix the base: Stir yogurt, garlic, lemon juice, oil, and salt in a bowl until smooth. Add cucumber and herbs: Fold in cucumber and dill. Taste and add more lemon or salt only if needed. Serve chilled: Serve with vegetables or flatbread. Keep covered in the refrigerator until needed, and return leftovers promptly after serving.\nScene/backdrop: dark walnut table, simple home-kitchen setting, no unrelated side dishes\nSubject: the plausible finished dish exactly as produced by the recipe, with the correct protein or plant-based base, cooking method, shape, texture, sauce, topping, and garnish\nStyle/medium: realistic editorial food photography with believable home-cooked texture\nComposition/framing: landscape 3:2, top-down view, full main dish visible with safe crop area for responsive cards\nLighting/mood: soft natural window light, appetizing but honest, gentle shadows\nConstraints: include only ingredients and garnishes supported by the recipe; no substitutions, no extra protein, no text, logos, watermark, collage, hands, packaging, impossible shapes, or misleading restaurant-perfect styling",
      "output_filename": "cucumber-yogurt-dip.webp",
      "creation_date": "2026-10-13",
      "visual_match_review_status": "Passed labeled contact-sheet review against recipe title, ingredients, and method on 2026-10-13.",
      "duplicate_check_status": "Passed exact SHA-256 and 256-bit perceptual difference-hash checks; no exact or near duplicate primary image detected.",
      "sha256": "6bd7bd164ec5784d2d9f6dafd7a354f26fd83c43c15f607083ec0b5fd88d63c4",
      "width": 1200,
      "height": 800,
      "format": "WebP",
      "responsive_crop_review_status": "Passed 3:2 card and full-width recipe-cover crop review."
    },
    {
      "recipe_title": "Easy olive oil focaccia",
      "recipe_url": "/recipes/easy-olive-oil-focaccia/",
      "old_image": "/assets/bread.jpg",
      "new_image": "/assets/easy-olive-oil-focaccia.webp",
      "status": "AI-generated",
      "source_page": null,
      "download_url": null,
      "creator": null,
      "license": null,
      "license_link": null,
      "commercial_use_note": "Generated specifically for The Kitchen Table; no third-party stock photograph is assigned as this recipe primary image.",
      "generation_prompt": "Use case: photorealistic-natural\nAsset type: primary recipe image for The Kitchen Table website\nPrimary request: Create one realistic, appetizing finished serving of the recipe \u201cEasy olive oil focaccia.\u201d\nRecipe description: Focaccia dough is supposed to be sticky.\nExact listed ingredients: 400 g bread flour; 7 g instant yeast; 8 g fine salt; 320 ml lukewarm water; 3 tbsp olive oil, divided; 1 tsp dried rosemary; 0.25 tsp flaky salt\nComplete preparation method: Mix the dough: Stir flour, yeast, and fine salt in a bowl. Add lukewarm water and 1 tablespoon oil. Mix until no dry flour remains. The dough will be sticky. Cover and rest 20 minutes. Fold and rise: With wet hands, pull one edge up and fold it over the dough; repeat on four sides. Cover and let rise about 60\u201390 minutes, until visibly puffy and roughly doubled. A cool room takes longer. Shape and proof: Oil a 23 \u00d7 33 cm metal pan with 1 tablespoon oil. Transfer dough and gently stretch toward the corners; rest 10 minutes if it springs back. Cover and rise another 30 minutes. Heat oven to 425\u00b0F / 220\u00b0C. Dimple and bake: Drizzle with remaining oil. Press oiled fingertips into the dough to make dimples. Add rosemary and flaky salt. Bake 25\u201330 minutes until golden and cooked through. Cool on a rack before cutting.\nScene/backdrop: warm pale stone table, simple home-kitchen setting, no unrelated side dishes\nSubject: the plausible finished dish exactly as produced by the recipe, with the correct protein or plant-based base, cooking method, shape, texture, sauce, topping, and garnish\nStyle/medium: realistic editorial food photography with believable home-cooked texture\nComposition/framing: landscape 3:2, three-quarter close view, full main dish visible with safe crop area for responsive cards\nLighting/mood: soft natural window light, appetizing but honest, gentle shadows\nConstraints: include only ingredients and garnishes supported by the recipe; no substitutions, no extra protein, no text, logos, watermark, collage, hands, packaging, impossible shapes, or misleading restaurant-perfect styling",
      "output_filename": "easy-olive-oil-focaccia.webp",
      "creation_date": "2026-10-13",
      "visual_match_review_status": "Passed labeled contact-sheet review against recipe title, ingredients, and method on 2026-10-13.",
      "duplicate_check_status": "Passed exact SHA-256 and 256-bit perceptual difference-hash checks; no exact or near duplicate primary image detected.",
      "sha256": "33d282bc149a2d1dc19588abe1a186643564e032aa3cdcf5a1577190f062dbb6",
      "width": 1200,
      "height": 800,
      "format": "WebP",
      "responsive_crop_review_status": "Passed 3:2 card and full-width recipe-cover crop review."
    },
    {
      "recipe_title": "Banana walnut bread",
      "recipe_url": "/recipes/banana-walnut-bread/",
      "old_image": "/assets/bread.jpg",
      "new_image": "/assets/banana-walnut-bread.webp",
      "status": "AI-generated",
      "source_page": null,
      "download_url": null,
      "creator": null,
      "license": null,
      "license_link": null,
      "commercial_use_note": "Generated specifically for The Kitchen Table; no third-party stock photograph is assigned as this recipe primary image.",
      "generation_prompt": "Use case: photorealistic-natural\nAsset type: primary recipe image for The Kitchen Table website\nPrimary request: Create one realistic, appetizing finished serving of the recipe \u201cBanana walnut bread.\u201d\nRecipe description: Very ripe bananas add moisture and sweetness to a simple quick bread.\nExact listed ingredients: 3  ripe bananas, about 300 g peeled; 200 g all-purpose flour; 100 g brown sugar; 2  large eggs; 80 ml neutral oil; 1 tsp baking soda; 0.5 tsp salt; 1 tsp vanilla extract; 60 g chopped walnuts\nComplete preparation method: Prepare: Heat oven to 350\u00b0F / 175\u00b0C. Grease and line a standard 23 \u00d7 13 cm loaf pan. Mash bananas in a large bowl. Combine: Whisk sugar, eggs, oil, and vanilla into bananas. Mix flour, baking soda, and salt separately, then fold into wet ingredients just until combined. Fold in walnuts. Bake: Scrape into the pan. Bake 55\u201365 minutes until a skewer in the center comes out without wet batter. If the top browns early, tent loosely with foil. Do not taste raw batter. Cool: Rest in the pan for 10 minutes, then lift onto a rack. Let cool before slicing; the crumb is fragile while hot. Store covered once cool.\nScene/backdrop: light oak kitchen table, simple home-kitchen setting, no unrelated side dishes\nSubject: the plausible finished dish exactly as produced by the recipe, with the correct protein or plant-based base, cooking method, shape, texture, sauce, topping, and garnish\nStyle/medium: realistic editorial food photography with believable home-cooked texture\nComposition/framing: landscape 3:2, slightly overhead view, full main dish visible with safe crop area for responsive cards\nLighting/mood: soft natural window light, appetizing but honest, gentle shadows\nConstraints: include only ingredients and garnishes supported by the recipe; no substitutions, no extra protein, no text, logos, watermark, collage, hands, packaging, impossible shapes, or misleading restaurant-perfect styling",
      "output_filename": "banana-walnut-bread.webp",
      "creation_date": "2026-10-13",
      "visual_match_review_status": "Passed labeled contact-sheet review against recipe title, ingredients, and method on 2026-10-13.",
      "duplicate_check_status": "Passed exact SHA-256 and 256-bit perceptual difference-hash checks; no exact or near duplicate primary image detected.",
      "sha256": "ffb27ecffc035109fa22713032ceafd6b7a7769f855c97c4e03977d9910c92b6",
      "width": 1200,
      "height": 800,
      "format": "WebP",
      "responsive_crop_review_status": "Passed 3:2 card and full-width recipe-cover crop review."
    },
    {
      "recipe_title": "Chocolate chip cookies",
      "recipe_url": "/recipes/chocolate-chip-cookies/",
      "old_image": "/assets/cookies.jpg",
      "new_image": "/assets/chocolate-chip-cookies.webp",
      "status": "AI-generated",
      "source_page": null,
      "download_url": null,
      "creator": null,
      "license": null,
      "license_link": null,
      "commercial_use_note": "Generated specifically for The Kitchen Table; no third-party stock photograph is assigned as this recipe primary image.",
      "generation_prompt": "Use case: photorealistic-natural\nAsset type: primary recipe image for The Kitchen Table website\nPrimary request: Create one realistic, appetizing finished serving of the recipe \u201cChocolate chip cookies.\u201d\nRecipe description: Even dough portions bake at the same rate.\nExact listed ingredients: 115 g unsalted butter, softened; 100 g brown sugar; 50 g white sugar; 1  large egg; 1 tsp vanilla extract; 180 g all-purpose flour; 0.5 tsp baking soda; 0.25 tsp salt; 150 g chocolate chips\nComplete preparation method: Mix the dough: Beat butter and both sugars until creamy. Beat in egg and vanilla. Mix flour, baking soda, and salt separately, then stir into the butter mixture just until combined. Fold in chocolate chips. Chill and heat: Refrigerate dough for 20 minutes while heating oven to 350\u00b0F / 175\u00b0C. Line two baking sheets with parchment. Portion and bake: Divide into 18 similar mounds, leaving generous space between. Bake each tray for 10\u201312 minutes, until edges are golden and centers look set rather than wet. Rotate trays if your oven heats unevenly. Cool: Leave on the tray 5 minutes before moving to a rack. Do not taste raw dough. Cookies firm as they cool, so judge texture after cooling.\nScene/backdrop: soft gray stone counter, simple home-kitchen setting, no unrelated side dishes\nSubject: the plausible finished dish exactly as produced by the recipe, with the correct protein or plant-based base, cooking method, shape, texture, sauce, topping, and garnish\nStyle/medium: realistic editorial food photography with believable home-cooked texture\nComposition/framing: landscape 3:2, natural eye-level table view, full main dish visible with safe crop area for responsive cards\nLighting/mood: soft natural window light, appetizing but honest, gentle shadows\nConstraints: include only ingredients and garnishes supported by the recipe; no substitutions, no extra protein, no text, logos, watermark, collage, hands, packaging, impossible shapes, or misleading restaurant-perfect styling",
      "output_filename": "chocolate-chip-cookies.webp",
      "creation_date": "2026-10-13",
      "visual_match_review_status": "Passed labeled contact-sheet review against recipe title, ingredients, and method on 2026-10-13.",
      "duplicate_check_status": "Passed exact SHA-256 and 256-bit perceptual difference-hash checks; no exact or near duplicate primary image detected.",
      "sha256": "0fa2d35784dd0983625e73bbc47be07e1d88d72bba8e422c701883428117500d",
      "width": 1200,
      "height": 800,
      "format": "WebP",
      "responsive_crop_review_status": "Passed 3:2 card and full-width recipe-cover crop review."
    },
    {
      "recipe_title": "Apple & oat crumble",
      "recipe_url": "/recipes/apple-oat-crumble/",
      "old_image": "/assets/cookies.jpg",
      "new_image": "/assets/apple-oat-crumble.webp",
      "status": "AI-generated",
      "source_page": null,
      "download_url": null,
      "creator": null,
      "license": null,
      "license_link": null,
      "commercial_use_note": "Generated specifically for The Kitchen Table; no third-party stock photograph is assigned as this recipe primary image.",
      "generation_prompt": "Use case: photorealistic-natural\nAsset type: primary recipe image for The Kitchen Table website\nPrimary request: Create one realistic, appetizing finished serving of the recipe \u201cApple & oat crumble.\u201d\nRecipe description: A loose crumbly topping lets steam escape while the apples soften.\nExact listed ingredients: 700 g apples, peeled, cored, and sliced; 2 tbsp sugar; 1 tsp ground cinnamon; 1 tbsp lemon juice; 100 g all-purpose flour; 60 g rolled oats; 80 g cold butter, cubed; 70 g brown sugar\nComplete preparation method: Prepare the fruit: Heat oven to 375\u00b0F / 190\u00b0C. Toss apples with sugar, cinnamon, and lemon juice in a medium baking dish. Add 1 tablespoon water if the apples are very dry. Make the crumble: Rub butter into flour with fingertips until it resembles coarse crumbs. Stir in oats and brown sugar. Avoid working it into a solid dough. Bake: Scatter topping over fruit without pressing down. Bake 35\u201345 minutes until the top is golden and apples are tender when pierced. Loosely cover if the topping browns early. Rest: Let stand 10 minutes before serving so the bubbling juices settle. Serve plain or with yogurt or custard if desired.\nScene/backdrop: cream linen over a wood table, simple home-kitchen setting, no unrelated side dishes\nSubject: the plausible finished dish exactly as produced by the recipe, with the correct protein or plant-based base, cooking method, shape, texture, sauce, topping, and garnish\nStyle/medium: realistic editorial food photography with believable home-cooked texture\nComposition/framing: landscape 3:2, 45-degree editorial view, full main dish visible with safe crop area for responsive cards\nLighting/mood: soft natural window light, appetizing but honest, gentle shadows\nConstraints: include only ingredients and garnishes supported by the recipe; no substitutions, no extra protein, no text, logos, watermark, collage, hands, packaging, impossible shapes, or misleading restaurant-perfect styling",
      "output_filename": "apple-oat-crumble.webp",
      "creation_date": "2026-10-13",
      "visual_match_review_status": "Passed labeled contact-sheet review against recipe title, ingredients, and method on 2026-10-13.",
      "duplicate_check_status": "Passed exact SHA-256 and 256-bit perceptual difference-hash checks; no exact or near duplicate primary image detected.",
      "sha256": "b756c914516cb7e4e3be145cb4fbc104ffa282c70d86b3360e7142f87b8e4d46",
      "width": 1200,
      "height": 800,
      "format": "WebP",
      "responsive_crop_review_status": "Passed 3:2 card and full-width recipe-cover crop review."
    },
    {
      "recipe_title": "Blueberry muffins",
      "recipe_url": "/recipes/blueberry-muffins/",
      "old_image": "/assets/bread.jpg",
      "new_image": "/assets/blueberry-muffins.webp",
      "status": "AI-generated",
      "source_page": null,
      "download_url": null,
      "creator": null,
      "license": null,
      "license_link": null,
      "commercial_use_note": "Generated specifically for The Kitchen Table; no third-party stock photograph is assigned as this recipe primary image.",
      "generation_prompt": "Use case: photorealistic-natural\nAsset type: primary recipe image for The Kitchen Table website\nPrimary request: Create one realistic, appetizing finished serving of the recipe \u201cBlueberry muffins.\u201d\nRecipe description: Muffin batter needs a gentle hand after wet and dry ingredients meet.\nExact listed ingredients: 250 g all-purpose flour; 100 g sugar; 2 tsp baking powder; 0.25 tsp salt; 2  large eggs; 180 ml milk; 80 ml neutral oil; 1 tsp vanilla extract; 150 g blueberries\nComplete preparation method: Prepare: Heat oven to 375\u00b0F / 190\u00b0C. Line a 12-cup muffin pan. Mix flour, sugar, baking powder, and salt in a large bowl. Mix wet ingredients: Whisk eggs, milk, oil, and vanilla in another bowl. Pour into dry ingredients and fold gently just until combined; some lumps are fine. Add berries: Fold in blueberries with as few strokes as possible. Divide batter evenly among the muffin cups, filling each about three-quarters full. Bake and cool: Bake 20\u201325 minutes until golden and a skewer in a muffin comes out without wet batter. Cool in the pan 5 minutes, then on a rack. Do not taste raw batter.\nScene/backdrop: dark walnut table, simple home-kitchen setting, no unrelated side dishes\nSubject: the plausible finished dish exactly as produced by the recipe, with the correct protein or plant-based base, cooking method, shape, texture, sauce, topping, and garnish\nStyle/medium: realistic editorial food photography with believable home-cooked texture\nComposition/framing: landscape 3:2, top-down view, full main dish visible with safe crop area for responsive cards\nLighting/mood: soft natural window light, appetizing but honest, gentle shadows\nConstraints: include only ingredients and garnishes supported by the recipe; no substitutions, no extra protein, no text, logos, watermark, collage, hands, packaging, impossible shapes, or misleading restaurant-perfect styling",
      "output_filename": "blueberry-muffins.webp",
      "creation_date": "2026-10-13",
      "visual_match_review_status": "Passed labeled contact-sheet review against recipe title, ingredients, and method on 2026-10-13.",
      "duplicate_check_status": "Passed exact SHA-256 and 256-bit perceptual difference-hash checks; no exact or near duplicate primary image detected.",
      "sha256": "3b52fa6c102a9031444ebc84c2f924277042385d541c275bbb6b2b5a3becaae2",
      "width": 1200,
      "height": 800,
      "format": "WebP",
      "responsive_crop_review_status": "Passed 3:2 card and full-width recipe-cover crop review."
    },
    {
      "recipe_title": "Buttery shortbread",
      "recipe_url": "/recipes/buttery-shortbread/",
      "old_image": "/assets/cookies.jpg",
      "new_image": "/assets/buttery-shortbread.webp",
      "status": "AI-generated",
      "source_page": null,
      "download_url": null,
      "creator": null,
      "license": null,
      "license_link": null,
      "commercial_use_note": "Generated specifically for The Kitchen Table; no third-party stock photograph is assigned as this recipe primary image.",
      "generation_prompt": "Use case: photorealistic-natural\nAsset type: primary recipe image for The Kitchen Table website\nPrimary request: Create one realistic, appetizing finished serving of the recipe \u201cButtery shortbread.\u201d\nRecipe description: Shortbread uses a simple flour, butter, and sugar ratio for a tender crumb.\nExact listed ingredients: 150 g all-purpose flour; 100 g unsalted butter, softened; 50 g sugar; 0.25 tsp salt; 0.5 tsp vanilla extract\nComplete preparation method: Mix: Beat butter and sugar until smooth, not extremely airy. Stir in vanilla and salt, then work in flour just until a soft crumbly dough forms. Shape: Press evenly into a lined 20 cm square pan. Score into 12 pieces and prick lightly with a fork. Chill 20 minutes. Heat oven to 325\u00b0F / 160\u00b0C. Bake: Bake 25\u201330 minutes until set and very lightly golden at the edges. The top should remain fairly pale, but there should be no raw-looking dough. Cut and cool: While still warm, gently recut along scored lines. Cool completely in the pan before lifting out; shortbread is delicate when hot.\nScene/backdrop: warm pale stone table, simple home-kitchen setting, no unrelated side dishes\nSubject: the plausible finished dish exactly as produced by the recipe, with the correct protein or plant-based base, cooking method, shape, texture, sauce, topping, and garnish\nStyle/medium: realistic editorial food photography with believable home-cooked texture\nComposition/framing: landscape 3:2, three-quarter close view, full main dish visible with safe crop area for responsive cards\nLighting/mood: soft natural window light, appetizing but honest, gentle shadows\nConstraints: include only ingredients and garnishes supported by the recipe; no substitutions, no extra protein, no text, logos, watermark, collage, hands, packaging, impossible shapes, or misleading restaurant-perfect styling",
      "output_filename": "buttery-shortbread.webp",
      "creation_date": "2026-10-13",
      "visual_match_review_status": "Passed labeled contact-sheet review against recipe title, ingredients, and method on 2026-10-13.",
      "duplicate_check_status": "Passed exact SHA-256 and 256-bit perceptual difference-hash checks; no exact or near duplicate primary image detected.",
      "sha256": "bb4060eda31c9f3fa0727d6f98fb8fa3bde3a601380c30968b1fd621aa448177",
      "width": 1200,
      "height": 800,
      "format": "WebP",
      "responsive_crop_review_status": "Passed 3:2 card and full-width recipe-cover crop review."
    },
    {
      "recipe_title": "Basic homemade pizza dough",
      "recipe_url": "/recipes/basic-pizza-dough/",
      "old_image": "/assets/pizza.jpg",
      "new_image": "/assets/basic-pizza-dough.webp",
      "status": "AI-generated",
      "source_page": null,
      "download_url": null,
      "creator": null,
      "license": null,
      "license_link": null,
      "commercial_use_note": "Generated specifically for The Kitchen Table; no third-party stock photograph is assigned as this recipe primary image.",
      "generation_prompt": "Use case: photorealistic-natural\nAsset type: primary recipe image for The Kitchen Table website\nPrimary request: Create a realistic image specifically representing \u201cBasic homemade pizza dough,\u201d whose listed ingredients make the dough only.\nScene/backdrop: light oak home-kitchen work surface dusted very lightly with flour\nSubject: two smooth, risen pizza dough balls after proofing, one gently shaped into a round base; a small glass bowl with a trace of olive oil may appear\nRecipe facts: bread flour, instant yeast, salt, lukewarm water, olive oil, and flour for shaping; final texture should look soft, elastic, and properly risen\nStyle/medium: realistic editorial food photography with believable homemade texture\nComposition/framing: landscape 3:2, slightly overhead, dough centered with safe responsive crop\nLighting/mood: soft natural window light\nConstraints: show dough only; no tomato sauce, cheese, meat, vegetables, baked pizza, text, logo, watermark, collage, hands, or packaging",
      "output_filename": "basic-pizza-dough.webp",
      "creation_date": "2026-10-13",
      "visual_match_review_status": "Passed labeled contact-sheet review against recipe title, ingredients, and method on 2026-10-13.",
      "duplicate_check_status": "Passed exact SHA-256 and 256-bit perceptual difference-hash checks; no exact or near duplicate primary image detected.",
      "sha256": "293efb54564a6a105854a68a2904b1dbfaa10ad9581957bda0c8583b880cc158",
      "width": 1200,
      "height": 800,
      "format": "WebP",
      "responsive_crop_review_status": "Passed 3:2 card and full-width recipe-cover crop review."
    },
    {
      "recipe_title": "Roasted carrot & ginger soup",
      "recipe_url": "/recipes/roasted-carrot-ginger-soup/",
      "old_image": "/assets/soup.jpg",
      "new_image": "/assets/roasted-carrot-ginger-soup.webp",
      "status": "AI-generated",
      "source_page": null,
      "download_url": null,
      "creator": null,
      "license": null,
      "license_link": null,
      "commercial_use_note": "Generated specifically for The Kitchen Table; no third-party stock photograph is assigned as this recipe primary image.",
      "generation_prompt": "Use case: photorealistic-natural\nAsset type: primary recipe image for The Kitchen Table website\nPrimary request: Create one realistic, appetizing finished serving of the recipe \u201cRoasted carrot & ginger soup.\u201d\nRecipe description: Roasting concentrates the sweetness of carrots before they become soup.\nExact listed ingredients: 700 g carrots, peeled and chopped; 2 tbsp olive oil; 1  onion, diced; 1 tbsp grated fresh ginger; 800 ml vegetable stock; 0.5 tsp salt; 1 tbsp lemon juice\nComplete preparation method: Roast the carrots: Heat oven to 425\u00b0F / 220\u00b0C. Toss carrots with half the oil and half the salt. Roast on a tray for 25\u201330 minutes, turning once, until tender and lightly browned. Soften the onion: Meanwhile, heat remaining oil in a saucepan. Cook onion for 8 minutes, then add ginger and stir for 30 seconds. Simmer together: Add roasted carrots and stock. Simmer for 10 minutes so the flavors blend and carrots become very soft. Blend: Remove from heat. Blend with an immersion blender, keeping the head submerged. Add lemon juice and remaining salt to taste. Thin with water if needed and warm gently before serving.\nScene/backdrop: soft gray stone counter, simple home-kitchen setting, no unrelated side dishes\nSubject: the plausible finished dish exactly as produced by the recipe, with the correct protein or plant-based base, cooking method, shape, texture, sauce, topping, and garnish\nStyle/medium: realistic editorial food photography with believable home-cooked texture\nComposition/framing: landscape 3:2, natural eye-level table view, full main dish visible with safe crop area for responsive cards\nLighting/mood: soft natural window light, appetizing but honest, gentle shadows\nConstraints: include only ingredients and garnishes supported by the recipe; no substitutions, no extra protein, no text, logos, watermark, collage, hands, packaging, impossible shapes, or misleading restaurant-perfect styling",
      "output_filename": "roasted-carrot-ginger-soup.webp",
      "creation_date": "2026-10-13",
      "visual_match_review_status": "Passed labeled contact-sheet review against recipe title, ingredients, and method on 2026-10-13.",
      "duplicate_check_status": "Passed exact SHA-256 and 256-bit perceptual difference-hash checks; no exact or near duplicate primary image detected.",
      "sha256": "404e9eec6bb69f0fe37b753a0be3f7e40971ec3430c42f2a43784bad1f2fcaad",
      "width": 1200,
      "height": 800,
      "format": "WebP",
      "responsive_crop_review_status": "Passed 3:2 card and full-width recipe-cover crop review."
    },
    {
      "recipe_title": "Garden vegetable omelet",
      "recipe_url": "/recipes/garden-vegetable-omelet/",
      "old_image": "/assets/root-vegetables.jpg",
      "new_image": "/assets/garden-vegetable-omelet.webp",
      "status": "AI-generated",
      "source_page": null,
      "download_url": null,
      "creator": null,
      "license": null,
      "license_link": null,
      "commercial_use_note": "Generated specifically for The Kitchen Table; no third-party stock photograph is assigned as this recipe primary image.",
      "generation_prompt": "Use case: photorealistic-natural\nAsset type: primary recipe image for The Kitchen Table website\nPrimary request: Create one realistic, appetizing finished serving of the recipe \u201cGarden vegetable omelet.\u201d\nRecipe description: Garden vegetable omelet uses ordinary grocery-store ingredients and teaches a clear eggs workflow with visual cues for beginners.\nExact listed ingredients: 4 large eggs; 1  1 bell pepper, diced; 1 tbsp olive oil or unsalted butter; 30 ml milk; 0.25 tsp fine salt; 0.25 tsp black pepper; 2 tbsp chives and black pepper\nComplete preparation method: Prepare first: Read the full recipe. Clear the counter, wash produce, and measure every ingredient. Prepare the named main and supporting ingredients as listed; keep raw meat or seafood, its board, and its utensils separate from ready-to-eat food. Use a clean bowl and a nonstick or well-seasoned pan of the stated size. Mix evenly: Combine the measured base ingredients for 30\u201360 seconds. Scrape the bowl so dry pockets or streaks of egg do not remain. Cook gently: Cook over medium-low heat, stirring or turning only as needed, for 5\u201312 minutes. Lower the heat if the bottom colors too quickly; continue in 1-minute increments if the center is not set. Check 160\u00b0F / 71\u00b0C for a mixed egg dish, with no liquid egg remaining. Finish and portion: Remove from heat, add the finishing flavor, and rest 2\u20135 minutes. Divide into the stated servings while warm.\nScene/backdrop: cream linen over a wood table, simple home-kitchen setting, no unrelated side dishes\nSubject: the plausible finished dish exactly as produced by the recipe, with the correct protein or plant-based base, cooking method, shape, texture, sauce, topping, and garnish\nStyle/medium: realistic editorial food photography with believable home-cooked texture\nComposition/framing: landscape 3:2, 45-degree editorial view, full main dish visible with safe crop area for responsive cards\nLighting/mood: soft natural window light, appetizing but honest, gentle shadows\nConstraints: include only ingredients and garnishes supported by the recipe; no substitutions, no extra protein, no text, logos, watermark, collage, hands, packaging, impossible shapes, or misleading restaurant-perfect styling",
      "output_filename": "garden-vegetable-omelet.webp",
      "creation_date": "2026-10-13",
      "visual_match_review_status": "Passed labeled contact-sheet review against recipe title, ingredients, and method on 2026-10-13.",
      "duplicate_check_status": "Passed exact SHA-256 and 256-bit perceptual difference-hash checks; no exact or near duplicate primary image detected.",
      "sha256": "1570cd989991148507529476a18b29e4b2e636eab7bb513d8496682e3c08f977",
      "width": 1200,
      "height": 800,
      "format": "WebP",
      "responsive_crop_review_status": "Passed 3:2 card and full-width recipe-cover crop review."
    },
    {
      "recipe_title": "Banana walnut overnight oats",
      "recipe_url": "/recipes/banana-walnut-overnight-oats/",
      "old_image": "/assets/eggs.jpg",
      "new_image": "/assets/banana-walnut-overnight-oats.webp",
      "status": "AI-generated",
      "source_page": null,
      "download_url": null,
      "creator": null,
      "license": null,
      "license_link": null,
      "commercial_use_note": "Generated specifically for The Kitchen Table; no third-party stock photograph is assigned as this recipe primary image.",
      "generation_prompt": "Use case: photorealistic-natural\nAsset type: primary recipe image for The Kitchen Table website\nPrimary request: Create one realistic, appetizing finished serving of the recipe \u201cBanana walnut overnight oats.\u201d\nRecipe description: Banana walnut overnight oats uses ordinary grocery-store ingredients and teaches a clear oats workflow with visual cues for beginners.\nExact listed ingredients: 160 g rolled oats; 1  1 ripe banana, mashed; 400 ml milk or unsweetened plant milk; 1 tbsp maple syrup; 0.5 tsp ground cinnamon; 0.25 tsp fine salt; 30 g cinnamon and walnuts\nComplete preparation method: Prepare first: Read the full recipe. Clear the counter, wash produce, and measure every ingredient. Prepare the named main and supporting ingredients as listed; keep raw meat or seafood, its board, and its utensils separate from ready-to-eat food. Use a clean bowl and a nonstick or well-seasoned pan of the stated size. Mix evenly: Combine the measured base ingredients for 30\u201360 seconds. Scrape the bowl so dry pockets or streaks of egg do not remain. Cook gently: Cook over medium-low heat, stirring or turning only as needed, for 5\u201312 minutes. Lower the heat if the bottom colors too quickly; continue in 1-minute increments if the center is not set. Look for a creamy but not watery texture. Finish and portion: Remove from heat, add the finishing flavor, and rest 2\u20135 minutes. Divide into the stated servings while warm.\nScene/backdrop: dark walnut table, simple home-kitchen setting, no unrelated side dishes\nSubject: the plausible finished dish exactly as produced by the recipe, with the correct protein or plant-based base, cooking method, shape, texture, sauce, topping, and garnish\nStyle/medium: realistic editorial food photography with believable home-cooked texture\nComposition/framing: landscape 3:2, top-down view, full main dish visible with safe crop area for responsive cards\nLighting/mood: soft natural window light, appetizing but honest, gentle shadows\nConstraints: include only ingredients and garnishes supported by the recipe; no substitutions, no extra protein, no text, logos, watermark, collage, hands, packaging, impossible shapes, or misleading restaurant-perfect styling",
      "output_filename": "banana-walnut-overnight-oats.webp",
      "creation_date": "2026-10-13",
      "visual_match_review_status": "Passed labeled contact-sheet review against recipe title, ingredients, and method on 2026-10-13.",
      "duplicate_check_status": "Passed exact SHA-256 and 256-bit perceptual difference-hash checks; no exact or near duplicate primary image detected.",
      "sha256": "30584569da5bf6a8d3a76a3ecf46ac23f286b3630fb53d46eb79be73f16bbce0",
      "width": 1200,
      "height": 800,
      "format": "WebP",
      "responsive_crop_review_status": "Passed 3:2 card and full-width recipe-cover crop review."
    },
    {
      "recipe_title": "Freezer-friendly breakfast burritos",
      "recipe_url": "/recipes/freezer-friendly-breakfast-burritos/",
      "old_image": "/assets/root-vegetables.jpg",
      "new_image": "/assets/freezer-friendly-breakfast-burritos.webp",
      "status": "AI-generated",
      "source_page": null,
      "download_url": null,
      "creator": null,
      "license": null,
      "license_link": null,
      "commercial_use_note": "Generated specifically for The Kitchen Table; no third-party stock photograph is assigned as this recipe primary image.",
      "generation_prompt": "Use case: photorealistic-natural\nAsset type: primary recipe image for The Kitchen Table website\nPrimary request: Create one realistic, appetizing finished serving of the recipe \u201cFreezer-friendly breakfast burritos.\u201d\nRecipe description: Freezer-friendly breakfast burritos uses ordinary grocery-store ingredients and teaches a clear wrap workflow with visual cues for beginners.\nExact listed ingredients: 6 large eggs; 4 medium flour tortillas; 120 g crisp lettuce or cabbage, prepared; 120 g plain yogurt or suitable spread; 1 tbsp lemon juice; 0.25 tsp fine salt; 2 tbsp black beans and mild salsa\nComplete preparation method: Prepare safely: Read the full recipe. Clear the counter, wash produce, and measure every ingredient. Prepare the named main and supporting ingredients as listed; keep raw meat or seafood, its board, and its utensils separate from ready-to-eat food. Set out a clean board for the bread or tortillas and ready-to-eat vegetables. Make the filling: Mix the main ingredient, yogurt or spread, lemon, salt, and flavorings for about 1 minute. The mixture should hold together without running; add wet ingredients gradually. Warm or toast: Warm bread or tortillas over medium-low heat for 1\u20133 minutes per side if desired. Reduce the heat if the outside browns before the center warms. Assemble: Divide the filling evenly, add the crisp vegetables, and close without overfilling. Serve at once, or wrap and refrigerate promptly if the ingredients were kept cold.\nScene/backdrop: warm pale stone table, simple home-kitchen setting, no unrelated side dishes\nSubject: the plausible finished dish exactly as produced by the recipe, with the correct protein or plant-based base, cooking method, shape, texture, sauce, topping, and garnish\nStyle/medium: realistic editorial food photography with believable home-cooked texture\nComposition/framing: landscape 3:2, three-quarter close view, full main dish visible with safe crop area for responsive cards\nLighting/mood: soft natural window light, appetizing but honest, gentle shadows\nConstraints: include only ingredients and garnishes supported by the recipe; no substitutions, no extra protein, no text, logos, watermark, collage, hands, packaging, impossible shapes, or misleading restaurant-perfect styling",
      "output_filename": "freezer-friendly-breakfast-burritos.webp",
      "creation_date": "2026-10-13",
      "visual_match_review_status": "Passed labeled contact-sheet review against recipe title, ingredients, and method on 2026-10-13.",
      "duplicate_check_status": "Passed exact SHA-256 and 256-bit perceptual difference-hash checks; no exact or near duplicate primary image detected.",
      "sha256": "16a6b28ebfc44711c71691396886812b501240e4111812325b250e4216b0f19d",
      "width": 1200,
      "height": 800,
      "format": "WebP",
      "responsive_crop_review_status": "Passed 3:2 card and full-width recipe-cover crop review."
    },
    {
      "recipe_title": "Berry yogurt crunch parfaits",
      "recipe_url": "/recipes/berry-yogurt-crunch-parfaits/",
      "old_image": "/assets/root-vegetables.jpg",
      "new_image": "/assets/berry-yogurt-crunch-parfaits.webp",
      "status": "AI-generated",
      "source_page": null,
      "download_url": null,
      "creator": null,
      "license": null,
      "license_link": null,
      "commercial_use_note": "Generated specifically for The Kitchen Table; no third-party stock photograph is assigned as this recipe primary image.",
      "generation_prompt": "Use case: photorealistic-natural\nAsset type: primary recipe image for The Kitchen Table website\nPrimary request: Create one realistic, appetizing finished serving of the recipe \u201cBerry yogurt crunch parfaits.\u201d\nRecipe description: Berry yogurt crunch parfaits uses ordinary grocery-store ingredients and teaches a clear assemble workflow with visual cues for beginners.\nExact listed ingredients: 400 g plain Greek yogurt; 200 g mixed berries; 2 tbsp extra-virgin olive oil or dressing; 1 tbsp lemon juice or mild vinegar; 0.25 tsp fine salt; 2 tbsp toasted oats and honey\nComplete preparation method: Prepare the components: Read the full recipe. Clear the counter, wash produce, and measure every ingredient. Prepare the named main and supporting ingredients as listed; keep raw meat or seafood, its board, and its utensils separate from ready-to-eat food. Pat washed produce dry so the dressing is not diluted. Make the dressing: Whisk the oil or dressing, acid, salt, and flavorings in a large bowl for 30\u201345 seconds, until evenly blended. Taste only ingredients that are safe to eat. Combine gently: Add the prepared components and fold with a large spoon for 30\u201360 seconds. Stop when everything is lightly coated; vigorous mixing can bruise delicate ingredients. Serve or chill: Serve immediately for the crispest texture, or cover and chill for up to 30 minutes. If liquid collects, toss once more rather than adding extra salt.\nScene/backdrop: light oak kitchen table, simple home-kitchen setting, no unrelated side dishes\nSubject: the plausible finished dish exactly as produced by the recipe, with the correct protein or plant-based base, cooking method, shape, texture, sauce, topping, and garnish\nStyle/medium: realistic editorial food photography with believable home-cooked texture\nComposition/framing: landscape 3:2, slightly overhead view, full main dish visible with safe crop area for responsive cards\nLighting/mood: soft natural window light, appetizing but honest, gentle shadows\nConstraints: include only ingredients and garnishes supported by the recipe; no substitutions, no extra protein, no text, logos, watermark, collage, hands, packaging, impossible shapes, or misleading restaurant-perfect styling",
      "output_filename": "berry-yogurt-crunch-parfaits.webp",
      "creation_date": "2026-10-13",
      "visual_match_review_status": "Passed labeled contact-sheet review against recipe title, ingredients, and method on 2026-10-13.",
      "duplicate_check_status": "Passed exact SHA-256 and 256-bit perceptual difference-hash checks; no exact or near duplicate primary image detected.",
      "sha256": "5e78df12406abb544eb4552ffec59222fff2214e9335f10d7626f0455711e867",
      "width": 1200,
      "height": 800,
      "format": "WebP",
      "responsive_crop_review_status": "Passed 3:2 card and full-width recipe-cover crop review."
    },
    {
      "recipe_title": "Crispy potato and pepper breakfast hash",
      "recipe_url": "/recipes/crispy-potato-and-pepper-breakfast-hash/",
      "old_image": "/assets/root-vegetables.jpg",
      "new_image": "/assets/crispy-potato-and-pepper-breakfast-hash.webp",
      "status": "AI-generated",
      "source_page": null,
      "download_url": null,
      "creator": null,
      "license": null,
      "license_link": null,
      "commercial_use_note": "Generated specifically for The Kitchen Table; no third-party stock photograph is assigned as this recipe primary image.",
      "generation_prompt": "Use case: photorealistic-natural\nAsset type: primary recipe image for The Kitchen Table website\nPrimary request: Create one realistic, appetizing finished serving of the recipe \u201cCrispy potato and pepper breakfast hash.\u201d\nRecipe description: Crispy potato and pepper breakfast hash uses ordinary grocery-store ingredients and teaches a clear skillet workflow with visual cues for beginners.\nExact listed ingredients: 500 g waxy potatoes, 2 cm dice; 1  1 bell pepper, diced; 1 tbsp olive oil or other neutral cooking oil; 1  medium onion, prepared as directed; 2  garlic cloves, minced; 0.5 tsp fine salt; 0.25 tsp black pepper; 2 tbsp smoked paprika and scallions\nComplete preparation method: Set up the pan: Read the full recipe. Clear the counter, wash produce, and measure every ingredient. Prepare the named main and supporting ingredients as listed; keep raw meat or seafood, its board, and its utensils separate from ready-to-eat food. Put a wide skillet over medium heat for 2 minutes, then add the measured oil. Build color: Add the main ingredient in one layer. Cook 4\u20136 minutes without constant stirring, then turn. If it smokes heavily, lower the heat; if it stays pale and wet, increase heat slightly or work in batches. Add the supporting ingredients: Add the supporting ingredient, onion, garlic, and flavorings. Cook 5\u201310 minutes, stirring every minute or two, until aromatic and evenly cooked. Continue until the center is tender and the surface is well browned. Balance and serve: Take the pan off the heat. Taste a safe sample, then adjust salt or acidity in small amounts. Rest 3 minutes before serving.\nScene/backdrop: soft gray stone counter, simple home-kitchen setting, no unrelated side dishes\nSubject: the plausible finished dish exactly as produced by the recipe, with the correct protein or plant-based base, cooking method, shape, texture, sauce, topping, and garnish\nStyle/medium: realistic editorial food photography with believable home-cooked texture\nComposition/framing: landscape 3:2, natural eye-level table view, full main dish visible with safe crop area for responsive cards\nLighting/mood: soft natural window light, appetizing but honest, gentle shadows\nConstraints: include only ingredients and garnishes supported by the recipe; no substitutions, no extra protein, no text, logos, watermark, collage, hands, packaging, impossible shapes, or misleading restaurant-perfect styling",
      "output_filename": "crispy-potato-and-pepper-breakfast-hash.webp",
      "creation_date": "2026-10-13",
      "visual_match_review_status": "Passed labeled contact-sheet review against recipe title, ingredients, and method on 2026-10-13.",
      "duplicate_check_status": "Passed exact SHA-256 and 256-bit perceptual difference-hash checks; no exact or near duplicate primary image detected.",
      "sha256": "6bcabda6e4a15e9e7c2dd35a67d890f1dd778167e838c6ac7a44fa752db23c74",
      "width": 1200,
      "height": 800,
      "format": "WebP",
      "responsive_crop_review_status": "Passed 3:2 card and full-width recipe-cover crop review."
    },
    {
      "recipe_title": "Cinnamon apple baked French toast",
      "recipe_url": "/recipes/cinnamon-apple-baked-french-toast/",
      "old_image": "/assets/root-vegetables.jpg",
      "new_image": "/assets/cinnamon-apple-baked-french-toast.webp",
      "status": "AI-generated",
      "source_page": null,
      "download_url": null,
      "creator": null,
      "license": null,
      "license_link": null,
      "commercial_use_note": "Generated specifically for The Kitchen Table; no third-party stock photograph is assigned as this recipe primary image.",
      "generation_prompt": "Use case: photorealistic-natural\nAsset type: primary recipe image for The Kitchen Table website\nPrimary request: Create one realistic, appetizing finished serving of the recipe \u201cCinnamon apple baked French toast.\u201d\nRecipe description: Cinnamon apple baked French toast uses ordinary grocery-store ingredients and teaches a clear breakfast_bake workflow with visual cues for beginners.\nExact listed ingredients: 1  8 slices day-old sandwich bread; 1 large apple, diced; 4  large eggs; 240 ml milk; 30 g unsalted butter, melted; 0.5 tsp fine salt; 2 tbsp cinnamon and vanilla mixture\nComplete preparation method: Prepare and preheat: Read the full recipe. Clear the counter, wash produce, and measure every ingredient. Prepare the named main and supporting ingredients as listed; keep raw meat or seafood, its board, and its utensils separate from ready-to-eat food. Heat the oven to 375\u00b0F / 190\u00b0C. Grease a 23 cm / 9-inch baking dish or a 12-cup muffin pan, as appropriate. Build the mixture: Whisk eggs, milk, melted butter, salt, and the flavor mixture for 45 seconds. Fold in the main and supporting ingredients until evenly moistened; do not leave dry bread pockets or dense egg streaks. Bake to a set center: Bake 20\u201335 minutes. Rotate once if your oven browns unevenly. The center should not jiggle with liquid egg; check an egg-based casserole reaches 160\u00b0F / 71\u00b0C. Lower the oven 15\u00b0F / 10\u00b0C if the top browns too early. Rest before serving: Rest 5\u201310 minutes so the center finishes setting and portions hold together. Run a thin spatula around the edges before lifting individual portions.\nScene/backdrop: cream linen over a wood table, simple home-kitchen setting, no unrelated side dishes\nSubject: the plausible finished dish exactly as produced by the recipe, with the correct protein or plant-based base, cooking method, shape, texture, sauce, topping, and garnish\nStyle/medium: realistic editorial food photography with believable home-cooked texture\nComposition/framing: landscape 3:2, 45-degree editorial view, full main dish visible with safe crop area for responsive cards\nLighting/mood: soft natural window light, appetizing but honest, gentle shadows\nConstraints: include only ingredients and garnishes supported by the recipe; no substitutions, no extra protein, no text, logos, watermark, collage, hands, packaging, impossible shapes, or misleading restaurant-perfect styling",
      "output_filename": "cinnamon-apple-baked-french-toast.webp",
      "creation_date": "2026-10-13",
      "visual_match_review_status": "Passed labeled contact-sheet review against recipe title, ingredients, and method on 2026-10-13.",
      "duplicate_check_status": "Passed exact SHA-256 and 256-bit perceptual difference-hash checks; no exact or near duplicate primary image detected.",
      "sha256": "8ff9f58da87270714387397e5e6178c692154c8c9e53046a37ac844d9e12d144",
      "width": 1200,
      "height": 800,
      "format": "WebP",
      "responsive_crop_review_status": "Passed 3:2 card and full-width recipe-cover crop review."
    },
    {
      "recipe_title": "Spinach cheddar egg muffins",
      "recipe_url": "/recipes/spinach-cheddar-egg-muffins/",
      "old_image": "/assets/eggs.jpg",
      "new_image": "/assets/spinach-cheddar-egg-muffins.webp",
      "status": "AI-generated",
      "source_page": null,
      "download_url": null,
      "creator": null,
      "license": null,
      "license_link": null,
      "commercial_use_note": "Generated specifically for The Kitchen Table; no third-party stock photograph is assigned as this recipe primary image.",
      "generation_prompt": "Use case: photorealistic-natural\nAsset type: primary recipe image for The Kitchen Table website\nPrimary request: Create one realistic, appetizing finished serving of the recipe \u201cSpinach cheddar egg muffins.\u201d\nRecipe description: Spinach cheddar egg muffins uses ordinary grocery-store ingredients and teaches a clear breakfast_bake workflow with visual cues for beginners.\nExact listed ingredients: 8 large eggs; 100 g baby spinach; 4  large eggs; 240 ml milk; 30 g unsalted butter, melted; 0.5 tsp fine salt; 2 tbsp cheddar and onion mixture\nComplete preparation method: Prepare and preheat: Read the full recipe. Clear the counter, wash produce, and measure every ingredient. Prepare the named main and supporting ingredients as listed; keep raw meat or seafood, its board, and its utensils separate from ready-to-eat food. Heat the oven to 375\u00b0F / 190\u00b0C. Grease a 23 cm / 9-inch baking dish or a 12-cup muffin pan, as appropriate. Build the mixture: Whisk eggs, milk, melted butter, salt, and the flavor mixture for 45 seconds. Fold in the main and supporting ingredients until evenly moistened; do not leave dry bread pockets or dense egg streaks. Bake to a set center: Bake 20\u201335 minutes. Rotate once if your oven browns unevenly. The center should not jiggle with liquid egg; check an egg-based casserole reaches 160\u00b0F / 71\u00b0C. Lower the oven 15\u00b0F / 10\u00b0C if the top browns too early. Rest before serving: Rest 5\u201310 minutes so the center finishes setting and portions hold together. Run a thin spatula around the edges before lifting individual portions.\nScene/backdrop: dark walnut table, simple home-kitchen setting, no unrelated side dishes\nSubject: the plausible finished dish exactly as produced by the recipe, with the correct protein or plant-based base, cooking method, shape, texture, sauce, topping, and garnish\nStyle/medium: realistic editorial food photography with believable home-cooked texture\nComposition/framing: landscape 3:2, top-down view, full main dish visible with safe crop area for responsive cards\nLighting/mood: soft natural window light, appetizing but honest, gentle shadows\nConstraints: include only ingredients and garnishes supported by the recipe; no substitutions, no extra protein, no text, logos, watermark, collage, hands, packaging, impossible shapes, or misleading restaurant-perfect styling",
      "output_filename": "spinach-cheddar-egg-muffins.webp",
      "creation_date": "2026-10-13",
      "visual_match_review_status": "Passed labeled contact-sheet review against recipe title, ingredients, and method on 2026-10-13.",
      "duplicate_check_status": "Passed exact SHA-256 and 256-bit perceptual difference-hash checks; no exact or near duplicate primary image detected.",
      "sha256": "a588363a9eb821f1706b4cd0aa312ff0044c2fa524c0f37f652a99a3cdb81f8e",
      "width": 1200,
      "height": 800,
      "format": "WebP",
      "responsive_crop_review_status": "Passed 3:2 card and full-width recipe-cover crop review."
    },
    {
      "recipe_title": "Creamy cheddar breakfast grits",
      "recipe_url": "/recipes/creamy-cheddar-breakfast-grits/",
      "old_image": "/assets/root-vegetables.jpg",
      "new_image": "/assets/creamy-cheddar-breakfast-grits.webp",
      "status": "AI-generated",
      "source_page": null,
      "download_url": null,
      "creator": null,
      "license": null,
      "license_link": null,
      "commercial_use_note": "Generated specifically for The Kitchen Table; no third-party stock photograph is assigned as this recipe primary image.",
      "generation_prompt": "Use case: photorealistic-natural\nAsset type: primary recipe image for The Kitchen Table website\nPrimary request: Create one realistic, appetizing finished serving of the recipe \u201cCreamy cheddar breakfast grits.\u201d\nRecipe description: Creamy cheddar breakfast grits uses ordinary grocery-store ingredients and teaches a clear simmer workflow with visual cues for beginners.\nExact listed ingredients: 160 g quick-cooking grits; 80 g cheddar, grated; 1 tbsp olive oil; 1  medium onion, diced; 2  garlic cloves, minced; 750 ml low-sodium stock or water, as appropriate; 0.5 tsp fine salt; 2 tbsp black pepper and scallions\nComplete preparation method: Prepare the pot: Read the full recipe. Clear the counter, wash produce, and measure every ingredient. Prepare the named main and supporting ingredients as listed; keep raw meat or seafood, its board, and its utensils separate from ready-to-eat food. Choose a heavy pot with room for gentle bubbling. Start the flavor base: Heat oil over medium. Cook onion for 6\u20138 minutes until soft, then garlic for 30 seconds. If either browns too fast, lower the heat and add a spoonful of water. Simmer steadily: Add the main ingredient, supporting ingredient, stock, salt, and flavorings. Bring just to a boil, then lower to a gentle simmer for 20\u201335 minutes, stirring every 5 minutes. Continue until the pieces are tender and the liquid lightly coats a spoon. Adjust the texture: If thin, simmer uncovered 5 minutes; if too thick, add warm water 60 ml at a time. Taste a safe spoonful, adjust gradually, and rest 5 minutes before serving.\nScene/backdrop: warm pale stone table, simple home-kitchen setting, no unrelated side dishes\nSubject: the plausible finished dish exactly as produced by the recipe, with the correct protein or plant-based base, cooking method, shape, texture, sauce, topping, and garnish\nStyle/medium: realistic editorial food photography with believable home-cooked texture\nComposition/framing: landscape 3:2, three-quarter close view, full main dish visible with safe crop area for responsive cards\nLighting/mood: soft natural window light, appetizing but honest, gentle shadows\nConstraints: include only ingredients and garnishes supported by the recipe; no substitutions, no extra protein, no text, logos, watermark, collage, hands, packaging, impossible shapes, or misleading restaurant-perfect styling",
      "output_filename": "creamy-cheddar-breakfast-grits.webp",
      "creation_date": "2026-10-13",
      "visual_match_review_status": "Passed labeled contact-sheet review against recipe title, ingredients, and method on 2026-10-13.",
      "duplicate_check_status": "Passed exact SHA-256 and 256-bit perceptual difference-hash checks; no exact or near duplicate primary image detected.",
      "sha256": "368043fb5284878ed72fd40c409121fcf4b3f32c6e2b0efd1a24e9b503aac55c",
      "width": 1200,
      "height": 800,
      "format": "WebP",
      "responsive_crop_review_status": "Passed 3:2 card and full-width recipe-cover crop review."
    },
    {
      "recipe_title": "Black bean breakfast quesadillas",
      "recipe_url": "/recipes/black-bean-breakfast-quesadillas/",
      "old_image": "/assets/root-vegetables.jpg",
      "new_image": "/assets/black-bean-breakfast-quesadillas.webp",
      "status": "AI-generated",
      "source_page": null,
      "download_url": null,
      "creator": null,
      "license": null,
      "license_link": null,
      "commercial_use_note": "Generated specifically for The Kitchen Table; no third-party stock photograph is assigned as this recipe primary image.",
      "generation_prompt": "Use case: photorealistic-natural\nAsset type: primary recipe image for The Kitchen Table website\nPrimary request: Create one realistic, appetizing finished serving of the recipe \u201cBlack bean breakfast quesadillas.\u201d\nRecipe description: Black bean breakfast quesadillas uses ordinary grocery-store ingredients and teaches a clear wrap workflow with visual cues for beginners.\nExact listed ingredients: 4 large eggs; 4 medium flour tortillas; 120 g crisp lettuce or cabbage, prepared; 120 g plain yogurt or suitable spread; 1 tbsp lemon juice; 0.25 tsp fine salt; 2 tbsp black beans and cheddar\nComplete preparation method: Prepare safely: Read the full recipe. Clear the counter, wash produce, and measure every ingredient. Prepare the named main and supporting ingredients as listed; keep raw meat or seafood, its board, and its utensils separate from ready-to-eat food. Set out a clean board for the bread or tortillas and ready-to-eat vegetables. Make the filling: Mix the main ingredient, yogurt or spread, lemon, salt, and flavorings for about 1 minute. The mixture should hold together without running; add wet ingredients gradually. Warm or toast: Warm bread or tortillas over medium-low heat for 1\u20133 minutes per side if desired. Reduce the heat if the outside browns before the center warms. Assemble: Divide the filling evenly, add the crisp vegetables, and close without overfilling. Serve at once, or wrap and refrigerate promptly if the ingredients were kept cold.\nScene/backdrop: light oak kitchen table, simple home-kitchen setting, no unrelated side dishes\nSubject: the plausible finished dish exactly as produced by the recipe, with the correct protein or plant-based base, cooking method, shape, texture, sauce, topping, and garnish\nStyle/medium: realistic editorial food photography with believable home-cooked texture\nComposition/framing: landscape 3:2, slightly overhead view, full main dish visible with safe crop area for responsive cards\nLighting/mood: soft natural window light, appetizing but honest, gentle shadows\nConstraints: include only ingredients and garnishes supported by the recipe; no substitutions, no extra protein, no text, logos, watermark, collage, hands, packaging, impossible shapes, or misleading restaurant-perfect styling",
      "output_filename": "black-bean-breakfast-quesadillas.webp",
      "creation_date": "2026-10-13",
      "visual_match_review_status": "Passed labeled contact-sheet review against recipe title, ingredients, and method on 2026-10-13.",
      "duplicate_check_status": "Passed exact SHA-256 and 256-bit perceptual difference-hash checks; no exact or near duplicate primary image detected.",
      "sha256": "3952b4214ef088b97a050d1ad86fa9f9724daf83e06696ff6e8ad0f9b8d12c5f",
      "width": 1200,
      "height": 800,
      "format": "WebP",
      "responsive_crop_review_status": "Passed 3:2 card and full-width recipe-cover crop review."
    },
    {
      "recipe_title": "Maple apple stovetop oatmeal",
      "recipe_url": "/recipes/maple-apple-stovetop-oatmeal/",
      "old_image": "/assets/eggs.jpg",
      "new_image": "/assets/maple-apple-stovetop-oatmeal.webp",
      "status": "AI-generated",
      "source_page": null,
      "download_url": null,
      "creator": null,
      "license": null,
      "license_link": null,
      "commercial_use_note": "Generated specifically for The Kitchen Table; no third-party stock photograph is assigned as this recipe primary image.",
      "generation_prompt": "Use case: photorealistic-natural\nAsset type: primary recipe image for The Kitchen Table website\nPrimary request: Create one realistic, appetizing finished serving of the recipe \u201cMaple apple stovetop oatmeal.\u201d\nRecipe description: Maple apple stovetop oatmeal uses ordinary grocery-store ingredients and teaches a clear simmer workflow with visual cues for beginners.\nExact listed ingredients: 160 g rolled oats; 1 large apple, diced; 1 tbsp olive oil; 1  medium onion, diced; 2  garlic cloves, minced; 750 ml low-sodium stock or water, as appropriate; 0.5 tsp fine salt; 2 tbsp maple syrup and cinnamon\nComplete preparation method: Prepare the pot: Read the full recipe. Clear the counter, wash produce, and measure every ingredient. Prepare the named main and supporting ingredients as listed; keep raw meat or seafood, its board, and its utensils separate from ready-to-eat food. Choose a heavy pot with room for gentle bubbling. Start the flavor base: Heat oil over medium. Cook onion for 6\u20138 minutes until soft, then garlic for 30 seconds. If either browns too fast, lower the heat and add a spoonful of water. Simmer steadily: Add the main ingredient, supporting ingredient, stock, salt, and flavorings. Bring just to a boil, then lower to a gentle simmer for 20\u201335 minutes, stirring every 5 minutes. Continue until the pieces are tender and the liquid lightly coats a spoon. Adjust the texture: If thin, simmer uncovered 5 minutes; if too thick, add warm water 60 ml at a time. Taste a safe spoonful, adjust gradually, and rest 5 minutes before serving.\nScene/backdrop: soft gray stone counter, simple home-kitchen setting, no unrelated side dishes\nSubject: the plausible finished dish exactly as produced by the recipe, with the correct protein or plant-based base, cooking method, shape, texture, sauce, topping, and garnish\nStyle/medium: realistic editorial food photography with believable home-cooked texture\nComposition/framing: landscape 3:2, natural eye-level table view, full main dish visible with safe crop area for responsive cards\nLighting/mood: soft natural window light, appetizing but honest, gentle shadows\nConstraints: include only ingredients and garnishes supported by the recipe; no substitutions, no extra protein, no text, logos, watermark, collage, hands, packaging, impossible shapes, or misleading restaurant-perfect styling",
      "output_filename": "maple-apple-stovetop-oatmeal.webp",
      "creation_date": "2026-10-13",
      "visual_match_review_status": "Passed labeled contact-sheet review against recipe title, ingredients, and method on 2026-10-13.",
      "duplicate_check_status": "Passed exact SHA-256 and 256-bit perceptual difference-hash checks; no exact or near duplicate primary image detected.",
      "sha256": "4fea80a841888a52a7ad7b0f4dc55b4bb44ad26be470b162d1211cfab7c58700",
      "width": 1200,
      "height": 800,
      "format": "WebP",
      "responsive_crop_review_status": "Passed 3:2 card and full-width recipe-cover crop review."
    },
    {
      "recipe_title": "Turkey avocado ranch wraps",
      "recipe_url": "/recipes/turkey-avocado-ranch-wraps/",
      "old_image": "/assets/tacos.jpg",
      "new_image": "/assets/turkey-avocado-ranch-wraps.webp",
      "status": "AI-generated",
      "source_page": null,
      "download_url": null,
      "creator": null,
      "license": null,
      "license_link": null,
      "commercial_use_note": "Generated specifically for The Kitchen Table; no third-party stock photograph is assigned as this recipe primary image.",
      "generation_prompt": "Use case: photorealistic-natural\nAsset type: primary recipe image for The Kitchen Table website\nPrimary request: Create one realistic, appetizing finished serving of the recipe \u201cTurkey avocado ranch wraps.\u201d\nRecipe description: Turkey avocado ranch wraps uses ordinary grocery-store ingredients and teaches a clear wrap workflow with visual cues for beginners.\nExact listed ingredients: 250 g cooked sliced turkey; 4 large flour tortillas; 120 g crisp lettuce or cabbage, prepared; 120 g plain yogurt or suitable spread; 1 tbsp lemon juice; 0.25 tsp fine salt; 2 tbsp avocado and yogurt ranch\nComplete preparation method: Prepare safely: Read the full recipe. Clear the counter, wash produce, and measure every ingredient. Prepare the named main and supporting ingredients as listed; keep raw meat or seafood, its board, and its utensils separate from ready-to-eat food. Set out a clean board for the bread or tortillas and ready-to-eat vegetables. Make the filling: Mix the main ingredient, yogurt or spread, lemon, salt, and flavorings for about 1 minute. The mixture should hold together without running; add wet ingredients gradually. Warm or toast: Warm bread or tortillas over medium-low heat for 1\u20133 minutes per side if desired. Reduce the heat if the outside browns before the center warms. Assemble: Divide the filling evenly, add the crisp vegetables, and close without overfilling. Serve at once, or wrap and refrigerate promptly if the ingredients were kept cold.\nScene/backdrop: cream linen over a wood table, simple home-kitchen setting, no unrelated side dishes\nSubject: the plausible finished dish exactly as produced by the recipe, with the correct protein or plant-based base, cooking method, shape, texture, sauce, topping, and garnish\nStyle/medium: realistic editorial food photography with believable home-cooked texture\nComposition/framing: landscape 3:2, 45-degree editorial view, full main dish visible with safe crop area for responsive cards\nLighting/mood: soft natural window light, appetizing but honest, gentle shadows\nConstraints: include only ingredients and garnishes supported by the recipe; no substitutions, no extra protein, no text, logos, watermark, collage, hands, packaging, impossible shapes, or misleading restaurant-perfect styling",
      "output_filename": "turkey-avocado-ranch-wraps.webp",
      "creation_date": "2026-10-13",
      "visual_match_review_status": "Passed labeled contact-sheet review against recipe title, ingredients, and method on 2026-10-13.",
      "duplicate_check_status": "Passed exact SHA-256 and 256-bit perceptual difference-hash checks; no exact or near duplicate primary image detected.",
      "sha256": "962e39be09c9d3c7da7e5ca2b37726fa7975776ff13c15ff5eb4792e9ea08645",
      "width": 1200,
      "height": 800,
      "format": "WebP",
      "responsive_crop_review_status": "Passed 3:2 card and full-width recipe-cover crop review."
    },
    {
      "recipe_title": "Open-face tuna melts",
      "recipe_url": "/recipes/open-face-tuna-melts/",
      "old_image": "/assets/root-vegetables.jpg",
      "new_image": "/assets/open-face-tuna-melts.webp",
      "status": "AI-generated",
      "source_page": null,
      "download_url": null,
      "creator": null,
      "license": null,
      "license_link": null,
      "commercial_use_note": "Generated specifically for The Kitchen Table; no third-party stock photograph is assigned as this recipe primary image.",
      "generation_prompt": "Use case: photorealistic-natural\nAsset type: primary recipe image for The Kitchen Table website\nPrimary request: Create one realistic, appetizing finished serving of the recipe \u201cOpen-face tuna melts.\u201d\nRecipe description: Open-face tuna melts uses ordinary grocery-store ingredients and teaches a clear sandwich workflow with visual cues for beginners.\nExact listed ingredients: 2 cans tuna, 140 g drained each; 1  4 slices whole-grain bread; 120 g crisp lettuce or cabbage, prepared; 120 g plain yogurt or suitable spread; 1 tbsp lemon juice; 0.25 tsp fine salt; 2 tbsp celery and cheddar\nComplete preparation method: Prepare safely: Read the full recipe. Clear the counter, wash produce, and measure every ingredient. Prepare the named main and supporting ingredients as listed; keep raw meat or seafood, its board, and its utensils separate from ready-to-eat food. Set out a clean board for the bread or tortillas and ready-to-eat vegetables. Make the filling: Mix the main ingredient, yogurt or spread, lemon, salt, and flavorings for about 1 minute. The mixture should hold together without running; add wet ingredients gradually. Warm or toast: Warm bread or tortillas over medium-low heat for 1\u20133 minutes per side if desired. Reduce the heat if the outside browns before the center warms. Assemble: Divide the filling evenly, add the crisp vegetables, and close without overfilling. Serve at once, or wrap and refrigerate promptly if the ingredients were kept cold.\nScene/backdrop: dark walnut table, simple home-kitchen setting, no unrelated side dishes\nSubject: the plausible finished dish exactly as produced by the recipe, with the correct protein or plant-based base, cooking method, shape, texture, sauce, topping, and garnish\nStyle/medium: realistic editorial food photography with believable home-cooked texture\nComposition/framing: landscape 3:2, top-down view, full main dish visible with safe crop area for responsive cards\nLighting/mood: soft natural window light, appetizing but honest, gentle shadows\nConstraints: include only ingredients and garnishes supported by the recipe; no substitutions, no extra protein, no text, logos, watermark, collage, hands, packaging, impossible shapes, or misleading restaurant-perfect styling",
      "output_filename": "open-face-tuna-melts.webp",
      "creation_date": "2026-10-13",
      "visual_match_review_status": "Passed labeled contact-sheet review against recipe title, ingredients, and method on 2026-10-13.",
      "duplicate_check_status": "Passed exact SHA-256 and 256-bit perceptual difference-hash checks; no exact or near duplicate primary image detected.",
      "sha256": "0e01d0680b88e8f9b3280a97ca1b594d1a8aeba7780b81ba64349b389110c313",
      "width": 1200,
      "height": 800,
      "format": "WebP",
      "responsive_crop_review_status": "Passed 3:2 card and full-width recipe-cover crop review."
    },
    {
      "recipe_title": "Tomato basil grilled cheese",
      "recipe_url": "/recipes/tomato-basil-grilled-cheese/",
      "old_image": "/assets/root-vegetables.jpg",
      "new_image": "/assets/tomato-basil-grilled-cheese.webp",
      "status": "AI-generated",
      "source_page": null,
      "download_url": null,
      "creator": null,
      "license": null,
      "license_link": null,
      "commercial_use_note": "Generated specifically for The Kitchen Table; no third-party stock photograph is assigned as this recipe primary image.",
      "generation_prompt": "Use case: photorealistic-natural\nAsset type: primary recipe image for The Kitchen Table website\nPrimary request: Create one realistic, appetizing finished serving of the recipe \u201cTomato basil grilled cheese.\u201d\nRecipe description: Tomato basil grilled cheese uses ordinary grocery-store ingredients and teaches a clear sandwich workflow with visual cues for beginners.\nExact listed ingredients: 1  8 slices sandwich bread; 200 g sliced cheese; 120 g crisp lettuce or cabbage, prepared; 120 g plain yogurt or suitable spread; 1 tbsp lemon juice; 0.25 tsp fine salt; 2 tbsp tomato and basil\nComplete preparation method: Prepare safely: Read the full recipe. Clear the counter, wash produce, and measure every ingredient. Prepare the named main and supporting ingredients as listed; keep raw meat or seafood, its board, and its utensils separate from ready-to-eat food. Set out a clean board for the bread or tortillas and ready-to-eat vegetables. Make the filling: Mix the main ingredient, yogurt or spread, lemon, salt, and flavorings for about 1 minute. The mixture should hold together without running; add wet ingredients gradually. Warm or toast: Warm bread or tortillas over medium-low heat for 1\u20133 minutes per side if desired. Reduce the heat if the outside browns before the center warms. Assemble: Divide the filling evenly, add the crisp vegetables, and close without overfilling. Serve at once, or wrap and refrigerate promptly if the ingredients were kept cold.\nScene/backdrop: warm pale stone table, simple home-kitchen setting, no unrelated side dishes\nSubject: the plausible finished dish exactly as produced by the recipe, with the correct protein or plant-based base, cooking method, shape, texture, sauce, topping, and garnish\nStyle/medium: realistic editorial food photography with believable home-cooked texture\nComposition/framing: landscape 3:2, three-quarter close view, full main dish visible with safe crop area for responsive cards\nLighting/mood: soft natural window light, appetizing but honest, gentle shadows\nConstraints: include only ingredients and garnishes supported by the recipe; no substitutions, no extra protein, no text, logos, watermark, collage, hands, packaging, impossible shapes, or misleading restaurant-perfect styling",
      "output_filename": "tomato-basil-grilled-cheese.webp",
      "creation_date": "2026-10-13",
      "visual_match_review_status": "Passed labeled contact-sheet review against recipe title, ingredients, and method on 2026-10-13.",
      "duplicate_check_status": "Passed exact SHA-256 and 256-bit perceptual difference-hash checks; no exact or near duplicate primary image detected.",
      "sha256": "35e104831d6871e97a84873b3275858f6ebdb8dccc98305e195622be3e69138a",
      "width": 1200,
      "height": 800,
      "format": "WebP",
      "responsive_crop_review_status": "Passed 3:2 card and full-width recipe-cover crop review."
    },
    {
      "recipe_title": "Lemon chickpea salad pitas",
      "recipe_url": "/recipes/lemon-chickpea-salad-pitas/",
      "old_image": "/assets/root-vegetables.jpg",
      "new_image": "/assets/lemon-chickpea-salad-pitas.webp",
      "status": "AI-generated",
      "source_page": null,
      "download_url": null,
      "creator": null,
      "license": null,
      "license_link": null,
      "commercial_use_note": "Generated specifically for The Kitchen Table; no third-party stock photograph is assigned as this recipe primary image.",
      "generation_prompt": "Use case: photorealistic-natural\nAsset type: primary recipe image for The Kitchen Table website\nPrimary request: Create one realistic, appetizing finished serving of the recipe \u201cLemon chickpea salad pitas.\u201d\nRecipe description: Lemon chickpea salad pitas uses ordinary grocery-store ingredients and teaches a clear assemble workflow with visual cues for beginners.\nExact listed ingredients: 1 can chickpeas, 240 g drained; 1  4 whole-wheat pitas; 2 tbsp extra-virgin olive oil or dressing; 1 tbsp lemon juice or mild vinegar; 0.25 tsp fine salt; 2 tbsp celery and lemon\nComplete preparation method: Prepare the components: Read the full recipe. Clear the counter, wash produce, and measure every ingredient. Prepare the named main and supporting ingredients as listed; keep raw meat or seafood, its board, and its utensils separate from ready-to-eat food. Pat washed produce dry so the dressing is not diluted. Make the dressing: Whisk the oil or dressing, acid, salt, and flavorings in a large bowl for 30\u201345 seconds, until evenly blended. Taste only ingredients that are safe to eat. Combine gently: Add the prepared components and fold with a large spoon for 30\u201360 seconds. Stop when everything is lightly coated; vigorous mixing can bruise delicate ingredients. Serve or chill: Serve immediately for the crispest texture, or cover and chill for up to 30 minutes. If liquid collects, toss once more rather than adding extra salt.\nScene/backdrop: light oak kitchen table, simple home-kitchen setting, no unrelated side dishes\nSubject: the plausible finished dish exactly as produced by the recipe, with the correct protein or plant-based base, cooking method, shape, texture, sauce, topping, and garnish\nStyle/medium: realistic editorial food photography with believable home-cooked texture\nComposition/framing: landscape 3:2, slightly overhead view, full main dish visible with safe crop area for responsive cards\nLighting/mood: soft natural window light, appetizing but honest, gentle shadows\nConstraints: include only ingredients and garnishes supported by the recipe; no substitutions, no extra protein, no text, logos, watermark, collage, hands, packaging, impossible shapes, or misleading restaurant-perfect styling",
      "output_filename": "lemon-chickpea-salad-pitas.webp",
      "creation_date": "2026-10-13",
      "visual_match_review_status": "Passed labeled contact-sheet review against recipe title, ingredients, and method on 2026-10-13.",
      "duplicate_check_status": "Passed exact SHA-256 and 256-bit perceptual difference-hash checks; no exact or near duplicate primary image detected.",
      "sha256": "2c0fa953a1390ae41169f063c186ac1ccebeeeabefd4303ce1411ef3e65d13c3",
      "width": 1200,
      "height": 800,
      "format": "WebP",
      "responsive_crop_review_status": "Passed 3:2 card and full-width recipe-cover crop review."
    },
    {
      "recipe_title": "Chicken Caesar crunch wraps",
      "recipe_url": "/recipes/chicken-caesar-crunch-wraps/",
      "old_image": "/assets/stew.jpg",
      "new_image": "/assets/chicken-caesar-crunch-wraps.webp",
      "status": "AI-generated",
      "source_page": null,
      "download_url": null,
      "creator": null,
      "license": null,
      "license_link": null,
      "commercial_use_note": "Generated specifically for The Kitchen Table; no third-party stock photograph is assigned as this recipe primary image.",
      "generation_prompt": "Use case: photorealistic-natural\nAsset type: primary recipe image for The Kitchen Table website\nPrimary request: Create one realistic, appetizing finished serving of the recipe \u201cChicken Caesar crunch wraps.\u201d\nRecipe description: Chicken Caesar crunch wraps uses ordinary grocery-store ingredients and teaches a clear wrap workflow with visual cues for beginners.\nExact listed ingredients: 300 g cooked chicken; 4 large flour tortillas; 120 g crisp lettuce or cabbage, prepared; 120 g plain yogurt or suitable spread; 1 tbsp lemon juice; 0.25 tsp fine salt; 2 tbsp romaine and yogurt Caesar dressing\nComplete preparation method: Prepare safely: Read the full recipe. Clear the counter, wash produce, and measure every ingredient. Prepare the named main and supporting ingredients as listed; keep raw meat or seafood, its board, and its utensils separate from ready-to-eat food. Set out a clean board for the bread or tortillas and ready-to-eat vegetables. Make the filling: Mix the main ingredient, yogurt or spread, lemon, salt, and flavorings for about 1 minute. The mixture should hold together without running; add wet ingredients gradually. Warm or toast: Warm bread or tortillas over medium-low heat for 1\u20133 minutes per side if desired. Reduce the heat if the outside browns before the center warms. Assemble: Divide the filling evenly, add the crisp vegetables, and close without overfilling. Serve at once, or wrap and refrigerate promptly if the ingredients were kept cold.\nScene/backdrop: soft gray stone counter, simple home-kitchen setting, no unrelated side dishes\nSubject: the plausible finished dish exactly as produced by the recipe, with the correct protein or plant-based base, cooking method, shape, texture, sauce, topping, and garnish\nStyle/medium: realistic editorial food photography with believable home-cooked texture\nComposition/framing: landscape 3:2, natural eye-level table view, full main dish visible with safe crop area for responsive cards\nLighting/mood: soft natural window light, appetizing but honest, gentle shadows\nConstraints: include only ingredients and garnishes supported by the recipe; no substitutions, no extra protein, no text, logos, watermark, collage, hands, packaging, impossible shapes, or misleading restaurant-perfect styling",
      "output_filename": "chicken-caesar-crunch-wraps.webp",
      "creation_date": "2026-10-13",
      "visual_match_review_status": "Passed labeled contact-sheet review against recipe title, ingredients, and method on 2026-10-13.",
      "duplicate_check_status": "Passed exact SHA-256 and 256-bit perceptual difference-hash checks; no exact or near duplicate primary image detected.",
      "sha256": "9e28d45c2ee08a73c5b94783e60e508ed389c5ad7f2a4f68285bc92c989f40f2",
      "width": 1200,
      "height": 800,
      "format": "WebP",
      "responsive_crop_review_status": "Passed 3:2 card and full-width recipe-cover crop review."
    },
    {
      "recipe_title": "Roasted pepper hummus sandwiches",
      "recipe_url": "/recipes/roasted-pepper-hummus-sandwiches/",
      "old_image": "/assets/bread.jpg",
      "new_image": "/assets/roasted-pepper-hummus-sandwiches.webp",
      "status": "AI-generated",
      "source_page": null,
      "download_url": null,
      "creator": null,
      "license": null,
      "license_link": null,
      "commercial_use_note": "Generated specifically for The Kitchen Table; no third-party stock photograph is assigned as this recipe primary image.",
      "generation_prompt": "Use case: photorealistic-natural\nAsset type: primary recipe image for The Kitchen Table website\nPrimary request: Create one realistic, appetizing finished serving of the recipe \u201cRoasted pepper hummus sandwiches.\u201d\nRecipe description: Roasted pepper hummus sandwiches uses ordinary grocery-store ingredients and teaches a clear sandwich workflow with visual cues for beginners.\nExact listed ingredients: 200 g hummus; 1  8 slices whole-grain bread; 120 g crisp lettuce or cabbage, prepared; 120 g plain yogurt or suitable spread; 1 tbsp lemon juice; 0.25 tsp fine salt; 2 tbsp roasted peppers and cucumber\nComplete preparation method: Prepare safely: Read the full recipe. Clear the counter, wash produce, and measure every ingredient. Prepare the named main and supporting ingredients as listed; keep raw meat or seafood, its board, and its utensils separate from ready-to-eat food. Set out a clean board for the bread or tortillas and ready-to-eat vegetables. Make the filling: Mix the main ingredient, yogurt or spread, lemon, salt, and flavorings for about 1 minute. The mixture should hold together without running; add wet ingredients gradually. Warm or toast: Warm bread or tortillas over medium-low heat for 1\u20133 minutes per side if desired. Reduce the heat if the outside browns before the center warms. Assemble: Divide the filling evenly, add the crisp vegetables, and close without overfilling. Serve at once, or wrap and refrigerate promptly if the ingredients were kept cold.\nScene/backdrop: cream linen over a wood table, simple home-kitchen setting, no unrelated side dishes\nSubject: the plausible finished dish exactly as produced by the recipe, with the correct protein or plant-based base, cooking method, shape, texture, sauce, topping, and garnish\nStyle/medium: realistic editorial food photography with believable home-cooked texture\nComposition/framing: landscape 3:2, 45-degree editorial view, full main dish visible with safe crop area for responsive cards\nLighting/mood: soft natural window light, appetizing but honest, gentle shadows\nConstraints: include only ingredients and garnishes supported by the recipe; no substitutions, no extra protein, no text, logos, watermark, collage, hands, packaging, impossible shapes, or misleading restaurant-perfect styling",
      "output_filename": "roasted-pepper-hummus-sandwiches.webp",
      "creation_date": "2026-10-13",
      "visual_match_review_status": "Passed labeled contact-sheet review against recipe title, ingredients, and method on 2026-10-13.",
      "duplicate_check_status": "Passed exact SHA-256 and 256-bit perceptual difference-hash checks; no exact or near duplicate primary image detected.",
      "sha256": "56720770ff30d1a10b930b8b0d93063f40a38cc68cccc1d3cabda8f999683f4a",
      "width": 1200,
      "height": 800,
      "format": "WebP",
      "responsive_crop_review_status": "Passed 3:2 card and full-width recipe-cover crop review."
    },
    {
      "recipe_title": "Crispy black bean tostadas",
      "recipe_url": "/recipes/crispy-black-bean-tostadas/",
      "old_image": "/assets/root-vegetables.jpg",
      "new_image": "/assets/crispy-black-bean-tostadas.webp",
      "status": "AI-generated",
      "source_page": null,
      "download_url": null,
      "creator": null,
      "license": null,
      "license_link": null,
      "commercial_use_note": "Generated specifically for The Kitchen Table; no third-party stock photograph is assigned as this recipe primary image.",
      "generation_prompt": "Use case: photorealistic-natural\nAsset type: primary recipe image for The Kitchen Table website\nPrimary request: Create one realistic, appetizing finished serving of the recipe \u201cCrispy black bean tostadas.\u201d\nRecipe description: Crispy black bean tostadas uses ordinary grocery-store ingredients and teaches a clear bake workflow with visual cues for beginners.\nExact listed ingredients: 1 can black beans, 240 g drained; 1  8 corn tostadas; 1 tbsp olive oil or other neutral cooking oil; 1  medium onion, prepared as directed; 2  garlic cloves, minced; 0.5 tsp fine salt; 0.25 tsp black pepper; 2 tbsp lettuce and salsa\nComplete preparation method: Prepare and preheat: Read the full recipe. Clear the counter, wash produce, and measure every ingredient. Prepare the named main and supporting ingredients as listed; keep raw meat or seafood, its board, and its utensils separate from ready-to-eat food. Heat the oven to 400\u00b0F / 200\u00b0C unless the ingredient package specifies otherwise. Arrange a rack in the center and prepare the stated pan. Season evenly: Combine the main and supporting ingredients with oil, salt, pepper, and flavorings. Spread in a single, even layer; use a second pan if crowded. Bake with visual cues: Bake for 20\u201335 minutes, turning or rotating once after about 15 minutes. Lower the heat if edges darken before the center is ready; add 5-minute increments if still firm. The center should be set or tender and the edges lightly browned. Rest and finish: Remove the pan to a heat-safe surface. Rest 5 minutes so juices or structure settle, then add any fresh finishing ingredient and serve.\nScene/backdrop: dark walnut table, simple home-kitchen setting, no unrelated side dishes\nSubject: the plausible finished dish exactly as produced by the recipe, with the correct protein or plant-based base, cooking method, shape, texture, sauce, topping, and garnish\nStyle/medium: realistic editorial food photography with believable home-cooked texture\nComposition/framing: landscape 3:2, top-down view, full main dish visible with safe crop area for responsive cards\nLighting/mood: soft natural window light, appetizing but honest, gentle shadows\nConstraints: include only ingredients and garnishes supported by the recipe; no substitutions, no extra protein, no text, logos, watermark, collage, hands, packaging, impossible shapes, or misleading restaurant-perfect styling",
      "output_filename": "crispy-black-bean-tostadas.webp",
      "creation_date": "2026-10-13",
      "visual_match_review_status": "Passed labeled contact-sheet review against recipe title, ingredients, and method on 2026-10-13.",
      "duplicate_check_status": "Passed exact SHA-256 and 256-bit perceptual difference-hash checks; no exact or near duplicate primary image detected.",
      "sha256": "f3a095aaf46c59b8cfb072aaa675d5abfa17026c26ed7769e48c4d417787a13c",
      "width": 1200,
      "height": 800,
      "format": "WebP",
      "responsive_crop_review_status": "Passed 3:2 card and full-width recipe-cover crop review."
    },
    {
      "recipe_title": "Herbed egg salad toast",
      "recipe_url": "/recipes/herbed-egg-salad-toast/",
      "old_image": "/assets/eggs.jpg",
      "new_image": "/assets/herbed-egg-salad-toast.webp",
      "status": "AI-generated",
      "source_page": null,
      "download_url": null,
      "creator": null,
      "license": null,
      "license_link": null,
      "commercial_use_note": "Generated specifically for The Kitchen Table; no third-party stock photograph is assigned as this recipe primary image.",
      "generation_prompt": "Use case: photorealistic-natural\nAsset type: primary recipe image for The Kitchen Table website\nPrimary request: Create one realistic, appetizing finished serving of the recipe \u201cHerbed egg salad toast.\u201d\nRecipe description: Herbed egg salad toast uses ordinary grocery-store ingredients and teaches a clear sandwich workflow with visual cues for beginners.\nExact listed ingredients: 1  6 hard-cooked large eggs; 1  4 thick slices toast; 120 g crisp lettuce or cabbage, prepared; 120 g plain yogurt or suitable spread; 1 tbsp lemon juice; 0.25 tsp fine salt; 2 tbsp yogurt and dill\nComplete preparation method: Prepare safely: Read the full recipe. Clear the counter, wash produce, and measure every ingredient. Prepare the named main and supporting ingredients as listed; keep raw meat or seafood, its board, and its utensils separate from ready-to-eat food. Set out a clean board for the bread or tortillas and ready-to-eat vegetables. Make the filling: Mix the main ingredient, yogurt or spread, lemon, salt, and flavorings for about 1 minute. The mixture should hold together without running; add wet ingredients gradually. Warm or toast: Warm bread or tortillas over medium-low heat for 1\u20133 minutes per side if desired. Reduce the heat if the outside browns before the center warms. Assemble: Divide the filling evenly, add the crisp vegetables, and close without overfilling. Serve at once, or wrap and refrigerate promptly if the ingredients were kept cold.\nScene/backdrop: warm pale stone table, simple home-kitchen setting, no unrelated side dishes\nSubject: the plausible finished dish exactly as produced by the recipe, with the correct protein or plant-based base, cooking method, shape, texture, sauce, topping, and garnish\nStyle/medium: realistic editorial food photography with believable home-cooked texture\nComposition/framing: landscape 3:2, three-quarter close view, full main dish visible with safe crop area for responsive cards\nLighting/mood: soft natural window light, appetizing but honest, gentle shadows\nConstraints: include only ingredients and garnishes supported by the recipe; no substitutions, no extra protein, no text, logos, watermark, collage, hands, packaging, impossible shapes, or misleading restaurant-perfect styling",
      "output_filename": "herbed-egg-salad-toast.webp",
      "creation_date": "2026-10-13",
      "visual_match_review_status": "Passed labeled contact-sheet review against recipe title, ingredients, and method on 2026-10-13.",
      "duplicate_check_status": "Passed exact SHA-256 and 256-bit perceptual difference-hash checks; no exact or near duplicate primary image detected.",
      "sha256": "77ed87e14aaca2443e5604aa4147ae0d6957edfddb2ff0b63f323bebe24e0d5e",
      "width": 1200,
      "height": 800,
      "format": "WebP",
      "responsive_crop_review_status": "Passed 3:2 card and full-width recipe-cover crop review."
    },
    {
      "recipe_title": "Tomato mozzarella flatbread lunch",
      "recipe_url": "/recipes/tomato-mozzarella-flatbread-lunch/",
      "old_image": "/assets/root-vegetables.jpg",
      "new_image": "/assets/tomato-mozzarella-flatbread-lunch.webp",
      "status": "AI-generated",
      "source_page": null,
      "download_url": null,
      "creator": null,
      "license": null,
      "license_link": null,
      "commercial_use_note": "Generated specifically for The Kitchen Table; no third-party stock photograph is assigned as this recipe primary image.",
      "generation_prompt": "Use case: photorealistic-natural\nAsset type: primary recipe image for The Kitchen Table website\nPrimary request: Create one realistic, appetizing finished serving of the recipe \u201cTomato mozzarella flatbread lunch.\u201d\nRecipe description: Tomato mozzarella flatbread lunch uses ordinary grocery-store ingredients and teaches a clear bake workflow with visual cues for beginners.\nExact listed ingredients: 2 large flatbreads; 200 g fresh mozzarella, drained; 1 tbsp olive oil or other neutral cooking oil; 1  medium onion, prepared as directed; 2  garlic cloves, minced; 0.5 tsp fine salt; 0.25 tsp black pepper; 2 tbsp tomato and oregano\nComplete preparation method: Prepare and preheat: Read the full recipe. Clear the counter, wash produce, and measure every ingredient. Prepare the named main and supporting ingredients as listed; keep raw meat or seafood, its board, and its utensils separate from ready-to-eat food. Heat the oven to 400\u00b0F / 200\u00b0C unless the ingredient package specifies otherwise. Arrange a rack in the center and prepare the stated pan. Season evenly: Combine the main and supporting ingredients with oil, salt, pepper, and flavorings. Spread in a single, even layer; use a second pan if crowded. Bake with visual cues: Bake for 20\u201335 minutes, turning or rotating once after about 15 minutes. Lower the heat if edges darken before the center is ready; add 5-minute increments if still firm. The center should be set or tender and the edges lightly browned. Rest and finish: Remove the pan to a heat-safe surface. Rest 5 minutes so juices or structure settle, then add any fresh finishing ingredient and serve.\nScene/backdrop: light oak kitchen table, simple home-kitchen setting, no unrelated side dishes\nSubject: the plausible finished dish exactly as produced by the recipe, with the correct protein or plant-based base, cooking method, shape, texture, sauce, topping, and garnish\nStyle/medium: realistic editorial food photography with believable home-cooked texture\nComposition/framing: landscape 3:2, slightly overhead view, full main dish visible with safe crop area for responsive cards\nLighting/mood: soft natural window light, appetizing but honest, gentle shadows\nConstraints: include only ingredients and garnishes supported by the recipe; no substitutions, no extra protein, no text, logos, watermark, collage, hands, packaging, impossible shapes, or misleading restaurant-perfect styling",
      "output_filename": "tomato-mozzarella-flatbread-lunch.webp",
      "creation_date": "2026-10-13",
      "visual_match_review_status": "Passed labeled contact-sheet review against recipe title, ingredients, and method on 2026-10-13.",
      "duplicate_check_status": "Passed exact SHA-256 and 256-bit perceptual difference-hash checks; no exact or near duplicate primary image detected.",
      "sha256": "6f421048e86b50a882f0ce687093ce661f47b8259b4b4d8c37f03405297645a4",
      "width": 1200,
      "height": 800,
      "format": "WebP",
      "responsive_crop_review_status": "Passed 3:2 card and full-width recipe-cover crop review."
    },
    {
      "recipe_title": "Cool sesame cucumber noodles",
      "recipe_url": "/recipes/cool-sesame-cucumber-noodles/",
      "old_image": "/assets/noodles.jpg",
      "new_image": "/assets/cool-sesame-cucumber-noodles.webp",
      "status": "AI-generated",
      "source_page": null,
      "download_url": null,
      "creator": null,
      "license": null,
      "license_link": null,
      "commercial_use_note": "Generated specifically for The Kitchen Table; no third-party stock photograph is assigned as this recipe primary image.",
      "generation_prompt": "Use case: photorealistic-natural\nAsset type: primary recipe image for The Kitchen Table website\nPrimary request: Create one realistic, appetizing finished serving of the recipe \u201cCool sesame cucumber noodles.\u201d\nRecipe description: Cool sesame cucumber noodles uses ordinary grocery-store ingredients and teaches a clear pasta workflow with visual cues for beginners.\nExact listed ingredients: 200 g dried wheat noodles; 1  1 cucumber, thinly sliced; 1 tbsp olive oil; 2  garlic cloves, minced; 250 ml low-sodium cooking liquid or reserved pasta water; 0.5 tsp fine salt; 2 tbsp sesame, soy, and rice vinegar\nComplete preparation method: Organize the work: Read the full recipe. Clear the counter, wash produce, and measure every ingredient. Prepare the named main and supporting ingredients as listed; keep raw meat or seafood, its board, and its utensils separate from ready-to-eat food. Bring a large pot of water to a strong boil and keep a mug beside the stove for cooking water. Cook the starch: Salt the boiling water lightly and cook the pasta or noodles to the package\u2019s lower time estimate. Stir during the first minute. Reserve 250 ml cooking water, then drain. Build the sauce: Heat oil over medium. Cook the supporting ingredient 5\u20138 minutes, then garlic for 30 seconds. Add flavorings and enough cooking liquid to make a loose sauce; simmer 2 minutes. Finish together: Add the drained starch and toss over low heat for 1\u20132 minutes. Add reserved water a tablespoon at a time until glossy. If the noodles soften too quickly, remove the pan from heat immediately.\nScene/backdrop: soft gray stone counter, simple home-kitchen setting, no unrelated side dishes\nSubject: the plausible finished dish exactly as produced by the recipe, with the correct protein or plant-based base, cooking method, shape, texture, sauce, topping, and garnish\nStyle/medium: realistic editorial food photography with believable home-cooked texture\nComposition/framing: landscape 3:2, natural eye-level table view, full main dish visible with safe crop area for responsive cards\nLighting/mood: soft natural window light, appetizing but honest, gentle shadows\nConstraints: include only ingredients and garnishes supported by the recipe; no substitutions, no extra protein, no text, logos, watermark, collage, hands, packaging, impossible shapes, or misleading restaurant-perfect styling",
      "output_filename": "cool-sesame-cucumber-noodles.webp",
      "creation_date": "2026-10-13",
      "visual_match_review_status": "Passed labeled contact-sheet review against recipe title, ingredients, and method on 2026-10-13.",
      "duplicate_check_status": "Passed exact SHA-256 and 256-bit perceptual difference-hash checks; no exact or near duplicate primary image detected.",
      "sha256": "717ef5261485f2fe676de166d7a246cbdede4d001a475d64db5b27b7f2b4a758",
      "width": 1200,
      "height": 800,
      "format": "WebP",
      "responsive_crop_review_status": "Passed 3:2 card and full-width recipe-cover crop review."
    },
    {
      "recipe_title": "Lemon chicken and potato tray bake",
      "recipe_url": "/recipes/lemon-chicken-and-potato-tray-bake/",
      "old_image": "/assets/stew.jpg",
      "new_image": "/assets/lemon-chicken-and-potato-tray-bake.webp",
      "status": "AI-generated",
      "source_page": null,
      "download_url": null,
      "creator": null,
      "license": null,
      "license_link": null,
      "commercial_use_note": "Generated specifically for The Kitchen Table; no third-party stock photograph is assigned as this recipe primary image.",
      "generation_prompt": "Use case: photorealistic-natural\nAsset type: primary recipe image for The Kitchen Table website\nPrimary request: Create one realistic, appetizing finished serving of the recipe \u201cLemon chicken and potato tray bake.\u201d\nRecipe description: Lemon chicken and potato tray bake uses ordinary grocery-store ingredients and teaches a clear roast workflow with visual cues for beginners.\nExact listed ingredients: 600 g boneless chicken thighs; 600 g baby potatoes, halved; 1 tbsp olive oil or other neutral cooking oil; 1  medium onion, prepared as directed; 2  garlic cloves, minced; 0.5 tsp fine salt; 0.25 tsp black pepper; 2 tbsp lemon, garlic, and oregano\nComplete preparation method: Prepare and preheat: Read the full recipe. Clear the counter, wash produce, and measure every ingredient. Prepare the named main and supporting ingredients as listed; keep raw meat or seafood, its board, and its utensils separate from ready-to-eat food. Heat the oven to 400\u00b0F / 200\u00b0C unless the ingredient package specifies otherwise. Arrange a rack in the center and prepare the stated pan. Season evenly: Combine the main and supporting ingredients with oil, salt, pepper, and flavorings. Spread in a single, even layer; use a second pan if crowded. Bake with visual cues: Bake for 20\u201335 minutes, turning or rotating once after about 15 minutes. Lower the heat if edges darken before the center is ready; add 5-minute increments if still firm. Check 165\u00b0F / 74\u00b0C in the thickest piece. Rest and finish: Remove the pan to a heat-safe surface. Rest 5 minutes so juices or structure settle, then add any fresh finishing ingredient and serve.\nScene/backdrop: cream linen over a wood table, simple home-kitchen setting, no unrelated side dishes\nSubject: the plausible finished dish exactly as produced by the recipe, with the correct protein or plant-based base, cooking method, shape, texture, sauce, topping, and garnish\nStyle/medium: realistic editorial food photography with believable home-cooked texture\nComposition/framing: landscape 3:2, 45-degree editorial view, full main dish visible with safe crop area for responsive cards\nLighting/mood: soft natural window light, appetizing but honest, gentle shadows\nConstraints: include only ingredients and garnishes supported by the recipe; no substitutions, no extra protein, no text, logos, watermark, collage, hands, packaging, impossible shapes, or misleading restaurant-perfect styling",
      "output_filename": "lemon-chicken-and-potato-tray-bake.webp",
      "creation_date": "2026-10-13",
      "visual_match_review_status": "Passed labeled contact-sheet review against recipe title, ingredients, and method on 2026-10-13.",
      "duplicate_check_status": "Passed exact SHA-256 and 256-bit perceptual difference-hash checks; no exact or near duplicate primary image detected.",
      "sha256": "1a626f1adde21a52a54ab493607185f1b0098450bac3e1edc00cf516fdc29fd0",
      "width": 1200,
      "height": 800,
      "format": "WebP",
      "responsive_crop_review_status": "Passed 3:2 card and full-width recipe-cover crop review."
    },
    {
      "recipe_title": "Weeknight turkey meatloaf",
      "recipe_url": "/recipes/weeknight-turkey-meatloaf/",
      "old_image": "/assets/root-vegetables.jpg",
      "new_image": "/assets/weeknight-turkey-meatloaf.webp",
      "status": "AI-generated",
      "source_page": null,
      "download_url": null,
      "creator": null,
      "license": null,
      "license_link": null,
      "commercial_use_note": "Generated specifically for The Kitchen Table; no third-party stock photograph is assigned as this recipe primary image.",
      "generation_prompt": "Use case: photorealistic-natural\nAsset type: primary recipe image for The Kitchen Table website\nPrimary request: Create one realistic, appetizing finished serving of the recipe \u201cWeeknight turkey meatloaf.\u201d\nRecipe description: Weeknight turkey meatloaf uses ordinary grocery-store ingredients and teaches a clear bake workflow with visual cues for beginners.\nExact listed ingredients: 750 g ground turkey; 80 g breadcrumbs; 1 tbsp olive oil or other neutral cooking oil; 1  medium onion, prepared as directed; 2  garlic cloves, minced; 0.5 tsp fine salt; 0.25 tsp black pepper; 2 tbsp onion and tomato glaze\nComplete preparation method: Prepare and preheat: Read the full recipe. Clear the counter, wash produce, and measure every ingredient. Prepare the named main and supporting ingredients as listed; keep raw meat or seafood, its board, and its utensils separate from ready-to-eat food. Heat the oven to 400\u00b0F / 200\u00b0C unless the ingredient package specifies otherwise. Arrange a rack in the center and prepare the stated pan. Season evenly: Combine the main and supporting ingredients with oil, salt, pepper, and flavorings. Spread in a single, even layer; use a second pan if crowded. Bake with visual cues: Bake for 20\u201335 minutes, turning or rotating once after about 15 minutes. Lower the heat if edges darken before the center is ready; add 5-minute increments if still firm. Check 165\u00b0F / 74\u00b0C in the thickest piece. Rest and finish: Remove the pan to a heat-safe surface. Rest 5 minutes so juices or structure settle, then add any fresh finishing ingredient and serve.\nScene/backdrop: dark walnut table, simple home-kitchen setting, no unrelated side dishes\nSubject: the plausible finished dish exactly as produced by the recipe, with the correct protein or plant-based base, cooking method, shape, texture, sauce, topping, and garnish\nStyle/medium: realistic editorial food photography with believable home-cooked texture\nComposition/framing: landscape 3:2, top-down view, full main dish visible with safe crop area for responsive cards\nLighting/mood: soft natural window light, appetizing but honest, gentle shadows\nConstraints: include only ingredients and garnishes supported by the recipe; no substitutions, no extra protein, no text, logos, watermark, collage, hands, packaging, impossible shapes, or misleading restaurant-perfect styling",
      "output_filename": "weeknight-turkey-meatloaf.webp",
      "creation_date": "2026-10-13",
      "visual_match_review_status": "Passed labeled contact-sheet review against recipe title, ingredients, and method on 2026-10-13.",
      "duplicate_check_status": "Passed exact SHA-256 and 256-bit perceptual difference-hash checks; no exact or near duplicate primary image detected.",
      "sha256": "cf7794e725c7ffe732233dc3d5a075717a0e85c657f28b2d3d00dbb52cd2e2df",
      "width": 1200,
      "height": 800,
      "format": "WebP",
      "responsive_crop_review_status": "Passed 3:2 card and full-width recipe-cover crop review."
    },
    {
      "recipe_title": "Honey mustard chicken thighs",
      "recipe_url": "/recipes/honey-mustard-chicken-thighs/",
      "old_image": "/assets/stew.jpg",
      "new_image": "/assets/honey-mustard-chicken-thighs.webp",
      "status": "AI-generated",
      "source_page": null,
      "download_url": null,
      "creator": null,
      "license": null,
      "license_link": null,
      "commercial_use_note": "Generated specifically for The Kitchen Table; no third-party stock photograph is assigned as this recipe primary image.",
      "generation_prompt": "Use case: photorealistic-natural\nAsset type: primary recipe image for The Kitchen Table website\nPrimary request: Create one realistic, appetizing finished serving of the recipe \u201cHoney mustard chicken thighs.\u201d\nRecipe description: Honey mustard chicken thighs uses ordinary grocery-store ingredients and teaches a clear skillet workflow with visual cues for beginners.\nExact listed ingredients: 600 g boneless chicken thighs; 250 g green beans; 1 tbsp olive oil or other neutral cooking oil; 1  medium onion, prepared as directed; 2  garlic cloves, minced; 0.5 tsp fine salt; 0.25 tsp black pepper; 2 tbsp honey and Dijon mustard\nComplete preparation method: Set up the pan: Read the full recipe. Clear the counter, wash produce, and measure every ingredient. Prepare the named main and supporting ingredients as listed; keep raw meat or seafood, its board, and its utensils separate from ready-to-eat food. Put a wide skillet over medium heat for 2 minutes, then add the measured oil. Build color: Add the main ingredient in one layer. Cook 4\u20136 minutes without constant stirring, then turn. If it smokes heavily, lower the heat; if it stays pale and wet, increase heat slightly or work in batches. Add the supporting ingredients: Add the supporting ingredient, onion, garlic, and flavorings. Cook 5\u201310 minutes, stirring every minute or two, until aromatic and evenly cooked. Continue until 165\u00b0F / 74\u00b0C in the thickest piece. Balance and serve: Take the pan off the heat. Taste a safe sample, then adjust salt or acidity in small amounts. Rest 3 minutes before serving.\nScene/backdrop: warm pale stone table, simple home-kitchen setting, no unrelated side dishes\nSubject: the plausible finished dish exactly as produced by the recipe, with the correct protein or plant-based base, cooking method, shape, texture, sauce, topping, and garnish\nStyle/medium: realistic editorial food photography with believable home-cooked texture\nComposition/framing: landscape 3:2, three-quarter close view, full main dish visible with safe crop area for responsive cards\nLighting/mood: soft natural window light, appetizing but honest, gentle shadows\nConstraints: include only ingredients and garnishes supported by the recipe; no substitutions, no extra protein, no text, logos, watermark, collage, hands, packaging, impossible shapes, or misleading restaurant-perfect styling",
      "output_filename": "honey-mustard-chicken-thighs.webp",
      "creation_date": "2026-10-13",
      "visual_match_review_status": "Passed labeled contact-sheet review against recipe title, ingredients, and method on 2026-10-13.",
      "duplicate_check_status": "Passed exact SHA-256 and 256-bit perceptual difference-hash checks; no exact or near duplicate primary image detected.",
      "sha256": "2606ee4ef8653c3f6c352140899e2e9e492e7bcb719656d08f6478de1c6a4c69",
      "width": 1200,
      "height": 800,
      "format": "WebP",
      "responsive_crop_review_status": "Passed 3:2 card and full-width recipe-cover crop review."
    },
    {
      "recipe_title": "Sheet-pan chicken fajitas",
      "recipe_url": "/recipes/sheet-pan-chicken-fajitas/",
      "old_image": "/assets/stew.jpg",
      "new_image": "/assets/sheet-pan-chicken-fajitas.webp",
      "status": "AI-generated",
      "source_page": null,
      "download_url": null,
      "creator": null,
      "license": null,
      "license_link": null,
      "commercial_use_note": "Generated specifically for The Kitchen Table; no third-party stock photograph is assigned as this recipe primary image.",
      "generation_prompt": "Use case: photorealistic-natural\nAsset type: primary recipe image for The Kitchen Table website\nPrimary request: Create one realistic, appetizing finished serving of the recipe \u201cSheet-pan chicken fajitas.\u201d\nRecipe description: Sheet-pan chicken fajitas uses ordinary grocery-store ingredients and teaches a clear roast workflow with visual cues for beginners.\nExact listed ingredients: 600 g chicken breast strips; 1  3 bell peppers, sliced; 1 tbsp olive oil or other neutral cooking oil; 1  medium onion, prepared as directed; 2  garlic cloves, minced; 0.5 tsp fine salt; 0.25 tsp black pepper; 2 tbsp cumin, lime, and paprika\nComplete preparation method: Prepare and preheat: Read the full recipe. Clear the counter, wash produce, and measure every ingredient. Prepare the named main and supporting ingredients as listed; keep raw meat or seafood, its board, and its utensils separate from ready-to-eat food. Heat the oven to 400\u00b0F / 200\u00b0C unless the ingredient package specifies otherwise. Arrange a rack in the center and prepare the stated pan. Season evenly: Combine the main and supporting ingredients with oil, salt, pepper, and flavorings. Spread in a single, even layer; use a second pan if crowded. Bake with visual cues: Bake for 20\u201335 minutes, turning or rotating once after about 15 minutes. Lower the heat if edges darken before the center is ready; add 5-minute increments if still firm. Check 165\u00b0F / 74\u00b0C in the thickest piece. Rest and finish: Remove the pan to a heat-safe surface. Rest 5 minutes so juices or structure settle, then add any fresh finishing ingredient and serve.\nScene/backdrop: light oak kitchen table, simple home-kitchen setting, no unrelated side dishes\nSubject: the plausible finished dish exactly as produced by the recipe, with the correct protein or plant-based base, cooking method, shape, texture, sauce, topping, and garnish\nStyle/medium: realistic editorial food photography with believable home-cooked texture\nComposition/framing: landscape 3:2, slightly overhead view, full main dish visible with safe crop area for responsive cards\nLighting/mood: soft natural window light, appetizing but honest, gentle shadows\nConstraints: include only ingredients and garnishes supported by the recipe; no substitutions, no extra protein, no text, logos, watermark, collage, hands, packaging, impossible shapes, or misleading restaurant-perfect styling",
      "output_filename": "sheet-pan-chicken-fajitas.webp",
      "creation_date": "2026-10-13",
      "visual_match_review_status": "Passed labeled contact-sheet review against recipe title, ingredients, and method on 2026-10-13.",
      "duplicate_check_status": "Passed exact SHA-256 and 256-bit perceptual difference-hash checks; no exact or near duplicate primary image detected.",
      "sha256": "9fde3b69b59419b5276b51dac46976209ef2f835b118b2798acbc66626efc304",
      "width": 1200,
      "height": 800,
      "format": "WebP",
      "responsive_crop_review_status": "Passed 3:2 card and full-width recipe-cover crop review."
    },
    {
      "recipe_title": "Juicy turkey burgers",
      "recipe_url": "/recipes/juicy-turkey-burgers/",
      "old_image": "/assets/root-vegetables.jpg",
      "new_image": "/assets/juicy-turkey-burgers.webp",
      "status": "AI-generated",
      "source_page": null,
      "download_url": null,
      "creator": null,
      "license": null,
      "license_link": null,
      "commercial_use_note": "Generated specifically for The Kitchen Table; no third-party stock photograph is assigned as this recipe primary image.",
      "generation_prompt": "Use case: photorealistic-natural\nAsset type: primary recipe image for The Kitchen Table website\nPrimary request: Create one realistic, appetizing finished serving of the recipe \u201cJuicy turkey burgers.\u201d\nRecipe description: Juicy turkey burgers uses ordinary grocery-store ingredients and teaches a clear skillet workflow with visual cues for beginners.\nExact listed ingredients: 500 g ground turkey; 1  4 burger buns; 1 tbsp olive oil or other neutral cooking oil; 1  medium onion, prepared as directed; 2  garlic cloves, minced; 0.5 tsp fine salt; 0.25 tsp black pepper; 2 tbsp garlic, mustard, and lettuce\nComplete preparation method: Set up the pan: Read the full recipe. Clear the counter, wash produce, and measure every ingredient. Prepare the named main and supporting ingredients as listed; keep raw meat or seafood, its board, and its utensils separate from ready-to-eat food. Put a wide skillet over medium heat for 2 minutes, then add the measured oil. Build color: Add the main ingredient in one layer. Cook 4\u20136 minutes without constant stirring, then turn. If it smokes heavily, lower the heat; if it stays pale and wet, increase heat slightly or work in batches. Add the supporting ingredients: Add the supporting ingredient, onion, garlic, and flavorings. Cook 5\u201310 minutes, stirring every minute or two, until aromatic and evenly cooked. Continue until 165\u00b0F / 74\u00b0C in the thickest piece. Balance and serve: Take the pan off the heat. Taste a safe sample, then adjust salt or acidity in small amounts. Rest 3 minutes before serving.\nScene/backdrop: soft gray stone counter, simple home-kitchen setting, no unrelated side dishes\nSubject: the plausible finished dish exactly as produced by the recipe, with the correct protein or plant-based base, cooking method, shape, texture, sauce, topping, and garnish\nStyle/medium: realistic editorial food photography with believable home-cooked texture\nComposition/framing: landscape 3:2, natural eye-level table view, full main dish visible with safe crop area for responsive cards\nLighting/mood: soft natural window light, appetizing but honest, gentle shadows\nConstraints: include only ingredients and garnishes supported by the recipe; no substitutions, no extra protein, no text, logos, watermark, collage, hands, packaging, impossible shapes, or misleading restaurant-perfect styling",
      "output_filename": "juicy-turkey-burgers.webp",
      "creation_date": "2026-10-13",
      "visual_match_review_status": "Passed labeled contact-sheet review against recipe title, ingredients, and method on 2026-10-13.",
      "duplicate_check_status": "Passed exact SHA-256 and 256-bit perceptual difference-hash checks; no exact or near duplicate primary image detected.",
      "sha256": "e8ccb498eed0acd12323a4c114b458a87a840e81395333f9a360242ba2b6cb6e",
      "width": 1200,
      "height": 800,
      "format": "WebP",
      "responsive_crop_review_status": "Passed 3:2 card and full-width recipe-cover crop review."
    },
    {
      "recipe_title": "Smoky paprika chicken skillet",
      "recipe_url": "/recipes/smoky-paprika-chicken-skillet/",
      "old_image": "/assets/stew.jpg",
      "new_image": "/assets/smoky-paprika-chicken-skillet.webp",
      "status": "AI-generated",
      "source_page": null,
      "download_url": null,
      "creator": null,
      "license": null,
      "license_link": null,
      "commercial_use_note": "Generated specifically for The Kitchen Table; no third-party stock photograph is assigned as this recipe primary image.",
      "generation_prompt": "Use case: photorealistic-natural\nAsset type: primary recipe image for The Kitchen Table website\nPrimary request: Create one realistic, appetizing finished serving of the recipe \u201cSmoky paprika chicken skillet.\u201d\nRecipe description: Smoky paprika chicken skillet uses ordinary grocery-store ingredients and teaches a clear skillet workflow with visual cues for beginners.\nExact listed ingredients: 500 g chicken breast, 3 cm pieces; 1  1 bell pepper, sliced; 1 tbsp olive oil or other neutral cooking oil; 1  medium onion, prepared as directed; 2  garlic cloves, minced; 0.5 tsp fine salt; 0.25 tsp black pepper; 2 tbsp smoked paprika and tomato\nComplete preparation method: Set up the pan: Read the full recipe. Clear the counter, wash produce, and measure every ingredient. Prepare the named main and supporting ingredients as listed; keep raw meat or seafood, its board, and its utensils separate from ready-to-eat food. Put a wide skillet over medium heat for 2 minutes, then add the measured oil. Build color: Add the main ingredient in one layer. Cook 4\u20136 minutes without constant stirring, then turn. If it smokes heavily, lower the heat; if it stays pale and wet, increase heat slightly or work in batches. Add the supporting ingredients: Add the supporting ingredient, onion, garlic, and flavorings. Cook 5\u201310 minutes, stirring every minute or two, until aromatic and evenly cooked. Continue until 165\u00b0F / 74\u00b0C in the thickest piece. Balance and serve: Take the pan off the heat. Taste a safe sample, then adjust salt or acidity in small amounts. Rest 3 minutes before serving.\nScene/backdrop: cream linen over a wood table, simple home-kitchen setting, no unrelated side dishes\nSubject: the plausible finished dish exactly as produced by the recipe, with the correct protein or plant-based base, cooking method, shape, texture, sauce, topping, and garnish\nStyle/medium: realistic editorial food photography with believable home-cooked texture\nComposition/framing: landscape 3:2, 45-degree editorial view, full main dish visible with safe crop area for responsive cards\nLighting/mood: soft natural window light, appetizing but honest, gentle shadows\nConstraints: include only ingredients and garnishes supported by the recipe; no substitutions, no extra protein, no text, logos, watermark, collage, hands, packaging, impossible shapes, or misleading restaurant-perfect styling",
      "output_filename": "smoky-paprika-chicken-skillet.webp",
      "creation_date": "2026-10-13",
      "visual_match_review_status": "Passed labeled contact-sheet review against recipe title, ingredients, and method on 2026-10-13.",
      "duplicate_check_status": "Passed exact SHA-256 and 256-bit perceptual difference-hash checks; no exact or near duplicate primary image detected.",
      "sha256": "1b22f9d4eb3d1dfac4b7d0fce81695fa720e8e2a58783768777109f9ceba6b58",
      "width": 1200,
      "height": 800,
      "format": "WebP",
      "responsive_crop_review_status": "Passed 3:2 card and full-width recipe-cover crop review."
    },
    {
      "recipe_title": "Pesto tomato chicken bake",
      "recipe_url": "/recipes/pesto-tomato-chicken-bake/",
      "old_image": "/assets/stew.jpg",
      "new_image": "/assets/pesto-tomato-chicken-bake.webp",
      "status": "AI-generated",
      "source_page": null,
      "download_url": null,
      "creator": null,
      "license": null,
      "license_link": null,
      "commercial_use_note": "Generated specifically for The Kitchen Table; no third-party stock photograph is assigned as this recipe primary image.",
      "generation_prompt": "Use case: photorealistic-natural\nAsset type: primary recipe image for The Kitchen Table website\nPrimary request: Create one realistic, appetizing finished serving of the recipe \u201cPesto tomato chicken bake.\u201d\nRecipe description: Pesto tomato chicken bake uses ordinary grocery-store ingredients and teaches a clear bake workflow with visual cues for beginners.\nExact listed ingredients: 1  4 chicken cutlets, about 150 g each; 250 g cherry tomatoes; 1 tbsp olive oil or other neutral cooking oil; 1  medium onion, prepared as directed; 2  garlic cloves, minced; 0.5 tsp fine salt; 0.25 tsp black pepper; 2 tbsp pesto and mozzarella\nComplete preparation method: Prepare and preheat: Read the full recipe. Clear the counter, wash produce, and measure every ingredient. Prepare the named main and supporting ingredients as listed; keep raw meat or seafood, its board, and its utensils separate from ready-to-eat food. Heat the oven to 400\u00b0F / 200\u00b0C unless the ingredient package specifies otherwise. Arrange a rack in the center and prepare the stated pan. Season evenly: Combine the main and supporting ingredients with oil, salt, pepper, and flavorings. Spread in a single, even layer; use a second pan if crowded. Bake with visual cues: Bake for 20\u201335 minutes, turning or rotating once after about 15 minutes. Lower the heat if edges darken before the center is ready; add 5-minute increments if still firm. Check 165\u00b0F / 74\u00b0C in the thickest piece. Rest and finish: Remove the pan to a heat-safe surface. Rest 5 minutes so juices or structure settle, then add any fresh finishing ingredient and serve.\nScene/backdrop: dark walnut table, simple home-kitchen setting, no unrelated side dishes\nSubject: the plausible finished dish exactly as produced by the recipe, with the correct protein or plant-based base, cooking method, shape, texture, sauce, topping, and garnish\nStyle/medium: realistic editorial food photography with believable home-cooked texture\nComposition/framing: landscape 3:2, top-down view, full main dish visible with safe crop area for responsive cards\nLighting/mood: soft natural window light, appetizing but honest, gentle shadows\nConstraints: include only ingredients and garnishes supported by the recipe; no substitutions, no extra protein, no text, logos, watermark, collage, hands, packaging, impossible shapes, or misleading restaurant-perfect styling",
      "output_filename": "pesto-tomato-chicken-bake.webp",
      "creation_date": "2026-10-13",
      "visual_match_review_status": "Passed labeled contact-sheet review against recipe title, ingredients, and method on 2026-10-13.",
      "duplicate_check_status": "Passed exact SHA-256 and 256-bit perceptual difference-hash checks; no exact or near duplicate primary image detected.",
      "sha256": "2fae25384ba9df3694466501be7f55da778d5253a37c24a4ee3dfc42f4bddd3e",
      "width": 1200,
      "height": 800,
      "format": "WebP",
      "responsive_crop_review_status": "Passed 3:2 card and full-width recipe-cover crop review."
    },
    {
      "recipe_title": "Turkey and rice stuffed peppers",
      "recipe_url": "/recipes/turkey-and-rice-stuffed-peppers/",
      "old_image": "/assets/rice.jpg",
      "new_image": "/assets/turkey-and-rice-stuffed-peppers.webp",
      "status": "AI-generated",
      "source_page": null,
      "download_url": null,
      "creator": null,
      "license": null,
      "license_link": null,
      "commercial_use_note": "Generated specifically for The Kitchen Table; no third-party stock photograph is assigned as this recipe primary image.",
      "generation_prompt": "Use case: photorealistic-natural\nAsset type: primary recipe image for The Kitchen Table website\nPrimary request: Create one realistic, appetizing finished serving of the recipe \u201cTurkey and rice stuffed peppers.\u201d\nRecipe description: Turkey and rice stuffed peppers uses ordinary grocery-store ingredients and teaches a clear bake workflow with visual cues for beginners.\nExact listed ingredients: 500 g ground turkey; 1  4 bell peppers, halved; 1 tbsp olive oil or other neutral cooking oil; 1  medium onion, prepared as directed; 2  garlic cloves, minced; 0.5 tsp fine salt; 0.25 tsp black pepper; 2 tbsp cooked rice and tomato\nComplete preparation method: Prepare and preheat: Read the full recipe. Clear the counter, wash produce, and measure every ingredient. Prepare the named main and supporting ingredients as listed; keep raw meat or seafood, its board, and its utensils separate from ready-to-eat food. Heat the oven to 400\u00b0F / 200\u00b0C unless the ingredient package specifies otherwise. Arrange a rack in the center and prepare the stated pan. Season evenly: Combine the main and supporting ingredients with oil, salt, pepper, and flavorings. Spread in a single, even layer; use a second pan if crowded. Bake with visual cues: Bake for 20\u201335 minutes, turning or rotating once after about 15 minutes. Lower the heat if edges darken before the center is ready; add 5-minute increments if still firm. Check 165\u00b0F / 74\u00b0C in the thickest piece. Rest and finish: Remove the pan to a heat-safe surface. Rest 5 minutes so juices or structure settle, then add any fresh finishing ingredient and serve.\nScene/backdrop: warm pale stone table, simple home-kitchen setting, no unrelated side dishes\nSubject: the plausible finished dish exactly as produced by the recipe, with the correct protein or plant-based base, cooking method, shape, texture, sauce, topping, and garnish\nStyle/medium: realistic editorial food photography with believable home-cooked texture\nComposition/framing: landscape 3:2, three-quarter close view, full main dish visible with safe crop area for responsive cards\nLighting/mood: soft natural window light, appetizing but honest, gentle shadows\nConstraints: include only ingredients and garnishes supported by the recipe; no substitutions, no extra protein, no text, logos, watermark, collage, hands, packaging, impossible shapes, or misleading restaurant-perfect styling",
      "output_filename": "turkey-and-rice-stuffed-peppers.webp",
      "creation_date": "2026-10-13",
      "visual_match_review_status": "Passed labeled contact-sheet review against recipe title, ingredients, and method on 2026-10-13.",
      "duplicate_check_status": "Passed exact SHA-256 and 256-bit perceptual difference-hash checks; no exact or near duplicate primary image detected.",
      "sha256": "5c38c25aedb053102b4953ed5ae434b0bc496f0ba51809a2219467550f61e534",
      "width": 1200,
      "height": 800,
      "format": "WebP",
      "responsive_crop_review_status": "Passed 3:2 card and full-width recipe-cover crop review."
    },
    {
      "recipe_title": "Chicken broccoli ginger stir-fry",
      "recipe_url": "/recipes/chicken-broccoli-ginger-stir-fry/",
      "old_image": "/assets/stew.jpg",
      "new_image": "/assets/chicken-broccoli-ginger-stir-fry.webp",
      "status": "AI-generated",
      "source_page": null,
      "download_url": null,
      "creator": null,
      "license": null,
      "license_link": null,
      "commercial_use_note": "Generated specifically for The Kitchen Table; no third-party stock photograph is assigned as this recipe primary image.",
      "generation_prompt": "Use case: photorealistic-natural\nAsset type: primary recipe image for The Kitchen Table website\nPrimary request: Create one realistic, appetizing finished serving of the recipe \u201cChicken broccoli ginger stir-fry.\u201d\nRecipe description: Chicken broccoli ginger stir-fry uses ordinary grocery-store ingredients and teaches a clear skillet workflow with visual cues for beginners.\nExact listed ingredients: 500 g chicken breast strips; 350 g broccoli florets; 1 tbsp olive oil or other neutral cooking oil; 1  medium onion, prepared as directed; 2  garlic cloves, minced; 0.5 tsp fine salt; 0.25 tsp black pepper; 2 tbsp ginger, garlic, and soy\nComplete preparation method: Set up the pan: Read the full recipe. Clear the counter, wash produce, and measure every ingredient. Prepare the named main and supporting ingredients as listed; keep raw meat or seafood, its board, and its utensils separate from ready-to-eat food. Put a wide skillet over medium heat for 2 minutes, then add the measured oil. Build color: Add the main ingredient in one layer. Cook 4\u20136 minutes without constant stirring, then turn. If it smokes heavily, lower the heat; if it stays pale and wet, increase heat slightly or work in batches. Add the supporting ingredients: Add the supporting ingredient, onion, garlic, and flavorings. Cook 5\u201310 minutes, stirring every minute or two, until aromatic and evenly cooked. Continue until 165\u00b0F / 74\u00b0C in the thickest piece. Balance and serve: Take the pan off the heat. Taste a safe sample, then adjust salt or acidity in small amounts. Rest 3 minutes before serving.\nScene/backdrop: light oak kitchen table, simple home-kitchen setting, no unrelated side dishes\nSubject: the plausible finished dish exactly as produced by the recipe, with the correct protein or plant-based base, cooking method, shape, texture, sauce, topping, and garnish\nStyle/medium: realistic editorial food photography with believable home-cooked texture\nComposition/framing: landscape 3:2, slightly overhead view, full main dish visible with safe crop area for responsive cards\nLighting/mood: soft natural window light, appetizing but honest, gentle shadows\nConstraints: include only ingredients and garnishes supported by the recipe; no substitutions, no extra protein, no text, logos, watermark, collage, hands, packaging, impossible shapes, or misleading restaurant-perfect styling",
      "output_filename": "chicken-broccoli-ginger-stir-fry.webp",
      "creation_date": "2026-10-13",
      "visual_match_review_status": "Passed labeled contact-sheet review against recipe title, ingredients, and method on 2026-10-13.",
      "duplicate_check_status": "Passed exact SHA-256 and 256-bit perceptual difference-hash checks; no exact or near duplicate primary image detected.",
      "sha256": "fc05a8a856c92fba6a6d7f56ac0859845f46546f7186d0f80d7cd1d39dc3e000",
      "width": 1200,
      "height": 800,
      "format": "WebP",
      "responsive_crop_review_status": "Passed 3:2 card and full-width recipe-cover crop review."
    },
    {
      "recipe_title": "Chicken pot pie skillet with biscuits",
      "recipe_url": "/recipes/chicken-pot-pie-skillet-with-biscuits/",
      "old_image": "/assets/stew.jpg",
      "new_image": "/assets/chicken-pot-pie-skillet-with-biscuits.webp",
      "status": "AI-generated",
      "source_page": null,
      "download_url": null,
      "creator": null,
      "license": null,
      "license_link": null,
      "commercial_use_note": "Generated specifically for The Kitchen Table; no third-party stock photograph is assigned as this recipe primary image.",
      "generation_prompt": "Use case: photorealistic-natural\nAsset type: primary recipe image for The Kitchen Table website\nPrimary request: Create one realistic, appetizing finished serving of the recipe \u201cChicken pot pie skillet with biscuits.\u201d\nRecipe description: Chicken pot pie skillet with biscuits uses ordinary grocery-store ingredients and teaches a clear bake workflow with visual cues for beginners.\nExact listed ingredients: 500 g cooked chicken; 400 g frozen mixed vegetables; 1 tbsp olive oil or other neutral cooking oil; 1  medium onion, prepared as directed; 2  garlic cloves, minced; 0.5 tsp fine salt; 0.25 tsp black pepper; 2 tbsp thyme and biscuit topping\nComplete preparation method: Prepare and preheat: Read the full recipe. Clear the counter, wash produce, and measure every ingredient. Prepare the named main and supporting ingredients as listed; keep raw meat or seafood, its board, and its utensils separate from ready-to-eat food. Heat the oven to 400\u00b0F / 200\u00b0C unless the ingredient package specifies otherwise. Arrange a rack in the center and prepare the stated pan. Season evenly: Combine the main and supporting ingredients with oil, salt, pepper, and flavorings. Spread in a single, even layer; use a second pan if crowded. Bake with visual cues: Bake for 20\u201335 minutes, turning or rotating once after about 15 minutes. Lower the heat if edges darken before the center is ready; add 5-minute increments if still firm. Check 165\u00b0F / 74\u00b0C in the thickest piece. Rest and finish: Remove the pan to a heat-safe surface. Rest 5 minutes so juices or structure settle, then add any fresh finishing ingredient and serve.\nScene/backdrop: soft gray stone counter, simple home-kitchen setting, no unrelated side dishes\nSubject: the plausible finished dish exactly as produced by the recipe, with the correct protein or plant-based base, cooking method, shape, texture, sauce, topping, and garnish\nStyle/medium: realistic editorial food photography with believable home-cooked texture\nComposition/framing: landscape 3:2, natural eye-level table view, full main dish visible with safe crop area for responsive cards\nLighting/mood: soft natural window light, appetizing but honest, gentle shadows\nConstraints: include only ingredients and garnishes supported by the recipe; no substitutions, no extra protein, no text, logos, watermark, collage, hands, packaging, impossible shapes, or misleading restaurant-perfect styling",
      "output_filename": "chicken-pot-pie-skillet-with-biscuits.webp",
      "creation_date": "2026-10-13",
      "visual_match_review_status": "Passed labeled contact-sheet review against recipe title, ingredients, and method on 2026-10-13.",
      "duplicate_check_status": "Passed exact SHA-256 and 256-bit perceptual difference-hash checks; no exact or near duplicate primary image detected.",
      "sha256": "7325d25e49ec822f9574b59c7102ebdde06df992b7cf16506d4bf6636c708821",
      "width": 1200,
      "height": 800,
      "format": "WebP",
      "responsive_crop_review_status": "Passed 3:2 card and full-width recipe-cover crop review."
    },
    {
      "recipe_title": "Baked beef meatballs with marinara",
      "recipe_url": "/recipes/baked-beef-meatballs-with-marinara/",
      "old_image": "/assets/stew.jpg",
      "new_image": "/assets/baked-beef-meatballs-with-marinara.webp",
      "status": "AI-generated",
      "source_page": null,
      "download_url": null,
      "creator": null,
      "license": null,
      "license_link": null,
      "commercial_use_note": "Generated specifically for The Kitchen Table; no third-party stock photograph is assigned as this recipe primary image.",
      "generation_prompt": "Use case: photorealistic-natural\nAsset type: primary recipe image for The Kitchen Table website\nPrimary request: Create one realistic, appetizing finished serving of the recipe \u201cBaked beef meatballs with marinara.\u201d\nRecipe description: Baked beef meatballs with marinara uses ordinary grocery-store ingredients and teaches a clear bake workflow with visual cues for beginners.\nExact listed ingredients: 600 g ground beef; 500 g tomato passata; 1 tbsp olive oil or other neutral cooking oil; 1  medium onion, prepared as directed; 2  garlic cloves, minced; 0.5 tsp fine salt; 0.25 tsp black pepper; 2 tbsp oregano and breadcrumbs\nComplete preparation method: Prepare and preheat: Read the full recipe. Clear the counter, wash produce, and measure every ingredient. Prepare the named main and supporting ingredients as listed; keep raw meat or seafood, its board, and its utensils separate from ready-to-eat food. Heat the oven to 400\u00b0F / 200\u00b0C unless the ingredient package specifies otherwise. Arrange a rack in the center and prepare the stated pan. Season evenly: Combine the main and supporting ingredients with oil, salt, pepper, and flavorings. Spread in a single, even layer; use a second pan if crowded. Bake with visual cues: Bake for 20\u201335 minutes, turning or rotating once after about 15 minutes. Lower the heat if edges darken before the center is ready; add 5-minute increments if still firm. Check 160\u00b0F / 71\u00b0C. Rest and finish: Remove the pan to a heat-safe surface. Rest 5 minutes so juices or structure settle, then add any fresh finishing ingredient and serve.\nScene/backdrop: cream linen over a wood table, simple home-kitchen setting, no unrelated side dishes\nSubject: the plausible finished dish exactly as produced by the recipe, with the correct protein or plant-based base, cooking method, shape, texture, sauce, topping, and garnish\nStyle/medium: realistic editorial food photography with believable home-cooked texture\nComposition/framing: landscape 3:2, 45-degree editorial view, full main dish visible with safe crop area for responsive cards\nLighting/mood: soft natural window light, appetizing but honest, gentle shadows\nConstraints: include only ingredients and garnishes supported by the recipe; no substitutions, no extra protein, no text, logos, watermark, collage, hands, packaging, impossible shapes, or misleading restaurant-perfect styling",
      "output_filename": "baked-beef-meatballs-with-marinara.webp",
      "creation_date": "2026-10-13",
      "visual_match_review_status": "Passed labeled contact-sheet review against recipe title, ingredients, and method on 2026-10-13.",
      "duplicate_check_status": "Passed exact SHA-256 and 256-bit perceptual difference-hash checks; no exact or near duplicate primary image detected.",
      "sha256": "0d10fc95ff7bfb516c50ba54ce0acd3a69169881ced6a5dc09f364124ea35c0b",
      "width": 1200,
      "height": 800,
      "format": "WebP",
      "responsive_crop_review_status": "Passed 3:2 card and full-width recipe-cover crop review."
    },
    {
      "recipe_title": "Pork chops with skillet apples",
      "recipe_url": "/recipes/pork-chops-with-skillet-apples/",
      "old_image": "/assets/stew.jpg",
      "new_image": "/assets/pork-chops-with-skillet-apples.webp",
      "status": "AI-generated",
      "source_page": null,
      "download_url": null,
      "creator": null,
      "license": null,
      "license_link": null,
      "commercial_use_note": "Generated specifically for The Kitchen Table; no third-party stock photograph is assigned as this recipe primary image.",
      "generation_prompt": "Use case: photorealistic-natural\nAsset type: primary recipe image for The Kitchen Table website\nPrimary request: Create one realistic, appetizing finished serving of the recipe \u201cPork chops with skillet apples.\u201d\nRecipe description: Pork chops with skillet apples uses ordinary grocery-store ingredients and teaches a clear skillet workflow with visual cues for beginners.\nExact listed ingredients: 1  4 boneless pork chops, 2 cm thick; 1  2 apples, sliced; 1 tbsp olive oil or other neutral cooking oil; 1  medium onion, prepared as directed; 2  garlic cloves, minced; 0.5 tsp fine salt; 0.25 tsp black pepper; 2 tbsp mustard and thyme\nComplete preparation method: Set up the pan: Read the full recipe. Clear the counter, wash produce, and measure every ingredient. Prepare the named main and supporting ingredients as listed; keep raw meat or seafood, its board, and its utensils separate from ready-to-eat food. Put a wide skillet over medium heat for 2 minutes, then add the measured oil. Build color: Add the main ingredient in one layer. Cook 4\u20136 minutes without constant stirring, then turn. If it smokes heavily, lower the heat; if it stays pale and wet, increase heat slightly or work in batches. Add the supporting ingredients: Add the supporting ingredient, onion, garlic, and flavorings. Cook 5\u201310 minutes, stirring every minute or two, until aromatic and evenly cooked. Continue until 145\u00b0F / 63\u00b0C, followed by a 3-minute rest. Balance and serve: Take the pan off the heat. Taste a safe sample, then adjust salt or acidity in small amounts. Rest 3 minutes before serving.\nScene/backdrop: dark walnut table, simple home-kitchen setting, no unrelated side dishes\nSubject: the plausible finished dish exactly as produced by the recipe, with the correct protein or plant-based base, cooking method, shape, texture, sauce, topping, and garnish\nStyle/medium: realistic editorial food photography with believable home-cooked texture\nComposition/framing: landscape 3:2, top-down view, full main dish visible with safe crop area for responsive cards\nLighting/mood: soft natural window light, appetizing but honest, gentle shadows\nConstraints: include only ingredients and garnishes supported by the recipe; no substitutions, no extra protein, no text, logos, watermark, collage, hands, packaging, impossible shapes, or misleading restaurant-perfect styling",
      "output_filename": "pork-chops-with-skillet-apples.webp",
      "creation_date": "2026-10-13",
      "visual_match_review_status": "Passed labeled contact-sheet review against recipe title, ingredients, and method on 2026-10-13.",
      "duplicate_check_status": "Passed exact SHA-256 and 256-bit perceptual difference-hash checks; no exact or near duplicate primary image detected.",
      "sha256": "1e8fe95d38b22229cc3b86747673ae6c495f3a9de5b724610a5340a0c4df1673",
      "width": 1200,
      "height": 800,
      "format": "WebP",
      "responsive_crop_review_status": "Passed 3:2 card and full-width recipe-cover crop review."
    },
    {
      "recipe_title": "Simple beef cottage pie",
      "recipe_url": "/recipes/simple-beef-cottage-pie/",
      "old_image": "/assets/stew.jpg",
      "new_image": "/assets/simple-beef-cottage-pie.webp",
      "status": "AI-generated",
      "source_page": null,
      "download_url": null,
      "creator": null,
      "license": null,
      "license_link": null,
      "commercial_use_note": "Generated specifically for The Kitchen Table; no third-party stock photograph is assigned as this recipe primary image.",
      "generation_prompt": "Use case: photorealistic-natural\nAsset type: primary recipe image for The Kitchen Table website\nPrimary request: Create one realistic, appetizing finished serving of the recipe \u201cSimple beef cottage pie.\u201d\nRecipe description: Simple beef cottage pie uses ordinary grocery-store ingredients and teaches a clear bake workflow with visual cues for beginners.\nExact listed ingredients: 600 g ground beef; 900 g potatoes, peeled; 1 tbsp olive oil or other neutral cooking oil; 1  medium onion, prepared as directed; 2  garlic cloves, minced; 0.5 tsp fine salt; 0.25 tsp black pepper; 2 tbsp peas, carrots, and gravy\nComplete preparation method: Prepare and preheat: Read the full recipe. Clear the counter, wash produce, and measure every ingredient. Prepare the named main and supporting ingredients as listed; keep raw meat or seafood, its board, and its utensils separate from ready-to-eat food. Heat the oven to 400\u00b0F / 200\u00b0C unless the ingredient package specifies otherwise. Arrange a rack in the center and prepare the stated pan. Season evenly: Combine the main and supporting ingredients with oil, salt, pepper, and flavorings. Spread in a single, even layer; use a second pan if crowded. Bake with visual cues: Bake for 20\u201335 minutes, turning or rotating once after about 15 minutes. Lower the heat if edges darken before the center is ready; add 5-minute increments if still firm. Check 160\u00b0F / 71\u00b0C. Rest and finish: Remove the pan to a heat-safe surface. Rest 5 minutes so juices or structure settle, then add any fresh finishing ingredient and serve.\nScene/backdrop: warm pale stone table, simple home-kitchen setting, no unrelated side dishes\nSubject: the plausible finished dish exactly as produced by the recipe, with the correct protein or plant-based base, cooking method, shape, texture, sauce, topping, and garnish\nStyle/medium: realistic editorial food photography with believable home-cooked texture\nComposition/framing: landscape 3:2, three-quarter close view, full main dish visible with safe crop area for responsive cards\nLighting/mood: soft natural window light, appetizing but honest, gentle shadows\nConstraints: include only ingredients and garnishes supported by the recipe; no substitutions, no extra protein, no text, logos, watermark, collage, hands, packaging, impossible shapes, or misleading restaurant-perfect styling",
      "output_filename": "simple-beef-cottage-pie.webp",
      "creation_date": "2026-10-13",
      "visual_match_review_status": "Passed labeled contact-sheet review against recipe title, ingredients, and method on 2026-10-13.",
      "duplicate_check_status": "Passed exact SHA-256 and 256-bit perceptual difference-hash checks; no exact or near duplicate primary image detected.",
      "sha256": "366903aa4f42804493df7ed2d08989bfeb020e8cf1d39ddd11494959001759f3",
      "width": 1200,
      "height": 800,
      "format": "WebP",
      "responsive_crop_review_status": "Passed 3:2 card and full-width recipe-cover crop review."
    },
    {
      "recipe_title": "Garlic herb pork tenderloin",
      "recipe_url": "/recipes/garlic-herb-pork-tenderloin/",
      "old_image": "/assets/stew.jpg",
      "new_image": "/assets/garlic-herb-pork-tenderloin.webp",
      "status": "AI-generated",
      "source_page": null,
      "download_url": null,
      "creator": null,
      "license": null,
      "license_link": null,
      "commercial_use_note": "Generated specifically for The Kitchen Table; no third-party stock photograph is assigned as this recipe primary image.",
      "generation_prompt": "Use case: photorealistic-natural\nAsset type: primary recipe image for The Kitchen Table website\nPrimary request: Create one realistic, appetizing finished serving of the recipe \u201cGarlic herb pork tenderloin.\u201d\nRecipe description: Garlic herb pork tenderloin uses ordinary grocery-store ingredients and teaches a clear roast workflow with visual cues for beginners.\nExact listed ingredients: 700 g pork tenderloin; 500 g carrots, cut into batons; 1 tbsp olive oil or other neutral cooking oil; 1  medium onion, prepared as directed; 2  garlic cloves, minced; 0.5 tsp fine salt; 0.25 tsp black pepper; 2 tbsp garlic, rosemary, and mustard\nComplete preparation method: Prepare and preheat: Read the full recipe. Clear the counter, wash produce, and measure every ingredient. Prepare the named main and supporting ingredients as listed; keep raw meat or seafood, its board, and its utensils separate from ready-to-eat food. Heat the oven to 400\u00b0F / 200\u00b0C unless the ingredient package specifies otherwise. Arrange a rack in the center and prepare the stated pan. Season evenly: Combine the main and supporting ingredients with oil, salt, pepper, and flavorings. Spread in a single, even layer; use a second pan if crowded. Bake with visual cues: Bake for 20\u201335 minutes, turning or rotating once after about 15 minutes. Lower the heat if edges darken before the center is ready; add 5-minute increments if still firm. Check 145\u00b0F / 63\u00b0C, followed by a 3-minute rest. Rest and finish: Remove the pan to a heat-safe surface. Rest 5 minutes so juices or structure settle, then add any fresh finishing ingredient and serve.\nScene/backdrop: light oak kitchen table, simple home-kitchen setting, no unrelated side dishes\nSubject: the plausible finished dish exactly as produced by the recipe, with the correct protein or plant-based base, cooking method, shape, texture, sauce, topping, and garnish\nStyle/medium: realistic editorial food photography with believable home-cooked texture\nComposition/framing: landscape 3:2, slightly overhead view, full main dish visible with safe crop area for responsive cards\nLighting/mood: soft natural window light, appetizing but honest, gentle shadows\nConstraints: include only ingredients and garnishes supported by the recipe; no substitutions, no extra protein, no text, logos, watermark, collage, hands, packaging, impossible shapes, or misleading restaurant-perfect styling",
      "output_filename": "garlic-herb-pork-tenderloin.webp",
      "creation_date": "2026-10-13",
      "visual_match_review_status": "Passed labeled contact-sheet review against recipe title, ingredients, and method on 2026-10-13.",
      "duplicate_check_status": "Passed exact SHA-256 and 256-bit perceptual difference-hash checks; no exact or near duplicate primary image detected.",
      "sha256": "94c7fb2386d1118dfbb89479b5d5a436dc639fb6f3e6cc03a7074ae5f51e1912",
      "width": 1200,
      "height": 800,
      "format": "WebP",
      "responsive_crop_review_status": "Passed 3:2 card and full-width recipe-cover crop review."
    },
    {
      "recipe_title": "Beef and broccoli stir-fry",
      "recipe_url": "/recipes/beef-and-broccoli-stir-fry/",
      "old_image": "/assets/stew.jpg",
      "new_image": "/assets/beef-and-broccoli-stir-fry.webp",
      "status": "AI-generated",
      "source_page": null,
      "download_url": null,
      "creator": null,
      "license": null,
      "license_link": null,
      "commercial_use_note": "Generated specifically for The Kitchen Table; no third-party stock photograph is assigned as this recipe primary image.",
      "generation_prompt": "Use case: photorealistic-natural\nAsset type: primary recipe image for The Kitchen Table website\nPrimary request: Create one realistic, appetizing finished serving of the recipe \u201cBeef and broccoli stir-fry.\u201d\nRecipe description: Beef and broccoli stir-fry uses ordinary grocery-store ingredients and teaches a clear skillet workflow with visual cues for beginners.\nExact listed ingredients: 500 g beef sirloin strips; 400 g broccoli florets; 1 tbsp olive oil or other neutral cooking oil; 1  medium onion, prepared as directed; 2  garlic cloves, minced; 0.5 tsp fine salt; 0.25 tsp black pepper; 2 tbsp soy, ginger, and garlic\nComplete preparation method: Set up the pan: Read the full recipe. Clear the counter, wash produce, and measure every ingredient. Prepare the named main and supporting ingredients as listed; keep raw meat or seafood, its board, and its utensils separate from ready-to-eat food. Put a wide skillet over medium heat for 2 minutes, then add the measured oil. Build color: Add the main ingredient in one layer. Cook 4\u20136 minutes without constant stirring, then turn. If it smokes heavily, lower the heat; if it stays pale and wet, increase heat slightly or work in batches. Add the supporting ingredients: Add the supporting ingredient, onion, garlic, and flavorings. Cook 5\u201310 minutes, stirring every minute or two, until aromatic and evenly cooked. Continue until the center is tender and the surface is well browned. Balance and serve: Take the pan off the heat. Taste a safe sample, then adjust salt or acidity in small amounts. Rest 3 minutes before serving.\nScene/backdrop: soft gray stone counter, simple home-kitchen setting, no unrelated side dishes\nSubject: the plausible finished dish exactly as produced by the recipe, with the correct protein or plant-based base, cooking method, shape, texture, sauce, topping, and garnish\nStyle/medium: realistic editorial food photography with believable home-cooked texture\nComposition/framing: landscape 3:2, natural eye-level table view, full main dish visible with safe crop area for responsive cards\nLighting/mood: soft natural window light, appetizing but honest, gentle shadows\nConstraints: include only ingredients and garnishes supported by the recipe; no substitutions, no extra protein, no text, logos, watermark, collage, hands, packaging, impossible shapes, or misleading restaurant-perfect styling",
      "output_filename": "beef-and-broccoli-stir-fry.webp",
      "creation_date": "2026-10-13",
      "visual_match_review_status": "Passed labeled contact-sheet review against recipe title, ingredients, and method on 2026-10-13.",
      "duplicate_check_status": "Passed exact SHA-256 and 256-bit perceptual difference-hash checks; no exact or near duplicate primary image detected.",
      "sha256": "c0a2350903cb06540a140104b874a12f418584be683b0bb08b527488bc9abba3",
      "width": 1200,
      "height": 800,
      "format": "WebP",
      "responsive_crop_review_status": "Passed 3:2 card and full-width recipe-cover crop review."
    },
    {
      "recipe_title": "Saucy skillet sloppy joes",
      "recipe_url": "/recipes/saucy-skillet-sloppy-joes/",
      "old_image": "/assets/root-vegetables.jpg",
      "new_image": "/assets/saucy-skillet-sloppy-joes.webp",
      "status": "AI-generated",
      "source_page": null,
      "download_url": null,
      "creator": null,
      "license": null,
      "license_link": null,
      "commercial_use_note": "Generated specifically for The Kitchen Table; no third-party stock photograph is assigned as this recipe primary image.",
      "generation_prompt": "Use case: photorealistic-natural\nAsset type: primary recipe image for The Kitchen Table website\nPrimary request: Create one realistic, appetizing finished serving of the recipe \u201cSaucy skillet sloppy joes.\u201d\nRecipe description: Saucy skillet sloppy joes uses ordinary grocery-store ingredients and teaches a clear simmer workflow with visual cues for beginners.\nExact listed ingredients: 600 g ground beef; 1  6 burger buns; 1 tbsp olive oil; 1  medium onion, diced; 2  garlic cloves, minced; 750 ml low-sodium stock or water, as appropriate; 0.5 tsp fine salt; 2 tbsp tomato, mustard, and paprika\nComplete preparation method: Prepare the pot: Read the full recipe. Clear the counter, wash produce, and measure every ingredient. Prepare the named main and supporting ingredients as listed; keep raw meat or seafood, its board, and its utensils separate from ready-to-eat food. Choose a heavy pot with room for gentle bubbling. Start the flavor base: Heat oil over medium. Cook onion for 6\u20138 minutes until soft, then garlic for 30 seconds. If either browns too fast, lower the heat and add a spoonful of water. Simmer steadily: Add the main ingredient, supporting ingredient, stock, salt, and flavorings. Bring just to a boil, then lower to a gentle simmer for 20\u201335 minutes, stirring every 5 minutes. For safety, verify 160\u00b0F / 71\u00b0C. Adjust the texture: If thin, simmer uncovered 5 minutes; if too thick, add warm water 60 ml at a time. Taste a safe spoonful, adjust gradually, and rest 5 minutes before serving.\nScene/backdrop: cream linen over a wood table, simple home-kitchen setting, no unrelated side dishes\nSubject: the plausible finished dish exactly as produced by the recipe, with the correct protein or plant-based base, cooking method, shape, texture, sauce, topping, and garnish\nStyle/medium: realistic editorial food photography with believable home-cooked texture\nComposition/framing: landscape 3:2, 45-degree editorial view, full main dish visible with safe crop area for responsive cards\nLighting/mood: soft natural window light, appetizing but honest, gentle shadows\nConstraints: include only ingredients and garnishes supported by the recipe; no substitutions, no extra protein, no text, logos, watermark, collage, hands, packaging, impossible shapes, or misleading restaurant-perfect styling",
      "output_filename": "saucy-skillet-sloppy-joes.webp",
      "creation_date": "2026-10-13",
      "visual_match_review_status": "Passed labeled contact-sheet review against recipe title, ingredients, and method on 2026-10-13.",
      "duplicate_check_status": "Passed exact SHA-256 and 256-bit perceptual difference-hash checks; no exact or near duplicate primary image detected.",
      "sha256": "bb38f8178eff17a250c76c2e165354f501a0593a0bc8c5177b811dc109af4aff",
      "width": 1200,
      "height": 800,
      "format": "WebP",
      "responsive_crop_review_status": "Passed 3:2 card and full-width recipe-cover crop review."
    },
    {
      "recipe_title": "Pork and vegetable fried rice",
      "recipe_url": "/recipes/pork-and-vegetable-fried-rice/",
      "old_image": "/assets/rice.jpg",
      "new_image": "/assets/pork-and-vegetable-fried-rice.webp",
      "status": "AI-generated",
      "source_page": null,
      "download_url": null,
      "creator": null,
      "license": null,
      "license_link": null,
      "commercial_use_note": "Generated specifically for The Kitchen Table; no third-party stock photograph is assigned as this recipe primary image.",
      "generation_prompt": "Use case: photorealistic-natural\nAsset type: primary recipe image for The Kitchen Table website\nPrimary request: Create one realistic, appetizing finished serving of the recipe \u201cPork and vegetable fried rice.\u201d\nRecipe description: Pork and vegetable fried rice uses ordinary grocery-store ingredients and teaches a clear skillet workflow with visual cues for beginners.\nExact listed ingredients: 350 g cooked pork, diced; 600 g cooked chilled rice; 1 tbsp olive oil or other neutral cooking oil; 1  medium onion, prepared as directed; 2  garlic cloves, minced; 0.5 tsp fine salt; 0.25 tsp black pepper; 2 tbsp peas, egg, and soy\nComplete preparation method: Set up the pan: Read the full recipe. Clear the counter, wash produce, and measure every ingredient. Prepare the named main and supporting ingredients as listed; keep raw meat or seafood, its board, and its utensils separate from ready-to-eat food. Put a wide skillet over medium heat for 2 minutes, then add the measured oil. Build color: Add the main ingredient in one layer. Cook 4\u20136 minutes without constant stirring, then turn. If it smokes heavily, lower the heat; if it stays pale and wet, increase heat slightly or work in batches. Add the supporting ingredients: Add the supporting ingredient, onion, garlic, and flavorings. Cook 5\u201310 minutes, stirring every minute or two, until aromatic and evenly cooked. Continue until 145\u00b0F / 63\u00b0C, followed by a 3-minute rest. Balance and serve: Take the pan off the heat. Taste a safe sample, then adjust salt or acidity in small amounts. Rest 3 minutes before serving.\nScene/backdrop: dark walnut table, simple home-kitchen setting, no unrelated side dishes\nSubject: the plausible finished dish exactly as produced by the recipe, with the correct protein or plant-based base, cooking method, shape, texture, sauce, topping, and garnish\nStyle/medium: realistic editorial food photography with believable home-cooked texture\nComposition/framing: landscape 3:2, top-down view, full main dish visible with safe crop area for responsive cards\nLighting/mood: soft natural window light, appetizing but honest, gentle shadows\nConstraints: include only ingredients and garnishes supported by the recipe; no substitutions, no extra protein, no text, logos, watermark, collage, hands, packaging, impossible shapes, or misleading restaurant-perfect styling",
      "output_filename": "pork-and-vegetable-fried-rice.webp",
      "creation_date": "2026-10-13",
      "visual_match_review_status": "Passed labeled contact-sheet review against recipe title, ingredients, and method on 2026-10-13.",
      "duplicate_check_status": "Passed exact SHA-256 and 256-bit perceptual difference-hash checks; no exact or near duplicate primary image detected.",
      "sha256": "747e0209b21b589189f06b303e07c19fcd375d074d64310fc0aed7c95d246f4e",
      "width": 1200,
      "height": 800,
      "format": "WebP",
      "responsive_crop_review_status": "Passed 3:2 card and full-width recipe-cover crop review."
    },
    {
      "recipe_title": "Paprika beef kebabs",
      "recipe_url": "/recipes/paprika-beef-kebabs/",
      "old_image": "/assets/stew.jpg",
      "new_image": "/assets/paprika-beef-kebabs.webp",
      "status": "AI-generated",
      "source_page": null,
      "download_url": null,
      "creator": null,
      "license": null,
      "license_link": null,
      "commercial_use_note": "Generated specifically for The Kitchen Table; no third-party stock photograph is assigned as this recipe primary image.",
      "generation_prompt": "Use case: photorealistic-natural\nAsset type: primary recipe image for The Kitchen Table website\nPrimary request: Create one realistic, appetizing finished serving of the recipe \u201cPaprika beef kebabs.\u201d\nRecipe description: Paprika beef kebabs uses ordinary grocery-store ingredients and teaches a clear roast workflow with visual cues for beginners.\nExact listed ingredients: 600 g beef sirloin, 3 cm cubes; 1  2 bell peppers, 3 cm pieces; 1 tbsp olive oil or other neutral cooking oil; 1  medium onion, prepared as directed; 2  garlic cloves, minced; 0.5 tsp fine salt; 0.25 tsp black pepper; 2 tbsp paprika and lemon\nComplete preparation method: Prepare and preheat: Read the full recipe. Clear the counter, wash produce, and measure every ingredient. Prepare the named main and supporting ingredients as listed; keep raw meat or seafood, its board, and its utensils separate from ready-to-eat food. Heat the oven to 400\u00b0F / 200\u00b0C unless the ingredient package specifies otherwise. Arrange a rack in the center and prepare the stated pan. Season evenly: Combine the main and supporting ingredients with oil, salt, pepper, and flavorings. Spread in a single, even layer; use a second pan if crowded. Bake with visual cues: Bake for 20\u201335 minutes, turning or rotating once after about 15 minutes. Lower the heat if edges darken before the center is ready; add 5-minute increments if still firm. The center should be set or tender and the edges lightly browned. Rest and finish: Remove the pan to a heat-safe surface. Rest 5 minutes so juices or structure settle, then add any fresh finishing ingredient and serve.\nScene/backdrop: warm pale stone table, simple home-kitchen setting, no unrelated side dishes\nSubject: the plausible finished dish exactly as produced by the recipe, with the correct protein or plant-based base, cooking method, shape, texture, sauce, topping, and garnish\nStyle/medium: realistic editorial food photography with believable home-cooked texture\nComposition/framing: landscape 3:2, three-quarter close view, full main dish visible with safe crop area for responsive cards\nLighting/mood: soft natural window light, appetizing but honest, gentle shadows\nConstraints: include only ingredients and garnishes supported by the recipe; no substitutions, no extra protein, no text, logos, watermark, collage, hands, packaging, impossible shapes, or misleading restaurant-perfect styling",
      "output_filename": "paprika-beef-kebabs.webp",
      "creation_date": "2026-10-13",
      "visual_match_review_status": "Passed labeled contact-sheet review against recipe title, ingredients, and method on 2026-10-13.",
      "duplicate_check_status": "Passed exact SHA-256 and 256-bit perceptual difference-hash checks; no exact or near duplicate primary image detected.",
      "sha256": "485ab67eda2936feaf760c346181ccd4fa8c1bc09e5c18a0c9eaaa961a645677",
      "width": 1200,
      "height": 800,
      "format": "WebP",
      "responsive_crop_review_status": "Passed 3:2 card and full-width recipe-cover crop review."
    },
    {
      "recipe_title": "Sausage and pepper sheet-pan dinner",
      "recipe_url": "/recipes/sausage-and-pepper-sheet-pan-dinner/",
      "old_image": "/assets/root-vegetables.jpg",
      "new_image": "/assets/sausage-and-pepper-sheet-pan-dinner.webp",
      "status": "AI-generated",
      "source_page": null,
      "download_url": null,
      "creator": null,
      "license": null,
      "license_link": null,
      "commercial_use_note": "Generated specifically for The Kitchen Table; no third-party stock photograph is assigned as this recipe primary image.",
      "generation_prompt": "Use case: photorealistic-natural\nAsset type: primary recipe image for The Kitchen Table website\nPrimary request: Create one realistic, appetizing finished serving of the recipe \u201cSausage and pepper sheet-pan dinner.\u201d\nRecipe description: Sausage and pepper sheet-pan dinner uses ordinary grocery-store ingredients and teaches a clear roast workflow with visual cues for beginners.\nExact listed ingredients: 600 g raw pork sausages; 1  3 bell peppers, sliced; 1 tbsp olive oil or other neutral cooking oil; 1  medium onion, prepared as directed; 2  garlic cloves, minced; 0.5 tsp fine salt; 0.25 tsp black pepper; 2 tbsp onion and oregano\nComplete preparation method: Prepare and preheat: Read the full recipe. Clear the counter, wash produce, and measure every ingredient. Prepare the named main and supporting ingredients as listed; keep raw meat or seafood, its board, and its utensils separate from ready-to-eat food. Heat the oven to 400\u00b0F / 200\u00b0C unless the ingredient package specifies otherwise. Arrange a rack in the center and prepare the stated pan. Season evenly: Combine the main and supporting ingredients with oil, salt, pepper, and flavorings. Spread in a single, even layer; use a second pan if crowded. Bake with visual cues: Bake for 20\u201335 minutes, turning or rotating once after about 15 minutes. Lower the heat if edges darken before the center is ready; add 5-minute increments if still firm. Check 160\u00b0F / 71\u00b0C. Rest and finish: Remove the pan to a heat-safe surface. Rest 5 minutes so juices or structure settle, then add any fresh finishing ingredient and serve.\nScene/backdrop: light oak kitchen table, simple home-kitchen setting, no unrelated side dishes\nSubject: the plausible finished dish exactly as produced by the recipe, with the correct protein or plant-based base, cooking method, shape, texture, sauce, topping, and garnish\nStyle/medium: realistic editorial food photography with believable home-cooked texture\nComposition/framing: landscape 3:2, slightly overhead view, full main dish visible with safe crop area for responsive cards\nLighting/mood: soft natural window light, appetizing but honest, gentle shadows\nConstraints: include only ingredients and garnishes supported by the recipe; no substitutions, no extra protein, no text, logos, watermark, collage, hands, packaging, impossible shapes, or misleading restaurant-perfect styling",
      "output_filename": "sausage-and-pepper-sheet-pan-dinner.webp",
      "creation_date": "2026-10-13",
      "visual_match_review_status": "Passed labeled contact-sheet review against recipe title, ingredients, and method on 2026-10-13.",
      "duplicate_check_status": "Passed exact SHA-256 and 256-bit perceptual difference-hash checks; no exact or near duplicate primary image detected.",
      "sha256": "635d8854179a261fc0ddb7bdf1c56120fe884d68c11aa8c88ed6941c7c2f2d21",
      "width": 1200,
      "height": 800,
      "format": "WebP",
      "responsive_crop_review_status": "Passed 3:2 card and full-width recipe-cover crop review."
    },
    {
      "recipe_title": "Creamy mushroom beef stroganoff",
      "recipe_url": "/recipes/creamy-mushroom-beef-stroganoff/",
      "old_image": "/assets/stew.jpg",
      "new_image": "/assets/creamy-mushroom-beef-stroganoff.webp",
      "status": "AI-generated",
      "source_page": null,
      "download_url": null,
      "creator": null,
      "license": null,
      "license_link": null,
      "commercial_use_note": "Generated specifically for The Kitchen Table; no third-party stock photograph is assigned as this recipe primary image.",
      "generation_prompt": "Use case: photorealistic-natural\nAsset type: primary recipe image for The Kitchen Table website\nPrimary request: Create one realistic, appetizing finished serving of the recipe \u201cCreamy mushroom beef stroganoff.\u201d\nRecipe description: Creamy mushroom beef stroganoff uses ordinary grocery-store ingredients and teaches a clear simmer workflow with visual cues for beginners.\nExact listed ingredients: 500 g beef strips; 300 g mushrooms, sliced; 1 tbsp olive oil; 1  medium onion, diced; 2  garlic cloves, minced; 750 ml low-sodium stock or water, as appropriate; 0.5 tsp fine salt; 2 tbsp mustard and sour cream\nComplete preparation method: Prepare the pot: Read the full recipe. Clear the counter, wash produce, and measure every ingredient. Prepare the named main and supporting ingredients as listed; keep raw meat or seafood, its board, and its utensils separate from ready-to-eat food. Choose a heavy pot with room for gentle bubbling. Start the flavor base: Heat oil over medium. Cook onion for 6\u20138 minutes until soft, then garlic for 30 seconds. If either browns too fast, lower the heat and add a spoonful of water. Simmer steadily: Add the main ingredient, supporting ingredient, stock, salt, and flavorings. Bring just to a boil, then lower to a gentle simmer for 20\u201335 minutes, stirring every 5 minutes. Continue until the pieces are tender and the liquid lightly coats a spoon. Adjust the texture: If thin, simmer uncovered 5 minutes; if too thick, add warm water 60 ml at a time. Taste a safe spoonful, adjust gradually, and rest 5 minutes before serving.\nScene/backdrop: soft gray stone counter, simple home-kitchen setting, no unrelated side dishes\nSubject: the plausible finished dish exactly as produced by the recipe, with the correct protein or plant-based base, cooking method, shape, texture, sauce, topping, and garnish\nStyle/medium: realistic editorial food photography with believable home-cooked texture\nComposition/framing: landscape 3:2, natural eye-level table view, full main dish visible with safe crop area for responsive cards\nLighting/mood: soft natural window light, appetizing but honest, gentle shadows\nConstraints: include only ingredients and garnishes supported by the recipe; no substitutions, no extra protein, no text, logos, watermark, collage, hands, packaging, impossible shapes, or misleading restaurant-perfect styling",
      "output_filename": "creamy-mushroom-beef-stroganoff.webp",
      "creation_date": "2026-10-13",
      "visual_match_review_status": "Passed labeled contact-sheet review against recipe title, ingredients, and method on 2026-10-13.",
      "duplicate_check_status": "Passed exact SHA-256 and 256-bit perceptual difference-hash checks; no exact or near duplicate primary image detected.",
      "sha256": "e1517b65b09686e8acbf48ff606fcb15c7ac5d9ee724c74a0e0dd7217f7fc560",
      "width": 1200,
      "height": 800,
      "format": "WebP",
      "responsive_crop_review_status": "Passed 3:2 card and full-width recipe-cover crop review."
    },
    {
      "recipe_title": "Lemon pepper baked tilapia",
      "recipe_url": "/recipes/lemon-pepper-baked-tilapia/",
      "old_image": "/assets/root-vegetables.jpg",
      "new_image": "/assets/lemon-pepper-baked-tilapia.webp",
      "status": "AI-generated",
      "source_page": null,
      "download_url": null,
      "creator": null,
      "license": null,
      "license_link": null,
      "commercial_use_note": "Generated specifically for The Kitchen Table; no third-party stock photograph is assigned as this recipe primary image.",
      "generation_prompt": "Use case: photorealistic-natural\nAsset type: primary recipe image for The Kitchen Table website\nPrimary request: Create one realistic, appetizing finished serving of the recipe \u201cLemon pepper baked tilapia.\u201d\nRecipe description: Lemon pepper baked tilapia uses ordinary grocery-store ingredients and teaches a clear bake workflow with visual cues for beginners.\nExact listed ingredients: 1  4 tilapia fillets, about 140 g each; 300 g green beans; 1 tbsp olive oil or other neutral cooking oil; 1  medium onion, prepared as directed; 2  garlic cloves, minced; 0.5 tsp fine salt; 0.25 tsp black pepper; 2 tbsp lemon and black pepper\nComplete preparation method: Prepare and preheat: Read the full recipe. Clear the counter, wash produce, and measure every ingredient. Prepare the named main and supporting ingredients as listed; keep raw meat or seafood, its board, and its utensils separate from ready-to-eat food. Heat the oven to 400\u00b0F / 200\u00b0C unless the ingredient package specifies otherwise. Arrange a rack in the center and prepare the stated pan. Season evenly: Combine the main and supporting ingredients with oil, salt, pepper, and flavorings. Spread in a single, even layer; use a second pan if crowded. Bake with visual cues: Bake for 20\u201335 minutes, turning or rotating once after about 15 minutes. Lower the heat if edges darken before the center is ready; add 5-minute increments if still firm. Check 145\u00b0F / 63\u00b0C where a thermometer can be used; seafood should look opaque. Rest and finish: Remove the pan to a heat-safe surface. Rest 5 minutes so juices or structure settle, then add any fresh finishing ingredient and serve.\nScene/backdrop: cream linen over a wood table, simple home-kitchen setting, no unrelated side dishes\nSubject: the plausible finished dish exactly as produced by the recipe, with the correct protein or plant-based base, cooking method, shape, texture, sauce, topping, and garnish\nStyle/medium: realistic editorial food photography with believable home-cooked texture\nComposition/framing: landscape 3:2, 45-degree editorial view, full main dish visible with safe crop area for responsive cards\nLighting/mood: soft natural window light, appetizing but honest, gentle shadows\nConstraints: include only ingredients and garnishes supported by the recipe; no substitutions, no extra protein, no text, logos, watermark, collage, hands, packaging, impossible shapes, or misleading restaurant-perfect styling",
      "output_filename": "lemon-pepper-baked-tilapia.webp",
      "creation_date": "2026-10-13",
      "visual_match_review_status": "Passed labeled contact-sheet review against recipe title, ingredients, and method on 2026-10-13.",
      "duplicate_check_status": "Passed exact SHA-256 and 256-bit perceptual difference-hash checks; no exact or near duplicate primary image detected.",
      "sha256": "9a1dc804e943880136abdf8dc547dfc9c35db2e0735b673eeb2bbd135daca63f",
      "width": 1200,
      "height": 800,
      "format": "WebP",
      "responsive_crop_review_status": "Passed 3:2 card and full-width recipe-cover crop review."
    },
    {
      "recipe_title": "Salmon rice bowls with cucumber",
      "recipe_url": "/recipes/salmon-rice-bowls-with-cucumber/",
      "old_image": "/assets/shrimp.jpg",
      "new_image": "/assets/salmon-rice-bowls-with-cucumber.webp",
      "status": "AI-generated",
      "source_page": null,
      "download_url": null,
      "creator": null,
      "license": null,
      "license_link": null,
      "commercial_use_note": "Generated specifically for The Kitchen Table; no third-party stock photograph is assigned as this recipe primary image.",
      "generation_prompt": "Use case: photorealistic-natural\nAsset type: primary recipe image for The Kitchen Table website\nPrimary request: Create one realistic, appetizing finished serving of the recipe \u201cSalmon rice bowls with cucumber.\u201d\nRecipe description: Salmon rice bowls with cucumber uses ordinary grocery-store ingredients and teaches a clear roast workflow with visual cues for beginners.\nExact listed ingredients: 1  4 salmon fillets, about 150 g each; 600 g cooked rice; 1 tbsp olive oil or other neutral cooking oil; 1  medium onion, prepared as directed; 2  garlic cloves, minced; 0.5 tsp fine salt; 0.25 tsp black pepper; 2 tbsp cucumber, soy, and sesame\nComplete preparation method: Prepare and preheat: Read the full recipe. Clear the counter, wash produce, and measure every ingredient. Prepare the named main and supporting ingredients as listed; keep raw meat or seafood, its board, and its utensils separate from ready-to-eat food. Heat the oven to 400\u00b0F / 200\u00b0C unless the ingredient package specifies otherwise. Arrange a rack in the center and prepare the stated pan. Season evenly: Combine the main and supporting ingredients with oil, salt, pepper, and flavorings. Spread in a single, even layer; use a second pan if crowded. Bake with visual cues: Bake for 20\u201335 minutes, turning or rotating once after about 15 minutes. Lower the heat if edges darken before the center is ready; add 5-minute increments if still firm. Check 145\u00b0F / 63\u00b0C where a thermometer can be used; seafood should look opaque. Rest and finish: Remove the pan to a heat-safe surface. Rest 5 minutes so juices or structure settle, then add any fresh finishing ingredient and serve.\nScene/backdrop: dark walnut table, simple home-kitchen setting, no unrelated side dishes\nSubject: the plausible finished dish exactly as produced by the recipe, with the correct protein or plant-based base, cooking method, shape, texture, sauce, topping, and garnish\nStyle/medium: realistic editorial food photography with believable home-cooked texture\nComposition/framing: landscape 3:2, top-down view, full main dish visible with safe crop area for responsive cards\nLighting/mood: soft natural window light, appetizing but honest, gentle shadows\nConstraints: include only ingredients and garnishes supported by the recipe; no substitutions, no extra protein, no text, logos, watermark, collage, hands, packaging, impossible shapes, or misleading restaurant-perfect styling",
      "output_filename": "salmon-rice-bowls-with-cucumber.webp",
      "creation_date": "2026-10-13",
      "visual_match_review_status": "Passed labeled contact-sheet review against recipe title, ingredients, and method on 2026-10-13.",
      "duplicate_check_status": "Passed exact SHA-256 and 256-bit perceptual difference-hash checks; no exact or near duplicate primary image detected.",
      "sha256": "a22e4d2c9dc12a5c94ef4d46d22fb060db249d9d6bced8bd13d01c88910d2f13",
      "width": 1200,
      "height": 800,
      "format": "WebP",
      "responsive_crop_review_status": "Passed 3:2 card and full-width recipe-cover crop review."
    },
    {
      "recipe_title": "Crispy pantry tuna cakes",
      "recipe_url": "/recipes/crispy-pantry-tuna-cakes/",
      "old_image": "/assets/root-vegetables.jpg",
      "new_image": "/assets/crispy-pantry-tuna-cakes.webp",
      "status": "AI-generated",
      "source_page": null,
      "download_url": null,
      "creator": null,
      "license": null,
      "license_link": null,
      "commercial_use_note": "Generated specifically for The Kitchen Table; no third-party stock photograph is assigned as this recipe primary image.",
      "generation_prompt": "Use case: photorealistic-natural\nAsset type: primary recipe image for The Kitchen Table website\nPrimary request: Create one realistic, appetizing finished serving of the recipe \u201cCrispy pantry tuna cakes.\u201d\nRecipe description: Crispy pantry tuna cakes uses ordinary grocery-store ingredients and teaches a clear skillet workflow with visual cues for beginners.\nExact listed ingredients: 2 cans tuna, 140 g drained each; 1 large egg; 1 tbsp olive oil or other neutral cooking oil; 1  medium onion, prepared as directed; 2  garlic cloves, minced; 0.5 tsp fine salt; 0.25 tsp black pepper; 2 tbsp breadcrumbs, lemon, and parsley\nComplete preparation method: Set up the pan: Read the full recipe. Clear the counter, wash produce, and measure every ingredient. Prepare the named main and supporting ingredients as listed; keep raw meat or seafood, its board, and its utensils separate from ready-to-eat food. Put a wide skillet over medium heat for 2 minutes, then add the measured oil. Build color: Add the main ingredient in one layer. Cook 4\u20136 minutes without constant stirring, then turn. If it smokes heavily, lower the heat; if it stays pale and wet, increase heat slightly or work in batches. Add the supporting ingredients: Add the supporting ingredient, onion, garlic, and flavorings. Cook 5\u201310 minutes, stirring every minute or two, until aromatic and evenly cooked. Continue until the center is tender and the surface is well browned. Balance and serve: Take the pan off the heat. Taste a safe sample, then adjust salt or acidity in small amounts. Rest 3 minutes before serving.\nScene/backdrop: warm pale stone table, simple home-kitchen setting, no unrelated side dishes\nSubject: the plausible finished dish exactly as produced by the recipe, with the correct protein or plant-based base, cooking method, shape, texture, sauce, topping, and garnish\nStyle/medium: realistic editorial food photography with believable home-cooked texture\nComposition/framing: landscape 3:2, three-quarter close view, full main dish visible with safe crop area for responsive cards\nLighting/mood: soft natural window light, appetizing but honest, gentle shadows\nConstraints: include only ingredients and garnishes supported by the recipe; no substitutions, no extra protein, no text, logos, watermark, collage, hands, packaging, impossible shapes, or misleading restaurant-perfect styling",
      "output_filename": "crispy-pantry-tuna-cakes.webp",
      "creation_date": "2026-10-13",
      "visual_match_review_status": "Passed labeled contact-sheet review against recipe title, ingredients, and method on 2026-10-13.",
      "duplicate_check_status": "Passed exact SHA-256 and 256-bit perceptual difference-hash checks; no exact or near duplicate primary image detected.",
      "sha256": "c31c13b4880c8da355f42575fe8020f40fa99333de32091beabba8f1c94952d6",
      "width": 1200,
      "height": 800,
      "format": "WebP",
      "responsive_crop_review_status": "Passed 3:2 card and full-width recipe-cover crop review."
    },
    {
      "recipe_title": "Easy shrimp tacos with lime slaw",
      "recipe_url": "/recipes/easy-shrimp-tacos-with-lime-slaw/",
      "old_image": "/assets/shrimp.jpg",
      "new_image": "/assets/easy-shrimp-tacos-with-lime-slaw.webp",
      "status": "AI-generated",
      "source_page": null,
      "download_url": null,
      "creator": null,
      "license": null,
      "license_link": null,
      "commercial_use_note": "Generated specifically for The Kitchen Table; no third-party stock photograph is assigned as this recipe primary image.",
      "generation_prompt": "Use case: photorealistic-natural\nAsset type: primary recipe image for The Kitchen Table website\nPrimary request: Create one realistic, appetizing finished serving of the recipe \u201cEasy shrimp tacos with lime slaw.\u201d\nRecipe description: Easy shrimp tacos with lime slaw uses ordinary grocery-store ingredients and teaches a clear skillet workflow with visual cues for beginners.\nExact listed ingredients: 500 g raw peeled shrimp; 8 small tortillas; 1 tbsp olive oil or other neutral cooking oil; 1  medium onion, prepared as directed; 2  garlic cloves, minced; 0.5 tsp fine salt; 0.25 tsp black pepper; 2 tbsp cabbage, lime, and cumin\nComplete preparation method: Set up the pan: Read the full recipe. Clear the counter, wash produce, and measure every ingredient. Prepare the named main and supporting ingredients as listed; keep raw meat or seafood, its board, and its utensils separate from ready-to-eat food. Put a wide skillet over medium heat for 2 minutes, then add the measured oil. Build color: Add the main ingredient in one layer. Cook 4\u20136 minutes without constant stirring, then turn. If it smokes heavily, lower the heat; if it stays pale and wet, increase heat slightly or work in batches. Add the supporting ingredients: Add the supporting ingredient, onion, garlic, and flavorings. Cook 5\u201310 minutes, stirring every minute or two, until aromatic and evenly cooked. Continue until 145\u00b0F / 63\u00b0C where a thermometer can be used; seafood should look opaque. Balance and serve: Take the pan off the heat. Taste a safe sample, then adjust salt or acidity in small amounts. Rest 3 minutes before serving.\nScene/backdrop: light oak kitchen table, simple home-kitchen setting, no unrelated side dishes\nSubject: the plausible finished dish exactly as produced by the recipe, with the correct protein or plant-based base, cooking method, shape, texture, sauce, topping, and garnish\nStyle/medium: realistic editorial food photography with believable home-cooked texture\nComposition/framing: landscape 3:2, slightly overhead view, full main dish visible with safe crop area for responsive cards\nLighting/mood: soft natural window light, appetizing but honest, gentle shadows\nConstraints: include only ingredients and garnishes supported by the recipe; no substitutions, no extra protein, no text, logos, watermark, collage, hands, packaging, impossible shapes, or misleading restaurant-perfect styling",
      "output_filename": "easy-shrimp-tacos-with-lime-slaw.webp",
      "creation_date": "2026-10-13",
      "visual_match_review_status": "Passed labeled contact-sheet review against recipe title, ingredients, and method on 2026-10-13.",
      "duplicate_check_status": "Passed exact SHA-256 and 256-bit perceptual difference-hash checks; no exact or near duplicate primary image detected.",
      "sha256": "26e01bdc75801cbb590a9f640c4fc516402953bcf45e929e934071845ea73b1e",
      "width": 1200,
      "height": 800,
      "format": "WebP",
      "responsive_crop_review_status": "Passed 3:2 card and full-width recipe-cover crop review."
    },
    {
      "recipe_title": "Cod and vegetable parchment packets",
      "recipe_url": "/recipes/cod-and-vegetable-parchment-packets/",
      "old_image": "/assets/root-vegetables.jpg",
      "new_image": "/assets/cod-and-vegetable-parchment-packets.webp",
      "status": "AI-generated",
      "source_page": null,
      "download_url": null,
      "creator": null,
      "license": null,
      "license_link": null,
      "commercial_use_note": "Generated specifically for The Kitchen Table; no third-party stock photograph is assigned as this recipe primary image.",
      "generation_prompt": "Use case: photorealistic-natural\nAsset type: primary recipe image for The Kitchen Table website\nPrimary request: Create one realistic, appetizing finished serving of the recipe \u201cCod and vegetable parchment packets.\u201d\nRecipe description: Cod and vegetable parchment packets uses ordinary grocery-store ingredients and teaches a clear bake workflow with visual cues for beginners.\nExact listed ingredients: 1  4 cod fillets, about 150 g each; 1  2 zucchini, thinly sliced; 1 tbsp olive oil or other neutral cooking oil; 1  medium onion, prepared as directed; 2  garlic cloves, minced; 0.5 tsp fine salt; 0.25 tsp black pepper; 2 tbsp tomato, lemon, and herbs\nComplete preparation method: Prepare and preheat: Read the full recipe. Clear the counter, wash produce, and measure every ingredient. Prepare the named main and supporting ingredients as listed; keep raw meat or seafood, its board, and its utensils separate from ready-to-eat food. Heat the oven to 400\u00b0F / 200\u00b0C unless the ingredient package specifies otherwise. Arrange a rack in the center and prepare the stated pan. Season evenly: Combine the main and supporting ingredients with oil, salt, pepper, and flavorings. Spread in a single, even layer; use a second pan if crowded. Bake with visual cues: Bake for 20\u201335 minutes, turning or rotating once after about 15 minutes. Lower the heat if edges darken before the center is ready; add 5-minute increments if still firm. Check 145\u00b0F / 63\u00b0C where a thermometer can be used; seafood should look opaque. Rest and finish: Remove the pan to a heat-safe surface. Rest 5 minutes so juices or structure settle, then add any fresh finishing ingredient and serve.\nScene/backdrop: soft gray stone counter, simple home-kitchen setting, no unrelated side dishes\nSubject: the plausible finished dish exactly as produced by the recipe, with the correct protein or plant-based base, cooking method, shape, texture, sauce, topping, and garnish\nStyle/medium: realistic editorial food photography with believable home-cooked texture\nComposition/framing: landscape 3:2, natural eye-level table view, full main dish visible with safe crop area for responsive cards\nLighting/mood: soft natural window light, appetizing but honest, gentle shadows\nConstraints: include only ingredients and garnishes supported by the recipe; no substitutions, no extra protein, no text, logos, watermark, collage, hands, packaging, impossible shapes, or misleading restaurant-perfect styling",
      "output_filename": "cod-and-vegetable-parchment-packets.webp",
      "creation_date": "2026-10-13",
      "visual_match_review_status": "Passed labeled contact-sheet review against recipe title, ingredients, and method on 2026-10-13.",
      "duplicate_check_status": "Passed exact SHA-256 and 256-bit perceptual difference-hash checks; no exact or near duplicate primary image detected.",
      "sha256": "fd7b270dd947497ef611bb3a016437a72646a125917537b058548cebae9337ca",
      "width": 1200,
      "height": 800,
      "format": "WebP",
      "responsive_crop_review_status": "Passed 3:2 card and full-width recipe-cover crop review."
    },
    {
      "recipe_title": "Corn and fish chowder",
      "recipe_url": "/recipes/corn-and-fish-chowder/",
      "old_image": "/assets/shrimp.jpg",
      "new_image": "/assets/corn-and-fish-chowder.webp",
      "status": "AI-generated",
      "source_page": null,
      "download_url": null,
      "creator": null,
      "license": null,
      "license_link": null,
      "commercial_use_note": "Generated specifically for The Kitchen Table; no third-party stock photograph is assigned as this recipe primary image.",
      "generation_prompt": "Use case: photorealistic-natural\nAsset type: primary recipe image for The Kitchen Table website\nPrimary request: Create one realistic, appetizing finished serving of the recipe \u201cCorn and fish chowder.\u201d\nRecipe description: Corn and fish chowder uses ordinary grocery-store ingredients and teaches a clear simmer workflow with visual cues for beginners.\nExact listed ingredients: 500 g firm white fish, 3 cm pieces; 400 g potatoes, diced; 1 tbsp olive oil; 1  medium onion, diced; 2  garlic cloves, minced; 750 ml low-sodium stock or water, as appropriate; 0.5 tsp fine salt; 2 tbsp corn, milk, and thyme\nComplete preparation method: Prepare the pot: Read the full recipe. Clear the counter, wash produce, and measure every ingredient. Prepare the named main and supporting ingredients as listed; keep raw meat or seafood, its board, and its utensils separate from ready-to-eat food. Choose a heavy pot with room for gentle bubbling. Start the flavor base: Heat oil over medium. Cook onion for 6\u20138 minutes until soft, then garlic for 30 seconds. If either browns too fast, lower the heat and add a spoonful of water. Simmer steadily: Add the main ingredient, supporting ingredient, stock, salt, and flavorings. Bring just to a boil, then lower to a gentle simmer for 20\u201335 minutes, stirring every 5 minutes. For safety, verify 145\u00b0F / 63\u00b0C where a thermometer can be used; seafood should look opaque. Adjust the texture: If thin, simmer uncovered 5 minutes; if too thick, add warm water 60 ml at a time. Taste a safe spoonful, adjust gradually, and rest 5 minutes before serving.\nScene/backdrop: cream linen over a wood table, simple home-kitchen setting, no unrelated side dishes\nSubject: the plausible finished dish exactly as produced by the recipe, with the correct protein or plant-based base, cooking method, shape, texture, sauce, topping, and garnish\nStyle/medium: realistic editorial food photography with believable home-cooked texture\nComposition/framing: landscape 3:2, 45-degree editorial view, full main dish visible with safe crop area for responsive cards\nLighting/mood: soft natural window light, appetizing but honest, gentle shadows\nConstraints: include only ingredients and garnishes supported by the recipe; no substitutions, no extra protein, no text, logos, watermark, collage, hands, packaging, impossible shapes, or misleading restaurant-perfect styling",
      "output_filename": "corn-and-fish-chowder.webp",
      "creation_date": "2026-10-13",
      "visual_match_review_status": "Passed labeled contact-sheet review against recipe title, ingredients, and method on 2026-10-13.",
      "duplicate_check_status": "Passed exact SHA-256 and 256-bit perceptual difference-hash checks; no exact or near duplicate primary image detected.",
      "sha256": "69b0b6568e4b6fa044629a4d3c104a0d5937f54d265fa1803d4729dcc2883a36",
      "width": 1200,
      "height": 800,
      "format": "WebP",
      "responsive_crop_review_status": "Passed 3:2 card and full-width recipe-cover crop review."
    },
    {
      "recipe_title": "Honey soy glazed salmon",
      "recipe_url": "/recipes/honey-soy-glazed-salmon/",
      "old_image": "/assets/shrimp.jpg",
      "new_image": "/assets/honey-soy-glazed-salmon.webp",
      "status": "AI-generated",
      "source_page": null,
      "download_url": null,
      "creator": null,
      "license": null,
      "license_link": null,
      "commercial_use_note": "Generated specifically for The Kitchen Table; no third-party stock photograph is assigned as this recipe primary image.",
      "generation_prompt": "Use case: photorealistic-natural\nAsset type: primary recipe image for The Kitchen Table website\nPrimary request: Create one realistic, appetizing finished serving of the recipe \u201cHoney soy glazed salmon.\u201d\nRecipe description: Honey soy glazed salmon uses ordinary grocery-store ingredients and teaches a clear roast workflow with visual cues for beginners.\nExact listed ingredients: 1  4 salmon fillets, about 150 g each; 300 g broccoli florets; 1 tbsp olive oil or other neutral cooking oil; 1  medium onion, prepared as directed; 2  garlic cloves, minced; 0.5 tsp fine salt; 0.25 tsp black pepper; 2 tbsp honey, soy, and ginger\nComplete preparation method: Prepare and preheat: Read the full recipe. Clear the counter, wash produce, and measure every ingredient. Prepare the named main and supporting ingredients as listed; keep raw meat or seafood, its board, and its utensils separate from ready-to-eat food. Heat the oven to 400\u00b0F / 200\u00b0C unless the ingredient package specifies otherwise. Arrange a rack in the center and prepare the stated pan. Season evenly: Combine the main and supporting ingredients with oil, salt, pepper, and flavorings. Spread in a single, even layer; use a second pan if crowded. Bake with visual cues: Bake for 20\u201335 minutes, turning or rotating once after about 15 minutes. Lower the heat if edges darken before the center is ready; add 5-minute increments if still firm. Check 145\u00b0F / 63\u00b0C where a thermometer can be used; seafood should look opaque. Rest and finish: Remove the pan to a heat-safe surface. Rest 5 minutes so juices or structure settle, then add any fresh finishing ingredient and serve.\nScene/backdrop: dark walnut table, simple home-kitchen setting, no unrelated side dishes\nSubject: the plausible finished dish exactly as produced by the recipe, with the correct protein or plant-based base, cooking method, shape, texture, sauce, topping, and garnish\nStyle/medium: realistic editorial food photography with believable home-cooked texture\nComposition/framing: landscape 3:2, top-down view, full main dish visible with safe crop area for responsive cards\nLighting/mood: soft natural window light, appetizing but honest, gentle shadows\nConstraints: include only ingredients and garnishes supported by the recipe; no substitutions, no extra protein, no text, logos, watermark, collage, hands, packaging, impossible shapes, or misleading restaurant-perfect styling",
      "output_filename": "honey-soy-glazed-salmon.webp",
      "creation_date": "2026-10-13",
      "visual_match_review_status": "Passed labeled contact-sheet review against recipe title, ingredients, and method on 2026-10-13.",
      "duplicate_check_status": "Passed exact SHA-256 and 256-bit perceptual difference-hash checks; no exact or near duplicate primary image detected.",
      "sha256": "0e81e745487f87bdf014d84b22aedc663bcbaa3cd1c0b39aa76d83f5ebb4dfad",
      "width": 1200,
      "height": 800,
      "format": "WebP",
      "responsive_crop_review_status": "Passed 3:2 card and full-width recipe-cover crop review."
    },
    {
      "recipe_title": "Garlic shrimp and tomato orzo",
      "recipe_url": "/recipes/garlic-shrimp-and-tomato-orzo/",
      "old_image": "/assets/shrimp.jpg",
      "new_image": "/assets/garlic-shrimp-and-tomato-orzo.webp",
      "status": "AI-generated",
      "source_page": null,
      "download_url": null,
      "creator": null,
      "license": null,
      "license_link": null,
      "commercial_use_note": "Generated specifically for The Kitchen Table; no third-party stock photograph is assigned as this recipe primary image.",
      "generation_prompt": "Use case: photorealistic-natural\nAsset type: primary recipe image for The Kitchen Table website\nPrimary request: Create one realistic, appetizing finished serving of the recipe \u201cGarlic shrimp and tomato orzo.\u201d\nRecipe description: Garlic shrimp and tomato orzo uses ordinary grocery-store ingredients and teaches a clear pasta workflow with visual cues for beginners.\nExact listed ingredients: 450 g raw peeled shrimp; 250 g dried orzo; 1 tbsp olive oil; 2  garlic cloves, minced; 250 ml low-sodium cooking liquid or reserved pasta water; 0.5 tsp fine salt; 2 tbsp tomato, garlic, and parsley\nComplete preparation method: Organize the work: Read the full recipe. Clear the counter, wash produce, and measure every ingredient. Prepare the named main and supporting ingredients as listed; keep raw meat or seafood, its board, and its utensils separate from ready-to-eat food. Bring a large pot of water to a strong boil and keep a mug beside the stove for cooking water. Cook the starch: Salt the boiling water lightly and cook the pasta or noodles to the package\u2019s lower time estimate. Stir during the first minute. Reserve 250 ml cooking water, then drain. Build the sauce: Heat oil over medium. Cook the supporting ingredient 5\u20138 minutes, then garlic for 30 seconds. Add flavorings and enough cooking liquid to make a loose sauce; simmer 2 minutes. Finish together: Add the drained starch and toss over low heat for 1\u20132 minutes. Add reserved water a tablespoon at a time until glossy. If the noodles soften too quickly, remove the pan from heat immediately.\nScene/backdrop: warm pale stone table, simple home-kitchen setting, no unrelated side dishes\nSubject: the plausible finished dish exactly as produced by the recipe, with the correct protein or plant-based base, cooking method, shape, texture, sauce, topping, and garnish\nStyle/medium: realistic editorial food photography with believable home-cooked texture\nComposition/framing: landscape 3:2, three-quarter close view, full main dish visible with safe crop area for responsive cards\nLighting/mood: soft natural window light, appetizing but honest, gentle shadows\nConstraints: include only ingredients and garnishes supported by the recipe; no substitutions, no extra protein, no text, logos, watermark, collage, hands, packaging, impossible shapes, or misleading restaurant-perfect styling",
      "output_filename": "garlic-shrimp-and-tomato-orzo.webp",
      "creation_date": "2026-10-13",
      "visual_match_review_status": "Passed labeled contact-sheet review against recipe title, ingredients, and method on 2026-10-13.",
      "duplicate_check_status": "Passed exact SHA-256 and 256-bit perceptual difference-hash checks; no exact or near duplicate primary image detected.",
      "sha256": "2c0a04f8be24a551fb619c198f68f1d5d7991da02382f8e83ddc14529b306a40",
      "width": 1200,
      "height": 800,
      "format": "WebP",
      "responsive_crop_review_status": "Passed 3:2 card and full-width recipe-cover crop review."
    },
    {
      "recipe_title": "Crab and sweetcorn skillet cakes",
      "recipe_url": "/recipes/crab-and-sweetcorn-skillet-cakes/",
      "old_image": "/assets/root-vegetables.jpg",
      "new_image": "/assets/crab-and-sweetcorn-skillet-cakes.webp",
      "status": "AI-generated",
      "source_page": null,
      "download_url": null,
      "creator": null,
      "license": null,
      "license_link": null,
      "commercial_use_note": "Generated specifically for The Kitchen Table; no third-party stock photograph is assigned as this recipe primary image.",
      "generation_prompt": "Use case: photorealistic-natural\nAsset type: primary recipe image for The Kitchen Table website\nPrimary request: Create one realistic, appetizing finished serving of the recipe \u201cCrab and sweetcorn skillet cakes.\u201d\nRecipe description: Crab and sweetcorn skillet cakes uses ordinary grocery-store ingredients and teaches a clear skillet workflow with visual cues for beginners.\nExact listed ingredients: 340 g crabmeat, drained; 150 g sweetcorn; 1 tbsp olive oil or other neutral cooking oil; 1  medium onion, prepared as directed; 2  garlic cloves, minced; 0.5 tsp fine salt; 0.25 tsp black pepper; 2 tbsp egg, breadcrumbs, and scallions\nComplete preparation method: Set up the pan: Read the full recipe. Clear the counter, wash produce, and measure every ingredient. Prepare the named main and supporting ingredients as listed; keep raw meat or seafood, its board, and its utensils separate from ready-to-eat food. Put a wide skillet over medium heat for 2 minutes, then add the measured oil. Build color: Add the main ingredient in one layer. Cook 4\u20136 minutes without constant stirring, then turn. If it smokes heavily, lower the heat; if it stays pale and wet, increase heat slightly or work in batches. Add the supporting ingredients: Add the supporting ingredient, onion, garlic, and flavorings. Cook 5\u201310 minutes, stirring every minute or two, until aromatic and evenly cooked. Continue until 145\u00b0F / 63\u00b0C where a thermometer can be used; seafood should look opaque. Balance and serve: Take the pan off the heat. Taste a safe sample, then adjust salt or acidity in small amounts. Rest 3 minutes before serving.\nScene/backdrop: light oak kitchen table, simple home-kitchen setting, no unrelated side dishes\nSubject: the plausible finished dish exactly as produced by the recipe, with the correct protein or plant-based base, cooking method, shape, texture, sauce, topping, and garnish\nStyle/medium: realistic editorial food photography with believable home-cooked texture\nComposition/framing: landscape 3:2, slightly overhead view, full main dish visible with safe crop area for responsive cards\nLighting/mood: soft natural window light, appetizing but honest, gentle shadows\nConstraints: include only ingredients and garnishes supported by the recipe; no substitutions, no extra protein, no text, logos, watermark, collage, hands, packaging, impossible shapes, or misleading restaurant-perfect styling",
      "output_filename": "crab-and-sweetcorn-skillet-cakes.webp",
      "creation_date": "2026-10-13",
      "visual_match_review_status": "Passed labeled contact-sheet review against recipe title, ingredients, and method on 2026-10-13.",
      "duplicate_check_status": "Passed exact SHA-256 and 256-bit perceptual difference-hash checks; no exact or near duplicate primary image detected.",
      "sha256": "423a89d3f3ede4a50bd213db2045ff85ee710b729e055b9e21d1e656ca7b4cb1",
      "width": 1200,
      "height": 800,
      "format": "WebP",
      "responsive_crop_review_status": "Passed 3:2 card and full-width recipe-cover crop review."
    },
    {
      "recipe_title": "Herb roasted whole trout fillets",
      "recipe_url": "/recipes/herb-roasted-whole-trout-fillets/",
      "old_image": "/assets/root-vegetables.jpg",
      "new_image": "/assets/herb-roasted-whole-trout-fillets.webp",
      "status": "AI-generated",
      "source_page": null,
      "download_url": null,
      "creator": null,
      "license": null,
      "license_link": null,
      "commercial_use_note": "Generated specifically for The Kitchen Table; no third-party stock photograph is assigned as this recipe primary image.",
      "generation_prompt": "Use case: photorealistic-natural\nAsset type: primary recipe image for The Kitchen Table website\nPrimary request: Create one realistic, appetizing finished serving of the recipe \u201cHerb roasted whole trout fillets.\u201d\nRecipe description: Herb roasted whole trout fillets uses ordinary grocery-store ingredients and teaches a clear roast workflow with visual cues for beginners.\nExact listed ingredients: 1  4 trout fillets, about 150 g each; 1  1 lemon, thinly sliced; 1 tbsp olive oil or other neutral cooking oil; 1  medium onion, prepared as directed; 2  garlic cloves, minced; 0.5 tsp fine salt; 0.25 tsp black pepper; 2 tbsp parsley, dill, and garlic\nComplete preparation method: Prepare and preheat: Read the full recipe. Clear the counter, wash produce, and measure every ingredient. Prepare the named main and supporting ingredients as listed; keep raw meat or seafood, its board, and its utensils separate from ready-to-eat food. Heat the oven to 400\u00b0F / 200\u00b0C unless the ingredient package specifies otherwise. Arrange a rack in the center and prepare the stated pan. Season evenly: Combine the main and supporting ingredients with oil, salt, pepper, and flavorings. Spread in a single, even layer; use a second pan if crowded. Bake with visual cues: Bake for 20\u201335 minutes, turning or rotating once after about 15 minutes. Lower the heat if edges darken before the center is ready; add 5-minute increments if still firm. Check 145\u00b0F / 63\u00b0C where a thermometer can be used; seafood should look opaque. Rest and finish: Remove the pan to a heat-safe surface. Rest 5 minutes so juices or structure settle, then add any fresh finishing ingredient and serve.\nScene/backdrop: soft gray stone counter, simple home-kitchen setting, no unrelated side dishes\nSubject: the plausible finished dish exactly as produced by the recipe, with the correct protein or plant-based base, cooking method, shape, texture, sauce, topping, and garnish\nStyle/medium: realistic editorial food photography with believable home-cooked texture\nComposition/framing: landscape 3:2, natural eye-level table view, full main dish visible with safe crop area for responsive cards\nLighting/mood: soft natural window light, appetizing but honest, gentle shadows\nConstraints: include only ingredients and garnishes supported by the recipe; no substitutions, no extra protein, no text, logos, watermark, collage, hands, packaging, impossible shapes, or misleading restaurant-perfect styling",
      "output_filename": "herb-roasted-whole-trout-fillets.webp",
      "creation_date": "2026-10-13",
      "visual_match_review_status": "Passed labeled contact-sheet review against recipe title, ingredients, and method on 2026-10-13.",
      "duplicate_check_status": "Passed exact SHA-256 and 256-bit perceptual difference-hash checks; no exact or near duplicate primary image detected.",
      "sha256": "745754d09374b7eee836e3321cfcf9ded1ef2fc88beb137804a0141e2c2a3cb4",
      "width": 1200,
      "height": 800,
      "format": "WebP",
      "responsive_crop_review_status": "Passed 3:2 card and full-width recipe-cover crop review."
    },
    {
      "recipe_title": "Lentil mushroom shepherd's pie",
      "recipe_url": "/recipes/lentil-mushroom-shepherd-s-pie/",
      "old_image": "/assets/root-vegetables.jpg",
      "new_image": "/assets/lentil-mushroom-shepherd-s-pie.webp",
      "status": "AI-generated",
      "source_page": null,
      "download_url": null,
      "creator": null,
      "license": null,
      "license_link": null,
      "commercial_use_note": "Generated specifically for The Kitchen Table; no third-party stock photograph is assigned as this recipe primary image.",
      "generation_prompt": "Use case: photorealistic-natural\nAsset type: primary recipe image for The Kitchen Table website\nPrimary request: Create one realistic, appetizing finished serving of the recipe \u201cLentil mushroom shepherd's pie.\u201d\nRecipe description: Lentil mushroom shepherd's pie uses ordinary grocery-store ingredients and teaches a clear bake workflow with visual cues for beginners.\nExact listed ingredients: 500 g cooked brown lentils; 400 g mushrooms, chopped; 1 tbsp olive oil or other neutral cooking oil; 1  medium onion, prepared as directed; 2  garlic cloves, minced; 0.5 tsp fine salt; 0.25 tsp black pepper; 2 tbsp peas and mashed potato\nComplete preparation method: Prepare and preheat: Read the full recipe. Clear the counter, wash produce, and measure every ingredient. Prepare the named main and supporting ingredients as listed; keep raw meat or seafood, its board, and its utensils separate from ready-to-eat food. Heat the oven to 400\u00b0F / 200\u00b0C unless the ingredient package specifies otherwise. Arrange a rack in the center and prepare the stated pan. Season evenly: Combine the main and supporting ingredients with oil, salt, pepper, and flavorings. Spread in a single, even layer; use a second pan if crowded. Bake with visual cues: Bake for 20\u201335 minutes, turning or rotating once after about 15 minutes. Lower the heat if edges darken before the center is ready; add 5-minute increments if still firm. The center should be set or tender and the edges lightly browned. Rest and finish: Remove the pan to a heat-safe surface. Rest 5 minutes so juices or structure settle, then add any fresh finishing ingredient and serve.\nScene/backdrop: cream linen over a wood table, simple home-kitchen setting, no unrelated side dishes\nSubject: the plausible finished dish exactly as produced by the recipe, with the correct protein or plant-based base, cooking method, shape, texture, sauce, topping, and garnish\nStyle/medium: realistic editorial food photography with believable home-cooked texture\nComposition/framing: landscape 3:2, 45-degree editorial view, full main dish visible with safe crop area for responsive cards\nLighting/mood: soft natural window light, appetizing but honest, gentle shadows\nConstraints: include only ingredients and garnishes supported by the recipe; no substitutions, no extra protein, no text, logos, watermark, collage, hands, packaging, impossible shapes, or misleading restaurant-perfect styling",
      "output_filename": "lentil-mushroom-shepherd-s-pie.webp",
      "creation_date": "2026-10-13",
      "visual_match_review_status": "Passed labeled contact-sheet review against recipe title, ingredients, and method on 2026-10-13.",
      "duplicate_check_status": "Passed exact SHA-256 and 256-bit perceptual difference-hash checks; no exact or near duplicate primary image detected.",
      "sha256": "350ece8d9ac17b59584e1cda89707d3fd610f910c197f20364fd3e84bce7ad73",
      "width": 1200,
      "height": 800,
      "format": "WebP",
      "responsive_crop_review_status": "Passed 3:2 card and full-width recipe-cover crop review."
    },
    {
      "recipe_title": "Crispy tofu vegetable stir-fry",
      "recipe_url": "/recipes/crispy-tofu-vegetable-stir-fry/",
      "old_image": "/assets/root-vegetables.jpg",
      "new_image": "/assets/crispy-tofu-vegetable-stir-fry.webp",
      "status": "AI-generated",
      "source_page": null,
      "download_url": null,
      "creator": null,
      "license": null,
      "license_link": null,
      "commercial_use_note": "Generated specifically for The Kitchen Table; no third-party stock photograph is assigned as this recipe primary image.",
      "generation_prompt": "Use case: photorealistic-natural\nAsset type: primary recipe image for The Kitchen Table website\nPrimary request: Create one realistic, appetizing finished serving of the recipe \u201cCrispy tofu vegetable stir-fry.\u201d\nRecipe description: Crispy tofu vegetable stir-fry uses ordinary grocery-store ingredients and teaches a clear skillet workflow with visual cues for beginners.\nExact listed ingredients: 450 g extra-firm tofu, pressed; 500 g mixed stir-fry vegetables; 1 tbsp olive oil or other neutral cooking oil; 1  medium onion, prepared as directed; 2  garlic cloves, minced; 0.5 tsp fine salt; 0.25 tsp black pepper; 2 tbsp ginger, garlic, and soy\nComplete preparation method: Set up the pan: Read the full recipe. Clear the counter, wash produce, and measure every ingredient. Prepare the named main and supporting ingredients as listed; keep raw meat or seafood, its board, and its utensils separate from ready-to-eat food. Put a wide skillet over medium heat for 2 minutes, then add the measured oil. Build color: Add the main ingredient in one layer. Cook 4\u20136 minutes without constant stirring, then turn. If it smokes heavily, lower the heat; if it stays pale and wet, increase heat slightly or work in batches. Add the supporting ingredients: Add the supporting ingredient, onion, garlic, and flavorings. Cook 5\u201310 minutes, stirring every minute or two, until aromatic and evenly cooked. Continue until the center is tender and the surface is well browned. Balance and serve: Take the pan off the heat. Taste a safe sample, then adjust salt or acidity in small amounts. Rest 3 minutes before serving.\nScene/backdrop: dark walnut table, simple home-kitchen setting, no unrelated side dishes\nSubject: the plausible finished dish exactly as produced by the recipe, with the correct protein or plant-based base, cooking method, shape, texture, sauce, topping, and garnish\nStyle/medium: realistic editorial food photography with believable home-cooked texture\nComposition/framing: landscape 3:2, top-down view, full main dish visible with safe crop area for responsive cards\nLighting/mood: soft natural window light, appetizing but honest, gentle shadows\nConstraints: include only ingredients and garnishes supported by the recipe; no substitutions, no extra protein, no text, logos, watermark, collage, hands, packaging, impossible shapes, or misleading restaurant-perfect styling",
      "output_filename": "crispy-tofu-vegetable-stir-fry.webp",
      "creation_date": "2026-10-13",
      "visual_match_review_status": "Passed labeled contact-sheet review against recipe title, ingredients, and method on 2026-10-13.",
      "duplicate_check_status": "Passed exact SHA-256 and 256-bit perceptual difference-hash checks; no exact or near duplicate primary image detected.",
      "sha256": "53bae956397a4c8a1b944196547b50adba2198b5bb289e94cae92bc074404645",
      "width": 1200,
      "height": 800,
      "format": "WebP",
      "responsive_crop_review_status": "Passed 3:2 card and full-width recipe-cover crop review."
    },
    {
      "recipe_title": "Black bean stuffed sweet potatoes",
      "recipe_url": "/recipes/black-bean-stuffed-sweet-potatoes/",
      "old_image": "/assets/root-vegetables.jpg",
      "new_image": "/assets/black-bean-stuffed-sweet-potatoes.webp",
      "status": "AI-generated",
      "source_page": null,
      "download_url": null,
      "creator": null,
      "license": null,
      "license_link": null,
      "commercial_use_note": "Generated specifically for The Kitchen Table; no third-party stock photograph is assigned as this recipe primary image.",
      "generation_prompt": "Use case: photorealistic-natural\nAsset type: primary recipe image for The Kitchen Table website\nPrimary request: Create one realistic, appetizing finished serving of the recipe \u201cBlack bean stuffed sweet potatoes.\u201d\nRecipe description: Black bean stuffed sweet potatoes uses ordinary grocery-store ingredients and teaches a clear bake workflow with visual cues for beginners.\nExact listed ingredients: 4 medium sweet potatoes; 1 can black beans, 240 g drained; 1 tbsp olive oil or other neutral cooking oil; 1  medium onion, prepared as directed; 2  garlic cloves, minced; 0.5 tsp fine salt; 0.25 tsp black pepper; 2 tbsp corn, lime, and yogurt\nComplete preparation method: Prepare and preheat: Read the full recipe. Clear the counter, wash produce, and measure every ingredient. Prepare the named main and supporting ingredients as listed; keep raw meat or seafood, its board, and its utensils separate from ready-to-eat food. Heat the oven to 400\u00b0F / 200\u00b0C unless the ingredient package specifies otherwise. Arrange a rack in the center and prepare the stated pan. Season evenly: Combine the main and supporting ingredients with oil, salt, pepper, and flavorings. Spread in a single, even layer; use a second pan if crowded. Bake with visual cues: Bake for 20\u201335 minutes, turning or rotating once after about 15 minutes. Lower the heat if edges darken before the center is ready; add 5-minute increments if still firm. The center should be set or tender and the edges lightly browned. Rest and finish: Remove the pan to a heat-safe surface. Rest 5 minutes so juices or structure settle, then add any fresh finishing ingredient and serve.\nScene/backdrop: warm pale stone table, simple home-kitchen setting, no unrelated side dishes\nSubject: the plausible finished dish exactly as produced by the recipe, with the correct protein or plant-based base, cooking method, shape, texture, sauce, topping, and garnish\nStyle/medium: realistic editorial food photography with believable home-cooked texture\nComposition/framing: landscape 3:2, three-quarter close view, full main dish visible with safe crop area for responsive cards\nLighting/mood: soft natural window light, appetizing but honest, gentle shadows\nConstraints: include only ingredients and garnishes supported by the recipe; no substitutions, no extra protein, no text, logos, watermark, collage, hands, packaging, impossible shapes, or misleading restaurant-perfect styling",
      "output_filename": "black-bean-stuffed-sweet-potatoes.webp",
      "creation_date": "2026-10-13",
      "visual_match_review_status": "Passed labeled contact-sheet review against recipe title, ingredients, and method on 2026-10-13.",
      "duplicate_check_status": "Passed exact SHA-256 and 256-bit perceptual difference-hash checks; no exact or near duplicate primary image detected.",
      "sha256": "67f51dd0fb828cacb411cc3769b7d396c584995f4d221b259ca8de26f53f40fd",
      "width": 1200,
      "height": 800,
      "format": "WebP",
      "responsive_crop_review_status": "Passed 3:2 card and full-width recipe-cover crop review."
    },
    {
      "recipe_title": "Weeknight bean enchilada casserole",
      "recipe_url": "/recipes/weeknight-bean-enchilada-casserole/",
      "old_image": "/assets/root-vegetables.jpg",
      "new_image": "/assets/weeknight-bean-enchilada-casserole.webp",
      "status": "AI-generated",
      "source_page": null,
      "download_url": null,
      "creator": null,
      "license": null,
      "license_link": null,
      "commercial_use_note": "Generated specifically for The Kitchen Table; no third-party stock photograph is assigned as this recipe primary image.",
      "generation_prompt": "Use case: photorealistic-natural\nAsset type: primary recipe image for The Kitchen Table website\nPrimary request: Create one realistic, appetizing finished serving of the recipe \u201cWeeknight bean enchilada casserole.\u201d\nRecipe description: Weeknight bean enchilada casserole uses ordinary grocery-store ingredients and teaches a clear bake workflow with visual cues for beginners.\nExact listed ingredients: 2 cans pinto beans, 480 g drained; 1  10 corn tortillas; 1 tbsp olive oil or other neutral cooking oil; 1  medium onion, prepared as directed; 2  garlic cloves, minced; 0.5 tsp fine salt; 0.25 tsp black pepper; 2 tbsp tomato sauce and cheese\nComplete preparation method: Prepare and preheat: Read the full recipe. Clear the counter, wash produce, and measure every ingredient. Prepare the named main and supporting ingredients as listed; keep raw meat or seafood, its board, and its utensils separate from ready-to-eat food. Heat the oven to 400\u00b0F / 200\u00b0C unless the ingredient package specifies otherwise. Arrange a rack in the center and prepare the stated pan. Season evenly: Combine the main and supporting ingredients with oil, salt, pepper, and flavorings. Spread in a single, even layer; use a second pan if crowded. Bake with visual cues: Bake for 20\u201335 minutes, turning or rotating once after about 15 minutes. Lower the heat if edges darken before the center is ready; add 5-minute increments if still firm. The center should be set or tender and the edges lightly browned. Rest and finish: Remove the pan to a heat-safe surface. Rest 5 minutes so juices or structure settle, then add any fresh finishing ingredient and serve.\nScene/backdrop: light oak kitchen table, simple home-kitchen setting, no unrelated side dishes\nSubject: the plausible finished dish exactly as produced by the recipe, with the correct protein or plant-based base, cooking method, shape, texture, sauce, topping, and garnish\nStyle/medium: realistic editorial food photography with believable home-cooked texture\nComposition/framing: landscape 3:2, slightly overhead view, full main dish visible with safe crop area for responsive cards\nLighting/mood: soft natural window light, appetizing but honest, gentle shadows\nConstraints: include only ingredients and garnishes supported by the recipe; no substitutions, no extra protein, no text, logos, watermark, collage, hands, packaging, impossible shapes, or misleading restaurant-perfect styling",
      "output_filename": "weeknight-bean-enchilada-casserole.webp",
      "creation_date": "2026-10-13",
      "visual_match_review_status": "Passed labeled contact-sheet review against recipe title, ingredients, and method on 2026-10-13.",
      "duplicate_check_status": "Passed exact SHA-256 and 256-bit perceptual difference-hash checks; no exact or near duplicate primary image detected.",
      "sha256": "45e91dc562a7a4826932b88ad885343c694f4373fba414c1d6228cc43ec007c6",
      "width": 1200,
      "height": 800,
      "format": "WebP",
      "responsive_crop_review_status": "Passed 3:2 card and full-width recipe-cover crop review."
    },
    {
      "recipe_title": "Cauliflower chickpea curry",
      "recipe_url": "/recipes/cauliflower-chickpea-curry/",
      "old_image": "/assets/root-vegetables.jpg",
      "new_image": "/assets/cauliflower-chickpea-curry.webp",
      "status": "AI-generated",
      "source_page": null,
      "download_url": null,
      "creator": null,
      "license": null,
      "license_link": null,
      "commercial_use_note": "Generated specifically for The Kitchen Table; no third-party stock photograph is assigned as this recipe primary image.",
      "generation_prompt": "Use case: photorealistic-natural\nAsset type: primary recipe image for The Kitchen Table website\nPrimary request: Create one realistic, appetizing finished serving of the recipe \u201cCauliflower chickpea curry.\u201d\nRecipe description: Cauliflower chickpea curry uses ordinary grocery-store ingredients and teaches a clear simmer workflow with visual cues for beginners.\nExact listed ingredients: 1 medium cauliflower, florets; 1 can chickpeas, 240 g drained; 1 tbsp olive oil; 1  medium onion, diced; 2  garlic cloves, minced; 750 ml low-sodium stock or water, as appropriate; 0.5 tsp fine salt; 2 tbsp tomato, coconut, and curry spices\nComplete preparation method: Prepare the pot: Read the full recipe. Clear the counter, wash produce, and measure every ingredient. Prepare the named main and supporting ingredients as listed; keep raw meat or seafood, its board, and its utensils separate from ready-to-eat food. Choose a heavy pot with room for gentle bubbling. Start the flavor base: Heat oil over medium. Cook onion for 6\u20138 minutes until soft, then garlic for 30 seconds. If either browns too fast, lower the heat and add a spoonful of water. Simmer steadily: Add the main ingredient, supporting ingredient, stock, salt, and flavorings. Bring just to a boil, then lower to a gentle simmer for 20\u201335 minutes, stirring every 5 minutes. Continue until the pieces are tender and the liquid lightly coats a spoon. Adjust the texture: If thin, simmer uncovered 5 minutes; if too thick, add warm water 60 ml at a time. Taste a safe spoonful, adjust gradually, and rest 5 minutes before serving.\nScene/backdrop: soft gray stone counter, simple home-kitchen setting, no unrelated side dishes\nSubject: the plausible finished dish exactly as produced by the recipe, with the correct protein or plant-based base, cooking method, shape, texture, sauce, topping, and garnish\nStyle/medium: realistic editorial food photography with believable home-cooked texture\nComposition/framing: landscape 3:2, natural eye-level table view, full main dish visible with safe crop area for responsive cards\nLighting/mood: soft natural window light, appetizing but honest, gentle shadows\nConstraints: include only ingredients and garnishes supported by the recipe; no substitutions, no extra protein, no text, logos, watermark, collage, hands, packaging, impossible shapes, or misleading restaurant-perfect styling",
      "output_filename": "cauliflower-chickpea-curry.webp",
      "creation_date": "2026-10-13",
      "visual_match_review_status": "Passed labeled contact-sheet review against recipe title, ingredients, and method on 2026-10-13.",
      "duplicate_check_status": "Passed exact SHA-256 and 256-bit perceptual difference-hash checks; no exact or near duplicate primary image detected.",
      "sha256": "9bba6f562d9bdffb333e1e425d311818a0e99fb478fc367d817c94668e68c4f0",
      "width": 1200,
      "height": 800,
      "format": "WebP",
      "responsive_crop_review_status": "Passed 3:2 card and full-width recipe-cover crop review."
    },
    {
      "recipe_title": "Oat and black bean veggie burgers",
      "recipe_url": "/recipes/oat-and-black-bean-veggie-burgers/",
      "old_image": "/assets/eggs.jpg",
      "new_image": "/assets/oat-and-black-bean-veggie-burgers.webp",
      "status": "AI-generated",
      "source_page": null,
      "download_url": null,
      "creator": null,
      "license": null,
      "license_link": null,
      "commercial_use_note": "Generated specifically for The Kitchen Table; no third-party stock photograph is assigned as this recipe primary image.",
      "generation_prompt": "Use case: photorealistic-natural\nAsset type: primary recipe image for The Kitchen Table website\nPrimary request: Create one realistic, appetizing finished serving of the recipe \u201cOat and black bean veggie burgers.\u201d\nRecipe description: Oat and black bean veggie burgers uses ordinary grocery-store ingredients and teaches a clear skillet workflow with visual cues for beginners.\nExact listed ingredients: 1 can black beans, 240 g drained; 100 g rolled oats; 1 tbsp olive oil or other neutral cooking oil; 1  medium onion, prepared as directed; 2  garlic cloves, minced; 0.5 tsp fine salt; 0.25 tsp black pepper; 2 tbsp onion, cumin, and paprika\nComplete preparation method: Set up the pan: Read the full recipe. Clear the counter, wash produce, and measure every ingredient. Prepare the named main and supporting ingredients as listed; keep raw meat or seafood, its board, and its utensils separate from ready-to-eat food. Put a wide skillet over medium heat for 2 minutes, then add the measured oil. Build color: Add the main ingredient in one layer. Cook 4\u20136 minutes without constant stirring, then turn. If it smokes heavily, lower the heat; if it stays pale and wet, increase heat slightly or work in batches. Add the supporting ingredients: Add the supporting ingredient, onion, garlic, and flavorings. Cook 5\u201310 minutes, stirring every minute or two, until aromatic and evenly cooked. Continue until 160\u00b0F / 71\u00b0C for a mixed egg dish, with no liquid egg remaining. Balance and serve: Take the pan off the heat. Taste a safe sample, then adjust salt or acidity in small amounts. Rest 3 minutes before serving.\nScene/backdrop: cream linen over a wood table, simple home-kitchen setting, no unrelated side dishes\nSubject: the plausible finished dish exactly as produced by the recipe, with the correct protein or plant-based base, cooking method, shape, texture, sauce, topping, and garnish\nStyle/medium: realistic editorial food photography with believable home-cooked texture\nComposition/framing: landscape 3:2, 45-degree editorial view, full main dish visible with safe crop area for responsive cards\nLighting/mood: soft natural window light, appetizing but honest, gentle shadows\nConstraints: include only ingredients and garnishes supported by the recipe; no substitutions, no extra protein, no text, logos, watermark, collage, hands, packaging, impossible shapes, or misleading restaurant-perfect styling",
      "output_filename": "oat-and-black-bean-veggie-burgers.webp",
      "creation_date": "2026-10-13",
      "visual_match_review_status": "Passed labeled contact-sheet review against recipe title, ingredients, and method on 2026-10-13.",
      "duplicate_check_status": "Passed exact SHA-256 and 256-bit perceptual difference-hash checks; no exact or near duplicate primary image detected.",
      "sha256": "64beed8d8525dce1516c056002b697f8068b346fb6c6009249c61d1031d9a17c",
      "width": 1200,
      "height": 800,
      "format": "WebP",
      "responsive_crop_review_status": "Passed 3:2 card and full-width recipe-cover crop review."
    },
    {
      "recipe_title": "Spinach feta dinner frittata",
      "recipe_url": "/recipes/spinach-feta-dinner-frittata/",
      "old_image": "/assets/root-vegetables.jpg",
      "new_image": "/assets/spinach-feta-dinner-frittata.webp",
      "status": "AI-generated",
      "source_page": null,
      "download_url": null,
      "creator": null,
      "license": null,
      "license_link": null,
      "commercial_use_note": "Generated specifically for The Kitchen Table; no third-party stock photograph is assigned as this recipe primary image.",
      "generation_prompt": "Use case: photorealistic-natural\nAsset type: primary recipe image for The Kitchen Table website\nPrimary request: Create one realistic, appetizing finished serving of the recipe \u201cSpinach feta dinner frittata.\u201d\nRecipe description: Spinach feta dinner frittata uses ordinary grocery-store ingredients and teaches a clear bake workflow with visual cues for beginners.\nExact listed ingredients: 8 large eggs; 150 g baby spinach; 1 tbsp olive oil or other neutral cooking oil; 1  medium onion, prepared as directed; 2  garlic cloves, minced; 0.5 tsp fine salt; 0.25 tsp black pepper; 2 tbsp feta and roasted pepper\nComplete preparation method: Prepare and preheat: Read the full recipe. Clear the counter, wash produce, and measure every ingredient. Prepare the named main and supporting ingredients as listed; keep raw meat or seafood, its board, and its utensils separate from ready-to-eat food. Heat the oven to 400\u00b0F / 200\u00b0C unless the ingredient package specifies otherwise. Arrange a rack in the center and prepare the stated pan. Season evenly: Combine the main and supporting ingredients with oil, salt, pepper, and flavorings. Spread in a single, even layer; use a second pan if crowded. Bake with visual cues: Bake for 20\u201335 minutes, turning or rotating once after about 15 minutes. Lower the heat if edges darken before the center is ready; add 5-minute increments if still firm. Check 160\u00b0F / 71\u00b0C for a mixed egg dish, with no liquid egg remaining. Rest and finish: Remove the pan to a heat-safe surface. Rest 5 minutes so juices or structure settle, then add any fresh finishing ingredient and serve.\nScene/backdrop: dark walnut table, simple home-kitchen setting, no unrelated side dishes\nSubject: the plausible finished dish exactly as produced by the recipe, with the correct protein or plant-based base, cooking method, shape, texture, sauce, topping, and garnish\nStyle/medium: realistic editorial food photography with believable home-cooked texture\nComposition/framing: landscape 3:2, top-down view, full main dish visible with safe crop area for responsive cards\nLighting/mood: soft natural window light, appetizing but honest, gentle shadows\nConstraints: include only ingredients and garnishes supported by the recipe; no substitutions, no extra protein, no text, logos, watermark, collage, hands, packaging, impossible shapes, or misleading restaurant-perfect styling",
      "output_filename": "spinach-feta-dinner-frittata.webp",
      "creation_date": "2026-10-13",
      "visual_match_review_status": "Passed labeled contact-sheet review against recipe title, ingredients, and method on 2026-10-13.",
      "duplicate_check_status": "Passed exact SHA-256 and 256-bit perceptual difference-hash checks; no exact or near duplicate primary image detected.",
      "sha256": "6c7bcc683be8fdb213fb99ab16370ae9a0644c5f45cdcf7d26f2712687362c5a",
      "width": 1200,
      "height": 800,
      "format": "WebP",
      "responsive_crop_review_status": "Passed 3:2 card and full-width recipe-cover crop review."
    },
    {
      "recipe_title": "Eggplant chickpea tomato stew",
      "recipe_url": "/recipes/eggplant-chickpea-tomato-stew/",
      "old_image": "/assets/eggs.jpg",
      "new_image": "/assets/eggplant-chickpea-tomato-stew.webp",
      "status": "AI-generated",
      "source_page": null,
      "download_url": null,
      "creator": null,
      "license": null,
      "license_link": null,
      "commercial_use_note": "Generated specifically for The Kitchen Table; no third-party stock photograph is assigned as this recipe primary image.",
      "generation_prompt": "Use case: photorealistic-natural\nAsset type: primary recipe image for The Kitchen Table website\nPrimary request: Create one realistic, appetizing finished serving of the recipe \u201cEggplant chickpea tomato stew.\u201d\nRecipe description: Eggplant chickpea tomato stew uses ordinary grocery-store ingredients and teaches a clear simmer workflow with visual cues for beginners.\nExact listed ingredients: 1 large eggplant, 2 cm cubes; 1 can chickpeas, 240 g drained; 1 tbsp olive oil; 1  medium onion, diced; 2  garlic cloves, minced; 750 ml low-sodium stock or water, as appropriate; 0.5 tsp fine salt; 2 tbsp tomato, cumin, and lemon\nComplete preparation method: Prepare the pot: Read the full recipe. Clear the counter, wash produce, and measure every ingredient. Prepare the named main and supporting ingredients as listed; keep raw meat or seafood, its board, and its utensils separate from ready-to-eat food. Choose a heavy pot with room for gentle bubbling. Start the flavor base: Heat oil over medium. Cook onion for 6\u20138 minutes until soft, then garlic for 30 seconds. If either browns too fast, lower the heat and add a spoonful of water. Simmer steadily: Add the main ingredient, supporting ingredient, stock, salt, and flavorings. Bring just to a boil, then lower to a gentle simmer for 20\u201335 minutes, stirring every 5 minutes. For safety, verify 160\u00b0F / 71\u00b0C for a mixed egg dish, with no liquid egg remaining. Adjust the texture: If thin, simmer uncovered 5 minutes; if too thick, add warm water 60 ml at a time. Taste a safe spoonful, adjust gradually, and rest 5 minutes before serving.\nScene/backdrop: warm pale stone table, simple home-kitchen setting, no unrelated side dishes\nSubject: the plausible finished dish exactly as produced by the recipe, with the correct protein or plant-based base, cooking method, shape, texture, sauce, topping, and garnish\nStyle/medium: realistic editorial food photography with believable home-cooked texture\nComposition/framing: landscape 3:2, three-quarter close view, full main dish visible with safe crop area for responsive cards\nLighting/mood: soft natural window light, appetizing but honest, gentle shadows\nConstraints: include only ingredients and garnishes supported by the recipe; no substitutions, no extra protein, no text, logos, watermark, collage, hands, packaging, impossible shapes, or misleading restaurant-perfect styling",
      "output_filename": "eggplant-chickpea-tomato-stew.webp",
      "creation_date": "2026-10-13",
      "visual_match_review_status": "Passed labeled contact-sheet review against recipe title, ingredients, and method on 2026-10-13.",
      "duplicate_check_status": "Passed exact SHA-256 and 256-bit perceptual difference-hash checks; no exact or near duplicate primary image detected.",
      "sha256": "136954d87c977450143cb534bdb7fb79596ae7e73bf1fdab69353761d0947c8e",
      "width": 1200,
      "height": 800,
      "format": "WebP",
      "responsive_crop_review_status": "Passed 3:2 card and full-width recipe-cover crop review."
    },
    {
      "recipe_title": "Mushroom barley dinner bowls",
      "recipe_url": "/recipes/mushroom-barley-dinner-bowls/",
      "old_image": "/assets/root-vegetables.jpg",
      "new_image": "/assets/mushroom-barley-dinner-bowls.webp",
      "status": "AI-generated",
      "source_page": null,
      "download_url": null,
      "creator": null,
      "license": null,
      "license_link": null,
      "commercial_use_note": "Generated specifically for The Kitchen Table; no third-party stock photograph is assigned as this recipe primary image.",
      "generation_prompt": "Use case: photorealistic-natural\nAsset type: primary recipe image for The Kitchen Table website\nPrimary request: Create one realistic, appetizing finished serving of the recipe \u201cMushroom barley dinner bowls.\u201d\nRecipe description: Mushroom barley dinner bowls uses ordinary grocery-store ingredients and teaches a clear simmer workflow with visual cues for beginners.\nExact listed ingredients: 250 g pearl barley; 400 g mushrooms, sliced; 1 tbsp olive oil; 1  medium onion, diced; 2  garlic cloves, minced; 750 ml low-sodium stock or water, as appropriate; 0.5 tsp fine salt; 2 tbsp spinach and thyme\nComplete preparation method: Prepare the pot: Read the full recipe. Clear the counter, wash produce, and measure every ingredient. Prepare the named main and supporting ingredients as listed; keep raw meat or seafood, its board, and its utensils separate from ready-to-eat food. Choose a heavy pot with room for gentle bubbling. Start the flavor base: Heat oil over medium. Cook onion for 6\u20138 minutes until soft, then garlic for 30 seconds. If either browns too fast, lower the heat and add a spoonful of water. Simmer steadily: Add the main ingredient, supporting ingredient, stock, salt, and flavorings. Bring just to a boil, then lower to a gentle simmer for 20\u201335 minutes, stirring every 5 minutes. Continue until the pieces are tender and the liquid lightly coats a spoon. Adjust the texture: If thin, simmer uncovered 5 minutes; if too thick, add warm water 60 ml at a time. Taste a safe spoonful, adjust gradually, and rest 5 minutes before serving.\nScene/backdrop: light oak kitchen table, simple home-kitchen setting, no unrelated side dishes\nSubject: the plausible finished dish exactly as produced by the recipe, with the correct protein or plant-based base, cooking method, shape, texture, sauce, topping, and garnish\nStyle/medium: realistic editorial food photography with believable home-cooked texture\nComposition/framing: landscape 3:2, slightly overhead view, full main dish visible with safe crop area for responsive cards\nLighting/mood: soft natural window light, appetizing but honest, gentle shadows\nConstraints: include only ingredients and garnishes supported by the recipe; no substitutions, no extra protein, no text, logos, watermark, collage, hands, packaging, impossible shapes, or misleading restaurant-perfect styling",
      "output_filename": "mushroom-barley-dinner-bowls.webp",
      "creation_date": "2026-10-13",
      "visual_match_review_status": "Passed labeled contact-sheet review against recipe title, ingredients, and method on 2026-10-13.",
      "duplicate_check_status": "Passed exact SHA-256 and 256-bit perceptual difference-hash checks; no exact or near duplicate primary image detected.",
      "sha256": "0cf0fca7d2a2deacbfdec2972f4e7948dfa2acd327311bfeb578ad6ec8b485ad",
      "width": 1200,
      "height": 800,
      "format": "WebP",
      "responsive_crop_review_status": "Passed 3:2 card and full-width recipe-cover crop review."
    },
    {
      "recipe_title": "Broccoli cheddar stuffed potatoes",
      "recipe_url": "/recipes/broccoli-cheddar-stuffed-potatoes/",
      "old_image": "/assets/root-vegetables.jpg",
      "new_image": "/assets/broccoli-cheddar-stuffed-potatoes.webp",
      "status": "AI-generated",
      "source_page": null,
      "download_url": null,
      "creator": null,
      "license": null,
      "license_link": null,
      "commercial_use_note": "Generated specifically for The Kitchen Table; no third-party stock photograph is assigned as this recipe primary image.",
      "generation_prompt": "Use case: photorealistic-natural\nAsset type: primary recipe image for The Kitchen Table website\nPrimary request: Create one realistic, appetizing finished serving of the recipe \u201cBroccoli cheddar stuffed potatoes.\u201d\nRecipe description: Broccoli cheddar stuffed potatoes uses ordinary grocery-store ingredients and teaches a clear bake workflow with visual cues for beginners.\nExact listed ingredients: 4 large baking potatoes; 350 g broccoli florets; 1 tbsp olive oil or other neutral cooking oil; 1  medium onion, prepared as directed; 2  garlic cloves, minced; 0.5 tsp fine salt; 0.25 tsp black pepper; 2 tbsp cheddar and yogurt\nComplete preparation method: Prepare and preheat: Read the full recipe. Clear the counter, wash produce, and measure every ingredient. Prepare the named main and supporting ingredients as listed; keep raw meat or seafood, its board, and its utensils separate from ready-to-eat food. Heat the oven to 400\u00b0F / 200\u00b0C unless the ingredient package specifies otherwise. Arrange a rack in the center and prepare the stated pan. Season evenly: Combine the main and supporting ingredients with oil, salt, pepper, and flavorings. Spread in a single, even layer; use a second pan if crowded. Bake with visual cues: Bake for 20\u201335 minutes, turning or rotating once after about 15 minutes. Lower the heat if edges darken before the center is ready; add 5-minute increments if still firm. The center should be set or tender and the edges lightly browned. Rest and finish: Remove the pan to a heat-safe surface. Rest 5 minutes so juices or structure settle, then add any fresh finishing ingredient and serve.\nScene/backdrop: soft gray stone counter, simple home-kitchen setting, no unrelated side dishes\nSubject: the plausible finished dish exactly as produced by the recipe, with the correct protein or plant-based base, cooking method, shape, texture, sauce, topping, and garnish\nStyle/medium: realistic editorial food photography with believable home-cooked texture\nComposition/framing: landscape 3:2, natural eye-level table view, full main dish visible with safe crop area for responsive cards\nLighting/mood: soft natural window light, appetizing but honest, gentle shadows\nConstraints: include only ingredients and garnishes supported by the recipe; no substitutions, no extra protein, no text, logos, watermark, collage, hands, packaging, impossible shapes, or misleading restaurant-perfect styling",
      "output_filename": "broccoli-cheddar-stuffed-potatoes.webp",
      "creation_date": "2026-10-13",
      "visual_match_review_status": "Passed labeled contact-sheet review against recipe title, ingredients, and method on 2026-10-13.",
      "duplicate_check_status": "Passed exact SHA-256 and 256-bit perceptual difference-hash checks; no exact or near duplicate primary image detected.",
      "sha256": "a869445b63ec51ef8853b89c20a52953cf20a24fcc826593c31839d997503993",
      "width": 1200,
      "height": 800,
      "format": "WebP",
      "responsive_crop_review_status": "Passed 3:2 card and full-width recipe-cover crop review."
    },
    {
      "recipe_title": "Lemon pea spaghetti",
      "recipe_url": "/recipes/lemon-pea-spaghetti/",
      "old_image": "/assets/root-vegetables.jpg",
      "new_image": "/assets/lemon-pea-spaghetti.webp",
      "status": "AI-generated",
      "source_page": null,
      "download_url": null,
      "creator": null,
      "license": null,
      "license_link": null,
      "commercial_use_note": "Generated specifically for The Kitchen Table; no third-party stock photograph is assigned as this recipe primary image.",
      "generation_prompt": "Use case: photorealistic-natural\nAsset type: primary recipe image for The Kitchen Table website\nPrimary request: Create one realistic, appetizing finished serving of the recipe \u201cLemon pea spaghetti.\u201d\nRecipe description: Lemon pea spaghetti uses ordinary grocery-store ingredients and teaches a clear pasta workflow with visual cues for beginners.\nExact listed ingredients: 350 g dried spaghetti; 250 g frozen peas; 1 tbsp olive oil; 2  garlic cloves, minced; 250 ml low-sodium cooking liquid or reserved pasta water; 0.5 tsp fine salt; 2 tbsp lemon, garlic, and vegetarian Parmesan-style hard cheese\nComplete preparation method: Organize the work: Read the full recipe. Clear the counter, wash produce, and measure every ingredient. Prepare the named main and supporting ingredients as listed; keep raw meat or seafood, its board, and its utensils separate from ready-to-eat food. Bring a large pot of water to a strong boil and keep a mug beside the stove for cooking water. Cook the starch: Salt the boiling water lightly and cook the pasta or noodles to the package\u2019s lower time estimate. Stir during the first minute. Reserve 250 ml cooking water, then drain. Build the sauce: Heat oil over medium. Cook the supporting ingredient 5\u20138 minutes, then garlic for 30 seconds. Add flavorings and enough cooking liquid to make a loose sauce; simmer 2 minutes. Finish together: Add the drained starch and toss over low heat for 1\u20132 minutes. Add reserved water a tablespoon at a time until glossy. If the noodles soften too quickly, remove the pan from heat immediately.\nScene/backdrop: cream linen over a wood table, simple home-kitchen setting, no unrelated side dishes\nSubject: the plausible finished dish exactly as produced by the recipe, with the correct protein or plant-based base, cooking method, shape, texture, sauce, topping, and garnish\nStyle/medium: realistic editorial food photography with believable home-cooked texture\nComposition/framing: landscape 3:2, 45-degree editorial view, full main dish visible with safe crop area for responsive cards\nLighting/mood: soft natural window light, appetizing but honest, gentle shadows\nConstraints: include only ingredients and garnishes supported by the recipe; no substitutions, no extra protein, no text, logos, watermark, collage, hands, packaging, impossible shapes, or misleading restaurant-perfect styling",
      "output_filename": "lemon-pea-spaghetti.webp",
      "creation_date": "2026-10-13",
      "visual_match_review_status": "Passed labeled contact-sheet review against recipe title, ingredients, and method on 2026-10-13.",
      "duplicate_check_status": "Passed exact SHA-256 and 256-bit perceptual difference-hash checks; no exact or near duplicate primary image detected.",
      "sha256": "dc496c7efa18a3da3436ad14275e3ce7ca15e02f09a7a640d8477efcbb77921d",
      "width": 1200,
      "height": 800,
      "format": "WebP",
      "responsive_crop_review_status": "Passed 3:2 card and full-width recipe-cover crop review."
    },
    {
      "recipe_title": "One-pot tomato basil rice",
      "recipe_url": "/recipes/one-pot-tomato-basil-rice/",
      "old_image": "/assets/rice.jpg",
      "new_image": "/assets/one-pot-tomato-basil-rice.webp",
      "status": "AI-generated",
      "source_page": null,
      "download_url": null,
      "creator": null,
      "license": null,
      "license_link": null,
      "commercial_use_note": "Generated specifically for The Kitchen Table; no third-party stock photograph is assigned as this recipe primary image.",
      "generation_prompt": "Use case: photorealistic-natural\nAsset type: primary recipe image for The Kitchen Table website\nPrimary request: Create one realistic, appetizing finished serving of the recipe \u201cOne-pot tomato basil rice.\u201d\nRecipe description: One-pot tomato basil rice uses ordinary grocery-store ingredients and teaches a clear simmer workflow with visual cues for beginners.\nExact listed ingredients: 300 g long-grain rice; 400 g canned tomatoes; 1 tbsp olive oil; 1  medium onion, diced; 2  garlic cloves, minced; 750 ml low-sodium stock or water, as appropriate; 0.5 tsp fine salt; 2 tbsp basil, garlic, and stock\nComplete preparation method: Prepare the pot: Read the full recipe. Clear the counter, wash produce, and measure every ingredient. Prepare the named main and supporting ingredients as listed; keep raw meat or seafood, its board, and its utensils separate from ready-to-eat food. Choose a heavy pot with room for gentle bubbling. Start the flavor base: Heat oil over medium. Cook onion for 6\u20138 minutes until soft, then garlic for 30 seconds. If either browns too fast, lower the heat and add a spoonful of water. Simmer steadily: Add the main ingredient, supporting ingredient, stock, salt, and flavorings. Bring just to a boil, then lower to a gentle simmer for 20\u201335 minutes, stirring every 5 minutes. Continue until the pieces are tender and the liquid lightly coats a spoon. Adjust the texture: If thin, simmer uncovered 5 minutes; if too thick, add warm water 60 ml at a time. Taste a safe spoonful, adjust gradually, and rest 5 minutes before serving.\nScene/backdrop: dark walnut table, simple home-kitchen setting, no unrelated side dishes\nSubject: the plausible finished dish exactly as produced by the recipe, with the correct protein or plant-based base, cooking method, shape, texture, sauce, topping, and garnish\nStyle/medium: realistic editorial food photography with believable home-cooked texture\nComposition/framing: landscape 3:2, top-down view, full main dish visible with safe crop area for responsive cards\nLighting/mood: soft natural window light, appetizing but honest, gentle shadows\nConstraints: include only ingredients and garnishes supported by the recipe; no substitutions, no extra protein, no text, logos, watermark, collage, hands, packaging, impossible shapes, or misleading restaurant-perfect styling",
      "output_filename": "one-pot-tomato-basil-rice.webp",
      "creation_date": "2026-10-13",
      "visual_match_review_status": "Passed labeled contact-sheet review against recipe title, ingredients, and method on 2026-10-13.",
      "duplicate_check_status": "Passed exact SHA-256 and 256-bit perceptual difference-hash checks; no exact or near duplicate primary image detected.",
      "sha256": "2f901e1373208771f94d1ad930c715afc8d06d721bab6169660f26d4d0b40c07",
      "width": 1200,
      "height": 800,
      "format": "WebP",
      "responsive_crop_review_status": "Passed 3:2 card and full-width recipe-cover crop review."
    },
    {
      "recipe_title": "Pesto tortellini with green beans",
      "recipe_url": "/recipes/pesto-tortellini-with-green-beans/",
      "old_image": "/assets/root-vegetables.jpg",
      "new_image": "/assets/pesto-tortellini-with-green-beans.webp",
      "status": "AI-generated",
      "source_page": null,
      "download_url": null,
      "creator": null,
      "license": null,
      "license_link": null,
      "commercial_use_note": "Generated specifically for The Kitchen Table; no third-party stock photograph is assigned as this recipe primary image.",
      "generation_prompt": "Use case: photorealistic-natural\nAsset type: primary recipe image for The Kitchen Table website\nPrimary request: Create one realistic, appetizing finished serving of the recipe \u201cPesto tortellini with green beans.\u201d\nRecipe description: Pesto tortellini with green beans uses ordinary grocery-store ingredients and teaches a clear pasta workflow with visual cues for beginners.\nExact listed ingredients: 500 g refrigerated cheese tortellini; 300 g green beans; 1 tbsp olive oil; 2  garlic cloves, minced; 250 ml low-sodium cooking liquid or reserved pasta water; 0.5 tsp fine salt; 2 tbsp pesto and lemon\nComplete preparation method: Organize the work: Read the full recipe. Clear the counter, wash produce, and measure every ingredient. Prepare the named main and supporting ingredients as listed; keep raw meat or seafood, its board, and its utensils separate from ready-to-eat food. Bring a large pot of water to a strong boil and keep a mug beside the stove for cooking water. Cook the starch: Salt the boiling water lightly and cook the pasta or noodles to the package\u2019s lower time estimate. Stir during the first minute. Reserve 250 ml cooking water, then drain. Build the sauce: Heat oil over medium. Cook the supporting ingredient 5\u20138 minutes, then garlic for 30 seconds. Add flavorings and enough cooking liquid to make a loose sauce; simmer 2 minutes. Finish together: Add the drained starch and toss over low heat for 1\u20132 minutes. Add reserved water a tablespoon at a time until glossy. If the noodles soften too quickly, remove the pan from heat immediately.\nScene/backdrop: warm pale stone table, simple home-kitchen setting, no unrelated side dishes\nSubject: the plausible finished dish exactly as produced by the recipe, with the correct protein or plant-based base, cooking method, shape, texture, sauce, topping, and garnish\nStyle/medium: realistic editorial food photography with believable home-cooked texture\nComposition/framing: landscape 3:2, three-quarter close view, full main dish visible with safe crop area for responsive cards\nLighting/mood: soft natural window light, appetizing but honest, gentle shadows\nConstraints: include only ingredients and garnishes supported by the recipe; no substitutions, no extra protein, no text, logos, watermark, collage, hands, packaging, impossible shapes, or misleading restaurant-perfect styling",
      "output_filename": "pesto-tortellini-with-green-beans.webp",
      "creation_date": "2026-10-13",
      "visual_match_review_status": "Passed labeled contact-sheet review against recipe title, ingredients, and method on 2026-10-13.",
      "duplicate_check_status": "Passed exact SHA-256 and 256-bit perceptual difference-hash checks; no exact or near duplicate primary image detected.",
      "sha256": "9e48818ab8dbdf8f57fd956d26c5cbf4063fef81fc6518aff0d9714d12918971",
      "width": 1200,
      "height": 800,
      "format": "WebP",
      "responsive_crop_review_status": "Passed 3:2 card and full-width recipe-cover crop review."
    },
    {
      "recipe_title": "Coconut lime rice with vegetables",
      "recipe_url": "/recipes/coconut-lime-rice-with-vegetables/",
      "old_image": "/assets/rice.jpg",
      "new_image": "/assets/coconut-lime-rice-with-vegetables.webp",
      "status": "AI-generated",
      "source_page": null,
      "download_url": null,
      "creator": null,
      "license": null,
      "license_link": null,
      "commercial_use_note": "Generated specifically for The Kitchen Table; no third-party stock photograph is assigned as this recipe primary image.",
      "generation_prompt": "Use case: photorealistic-natural\nAsset type: primary recipe image for The Kitchen Table website\nPrimary request: Create one realistic, appetizing finished serving of the recipe \u201cCoconut lime rice with vegetables.\u201d\nRecipe description: Coconut lime rice with vegetables uses ordinary grocery-store ingredients and teaches a clear simmer workflow with visual cues for beginners.\nExact listed ingredients: 300 g jasmine rice; 400 ml coconut milk; 1 tbsp olive oil; 1  medium onion, diced; 2  garlic cloves, minced; 750 ml low-sodium stock or water, as appropriate; 0.5 tsp fine salt; 2 tbsp mixed vegetables and lime\nComplete preparation method: Prepare the pot: Read the full recipe. Clear the counter, wash produce, and measure every ingredient. Prepare the named main and supporting ingredients as listed; keep raw meat or seafood, its board, and its utensils separate from ready-to-eat food. Choose a heavy pot with room for gentle bubbling. Start the flavor base: Heat oil over medium. Cook onion for 6\u20138 minutes until soft, then garlic for 30 seconds. If either browns too fast, lower the heat and add a spoonful of water. Simmer steadily: Add the main ingredient, supporting ingredient, stock, salt, and flavorings. Bring just to a boil, then lower to a gentle simmer for 20\u201335 minutes, stirring every 5 minutes. Continue until the pieces are tender and the liquid lightly coats a spoon. Adjust the texture: If thin, simmer uncovered 5 minutes; if too thick, add warm water 60 ml at a time. Taste a safe spoonful, adjust gradually, and rest 5 minutes before serving.\nScene/backdrop: light oak kitchen table, simple home-kitchen setting, no unrelated side dishes\nSubject: the plausible finished dish exactly as produced by the recipe, with the correct protein or plant-based base, cooking method, shape, texture, sauce, topping, and garnish\nStyle/medium: realistic editorial food photography with believable home-cooked texture\nComposition/framing: landscape 3:2, slightly overhead view, full main dish visible with safe crop area for responsive cards\nLighting/mood: soft natural window light, appetizing but honest, gentle shadows\nConstraints: include only ingredients and garnishes supported by the recipe; no substitutions, no extra protein, no text, logos, watermark, collage, hands, packaging, impossible shapes, or misleading restaurant-perfect styling",
      "output_filename": "coconut-lime-rice-with-vegetables.webp",
      "creation_date": "2026-10-13",
      "visual_match_review_status": "Passed labeled contact-sheet review against recipe title, ingredients, and method on 2026-10-13.",
      "duplicate_check_status": "Passed exact SHA-256 and 256-bit perceptual difference-hash checks; no exact or near duplicate primary image detected.",
      "sha256": "79472225ed9b024d2e203fc6c5373b5955b22bb05e8a2bc070d7e97dc76d1c79",
      "width": 1200,
      "height": 800,
      "format": "WebP",
      "responsive_crop_review_status": "Passed 3:2 card and full-width recipe-cover crop review."
    },
    {
      "recipe_title": "Mushroom garlic butter noodles",
      "recipe_url": "/recipes/mushroom-garlic-butter-noodles/",
      "old_image": "/assets/noodles.jpg",
      "new_image": "/assets/mushroom-garlic-butter-noodles.webp",
      "status": "AI-generated",
      "source_page": null,
      "download_url": null,
      "creator": null,
      "license": null,
      "license_link": null,
      "commercial_use_note": "Generated specifically for The Kitchen Table; no third-party stock photograph is assigned as this recipe primary image.",
      "generation_prompt": "Use case: photorealistic-natural\nAsset type: primary recipe image for The Kitchen Table website\nPrimary request: Create one realistic, appetizing finished serving of the recipe \u201cMushroom garlic butter noodles.\u201d\nRecipe description: Mushroom garlic butter noodles uses ordinary grocery-store ingredients and teaches a clear pasta workflow with visual cues for beginners.\nExact listed ingredients: 350 g dried noodles; 400 g mushrooms, sliced; 1 tbsp olive oil; 2  garlic cloves, minced; 250 ml low-sodium cooking liquid or reserved pasta water; 0.5 tsp fine salt; 2 tbsp garlic, butter, and scallions\nComplete preparation method: Organize the work: Read the full recipe. Clear the counter, wash produce, and measure every ingredient. Prepare the named main and supporting ingredients as listed; keep raw meat or seafood, its board, and its utensils separate from ready-to-eat food. Bring a large pot of water to a strong boil and keep a mug beside the stove for cooking water. Cook the starch: Salt the boiling water lightly and cook the pasta or noodles to the package\u2019s lower time estimate. Stir during the first minute. Reserve 250 ml cooking water, then drain. Build the sauce: Heat oil over medium. Cook the supporting ingredient 5\u20138 minutes, then garlic for 30 seconds. Add flavorings and enough cooking liquid to make a loose sauce; simmer 2 minutes. Finish together: Add the drained starch and toss over low heat for 1\u20132 minutes. Add reserved water a tablespoon at a time until glossy. If the noodles soften too quickly, remove the pan from heat immediately.\nScene/backdrop: soft gray stone counter, simple home-kitchen setting, no unrelated side dishes\nSubject: the plausible finished dish exactly as produced by the recipe, with the correct protein or plant-based base, cooking method, shape, texture, sauce, topping, and garnish\nStyle/medium: realistic editorial food photography with believable home-cooked texture\nComposition/framing: landscape 3:2, natural eye-level table view, full main dish visible with safe crop area for responsive cards\nLighting/mood: soft natural window light, appetizing but honest, gentle shadows\nConstraints: include only ingredients and garnishes supported by the recipe; no substitutions, no extra protein, no text, logos, watermark, collage, hands, packaging, impossible shapes, or misleading restaurant-perfect styling",
      "output_filename": "mushroom-garlic-butter-noodles.webp",
      "creation_date": "2026-10-13",
      "visual_match_review_status": "Passed labeled contact-sheet review against recipe title, ingredients, and method on 2026-10-13.",
      "duplicate_check_status": "Passed exact SHA-256 and 256-bit perceptual difference-hash checks; no exact or near duplicate primary image detected.",
      "sha256": "ca503ca8d7046e75e69bc72f932cc380f05f859d180613f2fff573e357206ea9",
      "width": 1200,
      "height": 800,
      "format": "WebP",
      "responsive_crop_review_status": "Passed 3:2 card and full-width recipe-cover crop review."
    },
    {
      "recipe_title": "Weeknight baked ziti",
      "recipe_url": "/recipes/weeknight-baked-ziti/",
      "old_image": "/assets/root-vegetables.jpg",
      "new_image": "/assets/weeknight-baked-ziti.webp",
      "status": "AI-generated",
      "source_page": null,
      "download_url": null,
      "creator": null,
      "license": null,
      "license_link": null,
      "commercial_use_note": "Generated specifically for The Kitchen Table; no third-party stock photograph is assigned as this recipe primary image.",
      "generation_prompt": "Use case: photorealistic-natural\nAsset type: primary recipe image for The Kitchen Table website\nPrimary request: Create one realistic, appetizing finished serving of the recipe \u201cWeeknight baked ziti.\u201d\nRecipe description: Weeknight baked ziti uses ordinary grocery-store ingredients and teaches a clear bake workflow with visual cues for beginners.\nExact listed ingredients: 400 g dried ziti; 700 g tomato sauce; 1 tbsp olive oil or other neutral cooking oil; 1  medium onion, prepared as directed; 2  garlic cloves, minced; 0.5 tsp fine salt; 0.25 tsp black pepper; 2 tbsp ricotta and mozzarella\nComplete preparation method: Prepare and preheat: Read the full recipe. Clear the counter, wash produce, and measure every ingredient. Prepare the named main and supporting ingredients as listed; keep raw meat or seafood, its board, and its utensils separate from ready-to-eat food. Heat the oven to 400\u00b0F / 200\u00b0C unless the ingredient package specifies otherwise. Arrange a rack in the center and prepare the stated pan. Season evenly: Combine the main and supporting ingredients with oil, salt, pepper, and flavorings. Spread in a single, even layer; use a second pan if crowded. Bake with visual cues: Bake for 20\u201335 minutes, turning or rotating once after about 15 minutes. Lower the heat if edges darken before the center is ready; add 5-minute increments if still firm. The center should be set or tender and the edges lightly browned. Rest and finish: Remove the pan to a heat-safe surface. Rest 5 minutes so juices or structure settle, then add any fresh finishing ingredient and serve.\nScene/backdrop: cream linen over a wood table, simple home-kitchen setting, no unrelated side dishes\nSubject: the plausible finished dish exactly as produced by the recipe, with the correct protein or plant-based base, cooking method, shape, texture, sauce, topping, and garnish\nStyle/medium: realistic editorial food photography with believable home-cooked texture\nComposition/framing: landscape 3:2, 45-degree editorial view, full main dish visible with safe crop area for responsive cards\nLighting/mood: soft natural window light, appetizing but honest, gentle shadows\nConstraints: include only ingredients and garnishes supported by the recipe; no substitutions, no extra protein, no text, logos, watermark, collage, hands, packaging, impossible shapes, or misleading restaurant-perfect styling",
      "output_filename": "weeknight-baked-ziti.webp",
      "creation_date": "2026-10-13",
      "visual_match_review_status": "Passed labeled contact-sheet review against recipe title, ingredients, and method on 2026-10-13.",
      "duplicate_check_status": "Passed exact SHA-256 and 256-bit perceptual difference-hash checks; no exact or near duplicate primary image detected.",
      "sha256": "37ac673410443289790e21784e55e25bf5d7b64716bc9d7c129e2ee521452b09",
      "width": 1200,
      "height": 800,
      "format": "WebP",
      "responsive_crop_review_status": "Passed 3:2 card and full-width recipe-cover crop review."
    },
    {
      "recipe_title": "Herbed rice pilaf with peas",
      "recipe_url": "/recipes/herbed-rice-pilaf-with-peas/",
      "old_image": "/assets/rice.jpg",
      "new_image": "/assets/herbed-rice-pilaf-with-peas.webp",
      "status": "AI-generated",
      "source_page": null,
      "download_url": null,
      "creator": null,
      "license": null,
      "license_link": null,
      "commercial_use_note": "Generated specifically for The Kitchen Table; no third-party stock photograph is assigned as this recipe primary image.",
      "generation_prompt": "Use case: photorealistic-natural\nAsset type: primary recipe image for The Kitchen Table website\nPrimary request: Create one realistic, appetizing finished serving of the recipe \u201cHerbed rice pilaf with peas.\u201d\nRecipe description: Herbed rice pilaf with peas uses ordinary grocery-store ingredients and teaches a clear simmer workflow with visual cues for beginners.\nExact listed ingredients: 300 g long-grain rice; 200 g frozen peas; 1 tbsp olive oil; 1  medium onion, diced; 2  garlic cloves, minced; 750 ml low-sodium stock or water, as appropriate; 0.5 tsp fine salt; 2 tbsp onion, parsley, and stock\nComplete preparation method: Prepare the pot: Read the full recipe. Clear the counter, wash produce, and measure every ingredient. Prepare the named main and supporting ingredients as listed; keep raw meat or seafood, its board, and its utensils separate from ready-to-eat food. Choose a heavy pot with room for gentle bubbling. Start the flavor base: Heat oil over medium. Cook onion for 6\u20138 minutes until soft, then garlic for 30 seconds. If either browns too fast, lower the heat and add a spoonful of water. Simmer steadily: Add the main ingredient, supporting ingredient, stock, salt, and flavorings. Bring just to a boil, then lower to a gentle simmer for 20\u201335 minutes, stirring every 5 minutes. Continue until the pieces are tender and the liquid lightly coats a spoon. Adjust the texture: If thin, simmer uncovered 5 minutes; if too thick, add warm water 60 ml at a time. Taste a safe spoonful, adjust gradually, and rest 5 minutes before serving.\nScene/backdrop: dark walnut table, simple home-kitchen setting, no unrelated side dishes\nSubject: the plausible finished dish exactly as produced by the recipe, with the correct protein or plant-based base, cooking method, shape, texture, sauce, topping, and garnish\nStyle/medium: realistic editorial food photography with believable home-cooked texture\nComposition/framing: landscape 3:2, top-down view, full main dish visible with safe crop area for responsive cards\nLighting/mood: soft natural window light, appetizing but honest, gentle shadows\nConstraints: include only ingredients and garnishes supported by the recipe; no substitutions, no extra protein, no text, logos, watermark, collage, hands, packaging, impossible shapes, or misleading restaurant-perfect styling",
      "output_filename": "herbed-rice-pilaf-with-peas.webp",
      "creation_date": "2026-10-13",
      "visual_match_review_status": "Passed labeled contact-sheet review against recipe title, ingredients, and method on 2026-10-13.",
      "duplicate_check_status": "Passed exact SHA-256 and 256-bit perceptual difference-hash checks; no exact or near duplicate primary image detected.",
      "sha256": "26a9c98ab1ff729fca2fa84e7271043f204bbdb7acbb3edfc5f573c994aed2a9",
      "width": 1200,
      "height": 800,
      "format": "WebP",
      "responsive_crop_review_status": "Passed 3:2 card and full-width recipe-cover crop review."
    },
    {
      "recipe_title": "Vegetable lo mein-style noodles",
      "recipe_url": "/recipes/vegetable-lo-mein-style-noodles/",
      "old_image": "/assets/noodles.jpg",
      "new_image": "/assets/vegetable-lo-mein-style-noodles.webp",
      "status": "AI-generated",
      "source_page": null,
      "download_url": null,
      "creator": null,
      "license": null,
      "license_link": null,
      "commercial_use_note": "Generated specifically for The Kitchen Table; no third-party stock photograph is assigned as this recipe primary image.",
      "generation_prompt": "Use case: photorealistic-natural\nAsset type: primary recipe image for The Kitchen Table website\nPrimary request: Create one realistic, appetizing finished serving of the recipe \u201cVegetable lo mein-style noodles.\u201d\nRecipe description: Vegetable lo mein-style noodles uses ordinary grocery-store ingredients and teaches a clear skillet workflow with visual cues for beginners.\nExact listed ingredients: 350 g dried egg noodles; 500 g shredded vegetables; 1 tbsp olive oil or other neutral cooking oil; 1  medium onion, prepared as directed; 2  garlic cloves, minced; 0.5 tsp fine salt; 0.25 tsp black pepper; 2 tbsp soy, ginger, and sesame\nComplete preparation method: Set up the pan: Read the full recipe. Clear the counter, wash produce, and measure every ingredient. Prepare the named main and supporting ingredients as listed; keep raw meat or seafood, its board, and its utensils separate from ready-to-eat food. Put a wide skillet over medium heat for 2 minutes, then add the measured oil. Build color: Add the main ingredient in one layer. Cook 4\u20136 minutes without constant stirring, then turn. If it smokes heavily, lower the heat; if it stays pale and wet, increase heat slightly or work in batches. Add the supporting ingredients: Add the supporting ingredient, onion, garlic, and flavorings. Cook 5\u201310 minutes, stirring every minute or two, until aromatic and evenly cooked. Continue until 160\u00b0F / 71\u00b0C for a mixed egg dish, with no liquid egg remaining. Balance and serve: Take the pan off the heat. Taste a safe sample, then adjust salt or acidity in small amounts. Rest 3 minutes before serving.\nScene/backdrop: warm pale stone table, simple home-kitchen setting, no unrelated side dishes\nSubject: the plausible finished dish exactly as produced by the recipe, with the correct protein or plant-based base, cooking method, shape, texture, sauce, topping, and garnish\nStyle/medium: realistic editorial food photography with believable home-cooked texture\nComposition/framing: landscape 3:2, three-quarter close view, full main dish visible with safe crop area for responsive cards\nLighting/mood: soft natural window light, appetizing but honest, gentle shadows\nConstraints: include only ingredients and garnishes supported by the recipe; no substitutions, no extra protein, no text, logos, watermark, collage, hands, packaging, impossible shapes, or misleading restaurant-perfect styling",
      "output_filename": "vegetable-lo-mein-style-noodles.webp",
      "creation_date": "2026-10-13",
      "visual_match_review_status": "Passed labeled contact-sheet review against recipe title, ingredients, and method on 2026-10-13.",
      "duplicate_check_status": "Passed exact SHA-256 and 256-bit perceptual difference-hash checks; no exact or near duplicate primary image detected.",
      "sha256": "f390570fcc59897c7d793f1a8f9a869dddcacee63d69ac101c669bda1806df01",
      "width": 1200,
      "height": 800,
      "format": "WebP",
      "responsive_crop_review_status": "Passed 3:2 card and full-width recipe-cover crop review."
    },
    {
      "recipe_title": "Stovetop broccoli macaroni and cheese",
      "recipe_url": "/recipes/stovetop-broccoli-macaroni-and-cheese/",
      "old_image": "/assets/root-vegetables.jpg",
      "new_image": "/assets/stovetop-broccoli-macaroni-and-cheese.webp",
      "status": "AI-generated",
      "source_page": null,
      "download_url": null,
      "creator": null,
      "license": null,
      "license_link": null,
      "commercial_use_note": "Generated specifically for The Kitchen Table; no third-party stock photograph is assigned as this recipe primary image.",
      "generation_prompt": "Use case: photorealistic-natural\nAsset type: primary recipe image for The Kitchen Table website\nPrimary request: Create one realistic, appetizing finished serving of the recipe \u201cStovetop broccoli macaroni and cheese.\u201d\nRecipe description: Stovetop broccoli macaroni and cheese uses ordinary grocery-store ingredients and teaches a clear pasta workflow with visual cues for beginners.\nExact listed ingredients: 350 g dried macaroni; 300 g broccoli florets; 1 tbsp olive oil; 2  garlic cloves, minced; 250 ml low-sodium cooking liquid or reserved pasta water; 0.5 tsp fine salt; 2 tbsp cheddar and milk\nComplete preparation method: Organize the work: Read the full recipe. Clear the counter, wash produce, and measure every ingredient. Prepare the named main and supporting ingredients as listed; keep raw meat or seafood, its board, and its utensils separate from ready-to-eat food. Bring a large pot of water to a strong boil and keep a mug beside the stove for cooking water. Cook the starch: Salt the boiling water lightly and cook the pasta or noodles to the package\u2019s lower time estimate. Stir during the first minute. Reserve 250 ml cooking water, then drain. Build the sauce: Heat oil over medium. Cook the supporting ingredient 5\u20138 minutes, then garlic for 30 seconds. Add flavorings and enough cooking liquid to make a loose sauce; simmer 2 minutes. Finish together: Add the drained starch and toss over low heat for 1\u20132 minutes. Add reserved water a tablespoon at a time until glossy. If the noodles soften too quickly, remove the pan from heat immediately.\nScene/backdrop: light oak kitchen table, simple home-kitchen setting, no unrelated side dishes\nSubject: the plausible finished dish exactly as produced by the recipe, with the correct protein or plant-based base, cooking method, shape, texture, sauce, topping, and garnish\nStyle/medium: realistic editorial food photography with believable home-cooked texture\nComposition/framing: landscape 3:2, slightly overhead view, full main dish visible with safe crop area for responsive cards\nLighting/mood: soft natural window light, appetizing but honest, gentle shadows\nConstraints: include only ingredients and garnishes supported by the recipe; no substitutions, no extra protein, no text, logos, watermark, collage, hands, packaging, impossible shapes, or misleading restaurant-perfect styling",
      "output_filename": "stovetop-broccoli-macaroni-and-cheese.webp",
      "creation_date": "2026-10-13",
      "visual_match_review_status": "Passed labeled contact-sheet review against recipe title, ingredients, and method on 2026-10-13.",
      "duplicate_check_status": "Passed exact SHA-256 and 256-bit perceptual difference-hash checks; no exact or near duplicate primary image detected.",
      "sha256": "4f245d38870f46f23b79144b88a2aac3f6f0bbba810f2c7d987d76777fa255bc",
      "width": 1200,
      "height": 800,
      "format": "WebP",
      "responsive_crop_review_status": "Passed 3:2 card and full-width recipe-cover crop review."
    },
    {
      "recipe_title": "Spanish-inspired tomato rice",
      "recipe_url": "/recipes/spanish-inspired-tomato-rice/",
      "old_image": "/assets/rice.jpg",
      "new_image": "/assets/spanish-inspired-tomato-rice.webp",
      "status": "AI-generated",
      "source_page": null,
      "download_url": null,
      "creator": null,
      "license": null,
      "license_link": null,
      "commercial_use_note": "Generated specifically for The Kitchen Table; no third-party stock photograph is assigned as this recipe primary image.",
      "generation_prompt": "Use case: photorealistic-natural\nAsset type: primary recipe image for The Kitchen Table website\nPrimary request: Create one realistic, appetizing finished serving of the recipe \u201cSpanish-inspired tomato rice.\u201d\nRecipe description: Spanish-inspired tomato rice uses ordinary grocery-store ingredients and teaches a clear simmer workflow with visual cues for beginners.\nExact listed ingredients: 300 g long-grain rice; 400 g canned tomatoes; 1 tbsp olive oil; 1  medium onion, diced; 2  garlic cloves, minced; 750 ml low-sodium stock or water, as appropriate; 0.5 tsp fine salt; 2 tbsp bell pepper, paprika, and peas\nComplete preparation method: Prepare the pot: Read the full recipe. Clear the counter, wash produce, and measure every ingredient. Prepare the named main and supporting ingredients as listed; keep raw meat or seafood, its board, and its utensils separate from ready-to-eat food. Choose a heavy pot with room for gentle bubbling. Start the flavor base: Heat oil over medium. Cook onion for 6\u20138 minutes until soft, then garlic for 30 seconds. If either browns too fast, lower the heat and add a spoonful of water. Simmer steadily: Add the main ingredient, supporting ingredient, stock, salt, and flavorings. Bring just to a boil, then lower to a gentle simmer for 20\u201335 minutes, stirring every 5 minutes. Continue until the pieces are tender and the liquid lightly coats a spoon. Adjust the texture: If thin, simmer uncovered 5 minutes; if too thick, add warm water 60 ml at a time. Taste a safe spoonful, adjust gradually, and rest 5 minutes before serving.\nScene/backdrop: soft gray stone counter, simple home-kitchen setting, no unrelated side dishes\nSubject: the plausible finished dish exactly as produced by the recipe, with the correct protein or plant-based base, cooking method, shape, texture, sauce, topping, and garnish\nStyle/medium: realistic editorial food photography with believable home-cooked texture\nComposition/framing: landscape 3:2, natural eye-level table view, full main dish visible with safe crop area for responsive cards\nLighting/mood: soft natural window light, appetizing but honest, gentle shadows\nConstraints: include only ingredients and garnishes supported by the recipe; no substitutions, no extra protein, no text, logos, watermark, collage, hands, packaging, impossible shapes, or misleading restaurant-perfect styling",
      "output_filename": "spanish-inspired-tomato-rice.webp",
      "creation_date": "2026-10-13",
      "visual_match_review_status": "Passed labeled contact-sheet review against recipe title, ingredients, and method on 2026-10-13.",
      "duplicate_check_status": "Passed exact SHA-256 and 256-bit perceptual difference-hash checks; no exact or near duplicate primary image detected.",
      "sha256": "f906120ac0c88c194863c2fb2b9b99524c3faa96b38982e1dee766e245269375",
      "width": 1200,
      "height": 800,
      "format": "WebP",
      "responsive_crop_review_status": "Passed 3:2 card and full-width recipe-cover crop review."
    },
    {
      "recipe_title": "Chicken tortilla soup",
      "recipe_url": "/recipes/chicken-tortilla-soup/",
      "old_image": "/assets/stew.jpg",
      "new_image": "/assets/chicken-tortilla-soup.webp",
      "status": "AI-generated",
      "source_page": null,
      "download_url": null,
      "creator": null,
      "license": null,
      "license_link": null,
      "commercial_use_note": "Generated specifically for The Kitchen Table; no third-party stock photograph is assigned as this recipe primary image.",
      "generation_prompt": "Use case: photorealistic-natural\nAsset type: primary recipe image for The Kitchen Table website\nPrimary request: Create one realistic, appetizing finished serving of the recipe \u201cChicken tortilla soup.\u201d\nRecipe description: Chicken tortilla soup uses ordinary grocery-store ingredients and teaches a clear simmer workflow with visual cues for beginners.\nExact listed ingredients: 500 g chicken breast; 1 can black beans, 240 g drained; 1 tbsp olive oil; 1  medium onion, diced; 2  garlic cloves, minced; 750 ml low-sodium stock or water, as appropriate; 0.5 tsp fine salt; 2 tbsp tomato, corn, and cumin\nComplete preparation method: Prepare the pot: Read the full recipe. Clear the counter, wash produce, and measure every ingredient. Prepare the named main and supporting ingredients as listed; keep raw meat or seafood, its board, and its utensils separate from ready-to-eat food. Choose a heavy pot with room for gentle bubbling. Start the flavor base: Heat oil over medium. Cook onion for 6\u20138 minutes until soft, then garlic for 30 seconds. If either browns too fast, lower the heat and add a spoonful of water. Simmer steadily: Add the main ingredient, supporting ingredient, stock, salt, and flavorings. Bring just to a boil, then lower to a gentle simmer for 20\u201335 minutes, stirring every 5 minutes. For safety, verify 165\u00b0F / 74\u00b0C in the thickest piece. Adjust the texture: If thin, simmer uncovered 5 minutes; if too thick, add warm water 60 ml at a time. Taste a safe spoonful, adjust gradually, and rest 5 minutes before serving.\nScene/backdrop: cream linen over a wood table, simple home-kitchen setting, no unrelated side dishes\nSubject: the plausible finished dish exactly as produced by the recipe, with the correct protein or plant-based base, cooking method, shape, texture, sauce, topping, and garnish\nStyle/medium: realistic editorial food photography with believable home-cooked texture\nComposition/framing: landscape 3:2, 45-degree editorial view, full main dish visible with safe crop area for responsive cards\nLighting/mood: soft natural window light, appetizing but honest, gentle shadows\nConstraints: include only ingredients and garnishes supported by the recipe; no substitutions, no extra protein, no text, logos, watermark, collage, hands, packaging, impossible shapes, or misleading restaurant-perfect styling",
      "output_filename": "chicken-tortilla-soup.webp",
      "creation_date": "2026-10-13",
      "visual_match_review_status": "Passed labeled contact-sheet review against recipe title, ingredients, and method on 2026-10-13.",
      "duplicate_check_status": "Passed exact SHA-256 and 256-bit perceptual difference-hash checks; no exact or near duplicate primary image detected.",
      "sha256": "8e32218981c87182218e39ffac53bb2777cd60fb2213ba9c3368d2dbe0658428",
      "width": 1200,
      "height": 800,
      "format": "WebP",
      "responsive_crop_review_status": "Passed 3:2 card and full-width recipe-cover crop review."
    },
    {
      "recipe_title": "White bean kale soup",
      "recipe_url": "/recipes/white-bean-kale-soup/",
      "old_image": "/assets/stew.jpg",
      "new_image": "/assets/white-bean-kale-soup.webp",
      "status": "AI-generated",
      "source_page": null,
      "download_url": null,
      "creator": null,
      "license": null,
      "license_link": null,
      "commercial_use_note": "Generated specifically for The Kitchen Table; no third-party stock photograph is assigned as this recipe primary image.",
      "generation_prompt": "Use case: photorealistic-natural\nAsset type: primary recipe image for The Kitchen Table website\nPrimary request: Create one realistic, appetizing finished serving of the recipe \u201cWhite bean kale soup.\u201d\nRecipe description: White bean kale soup uses ordinary grocery-store ingredients and teaches a clear simmer workflow with visual cues for beginners.\nExact listed ingredients: 2 cans cannellini beans, 480 g drained; 200 g chopped kale; 1 tbsp olive oil; 1  medium onion, diced; 2  garlic cloves, minced; 750 ml low-sodium stock or water, as appropriate; 0.5 tsp fine salt; 2 tbsp tomato, rosemary, and lemon\nComplete preparation method: Prepare the pot: Read the full recipe. Clear the counter, wash produce, and measure every ingredient. Prepare the named main and supporting ingredients as listed; keep raw meat or seafood, its board, and its utensils separate from ready-to-eat food. Choose a heavy pot with room for gentle bubbling. Start the flavor base: Heat oil over medium. Cook onion for 6\u20138 minutes until soft, then garlic for 30 seconds. If either browns too fast, lower the heat and add a spoonful of water. Simmer steadily: Add the main ingredient, supporting ingredient, stock, salt, and flavorings. Bring just to a boil, then lower to a gentle simmer for 20\u201335 minutes, stirring every 5 minutes. Continue until the pieces are tender and the liquid lightly coats a spoon. Adjust the texture: If thin, simmer uncovered 5 minutes; if too thick, add warm water 60 ml at a time. Taste a safe spoonful, adjust gradually, and rest 5 minutes before serving.\nScene/backdrop: dark walnut table, simple home-kitchen setting, no unrelated side dishes\nSubject: the plausible finished dish exactly as produced by the recipe, with the correct protein or plant-based base, cooking method, shape, texture, sauce, topping, and garnish\nStyle/medium: realistic editorial food photography with believable home-cooked texture\nComposition/framing: landscape 3:2, top-down view, full main dish visible with safe crop area for responsive cards\nLighting/mood: soft natural window light, appetizing but honest, gentle shadows\nConstraints: include only ingredients and garnishes supported by the recipe; no substitutions, no extra protein, no text, logos, watermark, collage, hands, packaging, impossible shapes, or misleading restaurant-perfect styling",
      "output_filename": "white-bean-kale-soup.webp",
      "creation_date": "2026-10-13",
      "visual_match_review_status": "Passed labeled contact-sheet review against recipe title, ingredients, and method on 2026-10-13.",
      "duplicate_check_status": "Passed exact SHA-256 and 256-bit perceptual difference-hash checks; no exact or near duplicate primary image detected.",
      "sha256": "af45faff8f8067a74726cf38eb1ff926fa15554ca73a7fa490cc3a0909075e90",
      "width": 1200,
      "height": 800,
      "format": "WebP",
      "responsive_crop_review_status": "Passed 3:2 card and full-width recipe-cover crop review."
    },
    {
      "recipe_title": "Easy turkey chili",
      "recipe_url": "/recipes/easy-turkey-chili/",
      "old_image": "/assets/root-vegetables.jpg",
      "new_image": "/assets/easy-turkey-chili.webp",
      "status": "AI-generated",
      "source_page": null,
      "download_url": null,
      "creator": null,
      "license": null,
      "license_link": null,
      "commercial_use_note": "Generated specifically for The Kitchen Table; no third-party stock photograph is assigned as this recipe primary image.",
      "generation_prompt": "Use case: photorealistic-natural\nAsset type: primary recipe image for The Kitchen Table website\nPrimary request: Create one realistic, appetizing finished serving of the recipe \u201cEasy turkey chili.\u201d\nRecipe description: Easy turkey chili uses ordinary grocery-store ingredients and teaches a clear simmer workflow with visual cues for beginners.\nExact listed ingredients: 600 g ground turkey; 2 cans beans, 480 g drained; 1 tbsp olive oil; 1  medium onion, diced; 2  garlic cloves, minced; 750 ml low-sodium stock or water, as appropriate; 0.5 tsp fine salt; 2 tbsp tomato, cumin, and chili powder\nComplete preparation method: Prepare the pot: Read the full recipe. Clear the counter, wash produce, and measure every ingredient. Prepare the named main and supporting ingredients as listed; keep raw meat or seafood, its board, and its utensils separate from ready-to-eat food. Choose a heavy pot with room for gentle bubbling. Start the flavor base: Heat oil over medium. Cook onion for 6\u20138 minutes until soft, then garlic for 30 seconds. If either browns too fast, lower the heat and add a spoonful of water. Simmer steadily: Add the main ingredient, supporting ingredient, stock, salt, and flavorings. Bring just to a boil, then lower to a gentle simmer for 20\u201335 minutes, stirring every 5 minutes. For safety, verify 165\u00b0F / 74\u00b0C in the thickest piece. Adjust the texture: If thin, simmer uncovered 5 minutes; if too thick, add warm water 60 ml at a time. Taste a safe spoonful, adjust gradually, and rest 5 minutes before serving.\nScene/backdrop: warm pale stone table, simple home-kitchen setting, no unrelated side dishes\nSubject: the plausible finished dish exactly as produced by the recipe, with the correct protein or plant-based base, cooking method, shape, texture, sauce, topping, and garnish\nStyle/medium: realistic editorial food photography with believable home-cooked texture\nComposition/framing: landscape 3:2, three-quarter close view, full main dish visible with safe crop area for responsive cards\nLighting/mood: soft natural window light, appetizing but honest, gentle shadows\nConstraints: include only ingredients and garnishes supported by the recipe; no substitutions, no extra protein, no text, logos, watermark, collage, hands, packaging, impossible shapes, or misleading restaurant-perfect styling",
      "output_filename": "easy-turkey-chili.webp",
      "creation_date": "2026-10-13",
      "visual_match_review_status": "Passed labeled contact-sheet review against recipe title, ingredients, and method on 2026-10-13.",
      "duplicate_check_status": "Passed exact SHA-256 and 256-bit perceptual difference-hash checks; no exact or near duplicate primary image detected.",
      "sha256": "3c4a4bfb899d1da0ff4fb3bb6c8f47de99c7bc0e35b85789cee7316d09ba5241",
      "width": 1200,
      "height": 800,
      "format": "WebP",
      "responsive_crop_review_status": "Passed 3:2 card and full-width recipe-cover crop review."
    },
    {
      "recipe_title": "Beef and vegetable soup",
      "recipe_url": "/recipes/beef-and-vegetable-soup/",
      "old_image": "/assets/stew.jpg",
      "new_image": "/assets/beef-and-vegetable-soup.webp",
      "status": "AI-generated",
      "source_page": null,
      "download_url": null,
      "creator": null,
      "license": null,
      "license_link": null,
      "commercial_use_note": "Generated specifically for The Kitchen Table; no third-party stock photograph is assigned as this recipe primary image.",
      "generation_prompt": "Use case: photorealistic-natural\nAsset type: primary recipe image for The Kitchen Table website\nPrimary request: Create one realistic, appetizing finished serving of the recipe \u201cBeef and vegetable soup.\u201d\nRecipe description: Beef and vegetable soup uses ordinary grocery-store ingredients and teaches a clear simmer workflow with visual cues for beginners.\nExact listed ingredients: 600 g stewing beef, 3 cm cubes; 600 g mixed root vegetables; 1 tbsp olive oil; 1  medium onion, diced; 2  garlic cloves, minced; 750 ml low-sodium stock or water, as appropriate; 0.5 tsp fine salt; 2 tbsp tomato, thyme, and stock\nComplete preparation method: Prepare the pot: Read the full recipe. Clear the counter, wash produce, and measure every ingredient. Prepare the named main and supporting ingredients as listed; keep raw meat or seafood, its board, and its utensils separate from ready-to-eat food. Choose a heavy pot with room for gentle bubbling. Start the flavor base: Heat oil over medium. Cook onion for 6\u20138 minutes until soft, then garlic for 30 seconds. If either browns too fast, lower the heat and add a spoonful of water. Simmer steadily: Add the main ingredient, supporting ingredient, stock, salt, and flavorings. Bring just to a boil, then lower to a gentle simmer for 20\u201335 minutes, stirring every 5 minutes. Continue until the pieces are tender and the liquid lightly coats a spoon. Adjust the texture: If thin, simmer uncovered 5 minutes; if too thick, add warm water 60 ml at a time. Taste a safe spoonful, adjust gradually, and rest 5 minutes before serving.\nScene/backdrop: light oak kitchen table, simple home-kitchen setting, no unrelated side dishes\nSubject: the plausible finished dish exactly as produced by the recipe, with the correct protein or plant-based base, cooking method, shape, texture, sauce, topping, and garnish\nStyle/medium: realistic editorial food photography with believable home-cooked texture\nComposition/framing: landscape 3:2, slightly overhead view, full main dish visible with safe crop area for responsive cards\nLighting/mood: soft natural window light, appetizing but honest, gentle shadows\nConstraints: include only ingredients and garnishes supported by the recipe; no substitutions, no extra protein, no text, logos, watermark, collage, hands, packaging, impossible shapes, or misleading restaurant-perfect styling",
      "output_filename": "beef-and-vegetable-soup.webp",
      "creation_date": "2026-10-13",
      "visual_match_review_status": "Passed labeled contact-sheet review against recipe title, ingredients, and method on 2026-10-13.",
      "duplicate_check_status": "Passed exact SHA-256 and 256-bit perceptual difference-hash checks; no exact or near duplicate primary image detected.",
      "sha256": "f664aa00bfd8451cb9251d6038c7568da7829b73a8877171d83fb44e0b4b27c5",
      "width": 1200,
      "height": 800,
      "format": "WebP",
      "responsive_crop_review_status": "Passed 3:2 card and full-width recipe-cover crop review."
    },
    {
      "recipe_title": "Creamy potato leek soup",
      "recipe_url": "/recipes/creamy-potato-leek-soup/",
      "old_image": "/assets/stew.jpg",
      "new_image": "/assets/creamy-potato-leek-soup.webp",
      "status": "AI-generated",
      "source_page": null,
      "download_url": null,
      "creator": null,
      "license": null,
      "license_link": null,
      "commercial_use_note": "Generated specifically for The Kitchen Table; no third-party stock photograph is assigned as this recipe primary image.",
      "generation_prompt": "Use case: photorealistic-natural\nAsset type: primary recipe image for The Kitchen Table website\nPrimary request: Create one realistic, appetizing finished serving of the recipe \u201cCreamy potato leek soup.\u201d\nRecipe description: Creamy potato leek soup uses ordinary grocery-store ingredients and teaches a clear simmer workflow with visual cues for beginners.\nExact listed ingredients: 800 g potatoes, diced; 1  3 leeks, sliced and washed; 1 tbsp olive oil; 1  medium onion, diced; 2  garlic cloves, minced; 750 ml low-sodium stock or water, as appropriate; 0.5 tsp fine salt; 2 tbsp milk, thyme, and pepper\nComplete preparation method: Prepare the pot: Read the full recipe. Clear the counter, wash produce, and measure every ingredient. Prepare the named main and supporting ingredients as listed; keep raw meat or seafood, its board, and its utensils separate from ready-to-eat food. Choose a heavy pot with room for gentle bubbling. Start the flavor base: Heat oil over medium. Cook onion for 6\u20138 minutes until soft, then garlic for 30 seconds. If either browns too fast, lower the heat and add a spoonful of water. Simmer steadily: Add the main ingredient, supporting ingredient, stock, salt, and flavorings. Bring just to a boil, then lower to a gentle simmer for 20\u201335 minutes, stirring every 5 minutes. Continue until the pieces are tender and the liquid lightly coats a spoon. Adjust the texture: If thin, simmer uncovered 5 minutes; if too thick, add warm water 60 ml at a time. Taste a safe spoonful, adjust gradually, and rest 5 minutes before serving.\nScene/backdrop: soft gray stone counter, simple home-kitchen setting, no unrelated side dishes\nSubject: the plausible finished dish exactly as produced by the recipe, with the correct protein or plant-based base, cooking method, shape, texture, sauce, topping, and garnish\nStyle/medium: realistic editorial food photography with believable home-cooked texture\nComposition/framing: landscape 3:2, natural eye-level table view, full main dish visible with safe crop area for responsive cards\nLighting/mood: soft natural window light, appetizing but honest, gentle shadows\nConstraints: include only ingredients and garnishes supported by the recipe; no substitutions, no extra protein, no text, logos, watermark, collage, hands, packaging, impossible shapes, or misleading restaurant-perfect styling",
      "output_filename": "creamy-potato-leek-soup.webp",
      "creation_date": "2026-10-13",
      "visual_match_review_status": "Passed labeled contact-sheet review against recipe title, ingredients, and method on 2026-10-13.",
      "duplicate_check_status": "Passed exact SHA-256 and 256-bit perceptual difference-hash checks; no exact or near duplicate primary image detected.",
      "sha256": "f0eb4d1d389f5ff96e1bebd8f675bc15d97340259c684c0f4802794e38e3ec10",
      "width": 1200,
      "height": 800,
      "format": "WebP",
      "responsive_crop_review_status": "Passed 3:2 card and full-width recipe-cover crop review."
    },
    {
      "recipe_title": "Smoky black bean soup",
      "recipe_url": "/recipes/smoky-black-bean-soup/",
      "old_image": "/assets/stew.jpg",
      "new_image": "/assets/smoky-black-bean-soup.webp",
      "status": "AI-generated",
      "source_page": null,
      "download_url": null,
      "creator": null,
      "license": null,
      "license_link": null,
      "commercial_use_note": "Generated specifically for The Kitchen Table; no third-party stock photograph is assigned as this recipe primary image.",
      "generation_prompt": "Use case: photorealistic-natural\nAsset type: primary recipe image for The Kitchen Table website\nPrimary request: Create one realistic, appetizing finished serving of the recipe \u201cSmoky black bean soup.\u201d\nRecipe description: Smoky black bean soup uses ordinary grocery-store ingredients and teaches a clear simmer workflow with visual cues for beginners.\nExact listed ingredients: 3 cans black beans, 720 g drained; 1  1 bell pepper, diced; 1 tbsp olive oil; 1  medium onion, diced; 2  garlic cloves, minced; 750 ml low-sodium stock or water, as appropriate; 0.5 tsp fine salt; 2 tbsp tomato, cumin, and lime\nComplete preparation method: Prepare the pot: Read the full recipe. Clear the counter, wash produce, and measure every ingredient. Prepare the named main and supporting ingredients as listed; keep raw meat or seafood, its board, and its utensils separate from ready-to-eat food. Choose a heavy pot with room for gentle bubbling. Start the flavor base: Heat oil over medium. Cook onion for 6\u20138 minutes until soft, then garlic for 30 seconds. If either browns too fast, lower the heat and add a spoonful of water. Simmer steadily: Add the main ingredient, supporting ingredient, stock, salt, and flavorings. Bring just to a boil, then lower to a gentle simmer for 20\u201335 minutes, stirring every 5 minutes. Continue until the pieces are tender and the liquid lightly coats a spoon. Adjust the texture: If thin, simmer uncovered 5 minutes; if too thick, add warm water 60 ml at a time. Taste a safe spoonful, adjust gradually, and rest 5 minutes before serving.\nScene/backdrop: cream linen over a wood table, simple home-kitchen setting, no unrelated side dishes\nSubject: the plausible finished dish exactly as produced by the recipe, with the correct protein or plant-based base, cooking method, shape, texture, sauce, topping, and garnish\nStyle/medium: realistic editorial food photography with believable home-cooked texture\nComposition/framing: landscape 3:2, 45-degree editorial view, full main dish visible with safe crop area for responsive cards\nLighting/mood: soft natural window light, appetizing but honest, gentle shadows\nConstraints: include only ingredients and garnishes supported by the recipe; no substitutions, no extra protein, no text, logos, watermark, collage, hands, packaging, impossible shapes, or misleading restaurant-perfect styling",
      "output_filename": "smoky-black-bean-soup.webp",
      "creation_date": "2026-10-13",
      "visual_match_review_status": "Passed labeled contact-sheet review against recipe title, ingredients, and method on 2026-10-13.",
      "duplicate_check_status": "Passed exact SHA-256 and 256-bit perceptual difference-hash checks; no exact or near duplicate primary image detected.",
      "sha256": "91c29cf090b4d799e6eef2cf5dc68222bc01be33b535f4e831e1a655961e0cb4",
      "width": 1200,
      "height": 800,
      "format": "WebP",
      "responsive_crop_review_status": "Passed 3:2 card and full-width recipe-cover crop review."
    },
    {
      "recipe_title": "Red lentil vegetable soup",
      "recipe_url": "/recipes/red-lentil-vegetable-soup/",
      "old_image": "/assets/stew.jpg",
      "new_image": "/assets/red-lentil-vegetable-soup.webp",
      "status": "AI-generated",
      "source_page": null,
      "download_url": null,
      "creator": null,
      "license": null,
      "license_link": null,
      "commercial_use_note": "Generated specifically for The Kitchen Table; no third-party stock photograph is assigned as this recipe primary image.",
      "generation_prompt": "Use case: photorealistic-natural\nAsset type: primary recipe image for The Kitchen Table website\nPrimary request: Create one realistic, appetizing finished serving of the recipe \u201cRed lentil vegetable soup.\u201d\nRecipe description: Red lentil vegetable soup uses ordinary grocery-store ingredients and teaches a clear simmer workflow with visual cues for beginners.\nExact listed ingredients: 250 g split red lentils; 500 g mixed vegetables; 1 tbsp olive oil; 1  medium onion, diced; 2  garlic cloves, minced; 750 ml low-sodium stock or water, as appropriate; 0.5 tsp fine salt; 2 tbsp tomato, cumin, and lemon\nComplete preparation method: Prepare the pot: Read the full recipe. Clear the counter, wash produce, and measure every ingredient. Prepare the named main and supporting ingredients as listed; keep raw meat or seafood, its board, and its utensils separate from ready-to-eat food. Choose a heavy pot with room for gentle bubbling. Start the flavor base: Heat oil over medium. Cook onion for 6\u20138 minutes until soft, then garlic for 30 seconds. If either browns too fast, lower the heat and add a spoonful of water. Simmer steadily: Add the main ingredient, supporting ingredient, stock, salt, and flavorings. Bring just to a boil, then lower to a gentle simmer for 20\u201335 minutes, stirring every 5 minutes. Continue until the pieces are tender and the liquid lightly coats a spoon. Adjust the texture: If thin, simmer uncovered 5 minutes; if too thick, add warm water 60 ml at a time. Taste a safe spoonful, adjust gradually, and rest 5 minutes before serving.\nScene/backdrop: dark walnut table, simple home-kitchen setting, no unrelated side dishes\nSubject: the plausible finished dish exactly as produced by the recipe, with the correct protein or plant-based base, cooking method, shape, texture, sauce, topping, and garnish\nStyle/medium: realistic editorial food photography with believable home-cooked texture\nComposition/framing: landscape 3:2, top-down view, full main dish visible with safe crop area for responsive cards\nLighting/mood: soft natural window light, appetizing but honest, gentle shadows\nConstraints: include only ingredients and garnishes supported by the recipe; no substitutions, no extra protein, no text, logos, watermark, collage, hands, packaging, impossible shapes, or misleading restaurant-perfect styling",
      "output_filename": "red-lentil-vegetable-soup.webp",
      "creation_date": "2026-10-13",
      "visual_match_review_status": "Passed labeled contact-sheet review against recipe title, ingredients, and method on 2026-10-13.",
      "duplicate_check_status": "Passed exact SHA-256 and 256-bit perceptual difference-hash checks; no exact or near duplicate primary image detected.",
      "sha256": "59f36466541736448f711ce9f9113bf39637a59d042363708cbb21a57457813f",
      "width": 1200,
      "height": 800,
      "format": "WebP",
      "responsive_crop_review_status": "Passed 3:2 card and full-width recipe-cover crop review."
    },
    {
      "recipe_title": "Quick vegetable minestrone",
      "recipe_url": "/recipes/quick-vegetable-minestrone/",
      "old_image": "/assets/root-vegetables.jpg",
      "new_image": "/assets/quick-vegetable-minestrone.webp",
      "status": "AI-generated",
      "source_page": null,
      "download_url": null,
      "creator": null,
      "license": null,
      "license_link": null,
      "commercial_use_note": "Generated specifically for The Kitchen Table; no third-party stock photograph is assigned as this recipe primary image.",
      "generation_prompt": "Use case: photorealistic-natural\nAsset type: primary recipe image for The Kitchen Table website\nPrimary request: Create one realistic, appetizing finished serving of the recipe \u201cQuick vegetable minestrone.\u201d\nRecipe description: Quick vegetable minestrone uses ordinary grocery-store ingredients and teaches a clear simmer workflow with visual cues for beginners.\nExact listed ingredients: 2 cans beans, 480 g drained; 500 g mixed vegetables; 1 tbsp olive oil; 1  medium onion, diced; 2  garlic cloves, minced; 750 ml low-sodium stock or water, as appropriate; 0.5 tsp fine salt; 2 tbsp tomato, small pasta, and herbs\nComplete preparation method: Prepare the pot: Read the full recipe. Clear the counter, wash produce, and measure every ingredient. Prepare the named main and supporting ingredients as listed; keep raw meat or seafood, its board, and its utensils separate from ready-to-eat food. Choose a heavy pot with room for gentle bubbling. Start the flavor base: Heat oil over medium. Cook onion for 6\u20138 minutes until soft, then garlic for 30 seconds. If either browns too fast, lower the heat and add a spoonful of water. Simmer steadily: Add the main ingredient, supporting ingredient, stock, salt, and flavorings. Bring just to a boil, then lower to a gentle simmer for 20\u201335 minutes, stirring every 5 minutes. Continue until the pieces are tender and the liquid lightly coats a spoon. Adjust the texture: If thin, simmer uncovered 5 minutes; if too thick, add warm water 60 ml at a time. Taste a safe spoonful, adjust gradually, and rest 5 minutes before serving.\nScene/backdrop: warm pale stone table, simple home-kitchen setting, no unrelated side dishes\nSubject: the plausible finished dish exactly as produced by the recipe, with the correct protein or plant-based base, cooking method, shape, texture, sauce, topping, and garnish\nStyle/medium: realistic editorial food photography with believable home-cooked texture\nComposition/framing: landscape 3:2, three-quarter close view, full main dish visible with safe crop area for responsive cards\nLighting/mood: soft natural window light, appetizing but honest, gentle shadows\nConstraints: include only ingredients and garnishes supported by the recipe; no substitutions, no extra protein, no text, logos, watermark, collage, hands, packaging, impossible shapes, or misleading restaurant-perfect styling",
      "output_filename": "quick-vegetable-minestrone.webp",
      "creation_date": "2026-10-13",
      "visual_match_review_status": "Passed labeled contact-sheet review against recipe title, ingredients, and method on 2026-10-13.",
      "duplicate_check_status": "Passed exact SHA-256 and 256-bit perceptual difference-hash checks; no exact or near duplicate primary image detected.",
      "sha256": "d0908a90ca752daa262a00ab5afe1eb6f7e4593641ff6f6744ae82a92f1a61f2",
      "width": 1200,
      "height": 800,
      "format": "WebP",
      "responsive_crop_review_status": "Passed 3:2 card and full-width recipe-cover crop review."
    },
    {
      "recipe_title": "Pork and green chile stew",
      "recipe_url": "/recipes/pork-and-green-chile-stew/",
      "old_image": "/assets/stew.jpg",
      "new_image": "/assets/pork-and-green-chile-stew.webp",
      "status": "AI-generated",
      "source_page": null,
      "download_url": null,
      "creator": null,
      "license": null,
      "license_link": null,
      "commercial_use_note": "Generated specifically for The Kitchen Table; no third-party stock photograph is assigned as this recipe primary image.",
      "generation_prompt": "Use case: photorealistic-natural\nAsset type: primary recipe image for The Kitchen Table website\nPrimary request: Create one realistic, appetizing finished serving of the recipe \u201cPork and green chile stew.\u201d\nRecipe description: Pork and green chile stew uses ordinary grocery-store ingredients and teaches a clear simmer workflow with visual cues for beginners.\nExact listed ingredients: 700 g pork shoulder, 3 cm cubes; 500 g potatoes, diced; 1 tbsp olive oil; 1  medium onion, diced; 2  garlic cloves, minced; 750 ml low-sodium stock or water, as appropriate; 0.5 tsp fine salt; 2 tbsp mild green chiles and cumin\nComplete preparation method: Prepare the pot: Read the full recipe. Clear the counter, wash produce, and measure every ingredient. Prepare the named main and supporting ingredients as listed; keep raw meat or seafood, its board, and its utensils separate from ready-to-eat food. Choose a heavy pot with room for gentle bubbling. Start the flavor base: Heat oil over medium. Cook onion for 6\u20138 minutes until soft, then garlic for 30 seconds. If either browns too fast, lower the heat and add a spoonful of water. Simmer steadily: Add the main ingredient, supporting ingredient, stock, salt, and flavorings. Bring just to a boil, then lower to a gentle simmer for 20\u201335 minutes, stirring every 5 minutes. For safety, verify 145\u00b0F / 63\u00b0C, followed by a 3-minute rest. Adjust the texture: If thin, simmer uncovered 5 minutes; if too thick, add warm water 60 ml at a time. Taste a safe spoonful, adjust gradually, and rest 5 minutes before serving.\nScene/backdrop: light oak kitchen table, simple home-kitchen setting, no unrelated side dishes\nSubject: the plausible finished dish exactly as produced by the recipe, with the correct protein or plant-based base, cooking method, shape, texture, sauce, topping, and garnish\nStyle/medium: realistic editorial food photography with believable home-cooked texture\nComposition/framing: landscape 3:2, slightly overhead view, full main dish visible with safe crop area for responsive cards\nLighting/mood: soft natural window light, appetizing but honest, gentle shadows\nConstraints: include only ingredients and garnishes supported by the recipe; no substitutions, no extra protein, no text, logos, watermark, collage, hands, packaging, impossible shapes, or misleading restaurant-perfect styling",
      "output_filename": "pork-and-green-chile-stew.webp",
      "creation_date": "2026-10-13",
      "visual_match_review_status": "Passed labeled contact-sheet review against recipe title, ingredients, and method on 2026-10-13.",
      "duplicate_check_status": "Passed exact SHA-256 and 256-bit perceptual difference-hash checks; no exact or near duplicate primary image detected.",
      "sha256": "d6748d58d039668c64bf821e082fd5fb430216f4fe8704b60266efbb6edb2998",
      "width": 1200,
      "height": 800,
      "format": "WebP",
      "responsive_crop_review_status": "Passed 3:2 card and full-width recipe-cover crop review."
    },
    {
      "recipe_title": "Corn and potato chowder",
      "recipe_url": "/recipes/corn-and-potato-chowder/",
      "old_image": "/assets/root-vegetables.jpg",
      "new_image": "/assets/corn-and-potato-chowder.webp",
      "status": "AI-generated",
      "source_page": null,
      "download_url": null,
      "creator": null,
      "license": null,
      "license_link": null,
      "commercial_use_note": "Generated specifically for The Kitchen Table; no third-party stock photograph is assigned as this recipe primary image.",
      "generation_prompt": "Use case: photorealistic-natural\nAsset type: primary recipe image for The Kitchen Table website\nPrimary request: Create one realistic, appetizing finished serving of the recipe \u201cCorn and potato chowder.\u201d\nRecipe description: Corn and potato chowder uses ordinary grocery-store ingredients and teaches a clear simmer workflow with visual cues for beginners.\nExact listed ingredients: 700 g potatoes, diced; 400 g sweetcorn; 1 tbsp olive oil; 1  medium onion, diced; 2  garlic cloves, minced; 750 ml low-sodium stock or water, as appropriate; 0.5 tsp fine salt; 2 tbsp milk, celery, and thyme\nComplete preparation method: Prepare the pot: Read the full recipe. Clear the counter, wash produce, and measure every ingredient. Prepare the named main and supporting ingredients as listed; keep raw meat or seafood, its board, and its utensils separate from ready-to-eat food. Choose a heavy pot with room for gentle bubbling. Start the flavor base: Heat oil over medium. Cook onion for 6\u20138 minutes until soft, then garlic for 30 seconds. If either browns too fast, lower the heat and add a spoonful of water. Simmer steadily: Add the main ingredient, supporting ingredient, stock, salt, and flavorings. Bring just to a boil, then lower to a gentle simmer for 20\u201335 minutes, stirring every 5 minutes. Continue until the pieces are tender and the liquid lightly coats a spoon. Adjust the texture: If thin, simmer uncovered 5 minutes; if too thick, add warm water 60 ml at a time. Taste a safe spoonful, adjust gradually, and rest 5 minutes before serving.\nScene/backdrop: soft gray stone counter, simple home-kitchen setting, no unrelated side dishes\nSubject: the plausible finished dish exactly as produced by the recipe, with the correct protein or plant-based base, cooking method, shape, texture, sauce, topping, and garnish\nStyle/medium: realistic editorial food photography with believable home-cooked texture\nComposition/framing: landscape 3:2, natural eye-level table view, full main dish visible with safe crop area for responsive cards\nLighting/mood: soft natural window light, appetizing but honest, gentle shadows\nConstraints: include only ingredients and garnishes supported by the recipe; no substitutions, no extra protein, no text, logos, watermark, collage, hands, packaging, impossible shapes, or misleading restaurant-perfect styling",
      "output_filename": "corn-and-potato-chowder.webp",
      "creation_date": "2026-10-13",
      "visual_match_review_status": "Passed labeled contact-sheet review against recipe title, ingredients, and method on 2026-10-13.",
      "duplicate_check_status": "Passed exact SHA-256 and 256-bit perceptual difference-hash checks; no exact or near duplicate primary image detected.",
      "sha256": "a705676ca365a8c1286a4797a2943ae57f52a3b198b956e949d451cd0ca32dbb",
      "width": 1200,
      "height": 800,
      "format": "WebP",
      "responsive_crop_review_status": "Passed 3:2 card and full-width recipe-cover crop review."
    },
    {
      "recipe_title": "Garlic roasted green beans",
      "recipe_url": "/recipes/garlic-roasted-green-beans/",
      "old_image": "/assets/root-vegetables.jpg",
      "new_image": "/assets/garlic-roasted-green-beans.webp",
      "status": "AI-generated",
      "source_page": null,
      "download_url": null,
      "creator": null,
      "license": null,
      "license_link": null,
      "commercial_use_note": "Generated specifically for The Kitchen Table; no third-party stock photograph is assigned as this recipe primary image.",
      "generation_prompt": "Use case: photorealistic-natural\nAsset type: primary recipe image for The Kitchen Table website\nPrimary request: Create one realistic, appetizing finished serving of the recipe \u201cGarlic roasted green beans.\u201d\nRecipe description: Garlic roasted green beans uses ordinary grocery-store ingredients and teaches a clear roast workflow with visual cues for beginners.\nExact listed ingredients: 600 g green beans, trimmed; 1  3 garlic cloves, sliced; 1 tbsp olive oil or other neutral cooking oil; 1  medium onion, prepared as directed; 2  garlic cloves, minced; 0.5 tsp fine salt; 0.25 tsp black pepper; 2 tbsp lemon and olive oil\nComplete preparation method: Prepare and preheat: Read the full recipe. Clear the counter, wash produce, and measure every ingredient. Prepare the named main and supporting ingredients as listed; keep raw meat or seafood, its board, and its utensils separate from ready-to-eat food. Heat the oven to 400\u00b0F / 200\u00b0C unless the ingredient package specifies otherwise. Arrange a rack in the center and prepare the stated pan. Season evenly: Combine the main and supporting ingredients with oil, salt, pepper, and flavorings. Spread in a single, even layer; use a second pan if crowded. Bake with visual cues: Bake for 20\u201335 minutes, turning or rotating once after about 15 minutes. Lower the heat if edges darken before the center is ready; add 5-minute increments if still firm. The center should be set or tender and the edges lightly browned. Rest and finish: Remove the pan to a heat-safe surface. Rest 5 minutes so juices or structure settle, then add any fresh finishing ingredient and serve.\nScene/backdrop: cream linen over a wood table, simple home-kitchen setting, no unrelated side dishes\nSubject: the plausible finished dish exactly as produced by the recipe, with the correct protein or plant-based base, cooking method, shape, texture, sauce, topping, and garnish\nStyle/medium: realistic editorial food photography with believable home-cooked texture\nComposition/framing: landscape 3:2, 45-degree editorial view, full main dish visible with safe crop area for responsive cards\nLighting/mood: soft natural window light, appetizing but honest, gentle shadows\nConstraints: include only ingredients and garnishes supported by the recipe; no substitutions, no extra protein, no text, logos, watermark, collage, hands, packaging, impossible shapes, or misleading restaurant-perfect styling",
      "output_filename": "garlic-roasted-green-beans.webp",
      "creation_date": "2026-10-13",
      "visual_match_review_status": "Passed labeled contact-sheet review against recipe title, ingredients, and method on 2026-10-13.",
      "duplicate_check_status": "Passed exact SHA-256 and 256-bit perceptual difference-hash checks; no exact or near duplicate primary image detected.",
      "sha256": "de445f3e1bd740724f49eaf8e29a449b84ca837bd6d63f512b7c0156e2c03d30",
      "width": 1200,
      "height": 800,
      "format": "WebP",
      "responsive_crop_review_status": "Passed 3:2 card and full-width recipe-cover crop review."
    },
    {
      "recipe_title": "Honey glazed skillet carrots",
      "recipe_url": "/recipes/honey-glazed-skillet-carrots/",
      "old_image": "/assets/root-vegetables.jpg",
      "new_image": "/assets/honey-glazed-skillet-carrots.webp",
      "status": "AI-generated",
      "source_page": null,
      "download_url": null,
      "creator": null,
      "license": null,
      "license_link": null,
      "commercial_use_note": "Generated specifically for The Kitchen Table; no third-party stock photograph is assigned as this recipe primary image.",
      "generation_prompt": "Use case: photorealistic-natural\nAsset type: primary recipe image for The Kitchen Table website\nPrimary request: Create one realistic, appetizing finished serving of the recipe \u201cHoney glazed skillet carrots.\u201d\nRecipe description: Honey glazed skillet carrots uses ordinary grocery-store ingredients and teaches a clear skillet workflow with visual cues for beginners.\nExact listed ingredients: 700 g carrots, sliced; 1 tbsp honey; 1 tbsp olive oil or other neutral cooking oil; 1  medium onion, prepared as directed; 2  garlic cloves, minced; 0.5 tsp fine salt; 0.25 tsp black pepper; 2 tbsp butter and thyme\nComplete preparation method: Set up the pan: Read the full recipe. Clear the counter, wash produce, and measure every ingredient. Prepare the named main and supporting ingredients as listed; keep raw meat or seafood, its board, and its utensils separate from ready-to-eat food. Put a wide skillet over medium heat for 2 minutes, then add the measured oil. Build color: Add the main ingredient in one layer. Cook 4\u20136 minutes without constant stirring, then turn. If it smokes heavily, lower the heat; if it stays pale and wet, increase heat slightly or work in batches. Add the supporting ingredients: Add the supporting ingredient, onion, garlic, and flavorings. Cook 5\u201310 minutes, stirring every minute or two, until aromatic and evenly cooked. Continue until the center is tender and the surface is well browned. Balance and serve: Take the pan off the heat. Taste a safe sample, then adjust salt or acidity in small amounts. Rest 3 minutes before serving.\nScene/backdrop: dark walnut table, simple home-kitchen setting, no unrelated side dishes\nSubject: the plausible finished dish exactly as produced by the recipe, with the correct protein or plant-based base, cooking method, shape, texture, sauce, topping, and garnish\nStyle/medium: realistic editorial food photography with believable home-cooked texture\nComposition/framing: landscape 3:2, top-down view, full main dish visible with safe crop area for responsive cards\nLighting/mood: soft natural window light, appetizing but honest, gentle shadows\nConstraints: include only ingredients and garnishes supported by the recipe; no substitutions, no extra protein, no text, logos, watermark, collage, hands, packaging, impossible shapes, or misleading restaurant-perfect styling",
      "output_filename": "honey-glazed-skillet-carrots.webp",
      "creation_date": "2026-10-13",
      "visual_match_review_status": "Passed labeled contact-sheet review against recipe title, ingredients, and method on 2026-10-13.",
      "duplicate_check_status": "Passed exact SHA-256 and 256-bit perceptual difference-hash checks; no exact or near duplicate primary image detected.",
      "sha256": "dc4e828a782a358256a754be63dc550eb3a1ba4b58def2697d8054d9d20cf8f9",
      "width": 1200,
      "height": 800,
      "format": "WebP",
      "responsive_crop_review_status": "Passed 3:2 card and full-width recipe-cover crop review."
    },
    {
      "recipe_title": "Creamy garlic mashed potatoes",
      "recipe_url": "/recipes/creamy-garlic-mashed-potatoes/",
      "old_image": "/assets/root-vegetables.jpg",
      "new_image": "/assets/creamy-garlic-mashed-potatoes.webp",
      "status": "AI-generated",
      "source_page": null,
      "download_url": null,
      "creator": null,
      "license": null,
      "license_link": null,
      "commercial_use_note": "Generated specifically for The Kitchen Table; no third-party stock photograph is assigned as this recipe primary image.",
      "generation_prompt": "Use case: photorealistic-natural\nAsset type: primary recipe image for The Kitchen Table website\nPrimary request: Create one realistic, appetizing finished serving of the recipe \u201cCreamy garlic mashed potatoes.\u201d\nRecipe description: Creamy garlic mashed potatoes uses ordinary grocery-store ingredients and teaches a clear simmer workflow with visual cues for beginners.\nExact listed ingredients: 1 kg floury potatoes, peeled; 120 ml warm milk; 1 tbsp olive oil; 1  medium onion, diced; 2  garlic cloves, minced; 750 ml low-sodium stock or water, as appropriate; 0.5 tsp fine salt; 2 tbsp butter and roasted garlic\nComplete preparation method: Prepare the pot: Read the full recipe. Clear the counter, wash produce, and measure every ingredient. Prepare the named main and supporting ingredients as listed; keep raw meat or seafood, its board, and its utensils separate from ready-to-eat food. Choose a heavy pot with room for gentle bubbling. Start the flavor base: Heat oil over medium. Cook onion for 6\u20138 minutes until soft, then garlic for 30 seconds. If either browns too fast, lower the heat and add a spoonful of water. Simmer steadily: Add the main ingredient, supporting ingredient, stock, salt, and flavorings. Bring just to a boil, then lower to a gentle simmer for 20\u201335 minutes, stirring every 5 minutes. Continue until the pieces are tender and the liquid lightly coats a spoon. Adjust the texture: If thin, simmer uncovered 5 minutes; if too thick, add warm water 60 ml at a time. Taste a safe spoonful, adjust gradually, and rest 5 minutes before serving.\nScene/backdrop: warm pale stone table, simple home-kitchen setting, no unrelated side dishes\nSubject: the plausible finished dish exactly as produced by the recipe, with the correct protein or plant-based base, cooking method, shape, texture, sauce, topping, and garnish\nStyle/medium: realistic editorial food photography with believable home-cooked texture\nComposition/framing: landscape 3:2, three-quarter close view, full main dish visible with safe crop area for responsive cards\nLighting/mood: soft natural window light, appetizing but honest, gentle shadows\nConstraints: include only ingredients and garnishes supported by the recipe; no substitutions, no extra protein, no text, logos, watermark, collage, hands, packaging, impossible shapes, or misleading restaurant-perfect styling",
      "output_filename": "creamy-garlic-mashed-potatoes.webp",
      "creation_date": "2026-10-13",
      "visual_match_review_status": "Passed labeled contact-sheet review against recipe title, ingredients, and method on 2026-10-13.",
      "duplicate_check_status": "Passed exact SHA-256 and 256-bit perceptual difference-hash checks; no exact or near duplicate primary image detected.",
      "sha256": "893911877e02b24ba7bf7655bfb1502dc8a0c9ecbd32d99a0a9ac9a4bc6d722f",
      "width": 1200,
      "height": 800,
      "format": "WebP",
      "responsive_crop_review_status": "Passed 3:2 card and full-width recipe-cover crop review."
    },
    {
      "recipe_title": "Tangy cabbage apple slaw",
      "recipe_url": "/recipes/tangy-cabbage-apple-slaw/",
      "old_image": "/assets/root-vegetables.jpg",
      "new_image": "/assets/tangy-cabbage-apple-slaw.webp",
      "status": "AI-generated",
      "source_page": null,
      "download_url": null,
      "creator": null,
      "license": null,
      "license_link": null,
      "commercial_use_note": "Generated specifically for The Kitchen Table; no third-party stock photograph is assigned as this recipe primary image.",
      "generation_prompt": "Use case: photorealistic-natural\nAsset type: primary recipe image for The Kitchen Table website\nPrimary request: Create one realistic, appetizing finished serving of the recipe \u201cTangy cabbage apple slaw.\u201d\nRecipe description: Tangy cabbage apple slaw uses ordinary grocery-store ingredients and teaches a clear assemble workflow with visual cues for beginners.\nExact listed ingredients: 500 g shredded cabbage; 1  1 crisp apple, julienned; 2 tbsp extra-virgin olive oil or dressing; 1 tbsp lemon juice or mild vinegar; 0.25 tsp fine salt; 2 tbsp yogurt, mustard, and lemon\nComplete preparation method: Prepare the components: Read the full recipe. Clear the counter, wash produce, and measure every ingredient. Prepare the named main and supporting ingredients as listed; keep raw meat or seafood, its board, and its utensils separate from ready-to-eat food. Pat washed produce dry so the dressing is not diluted. Make the dressing: Whisk the oil or dressing, acid, salt, and flavorings in a large bowl for 30\u201345 seconds, until evenly blended. Taste only ingredients that are safe to eat. Combine gently: Add the prepared components and fold with a large spoon for 30\u201360 seconds. Stop when everything is lightly coated; vigorous mixing can bruise delicate ingredients. Serve or chill: Serve immediately for the crispest texture, or cover and chill for up to 30 minutes. If liquid collects, toss once more rather than adding extra salt.\nScene/backdrop: light oak kitchen table, simple home-kitchen setting, no unrelated side dishes\nSubject: the plausible finished dish exactly as produced by the recipe, with the correct protein or plant-based base, cooking method, shape, texture, sauce, topping, and garnish\nStyle/medium: realistic editorial food photography with believable home-cooked texture\nComposition/framing: landscape 3:2, slightly overhead view, full main dish visible with safe crop area for responsive cards\nLighting/mood: soft natural window light, appetizing but honest, gentle shadows\nConstraints: include only ingredients and garnishes supported by the recipe; no substitutions, no extra protein, no text, logos, watermark, collage, hands, packaging, impossible shapes, or misleading restaurant-perfect styling",
      "output_filename": "tangy-cabbage-apple-slaw.webp",
      "creation_date": "2026-10-13",
      "visual_match_review_status": "Passed labeled contact-sheet review against recipe title, ingredients, and method on 2026-10-13.",
      "duplicate_check_status": "Passed exact SHA-256 and 256-bit perceptual difference-hash checks; no exact or near duplicate primary image detected.",
      "sha256": "67665c84bbb933a5403840a72d81d7ebfea00a129e9fe2ac37077d29c9451b0d",
      "width": 1200,
      "height": 800,
      "format": "WebP",
      "responsive_crop_review_status": "Passed 3:2 card and full-width recipe-cover crop review."
    },
    {
      "recipe_title": "Cucumber tomato herb salad",
      "recipe_url": "/recipes/cucumber-tomato-herb-salad/",
      "old_image": "/assets/root-vegetables.jpg",
      "new_image": "/assets/cucumber-tomato-herb-salad.webp",
      "status": "AI-generated",
      "source_page": null,
      "download_url": null,
      "creator": null,
      "license": null,
      "license_link": null,
      "commercial_use_note": "Generated specifically for The Kitchen Table; no third-party stock photograph is assigned as this recipe primary image.",
      "generation_prompt": "Use case: photorealistic-natural\nAsset type: primary recipe image for The Kitchen Table website\nPrimary request: Create one realistic, appetizing finished serving of the recipe \u201cCucumber tomato herb salad.\u201d\nRecipe description: Cucumber tomato herb salad uses ordinary grocery-store ingredients and teaches a clear assemble workflow with visual cues for beginners.\nExact listed ingredients: 1  2 cucumbers, chopped; 400 g tomatoes, chopped; 2 tbsp extra-virgin olive oil or dressing; 1 tbsp lemon juice or mild vinegar; 0.25 tsp fine salt; 2 tbsp parsley, lemon, and olive oil\nComplete preparation method: Prepare the components: Read the full recipe. Clear the counter, wash produce, and measure every ingredient. Prepare the named main and supporting ingredients as listed; keep raw meat or seafood, its board, and its utensils separate from ready-to-eat food. Pat washed produce dry so the dressing is not diluted. Make the dressing: Whisk the oil or dressing, acid, salt, and flavorings in a large bowl for 30\u201345 seconds, until evenly blended. Taste only ingredients that are safe to eat. Combine gently: Add the prepared components and fold with a large spoon for 30\u201360 seconds. Stop when everything is lightly coated; vigorous mixing can bruise delicate ingredients. Serve or chill: Serve immediately for the crispest texture, or cover and chill for up to 30 minutes. If liquid collects, toss once more rather than adding extra salt.\nScene/backdrop: soft gray stone counter, simple home-kitchen setting, no unrelated side dishes\nSubject: the plausible finished dish exactly as produced by the recipe, with the correct protein or plant-based base, cooking method, shape, texture, sauce, topping, and garnish\nStyle/medium: realistic editorial food photography with believable home-cooked texture\nComposition/framing: landscape 3:2, natural eye-level table view, full main dish visible with safe crop area for responsive cards\nLighting/mood: soft natural window light, appetizing but honest, gentle shadows\nConstraints: include only ingredients and garnishes supported by the recipe; no substitutions, no extra protein, no text, logos, watermark, collage, hands, packaging, impossible shapes, or misleading restaurant-perfect styling",
      "output_filename": "cucumber-tomato-herb-salad.webp",
      "creation_date": "2026-10-13",
      "visual_match_review_status": "Passed labeled contact-sheet review against recipe title, ingredients, and method on 2026-10-13.",
      "duplicate_check_status": "Passed exact SHA-256 and 256-bit perceptual difference-hash checks; no exact or near duplicate primary image detected.",
      "sha256": "3f553f706813e8de278cd7be8bc329cf8728df7cb5716b24ec29bb5cc06b65e1",
      "width": 1200,
      "height": 800,
      "format": "WebP",
      "responsive_crop_review_status": "Passed 3:2 card and full-width recipe-cover crop review."
    },
    {
      "recipe_title": "Quinoa parsley tabbouleh-style salad",
      "recipe_url": "/recipes/quinoa-parsley-tabbouleh-style-salad/",
      "old_image": "/assets/root-vegetables.jpg",
      "new_image": "/assets/quinoa-parsley-tabbouleh-style-salad.webp",
      "status": "AI-generated",
      "source_page": null,
      "download_url": null,
      "creator": null,
      "license": null,
      "license_link": null,
      "commercial_use_note": "Generated specifically for The Kitchen Table; no third-party stock photograph is assigned as this recipe primary image.",
      "generation_prompt": "Use case: photorealistic-natural\nAsset type: primary recipe image for The Kitchen Table website\nPrimary request: Create one realistic, appetizing finished serving of the recipe \u201cQuinoa parsley tabbouleh-style salad.\u201d\nRecipe description: Quinoa parsley tabbouleh-style salad uses ordinary grocery-store ingredients and teaches a clear simmer workflow with visual cues for beginners.\nExact listed ingredients: 250 g quinoa; 300 g tomatoes, diced; 1 tbsp olive oil; 1  medium onion, diced; 2  garlic cloves, minced; 750 ml low-sodium stock or water, as appropriate; 0.5 tsp fine salt; 2 tbsp parsley, cucumber, and lemon\nComplete preparation method: Prepare the pot: Read the full recipe. Clear the counter, wash produce, and measure every ingredient. Prepare the named main and supporting ingredients as listed; keep raw meat or seafood, its board, and its utensils separate from ready-to-eat food. Choose a heavy pot with room for gentle bubbling. Start the flavor base: Heat oil over medium. Cook onion for 6\u20138 minutes until soft, then garlic for 30 seconds. If either browns too fast, lower the heat and add a spoonful of water. Simmer steadily: Add the main ingredient, supporting ingredient, stock, salt, and flavorings. Bring just to a boil, then lower to a gentle simmer for 20\u201335 minutes, stirring every 5 minutes. Continue until the pieces are tender and the liquid lightly coats a spoon. Adjust the texture: If thin, simmer uncovered 5 minutes; if too thick, add warm water 60 ml at a time. Taste a safe spoonful, adjust gradually, and rest 5 minutes before serving.\nScene/backdrop: cream linen over a wood table, simple home-kitchen setting, no unrelated side dishes\nSubject: the plausible finished dish exactly as produced by the recipe, with the correct protein or plant-based base, cooking method, shape, texture, sauce, topping, and garnish\nStyle/medium: realistic editorial food photography with believable home-cooked texture\nComposition/framing: landscape 3:2, 45-degree editorial view, full main dish visible with safe crop area for responsive cards\nLighting/mood: soft natural window light, appetizing but honest, gentle shadows\nConstraints: include only ingredients and garnishes supported by the recipe; no substitutions, no extra protein, no text, logos, watermark, collage, hands, packaging, impossible shapes, or misleading restaurant-perfect styling",
      "output_filename": "quinoa-parsley-tabbouleh-style-salad.webp",
      "creation_date": "2026-10-13",
      "visual_match_review_status": "Passed labeled contact-sheet review against recipe title, ingredients, and method on 2026-10-13.",
      "duplicate_check_status": "Passed exact SHA-256 and 256-bit perceptual difference-hash checks; no exact or near duplicate primary image detected.",
      "sha256": "508da9c7c56fdb6916246a3051a3f46d45d5bb13001d59cedcc343fd16224dc1",
      "width": 1200,
      "height": 800,
      "format": "WebP",
      "responsive_crop_review_status": "Passed 3:2 card and full-width recipe-cover crop review."
    },
    {
      "recipe_title": "Roasted broccoli with lemon crumbs",
      "recipe_url": "/recipes/roasted-broccoli-with-lemon-crumbs/",
      "old_image": "/assets/root-vegetables.jpg",
      "new_image": "/assets/roasted-broccoli-with-lemon-crumbs.webp",
      "status": "AI-generated",
      "source_page": null,
      "download_url": null,
      "creator": null,
      "license": null,
      "license_link": null,
      "commercial_use_note": "Generated specifically for The Kitchen Table; no third-party stock photograph is assigned as this recipe primary image.",
      "generation_prompt": "Use case: photorealistic-natural\nAsset type: primary recipe image for The Kitchen Table website\nPrimary request: Create one realistic, appetizing finished serving of the recipe \u201cRoasted broccoli with lemon crumbs.\u201d\nRecipe description: Roasted broccoli with lemon crumbs uses ordinary grocery-store ingredients and teaches a clear roast workflow with visual cues for beginners.\nExact listed ingredients: 700 g broccoli florets; 60 g breadcrumbs; 1 tbsp olive oil or other neutral cooking oil; 1  medium onion, prepared as directed; 2  garlic cloves, minced; 0.5 tsp fine salt; 0.25 tsp black pepper; 2 tbsp lemon, garlic, and olive oil\nComplete preparation method: Prepare and preheat: Read the full recipe. Clear the counter, wash produce, and measure every ingredient. Prepare the named main and supporting ingredients as listed; keep raw meat or seafood, its board, and its utensils separate from ready-to-eat food. Heat the oven to 400\u00b0F / 200\u00b0C unless the ingredient package specifies otherwise. Arrange a rack in the center and prepare the stated pan. Season evenly: Combine the main and supporting ingredients with oil, salt, pepper, and flavorings. Spread in a single, even layer; use a second pan if crowded. Bake with visual cues: Bake for 20\u201335 minutes, turning or rotating once after about 15 minutes. Lower the heat if edges darken before the center is ready; add 5-minute increments if still firm. The center should be set or tender and the edges lightly browned. Rest and finish: Remove the pan to a heat-safe surface. Rest 5 minutes so juices or structure settle, then add any fresh finishing ingredient and serve.\nScene/backdrop: dark walnut table, simple home-kitchen setting, no unrelated side dishes\nSubject: the plausible finished dish exactly as produced by the recipe, with the correct protein or plant-based base, cooking method, shape, texture, sauce, topping, and garnish\nStyle/medium: realistic editorial food photography with believable home-cooked texture\nComposition/framing: landscape 3:2, top-down view, full main dish visible with safe crop area for responsive cards\nLighting/mood: soft natural window light, appetizing but honest, gentle shadows\nConstraints: include only ingredients and garnishes supported by the recipe; no substitutions, no extra protein, no text, logos, watermark, collage, hands, packaging, impossible shapes, or misleading restaurant-perfect styling",
      "output_filename": "roasted-broccoli-with-lemon-crumbs.webp",
      "creation_date": "2026-10-13",
      "visual_match_review_status": "Passed labeled contact-sheet review against recipe title, ingredients, and method on 2026-10-13.",
      "duplicate_check_status": "Passed exact SHA-256 and 256-bit perceptual difference-hash checks; no exact or near duplicate primary image detected.",
      "sha256": "0b673a197aee1407e67bafd4f16c42d9557a7d068c14b6de9f212a7d1f063972",
      "width": 1200,
      "height": 800,
      "format": "WebP",
      "responsive_crop_review_status": "Passed 3:2 card and full-width recipe-cover crop review."
    },
    {
      "recipe_title": "Charred corn and black bean salad",
      "recipe_url": "/recipes/charred-corn-and-black-bean-salad/",
      "old_image": "/assets/root-vegetables.jpg",
      "new_image": "/assets/charred-corn-and-black-bean-salad.webp",
      "status": "AI-generated",
      "source_page": null,
      "download_url": null,
      "creator": null,
      "license": null,
      "license_link": null,
      "commercial_use_note": "Generated specifically for The Kitchen Table; no third-party stock photograph is assigned as this recipe primary image.",
      "generation_prompt": "Use case: photorealistic-natural\nAsset type: primary recipe image for The Kitchen Table website\nPrimary request: Create one realistic, appetizing finished serving of the recipe \u201cCharred corn and black bean salad.\u201d\nRecipe description: Charred corn and black bean salad uses ordinary grocery-store ingredients and teaches a clear skillet workflow with visual cues for beginners.\nExact listed ingredients: 500 g sweetcorn; 1 can black beans, 240 g drained; 1 tbsp olive oil or other neutral cooking oil; 1  medium onion, prepared as directed; 2  garlic cloves, minced; 0.5 tsp fine salt; 0.25 tsp black pepper; 2 tbsp lime, pepper, and scallions\nComplete preparation method: Set up the pan: Read the full recipe. Clear the counter, wash produce, and measure every ingredient. Prepare the named main and supporting ingredients as listed; keep raw meat or seafood, its board, and its utensils separate from ready-to-eat food. Put a wide skillet over medium heat for 2 minutes, then add the measured oil. Build color: Add the main ingredient in one layer. Cook 4\u20136 minutes without constant stirring, then turn. If it smokes heavily, lower the heat; if it stays pale and wet, increase heat slightly or work in batches. Add the supporting ingredients: Add the supporting ingredient, onion, garlic, and flavorings. Cook 5\u201310 minutes, stirring every minute or two, until aromatic and evenly cooked. Continue until the center is tender and the surface is well browned. Balance and serve: Take the pan off the heat. Taste a safe sample, then adjust salt or acidity in small amounts. Rest 3 minutes before serving.\nScene/backdrop: warm pale stone table, simple home-kitchen setting, no unrelated side dishes\nSubject: the plausible finished dish exactly as produced by the recipe, with the correct protein or plant-based base, cooking method, shape, texture, sauce, topping, and garnish\nStyle/medium: realistic editorial food photography with believable home-cooked texture\nComposition/framing: landscape 3:2, three-quarter close view, full main dish visible with safe crop area for responsive cards\nLighting/mood: soft natural window light, appetizing but honest, gentle shadows\nConstraints: include only ingredients and garnishes supported by the recipe; no substitutions, no extra protein, no text, logos, watermark, collage, hands, packaging, impossible shapes, or misleading restaurant-perfect styling",
      "output_filename": "charred-corn-and-black-bean-salad.webp",
      "creation_date": "2026-10-13",
      "visual_match_review_status": "Passed labeled contact-sheet review against recipe title, ingredients, and method on 2026-10-13.",
      "duplicate_check_status": "Passed exact SHA-256 and 256-bit perceptual difference-hash checks; no exact or near duplicate primary image detected.",
      "sha256": "3706ccfb2fb0dd9abc14d8ca4c73899caffc089583049699ea77bd902b56514f",
      "width": 1200,
      "height": 800,
      "format": "WebP",
      "responsive_crop_review_status": "Passed 3:2 card and full-width recipe-cover crop review."
    },
    {
      "recipe_title": "Crisp romaine Caesar-style salad",
      "recipe_url": "/recipes/crisp-romaine-caesar-style-salad/",
      "old_image": "/assets/root-vegetables.jpg",
      "new_image": "/assets/crisp-romaine-caesar-style-salad.webp",
      "status": "AI-generated",
      "source_page": null,
      "download_url": null,
      "creator": null,
      "license": null,
      "license_link": null,
      "commercial_use_note": "Generated specifically for The Kitchen Table; no third-party stock photograph is assigned as this recipe primary image.",
      "generation_prompt": "Use case: photorealistic-natural\nAsset type: primary recipe image for The Kitchen Table website\nPrimary request: Create one realistic, appetizing finished serving of the recipe \u201cCrisp romaine Caesar-style salad.\u201d\nRecipe description: Crisp romaine Caesar-style salad uses ordinary grocery-store ingredients and teaches a clear assemble workflow with visual cues for beginners.\nExact listed ingredients: 1  2 romaine hearts, chopped; 80 g vegetarian Parmesan-style hard cheese, shaved; 2 tbsp extra-virgin olive oil or dressing; 1 tbsp lemon juice or mild vinegar; 0.25 tsp fine salt; 2 tbsp yogurt dressing and croutons\nComplete preparation method: Prepare the components: Read the full recipe. Clear the counter, wash produce, and measure every ingredient. Prepare the named main and supporting ingredients as listed; keep raw meat or seafood, its board, and its utensils separate from ready-to-eat food. Pat washed produce dry so the dressing is not diluted. Make the dressing: Whisk the oil or dressing, acid, salt, and flavorings in a large bowl for 30\u201345 seconds, until evenly blended. Taste only ingredients that are safe to eat. Combine gently: Add the prepared components and fold with a large spoon for 30\u201360 seconds. Stop when everything is lightly coated; vigorous mixing can bruise delicate ingredients. Serve or chill: Serve immediately for the crispest texture, or cover and chill for up to 30 minutes. If liquid collects, toss once more rather than adding extra salt.\nScene/backdrop: light oak kitchen table, simple home-kitchen setting, no unrelated side dishes\nSubject: the plausible finished dish exactly as produced by the recipe, with the correct protein or plant-based base, cooking method, shape, texture, sauce, topping, and garnish\nStyle/medium: realistic editorial food photography with believable home-cooked texture\nComposition/framing: landscape 3:2, slightly overhead view, full main dish visible with safe crop area for responsive cards\nLighting/mood: soft natural window light, appetizing but honest, gentle shadows\nConstraints: include only ingredients and garnishes supported by the recipe; no substitutions, no extra protein, no text, logos, watermark, collage, hands, packaging, impossible shapes, or misleading restaurant-perfect styling",
      "output_filename": "crisp-romaine-caesar-style-salad.webp",
      "creation_date": "2026-10-13",
      "visual_match_review_status": "Passed labeled contact-sheet review against recipe title, ingredients, and method on 2026-10-13.",
      "duplicate_check_status": "Passed exact SHA-256 and 256-bit perceptual difference-hash checks; no exact or near duplicate primary image detected.",
      "sha256": "2e068221f03e7e6e09133a71a7af226dedb8bbad8a84c38d39577d4214d94769",
      "width": 1200,
      "height": 800,
      "format": "WebP",
      "responsive_crop_review_status": "Passed 3:2 card and full-width recipe-cover crop review."
    },
    {
      "recipe_title": "Oven-baked barbecue beans",
      "recipe_url": "/recipes/oven-baked-barbecue-beans/",
      "old_image": "/assets/root-vegetables.jpg",
      "new_image": "/assets/oven-baked-barbecue-beans.webp",
      "status": "AI-generated",
      "source_page": null,
      "download_url": null,
      "creator": null,
      "license": null,
      "license_link": null,
      "commercial_use_note": "Generated specifically for The Kitchen Table; no third-party stock photograph is assigned as this recipe primary image.",
      "generation_prompt": "Use case: photorealistic-natural\nAsset type: primary recipe image for The Kitchen Table website\nPrimary request: Create one realistic, appetizing finished serving of the recipe \u201cOven-baked barbecue beans.\u201d\nRecipe description: Oven-baked barbecue beans uses ordinary grocery-store ingredients and teaches a clear bake workflow with visual cues for beginners.\nExact listed ingredients: 3 cans navy beans, 720 g drained; 400 g tomato sauce; 1 tbsp olive oil or other neutral cooking oil; 1  medium onion, prepared as directed; 2  garlic cloves, minced; 0.5 tsp fine salt; 0.25 tsp black pepper; 2 tbsp molasses, mustard, and paprika\nComplete preparation method: Prepare and preheat: Read the full recipe. Clear the counter, wash produce, and measure every ingredient. Prepare the named main and supporting ingredients as listed; keep raw meat or seafood, its board, and its utensils separate from ready-to-eat food. Heat the oven to 400\u00b0F / 200\u00b0C unless the ingredient package specifies otherwise. Arrange a rack in the center and prepare the stated pan. Season evenly: Combine the main and supporting ingredients with oil, salt, pepper, and flavorings. Spread in a single, even layer; use a second pan if crowded. Bake with visual cues: Bake for 20\u201335 minutes, turning or rotating once after about 15 minutes. Lower the heat if edges darken before the center is ready; add 5-minute increments if still firm. The center should be set or tender and the edges lightly browned. Rest and finish: Remove the pan to a heat-safe surface. Rest 5 minutes so juices or structure settle, then add any fresh finishing ingredient and serve.\nScene/backdrop: soft gray stone counter, simple home-kitchen setting, no unrelated side dishes\nSubject: the plausible finished dish exactly as produced by the recipe, with the correct protein or plant-based base, cooking method, shape, texture, sauce, topping, and garnish\nStyle/medium: realistic editorial food photography with believable home-cooked texture\nComposition/framing: landscape 3:2, natural eye-level table view, full main dish visible with safe crop area for responsive cards\nLighting/mood: soft natural window light, appetizing but honest, gentle shadows\nConstraints: include only ingredients and garnishes supported by the recipe; no substitutions, no extra protein, no text, logos, watermark, collage, hands, packaging, impossible shapes, or misleading restaurant-perfect styling",
      "output_filename": "oven-baked-barbecue-beans.webp",
      "creation_date": "2026-10-13",
      "visual_match_review_status": "Passed labeled contact-sheet review against recipe title, ingredients, and method on 2026-10-13.",
      "duplicate_check_status": "Passed exact SHA-256 and 256-bit perceptual difference-hash checks; no exact or near duplicate primary image detected.",
      "sha256": "5badcebaed997ee4aec0b41ab8c958f4fbea201f9af452d1712250aff7c69d65",
      "width": 1200,
      "height": 800,
      "format": "WebP",
      "responsive_crop_review_status": "Passed 3:2 card and full-width recipe-cover crop review."
    },
    {
      "recipe_title": "One-bowl banana bread",
      "recipe_url": "/recipes/one-bowl-banana-bread/",
      "old_image": "/assets/cookies.jpg",
      "new_image": "/assets/one-bowl-banana-bread.webp",
      "status": "AI-generated",
      "source_page": null,
      "download_url": null,
      "creator": null,
      "license": null,
      "license_link": null,
      "commercial_use_note": "Generated specifically for The Kitchen Table; no third-party stock photograph is assigned as this recipe primary image.",
      "generation_prompt": "Use case: photorealistic-natural\nAsset type: primary recipe image for The Kitchen Table website\nPrimary request: Create one realistic, appetizing finished serving of the recipe \u201cOne-bowl banana bread.\u201d\nRecipe description: One-bowl banana bread uses ordinary grocery-store ingredients and teaches a clear dessert workflow with visual cues for beginners.\nExact listed ingredients: 1  3 ripe bananas, mashed; 250 g all-purpose flour; 120 g granulated or light brown sugar, as directed; 2  large eggs; 100 g unsalted butter, softened or melted as directed; 2 tsp baking powder; 0.25 tsp fine salt; 1 tsp butter, cinnamon, and vanilla flavoring mixture\nComplete preparation method: Prepare the pan and oven: Read the full recipe. Clear the counter, wash produce, and measure every ingredient. Prepare the named main and supporting ingredients as listed; keep raw meat or seafood, its board, and its utensils separate from ready-to-eat food. Heat the oven to 350\u00b0F / 175\u00b0C and let it fully preheat. Grease and line the pan named by the recipe; changing pan size changes baking time. Mix without overworking: Whisk the measured dry ingredients in one bowl. Mix the wet ingredients in another, then fold them together just until no dry flour remains. Overmixing can make the crumb tough. Bake and check early: Bake on the center rack and begin checking after 25 minutes. Muffins, cookies, and biscuits may finish sooner; loaves and deep cobblers may need 45\u201360 minutes. The edges should be set and a tester should show moist crumbs, not liquid batter. Tent loosely with foil if the top darkens too quickly. Cool for structure: Cool in the pan for 10 minutes, then follow the recipe\u2019s pan-safe removal method. Let cakes and loaves cool completely before glazing or slicing so steam does not make them gummy.\nScene/backdrop: cream linen over a wood table, simple home-kitchen setting, no unrelated side dishes\nSubject: the plausible finished dish exactly as produced by the recipe, with the correct protein or plant-based base, cooking method, shape, texture, sauce, topping, and garnish\nStyle/medium: realistic editorial food photography with believable home-cooked texture\nComposition/framing: landscape 3:2, 45-degree editorial view, full main dish visible with safe crop area for responsive cards\nLighting/mood: soft natural window light, appetizing but honest, gentle shadows\nConstraints: include only ingredients and garnishes supported by the recipe; no substitutions, no extra protein, no text, logos, watermark, collage, hands, packaging, impossible shapes, or misleading restaurant-perfect styling",
      "output_filename": "one-bowl-banana-bread.webp",
      "creation_date": "2026-10-13",
      "visual_match_review_status": "Passed labeled contact-sheet review against recipe title, ingredients, and method on 2026-10-13.",
      "duplicate_check_status": "Passed exact SHA-256 and 256-bit perceptual difference-hash checks; no exact or near duplicate primary image detected.",
      "sha256": "666ab7fd9353a37540a199410a3d4be7b2b64c569e65d3968001e0626bab15bb",
      "width": 1200,
      "height": 800,
      "format": "WebP",
      "responsive_crop_review_status": "Passed 3:2 card and full-width recipe-cover crop review."
    },
    {
      "recipe_title": "Lemon blueberry muffins",
      "recipe_url": "/recipes/lemon-blueberry-muffins/",
      "old_image": "/assets/cookies.jpg",
      "new_image": "/assets/lemon-blueberry-muffins.webp",
      "status": "AI-generated",
      "source_page": null,
      "download_url": null,
      "creator": null,
      "license": null,
      "license_link": null,
      "commercial_use_note": "Generated specifically for The Kitchen Table; no third-party stock photograph is assigned as this recipe primary image.",
      "generation_prompt": "Use case: photorealistic-natural\nAsset type: primary recipe image for The Kitchen Table website\nPrimary request: Create one realistic, appetizing finished serving of the recipe \u201cLemon blueberry muffins.\u201d\nRecipe description: Lemon blueberry muffins uses ordinary grocery-store ingredients and teaches a clear dessert workflow with visual cues for beginners.\nExact listed ingredients: 250 g all-purpose flour; 180 g blueberries; 120 g granulated or light brown sugar, as directed; 2  large eggs; 100 g unsalted butter, softened or melted as directed; 2 tsp baking powder; 0.25 tsp fine salt; 1 tsp lemon zest and yogurt flavoring mixture\nComplete preparation method: Prepare the pan and oven: Read the full recipe. Clear the counter, wash produce, and measure every ingredient. Prepare the named main and supporting ingredients as listed; keep raw meat or seafood, its board, and its utensils separate from ready-to-eat food. Heat the oven to 350\u00b0F / 175\u00b0C and let it fully preheat. Grease and line the pan named by the recipe; changing pan size changes baking time. Mix without overworking: Whisk the measured dry ingredients in one bowl. Mix the wet ingredients in another, then fold them together just until no dry flour remains. Overmixing can make the crumb tough. Bake and check early: Bake on the center rack and begin checking after 25 minutes. Muffins, cookies, and biscuits may finish sooner; loaves and deep cobblers may need 45\u201360 minutes. The edges should be set and a tester should show moist crumbs, not liquid batter. Tent loosely with foil if the top darkens too quickly. Cool for structure: Cool in the pan for 10 minutes, then follow the recipe\u2019s pan-safe removal method. Let cakes and loaves cool completely before glazing or slicing so steam does not make them gummy.\nScene/backdrop: dark walnut table, simple home-kitchen setting, no unrelated side dishes\nSubject: the plausible finished dish exactly as produced by the recipe, with the correct protein or plant-based base, cooking method, shape, texture, sauce, topping, and garnish\nStyle/medium: realistic editorial food photography with believable home-cooked texture\nComposition/framing: landscape 3:2, top-down view, full main dish visible with safe crop area for responsive cards\nLighting/mood: soft natural window light, appetizing but honest, gentle shadows\nConstraints: include only ingredients and garnishes supported by the recipe; no substitutions, no extra protein, no text, logos, watermark, collage, hands, packaging, impossible shapes, or misleading restaurant-perfect styling",
      "output_filename": "lemon-blueberry-muffins.webp",
      "creation_date": "2026-10-13",
      "visual_match_review_status": "Passed labeled contact-sheet review against recipe title, ingredients, and method on 2026-10-13.",
      "duplicate_check_status": "Passed exact SHA-256 and 256-bit perceptual difference-hash checks; no exact or near duplicate primary image detected.",
      "sha256": "a02c0c93b493e55a6ac7d9376f0479dea1186d8517b042bc71c8206101d64f05",
      "width": 1200,
      "height": 800,
      "format": "WebP",
      "responsive_crop_review_status": "Passed 3:2 card and full-width recipe-cover crop review."
    },
    {
      "recipe_title": "Chewy oatmeal raisin cookies",
      "recipe_url": "/recipes/chewy-oatmeal-raisin-cookies/",
      "old_image": "/assets/eggs.jpg",
      "new_image": "/assets/chewy-oatmeal-raisin-cookies.webp",
      "status": "AI-generated",
      "source_page": null,
      "download_url": null,
      "creator": null,
      "license": null,
      "license_link": null,
      "commercial_use_note": "Generated specifically for The Kitchen Table; no third-party stock photograph is assigned as this recipe primary image.",
      "generation_prompt": "Use case: photorealistic-natural\nAsset type: primary recipe image for The Kitchen Table website\nPrimary request: Create one realistic, appetizing finished serving of the recipe \u201cChewy oatmeal raisin cookies.\u201d\nRecipe description: Chewy oatmeal raisin cookies uses ordinary grocery-store ingredients and teaches a clear dessert workflow with visual cues for beginners.\nExact listed ingredients: 180 g rolled oats; 150 g raisins; 120 g granulated or light brown sugar, as directed; 2  large eggs; 100 g unsalted butter, softened or melted as directed; 2 tsp baking powder; 0.25 tsp fine salt; 1 tsp brown sugar and cinnamon flavoring mixture\nComplete preparation method: Prepare the pan and oven: Read the full recipe. Clear the counter, wash produce, and measure every ingredient. Prepare the named main and supporting ingredients as listed; keep raw meat or seafood, its board, and its utensils separate from ready-to-eat food. Heat the oven to 350\u00b0F / 175\u00b0C and let it fully preheat. Grease and line the pan named by the recipe; changing pan size changes baking time. Mix without overworking: Whisk the measured dry ingredients in one bowl. Mix the wet ingredients in another, then fold them together just until no dry flour remains. Overmixing can make the crumb tough. Bake and check early: Bake on the center rack and begin checking after 25 minutes. Muffins, cookies, and biscuits may finish sooner; loaves and deep cobblers may need 45\u201360 minutes. The edges should be set and a tester should show moist crumbs, not liquid batter. Tent loosely with foil if the top darkens too quickly. Cool for structure: Cool in the pan for 10 minutes, then follow the recipe\u2019s pan-safe removal method. Let cakes and loaves cool completely before glazing or slicing so steam does not make them gummy.\nScene/backdrop: warm pale stone table, simple home-kitchen setting, no unrelated side dishes\nSubject: the plausible finished dish exactly as produced by the recipe, with the correct protein or plant-based base, cooking method, shape, texture, sauce, topping, and garnish\nStyle/medium: realistic editorial food photography with believable home-cooked texture\nComposition/framing: landscape 3:2, three-quarter close view, full main dish visible with safe crop area for responsive cards\nLighting/mood: soft natural window light, appetizing but honest, gentle shadows\nConstraints: include only ingredients and garnishes supported by the recipe; no substitutions, no extra protein, no text, logos, watermark, collage, hands, packaging, impossible shapes, or misleading restaurant-perfect styling",
      "output_filename": "chewy-oatmeal-raisin-cookies.webp",
      "creation_date": "2026-10-13",
      "visual_match_review_status": "Passed labeled contact-sheet review against recipe title, ingredients, and method on 2026-10-13.",
      "duplicate_check_status": "Passed exact SHA-256 and 256-bit perceptual difference-hash checks; no exact or near duplicate primary image detected.",
      "sha256": "965d9b8c0c9585941c469dec79840b3139ebcd8ca7fe9b5ccd0751fc2961bfc7",
      "width": 1200,
      "height": 800,
      "format": "WebP",
      "responsive_crop_review_status": "Passed 3:2 card and full-width recipe-cover crop review."
    },
    {
      "recipe_title": "Simple apple oat crisp",
      "recipe_url": "/recipes/simple-apple-oat-crisp/",
      "old_image": "/assets/eggs.jpg",
      "new_image": "/assets/simple-apple-oat-crisp.webp",
      "status": "AI-generated",
      "source_page": null,
      "download_url": null,
      "creator": null,
      "license": null,
      "license_link": null,
      "commercial_use_note": "Generated specifically for The Kitchen Table; no third-party stock photograph is assigned as this recipe primary image.",
      "generation_prompt": "Use case: photorealistic-natural\nAsset type: primary recipe image for The Kitchen Table website\nPrimary request: Create one realistic, appetizing finished serving of the recipe \u201cSimple apple oat crisp.\u201d\nRecipe description: Simple apple oat crisp uses ordinary grocery-store ingredients and teaches a clear dessert workflow with visual cues for beginners.\nExact listed ingredients: 800 g apples, sliced; 140 g rolled oats; 120 g granulated or light brown sugar, as directed; 2  large eggs; 100 g unsalted butter, softened or melted as directed; 2 tsp baking powder; 0.25 tsp fine salt; 1 tsp brown sugar, butter, and cinnamon flavoring mixture\nComplete preparation method: Prepare the pan and oven: Read the full recipe. Clear the counter, wash produce, and measure every ingredient. Prepare the named main and supporting ingredients as listed; keep raw meat or seafood, its board, and its utensils separate from ready-to-eat food. Heat the oven to 350\u00b0F / 175\u00b0C and let it fully preheat. Grease and line the pan named by the recipe; changing pan size changes baking time. Mix without overworking: Whisk the measured dry ingredients in one bowl. Mix the wet ingredients in another, then fold them together just until no dry flour remains. Overmixing can make the crumb tough. Bake and check early: Bake on the center rack and begin checking after 25 minutes. Muffins, cookies, and biscuits may finish sooner; loaves and deep cobblers may need 45\u201360 minutes. The edges should be set and a tester should show moist crumbs, not liquid batter. Tent loosely with foil if the top darkens too quickly. Cool for structure: Cool in the pan for 10 minutes, then follow the recipe\u2019s pan-safe removal method. Let cakes and loaves cool completely before glazing or slicing so steam does not make them gummy.\nScene/backdrop: light oak kitchen table, simple home-kitchen setting, no unrelated side dishes\nSubject: the plausible finished dish exactly as produced by the recipe, with the correct protein or plant-based base, cooking method, shape, texture, sauce, topping, and garnish\nStyle/medium: realistic editorial food photography with believable home-cooked texture\nComposition/framing: landscape 3:2, slightly overhead view, full main dish visible with safe crop area for responsive cards\nLighting/mood: soft natural window light, appetizing but honest, gentle shadows\nConstraints: include only ingredients and garnishes supported by the recipe; no substitutions, no extra protein, no text, logos, watermark, collage, hands, packaging, impossible shapes, or misleading restaurant-perfect styling",
      "output_filename": "simple-apple-oat-crisp.webp",
      "creation_date": "2026-10-13",
      "visual_match_review_status": "Passed labeled contact-sheet review against recipe title, ingredients, and method on 2026-10-13.",
      "duplicate_check_status": "Passed exact SHA-256 and 256-bit perceptual difference-hash checks; no exact or near duplicate primary image detected.",
      "sha256": "18da917f7e463be1298119ded9d313f3d90f7195d93acb592fe6c3f2c16afb42",
      "width": 1200,
      "height": 800,
      "format": "WebP",
      "responsive_crop_review_status": "Passed 3:2 card and full-width recipe-cover crop review."
    },
    {
      "recipe_title": "Glazed lemon loaf cake",
      "recipe_url": "/recipes/glazed-lemon-loaf-cake/",
      "old_image": "/assets/cookies.jpg",
      "new_image": "/assets/glazed-lemon-loaf-cake.webp",
      "status": "AI-generated",
      "source_page": null,
      "download_url": null,
      "creator": null,
      "license": null,
      "license_link": null,
      "commercial_use_note": "Generated specifically for The Kitchen Table; no third-party stock photograph is assigned as this recipe primary image.",
      "generation_prompt": "Use case: photorealistic-natural\nAsset type: primary recipe image for The Kitchen Table website\nPrimary request: Create one realistic, appetizing finished serving of the recipe \u201cGlazed lemon loaf cake.\u201d\nRecipe description: Glazed lemon loaf cake uses ordinary grocery-store ingredients and teaches a clear dessert workflow with visual cues for beginners.\nExact listed ingredients: 220 g all-purpose flour; 2 large lemons; 120 g granulated or light brown sugar, as directed; 2  large eggs; 100 g unsalted butter, softened or melted as directed; 2 tsp baking powder; 0.25 tsp fine salt; 1 tsp butter, eggs, and sugar flavoring mixture\nComplete preparation method: Prepare the pan and oven: Read the full recipe. Clear the counter, wash produce, and measure every ingredient. Prepare the named main and supporting ingredients as listed; keep raw meat or seafood, its board, and its utensils separate from ready-to-eat food. Heat the oven to 350\u00b0F / 175\u00b0C and let it fully preheat. Grease and line the pan named by the recipe; changing pan size changes baking time. Mix without overworking: Whisk the measured dry ingredients in one bowl. Mix the wet ingredients in another, then fold them together just until no dry flour remains. Overmixing can make the crumb tough. Bake and check early: Bake on the center rack and begin checking after 25 minutes. Muffins, cookies, and biscuits may finish sooner; loaves and deep cobblers may need 45\u201360 minutes. The edges should be set and a tester should show moist crumbs, not liquid batter. Tent loosely with foil if the top darkens too quickly. Cool for structure: Cool in the pan for 10 minutes, then follow the recipe\u2019s pan-safe removal method. Let cakes and loaves cool completely before glazing or slicing so steam does not make them gummy.\nScene/backdrop: soft gray stone counter, simple home-kitchen setting, no unrelated side dishes\nSubject: the plausible finished dish exactly as produced by the recipe, with the correct protein or plant-based base, cooking method, shape, texture, sauce, topping, and garnish\nStyle/medium: realistic editorial food photography with believable home-cooked texture\nComposition/framing: landscape 3:2, natural eye-level table view, full main dish visible with safe crop area for responsive cards\nLighting/mood: soft natural window light, appetizing but honest, gentle shadows\nConstraints: include only ingredients and garnishes supported by the recipe; no substitutions, no extra protein, no text, logos, watermark, collage, hands, packaging, impossible shapes, or misleading restaurant-perfect styling",
      "output_filename": "glazed-lemon-loaf-cake.webp",
      "creation_date": "2026-10-13",
      "visual_match_review_status": "Passed labeled contact-sheet review against recipe title, ingredients, and method on 2026-10-13.",
      "duplicate_check_status": "Passed exact SHA-256 and 256-bit perceptual difference-hash checks; no exact or near duplicate primary image detected.",
      "sha256": "3af00a36dca18c5a954ae4fc4870135e6b9a8a13322040ec3fe8c773f10eb956",
      "width": 1200,
      "height": 800,
      "format": "WebP",
      "responsive_crop_review_status": "Passed 3:2 card and full-width recipe-cover crop review."
    },
    {
      "recipe_title": "Beginner chocolate snack cake",
      "recipe_url": "/recipes/beginner-chocolate-snack-cake/",
      "old_image": "/assets/cookies.jpg",
      "new_image": "/assets/beginner-chocolate-snack-cake.webp",
      "status": "AI-generated",
      "source_page": null,
      "download_url": null,
      "creator": null,
      "license": null,
      "license_link": null,
      "commercial_use_note": "Generated specifically for The Kitchen Table; no third-party stock photograph is assigned as this recipe primary image.",
      "generation_prompt": "Use case: photorealistic-natural\nAsset type: primary recipe image for The Kitchen Table website\nPrimary request: Create one realistic, appetizing finished serving of the recipe \u201cBeginner chocolate snack cake.\u201d\nRecipe description: Beginner chocolate snack cake uses ordinary grocery-store ingredients and teaches a clear dessert workflow with visual cues for beginners.\nExact listed ingredients: 200 g all-purpose flour; 45 g unsweetened cocoa; 120 g granulated or light brown sugar, as directed; 2  large eggs; 100 g unsalted butter, softened or melted as directed; 2 tsp baking powder; 0.25 tsp fine salt; 1 tsp oil, milk, and sugar flavoring mixture\nComplete preparation method: Prepare the pan and oven: Read the full recipe. Clear the counter, wash produce, and measure every ingredient. Prepare the named main and supporting ingredients as listed; keep raw meat or seafood, its board, and its utensils separate from ready-to-eat food. Heat the oven to 350\u00b0F / 175\u00b0C and let it fully preheat. Grease and line the pan named by the recipe; changing pan size changes baking time. Mix without overworking: Whisk the measured dry ingredients in one bowl. Mix the wet ingredients in another, then fold them together just until no dry flour remains. Overmixing can make the crumb tough. Bake and check early: Bake on the center rack and begin checking after 25 minutes. Muffins, cookies, and biscuits may finish sooner; loaves and deep cobblers may need 45\u201360 minutes. The edges should be set and a tester should show moist crumbs, not liquid batter. Tent loosely with foil if the top darkens too quickly. Cool for structure: Cool in the pan for 10 minutes, then follow the recipe\u2019s pan-safe removal method. Let cakes and loaves cool completely before glazing or slicing so steam does not make them gummy.\nScene/backdrop: cream linen over a wood table, simple home-kitchen setting, no unrelated side dishes\nSubject: the plausible finished dish exactly as produced by the recipe, with the correct protein or plant-based base, cooking method, shape, texture, sauce, topping, and garnish\nStyle/medium: realistic editorial food photography with believable home-cooked texture\nComposition/framing: landscape 3:2, 45-degree editorial view, full main dish visible with safe crop area for responsive cards\nLighting/mood: soft natural window light, appetizing but honest, gentle shadows\nConstraints: include only ingredients and garnishes supported by the recipe; no substitutions, no extra protein, no text, logos, watermark, collage, hands, packaging, impossible shapes, or misleading restaurant-perfect styling",
      "output_filename": "beginner-chocolate-snack-cake.webp",
      "creation_date": "2026-10-13",
      "visual_match_review_status": "Passed labeled contact-sheet review against recipe title, ingredients, and method on 2026-10-13.",
      "duplicate_check_status": "Passed exact SHA-256 and 256-bit perceptual difference-hash checks; no exact or near duplicate primary image detected.",
      "sha256": "7dfd02e2282dbf6e18e189a4da70da7a6e18f4ad6231e7c55405e249f6b7c9c5",
      "width": 1200,
      "height": 800,
      "format": "WebP",
      "responsive_crop_review_status": "Passed 3:2 card and full-width recipe-cover crop review."
    },
    {
      "recipe_title": "Flaky drop biscuits",
      "recipe_url": "/recipes/flaky-drop-biscuits/",
      "old_image": "/assets/cookies.jpg",
      "new_image": "/assets/flaky-drop-biscuits.webp",
      "status": "AI-generated",
      "source_page": null,
      "download_url": null,
      "creator": null,
      "license": null,
      "license_link": null,
      "commercial_use_note": "Generated specifically for The Kitchen Table; no third-party stock photograph is assigned as this recipe primary image.",
      "generation_prompt": "Use case: photorealistic-natural\nAsset type: primary recipe image for The Kitchen Table website\nPrimary request: Create one realistic, appetizing finished serving of the recipe \u201cFlaky drop biscuits.\u201d\nRecipe description: Flaky drop biscuits uses ordinary grocery-store ingredients and teaches a clear dessert workflow with visual cues for beginners.\nExact listed ingredients: 250 g all-purpose flour; 240 ml cold buttermilk; 120 g granulated or light brown sugar, as directed; 2  large eggs; 100 g unsalted butter, softened or melted as directed; 2 tsp baking powder; 0.25 tsp fine salt; 1 tsp cold butter and baking powder flavoring mixture\nComplete preparation method: Prepare the pan and oven: Read the full recipe. Clear the counter, wash produce, and measure every ingredient. Prepare the named main and supporting ingredients as listed; keep raw meat or seafood, its board, and its utensils separate from ready-to-eat food. Heat the oven to 350\u00b0F / 175\u00b0C and let it fully preheat. Grease and line the pan named by the recipe; changing pan size changes baking time. Mix without overworking: Whisk the measured dry ingredients in one bowl. Mix the wet ingredients in another, then fold them together just until no dry flour remains. Overmixing can make the crumb tough. Bake and check early: Bake on the center rack and begin checking after 25 minutes. Muffins, cookies, and biscuits may finish sooner; loaves and deep cobblers may need 45\u201360 minutes. The edges should be set and a tester should show moist crumbs, not liquid batter. Tent loosely with foil if the top darkens too quickly. Cool for structure: Cool in the pan for 10 minutes, then follow the recipe\u2019s pan-safe removal method. Let cakes and loaves cool completely before glazing or slicing so steam does not make them gummy.\nScene/backdrop: dark walnut table, simple home-kitchen setting, no unrelated side dishes\nSubject: the plausible finished dish exactly as produced by the recipe, with the correct protein or plant-based base, cooking method, shape, texture, sauce, topping, and garnish\nStyle/medium: realistic editorial food photography with believable home-cooked texture\nComposition/framing: landscape 3:2, top-down view, full main dish visible with safe crop area for responsive cards\nLighting/mood: soft natural window light, appetizing but honest, gentle shadows\nConstraints: include only ingredients and garnishes supported by the recipe; no substitutions, no extra protein, no text, logos, watermark, collage, hands, packaging, impossible shapes, or misleading restaurant-perfect styling",
      "output_filename": "flaky-drop-biscuits.webp",
      "creation_date": "2026-10-13",
      "visual_match_review_status": "Passed labeled contact-sheet review against recipe title, ingredients, and method on 2026-10-13.",
      "duplicate_check_status": "Passed exact SHA-256 and 256-bit perceptual difference-hash checks; no exact or near duplicate primary image detected.",
      "sha256": "48d4bc6e53c29e066dcd749940d5a426dbd3eb8d25f9b4c939fb22960e0d09fc",
      "width": 1200,
      "height": 800,
      "format": "WebP",
      "responsive_crop_review_status": "Passed 3:2 card and full-width recipe-cover crop review."
    },
    {
      "recipe_title": "Small-batch cinnamon rolls",
      "recipe_url": "/recipes/small-batch-cinnamon-rolls/",
      "old_image": "/assets/cookies.jpg",
      "new_image": "/assets/small-batch-cinnamon-rolls.webp",
      "status": "AI-generated",
      "source_page": null,
      "download_url": null,
      "creator": null,
      "license": null,
      "license_link": null,
      "commercial_use_note": "Generated specifically for The Kitchen Table; no third-party stock photograph is assigned as this recipe primary image.",
      "generation_prompt": "Use case: photorealistic-natural\nAsset type: primary recipe image for The Kitchen Table website\nPrimary request: Create one realistic, appetizing finished serving of the recipe \u201cSmall-batch cinnamon rolls.\u201d\nRecipe description: Small-batch cinnamon rolls uses ordinary grocery-store ingredients and teaches a clear dessert workflow with visual cues for beginners.\nExact listed ingredients: 300 g all-purpose flour; 7 g instant yeast; 120 g granulated or light brown sugar, as directed; 2  large eggs; 100 g unsalted butter, softened or melted as directed; 2 tsp baking powder; 0.25 tsp fine salt; 1 tsp milk, butter, and cinnamon flavoring mixture\nComplete preparation method: Prepare the pan and oven: Read the full recipe. Clear the counter, wash produce, and measure every ingredient. Prepare the named main and supporting ingredients as listed; keep raw meat or seafood, its board, and its utensils separate from ready-to-eat food. Heat the oven to 350\u00b0F / 175\u00b0C and let it fully preheat. Grease and line the pan named by the recipe; changing pan size changes baking time. Mix without overworking: Whisk the measured dry ingredients in one bowl. Mix the wet ingredients in another, then fold them together just until no dry flour remains. Overmixing can make the crumb tough. Bake and check early: Bake on the center rack and begin checking after 25 minutes. Muffins, cookies, and biscuits may finish sooner; loaves and deep cobblers may need 45\u201360 minutes. The edges should be set and a tester should show moist crumbs, not liquid batter. Tent loosely with foil if the top darkens too quickly. Cool for structure: Cool in the pan for 10 minutes, then follow the recipe\u2019s pan-safe removal method. Let cakes and loaves cool completely before glazing or slicing so steam does not make them gummy.\nScene/backdrop: warm pale stone table, simple home-kitchen setting, no unrelated side dishes\nSubject: the plausible finished dish exactly as produced by the recipe, with the correct protein or plant-based base, cooking method, shape, texture, sauce, topping, and garnish\nStyle/medium: realistic editorial food photography with believable home-cooked texture\nComposition/framing: landscape 3:2, three-quarter close view, full main dish visible with safe crop area for responsive cards\nLighting/mood: soft natural window light, appetizing but honest, gentle shadows\nConstraints: include only ingredients and garnishes supported by the recipe; no substitutions, no extra protein, no text, logos, watermark, collage, hands, packaging, impossible shapes, or misleading restaurant-perfect styling",
      "output_filename": "small-batch-cinnamon-rolls.webp",
      "creation_date": "2026-10-13",
      "visual_match_review_status": "Passed labeled contact-sheet review against recipe title, ingredients, and method on 2026-10-13.",
      "duplicate_check_status": "Passed exact SHA-256 and 256-bit perceptual difference-hash checks; no exact or near duplicate primary image detected.",
      "sha256": "b68e8eba76eee0ca032c43022cc0dfdddad6208e66b1096917988f3a13485309",
      "width": 1200,
      "height": 800,
      "format": "WebP",
      "responsive_crop_review_status": "Passed 3:2 card and full-width recipe-cover crop review."
    },
    {
      "recipe_title": "Vanilla stovetop rice pudding",
      "recipe_url": "/recipes/vanilla-stovetop-rice-pudding/",
      "old_image": "/assets/rice.jpg",
      "new_image": "/assets/vanilla-stovetop-rice-pudding.webp",
      "status": "AI-generated",
      "source_page": null,
      "download_url": null,
      "creator": null,
      "license": null,
      "license_link": null,
      "commercial_use_note": "Generated specifically for The Kitchen Table; no third-party stock photograph is assigned as this recipe primary image.",
      "generation_prompt": "Use case: photorealistic-natural\nAsset type: primary recipe image for The Kitchen Table website\nPrimary request: Create one realistic, appetizing finished serving of the recipe \u201cVanilla stovetop rice pudding.\u201d\nRecipe description: Vanilla stovetop rice pudding uses ordinary grocery-store ingredients and teaches a clear simmer workflow with visual cues for beginners.\nExact listed ingredients: 150 g short-grain rice; 750 ml whole milk; 1 tbsp olive oil; 1  medium onion, diced; 2  garlic cloves, minced; 750 ml low-sodium stock or water, as appropriate; 0.5 tsp fine salt; 2 tbsp sugar, vanilla, and cinnamon\nComplete preparation method: Prepare the pot: Read the full recipe. Clear the counter, wash produce, and measure every ingredient. Prepare the named main and supporting ingredients as listed; keep raw meat or seafood, its board, and its utensils separate from ready-to-eat food. Choose a heavy pot with room for gentle bubbling. Start the flavor base: Heat oil over medium. Cook onion for 6\u20138 minutes until soft, then garlic for 30 seconds. If either browns too fast, lower the heat and add a spoonful of water. Simmer steadily: Add the main ingredient, supporting ingredient, stock, salt, and flavorings. Bring just to a boil, then lower to a gentle simmer for 20\u201335 minutes, stirring every 5 minutes. Continue until the pieces are tender and the liquid lightly coats a spoon. Adjust the texture: If thin, simmer uncovered 5 minutes; if too thick, add warm water 60 ml at a time. Taste a safe spoonful, adjust gradually, and rest 5 minutes before serving.\nScene/backdrop: light oak kitchen table, simple home-kitchen setting, no unrelated side dishes\nSubject: the plausible finished dish exactly as produced by the recipe, with the correct protein or plant-based base, cooking method, shape, texture, sauce, topping, and garnish\nStyle/medium: realistic editorial food photography with believable home-cooked texture\nComposition/framing: landscape 3:2, slightly overhead view, full main dish visible with safe crop area for responsive cards\nLighting/mood: soft natural window light, appetizing but honest, gentle shadows\nConstraints: include only ingredients and garnishes supported by the recipe; no substitutions, no extra protein, no text, logos, watermark, collage, hands, packaging, impossible shapes, or misleading restaurant-perfect styling",
      "output_filename": "vanilla-stovetop-rice-pudding.webp",
      "creation_date": "2026-10-13",
      "visual_match_review_status": "Passed labeled contact-sheet review against recipe title, ingredients, and method on 2026-10-13.",
      "duplicate_check_status": "Passed exact SHA-256 and 256-bit perceptual difference-hash checks; no exact or near duplicate primary image detected.",
      "sha256": "27fa50b23077d28047d9d479b279a86ddb316649dd5ee242e1215b057c64c24e",
      "width": 1200,
      "height": 800,
      "format": "WebP",
      "responsive_crop_review_status": "Passed 3:2 card and full-width recipe-cover crop review."
    },
    {
      "recipe_title": "Easy peach cobbler",
      "recipe_url": "/recipes/easy-peach-cobbler/",
      "old_image": "/assets/cookies.jpg",
      "new_image": "/assets/easy-peach-cobbler.webp",
      "status": "AI-generated",
      "source_page": null,
      "download_url": null,
      "creator": null,
      "license": null,
      "license_link": null,
      "commercial_use_note": "Generated specifically for The Kitchen Table; no third-party stock photograph is assigned as this recipe primary image.",
      "generation_prompt": "Use case: photorealistic-natural\nAsset type: primary recipe image for The Kitchen Table website\nPrimary request: Create one realistic, appetizing finished serving of the recipe \u201cEasy peach cobbler.\u201d\nRecipe description: Easy peach cobbler uses ordinary grocery-store ingredients and teaches a clear dessert workflow with visual cues for beginners.\nExact listed ingredients: 700 g sliced peaches; 180 g all-purpose flour; 120 g granulated or light brown sugar, as directed; 2  large eggs; 100 g unsalted butter, softened or melted as directed; 2 tsp baking powder; 0.25 tsp fine salt; 1 tsp milk, butter, and sugar flavoring mixture\nComplete preparation method: Prepare the pan and oven: Read the full recipe. Clear the counter, wash produce, and measure every ingredient. Prepare the named main and supporting ingredients as listed; keep raw meat or seafood, its board, and its utensils separate from ready-to-eat food. Heat the oven to 350\u00b0F / 175\u00b0C and let it fully preheat. Grease and line the pan named by the recipe; changing pan size changes baking time. Mix without overworking: Whisk the measured dry ingredients in one bowl. Mix the wet ingredients in another, then fold them together just until no dry flour remains. Overmixing can make the crumb tough. Bake and check early: Bake on the center rack and begin checking after 25 minutes. Muffins, cookies, and biscuits may finish sooner; loaves and deep cobblers may need 45\u201360 minutes. The edges should be set and a tester should show moist crumbs, not liquid batter. Tent loosely with foil if the top darkens too quickly. Cool for structure: Cool in the pan for 10 minutes, then follow the recipe\u2019s pan-safe removal method. Let cakes and loaves cool completely before glazing or slicing so steam does not make them gummy.\nScene/backdrop: soft gray stone counter, simple home-kitchen setting, no unrelated side dishes\nSubject: the plausible finished dish exactly as produced by the recipe, with the correct protein or plant-based base, cooking method, shape, texture, sauce, topping, and garnish\nStyle/medium: realistic editorial food photography with believable home-cooked texture\nComposition/framing: landscape 3:2, natural eye-level table view, full main dish visible with safe crop area for responsive cards\nLighting/mood: soft natural window light, appetizing but honest, gentle shadows\nConstraints: include only ingredients and garnishes supported by the recipe; no substitutions, no extra protein, no text, logos, watermark, collage, hands, packaging, impossible shapes, or misleading restaurant-perfect styling",
      "output_filename": "easy-peach-cobbler.webp",
      "creation_date": "2026-10-13",
      "visual_match_review_status": "Passed labeled contact-sheet review against recipe title, ingredients, and method on 2026-10-13.",
      "duplicate_check_status": "Passed exact SHA-256 and 256-bit perceptual difference-hash checks; no exact or near duplicate primary image detected.",
      "sha256": "e4f2fb916d85e39c62ecaebb2c70cf38286138525b3bab85dd6c4e488027754a",
      "width": 1200,
      "height": 800,
      "format": "WebP",
      "responsive_crop_review_status": "Passed 3:2 card and full-width recipe-cover crop review."
    }
  ]
}