Heat the olive oil in a large pot over medium heat. Add the diced onion and cook for 3 minutes until it softens.
Stir in the minced garlic, cumin, paprika, cinnamon, and cayenne. Cook for 1 minute until the spices smell fragrant.
Add the chickpeas, diced tomatoes, and fish broth. Bring the mixture to a simmer and cook for 8 minutes.
Gently add the fish pieces to the pot. Simmer for 5 to 7 minutes until the fish turns opaque and flakes easily.
Remove the pot from the heat. Stir in the lemon juice and chopped cilantro. Season with salt and black pepper.