Dice the chicken into bite-sized pieces then coat in 1 tbsp curry powder, 1/2 tsp salt and 1/4 tsp black pepper. Place to one side.
Heat the oil in a large pan over medium-high heat then add the diced potato. Fry until golden/crisp on the outside, season with a pinch of salt and pepper then remove and place in a bowl to one side. The potatoes don't need to be completely soft all the way through, as they'll continue to cook as they rest and when baked in the pie.
Top the pan up with oil if needed then space out the chicken. Leave to fry until it builds up a golden crust, then flip and continue frying until golden on the other side and just about cooked through the centre. Remove and place in a bowl to one side, then lower the heat to medium.
Top up with oil if needed, then add the carrot and onion. Fry until soft and golden then add the garlic and ginger and fry for another 30 seconds or so. Melt in the butter then stir in the cumin, garam masala, turmeric, ground coriander and remaining tbsp of curry powder. Stir in the flour then gradually pour in the stock, whisking as you go to smooth out any lumps. It'll be very thick/clumpy at the start but will smooth out as you stir in the stock.
Stir in the cream then stir in the tomato puree. Season with salt and pepper (I typically do 1/4 tsp each) then stir in the chicken alongside all the resting juices. Simmer for 8-10 minutes until it's nice and thick, then stir in the potato.
Pour into the baking dish and leave for around 15 minutes to form a skin over the top. Preheat the oven to 200C/400F.
Top the filling with pastry then slice around the edges so it fits. Brush with egg wash then slice in a few steam holes. Finish with a sprinkle of black onion seeds then place in the oven for around 20 minutes or until the pastry is deep golden and flaky with the filling bubbling around the edges.
Leave to cool for 5 or so minutes then tuck in and enjoy!