Heat the coconut oil in a deep pan on medium heat. Add mustard seeds and allow them to splutter.
Add fenugreek seeds, dried red chillies, and curry leaves. Sauté for a few seconds until aromatic.
Add the sliced onions and cook until soft and light golden.
Stir in garlic paste, ginger paste, and green chillies. Cook for 2–3 minutes.
Add turmeric powder, Kashmiri chilli powder, and coriander powder. Sauté for 1 minute to cook out the raw flavour of the spices.
Add the chopped tomato and cook until soft and mushy.
Pour in the tamarind extract and thin coconut milk. Bring to a gentle boil.
Add the fish pieces carefully. Cover and simmer on low heat for about 10–12 minutes, or until the fish is cooked through.
Add the thick coconut milk and simmer gently for 2–3 minutes without boiling.
Check seasoning and adjust salt if needed. Remove from heat and let it rest for 5 minutes before serving.