Combine 1/4 cup juice with the sugar and 1/4 teaspoon salt in a small nonstick skillet. Bring to a simmer over medium-high heat and cook, stirring occasionally, until the mixture reduces slightly, about 5 minutes. Add the walnuts and continue to cook, stirring, until the nuts are coated and dark and the liquid evaporates in the skillet, about another 5 minutes. Transfer to a baking sheet to cool. When cool, break apart with your hands.
Meanwhile, soak the red onion in ice water for about 10 minutes; drain and pat dry. Place the baby spinach in a serving bowl and top with the onions, mushrooms, tomatoes and walnuts. In a bowl whisk the remaining 2 tablespoons juice with the vinegar, 1/4 teaspoon each salt and pepper, and then whisk in the oil. Drizzle over the salad and toss just before serving.