Rub sweet potatoes with olive oil and a pinch of salt. Make a few steam holes with a fork and roast them whole on a rack at 180˚C until tender. Allow to cool and scoop out 2 cups of flesh.
Cook lentils in 3 cups of boiling salted water until very tender. Strain off all residual water and allow to cool.
In a large frying pan heat a drizzle of olive oil and fry the onion in the curry powder. Once tender add the garlic and cook until fragrant. Add the diced mushrooms and cook until they have released all their liquid and are beginning to brown. Remove from the heat.
Place lentils, sweet potatoes, egg, coriander and chilli in the bowl of a food processor. Pulse until well combined. Add the flour and mix again. Finally add the cooked mushroom mixture and pulse to bring everything together.
Serve lentil cakes hot with raita, fresh coriander and lime wedges.