Pat the salmon very dry and season well with salt and pepper.
Heat oil in a multi-cooker on sauté mode or in a braiser/Dutch oven over medium heat.
Sear salmon skin-side down first for 2–3 minutes until lightly golden. Add butter, flip briefly for about 30 seconds, then remove to a plate. The salmon should not be cooked through.
Lower the heat slightly. Add shallots and the white/light-green parts of the spring onions (or leeks, if using). Cook gently 2–3 minutes until soft and translucent.
Deglaze with white wine and let reduce 2–3 minutes, scraping up any browned bits.
Add chicken stock and simmer another 2–3 minutes.
Stir in Dijon mustard and whole grain mustard. Add ½ cup heavy cream to start, then simmer gently for 3–4 minutes. Add additional cream to taste if you prefer a richer sauce.
Nestle the salmon back into the sauce and scatter asparagus around the fish.
Cover and cook gently: multi-cooker, low mode, 6–8 minutes; or stovetop, very low heat, 5–7 minutes.
Stir in the chopped tarragon. If using sorrel, add it now and let it wilt.
Taste the sauce. If it feels slightly sharp from the mustard or wine, add a very small drizzle of maple syrup or honey to balance.
Spoon sauce and asparagus onto plates, place salmon on top, and garnish with the reserved spring onion greens.