1: Preheat the oven and grease a baking dish.
2: In a large bowl, combine torn sourdough, mushrooms, kale, shallots, and garlic.
3: In a separate bowl, whisk together eggs, heavy cream, whole milk, wine, sage, salt, and pepper.
4: Pour the egg mixture over the bread mixture and stir to combine.
5: Fold in Swiss and parmesan cheese, mixing evenly.
6: Transfer the mixture to the greased baking dish and top with additional cheese if desired.
7: Bake until the pudding is set and golden brown on top.
8: Let it rest before serving.