Warm the olive oil in a Dutch oven or other medium heavy pot over medium heat. Add the onion and cook, stirring occasionally, until softened and lightly golden, about 5 minutes.
Add the garlic, ginger, cumin, paprika, turmeric, cinnamon, and optional cayenne. Stir continuously for 30 seconds, just until fragrant so the spices do not scorch.
Stir in the diced tomatoes with their juices, chickpeas, vegetable broth, salt, and black pepper. Scrape the bottom of the pot with a wooden spoon to loosen any flavorful browned bits.
Bring the stew to a gentle simmer. Reduce the heat as needed to maintain a steady, gentle bubble, then cook uncovered for 12 to 14 minutes, stirring once or twice, until the tomato broth has thickened slightly.
For a heartier texture, use the back of a spoon to lightly mash a small portion of the chickpeas against the side of the pot. Stir in the cilantro, parsley, and lemon juice. Taste and add more salt if needed.
Spoon the stew into bowls and serve warm with crusty bread, Moroccan khobz if available, or cooked couscous. Offer harissa at the table for anyone who would like more heat.