Fry onion and garlic in butter until tender without browning.
Add potatoes, orange zest, and wine, boiling until the liquid reduces.
Stir in flour for a few seconds.
Gradually add chicken stock to create a sauce.
Season with salt and pepper.
Stir in the chicken chunks.
Simmer covered for 10 minutes.
Uncover and simmer for 5 minutes until thickened.
Add cream and cook for 3 minutes.
Boil asparagus in salted water until tender.
Drain the asparagus.
Mix asparagus into the chicken filling.
Adjust seasoning to taste.
Transfer to a 1.5 litre pie dish and cool.
Preheat oven to 200°C.
Roll pastry thinly on a floured surface.
Cut 1cm wide strips of pastry.
Brush dish edges with beaten egg.
Affix pastry strips around the rim without overlapping.
Egg wash the strips and place the pastry lid over the top.
Trim excess pastry and press edges to seal.
Decorate with pastry trimmings using egg as glue.
Cut a steam vent in the center.
Chill for 30 minutes, egg wash, and bake.
Reduce heat to 190°C after 15 minutes and bake for 25 more minutes.
Serve the pie hot.