In a food processor, combine the onion, mushrooms, garlic and parsley and puree until smooth. Set aside.
Season the beef with salt and pepper.
In the stovetop-safe insert of a slow cooker or in a large sauté pan over medium-high heat, warm the oil. Add the beef and brown on all sides; transfer to a plate.
Pour off all but 1 Tbs. of the fat from the insert or pan and set over medium heat. Add the onion mixture and cook until the moisture evaporates, 7 to 10 minutes. Stir in the demi-glace and 1 cup of the stock. If using the insert, return the beef to the insert and stir in the remaining stock. Set the insert on the slow-cooker base. If using a sauté pan, transfer the onion mixture to a slow cooker, add the beef and stir in the remaining stock. Cover and cook on high according to the manufacturers instructions until the beef is fork-tender, 6 to 8 hours.
Transfer the beef to a cutting board. When it is cool enough to handle, slice and shred the meat. Skim the fat off the cooking liquid and return the beef to the liquid.
Spread the mayonnaise on the cut sides of the rolls. Divide the beef among the bottom halves of the rolls and top with the lettuce and tomatoes. Cover each sandwich with the top half of a roll. Serve the po'boys with hot sauce.
1 yellow onion, chopped
6 oz. cremini mushrooms
3 garlic cloves, peeled and minced
2 Tbs. chopped fresh flat-leaf parsley
1 beef chuck roast, 3 to 4 lb.
Salt and freshly ground pepper, to taste
3 Tbs. vegetable oil
1 Tbs. veal demi-glace
1 quart beef stock
Mayonnaise for serving
6 long French rolls, split
Shredded iceberg lettuce for serving
Thinly sliced tomatoes for serving
Hot sauce for serving