Set a large skillet over moderately high heat. Add the olive oil and heat until shimmering. Add the garlic, shallot and ginger and cook for 30 seconds, until fragrant. Add the coriander, thyme, cayenne, mace and cloves and cook for 30 seconds. Add the tomatoes, season with salt and pepper and cook until softened, about 3 minutes. Stir in the ground lamb and when the meat begins to brown, after about 5 minutes, add the chicken stock and continue cooking until no trace of pink remains on the meat, about 5 minutes longer. Stir in the cilantro and season with salt and pepper; keep warm.