Preheat the oven to 200C/400F/Gas 6.
Remove the breasts, legs, wings and giblets from the pigeon. Remove the meat from the legs and thighs and chop along with the giblets to use for the stuffing.
For the sauce, heat the olive oil in a large pan. Add the pigeon bones along with the carrot, onion and parsley stalks. When brown, add the stock, port and red wine. Bring back to the boil and then reduce to a simmer. Continue to cook until the liquid has reduced to a sticky sauce.
In frying pan, heat a little olive oil and sear the pigeon breasts, skin-side down, until the skin is golden-brown. Remove from the heat and set aside.
Next make the stuffing, mix the sausage meat with the herbs, pistachios, pigeon leg and thigh meat and giblets. Season to taste with salt and freshly ground black pepper. Sandwich the stuffing between the seared pigeon breasts. Set aside.
Meanwhile for the glazed shallots, melt the butter in a small ovenproof frying pan. Add the shallots and fry until they begin to caramelise. Cover with chicken stock, add the thyme sprigs and season with salt and pepper. Cover with a circle of greaseproof paper and cook in the oven for 30 minutes, or until tender.
Roll out the pastry to the thickness of a pound coin and large enough to wrap the pigeon - you might not need it all. Wrap the squab parcel in the pastry and seal the edges. Place on a baking tray and brush with egg wash. Transfer to the oven for 30 minutes, or until the pastry is golden-brown.
When the shallots are cooked, remove them from the cooking liquid and set aside. Add the reduced sauce to the shallot pan and heat again to reduce. Return the cooked shallots to the pan and heat through.
When cooked remove the squab parcel from the oven and set aside to rest for a few minutes.
Serve the Wellington in slices with the glazed shallots.