Put the beef, halved onion, scallion whites, and ginger in a pot with 2 liters of water. Bring to a boil, then simmer 45 minutes, until the beef is tender enough to shred with two forks.
Lift out the beef and set the broth aside, strained if you like it clear. Once the beef is cool enough to handle, shred it into long, thin strands by hand.
In a dry small pan, mix the gochugaru with the neutral oil off the heat, then warm it over low heat for 1 minute, stirring, until it turns a deep glossy red. This is your yangnyeomjang, the seasoning oil.
Return the strained broth to the pot. Stir in the seasoning oil, garlic, guk-ganjang, and black pepper.
Add the gosari, mushrooms, and taro stems if using. Simmer 15 minutes.
Add the shredded beef, sliced onion, bean sprouts, and smashed scallions. Simmer 10 more minutes, until the sprouts have lost their raw crunch but still have some bite.
Taste and adjust salt. If using egg, drizzle it in a thin stream over the surface of the boiling soup and let it sit 20 seconds before stirring gently, so it forms loose ribbons rather than a cloud.