In a small bowl, dissolve the yeast in warm milk with a pinch of sugar. Let it sit for about 5-10 minutes until frothy.
In a large mixing bowl, combine the flour, sugar, and salt. Create a well in the center and add the yeast mixture, eggs, vegetable oil, and lemon zest.
Mix the ingredients until a dough forms. Knead the dough on a floured surface for about 10 minutes, or until smooth and elastic.
Place the dough in a greased bowl, cover with a damp cloth, and let it rise in a warm place for 1-2 hours, or until doubled in size.
In a bowl, mix together the ground walnuts, sugar, cocoa powder, milk, and ground cinnamon until well combined. Stir in the raisins and chopped dark chocolate if using.
Punch down the risen dough and turn it out onto a floured surface. Roll it out into a rectangle about 1/4 inch thick.
Spread the walnut filling evenly over the dough, leaving a small border around the edges.
Roll the dough tightly from one end to the other, forming a log. Pinch the edges to seal.
Carefully place the rolled dough into a greased loaf pan, or shape it into a braided loaf and place on a baking sheet.
Preheat your oven to 350°F (175°C).
Brush the top of the loaf with the beaten egg and sprinkle with sugar.
Bake for 30-40 minutes, or until the bread is golden brown and sounds hollow when tapped.
Allow the Cozonac to cool in the pan for 10 minutes before transferring to a wire rack to cool completely.
Slice and enjoy warm or at room temperature.
Enjoy your meal!