01 - Preheat oven to 400°F.
02 - Boil salted water in a large pot. Add cauliflower florets and cook 10–12 minutes until tender. Drain thoroughly.
03 - Heat olive oil in a large skillet over medium heat. Add onion, garlic, carrots, and celery. Sauté for 5–6 minutes until softened.
04 - Add ground beef to skillet. Cook, breaking apart with a spoon, for about 8 minutes until browned and cooked through. Drain excess fat if necessary.
05 - Stir in tomato paste and cook for 1 minute. Add beef broth, Worcestershire sauce, thyme, rosemary, salt, and pepper. Simmer for 10 minutes until slightly thickened. Stir in peas and remove from heat.
06 - Blend cooked cauliflower with butter, milk or cream, salt, pepper, and Parmesan (if using) until creamy and smooth using a food processor or potato masher.
07 - Spread beef filling evenly in an 8x8-inch baking dish. Top with cauliflower mash and smooth the surface.
08 - Bake for 20–25 minutes until topping is golden and filling bubbles. Optional: broil for 2–3 minutes for extra browning.
09 - Allow to rest for 5 minutes before serving.