1) Preheat the oven to 220C/Gas 7.
2) Season the meat with the salt and pepper. In a large skillet, heat half of the oil over medium-high heat until good and hot, then add the meat and sear until well browned on all sides, about 10 minutes total.
3) Transfer the meat to a rack set on a baking sheet. Roast until an instant-read thermometer inserted in the thickest part registers 62C for medium-rare, about 30 minutes, or until done as desired. Remove the fillet from the oven, cover with aluminium foil and let rest until the sauce is nearly done before slicing.
4) While the meat cooks, make the sauce. Heat the remaining oil in a large saucepan over medium-high heat. Add the shallots, carrot and celery and cook, stirring a few times, until softened, about 5 minutes. Add the garlic and cook for 2 minutes more. Add the wine and stock and stir in the tomato puree. Add the bay leaf and thyme and bring to a boil. Simmer until the liquid is reduced to about 1/2 cup, about 40 minutes.
5) Strain the liquid through a fine mesh strainer into a small saucepan. Stir in the cocoa and rosemary and season with salt and pepper.
Serve the sauce on the side with the sliced fillet.
Serving size 3 slices of meat and about 1 1/2 tablespoons of sauce.
Calories 280; Total Fat 9g (Sat Fat 3g, Mono Fat 4g, Poly Fat 0g); Protein 31g; Carb 7g; Fibre 1g; Cholesterol 82mg; Sodium 375mg