Boil the potatoes in salted water until cooked (around 15 minutes). Drain and mash with a little milk, a pat of butter and freshly ground black pepper. Keep aside.
Heat the oil in a wok or large pan. Add the onions and garlic and fry until golden brown. Add the minced beef and stir fry for a few minutes then add the stock and season with salt and pepper. Add the chopped tomatoes and the tomato puree. Bring to the boil and simmer for 30 minutes. Add the diced carrot and continue to simmer for a further 60 minutes. Remove the beef mixture from the pan with a slotted spoon and place in an oven proof dish, leaving approximatey 25 - 30 mm space at the top. Add some of the stock until the beef mixture is just covered.
Using a palette knife, carefully lay the mashed potatoes on top of the beef mixure starting with the circumference and then the centre until it is completely covered. Fork over to level the potatoes and sprinkle with dried parsley or grated cheese.