Preheat: Preheat the oven to 425°F.
Toss: In a large bowl, toss the asparagus, shallot, olive oil (if using), balsamic vinegar, dried basil, dried tarragon, garlic powder, white pepper, and kosher salt (if using).
Roast: Transfer to a 9x13-inch casserole dish and spread evenly. Roast for 10 to 15 minutes, or until the asparagus is fork-tender (but not limp).
Boil: Meanwhile, bring the vegetable broth and white wine to a gentle boil in a small pot.
Remove from oven: Remove the casserole dish from the oven.
Add: Add the couscous, peas, and spinach. Carefully pour the hot broth mixture over the top. Gently press down with the back of a spoon so the spinach and couscous are submerged. Cover tightly with foil (carefully—the dish will still be hot!) and bake for 20 to 25 minutes, or until the liquid is absorbed and the couscous is tender.
Finish: Remove from the oven and stir well. If any couscous remains uncooked (this may happen around the edges), add a splash of broth, stir, and return to the oven for 1 to 2 more minutes, until the liquid is absorbed. Stir in vegan butter (if using) and lemon juice. Taste and adjust lemon juice and/or seasoning as needed. Garnish with vegan Parmesan and/or fresh Italian parsley or basil leaves, if desired. Serve warm.