Preheat the oven to 425°F (220°C).
Spread the asparagus and mushrooms on a baking sheet, drizzle with olive oil, and sprinkle with salt and pepper. Roast for 15 to 18 minutes, stirring halfway through, until tender and lightly browned.
Cook the pasta in salted boiling water until al dente. Reserve ½ cup of the pasta water, then drain the pasta.
In a bowl, whisk together the eggs, egg yolk, Parmesan cheese, garlic powder, and red pepper flakes if using.
Immediately return the hot pasta to the pot (off the heat), and quickly stir in the egg mixture, tossing vigorously to coat the pasta and create a creamy sauce. Add a splash of reserved pasta water as needed to loosen the sauce. Fold in the roasted asparagus and mushrooms.
Season to taste with additional salt and pepper. Serve immediately, garnished with fresh parsley if desired.
