Roughly chop the onion, transfer to a small food processor, and add 3 tablespoons of water - process to a slack paste. Add to a small bowl.
Put the chopped garlic and ginger into the same food processor and add 4 tbsp water – process until smooth and spoon into another small bowl.
Heat the oil in a wok or sturdy pan set over a medium heat. Combine the cumin and fennel seeds with the cinnamon and chilli flakes and add to the pan in one go. Swirl everything around for about 30secs until the spices release a fragrant aroma.
Add the onion paste. Fry until the water evaporates and the onions turn a lovely dark golden - this should take about 8mins. Add the garlic and ginger paste and cook for another 2mins – stirring all the time.
Stir in the garam masala, turmeric, and sugar and continue cooking for 20secs before tipping in the tomatoes. Continue cooking on a medium heat for about 10mins without a lid until the tomatoes reduce.
Boil green beans and drain. Cut the chicken into 3cm chunks and add to the pan once the tomatoes have thickened to a paste. Cook for 5mins to coat the chicken in the masala and seal in the juices, and then pour over the hot chicken stock. Add green beans. Simmer for 8-10mins without a lid until the chicken is tender and the masala lightly thickened – you might need to add an extra ladleful of stock or water if the curry needs it.