Bring a pot of water to a boil and cook the frozen peas for three minutes. Keep ⅓ cup of the cooking water before draining and rinse peas under cold water to halt cooking.
Blend the peas, reserved water, fresh herbs, lemon juice, and sea salt until completely smooth, then strain through a sieve for an extra silky purée if desired. Set this aside for later.
Warm the stock gently in a saucepan so it stays hot but not boiling.
Heat butter and olive oil in a large pan over medium heat, then add the diced onion and cook for about 3 minutes until softened without browning.
Add the finely chopped garlic and continue cooking for 2 more minutes to release the flavors.
Stir in the arborio rice, cooking and stirring for a couple of minutes until the grains look translucent and well coated with the fat.
Pour in the white wine and let it absorb completely, stirring gently; keep the heat low to maintain a soft simmer with no vigorous boiling.
Begin adding the warm stock one ladle at a time, stirring often and waiting until each addition is mostly absorbed before adding the next.
Start a timer at the first ladle of stock, and after 15 minutes, stir in the chopped asparagus so it cooks through but remains a bit crisp.
Keep ladling in stock and stirring for another 10 minutes or until the risotto is creamy with the rice tender but still slightly firm in the center.
Mix in the grated parmesan and then fold in the pea purée, adjusting with salt and plenty of black pepper to brighten the flavors.
Optionally, stir through a small knob of butter for extra richness.
Serve the risotto topped with fresh lemon zest, extra parmesan cheese, and a drizzle of good quality extra virgin olive oil for finishing.