Heat the oven to 200C/180C fan/gas 6. Boil the eggs for 7 minutes, then plunge straight into cold water and set aside to cool.
Meanwhile, melt the butter over a medium heat in a large saucepan and add the oil and onions. Cook for 5 minutes or until soft. Add the flour and stir for 1 minute to make a paste, then add the milk bit by bit, stirring as you go, to make a smooth sauce the consistency of double cream. Add the parsley, cornichons, capers and lemon juice, and season to taste.
Put the chips in a pan of cold water. Bring to a simmer, cook for 2 minutes, then drain – the potatoes should still hold their shape. Leave to steam dry for 5 minutes.
Spread half the sauce over the base of a large shallow casserole dish. Scatter the fish on top, peel and quarter the eggs, and add these too. Top with the remaining sauce. In a bowl, toss the chips with the vinegar, a drizzle of oil and some seasoning. Scatter the chips onto a baking tray or into a roasting tin and spread out evenly. Bake the pie and the chips (turning them 2or 3 times) in the oven – the pie may need to be covered with tin foil if it starts getting brown after halfway through cooking. Remove the pie after 40 minutes. The chips may need another 5 minutes until golden. Top the pie with the chips.
When the pie and chips are almost finished cooking, cook the peas in a pan of boiling water for 2 to 3 minutes, then drain and mash lightly with a knob of butter and the lemon zest. Serve alongside the pie.