In a small saucepan, cover chickpeas with water, add the baking soda, bring to a boil, then cook until very tender, about 6 minutes. Drain and proceed with the recipe.
In a small skillet, melt butter over medium heat; as butter is melting, add ginger and garlic. Reduce heat to medium-low and cook, stirring frequently, until fragrant but not browned, about 1 minute.
Stir in turmeric, cayenne or chile flakes, and ground coriander and cook, stirring constantly, until lightly toasted and fragrant, about 30 seconds; do not allow spices to scorch.
Stir in drained chickpeas and tomato paste and cook until warmed through. Meanwhile, measure ½ cup of reserved chickpea liquid (if necessary, add water to total ½ cup).
Add the ½ cup chickpea liquid, diced tomatoes, sugar, heavy cream, and garam masala, then season with salt. Bring to a boil over medium-high heat, then reduce heat to a simmer and cook, stirring often, until tomatoes break down and liquid thickens to a spoon-coating consistency, 3 to 5 minutes; reduce heat, if necessary, to prevent scorching. Remove from heat, season with more salt, if needed, then serve.
