Place sweet potatoes in a pot and add water to cover. Bring to the boil and cook for 15 minutes. Add cauliflower and more water if needed; cook until all vegetables are tender, about 15 minutes more. Drain. Mash sweet potatoes and cauliflower with 4 tablespoons stock, butter, 1 teaspoon salt and 1/2 teaspoon black pepper.
Heat olive oil in a large pan over medium-high heat. Add carrots and onion; saute until softened, about 5 minutes. Add garlic, 1 teaspoon salt and 1/2 teaspoon black pepper; cook 5 minutes more. Add beef mince; cook and stir until browned, 5 to 10 minutes.
Sprinkle flour over the beef mince in the pan. Add 240ml stock, peas, sweetcorn and tomato puree. Bring to the boil. Reduce heat and simmer for 10 to 15 minutes. Spread beef mince evenly in a baking dish. Top with mashed sweet potato mixture. Sprinkle Parmesan cheese on top.
Bake in the preheated oven until slightly browned on top, about 25 minutes. Let stand 15 minutes before serving.