Cut the cauliflower into medium florets. Put into a large pan, cover with cold water, add some salt, and bring up to a rolling boil. This will partly cook the cauliflower. Take off the heat right away, drain well, and keep warm in the pan. Heat the oil in a second large saucepan over medium heat. Add the onions, garlic, and ginger and saute for about 10 minutes, stirring often. Add the ground coriander, cumin, chile flakes, star anise, and some salt and pepper and cook for a further 5 minutes. Add the tomatoes with their juice and the chickpeas. Stir well, then add the parcooked cauliflower. Pour in enough cold water to almost but not quite cover everything (1/3 to 3/4 cup/100 to 200ml) and bring to a simmer. Simmer for 5 to 10 minutes, stirring once or twice, until the cauliflower is tender. Stir in the garam masala and half of the chopped cilantro, then check the seasoning. Serve scattered with the remaining cilantro and accompanied by rice, flat breads, or naan.