In a large mixing bowl, combine the flour and salt. Make a well in the center.
Add the egg, sour cream, and softened butter to the well. Mix until a dough forms.
Knead the dough on a floured surface for about 5 minutes, or until smooth and elastic. Wrap in plastic wrap and let it rest for at least 30 minutes.
In a bowl, combine the mashed potatoes and shredded cheese. Season with salt and pepper.
In a skillet, heat the vegetable oil over medium heat. Add the chopped onion and cook until translucent.
Add the shredded cabbage and chopped mushrooms. Cook until the cabbage is tender and the mushrooms are browned. Season with salt and pepper.
In a skillet, cook the ground meat with the chopped onion until browned. Drain any excess fat.
Mix in the breadcrumbs and season with salt and pepper.
Roll out the dough on a floured surface to about 1/8-inch thickness. Cut out circles using a round cutter or a glass (about 3 inches in diameter).
Place a spoonful of filling in the center of each dough circle.
Fold the dough over the filling to form a half-moon shape. Press the edges together to seal, crimping with a fork if desired.
Bring a large pot of salted water to a boil. Gently drop the pierogi into the boiling water.
Cook for 3-4 minutes, or until the pierogi float to the surface. Remove with a slotted spoon and drain.
(Optional) In a skillet, melt some butter and lightly fry the boiled pierogi until golden brown and crispy on both sides.
Enjoy your meal!