In a large pan fry the onions in the butter and oil over medium heat until softened.
In a freezer bag add the flour, salt and pepper, toss the diced steak in the flour mixture to coat.
Add the beef to the pan and fry off until browned.
Add the stock and sauces stirring until well combined. Bring to the boil and reduced heat , simmer, stirring occasionally for 1 1/2 hours or until the meat is tender.
Remove from heat and allow to cool completely.
Preheat oven 200C
Line a pie dish with a sheet of shortcrust pastry, leaving an overhang of pastry.
Spoon in the cooled pie filling.
Dampen the edges of the pastry with water, top with a sheet of puff pastry, pressing the pastry together.
Trim the edges of the pastry and then crimp the edge with a fork or your fingers.
Brush the pastry top with beaten egg.
Bake for 30 minutes then reduce the oven temperature to 170C, cook a further 20 minutes or until browned.