1 bunch asparagus, trimmed
1 lb. baby potatoes
1 small shallot, grated or finely chopped
2 tbsp. white wine vinegar
2 tbsp. Dijon mustard, plus more for serving
About /13 cup EVOO, plus more for drizzling
2 tbsp. each fresh tarragon, flat-leaf parsley, and chives
3 tbsp. finely chopped cornichons (about 5 to 6)
2 tbsp. capers, drained and chopped
2 peeled hard-boiled eggs, chopped
3 heads Little Gem lettuce or 2 large heads Bibb lettuce, leaves separated
Juice of 1 lemon (about 1/4 cup)
1 small rotisserie chicken, breast meat sliced (reserve the legs and thighs for another use)
¾ lb. sliced rare to medium-rare roast beef
½ lb. sliced French ham or other mild cooked ham
Cornichons, sliced crusty baguette, and butter or soft cheeses, for serving
Prepare a large bowl of ice water. Bring a deep skillet or pot of water to a boil. Salt the water and add the asparagus. Cook until crisp-tender, about 2 minutes. Using tongs, transfer to the ice water to cool. Add the potatoes to the boiling water. Cook until just tender, about 10 minutes. Drain the potatoes and spread out on a plate or baking sheet to cool. Drain the asparagus and pat dry.
While the asparagus and potatoes are cooking, in a small bowl, season the shallot with salt and pepper. Add the vinegar. Let sit for 10 minutes. Whisk in 2 tbsp. Dijon. Gradually whisk in about 1/3 cup oil. Stir in the herbs, cornichons, and capers. Gently stir in the eggs to make the gribiche dressing.
On a platter, drizzle the lettuce with the lemon juice. Drizzle lightly with oil. Sprinkle with sea salt.
Top the lettuce with the chicken, roast beef, and ham. Arrange the potatoes and asparagus on the salad. Top with the gribiche dressing. Serve with cornichons, Dijon, baguette, and butter or soft cheeses.