Heat oil in a large heavy-bottom pot.
Add whole aromatics (cardamom, cloves, peppercorns, cinnamon, bay leaves).
Add chopped red onions and cook until soft and golden.
Stir in cumin seeds.
Add ginger paste and garlic paste. Cook until fragrant.
Add chopped tomatoes and cook down until thick.
Stir in yoghurt and all dry spices. Cook until glossy and oil begins to separate.
Add chicken pieces and cook until sealed and coated well in the masala.
Cover and cook until chicken is almost fully cooked.
Stir in chopped coriander, mint and long green chillies.