Marinate the chicken in vinegar, turmeric, salt, and ginger-garlic paste. Let it sit for at least 20 minutes (longer is better).
Heat oil in a large pan, then sauté the onions until they turn deep golden brown—don’t rush, this builds flavor.
Add crushed chilies, cumin, coriander, garam masala, chili powder, paprika, and cinnamon. Stir well until your kitchen smells like a spice market.
Pour in the pureed tomatoes and let them cook down until thickened. This is where the magic starts.
Add the marinated chicken and stir it into the spice mixture. Let it sear slightly before adding water and vinegar.
Simmer uncovered for 25 minutes, stirring occasionally. The sauce should thicken, and the chicken should soak up the spices.
Taste and adjust salt or spice level (or accept your fate).
Garnish with cilantro and serve hot with naan or rice.