Heat oil in a large, heavy-based frying pan and cook lamb in batches until golden-brown (add a little more oil if needed). Place lamb in casserole dish.
Heat a little extra oil in the pan, add garlic, onion, carrot and celery, and cook for about 5 minutes, stirring often, until vegetables are soft. Sprinkle flour over vegetables and stir in, then cook for 3-4 minutes, again stirring so it doesn’t stick. Add stock, tomatoes, tomato paste and thyme, bring to the boil, reduce heat and simmer for 10 minutes. Check for seasoning and add salt and pepper if needed.
Pour the prepared sauce over the lamb in the casserole dish. Arrange potato rounds on top of lamb, and brush with melted butter. Place in preheated oven and cook, uncovered, for 2-1/2 hours, brushing the potatoes with the casserole juices every half hour or so. When the dish is ready, the potatoes will be golden brown on the surface and tender inside.