Preheat the oven to 200°C fan-forced.
Pin-bone and skin the fish, then cut it into large chunks. Place in a medium bowl, add the spice paste ingredients and mix well. Refrigerate until needed.
Peel and dice the potatoes and celeriac. Bring a saucepan of salted water to the boil and cook the potato and celeriac until soft, about 15–20 minutes.
In the meantime, place the fish, bay leaf, milk and stock in a saucepan over medium heat and bring to a low boil. Reduce to a low simmer and cook for 8 minutes with the lid on. Strain the liquid off and reserve it. Place the bay leaf in the compost. Break the fish into large flakes and spread it into a 22 cm round baking dish.
Fry the garlic and leek in the oil in a saucepan over medium heat for 5 minutes, or until soft. Deglaze the pan with the wine. Set aside 100ml of the reserved fish cooking liquid and add the rest of the liquid, peas, lemon juice and saffron to the pan. Simmer until reduced by half, about 10–15 minutes. Add half the butter and stir until melted. Season to taste. Pour into the baking dish and gently mix with the fish.
Once the potato and celeriac are soft, drain and let them cool for 2 minutes to allow some of the steam to evaporate. Add a little of the reserved fish cooking liquid until you can mash the vegetables to a smooth consistency. Season to taste.
Spread the mash over the top of the fish, roughing it up with a fork. This will give a crunchier end result. Melt the remaining butter and pour it evenly over the mash. Grate over some pecorino. Place the baking dish in the oven for 30 minutes or until the top is golden and crispy.
Remove from the oven and serve. Leftovers will keep for a few days in an airtight container in the fridge.