{"$schema":"https://cookwala.ai/v1/schemas/recipe.schema.json","cookwala":"0.2.0","id":"w-lb-023","revision":1,"updated":"2026-10-08","legacy":{"dataUrl":"https://fifi.cooking/data/recipes/w-lb-023.json","pageUrl":"https://fifi.cooking/recipe/w-lb-023/"},"verification":{"level":"V0","generatedBy":"tools/export_fifi.py (deterministic, RFC-0009)","notes":"Described, not machine-verified: original ingredients and steps from fifi.cooking; quantities parsed from the text where possible; no end conditions, hazards or critical control points have been verified. Every step is an unclassified legacy step that a device never executes."},"dish":{"names":{"ar":"ليالي لبنان","bn":"লায়ালি লুবনান","cs":"Layali lubnan","de":"Layali Lubnan","el":"Λαγιάλι Λουμπνάν","en":"Layali Lubnan","es":"Layali Lubnan","fa":"لیالی لبنان","fr":"Layali Lubnan","he":"ליאלי לבנאן","hi":"लयाली लुबनान","id":"Layali Lubnan","it":"Layali Lubnan","ja":"ライャーリー・ルブナーン","ko":"라얄리 루브난","ku":"Layali Lubnan","nl":"Layali Lubnan (Libanese semolinapudding)","pl":"Layali Lubnan (libański deser z kaszy manny)","ps":"لیالي لبنان (د لبنان د سوجي پډنګ)","pt":"Layali Lubnan","ru":"Лаяли Любнан","sq":"Layali Lubnan","sv":"Layali Lubnan","sw":"Layali Lubnan (Pudingi ya Semolina ya Lebanoni)","te":"లయాలీ లుబ్నాన్ (సెమోలినా పుడ్డింగ్)","tr":"Leyali Lübnan (İrmikli Tatlı)","ur":"لیالی لبنان","vi":"Layali Lubnan","zh":"黎巴嫩之夜"},"localName":"ليالي لبنان","cuisine":["LB"],"course":"other","tags":["Desserts","Traditional cooking","world"],"images":[{"url":"https://fifi.cooking/recipe-images/w-lb-023.jpg","role":"banner"},{"url":"https://fifi.cooking/recipe-images/thumbs/w-lb-023.jpg","role":"thumb"}],"difficulty":"easy"},"yield":{"servings":12.0},"ingredients":[{"ref":"whole_milk","ingredientId":"cw.ing.whole_milk","legacyId":"w-lb-023-i1","qty":{"value":4.0,"unit":"cup"},"display":{"ar":"4 أكواب","en":"4 cups"}},{"ref":"fine_semolina","ingredientId":"cw.ing.fine_semolina","legacyId":"w-lb-023-i2","qty":{"value":0.75,"unit":"cup"},"display":{"ar":"¾ كوب","en":"¾ cup"}},{"ref":"granulated_sugar","ingredientId":"cw.ing.granulated_sugar","legacyId":"w-lb-023-i3","qty":{"value":0.5,"unit":"cup"},"display":{"ar":"½ كوب","en":"½ cup"}},{"ref":"orange_blossom_water","ingredientId":"cw.ing.orange_blossom_water","legacyId":"w-lb-023-i4","qty":{"value":1.0,"unit":"tbsp"},"display":{"ar":"1 ملعقة كبيرة","en":"1 tablespoon"}},{"ref":"ashta","ingredientId":"cw.ing.ashta","legacyId":"w-lb-023-i5","qty":{"value":1.0,"unit":"cup"},"display":{"ar":"1 كوب","en":"1 cup"}},{"ref":"chopped_pistachios","ingredientId":"cw.ing.chopped_pistachios","legacyId":"w-lb-023-i6","qty":{"value":1.0,"unit":"cup"},"display":{"ar":"1 كوب","en":"1 cup"}},{"ref":"simple_syrup","ingredientId":"cw.ing.simple_syrup","legacyId":"w-lb-023-i7","qty":{"value":0.5,"unit":"cup"},"display":{"ar":"½ كوب","en":"½ cup"}}],"equipment":[{"ref":"bowl","class":"cw.eq.tool.bowl.mixing"},{"ref":"knife","class":"cw.eq.tool.knife.chef"}],"process":{"nodes":[{"id":"n1","op":"cw.op.legacy_step","params":{"sourceStep":1,"phase":"cook","opHint":"cw.op.boil"},"attention":"continuous"},{"id":"n2","op":"cw.op.legacy_step","params":{"sourceStep":2,"phase":"cook","opHint":"cw.op.fry"},"attention":"continuous"},{"id":"n3","op":"cw.op.legacy_step","params":{"sourceStep":3,"phase":"cook","opHint":"cw.op.chill"},"attention":"continuous"},{"id":"n4","op":"cw.op.legacy_step","params":{"sourceStep":4,"phase":"cook","opHint":"cw.op.cut"},"attention":"continuous"}],"edges":"implicit-from-inputs","totalTime":"PT40M","activeTime":"PT20M"},"safety":{"hazards":[],"allergens":{"eu14":["cereals_gluten","milk","nuts"],"us9":["milk","tree_nuts","wheat"],"mayContain":[],"x-status":"contains","x-ruleset":"fifi-allergen-1"},"supervision":{"default":"presence_required","reasons":{"all":"V0 document: a person cooks from the original steps; no step is machine-verified (RFC-0009)."}},"abort":{"steps":["heat_off","alert_user"]},"dietary":[{"claim":"vegetarian","basis":"ingredients","ruleset":"fifi-diet-1"},{"claim":"halal","basis":"ingredients","ruleset":"fifi-diet-1"},{"claim":"kosher","basis":"ingredients","ruleset":"fifi-diet-1","note":"Kosher-compatible by ingredients (dairy). Not certified: meat must be kosher-slaughtered; processed items, cheese and wine need a hechsher."}],"x-diabetic":{"status":"not_friendly","ruleset":"fifi-diabetic-1","basis":"estimate"}},"text":{"ar":{"title":"ليالي لبنان"},"en":{"title":"Layali Lubnan"}},"textSidecars":{"languages":["bn","cs","de","el","es","fa","fr","he","hi","id","it","ja","ko","ku","nl","pl","ps","pt","ru","sq","sv","sw","te","tr","ur","vi","zh"],"url":"/v1/recipes/{id}/text/{lang}.json"},"source":{"name":"feelgoodfoodie.net","url":"https://feelgoodfoodie.net/recipe/semolina-pudding/","collection":"world","citation":"Rewritten from the public recipe site named in each recipe's source and credited there; halal-gated by fifi.cooking; structured facts only until the source rights are confirmed"},"license":"LicenseRef-source-credited","layers":{"r1":true,"r2":false,"r3":false},"nutrition":{"perServing":{"kcal":240,"protein":8,"fat":12,"carbs":28,"fiber":1,"sugar":18},"basis":"fifi.cooking estimate per serving (modelled from typical composition tables; not measured)"},"cost":{"buckets":{"dairyEggs":4.5,"grains":0.5,"sweeteners":0.8,"specialty":4.2},"total":10.0},"x-cookwala-text":"facts","hash":"sha256:468e5e74b2018e110bd816054c0126382941886416211fabc51e82b07cc947fb"}
