Dice the onion and crush or very finely dice the garlic yet keep them separated.
Preheat a cast iron or heavy skillet to medium high heat.
Preheat your oven to 350F for hard shells or prepare a second pan to heat soft tortillas.
Add approximately 1 Tbsp olive oil and add the onion, sauté for a few minutes until softened.
Add the garlic and stir through until fragrant, approximately one minute.
Remove the onions and garlic from the pan to a small bowl. Wipe out the pan and add just a touch more oil. Make sure the pan has a few minutes to come back up to temperature.
Add the ground beef or portobello mushroom to the pan and smash/spread it across as much of the pan surface as possible. Let sit for 3-5 minutes until seared then reduce the heat to medium and if using ground meat flip almost like a very large hamburger patty. Don’t worry if it starts to crumble and break apart; however, try to keep it in one piece. If using mushroom, reduce heat and give it a thorough stirring, allowing the moisture to evaporate.
Now that the entire patty has been flipped, use a rubber spatula or wooden spoon to break the ground meat apart. Take your time and make sure to crumble it thoroughly. Drain excess oil from the pan if necessary once the meat is cooked through.
Stir the onions and garlic into the pan and combine with the taco filling.
Add taco seasoning, sprinkling it over the taco filling then stirring it through. Let it toast lightly for about 30 seconds.
Pour in the water and thoroughly stir it through the filling. The seasoning should emulsify into the liquid and create a sauce.
Bring taco filling up to a rapid simmer and then reduce the heat to achieve a very light simmer. Stir occasionally while the sauce thickens and adheres to the taco filling.
Once the sauce has thickened, turn the heat down to low to keep the filling warm.
Slice your head of romaine in half, then thinly slice for your sliced lettuce. Place into a bowl.
Grate your sharp cheddar cheese using a cheese grater. Place into a bowl.