Prepare mashed potatoes. Set aside.
Meanwhile, heat a large frying pan over MEDIUM heat. Add the olive oil and onions. Cook for 2-3 minutes until the onions become translucent.
Add the carrots and cook for an additional 5 minutes. Add the ground beef and cook until no longer pink. Drain off any excess fat.
Add the Worcestershire sauce, salt, and allspice seasoning into the cooked meat mixture and stir.
Sprinkle flour over the top of the mixture and pour in the beef stock. Stir together and allow sauce to bubble and thicken some. Once the sauce has thickened, add the frozen vegetables. Give it a quick stir to combine and remove from the heat.
Spread the meat mixture out evenly along the bottom of a 9x13 or two 8x8 casserole dishes or foil pans. Spoon the mashed potatoes over top of the meat. Use enough of the mashed potatoes to make about a 1/2-inch layer on top of the meat.
Cook in the oven at 350°F until heated through and the potatoes are golden brown on top, about 20 to 25 minutes. Or, prepare for the freezer by wrapping in aluminum foil and plastic wrap. Store in the freezer for up to one month. Defrost overnight in the refrigerator before baking.