Get the stock to a very gentle simmer in a saucepan.
In a large fry pan or shallow casserole dish melt the butter and 1 tbsp olive oil over medium heat and gently cook the onion for 3 mins until softened. Don't let it catch on the bottom.
Add the garlic and cook for a further 2 minutes.
Add the rice and cook for a couple of minutes, stirring until translucent and coated.
Add the wine and let it absorb, stirring. You don't want a fierce boil or bubble ever, just a gentle simmer the whole time. Adjust heat if you need.
Once the wine is mostly absorbed start adding a ladle of stock, one at a time, letting it absorb between each addition and stirring frequently (see notes above on the heat and stirring advice).
From the first ladle set a timer for 15 minutes and that is when you add the asparagus pieces. It will cook for another 10 mins or so and that is enough time for asparagus to cook (I like it to retain crunch).
Continue adding stock for another 10 mins or until the rice is cooked to your liking. It should still have a slight al dente bite to it.
Add the grated parmesan and stir through.
Add the pea puree and taste for seasoning, I would add a good few cracks of black pepper.
Finish with a knob of butter if you wish then serve with lemon zest, some extra grated parmesan and a drizzle of extra virgin olive oil.