First marinate the fish. Mix together the harissa paste, the ground cumin, and 1/2 teaspoon salt in a small bowl. Rub the paste all over the fish fillets and leave them to marinate for 2 hours in the fridge.
Dust the fillets with a little flour and shake off the excess. Heat the olive oil in a wide frying pan over medium-high-heat and fry the fillets for 2 minutes on each side. You may need to do this in two batches. Set the fish aside, leave the oil in the pan, and add the onions. Stir as you cook for about 8 minutes, until the onions are golden.
Add the remaining harissa, the vinegar, the cinnamon, 1/2 teaspoon salt, and plenty of black pepper. Pour in the water, lower the heat, and let the sauce simmer gently for 10 to 15 minutes, until quite thick.
Add the honey and rose water to the pan along with the currants, if using, and simmer gently for a couple more minutes. Taste and adjust the seasoning and then return the fish fillets to the pan; you can slightly overlap them if they don't quite fit. Spoon the sauce over the fish and leave them to warm up in the simmering sauce for 3 minutes; you may need to add a few tablespoons of water if the sauce is very thick. Serve warm for at room temperature, sprinkled with the cilantro, if using, and the rose petals.