-- MealPrep: Simplified kitchen protocol for Lean verification testing

protocol MealPrep =
  roles Chef, SousChef, Baker

  -- Setup phase
  Chef -> SousChef : IngredientRequest(String)
  SousChef -> Chef : DeliveryConfirm
  Chef -> Baker : OvenStatus(String)

  -- Cooking phase
  choice Chef at
    | Pasta =>
      Chef -> SousChef : BoilPasta
      SousChef -> Chef : PastaReady
      Chef -> Baker : PrepareGarlicBread
      Baker -> Chef : BreadReady
    | Tacos =>
      Chef -> SousChef : PrepTortillas
      SousChef -> Chef : TortillasReady
      Chef -> Baker : PrepareGarlicBread
      Baker -> Chef : BreadReady
