In a wok over medium heat, add the cooking oil and allow it to warm up.
Transfer the lamb shanks into the wok to sear them, for 30 minutes, or until fully browned. Turn and rotate the shanks often to get an even browning on all sides.
Add 1.5L of water, and ensure that all the lamb shanks are fully submerged in the water.
Add the button mushrooms, yellow onions, carrots, celery, garlic, 12g of fresh rosemary, 10g of fresh thyme and 1 tsp of salt. Stir gently to spread the vegetables and distribute the salt evenly.
Cover the wok and let it braise for 2.5 hours, or until the gravy has reduced, and the lamb shanks are tender. Stir and rotate the lamb shanks every 10 to 20 minutes to prevent the ingredients from burning at the bottom of the wok.
After 2.5 hours, pierce the lamb shanks with a fork to check on the texture.
Taste and adjust the gravy.
Reduce the heat to medium-low. Add the red wine (optional), the rest of the fresh rosemary and fresh thyme. Stir the gravy, and turn the lamb shanks so they are coated with the gravy. Switch off the heat.
Allow the shanks to rest in the gravy for a minimum of 2 hours for the best flavour.
Dish the lamb shank and vegetables onto individual plates, with a serving of mashed potatoes. Drizzle the gravy over the shanks and potatoes, before garnishing with freshly chopped parsley and a twig of rosemary.